diff --git a/lib/include/srslte/phy/fec/ldpc/base_graph.h b/lib/include/srslte/phy/fec/ldpc/base_graph.h new file mode 100644 index 000000000..a4b78a204 --- /dev/null +++ b/lib/include/srslte/phy/fec/ldpc/base_graph.h @@ -0,0 +1,107 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file base_graph.h + * \brief Declaration of the two LDPC base graphs employed in the 5G NR + * standard. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * This file declares the dimensions of the base graphs and provides an interface + * for obtaining the set index and the permutation matrix corresponding to a + * given *lifting size*. + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef SRSLTE_BASEGRAPH_H +#define SRSLTE_BASEGRAPH_H + +#include "srslte/config.h" + +#include + +#define BG1Nfull 68 /*!< \brief Number of variable nodes in BG1. */ +#define BG1N 66 /*!< \brief Number of variable nodes in BG1 after puncturing. */ +#define BG1M 46 /*!< \brief Number of check nodes in BG1. */ +#define BG1K 22 /*!< \brief Number of "uncoded bits" in BG1. */ + +#define BG2Nfull 52 /*!< \brief Number of variable nodes in BG2. */ +#define BG2N 50 /*!< \brief Number of variable nodes in BG2 after puncturing. */ +#define BG2M 42 /*!< \brief Number of check nodes in BG2. */ +#define BG2K 10 /*!< \brief Number of "uncoded bits" in BG2. */ + +#define MAX_CNCT 20 /*!< \brief Maximum number (+1) of connected variables per check node. */ + +#define NOF_LIFTSIZE 8 /*!< \brief Number of possible lifting size indices. */ + +#define MAX_LIFTSIZE 384 /*!< \brief Maximum lifting size. */ + +#define VOID_LIFTSIZE 255 /*!< \brief Identifies an invalid lifting size in the lookup table. */ +/*! + * \brief Identifies a missing connection between a check node and a variable node + * in the protograph. */ +#define NO_CNCT 0xFFFF + +/*! \brief Possible base graphs, BG1 or BG2. */ +typedef enum SRSLTE_API { + BG1 = 0, /*!< \brief Base Graph 1 */ + BG2, /*!< \brief Base Graph 2 */ +} srslte_basegraph_t; + +/*! + * Creates the parity-check matrix for the given base graph and lifting size + * in the compact form (a normalized permutation matrix). Also returns the + * indices of the variable nodes associated to each check node. + * \param[out] pcm The compact parity-check matrix: entry \f$(m,n)\f$ is an + * integer between 0 and LS-1 if check-node \f$m\f$ is + * connected to variable node \f$n\f$ in the protograph. + * This number specifies the order of the circular + * rotation applied to the identity matrix in the full + * graph (see also Section 3.4.1 of Deliverable 1). This + * pointer can be safely cast to 'uint16_t(*)[BGbgNfull]' + * (see also ::BG1Nfull and ::BG2Nfull) to get an BGbgM x + * BGbgNfull matrix. + * \param[out] positions For each check node, the corresponding row of this + * matrix contains the indices of the connected variable + * nodes (see also ::BG1_positions and ::BG2_positions). + * \param[in] bg The desired base graph (BG1 or BG2). + * \param[in] ls The desired lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int create_compact_pcm(uint16_t* pcm, int8_t (*positions)[MAX_CNCT], srslte_basegraph_t bg, uint16_t ls); + +/*! + * Reads the lookup table and returns the set index corresponding to the given + * lifting size. + * \param[in] ls A lifting size. + * \return An integer between 0 and 7 (included), ::VOID_LIFTSIZE if ls is an + * invalid lifting size + */ +static inline uint8_t get_ls_index(uint16_t ls) +{ + extern const uint8_t LSindex[]; + return (ls <= MAX_LIFTSIZE ? LSindex[ls] : VOID_LIFTSIZE); +} + +#endif // SRSLTE_BASEGRAPH_H diff --git a/lib/include/srslte/phy/fec/ldpc/ldpc_common.h b/lib/include/srslte/phy/fec/ldpc/ldpc_common.h new file mode 100644 index 000000000..d20fb5039 --- /dev/null +++ b/lib/include/srslte/phy/fec/ldpc/ldpc_common.h @@ -0,0 +1,37 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_common.h + * \brief Declaration of elements common to both the LDPC encoder and the LDPC decoder. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef SRSLTE_LDPCCOMMON_H +#define SRSLTE_LDPCCOMMON_H + +#define FILLER_BIT 254 /*!< \brief Identifies a filler bit. */ + +#endif // SRSLTE_LDPCCOMMON_H diff --git a/lib/include/srslte/phy/fec/ldpc/ldpc_decoder.h b/lib/include/srslte/phy/fec/ldpc/ldpc_decoder.h new file mode 100644 index 000000000..bc363c370 --- /dev/null +++ b/lib/include/srslte/phy/fec/ldpc/ldpc_decoder.h @@ -0,0 +1,150 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_decoder.h + * \brief Declaration of the LDPC decoder. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef SRSLTE_LDPCDECODER_H +#define SRSLTE_LDPCDECODER_H + +#include "srslte/phy/fec/ldpc/base_graph.h" + +/*! + * \brief Types of LDPC decoder. + */ +typedef enum { + SRSLTE_LDPC_DECODER_F, /*!< \brief %Decoder working with real-valued LLRs. */ + SRSLTE_LDPC_DECODER_S, /*!< \brief %Decoder working with 16-bit integer-valued LLRs. */ + SRSLTE_LDPC_DECODER_C, /*!< \brief %Decoder working with 8-bit integer-valued LLRs. */ + SRSLTE_LDPC_DECODER_C_FLOOD, /*!< \brief %Decoder working with 8-bit integer-valued LLRs, flooded scheduling. */ + SRSLTE_LDPC_DECODER_C_AVX2, /*!< \brief %Decoder working with 8-bit integer-valued LLRs (AVX2 version). */ + SRSLTE_LDPC_DECODER_C_AVX2_FLOOD, /*!< \brief %Decoder working with 8-bit integer-valued LLRs, flooded scheduling + (AVX2 version). */ +} srslte_ldpc_decoder_type_t; + +/*! + * \brief Describes an LDPC decoder. + */ +typedef struct SRSLTE_API { + void* ptr; /*!< \brief Registers used by the decoder. */ + srslte_basegraph_t bg; /*!< \brief Current base graph. */ + uint16_t ls; /*!< \brief Current lifting size. */ + uint8_t bgN; /*!< \brief Number of variable nodes in the BG. */ + uint16_t liftN; /*!< \brief Number of variable nodes in the lifted graph. */ + uint8_t bgM; /*!< \brief Number of check nodes in the BG. */ + uint16_t liftM; /*!< \brief Number of check nodes in the lifted graph. */ + uint8_t bgK; /*!< \brief Number of "uncoded bits" in the BG. */ + uint16_t liftK; /*!< \brief Number of uncoded bits in the lifted graph. */ + uint16_t* pcm; /*!< \brief Pointer to the parity check matrix (compact form). */ + + int8_t (*var_indices)[MAX_CNCT]; /*!< \brief Pointer to lists of variable indices connected to a given check node. */ + + float scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum algorithm. */ + + void (*free)(void*); /*!< \brief Pointer to a "destructor". */ + + int (*decode_f)(void*, + const float*, + uint8_t*, + uint32_t); /*!< \brief Pointer to the decoding function (float version). */ + int (*decode_s)(void*, + const int16_t*, + uint8_t*, + uint32_t); /*!< \brief Pointer to the decoding function (16-bit version). */ + int (*decode_c)(void*, + const int8_t*, + uint8_t*, + uint32_t); /*!< \brief Pointer to the decoding function (16-bit version). */ +} srslte_ldpc_decoder_t; + +/*! + * Initializes all the LDPC decoder variables according to the given base graph + * and lifting size. + * \param[out] q A pointer to a srslte_ldpc_decoder_t structure. + * \param[in] type Type of LDPC decoder. + * \param[in] bg The desired base graph (BG1 or BG2). + * \param[in] ls The desired lifting size. + * \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_decoder_init(srslte_ldpc_decoder_t* q, + srslte_ldpc_decoder_type_t type, + srslte_basegraph_t bg, + uint16_t ls, + float scaling_fctr); + +/*! + * The LDPC decoder "destructor": it frees all the resources allocated to the decoder. + * \param[in] q A pointer to the dismantled decoder. + */ +SRSLTE_API void srslte_ldpc_decoder_free(srslte_ldpc_decoder_t* q); + +/*! + * Carries out the actual decoding with real-valued LLRs. + * \param[in] q A pointer to the LDPC decoder (a srslte_ldpc_decoder_t structure + * instance) that carries out the decoding. + * \param[in] llrs The LLRs obtained from the channel samples that correspond to + * the codeword to be decoded. + * \param[out] message The message (uncoded bits) resulting from the decoding + * operation. + * \param[in] cdwd_rm_length The number of bits forming the codeword (after rate matching). + */ +SRSLTE_API int +srslte_ldpc_decoder_decode_f(srslte_ldpc_decoder_t* q, const float* llrs, uint8_t* message, uint32_t cdwd_rm_length); + +/*! + * Carries out the actual decoding with 16-bit integer-valued LLRs. It is + * recommended to use a 15-bit representation for the LLRs, given that all + * values exceeding \f$ 2^{15}-1 \f$ (in magnitude) will be considered as infinity. + * \param[in] q A pointer to the LDPC decoder (a srslte_ldpc_decoder_t structure + * instance) that carries out the decoding. + * \param[in] llrs The LLRs obtained from the channel samples that correspond to + * the codeword to be decoded. + * \param[out] message The message (uncoded bits) resulting from the decoding + * operation. + * \param[in] cdwd_rm_length The number of bits forming the codeword (after rate matching). + */ +SRSLTE_API int +srslte_ldpc_decoder_decode_s(srslte_ldpc_decoder_t* q, const int16_t* llrs, uint8_t* message, uint32_t cdwd_rm_length); + +/*! + * Carries out the actual decoding with 8-bit integer-valued LLRs. It is + * recommended to use a 7-bit representation for the LLRs, given that all + * values exceeding \f$ 2^{7}-1 \f$ (in magnitude) will be considered as infinity. + * \param[in] q A pointer to the LDPC decoder (a srslte_ldpc_decoder_t structure + * instance) that carries out the decoding. + * \param[in] llrs The LLRs obtained from the channel samples that correspond to + * the codeword to be decoded. + * \param[out] message The message (uncoded bits) resulting from the decoding + * operation. + * \param[in] cdwd_rm_length The number of bits forming the codeword (after rate matching). + */ +SRSLTE_API int +srslte_ldpc_decoder_decode_c(srslte_ldpc_decoder_t* q, const int8_t* llrs, uint8_t* message, uint32_t cdwd_rm_length); + +#endif // SRSLTE_LDPCDECODER_H diff --git a/lib/include/srslte/phy/fec/ldpc/ldpc_encoder.h b/lib/include/srslte/phy/fec/ldpc/ldpc_encoder.h new file mode 100644 index 000000000..3e19e536d --- /dev/null +++ b/lib/include/srslte/phy/fec/ldpc/ldpc_encoder.h @@ -0,0 +1,104 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_encoder.h + * \brief Declaration of the LDPC encoder. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef SRSLTE_LDPCENCODER_H +#define SRSLTE_LDPCENCODER_H + +#include "srslte/phy/fec/ldpc/base_graph.h" + +/*! + * \brief Types of LDPC encoder. + */ +typedef enum SRSLTE_API { + SRSLTE_LDPC_ENCODER_C = 0, /*!< \brief Non-optimized encoder. */ +#if LV_HAVE_AVX2 + SRSLTE_LDPC_ENCODER_AVX2, /*!< \brief SIMD-optimized encoder. */ +#endif // LV_HAVE_AVX2 +} srslte_ldpc_encoder_type_t; + +/*! + * \brief Describes an LDPC encoder. + */ +typedef struct SRSLTE_API { + void* ptr; /*!< \brief %Encoder auxiliary registers. */ + srslte_basegraph_t bg; /*!< \brief Current base graph. */ + uint16_t ls; /*!< \brief Current lifting size. */ + uint8_t bgN; /*!< \brief Number of variable nodes in the BG. */ + uint16_t liftN; /*!< \brief Number of variable nodes in the lifted graph. */ + uint8_t bgM; /*!< \brief Number of check nodes in the BG. */ + uint16_t liftM; /*!< \brief Number of check nodes in the lifted graph. */ + uint8_t bgK; /*!< \brief Number of "uncoded bits" in the BG. */ + uint16_t liftK; /*!< \brief Number of uncoded bits in the lifted graph. */ + uint16_t* pcm; /*!< \brief Pointer to the parity check matrix (compact form). */ + void (*free)(void*); /*!< \brief Pointer to a "destructor". */ + /*! \brief Pointer to the encoder function. */ + int (*encode)(void*, const uint8_t*, uint8_t*, uint32_t, uint32_t); + /*! \brief Pointer to the encoder for the high-rate region. */ + void (*encode_high_rate)(void*, uint8_t*); + /*! \brief Pointer to the encoder for the high-rate region (SIMD-optimized version). */ + void (*encode_high_rate_avx2)(void*); + +} srslte_ldpc_encoder_t; + +/*! + * Initializes all the LDPC encoder variables according to the given base graph + * and lifting size. + * \param[out] q A pointer to a srslte_ldpc_encoder_t structure. + * \param[in] type The encoder type. + * \param[in] bg The desired base graph (BG1 or BG2). + * \param[in] ls The desired lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int +srslte_ldpc_encoder_init(srslte_ldpc_encoder_t* q, srslte_ldpc_encoder_type_t type, srslte_basegraph_t bg, uint16_t ls); + +/*! + * The LDPC encoder "destructor": it frees all the resources allocated to the encoder. + * \param[in] q A pointer to the dismantled encoder. + */ +SRSLTE_API void srslte_ldpc_encoder_free(srslte_ldpc_encoder_t* q); + +/*! + * Encodes a message into a codeword with the specified encoder. + * \param[in] q A pointer to the desired encoder. + * \param[in] input The message to encode. + * \param[out] output The resulting codeword. + * \param[in] input_length The number of uncoded bits in the input message. + * \param[in] cdwd_rm_length The codeword length after rate matching. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_encoder_encode(srslte_ldpc_encoder_t* q, + const uint8_t* input, + uint8_t* output, + uint32_t input_length, + uint32_t cdwd_rm_length); + +#endif // SRSLTE_LDPCENCODER_H diff --git a/lib/include/srslte/phy/fec/ldpc/ldpc_rm.h b/lib/include/srslte/phy/fec/ldpc/ldpc_rm.h new file mode 100644 index 000000000..0aaa8ca66 --- /dev/null +++ b/lib/include/srslte/phy/fec/ldpc/ldpc_rm.h @@ -0,0 +1,224 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_rm.h + * \brief Declaration of the LDPC RateMatcher and RateDematcher. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef SRSLTE_LDPCRM_H +#define SRSLTE_LDPCRM_H + +#include "srslte/phy/fec/ldpc/base_graph.h" + +/*! + * \brief Types of modulations and associated modulation order. + */ +typedef enum SRSLTE_API { + BPSK, /*!< \brief pi/2-BPSK. */ + QPSK, /*!< \brief QPSK. */ + QAM16, /*!< \brief QAM16. */ + QAM64, /*!< \brief QAM64. */ + QAM256 /*!< \brief QAM256. */ +} mod_type_t; + +/*! + * \brief Describes a rate matcher or rate dematcher (K, F are ignored at rate matcher) + */ +typedef struct SRSLTE_API { + void* ptr; /*!< \brief %Rate Matcher auxiliary registers. */ + srslte_basegraph_t bg; /*!< \brief Current base graph. */ + uint16_t ls; /*!< \brief Current lifting size. */ + uint32_t N; /*!< \brief Codeword size. */ + uint32_t E; /*!< \brief Rate-Matched codeword size. */ + uint32_t K; /*!< \brief Codeblock size (including punctured and filler bits). */ + uint32_t F; /*!< \brief Number of filler bits in the codeblock. */ + uint32_t k0; /*!< \brief Starting position in the circular buffer. */ + uint32_t mod_order; /*!< \brief Modulation order. */ + uint32_t Ncb; /*!< \brief Limit to the number of bits in the circular buffer. */ +} srslte_ldpc_rm_t; + +/*! + * Initializes the Rate Matcher for the maximum rate-matched codeword length + * \param[out] q A pointer to a srslte_ldpc_rm_t structure. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_rm_tx_init(srslte_ldpc_rm_t* q); + +/*! + * Carries out the actual rate-matching. + * \param[in] q A pointer to the Rate-Matcher (a srslte_ldpc_rm_t structure + * instance) that carries out the rate matching. + * \param[in] input The codeword obtained from the ldpc encoder. + * \param[out] output The rate-matched codeword resulting from the rate-matching + * operation. + * \param[in] E Rate-matched codeword length. + * \param[in] bg; Current base graph. + * \param[in] ls Current lifting size. + * \param[in] rv Redundancy version 0,1,2,3. + * \param[in] mod_type Modulation type. + * \param[in] Nref Size of limited buffer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_rm_tx(srslte_ldpc_rm_t* q, + const uint8_t* input, + uint8_t* output, + const uint32_t E, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref); + +/*! + * Initializes all the Rate DeMatcher variables. + * \param[out] q A pointer to a srslte_ldpc_rm_t structure. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_rm_rx_init_f(srslte_ldpc_rm_t* q); + +/*! + * Carries out the actual rate-dematching. + * \param[in] q A pointer to the Rate-DeMatcher (a srslte_ldpc_rm_t structure + * instance) that carries out the rate matching. + * \param[in] input The LLRs obtained from the channel samples that correspond to + * the codeword to be first, rate-dematched and then decoded. + * \param[out] output The rate-dematched codeword resulting from the rate-dematching + * operation. + * \param[in] E Rate-matched codeword length. + * \param[in] F Number of filler bits. + * \param[in] bg; Current base graph. + * \param[in] ls Current lifting size. + * \param[in] rv Redundancy version 0,1,2,3. + * \param[in] mod_type Modulation type. + * \param[in] Nref Size of limited buffer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_rm_rx_f(srslte_ldpc_rm_t* q, + const float* input, + float* output, + const uint32_t E, + const uint32_t F, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref); + +/*! + * Initializes all the Rate DeMatcher variables (short inputs). + * \param[out] q A pointer to a srslte_ldpc_rm_t structure. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_rm_rx_init_s(srslte_ldpc_rm_t* q); + +/*! + * Carries out the actual rate-dematching (short symbols). + * \param[in] q A pointer to the Rate-DeMatcher (a srslte_ldpc_rm_t structure + * instance) that carries out the rate matching. + * \param[in] input The LLRs obtained from the channel samples that correspond to + * the codeword to be first, rate-dematched and then decoded. + * \param[in] E Rate-matched codeword length. + * \param[in] F Number of filler bits. + * \param[in] bg; Current base graph. + * \param[in] ls Current lifting size. + * \param[in] rv Redundancy version 0,1,2,3. + * \param[in] mod_type Modulation type. + * \param[in] Nref Size of limited buffer. + * \param[out] output The rate-dematched codeword resulting from the rate-dematching + * operation. + */ +SRSLTE_API int srslte_ldpc_rm_rx_s(srslte_ldpc_rm_t* q, + const int16_t* input, + int16_t* output, + const uint32_t E, + const uint32_t F, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref); + +/*! + * Initializes all the Rate DeMatcher variables (char inputs). + * \param[out] q A pointer to a srslte_ldpc_rm_t structure. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_rm_rx_init_c(srslte_ldpc_rm_t* q); + +/*! + * Carries out the actual rate-dematching (int8_t symbols). + * \param[in] q A pointer to the Rate-DeMatcher (a srslte_ldpc_rm_t structure + * instance) that carries out the rate matching. + * \param[in] input The LLRs obtained from the channel samples that correspond to + * the codeword to be first, rate-dematched and then decoded. + * \param[out] output The rate-dematched codeword resulting from the rate-dematching + * operation. + * \param[in] E Rate-matched codeword length. + * \param[in] F Number of filler bits. + * \param[in] bg; Current base graph. + * \param[in] ls Current lifting size. + * \param[in] rv Redundancy version 0,1,2,3. + * \param[in] mod_type Modulation type. + * \param[in] Nref Size of limited buffer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_ldpc_rm_rx_c(srslte_ldpc_rm_t* q, + const int8_t* input, + int8_t* output, + const uint32_t E, + const uint32_t F, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref); + +/*! + * The Rate Matcher "destructor": it frees all the resources allocated to the rate-matcher. + * \param[in] q A pointer to the dismantled rate-matcher. + */ +SRSLTE_API void srslte_ldpc_rm_tx_free(srslte_ldpc_rm_t* q); + +/*! + * The Rate Matcher "destructor": it frees all the resources allocated to the rate-dematcher. + * \param[in] q A pointer to the dismantled rate-dematcher. + */ +SRSLTE_API void srslte_ldpc_rm_rx_free_f(srslte_ldpc_rm_t* q); + +/*! + * The Rate Matcher "destructor" for short symbols: it frees all the resources allocated to the rate-dematcher. + * \param[in] q A pointer to the dismantled rate-dematcher. + */ +SRSLTE_API void srslte_ldpc_rm_rx_free_s(srslte_ldpc_rm_t* q); + +/*! + * The Rate Matcher "destructor" for int8_t symbols: it frees all the resources allocated to the rate-dematcher. + * \param[in] q A pointer to the dismantled rate-dematcher. + */ +SRSLTE_API void srslte_ldpc_rm_rx_free_c(srslte_ldpc_rm_t* q); + +#endif // SRSLTE_LDPCENCODER_H diff --git a/lib/include/srslte/phy/fec/polar/polar_decoder.h b/lib/include/srslte/phy/fec/polar/polar_decoder.h new file mode 100644 index 000000000..18b7c3d6f --- /dev/null +++ b/lib/include/srslte/phy/fec/polar/polar_decoder.h @@ -0,0 +1,118 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder.h + * \brief Declaration of the polar decoder. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * 5G uses a polar decoder with maximum sizes \f$2^n\f$ with \f$n = 5,...,10\f$. + * + */ + +#ifndef SRSLTE_POLARDECODER_H +#define SRSLTE_POLARDECODER_H +#include "srslte/config.h" +#include +#include + +/*! + * Lists the different types of polar decoder. + */ +typedef enum { + SRSLTE_POLAR_DECODER_SSC_F = 0, /*!< \brief Floating-point Simplified Successive Cancellation (SSC) decoder. */ + SRSLTE_POLAR_DECODER_SSC_S = 1, /*!< \brief Fixed-point (16 bit) Simplified Successive Cancellation (SSC) decoder. */ + SRSLTE_POLAR_DECODER_SSC_C = 2, /*!< \brief Fixed-point (8 bit) Simplified Successive Cancellation (SSC) decoder. */ + SRSLTE_POLAR_DECODER_SSC_C_AVX2 = + 3 /*!< \brief Fixed-point (8 bit, avx2) Simplified Successive Cancellation (SSC) decoder. */ +} srslte_polar_decoder_type_t; + +/*! + * \brief Describes a polar decoder. + */ +typedef struct SRSLTE_API { + void* ptr; /*!< \brief Pointer to the actual polar decoder structure. */ + int (*decode_f)(void* ptr, + const float* symbols, + uint8_t* data_decoded); /*!< \brief Pointer to the decoder function (float version). */ + int (*decode_s)(void* ptr, + const int16_t* symbols, + uint8_t* data_decoded); /*!< \brief Pointer to the decoder function (16-bit version). */ + int (*decode_c)(void* ptr, + const int8_t* symbols, + uint8_t* data_decoded); /*!< \brief Pointer to the decoder function (8-bit version). */ + void (*free)(void*); /*!< \brief Pointer to a "destructor". */ +} srslte_polar_decoder_t; + +/*! + * Initializes all the polar decoder variables according to the selected decoding + * algorithm and the given code size. + * \param[out] q A pointer to the initialized polar decoder. + * \param[in] polar_decoder_type Polar decoder type. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the decoder input/output vector. + * \param[in] frozen_set A pointer to the frozen–bit set (array of indices). + * \param[in] frozen_set_size Number of frozen bits. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_polar_decoder_init(srslte_polar_decoder_t* q, + srslte_polar_decoder_type_t polar_decoder_type, + uint16_t code_size_log, + uint16_t* frozen_set, + uint16_t frozen_set_size); + +/*! + * The polar decoder "destructor": it frees all the resources. + * \param[in, out] q A pointer to the dismantled decoder. + */ +SRSLTE_API void srslte_polar_decoder_free(srslte_polar_decoder_t* q); + +/*! + * Decodes the input (float) codeword with the specified polar decoder. + * \param[in] q A pointer to the desired polar decoder. + * \param[in] input_llr The decoder LLR input vector. + * \param[out] data_decoded The decoder output vector. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_polar_decoder_decode_f(srslte_polar_decoder_t* q, const float* input_llr, uint8_t* data_decoded); + +/*! + * Decodes the input (int16_t) codeword with the specified polar decoder. + * \param[in] q A pointer to the desired polar decoder. + * \param[in] input_llr The decoder LLR input vector. + * \param[out] data_decoded The decoder output vector. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int +srslte_polar_decoder_decode_s(srslte_polar_decoder_t* q, const int16_t* input_llr, uint8_t* data_decoded); + +/*! + * Decodes the input (int8_t) codeword with the specified polar decoder. + * \param[in] q A pointer to the desired polar decoder. + * \param[in] input_llr The decoder LLR input vector. + * \param[out] data_decoded The decoder output vector. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_polar_decoder_decode_c(srslte_polar_decoder_t* q, const int8_t* input_llr, uint8_t* data_decoded); + +#endif // SRSLTE_POLARDECODER_H diff --git a/lib/include/srslte/phy/fec/polar/polar_encoder.h b/lib/include/srslte/phy/fec/polar/polar_encoder.h new file mode 100644 index 000000000..f25901141 --- /dev/null +++ b/lib/include/srslte/phy/fec/polar/polar_encoder.h @@ -0,0 +1,90 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_encoder.h + * \brief Declaration of the polar encoder. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * 5G uses a polar encoder with maximum sizes \f$2^n\f$ with \f$n = 5,...,10\f$. + * + */ + +#ifndef SRSLTE_POLAR_ENCODER_H +#define SRSLTE_POLAR_ENCODER_H + +#include "srslte/config.h" +#include + +/*! + * Lists the different types of polar decoder. + */ +typedef enum SRSLTE_API { + SRSLTE_POLAR_ENCODER_PIPELINED = 0, /*!< \brief Non-optimized version of the pipelined polar encoder*/ + SRSLTE_POLAR_ENCODER_AVX2 = 1, /*!< \brief SIMD implementation of the polar encoder */ +} srslte_polar_encoder_type_t; + +/*! + * \brief Describes a polar encoder. + */ +typedef struct srslte_polar_encoder_t { + void* ptr; /*!< \brief Pointer to the actual polar encoder structure. */ + int (*encode)(void* ptr, + const uint8_t* input, + uint8_t* output, + const uint8_t code_size_log); /*!< \brief Pointer to the encoder function. */ + void (*free)(void*); /*!< \brief Pointer to a "destructor". */ +} srslte_polar_encoder_t; + +/*! + * Initializes all the polar encoder variables according to the given code size. + * \param[out] q A pointer to the initialized polar encoder. + * \param[in] polar_encoder_type Polar encoder type. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the encoder input/output vector. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int srslte_polar_encoder_init(srslte_polar_encoder_t* q, + srslte_polar_encoder_type_t polar_encoder_type, + uint8_t code_size_log); + +/*! + * The polar encoder "destructor": it frees all the resources. + * \param[in, out] q A pointer to the dismantled encoder. + */ +SRSLTE_API void srslte_polar_encoder_free(srslte_polar_encoder_t* q); + +/*! + * Encodes the input vector into a codeword with the specified polar encoder. + * \param[in] q A pointer to the desired polar encoder. + * \param[in] input The encoder input vector. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the encoder input/output vector. + * It cannot be larger than the maximum code_size_log specified in q.code_size_log of + * the srslte_polar_encoder_t structure. + * \param[out] output The encoder output vector. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +SRSLTE_API int +srslte_polar_encoder_encode(srslte_polar_encoder_t* q, const uint8_t* input, uint8_t* output, uint8_t code_size_log); + +#endif // SRSLTE_POLAR_ENCODER_H diff --git a/lib/include/srslte/phy/fec/polar/test/polar_sets.h b/lib/include/srslte/phy/fec/polar/test/polar_sets.h new file mode 100644 index 000000000..df50ca7c4 --- /dev/null +++ b/lib/include/srslte/phy/fec/polar/test/polar_sets.h @@ -0,0 +1,80 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_sets.h + * \brief Declaration of the auxiliary function that reads polar index sets from a file. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * The message and parity check sets provided by this functions are needed by + * the subchannel allocation block. + * The frozen bit set provided by this function is used by the polar decoder. + * + */ + +#ifndef SRSLTE_POLAR_SETS_H +#define SRSLTE_POLAR_SETS_H + +#include "srslte/config.h" +#include + +/*! + * \brief Describes a polar set. + */ +typedef struct { + uint16_t message_set_size; /*!< \brief Number of message bits (data and CRC). */ + uint16_t info_set_size; /*!< \brief Number of message bits plus parity bits. */ + uint16_t parity_set_size; /*!< \brief Number of parity check bits. */ + uint16_t frozen_set_size; /*!< \brief Number of frozen bits. */ + uint16_t* message_set; /*!< \brief Pointer to the indices of the encoder input vector containing data and CRC bits. */ + uint16_t* info_set; /*!< \brief Pointer to the indices of the encoder input vector containing data, CRC and + parity check bits.*/ + uint16_t* parity_set; /*!< \brief Pointer to the indices of the encoder input vector containing the parity bits.*/ + uint16_t* frozen_set; /*!< \brief Pointer to the indices of the encoder input vector containing frozen bits.*/ +} srslte_polar_sets_t; + +/*! + * Initializes the different index sets as needed by the subchannel allocation block and/or by the polar decoder. + * \param[out] c A pointer to the initialized polar set. + * \param[in] message_size Number of data + CRC bits. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the decoder input/output vector. + * \param[in] rate_matching_size Number of bits of the codeword after rate matching. + * \param[in] parity_set_size Number of parity bits. + * \param[in] nWmPC Number of parity bits of minimum weight type. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int srslte_polar_code_sets_read(srslte_polar_sets_t* c, + uint16_t message_size, + uint8_t code_size_log, + uint16_t rate_matching_size, + uint8_t parity_set_size, + uint8_t nWmPC); + +/*! + * The polar set "destructor": it frees all the resources. + * \param[in] c A pointer to the dismantled polar set. + */ +void srslte_polar_code_sets_free(srslte_polar_sets_t* c); + +#endif // SRSLTE_POLAR_SETS_H diff --git a/lib/include/srslte/phy/fec/polar/test/subchannel_allocation.h b/lib/include/srslte/phy/fec/polar/test/subchannel_allocation.h new file mode 100644 index 000000000..7dccd7544 --- /dev/null +++ b/lib/include/srslte/phy/fec/polar/test/subchannel_allocation.h @@ -0,0 +1,86 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file subchannel_allocation.h + * \brief Declaration of the auxiliary subchannel allocation block. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * These functions are not fully functional nor tested to be 3gpp-5G compliant. + * Please, use only for testing purposes. + * + */ + +#ifndef SRSLTE_SUB_CHANNEL_ALLOC_H +#define SRSLTE_SUB_CHANNEL_ALLOC_H + +#include "srslte/config.h" +#include "stdint.h" + +/*! + * \brief Describes a subchannel allocation. + */ +typedef struct SRSLTE_API srslte_subchn_alloc_t { + uint16_t code_size; /*!< \brief Number of bits, \f$N\f$, of the encoder input/output vector. */ + uint16_t message_size; /*!< \brief Number of bits, \f$K\f$, of data + CRC. */ + uint16_t* message_set; /*!< \brief Pointer to the indices of the encoder input vector containing data and CRC bits. */ +} srslte_subchn_alloc_t; + +/*! + * Initializes a subchannel allocation instance. + * \param[out] c A pointer to the srslte_subchn_alloc_t structure + * containing the parameters needed by the subchannel allocation function. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the decoder input/output vector. + * \param[in] message_set_size Number of data + CRC bits. + * \param[in] message_set Pointer to the indices of the encoder input vector containing + * data and CRC bits. + */ +void srslte_subchannel_allocation_init(srslte_subchn_alloc_t* c, + uint8_t code_size_log, + uint16_t message_set_size, + uint16_t* message_set); + +/*! + * Allocates message bits (data + CRC) to the encoder input bit vector at the + * positions specified in \a c->message_set and zeros to the remaining + * positions. This function is not fully 5G compliant as parity bits positions + * are set to 0. + * \param[in] c A pointer to the srslte_subchn_alloc_t structure containing + * the parameters needed by the subchannel allocation function. + * \param[in] message A pointer to the vector with the message bits (data and CRC). + * \param[out] input_encoder A pointer to the encoder input bit vector. + */ +void srslte_subchannel_allocation(const srslte_subchn_alloc_t* c, const uint8_t* message, uint8_t* input_encoder); + +/*! + * Extracts message bits (data + CRC) from the decoder output vector + * according to the positions specified in \a c->message_set. + * \param[in] c A pointer to the srslte_subchn_alloc_t structure containing the + * parameters needed by the subchannel allocation function. + * \param[in] output_decoder A pointer to the decoder output bit vector. + * \param[out] message A pointer to the vector with the message bits (data and CRC). + */ +void srslte_subchannel_deallocation(const srslte_subchn_alloc_t* c, const uint8_t* output_decoder, uint8_t* message); + +#endif // SRSLTE_SUB_CHANNEL_ALLOC_H diff --git a/lib/include/srslte/phy/utils/convolution.h b/lib/include/srslte/phy/utils/convolution.h index 507a28561..5767331bd 100644 --- a/lib/include/srslte/phy/utils/convolution.h +++ b/lib/include/srslte/phy/utils/convolution.h @@ -32,6 +32,7 @@ #include "srslte/config.h" #include "srslte/phy/dft/dft.h" +#include typedef struct SRSLTE_API { cf_t* input_fft; @@ -72,12 +73,12 @@ SRSLTE_API uint32_t srslte_conv_fft_cc_run_opt(srslte_conv_fft_cc_t* q, cf_t* output); SRSLTE_API uint32_t - srslte_conv_cc(const cf_t* input, const cf_t* filter, cf_t* output, uint32_t input_len, uint32_t filter_len); +srslte_conv_cc(const cf_t* input, const cf_t* filter, cf_t* output, uint32_t input_len, uint32_t filter_len); SRSLTE_API uint32_t - srslte_conv_same_cf(cf_t* input, float* filter, cf_t* output, uint32_t input_len, uint32_t filter_len); +srslte_conv_same_cf(cf_t* input, float* filter, cf_t* output, uint32_t input_len, uint32_t filter_len); SRSLTE_API uint32_t - srslte_conv_same_cc(cf_t* input, cf_t* filter, cf_t* output, uint32_t input_len, uint32_t filter_len); +srslte_conv_same_cc(cf_t* input, cf_t* filter, cf_t* output, uint32_t input_len, uint32_t filter_len); #endif // SRSLTE_CONVOLUTION_H diff --git a/lib/include/srslte/phy/utils/vector.h b/lib/include/srslte/phy/utils/vector.h index 8d661fd0e..141195e90 100644 --- a/lib/include/srslte/phy/utils/vector.h +++ b/lib/include/srslte/phy/utils/vector.h @@ -72,8 +72,14 @@ static inline float srslte_convert_dB_to_power(float v) return powf(10.0f, v / 10.0f); } -/*logical operations */ -SRSLTE_API void srslte_vec_xor_bbb(int8_t* x, int8_t* y, int8_t* z, const uint32_t len); +/*! + * Computes \f$ z = x \oplus y \f$ elementwise. + * \param[in] x A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] y A pointer to a vector of uint8_t with 0's and 1's. + * \param[out] z A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] len Length of vectors x, y and z. + */ +SRSLTE_API void srslte_vec_xor_bbb(const uint8_t* x, const uint8_t* y, uint8_t* z, const uint32_t len); /** Return the sum of all the elements */ SRSLTE_API float srslte_vec_acc_ff(const float* x, const uint32_t len); @@ -194,6 +200,32 @@ SRSLTE_API uint32_t srslte_vec_max_fi(const float* x, const uint32_t len); SRSLTE_API uint32_t srslte_vec_max_abs_fi(const float* x, const uint32_t len); SRSLTE_API uint32_t srslte_vec_max_abs_ci(const cf_t* x, const uint32_t len); +/*! + * Quantizes an array of floats into an array of 16-bit signed integers. It is + * ensured that *-inf* and *inf* map to -32767 and 32767, respectively (useful + * when quantizing on less than 16 bits). + * \param[in] in Real values to be quantized. + * \param[out] out Quantized values. + * \param[in] gain Quantization gain, controls the output range. + * \param[in] offset Quantization offset, for asymmetric quantization. + * \param[in] clip Saturation value. + * \param[in] len Number of values to be quantized. + */ +SRSLTE_API void srslte_vec_quant_fs(const float* in, int16_t* out, float gain, float offset, float clip, uint32_t len); + +/*! + * Quantizes an array of floats into an array of 8-bit signed integers. It is + * ensured that *-inf* and *inf* map to -127 and 127, respectively (useful + * when quantizing on less than 8 bits). + * \param[in] in Real values to be quantized. + * \param[out] out Quantized values. + * \param[in] gain Quantization gain, controls the output range. + * \param[in] offset Quantization offset, for asymmetric quantization. + * \param[in] clip Saturation value. + * \param[in] len Number of values to be quantized. + */ +SRSLTE_API void srslte_vec_quant_fc(const float* in, int8_t* out, float gain, float offset, float clip, uint32_t len); + /* quantify vector of floats or int16 and convert to uint8_t */ SRSLTE_API void srslte_vec_quant_fuc(const float* in, uint8_t* out, diff --git a/lib/include/srslte/phy/utils/vector_simd.h b/lib/include/srslte/phy/utils/vector_simd.h index 450105a56..c173b927b 100644 --- a/lib/include/srslte/phy/utils/vector_simd.h +++ b/lib/include/srslte/phy/utils/vector_simd.h @@ -31,7 +31,7 @@ extern "C" { #include /*SIMD Logical operations*/ -SRSLTE_API void srslte_vec_xor_bbb_simd(const int8_t* x, const int8_t* y, int8_t* z, int len); +SRSLTE_API void srslte_vec_xor_bbb_simd(const uint8_t* x, const uint8_t* y, uint8_t* z, int len); /* SIMD Basic vector math */ SRSLTE_API void srslte_vec_sum_sss_simd(const int16_t* x, const int16_t* y, int16_t* z, int len); diff --git a/lib/src/phy/fec/CMakeLists.txt b/lib/src/phy/fec/CMakeLists.txt index 7f219d0f8..7a86a2b4d 100644 --- a/lib/src/phy/fec/CMakeLists.txt +++ b/lib/src/phy/fec/CMakeLists.txt @@ -22,8 +22,10 @@ set(FEC_SOURCES crc.c softbuffer.c) -add_subdirectory(test) add_subdirectory(convolutional) +add_subdirectory(ldpc) +add_subdirectory(polar) +add_subdirectory(test) add_subdirectory(turbo) add_library(srslte_fec OBJECT ${FEC_SOURCES}) diff --git a/lib/src/phy/fec/convolutional/CMakeLists.txt b/lib/src/phy/fec/convolutional/CMakeLists.txt index 85e94092f..5319fee53 100644 --- a/lib/src/phy/fec/convolutional/CMakeLists.txt +++ b/lib/src/phy/fec/convolutional/CMakeLists.txt @@ -29,6 +29,4 @@ set(FEC_SOURCES ${FEC_SOURCES} convolutional/viterbi37_sse.c PARENT_SCOPE) -message(STATUS "aaaaa ${FEC_SOURCES}") - add_subdirectory(test) diff --git a/lib/src/phy/fec/ldpc/CMakeLists.txt b/lib/src/phy/fec/ldpc/CMakeLists.txt new file mode 100644 index 000000000..69713ce4b --- /dev/null +++ b/lib/src/phy/fec/ldpc/CMakeLists.txt @@ -0,0 +1,39 @@ +# +# Copyright 2013-2020 Software Radio Systems Limited +# +# This file is part of srsLTE +# +# srsLTE is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of +# the License, or (at your option) any later version. +# +# srsLTE 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 Affero General Public License for more details. +# +# A copy of the GNU Affero General Public License can be found in +# the LICENSE file in the top-level directory of this distribution +# and at http://www.gnu.org/licenses/. +# + +set(FEC_SOURCES ${FEC_SOURCES} + ldpc/base_graph.c + ldpc/ldpc_dec_f.c + ldpc/ldpc_dec_s.c + ldpc/ldpc_dec_c.c + ldpc/ldpc_dec_c_flood.c + ldpc/ldpc_dec_c_avx2.c + ldpc/ldpc_dec_c_avx2long.c + ldpc/ldpc_dec_c_avx2_flood.c + ldpc/ldpc_dec_c_avx2long_flood.c + ldpc/ldpc_decoder.c + ldpc/ldpc_enc_c.c + ldpc/ldpc_enc_avx2.c + ldpc/ldpc_enc_avx2long.c + ldpc/ldpc_encoder.c + ldpc/ldpc_rm.c + PARENT_SCOPE) + +add_subdirectory(test) diff --git a/lib/src/phy/fec/ldpc/base_graph.c b/lib/src/phy/fec/ldpc/base_graph.c new file mode 100644 index 000000000..edc38146e --- /dev/null +++ b/lib/src/phy/fec/ldpc/base_graph.c @@ -0,0 +1,4503 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file base_graph.c + * \brief Definition of the two LDPC base graphs employed in the 5G NR + * standard. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * Look-up tables defining the 51 possible Lifting Sizes (grouped into 8 sets) + * and the 16 possible Base Graphs (2 main BG indices and 8 variations each + * according to the Lifting Size set index). + * + * Definitions of the functions needed to access these look-up tables. + * + * \copyright Software Radio Systems Limited + * + */ + +#include + +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/debug.h" + +/*! + * \brief Lifting size look-up table. + * + * Possible lifting sizes are assigned a lifting-size index (from 0 to 7), the + * others are marked as VOID_LIFTSIZE. + */ +const uint8_t LSindex[385] = {VOID_LIFTSIZE, // 0 + VOID_LIFTSIZE, // 1 + 0, // 2 + 1, // 3 + 0, // 4 + 2, // 5 + 1, // 6 + 3, // 7 + 0, // 8 + 4, // 9 + 2, // 10 + 5, // 11 + 1, // 12 + 6, // 13 + 3, // 14 + 7, // 15 + 0, // 16 + VOID_LIFTSIZE, // 17 + 4, // 18 + VOID_LIFTSIZE, // 19 + 2, // 20 + VOID_LIFTSIZE, // 21 + 5, // 22 + VOID_LIFTSIZE, // 23 + 1, // 24 + VOID_LIFTSIZE, // 25 + 6, // 26 + VOID_LIFTSIZE, // 27 + 3, // 28 + VOID_LIFTSIZE, // 29 + 7, // 30 + VOID_LIFTSIZE, // 31 + 0, // 32 + VOID_LIFTSIZE, // 33 + VOID_LIFTSIZE, // 34 + VOID_LIFTSIZE, // 35 + 4, // 36 + VOID_LIFTSIZE, // 37 + VOID_LIFTSIZE, // 38 + VOID_LIFTSIZE, // 39 + 2, // 40 + VOID_LIFTSIZE, // 41 + VOID_LIFTSIZE, // 42 + VOID_LIFTSIZE, // 43 + 5, // 44 + VOID_LIFTSIZE, // 45 + VOID_LIFTSIZE, // 46 + VOID_LIFTSIZE, // 47 + 1, // 48 + VOID_LIFTSIZE, // 49 + VOID_LIFTSIZE, // 50 + VOID_LIFTSIZE, // 51 + 6, // 52 + VOID_LIFTSIZE, // 53 + VOID_LIFTSIZE, // 54 + VOID_LIFTSIZE, // 55 + 3, // 56 + VOID_LIFTSIZE, // 57 + VOID_LIFTSIZE, // 58 + VOID_LIFTSIZE, // 59 + 7, // 60 + VOID_LIFTSIZE, // 61 + VOID_LIFTSIZE, // 62 + VOID_LIFTSIZE, // 63 + 0, // 64 + VOID_LIFTSIZE, // 65 + VOID_LIFTSIZE, // 66 + VOID_LIFTSIZE, // 67 + VOID_LIFTSIZE, // 68 + VOID_LIFTSIZE, // 69 + VOID_LIFTSIZE, // 70 + VOID_LIFTSIZE, // 71 + 4, // 72 + VOID_LIFTSIZE, // 73 + VOID_LIFTSIZE, // 74 + VOID_LIFTSIZE, // 75 + VOID_LIFTSIZE, // 76 + VOID_LIFTSIZE, // 77 + VOID_LIFTSIZE, // 78 + VOID_LIFTSIZE, // 79 + 2, // 80 + VOID_LIFTSIZE, // 81 + VOID_LIFTSIZE, // 82 + VOID_LIFTSIZE, // 83 + VOID_LIFTSIZE, // 84 + VOID_LIFTSIZE, // 85 + VOID_LIFTSIZE, // 86 + VOID_LIFTSIZE, // 87 + 5, // 88 + VOID_LIFTSIZE, // 89 + VOID_LIFTSIZE, // 90 + VOID_LIFTSIZE, // 91 + VOID_LIFTSIZE, // 92 + VOID_LIFTSIZE, // 93 + VOID_LIFTSIZE, // 94 + VOID_LIFTSIZE, // 95 + 1, // 96 + VOID_LIFTSIZE, // 97 + VOID_LIFTSIZE, // 98 + VOID_LIFTSIZE, // 99 + VOID_LIFTSIZE, // 100 + VOID_LIFTSIZE, // 101 + VOID_LIFTSIZE, // 102 + VOID_LIFTSIZE, // 103 + 6, // 104 + VOID_LIFTSIZE, // 105 + VOID_LIFTSIZE, // 106 + VOID_LIFTSIZE, // 107 + VOID_LIFTSIZE, // 108 + VOID_LIFTSIZE, // 109 + VOID_LIFTSIZE, // 110 + VOID_LIFTSIZE, // 111 + 3, // 112 + VOID_LIFTSIZE, // 113 + VOID_LIFTSIZE, // 114 + VOID_LIFTSIZE, // 115 + VOID_LIFTSIZE, // 116 + VOID_LIFTSIZE, // 117 + VOID_LIFTSIZE, // 118 + VOID_LIFTSIZE, // 119 + 7, // 120 + VOID_LIFTSIZE, // 121 + VOID_LIFTSIZE, // 122 + VOID_LIFTSIZE, // 123 + VOID_LIFTSIZE, // 124 + VOID_LIFTSIZE, // 125 + VOID_LIFTSIZE, // 126 + VOID_LIFTSIZE, // 127 + 0, // 128 + VOID_LIFTSIZE, // 129 + VOID_LIFTSIZE, // 130 + VOID_LIFTSIZE, // 131 + VOID_LIFTSIZE, // 132 + VOID_LIFTSIZE, // 133 + VOID_LIFTSIZE, // 134 + VOID_LIFTSIZE, // 135 + VOID_LIFTSIZE, // 136 + VOID_LIFTSIZE, // 137 + VOID_LIFTSIZE, // 138 + VOID_LIFTSIZE, // 139 + VOID_LIFTSIZE, // 140 + VOID_LIFTSIZE, // 141 + VOID_LIFTSIZE, // 142 + VOID_LIFTSIZE, // 143 + 4, // 144 + VOID_LIFTSIZE, // 145 + VOID_LIFTSIZE, // 146 + VOID_LIFTSIZE, // 147 + VOID_LIFTSIZE, // 148 + VOID_LIFTSIZE, // 149 + VOID_LIFTSIZE, // 150 + VOID_LIFTSIZE, // 151 + VOID_LIFTSIZE, // 152 + VOID_LIFTSIZE, // 153 + VOID_LIFTSIZE, // 154 + VOID_LIFTSIZE, // 155 + VOID_LIFTSIZE, // 156 + VOID_LIFTSIZE, // 157 + VOID_LIFTSIZE, // 158 + VOID_LIFTSIZE, // 159 + 2, // 160 + VOID_LIFTSIZE, // 161 + VOID_LIFTSIZE, // 162 + VOID_LIFTSIZE, // 163 + VOID_LIFTSIZE, // 164 + VOID_LIFTSIZE, // 165 + VOID_LIFTSIZE, // 166 + VOID_LIFTSIZE, // 167 + VOID_LIFTSIZE, // 168 + VOID_LIFTSIZE, // 169 + VOID_LIFTSIZE, // 170 + VOID_LIFTSIZE, // 171 + VOID_LIFTSIZE, // 172 + VOID_LIFTSIZE, // 173 + VOID_LIFTSIZE, // 174 + VOID_LIFTSIZE, // 175 + 5, // 176 + VOID_LIFTSIZE, // 177 + VOID_LIFTSIZE, // 178 + VOID_LIFTSIZE, // 179 + VOID_LIFTSIZE, // 180 + VOID_LIFTSIZE, // 181 + VOID_LIFTSIZE, // 182 + VOID_LIFTSIZE, // 183 + VOID_LIFTSIZE, // 184 + VOID_LIFTSIZE, // 185 + VOID_LIFTSIZE, // 186 + VOID_LIFTSIZE, // 187 + VOID_LIFTSIZE, // 188 + VOID_LIFTSIZE, // 189 + VOID_LIFTSIZE, // 190 + VOID_LIFTSIZE, // 191 + 1, // 192 + VOID_LIFTSIZE, // 193 + VOID_LIFTSIZE, // 194 + VOID_LIFTSIZE, // 195 + VOID_LIFTSIZE, // 196 + VOID_LIFTSIZE, // 197 + VOID_LIFTSIZE, // 198 + VOID_LIFTSIZE, // 199 + VOID_LIFTSIZE, // 200 + VOID_LIFTSIZE, // 201 + VOID_LIFTSIZE, // 202 + VOID_LIFTSIZE, // 203 + VOID_LIFTSIZE, // 204 + VOID_LIFTSIZE, // 205 + VOID_LIFTSIZE, // 206 + VOID_LIFTSIZE, // 207 + 6, // 208 + VOID_LIFTSIZE, // 209 + VOID_LIFTSIZE, // 210 + VOID_LIFTSIZE, // 211 + VOID_LIFTSIZE, // 212 + VOID_LIFTSIZE, // 213 + VOID_LIFTSIZE, // 214 + VOID_LIFTSIZE, // 215 + VOID_LIFTSIZE, // 216 + VOID_LIFTSIZE, // 217 + VOID_LIFTSIZE, // 218 + VOID_LIFTSIZE, // 219 + VOID_LIFTSIZE, // 220 + VOID_LIFTSIZE, // 221 + VOID_LIFTSIZE, // 222 + VOID_LIFTSIZE, // 223 + 3, // 224 + VOID_LIFTSIZE, // 225 + VOID_LIFTSIZE, // 226 + VOID_LIFTSIZE, // 227 + VOID_LIFTSIZE, // 228 + VOID_LIFTSIZE, // 229 + VOID_LIFTSIZE, // 230 + VOID_LIFTSIZE, // 231 + VOID_LIFTSIZE, // 232 + VOID_LIFTSIZE, // 233 + VOID_LIFTSIZE, // 234 + VOID_LIFTSIZE, // 235 + VOID_LIFTSIZE, // 236 + VOID_LIFTSIZE, // 237 + VOID_LIFTSIZE, // 238 + VOID_LIFTSIZE, // 239 + 7, // 240 + VOID_LIFTSIZE, // 241 + VOID_LIFTSIZE, // 242 + VOID_LIFTSIZE, // 243 + VOID_LIFTSIZE, // 244 + VOID_LIFTSIZE, // 245 + VOID_LIFTSIZE, // 246 + VOID_LIFTSIZE, // 247 + VOID_LIFTSIZE, // 248 + VOID_LIFTSIZE, // 249 + VOID_LIFTSIZE, // 250 + VOID_LIFTSIZE, // 251 + VOID_LIFTSIZE, // 252 + VOID_LIFTSIZE, // 253 + VOID_LIFTSIZE, // 254 + VOID_LIFTSIZE, // 255 + 0, // 256 + VOID_LIFTSIZE, // 257 + VOID_LIFTSIZE, // 258 + VOID_LIFTSIZE, // 259 + VOID_LIFTSIZE, // 260 + VOID_LIFTSIZE, // 261 + VOID_LIFTSIZE, // 262 + VOID_LIFTSIZE, // 263 + VOID_LIFTSIZE, // 264 + VOID_LIFTSIZE, // 265 + VOID_LIFTSIZE, // 266 + VOID_LIFTSIZE, // 267 + VOID_LIFTSIZE, // 268 + VOID_LIFTSIZE, // 269 + VOID_LIFTSIZE, // 270 + VOID_LIFTSIZE, // 271 + VOID_LIFTSIZE, // 272 + VOID_LIFTSIZE, // 273 + VOID_LIFTSIZE, // 274 + VOID_LIFTSIZE, // 275 + VOID_LIFTSIZE, // 276 + VOID_LIFTSIZE, // 277 + VOID_LIFTSIZE, // 278 + VOID_LIFTSIZE, // 279 + VOID_LIFTSIZE, // 280 + VOID_LIFTSIZE, // 281 + VOID_LIFTSIZE, // 282 + VOID_LIFTSIZE, // 283 + VOID_LIFTSIZE, // 284 + VOID_LIFTSIZE, // 285 + VOID_LIFTSIZE, // 286 + VOID_LIFTSIZE, // 287 + 4, // 288 + VOID_LIFTSIZE, // 289 + VOID_LIFTSIZE, // 290 + VOID_LIFTSIZE, // 291 + VOID_LIFTSIZE, // 292 + VOID_LIFTSIZE, // 293 + VOID_LIFTSIZE, // 294 + VOID_LIFTSIZE, // 295 + VOID_LIFTSIZE, // 296 + VOID_LIFTSIZE, // 297 + VOID_LIFTSIZE, // 298 + VOID_LIFTSIZE, // 299 + VOID_LIFTSIZE, // 300 + VOID_LIFTSIZE, // 301 + VOID_LIFTSIZE, // 302 + VOID_LIFTSIZE, // 303 + VOID_LIFTSIZE, // 304 + VOID_LIFTSIZE, // 305 + VOID_LIFTSIZE, // 306 + VOID_LIFTSIZE, // 307 + VOID_LIFTSIZE, // 308 + VOID_LIFTSIZE, // 309 + VOID_LIFTSIZE, // 310 + VOID_LIFTSIZE, // 311 + VOID_LIFTSIZE, // 312 + VOID_LIFTSIZE, // 313 + VOID_LIFTSIZE, // 314 + VOID_LIFTSIZE, // 315 + VOID_LIFTSIZE, // 316 + VOID_LIFTSIZE, // 317 + VOID_LIFTSIZE, // 318 + VOID_LIFTSIZE, // 319 + 2, // 320 + VOID_LIFTSIZE, // 321 + VOID_LIFTSIZE, // 322 + VOID_LIFTSIZE, // 323 + VOID_LIFTSIZE, // 324 + VOID_LIFTSIZE, // 325 + VOID_LIFTSIZE, // 326 + VOID_LIFTSIZE, // 327 + VOID_LIFTSIZE, // 328 + VOID_LIFTSIZE, // 329 + VOID_LIFTSIZE, // 330 + VOID_LIFTSIZE, // 331 + VOID_LIFTSIZE, // 332 + VOID_LIFTSIZE, // 333 + VOID_LIFTSIZE, // 334 + VOID_LIFTSIZE, // 335 + VOID_LIFTSIZE, // 336 + VOID_LIFTSIZE, // 337 + VOID_LIFTSIZE, // 338 + VOID_LIFTSIZE, // 339 + VOID_LIFTSIZE, // 340 + VOID_LIFTSIZE, // 341 + VOID_LIFTSIZE, // 342 + VOID_LIFTSIZE, // 343 + VOID_LIFTSIZE, // 344 + VOID_LIFTSIZE, // 345 + VOID_LIFTSIZE, // 346 + VOID_LIFTSIZE, // 347 + VOID_LIFTSIZE, // 348 + VOID_LIFTSIZE, // 349 + VOID_LIFTSIZE, // 350 + VOID_LIFTSIZE, // 351 + 5, // 352 + VOID_LIFTSIZE, // 353 + VOID_LIFTSIZE, // 354 + VOID_LIFTSIZE, // 355 + VOID_LIFTSIZE, // 356 + VOID_LIFTSIZE, // 357 + VOID_LIFTSIZE, // 358 + VOID_LIFTSIZE, // 359 + VOID_LIFTSIZE, // 360 + VOID_LIFTSIZE, // 361 + VOID_LIFTSIZE, // 362 + VOID_LIFTSIZE, // 363 + VOID_LIFTSIZE, // 364 + VOID_LIFTSIZE, // 365 + VOID_LIFTSIZE, // 366 + VOID_LIFTSIZE, // 367 + VOID_LIFTSIZE, // 368 + VOID_LIFTSIZE, // 369 + VOID_LIFTSIZE, // 370 + VOID_LIFTSIZE, // 371 + VOID_LIFTSIZE, // 372 + VOID_LIFTSIZE, // 373 + VOID_LIFTSIZE, // 374 + VOID_LIFTSIZE, // 375 + VOID_LIFTSIZE, // 376 + VOID_LIFTSIZE, // 377 + VOID_LIFTSIZE, // 378 + VOID_LIFTSIZE, // 379 + VOID_LIFTSIZE, // 380 + VOID_LIFTSIZE, // 381 + VOID_LIFTSIZE, // 382 + VOID_LIFTSIZE, // 383 + 1}; // 384 + +/*! + * \brief Look-up table for Base Graph BG1. + * + * BG1 has sizes 46x68. There are 8 possible variations according to the lifting + * size index. Each entry corresponds to the cyclic rotation applied to the + * (check node)--(variable node) connection when lifting the graph. Entries + * marked as NO_CNCT mean that there is no connection between the corresponding + * check node and variable node (in both the base graph and the lifted one). + */ +static const uint16_t BG1_matrices[NOF_LIFTSIZE][BG1M][BG1Nfull] = { + // BG1 - lifting size index 0 + {{250, 69, 226, 159, NO_CNCT, 100, 10, NO_CNCT, NO_CNCT, 59, 229, 110, + 191, 9, NO_CNCT, 195, 23, NO_CNCT, 190, 35, 239, 31, 1, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {2, NO_CNCT, 239, 117, 124, 71, NO_CNCT, 222, 104, 173, NO_CNCT, 220, + 102, NO_CNCT, 109, 132, 142, 155, NO_CNCT, 255, NO_CNCT, 28, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {106, 111, 185, NO_CNCT, 63, 117, 93, 229, 177, 95, 39, NO_CNCT, + NO_CNCT, 142, 225, 225, NO_CNCT, 245, 205, 251, 117, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {121, 89, NO_CNCT, 84, 20, NO_CNCT, 150, 131, 243, NO_CNCT, 136, 86, + 246, 219, 211, NO_CNCT, 240, 76, 244, NO_CNCT, 144, 12, 1, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {157, 102, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {205, 236, NO_CNCT, 194, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 231, NO_CNCT, NO_CNCT, NO_CNCT, 28, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 123, 115, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {183, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 22, NO_CNCT, NO_CNCT, NO_CNCT, 28, 67, + NO_CNCT, 244, NO_CNCT, NO_CNCT, NO_CNCT, 11, 157, NO_CNCT, 211, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {220, 44, NO_CNCT, NO_CNCT, 159, NO_CNCT, NO_CNCT, 31, 167, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 104, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {112, 4, NO_CNCT, 7, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 211, NO_CNCT, NO_CNCT, NO_CNCT, 102, NO_CNCT, NO_CNCT, 164, NO_CNCT, 109, 241, NO_CNCT, + 90, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {103, 182, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 109, 21, + NO_CNCT, 142, NO_CNCT, NO_CNCT, NO_CNCT, 14, 61, NO_CNCT, 216, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 98, 149, NO_CNCT, 167, NO_CNCT, NO_CNCT, 160, 49, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 58, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {77, 41, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 83, NO_CNCT, NO_CNCT, NO_CNCT, 182, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 78, 252, 22, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {160, 42, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 21, 32, + NO_CNCT, 234, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 7, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {177, NO_CNCT, NO_CNCT, 248, NO_CNCT, NO_CNCT, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 185, NO_CNCT, NO_CNCT, 62, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {206, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 55, NO_CNCT, NO_CNCT, 206, 127, 16, NO_CNCT, NO_CNCT, NO_CNCT, 229, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {40, 96, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 65, NO_CNCT, + NO_CNCT, 63, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 75, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 179, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 64, NO_CNCT, 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 49, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 51, NO_CNCT, 154, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {7, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 164, NO_CNCT, 59, 1, NO_CNCT, NO_CNCT, NO_CNCT, 144, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 42, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 233, 8, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 155, 147, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {60, 73, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 72, 127, NO_CNCT, 224, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {151, NO_CNCT, NO_CNCT, 186, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 217, NO_CNCT, 47, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 160, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 249, NO_CNCT, NO_CNCT, NO_CNCT, 121, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 109, NO_CNCT, NO_CNCT, NO_CNCT, 131, 171, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 142, 188, NO_CNCT, NO_CNCT, NO_CNCT, 158, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 156, 147, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 170, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 152, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {112, NO_CNCT, NO_CNCT, 86, 236, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 116, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 222, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 23, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 136, 116, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 182, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {195, NO_CNCT, 243, NO_CNCT, 215, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 61, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 25, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 104, NO_CNCT, 194, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {128, NO_CNCT, NO_CNCT, NO_CNCT, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 181, NO_CNCT, 63, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 86, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 236, NO_CNCT, NO_CNCT, NO_CNCT, 84, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {216, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 73, NO_CNCT, + NO_CNCT, 120, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 9, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 95, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 177, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 172, NO_CNCT, + NO_CNCT, 61, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {221, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 112, NO_CNCT, 199, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 121, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 2, 187, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 41, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 211, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {127, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 164, NO_CNCT, 159, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 197, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 207, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 103, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {37, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 105, 51, NO_CNCT, NO_CNCT, 120, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 198, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 220, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 122, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 151, 157, NO_CNCT, + 163, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 173, NO_CNCT, 139, NO_CNCT, NO_CNCT, NO_CNCT, 149, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {157, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 137, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 149, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 167, NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 139, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {149, NO_CNCT, NO_CNCT, NO_CNCT, 157, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 137, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 163, NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 139, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {139, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 157, NO_CNCT, 163, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 173, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 149, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, 167, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG1 - lifting size index 1 + {{307, 19, 50, 369, NO_CNCT, 181, 216, NO_CNCT, NO_CNCT, 317, 288, 109, + 17, 357, NO_CNCT, 215, 106, NO_CNCT, 242, 180, 330, 346, 1, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {76, NO_CNCT, 76, 73, 288, 144, NO_CNCT, 331, 331, 178, NO_CNCT, 295, + 342, NO_CNCT, 217, 99, 354, 114, NO_CNCT, 331, NO_CNCT, 112, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {205, 250, 328, NO_CNCT, 332, 256, 161, 267, 160, 63, 129, NO_CNCT, + NO_CNCT, 200, 88, 53, NO_CNCT, 131, 240, 205, 13, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {276, 87, NO_CNCT, 0, 275, NO_CNCT, 199, 153, 56, NO_CNCT, 132, 305, + 231, 341, 212, NO_CNCT, 304, 300, 271, NO_CNCT, 39, 357, 1, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {332, 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {195, 14, NO_CNCT, 115, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 166, NO_CNCT, NO_CNCT, NO_CNCT, 241, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 51, 157, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {278, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 257, NO_CNCT, NO_CNCT, NO_CNCT, 1, 351, + NO_CNCT, 92, NO_CNCT, NO_CNCT, NO_CNCT, 253, 18, NO_CNCT, 225, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {9, 62, NO_CNCT, NO_CNCT, 316, NO_CNCT, NO_CNCT, 333, 290, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 114, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {307, 179, NO_CNCT, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 18, NO_CNCT, NO_CNCT, NO_CNCT, 39, NO_CNCT, NO_CNCT, 224, NO_CNCT, 368, 67, NO_CNCT, + 170, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {366, 232, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 321, 133, + NO_CNCT, 57, NO_CNCT, NO_CNCT, NO_CNCT, 303, 63, NO_CNCT, 82, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 101, 339, NO_CNCT, 274, NO_CNCT, NO_CNCT, 111, 383, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 354, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {48, 102, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 8, NO_CNCT, NO_CNCT, NO_CNCT, 47, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 188, 334, 115, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {77, 186, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 174, 232, + NO_CNCT, 50, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 74, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {313, NO_CNCT, NO_CNCT, 177, NO_CNCT, NO_CNCT, NO_CNCT, 266, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 115, NO_CNCT, NO_CNCT, 370, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {142, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 248, NO_CNCT, NO_CNCT, 137, 89, 347, NO_CNCT, NO_CNCT, NO_CNCT, 12, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {241, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 210, NO_CNCT, + NO_CNCT, 318, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 55, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 269, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 13, NO_CNCT, 338, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 57, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 289, NO_CNCT, 57, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {260, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 303, NO_CNCT, 81, 358, NO_CNCT, NO_CNCT, NO_CNCT, 375, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 130, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 163, 280, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 132, 4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {145, 213, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 344, 242, NO_CNCT, 197, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {187, NO_CNCT, NO_CNCT, 206, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 264, NO_CNCT, 341, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 59, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 205, NO_CNCT, NO_CNCT, NO_CNCT, 102, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 328, NO_CNCT, NO_CNCT, NO_CNCT, 213, 97, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {30, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 11, 233, NO_CNCT, NO_CNCT, NO_CNCT, 22, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 24, 89, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 61, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 27, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {298, NO_CNCT, NO_CNCT, 158, 235, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 339, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 234, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 72, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 17, 383, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 312, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {71, NO_CNCT, 81, NO_CNCT, 76, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 136, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 194, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 194, NO_CNCT, 101, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {222, NO_CNCT, NO_CNCT, NO_CNCT, 19, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 244, NO_CNCT, 274, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 252, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 5, NO_CNCT, NO_CNCT, NO_CNCT, 147, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 78, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {159, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 229, NO_CNCT, + NO_CNCT, 260, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 90, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 100, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 215, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 258, NO_CNCT, + NO_CNCT, 256, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {102, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 201, NO_CNCT, 175, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 287, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 323, 8, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 361, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 105, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {230, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 148, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 202, NO_CNCT, 312, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 320, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 335, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 266, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 313, 297, NO_CNCT, NO_CNCT, 21, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 269, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 82, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 115, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {185, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 177, 289, NO_CNCT, + 214, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 258, NO_CNCT, 93, NO_CNCT, NO_CNCT, NO_CNCT, 346, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 297, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {175, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 37, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 312, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 52, NO_CNCT, 314, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 139, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 288, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {113, NO_CNCT, NO_CNCT, NO_CNCT, 14, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 218, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 113, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 132, NO_CNCT, 114, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 168, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {80, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 78, NO_CNCT, 163, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 274, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 135, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 149, NO_CNCT, NO_CNCT, NO_CNCT, 15, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG1 - lifting size index 2 + {{73, 15, 103, 49, NO_CNCT, 240, 39, NO_CNCT, NO_CNCT, 15, 162, 215, + 164, 133, NO_CNCT, 298, 110, NO_CNCT, 113, 16, 189, 32, 1, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {303, NO_CNCT, 294, 27, 261, 161, NO_CNCT, 133, 4, 80, NO_CNCT, 129, + 300, NO_CNCT, 76, 266, 72, 83, NO_CNCT, 260, NO_CNCT, 301, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {68, 7, 80, NO_CNCT, 280, 38, 227, 202, 200, 71, 106, NO_CNCT, + NO_CNCT, 295, 283, 301, NO_CNCT, 184, 246, 230, 276, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {220, 208, NO_CNCT, 30, 197, NO_CNCT, 61, 175, 79, NO_CNCT, 281, 303, + 253, 164, 53, NO_CNCT, 44, 28, 77, NO_CNCT, 319, 68, 1, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {233, 205, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {83, 292, NO_CNCT, 50, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 318, NO_CNCT, NO_CNCT, NO_CNCT, 201, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 267, 279, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {289, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 21, NO_CNCT, NO_CNCT, NO_CNCT, 293, 13, + NO_CNCT, 232, NO_CNCT, NO_CNCT, NO_CNCT, 302, 138, NO_CNCT, 235, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {12, 88, NO_CNCT, NO_CNCT, 207, NO_CNCT, NO_CNCT, 50, 25, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 76, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {295, 133, NO_CNCT, 130, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 231, NO_CNCT, NO_CNCT, NO_CNCT, 296, NO_CNCT, NO_CNCT, 110, NO_CNCT, 269, 245, NO_CNCT, + 154, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {189, 244, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 36, 286, + NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, 267, 135, NO_CNCT, 209, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 14, 80, NO_CNCT, 211, NO_CNCT, NO_CNCT, 75, 161, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 311, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {16, 147, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 290, NO_CNCT, NO_CNCT, NO_CNCT, 289, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 177, 43, 280, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {229, 235, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 169, 48, + NO_CNCT, 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 52, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {39, NO_CNCT, NO_CNCT, 302, NO_CNCT, NO_CNCT, NO_CNCT, 303, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 160, NO_CNCT, NO_CNCT, 37, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {78, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 299, NO_CNCT, NO_CNCT, 54, 61, 179, NO_CNCT, NO_CNCT, NO_CNCT, 258, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {229, 290, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 60, NO_CNCT, + NO_CNCT, 130, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 184, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 51, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 69, NO_CNCT, 140, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 45, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 115, NO_CNCT, 300, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {257, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 147, NO_CNCT, 128, 51, NO_CNCT, NO_CNCT, NO_CNCT, 228, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 260, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 294, 291, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 141, 295, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {64, 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 101, 270, NO_CNCT, 41, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {301, NO_CNCT, NO_CNCT, 162, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 40, NO_CNCT, 130, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 10, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 79, NO_CNCT, NO_CNCT, NO_CNCT, 175, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 132, NO_CNCT, NO_CNCT, NO_CNCT, 283, 103, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {177, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 20, 55, NO_CNCT, NO_CNCT, NO_CNCT, 316, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 249, 50, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 133, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {289, NO_CNCT, NO_CNCT, 280, 110, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 187, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 281, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 172, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 295, 96, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 46, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {270, NO_CNCT, 110, NO_CNCT, 318, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 67, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 29, NO_CNCT, 304, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {11, NO_CNCT, NO_CNCT, NO_CNCT, 293, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 50, NO_CNCT, 234, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 27, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 308, NO_CNCT, NO_CNCT, NO_CNCT, 117, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 29, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 23, NO_CNCT, + NO_CNCT, 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 135, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 222, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 308, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 66, NO_CNCT, + NO_CNCT, 162, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 22, NO_CNCT, 271, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 217, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 170, 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 140, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 33, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {187, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 296, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 5, NO_CNCT, 44, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 207, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 158, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 55, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 285, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {259, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 179, 178, NO_CNCT, NO_CNCT, 160, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 298, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 15, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 115, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 179, 64, NO_CNCT, + 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 102, NO_CNCT, 77, NO_CNCT, NO_CNCT, NO_CNCT, 192, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 208, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {32, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 80, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 197, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 154, NO_CNCT, 47, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 124, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 207, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {226, NO_CNCT, NO_CNCT, NO_CNCT, 65, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 126, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 228, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 69, NO_CNCT, 176, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 102, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {234, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 227, NO_CNCT, 259, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 260, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 101, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 228, NO_CNCT, NO_CNCT, NO_CNCT, 126, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG1 - lifting size index 3 + {{223, 16, 94, 91, NO_CNCT, 74, 10, NO_CNCT, NO_CNCT, 0, 205, 216, + 21, 215, NO_CNCT, 14, 70, NO_CNCT, 141, 198, 104, 81, 1, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {141, NO_CNCT, 45, 151, 46, 119, NO_CNCT, 157, 133, 87, NO_CNCT, 206, + 93, NO_CNCT, 79, 9, 118, 194, NO_CNCT, 31, NO_CNCT, 187, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {207, 203, 31, NO_CNCT, 176, 180, 186, 95, 153, 177, 70, NO_CNCT, + NO_CNCT, 77, 214, 77, NO_CNCT, 198, 117, 223, 90, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {201, 18, NO_CNCT, 165, 5, NO_CNCT, 45, 142, 16, NO_CNCT, 34, 155, + 213, 147, 69, NO_CNCT, 96, 74, 99, NO_CNCT, 30, 158, 1, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {170, 10, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {164, 59, NO_CNCT, 86, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 80, NO_CNCT, NO_CNCT, NO_CNCT, 182, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 130, 153, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {158, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 119, NO_CNCT, NO_CNCT, NO_CNCT, 113, 21, + NO_CNCT, 63, NO_CNCT, NO_CNCT, NO_CNCT, 51, 136, NO_CNCT, 116, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {17, 76, NO_CNCT, NO_CNCT, 104, NO_CNCT, NO_CNCT, 100, 150, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 158, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {33, 95, NO_CNCT, 4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 217, NO_CNCT, NO_CNCT, NO_CNCT, 204, NO_CNCT, NO_CNCT, 39, NO_CNCT, 58, 44, NO_CNCT, + 201, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {9, 37, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 213, 105, + NO_CNCT, 89, NO_CNCT, NO_CNCT, NO_CNCT, 185, 109, NO_CNCT, 218, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 82, 165, NO_CNCT, 174, NO_CNCT, NO_CNCT, 19, 194, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 103, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {52, 11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 2, NO_CNCT, NO_CNCT, NO_CNCT, 35, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 32, 84, 201, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {142, 175, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 136, 3, + NO_CNCT, 28, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 182, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {81, NO_CNCT, NO_CNCT, 56, NO_CNCT, NO_CNCT, NO_CNCT, 72, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 217, NO_CNCT, NO_CNCT, 78, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {14, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 175, NO_CNCT, NO_CNCT, 211, 191, 51, NO_CNCT, NO_CNCT, NO_CNCT, 43, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {90, 120, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 131, NO_CNCT, + NO_CNCT, 209, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 209, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 154, NO_CNCT, 164, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 43, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 189, NO_CNCT, 101, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {56, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 110, NO_CNCT, 200, 63, NO_CNCT, NO_CNCT, NO_CNCT, 4, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 199, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 110, 200, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 143, 186, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {8, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 103, 198, NO_CNCT, 8, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {105, NO_CNCT, NO_CNCT, 210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 121, NO_CNCT, 214, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 183, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 192, NO_CNCT, NO_CNCT, NO_CNCT, 131, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 220, NO_CNCT, NO_CNCT, NO_CNCT, 50, 106, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {53, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 3, NO_CNCT, NO_CNCT, NO_CNCT, 148, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 88, 203, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 168, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 122, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {49, NO_CNCT, NO_CNCT, 157, 64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 193, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 124, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 166, 65, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {107, NO_CNCT, 176, NO_CNCT, 212, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 127, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 208, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 141, NO_CNCT, 174, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {146, NO_CNCT, NO_CNCT, NO_CNCT, 153, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 217, NO_CNCT, 114, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 150, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 11, NO_CNCT, NO_CNCT, NO_CNCT, 53, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 68, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {34, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 130, NO_CNCT, + NO_CNCT, 210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 123, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 175, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 177, NO_CNCT, + NO_CNCT, 128, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {192, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 209, NO_CNCT, 58, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 30, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 114, 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 161, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 137, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {82, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 186, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 68, NO_CNCT, 150, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 192, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 26, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 187, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {222, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 157, 0, NO_CNCT, NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 195, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 138, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {123, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 90, 73, NO_CNCT, + 10, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 12, NO_CNCT, 77, NO_CNCT, NO_CNCT, NO_CNCT, 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 114, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {67, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 45, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 96, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 23, NO_CNCT, 215, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 60, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {114, NO_CNCT, NO_CNCT, NO_CNCT, 91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 78, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 206, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 22, NO_CNCT, 134, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {84, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 4, NO_CNCT, 9, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 12, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 184, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 121, NO_CNCT, NO_CNCT, NO_CNCT, 29, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG1 - lifting size index 4 + {{211, 198, 188, 186, NO_CNCT, 219, 4, NO_CNCT, NO_CNCT, 29, 144, 116, + 216, 115, NO_CNCT, 233, 144, NO_CNCT, 95, 216, 73, 261, 1, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {179, NO_CNCT, 162, 223, 256, 160, NO_CNCT, 76, 202, 117, NO_CNCT, 109, + 15, NO_CNCT, 72, 152, 158, 147, NO_CNCT, 156, NO_CNCT, 119, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {258, 167, 220, NO_CNCT, 133, 243, 202, 218, 63, 0, 3, NO_CNCT, + NO_CNCT, 74, 229, 0, NO_CNCT, 216, 269, 200, 234, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {187, 145, NO_CNCT, 166, 108, NO_CNCT, 82, 132, 197, NO_CNCT, 41, 162, + 57, 36, 115, NO_CNCT, 242, 165, 0, NO_CNCT, 113, 108, 1, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {246, 235, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {261, 181, NO_CNCT, 72, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 283, NO_CNCT, NO_CNCT, NO_CNCT, 254, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 79, 144, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {80, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 144, NO_CNCT, NO_CNCT, NO_CNCT, 169, 90, + NO_CNCT, 59, NO_CNCT, NO_CNCT, NO_CNCT, 177, 151, NO_CNCT, 108, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {169, 189, NO_CNCT, NO_CNCT, 154, NO_CNCT, NO_CNCT, 184, 104, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 164, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {54, 0, NO_CNCT, 252, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 41, NO_CNCT, NO_CNCT, NO_CNCT, 98, NO_CNCT, NO_CNCT, 46, NO_CNCT, 15, 230, NO_CNCT, + 54, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {162, 159, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 93, 134, + NO_CNCT, 45, NO_CNCT, NO_CNCT, NO_CNCT, 132, 76, NO_CNCT, 209, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 178, 1, NO_CNCT, 28, NO_CNCT, NO_CNCT, 267, 234, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 201, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {55, 23, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 274, NO_CNCT, NO_CNCT, NO_CNCT, 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 273, 39, 26, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {225, 162, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 244, 151, + NO_CNCT, 238, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 243, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {231, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 216, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 47, NO_CNCT, NO_CNCT, 36, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 186, NO_CNCT, NO_CNCT, 253, 16, 0, NO_CNCT, NO_CNCT, NO_CNCT, 79, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {170, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 183, NO_CNCT, + NO_CNCT, 108, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 68, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 270, NO_CNCT, 13, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 99, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 54, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {153, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 137, NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, 162, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 151, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 241, 144, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 118, 144, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {265, NO_CNCT, NO_CNCT, 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 90, NO_CNCT, 144, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 228, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 64, NO_CNCT, NO_CNCT, NO_CNCT, 46, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 266, NO_CNCT, NO_CNCT, NO_CNCT, 9, 18, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {72, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 189, 72, NO_CNCT, NO_CNCT, NO_CNCT, 257, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 180, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {236, NO_CNCT, NO_CNCT, 199, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 266, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 205, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 183, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, 0, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 277, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 45, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 36, NO_CNCT, 72, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {275, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 155, NO_CNCT, 62, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 180, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 42, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 90, NO_CNCT, + NO_CNCT, 252, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 144, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 144, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 166, NO_CNCT, + NO_CNCT, 19, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 211, NO_CNCT, 36, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 162, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 76, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 18, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {197, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 108, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 199, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 278, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 205, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {216, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 16, 0, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 72, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 144, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {190, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, 0, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 153, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 117, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {216, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 144, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 183, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {27, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 35, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 52, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 243, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 270, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {18, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 57, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 168, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 144, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG1 - lifting size index 5 + {{294, 118, 167, 330, NO_CNCT, 207, 165, NO_CNCT, NO_CNCT, 243, 250, 1, + 339, 201, NO_CNCT, 53, 347, NO_CNCT, 304, 167, 47, 188, 1, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {77, NO_CNCT, 225, 96, 338, 268, NO_CNCT, 112, 302, 50, NO_CNCT, 167, + 253, NO_CNCT, 334, 242, 257, 133, NO_CNCT, 9, NO_CNCT, 302, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {226, 35, 213, NO_CNCT, 302, 111, 265, 128, 237, 294, 127, NO_CNCT, + NO_CNCT, 110, 286, 125, NO_CNCT, 131, 163, 210, 7, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {97, 94, NO_CNCT, 49, 279, NO_CNCT, 139, 166, 91, NO_CNCT, 106, 246, + 345, 269, 185, NO_CNCT, 249, 215, 143, NO_CNCT, 121, 121, 1, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {42, 256, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {219, 130, NO_CNCT, 251, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 322, NO_CNCT, NO_CNCT, NO_CNCT, 295, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 258, 283, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {294, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 73, NO_CNCT, NO_CNCT, NO_CNCT, 330, 99, + NO_CNCT, 172, NO_CNCT, NO_CNCT, NO_CNCT, 150, 284, NO_CNCT, 305, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {3, 103, NO_CNCT, NO_CNCT, 224, NO_CNCT, NO_CNCT, 297, 215, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 39, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {348, 75, NO_CNCT, 22, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 312, NO_CNCT, NO_CNCT, NO_CNCT, 224, NO_CNCT, NO_CNCT, 17, NO_CNCT, 59, 314, NO_CNCT, + 244, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {156, 88, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 293, 111, + NO_CNCT, 92, NO_CNCT, NO_CNCT, NO_CNCT, 152, 23, NO_CNCT, 337, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 175, 253, NO_CNCT, 27, NO_CNCT, NO_CNCT, 231, 49, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 267, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {25, 322, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 200, NO_CNCT, NO_CNCT, NO_CNCT, 351, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 166, 338, 192, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {123, 217, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 142, 110, + NO_CNCT, 176, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 76, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {311, NO_CNCT, NO_CNCT, 251, NO_CNCT, NO_CNCT, NO_CNCT, 265, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 94, NO_CNCT, NO_CNCT, 81, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {22, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 322, NO_CNCT, NO_CNCT, 277, 156, 66, NO_CNCT, NO_CNCT, NO_CNCT, 78, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {176, 348, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 15, NO_CNCT, + NO_CNCT, 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 176, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 113, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 190, NO_CNCT, 293, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 332, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 331, NO_CNCT, 114, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {110, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 228, NO_CNCT, 247, 116, NO_CNCT, NO_CNCT, NO_CNCT, 190, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 47, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 286, 246, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 181, 73, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {87, 110, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 147, 258, NO_CNCT, 204, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {89, NO_CNCT, NO_CNCT, 65, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 155, NO_CNCT, 244, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 30, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 162, NO_CNCT, NO_CNCT, NO_CNCT, 264, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 346, NO_CNCT, NO_CNCT, NO_CNCT, 143, 109, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {280, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 157, 236, NO_CNCT, NO_CNCT, NO_CNCT, 113, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 18, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 181, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 304, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {38, NO_CNCT, NO_CNCT, 170, 249, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 288, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 194, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 279, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 255, 111, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 54, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {325, NO_CNCT, 326, NO_CNCT, 226, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 99, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 326, NO_CNCT, 268, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {102, NO_CNCT, NO_CNCT, NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 40, NO_CNCT, 167, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 273, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 104, NO_CNCT, NO_CNCT, NO_CNCT, 243, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 107, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {171, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 16, NO_CNCT, + NO_CNCT, 95, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 212, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 101, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 297, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 279, NO_CNCT, + NO_CNCT, 222, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {351, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 265, NO_CNCT, 338, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 83, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 56, 304, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 141, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 101, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {60, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 320, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 112, NO_CNCT, 54, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 100, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 195, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 268, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {135, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 15, 35, NO_CNCT, NO_CNCT, 188, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 319, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 236, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 85, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {164, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 196, 209, NO_CNCT, + 246, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 236, NO_CNCT, 264, NO_CNCT, NO_CNCT, NO_CNCT, 37, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 272, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {304, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 237, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 135, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 123, NO_CNCT, 77, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 25, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 272, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {288, NO_CNCT, NO_CNCT, NO_CNCT, 83, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 17, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 3, NO_CNCT, 53, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {79, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 244, NO_CNCT, 293, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 272, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 82, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 67, NO_CNCT, NO_CNCT, NO_CNCT, 235, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG1 - lifting size index 6 + {{0, 0, 0, 0, NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, 0, 0, 0, + 0, 0, NO_CNCT, 0, 0, NO_CNCT, 0, 0, 0, 0, 0, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {22, NO_CNCT, 11, 124, 0, 10, NO_CNCT, 0, 0, 2, NO_CNCT, 16, + 60, NO_CNCT, 0, 6, 30, 0, NO_CNCT, 168, NO_CNCT, 31, 105, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {132, 37, 21, NO_CNCT, 180, 4, 149, 48, 38, 122, 195, NO_CNCT, + NO_CNCT, 155, 28, 85, NO_CNCT, 47, 179, 42, 66, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {4, 6, NO_CNCT, 33, 113, NO_CNCT, 49, 21, 6, NO_CNCT, 151, 83, + 154, 87, 5, NO_CNCT, 92, 173, 120, NO_CNCT, 2, 142, 0, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {24, 204, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {185, 100, NO_CNCT, 24, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 65, NO_CNCT, NO_CNCT, NO_CNCT, 207, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 161, 72, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 27, NO_CNCT, NO_CNCT, NO_CNCT, 163, 50, + NO_CNCT, 48, NO_CNCT, NO_CNCT, NO_CNCT, 24, 38, NO_CNCT, 91, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {145, 88, NO_CNCT, NO_CNCT, 112, NO_CNCT, NO_CNCT, 153, 159, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 76, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {172, 2, NO_CNCT, 131, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 141, NO_CNCT, NO_CNCT, NO_CNCT, 96, NO_CNCT, NO_CNCT, 99, NO_CNCT, 101, 35, NO_CNCT, + 116, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {6, 10, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 145, 53, + NO_CNCT, 201, NO_CNCT, NO_CNCT, NO_CNCT, 4, 164, NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 126, 77, NO_CNCT, 156, NO_CNCT, NO_CNCT, 16, 12, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 70, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {184, 194, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 123, NO_CNCT, NO_CNCT, NO_CNCT, 16, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 104, 109, 124, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {6, 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 203, 153, + NO_CNCT, 104, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 207, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {52, NO_CNCT, NO_CNCT, 147, NO_CNCT, NO_CNCT, NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 16, NO_CNCT, NO_CNCT, 46, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 202, NO_CNCT, NO_CNCT, 118, 130, 1, NO_CNCT, NO_CNCT, NO_CNCT, 2, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {173, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 81, NO_CNCT, + NO_CNCT, 182, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 53, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 46, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 88, NO_CNCT, 198, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 160, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 122, NO_CNCT, 182, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 184, NO_CNCT, 30, 3, NO_CNCT, NO_CNCT, NO_CNCT, 155, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 41, 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 68, 148, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {12, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 166, 184, NO_CNCT, 191, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {6, NO_CNCT, NO_CNCT, 12, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 15, NO_CNCT, 5, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 30, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, 86, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 96, NO_CNCT, NO_CNCT, NO_CNCT, 42, 199, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {44, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 58, 130, NO_CNCT, NO_CNCT, NO_CNCT, 131, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 45, 18, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 132, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 100, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {9, NO_CNCT, NO_CNCT, 125, 191, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 28, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 6, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 74, 16, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 28, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {21, NO_CNCT, 142, NO_CNCT, 192, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 197, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 98, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 140, NO_CNCT, 22, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {4, NO_CNCT, NO_CNCT, NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 40, NO_CNCT, 93, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 92, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 136, NO_CNCT, NO_CNCT, NO_CNCT, 106, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 88, NO_CNCT, + NO_CNCT, 112, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 125, NO_CNCT, + NO_CNCT, 194, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 126, NO_CNCT, 63, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 10, 30, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 6, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 92, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 153, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 197, NO_CNCT, 155, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 45, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 168, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 185, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 200, 177, NO_CNCT, NO_CNCT, 43, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 82, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 135, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 64, 198, NO_CNCT, + 100, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 4, NO_CNCT, 28, NO_CNCT, NO_CNCT, NO_CNCT, 109, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 188, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {10, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 84, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 12, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 2, NO_CNCT, 75, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 142, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 128, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {163, NO_CNCT, NO_CNCT, NO_CNCT, 10, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 162, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 163, NO_CNCT, 99, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 98, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 6, NO_CNCT, 142, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 3, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 45, NO_CNCT, NO_CNCT, NO_CNCT, 153, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG1 - lifting size index 7 + {{135, 227, 126, 134, NO_CNCT, 84, 83, NO_CNCT, NO_CNCT, 53, 225, 205, + 128, 75, NO_CNCT, 135, 217, NO_CNCT, 220, 90, 105, 137, 1, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {96, NO_CNCT, 236, 136, 221, 128, NO_CNCT, 92, 172, 56, NO_CNCT, 11, + 189, NO_CNCT, 95, 85, 153, 87, NO_CNCT, 163, NO_CNCT, 216, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {189, 4, 225, NO_CNCT, 151, 236, 117, 179, 92, 24, 68, NO_CNCT, + NO_CNCT, 6, 101, 33, NO_CNCT, 96, 125, 67, 230, NO_CNCT, NO_CNCT, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {128, 23, NO_CNCT, 162, 220, NO_CNCT, 43, 186, 96, NO_CNCT, 1, 216, + 22, 24, 167, NO_CNCT, 200, 32, 235, NO_CNCT, 172, 219, 1, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {64, 211, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {2, 171, NO_CNCT, 47, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 143, NO_CNCT, NO_CNCT, NO_CNCT, 210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 180, 180, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {199, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 22, NO_CNCT, NO_CNCT, NO_CNCT, 23, 100, + NO_CNCT, 92, NO_CNCT, NO_CNCT, NO_CNCT, 207, 52, NO_CNCT, 13, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {77, 146, NO_CNCT, NO_CNCT, 209, NO_CNCT, NO_CNCT, 32, 166, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 18, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {181, 105, NO_CNCT, 141, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 223, NO_CNCT, NO_CNCT, NO_CNCT, 177, NO_CNCT, NO_CNCT, 145, NO_CNCT, 199, 153, NO_CNCT, + 38, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {169, 12, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 206, 221, + NO_CNCT, 17, NO_CNCT, NO_CNCT, NO_CNCT, 212, 92, NO_CNCT, 205, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 116, 151, NO_CNCT, 70, NO_CNCT, NO_CNCT, 230, 115, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 84, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {45, 115, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 134, NO_CNCT, NO_CNCT, NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 152, 165, 107, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {186, 215, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 124, 180, + NO_CNCT, 98, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 80, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {220, NO_CNCT, NO_CNCT, 185, NO_CNCT, NO_CNCT, NO_CNCT, 154, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 178, NO_CNCT, NO_CNCT, 150, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {124, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 144, NO_CNCT, NO_CNCT, 182, 95, 72, NO_CNCT, NO_CNCT, NO_CNCT, 76, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {39, 138, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 220, NO_CNCT, + NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 142, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 78, NO_CNCT, 152, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 84, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 5, NO_CNCT, 205, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {183, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 112, NO_CNCT, 106, 219, NO_CNCT, NO_CNCT, NO_CNCT, 129, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 183, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 215, 180, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 143, 14, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {179, 108, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 159, 138, NO_CNCT, 196, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {77, NO_CNCT, NO_CNCT, 187, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 203, NO_CNCT, 167, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 130, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 197, NO_CNCT, NO_CNCT, NO_CNCT, 122, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 215, NO_CNCT, NO_CNCT, NO_CNCT, 65, 216, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {25, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 47, 126, NO_CNCT, NO_CNCT, NO_CNCT, 178, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 185, 127, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 117, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 199, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {32, NO_CNCT, NO_CNCT, 178, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 156, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 58, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 27, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 141, 11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {163, NO_CNCT, 131, NO_CNCT, 169, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 98, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 232, NO_CNCT, 9, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {32, NO_CNCT, NO_CNCT, NO_CNCT, 43, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 200, NO_CNCT, 205, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 232, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 32, NO_CNCT, NO_CNCT, NO_CNCT, 118, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 103, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {170, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 199, NO_CNCT, + NO_CNCT, 26, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 73, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 149, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 175, NO_CNCT, + NO_CNCT, 108, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {103, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 110, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 211, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 199, 132, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 172, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 65, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 237, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 142, NO_CNCT, 180, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 231, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 174, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 145, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 100, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 207, 42, NO_CNCT, NO_CNCT, 100, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 59, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 204, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 161, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {121, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 90, 26, NO_CNCT, + 140, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 115, NO_CNCT, 188, NO_CNCT, NO_CNCT, NO_CNCT, 168, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 52, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 103, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 30, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 53, NO_CNCT, 189, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 215, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 24, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {222, NO_CNCT, NO_CNCT, NO_CNCT, 170, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 71, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 22, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 127, NO_CNCT, 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 125, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {191, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 211, NO_CNCT, 187, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 148, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 177, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 114, NO_CNCT, NO_CNCT, NO_CNCT, 93, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}}; + +/*! + * \brief Look-up table for Base Graph BG2. + * + * BG2 has sizes 42x52. There are 8 possible variations according to the lifting + * size index. Each entry corresponds to the cyclic rotation applied to the + * (check node)--(variable node) connection when lifting the graph. Entries + * marked as NO_CNCT mean that there is no connection between the corresponding + * check node and variable node (in both the base graph and the lifted one). + */ +static const uint16_t BG2_matrices[NOF_LIFTSIZE][BG2M][BG2Nfull] = { + // BG2 - lifting size index 0 + {{9, 117, 204, 26, NO_CNCT, NO_CNCT, 189, NO_CNCT, NO_CNCT, 205, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {167, NO_CNCT, NO_CNCT, 166, 253, 125, 226, 156, 224, 252, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {81, 114, NO_CNCT, 44, 52, NO_CNCT, NO_CNCT, NO_CNCT, 240, NO_CNCT, 1, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 8, 58, NO_CNCT, 158, 104, 209, 54, 18, 128, 0, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {179, 214, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 71, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {231, 41, NO_CNCT, NO_CNCT, NO_CNCT, 194, NO_CNCT, 159, NO_CNCT, NO_CNCT, NO_CNCT, + 103, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {155, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 228, NO_CNCT, 45, NO_CNCT, 28, NO_CNCT, + 158, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 129, NO_CNCT, NO_CNCT, NO_CNCT, 147, NO_CNCT, 140, NO_CNCT, NO_CNCT, NO_CNCT, + 3, NO_CNCT, 116, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {142, 94, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 230, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 203, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 205, NO_CNCT, 61, + 247, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {11, 185, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, 117, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 236, NO_CNCT, 210, NO_CNCT, + NO_CNCT, NO_CNCT, 56, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 63, NO_CNCT, 111, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 14, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {83, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 38, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 222, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 115, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 145, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 3, NO_CNCT, 232, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {51, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 175, + 213, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 203, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 142, NO_CNCT, + 8, 242, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 254, NO_CNCT, NO_CNCT, NO_CNCT, 124, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 114, 64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {220, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 194, 50, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {87, 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 185, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 26, NO_CNCT, NO_CNCT, 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 29, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {76, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 42, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 210, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 222, 63, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {23, NO_CNCT, NO_CNCT, 235, NO_CNCT, 238, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 46, 139, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 8, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {228, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 156, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 29, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 143, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 160, 122, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {8, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 98, 101, NO_CNCT, NO_CNCT, 135, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {18, NO_CNCT, NO_CNCT, NO_CNCT, 28, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 71, NO_CNCT, NO_CNCT, 240, NO_CNCT, 9, NO_CNCT, 84, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 106, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {242, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 44, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 166, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 132, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 164, NO_CNCT, NO_CNCT, 235, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {147, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 85, 36, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 57, NO_CNCT, NO_CNCT, NO_CNCT, 40, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 63, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {140, NO_CNCT, 38, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 154, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 219, + NO_CNCT, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 31, NO_CNCT, NO_CNCT, NO_CNCT, 66, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 38, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {239, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 172, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 34, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 75, + NO_CNCT, NO_CNCT, 120, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 129, NO_CNCT, NO_CNCT, NO_CNCT, 229, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 118, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG2 - lifting size index 1 + {{174, 97, 166, 66, NO_CNCT, NO_CNCT, 71, NO_CNCT, NO_CNCT, 172, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {27, NO_CNCT, NO_CNCT, 36, 48, 92, 31, 187, 185, 3, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {25, 114, NO_CNCT, 117, 110, NO_CNCT, NO_CNCT, NO_CNCT, 114, NO_CNCT, 1, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 136, 175, NO_CNCT, 113, 72, 123, 118, 28, 186, 0, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {72, 74, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 29, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {10, 44, NO_CNCT, NO_CNCT, NO_CNCT, 121, NO_CNCT, 80, NO_CNCT, NO_CNCT, NO_CNCT, + 48, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {129, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 92, NO_CNCT, 100, NO_CNCT, 49, NO_CNCT, + 184, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 80, NO_CNCT, NO_CNCT, NO_CNCT, 186, NO_CNCT, 16, NO_CNCT, NO_CNCT, NO_CNCT, + 102, NO_CNCT, 143, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {118, 70, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 152, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 28, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 132, NO_CNCT, 185, + 178, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {59, 104, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 22, 52, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {32, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 92, NO_CNCT, 174, NO_CNCT, + NO_CNCT, NO_CNCT, 154, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 39, NO_CNCT, 93, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {49, 125, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 35, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 166, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 19, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 118, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 21, NO_CNCT, 163, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {68, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 63, + 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 87, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 177, NO_CNCT, + 135, 64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 158, NO_CNCT, NO_CNCT, NO_CNCT, 23, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 9, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {186, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 6, 46, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {58, 42, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 156, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 76, NO_CNCT, NO_CNCT, 61, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 153, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {157, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 175, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 67, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 20, 52, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {106, NO_CNCT, NO_CNCT, 86, NO_CNCT, 95, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 182, 153, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 64, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {45, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 21, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 67, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 137, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 55, 85, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {103, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 50, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 70, 111, NO_CNCT, NO_CNCT, 168, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {110, NO_CNCT, NO_CNCT, NO_CNCT, 17, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 120, NO_CNCT, NO_CNCT, 154, NO_CNCT, 52, NO_CNCT, 56, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 3, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 170, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {84, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 8, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 17, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 179, NO_CNCT, NO_CNCT, 124, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 177, 12, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 77, NO_CNCT, NO_CNCT, NO_CNCT, 184, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 18, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {25, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 170, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 37, + NO_CNCT, NO_CNCT, 31, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 84, NO_CNCT, NO_CNCT, NO_CNCT, 151, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 190, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {93, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 132, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 57, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 103, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 107, + NO_CNCT, NO_CNCT, 163, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 147, NO_CNCT, NO_CNCT, NO_CNCT, 7, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 60, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG2 - lifting size index 2 + {{0, 0, 0, 0, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, 0, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {137, NO_CNCT, NO_CNCT, 124, 0, 0, 88, 0, 0, 55, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {20, 94, NO_CNCT, 99, 9, NO_CNCT, NO_CNCT, NO_CNCT, 108, NO_CNCT, 1, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 38, 15, NO_CNCT, 102, 146, 12, 57, 53, 46, 0, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, 136, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 157, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, 131, NO_CNCT, NO_CNCT, NO_CNCT, 142, NO_CNCT, 141, NO_CNCT, NO_CNCT, NO_CNCT, + 64, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 124, NO_CNCT, 99, NO_CNCT, 45, NO_CNCT, + 148, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 45, NO_CNCT, 148, NO_CNCT, NO_CNCT, NO_CNCT, + 96, NO_CNCT, 78, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, 65, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 87, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 97, NO_CNCT, 51, + 85, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, 17, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 156, 20, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 7, NO_CNCT, 4, NO_CNCT, + NO_CNCT, NO_CNCT, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, 113, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 48, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, 112, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 102, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 26, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 138, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 57, NO_CNCT, 27, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 73, + 99, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 79, NO_CNCT, + 111, 143, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 24, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 109, 18, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 18, 86, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, 158, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 154, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, 148, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 104, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 17, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 33, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, 4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, 75, NO_CNCT, 158, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, 69, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 87, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 65, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 100, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 13, 7, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 32, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, 126, NO_CNCT, NO_CNCT, 110, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, 154, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, 35, NO_CNCT, 51, NO_CNCT, 134, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 122, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 88, NO_CNCT, NO_CNCT, 13, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 19, 78, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 157, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, 63, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 82, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, 144, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 93, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 19, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 24, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 138, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 36, + NO_CNCT, NO_CNCT, 143, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 55, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG2 - lifting size index 3 + {{72, 110, 23, 181, NO_CNCT, NO_CNCT, 95, NO_CNCT, NO_CNCT, 8, 1, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {53, NO_CNCT, NO_CNCT, 156, 115, 156, 115, 200, 29, 31, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {152, 131, NO_CNCT, 46, 191, NO_CNCT, NO_CNCT, NO_CNCT, 91, NO_CNCT, 0, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 185, 6, NO_CNCT, 36, 124, 124, 110, 156, 133, 1, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {200, 16, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 101, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {185, 138, NO_CNCT, NO_CNCT, NO_CNCT, 170, NO_CNCT, 219, NO_CNCT, NO_CNCT, NO_CNCT, + 193, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {123, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 55, NO_CNCT, 31, NO_CNCT, 222, NO_CNCT, + 209, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 103, NO_CNCT, NO_CNCT, NO_CNCT, 13, NO_CNCT, 105, NO_CNCT, NO_CNCT, NO_CNCT, + 150, NO_CNCT, 181, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {147, 43, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 152, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 30, NO_CNCT, 184, + 83, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {174, 150, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 8, 56, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {99, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 138, NO_CNCT, 110, NO_CNCT, + NO_CNCT, NO_CNCT, 99, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 46, NO_CNCT, 217, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 109, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {37, 113, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 143, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 140, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 36, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 95, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 40, NO_CNCT, 116, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {116, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 200, + 110, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 75, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 158, NO_CNCT, + 134, 97, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 48, NO_CNCT, NO_CNCT, NO_CNCT, 132, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 206, 2, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {68, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 16, 156, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {35, 138, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 86, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 6, NO_CNCT, NO_CNCT, 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 141, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {80, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 43, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 49, 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {156, NO_CNCT, NO_CNCT, 54, NO_CNCT, 134, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 153, 88, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 63, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {211, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 94, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 90, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 221, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {27, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 118, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 216, 212, NO_CNCT, NO_CNCT, 193, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {108, NO_CNCT, NO_CNCT, NO_CNCT, 61, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 106, NO_CNCT, NO_CNCT, 44, NO_CNCT, 185, NO_CNCT, 176, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 147, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 182, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {108, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 21, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 110, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 71, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 12, NO_CNCT, NO_CNCT, 109, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {29, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 201, 69, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 91, NO_CNCT, NO_CNCT, NO_CNCT, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 55, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {1, NO_CNCT, 175, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 83, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 40, + NO_CNCT, NO_CNCT, 12, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 37, NO_CNCT, NO_CNCT, NO_CNCT, 97, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 46, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {106, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 181, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 154, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 98, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 35, + NO_CNCT, NO_CNCT, 36, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 120, NO_CNCT, NO_CNCT, NO_CNCT, 101, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG2 - lifting size index 4 + {{3, 26, 53, 35, NO_CNCT, NO_CNCT, 115, NO_CNCT, NO_CNCT, 127, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {19, NO_CNCT, NO_CNCT, 94, 104, 66, 84, 98, 69, 50, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {95, 106, NO_CNCT, 92, 110, NO_CNCT, NO_CNCT, NO_CNCT, 111, NO_CNCT, 1, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 120, 121, NO_CNCT, 22, 4, 73, 49, 128, 79, 0, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {42, 24, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 51, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {40, 140, NO_CNCT, NO_CNCT, NO_CNCT, 84, NO_CNCT, 137, NO_CNCT, NO_CNCT, NO_CNCT, + 71, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {109, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 87, NO_CNCT, 107, NO_CNCT, 133, NO_CNCT, + 139, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 97, NO_CNCT, NO_CNCT, NO_CNCT, 135, NO_CNCT, 35, NO_CNCT, NO_CNCT, NO_CNCT, + 108, NO_CNCT, 65, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {70, 69, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 88, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 97, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 40, NO_CNCT, 24, + 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {46, 41, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 101, 96, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {28, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 30, NO_CNCT, 116, NO_CNCT, + NO_CNCT, NO_CNCT, 64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 33, NO_CNCT, 122, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 131, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {76, 37, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 62, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 47, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 143, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 51, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 130, NO_CNCT, 97, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {139, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 96, + 128, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 48, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 9, NO_CNCT, + 28, 8, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 120, NO_CNCT, NO_CNCT, NO_CNCT, 43, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 65, 42, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {17, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 106, 142, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {79, 28, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 41, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 2, NO_CNCT, NO_CNCT, 103, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 78, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 75, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 54, 132, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {68, NO_CNCT, NO_CNCT, 115, NO_CNCT, 56, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 30, 42, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 101, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {128, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 63, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 142, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 28, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 100, 133, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {13, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 10, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 106, 77, NO_CNCT, NO_CNCT, 43, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {133, NO_CNCT, NO_CNCT, NO_CNCT, 25, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 87, NO_CNCT, NO_CNCT, 56, NO_CNCT, 104, NO_CNCT, 70, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 80, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 139, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {32, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 89, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 71, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 135, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 6, NO_CNCT, NO_CNCT, 2, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {37, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 25, 114, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 60, NO_CNCT, NO_CNCT, NO_CNCT, 137, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 93, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {121, NO_CNCT, 129, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 26, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 97, + NO_CNCT, NO_CNCT, 56, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 1, NO_CNCT, NO_CNCT, NO_CNCT, 70, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 1, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {119, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 32, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 142, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 73, + NO_CNCT, NO_CNCT, 102, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 48, NO_CNCT, NO_CNCT, NO_CNCT, 47, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 19, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG2 - lifting size index 5 + {{156, 143, 14, 3, NO_CNCT, NO_CNCT, 40, NO_CNCT, NO_CNCT, 123, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {17, NO_CNCT, NO_CNCT, 65, 63, 1, 55, 37, 171, 133, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {98, 168, NO_CNCT, 107, 82, NO_CNCT, NO_CNCT, NO_CNCT, 142, NO_CNCT, 1, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 53, 174, NO_CNCT, 174, 127, 17, 89, 17, 105, 0, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {86, 67, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 83, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {79, 84, NO_CNCT, NO_CNCT, NO_CNCT, 35, NO_CNCT, 103, NO_CNCT, NO_CNCT, NO_CNCT, + 60, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {47, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 154, NO_CNCT, 10, NO_CNCT, 155, NO_CNCT, + 29, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 48, NO_CNCT, NO_CNCT, NO_CNCT, 125, NO_CNCT, 24, NO_CNCT, NO_CNCT, NO_CNCT, + 47, NO_CNCT, 55, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {53, 31, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 104, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 142, NO_CNCT, 99, + 64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {111, 25, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 174, 23, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 175, NO_CNCT, 24, NO_CNCT, + NO_CNCT, NO_CNCT, 141, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 122, NO_CNCT, 11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 4, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {29, 91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 27, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 127, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 145, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 8, NO_CNCT, 166, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {137, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 103, + 40, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 78, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 158, NO_CNCT, + 17, 165, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 134, NO_CNCT, NO_CNCT, NO_CNCT, 23, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 62, 163, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 31, 22, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {13, 135, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 145, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 128, NO_CNCT, NO_CNCT, 52, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {156, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 166, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 40, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 18, 163, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {110, NO_CNCT, NO_CNCT, 132, NO_CNCT, 150, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 113, 108, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 61, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {72, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 136, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 36, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 38, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 53, 145, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {42, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 104, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 64, 24, NO_CNCT, NO_CNCT, 149, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {139, NO_CNCT, NO_CNCT, NO_CNCT, 161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 84, NO_CNCT, NO_CNCT, 173, NO_CNCT, 93, NO_CNCT, 29, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 117, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 148, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {116, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 73, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 142, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 137, NO_CNCT, NO_CNCT, 29, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 41, 162, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 126, NO_CNCT, NO_CNCT, NO_CNCT, 152, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 172, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {73, NO_CNCT, 154, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 129, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 167, + NO_CNCT, NO_CNCT, 38, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 112, NO_CNCT, NO_CNCT, NO_CNCT, 7, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 19, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {109, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 160, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 156, + NO_CNCT, NO_CNCT, 82, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 132, NO_CNCT, NO_CNCT, NO_CNCT, 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 8, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG2 - lifting size index 6 + {{143, 19, 176, 165, NO_CNCT, NO_CNCT, 196, NO_CNCT, NO_CNCT, 13, 0, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {18, NO_CNCT, NO_CNCT, 27, 3, 102, 185, 17, 14, 180, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {126, 163, NO_CNCT, 47, 183, NO_CNCT, NO_CNCT, NO_CNCT, 132, NO_CNCT, 1, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 36, 48, NO_CNCT, 18, 111, 203, 3, 191, 160, 0, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {43, 27, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 117, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {136, 49, NO_CNCT, NO_CNCT, NO_CNCT, 36, NO_CNCT, 132, NO_CNCT, NO_CNCT, NO_CNCT, + 62, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {7, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 34, NO_CNCT, 198, NO_CNCT, 168, NO_CNCT, + 12, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 163, NO_CNCT, NO_CNCT, NO_CNCT, 78, NO_CNCT, 143, NO_CNCT, NO_CNCT, NO_CNCT, + 107, NO_CNCT, 58, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {101, 177, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 22, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 186, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 27, NO_CNCT, 205, + 81, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {125, 60, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 177, 51, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {39, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 29, NO_CNCT, 35, NO_CNCT, + NO_CNCT, NO_CNCT, 8, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 18, NO_CNCT, 155, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 49, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {32, 53, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 95, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 186, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 91, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 20, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 52, NO_CNCT, 109, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {174, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 108, + 102, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 125, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 31, NO_CNCT, + 54, 176, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 57, NO_CNCT, NO_CNCT, NO_CNCT, 201, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 142, 35, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {129, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 203, 140, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {110, 124, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 52, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 196, NO_CNCT, NO_CNCT, 35, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 114, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {10, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 122, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 23, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 202, 126, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {52, NO_CNCT, NO_CNCT, 170, NO_CNCT, 13, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 113, 161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 88, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {197, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 194, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 164, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 172, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 49, 161, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {168, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 193, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 14, 186, NO_CNCT, NO_CNCT, 46, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {50, NO_CNCT, NO_CNCT, NO_CNCT, 27, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 70, NO_CNCT, NO_CNCT, 17, NO_CNCT, 50, NO_CNCT, 6, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 115, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 189, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {110, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 163, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 163, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 173, NO_CNCT, NO_CNCT, 179, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {197, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 191, 193, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 157, NO_CNCT, NO_CNCT, NO_CNCT, 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {197, NO_CNCT, 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 179, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 181, + NO_CNCT, NO_CNCT, 193, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 157, NO_CNCT, NO_CNCT, NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 191, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 157, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 193, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 163, + NO_CNCT, NO_CNCT, 179, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 191, NO_CNCT, NO_CNCT, NO_CNCT, 197, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}, + + // BG2 - lifting size index 7 + {{145, 131, 71, 21, NO_CNCT, NO_CNCT, 23, NO_CNCT, NO_CNCT, 112, 1, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {142, NO_CNCT, NO_CNCT, 174, 183, 27, 96, 23, 9, 167, NO_CNCT, + 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {74, 31, NO_CNCT, 3, 53, NO_CNCT, NO_CNCT, NO_CNCT, 155, NO_CNCT, 0, + NO_CNCT, 0, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 239, 171, NO_CNCT, 95, 110, 159, 199, 43, 75, 1, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {29, 140, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 180, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {121, 41, NO_CNCT, NO_CNCT, NO_CNCT, 169, NO_CNCT, 88, NO_CNCT, NO_CNCT, NO_CNCT, + 207, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {137, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 72, NO_CNCT, 172, NO_CNCT, 124, NO_CNCT, + 56, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 86, NO_CNCT, NO_CNCT, NO_CNCT, 186, NO_CNCT, 87, NO_CNCT, NO_CNCT, NO_CNCT, + 172, NO_CNCT, 154, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {176, 169, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 225, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 238, NO_CNCT, 48, + 68, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {38, 217, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 208, 232, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {178, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 214, NO_CNCT, 168, NO_CNCT, + NO_CNCT, NO_CNCT, 51, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 124, NO_CNCT, 122, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 72, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {48, 57, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 167, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 219, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 82, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 232, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 204, NO_CNCT, 162, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {38, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 217, + 157, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 170, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 23, NO_CNCT, + 175, 202, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 196, NO_CNCT, NO_CNCT, NO_CNCT, 173, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 195, 218, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {128, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 211, 210, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {39, 84, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 88, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 117, NO_CNCT, NO_CNCT, 227, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 6, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {238, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 13, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 11, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 195, 44, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {5, NO_CNCT, NO_CNCT, 94, NO_CNCT, 111, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 81, 19, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 130, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {66, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 95, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 146, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 66, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 190, 86, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {64, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 181, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 7, 144, NO_CNCT, NO_CNCT, 16, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {25, NO_CNCT, NO_CNCT, NO_CNCT, 57, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 37, NO_CNCT, NO_CNCT, 139, NO_CNCT, 221, NO_CNCT, 17, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 201, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 46, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {179, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 14, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 116, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 46, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 2, NO_CNCT, NO_CNCT, 106, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {184, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 135, 141, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 85, NO_CNCT, NO_CNCT, NO_CNCT, 225, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 175, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {178, NO_CNCT, 112, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 106, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 154, + NO_CNCT, NO_CNCT, 114, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT}, + {NO_CNCT, 42, NO_CNCT, NO_CNCT, NO_CNCT, 41, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 105, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT, NO_CNCT}, + {167, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 45, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, 189, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT, NO_CNCT}, + {NO_CNCT, NO_CNCT, 78, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 67, + NO_CNCT, NO_CNCT, 180, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0, NO_CNCT}, + {NO_CNCT, 53, NO_CNCT, NO_CNCT, NO_CNCT, 215, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + 230, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, + NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, NO_CNCT, 0}}}; + +/*! + * \brief Look-up table: BG1 connection indices. + * + * For each check node, the corresponding row contains the indices of the + * variable nodes connected to it. + */ +static const int8_t BG1_positions[BG1M][MAX_CNCT] = { + {0, 1, 2, 3, 5, 6, 9, 10, 11, 12, 13, 15, 16, 18, 19, 20, 21, 22, 23, -1}, + {0, 2, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 16, 17, 19, 21, 22, 23, 24, -1}, + {0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 17, 18, 19, 20, 24, 25, -1}, + {0, 1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 16, 17, 18, 20, 21, 22, 25, -1}, + {0, 1, 26, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 3, 12, 16, 21, 22, 27, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 6, 10, 11, 13, 17, 18, 20, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 4, 7, 8, 14, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 3, 12, 16, 19, 21, 22, 24, 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 10, 11, 13, 17, 18, 20, 31, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 2, 4, 7, 8, 14, 32, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 12, 16, 21, 22, 23, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 10, 11, 13, 18, 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 3, 7, 20, 23, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 12, 15, 16, 17, 21, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 10, 13, 18, 25, 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 3, 11, 20, 22, 38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 14, 16, 17, 21, 39, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 12, 13, 18, 19, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 1, 7, 8, 10, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 3, 9, 11, 22, 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 5, 16, 20, 21, 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 12, 13, 17, 44, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 2, 10, 18, 45, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 3, 4, 11, 22, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 6, 7, 14, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 2, 4, 15, 48, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 6, 8, 49, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 4, 19, 21, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 14, 18, 25, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 10, 13, 24, 52, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 7, 22, 25, 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 12, 14, 24, 54, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 2, 11, 21, 55, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 7, 15, 17, 56, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 6, 12, 22, 57, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 14, 15, 18, 58, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 13, 23, 59, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 9, 10, 12, 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 3, 7, 19, 61, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 8, 17, 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 3, 9, 18, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 4, 24, 64, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 16, 18, 25, 65, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 7, 9, 22, 66, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 6, 10, 67, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}}; + +/*! + * \brief Look-up table: BG2 connection indices. + * + * For each check node, the corresponding row contains the indices of the + * variable nodes connected to it. + */ +static const int8_t BG2_positions[BG2M][MAX_CNCT] = { + {0, 1, 2, 3, 6, 9, 10, 11, -1, -1, -1}, {0, 3, 4, 5, 6, 7, 8, 9, 11, 12, -1}, + {0, 1, 3, 4, 8, 10, 12, 13, -1, -1, -1}, {1, 2, 4, 5, 6, 7, 8, 9, 10, 13, -1}, + {0, 1, 11, 14, -1, -1, -1, -1, -1, -1, -1}, {0, 1, 5, 7, 11, 15, -1, -1, -1, -1, -1}, + {0, 5, 7, 9, 11, 16, -1, -1, -1, -1, -1}, {1, 5, 7, 11, 13, 17, -1, -1, -1, -1, -1}, + {0, 1, 12, 18, -1, -1, -1, -1, -1, -1, -1}, {1, 8, 10, 11, 19, -1, -1, -1, -1, -1, -1}, + {0, 1, 6, 7, 20, -1, -1, -1, -1, -1, -1}, {0, 7, 9, 13, 21, -1, -1, -1, -1, -1, -1}, + {1, 3, 11, 22, -1, -1, -1, -1, -1, -1, -1}, {0, 1, 8, 13, 23, -1, -1, -1, -1, -1, -1}, + {1, 6, 11, 13, 24, -1, -1, -1, -1, -1, -1}, {0, 10, 11, 25, -1, -1, -1, -1, -1, -1, -1}, + {1, 9, 11, 12, 26, -1, -1, -1, -1, -1, -1}, {1, 5, 11, 12, 27, -1, -1, -1, -1, -1, -1}, + {0, 6, 7, 28, -1, -1, -1, -1, -1, -1, -1}, {0, 1, 10, 29, -1, -1, -1, -1, -1, -1, -1}, + {1, 4, 11, 30, -1, -1, -1, -1, -1, -1, -1}, {0, 8, 13, 31, -1, -1, -1, -1, -1, -1, -1}, + {1, 2, 32, -1, -1, -1, -1, -1, -1, -1, -1}, {0, 3, 5, 33, -1, -1, -1, -1, -1, -1, -1}, + {1, 2, 9, 34, -1, -1, -1, -1, -1, -1, -1}, {0, 5, 35, -1, -1, -1, -1, -1, -1, -1, -1}, + {2, 7, 12, 13, 36, -1, -1, -1, -1, -1, -1}, {0, 6, 37, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 2, 5, 38, -1, -1, -1, -1, -1, -1, -1}, {0, 4, 39, -1, -1, -1, -1, -1, -1, -1, -1}, + {2, 5, 7, 9, 40, -1, -1, -1, -1, -1, -1}, {1, 13, 41, -1, -1, -1, -1, -1, -1, -1, -1}, + {0, 5, 12, 42, -1, -1, -1, -1, -1, -1, -1}, {2, 7, 10, 43, -1, -1, -1, -1, -1, -1, -1}, + {0, 12, 13, 44, -1, -1, -1, -1, -1, -1, -1}, {1, 5, 11, 45, -1, -1, -1, -1, -1, -1, -1}, + {0, 2, 7, 46, -1, -1, -1, -1, -1, -1, -1}, {10, 13, 47, -1, -1, -1, -1, -1, -1, -1, -1}, + {1, 5, 11, 48, -1, -1, -1, -1, -1, -1, -1}, {0, 7, 12, 49, -1, -1, -1, -1, -1, -1, -1}, + {2, 10, 13, 50, -1, -1, -1, -1, -1, -1, -1}, {1, 5, 11, 51, -1, -1, -1, -1, -1, -1, -1}}; + +/*! + * Returns a pointer to the desired variation of the selected base graph. + */ +static inline const uint16_t* get_cnct_matrix(srslte_basegraph_t bg, uint8_t ls) +{ + return (bg == BG1 ? (const uint16_t*)BG1_matrices[ls] : (const uint16_t*)BG2_matrices[ls]); +} + +int create_compact_pcm(uint16_t* pcm, int8_t (*positions)[MAX_CNCT], srslte_basegraph_t bg, uint16_t ls) +{ + uint8_t ls_index = 0; + uint16_t value = 0; + + const struct { + uint8_t M[2]; + uint8_t Nfull[2]; + } BG_size = {{BG1M, BG2M}, {BG1Nfull, BG2Nfull}}; + uint8_t M = BG_size.M[bg]; + uint8_t N = BG_size.Nfull[bg]; + + ls_index = get_ls_index(ls); + if (ls_index == VOID_LIFTSIZE) { + ERROR("Invalid lifting size %d\n", ls); + return -1; + } + const uint16_t* tmp = get_cnct_matrix(bg, ls_index); + + const int8_t(*BGpositions)[MAX_CNCT] = (bg == BG1) ? BG1_positions : BG2_positions; + for (int i = 0; i < M; i++) { + for (int j = 0; j < N; j++) { + value = *(tmp + i * N + j); + *(pcm + i * N + j) = (value == NO_CNCT ? NO_CNCT : value % ls); + } + } + + if (positions != NULL) { + for (int i = 0; i < M; i++) { + for (int j = 0; j < MAX_CNCT; j++) { + positions[i][j] = BGpositions[i][j]; + } + } + } + + return 0; +} diff --git a/lib/src/phy/fec/ldpc/ldpc_avx2_consts.h b/lib/src/phy/fec/ldpc/ldpc_avx2_consts.h new file mode 100644 index 000000000..caae53cd9 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_avx2_consts.h @@ -0,0 +1,170 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_avx2_consts.h + * \brief Declaration of constants and masks for the AVX2-based implementation + * of the LDPC encoder and decoder. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef LDPC_AVX2_CONSTS_H +#define LDPC_AVX2_CONSTS_H + +#include + +#include "../utils_avx2.h" + +/*! + * \brief Packed 8-bit zeros. + */ +static const __m256i zero_epi8 = {0, 0, 0, 0}; + +/*! + * \brief Packed 8-bit ones. + */ +static const __m256i one_epi8 = {0x0101010101010101LL, + 0x0101010101010101LL, + 0x0101010101010101LL, + 0x0101010101010101LL}; + +/*! + * \brief Packed 8-bit 127 (that is \f$2^7 - 1\f$). + */ +static const __m256i infty8_epi8 = {0x7F7F7F7F7F7F7F7FLL, + 0x7F7F7F7F7F7F7F7FLL, + 0x7F7F7F7F7F7F7F7FLL, + 0x7F7F7F7F7F7F7F7FLL}; +/*! + * \brief Packed 8-bit --127 (that is \f$-2^7 + 1\f$). + */ +static const __m256i neg_infty8_epi8 = {0x8181818181818181LL, // NOLINT + 0x8181818181818181LL, // NOLINT + 0x8181818181818181LL, // NOLINT + 0x8181818181818181LL}; // NOLINT + +/*! + * \brief Packed 8-bit 63 (that is \f$2^6 - 1\f$). + */ +static const __m256i infty7_epi8 = {0x3F3F3F3F3F3F3F3FLL, + 0x3F3F3F3F3F3F3F3FLL, + 0x3F3F3F3F3F3F3F3FLL, + 0x3F3F3F3F3F3F3F3FLL}; +/*! + * \brief Packed 8-bit --63 (that is \f$-2^6 + 1\f$). + */ +static const __m256i neg_infty7_epi8 = {0xC1C1C1C1C1C1C1C1LL, // NOLINT + 0xC1C1C1C1C1C1C1C1LL, // NOLINT + 0xC1C1C1C1C1C1C1C1LL, // NOLINT + 0xC1C1C1C1C1C1C1C1LL}; // NOLINT + +/*! + * \brief Identifies even-indexed 8-bit packets. + */ +static const __m256i mask_even_epi8 = {0x00FF00FF00FF00FF, + 0x00FF00FF00FF00FF, + 0x00FF00FF00FF00FF, + 0x00FF00FF00FF00FF}; // NOLINT + +/*! + * \brief Mask needed for node rotation: mask_least_epi8[i] marks the bits + * corresponding to the \b i least significant chars. + */ +static const __m256i mask_least_epi8[SRSLTE_AVX2_B_SIZE + 1] = { + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0x00000000000000FF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0x000000000000FFFF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0x0000000000FFFFFF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0x00000000FFFFFFFF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0x000000FFFFFFFFFF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0x0000FFFFFFFFFFFF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0x00FFFFFFFFFFFFFF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x00000000000000FF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x000000000000FFFF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x0000000000FFFFFF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x00000000FFFFFFFF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x000000FFFFFFFFFF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x0000FFFFFFFFFFFF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0x00FFFFFFFFFFFFFF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x0000000000000000, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x00000000000000FF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x000000000000FFFF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x0000000000FFFFFF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x00000000FFFFFFFF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x000000FFFFFFFFFF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x0000FFFFFFFFFFFF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x00FFFFFFFFFFFFFF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x0000000000000000}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x00000000000000FF}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x000000000000FFFF}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x0000000000FFFFFF}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x00000000FFFFFFFF}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x000000FFFFFFFFFF}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x0000FFFFFFFFFFFF}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0x00FFFFFFFFFFFFFF}, // NOLINT + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}}; // NOLINT + +/*! + * \brief Mask needed for node rotation: mask_most_epi8[i] marks the bits + * corresponding to the SRSLTE_AVX2_B_SIZE - \b i most significant chars. + */ +static const __m256i mask_most_epi8[SRSLTE_AVX2_B_SIZE + 1] = { + {0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0xFFFFFFFFFFFFFF00, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0xFFFFFFFFFFFF0000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0xFFFFFFFFFF000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0xFFFFFFFF00000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0xFFFFFF0000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0xFFFF000000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0xFF00000000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFFFFFFFFFFFFFF00, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFFFFFFFFFFFF0000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFFFFFFFFFF000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFFFFFFFF00000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFFFFFF0000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFFFF000000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0xFF00000000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFFFFFFFF, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFFFFFF00, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFFFF0000, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFF000000, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFFFFFFFF00000000, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFFFFFF0000000000, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFFFF000000000000, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0xFF00000000000000, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFFFFFFFF}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFFFFFF00}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFFFF0000}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFFFFFFFFFF000000}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFFFFFFFF00000000}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFFFFFF0000000000}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFFFF000000000000}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0xFF00000000000000}, // NOLINT + {0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000}}; // NOLINT + +#endif // LDPC_AVX2_CONSTS_H diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_all.h b/lib/src/phy/fec/ldpc/ldpc_dec_all.h new file mode 100644 index 000000000..7eedd7c43 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_all.h @@ -0,0 +1,602 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_all.h + * \brief Declaration of the LDPC decoder inner functions. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef SRSLTE_LDPCDEC_ALL_H +#define SRSLTE_LDPCDEC_ALL_H + +#include +#include + +/*! + * Creates the registers used by the float-based implementation of the LDPC decoder. + * \param[in] bgN Codeword length. + * \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. + * \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs structure). + */ +void* create_ldpc_dec_f(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the float-based LDPC decoder. + * \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs structure). + */ +void delete_ldpc_dec_f(void* p); + +/*! + * Initializes the inner registers of the float-based LDPC decoder before + * carrying out the actual decoding. + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_f(void* p, const float* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (float version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_f(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes (float version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_f(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword (float version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_f(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits. + * \param[in] p A pointer to the decoder registers (an ldpc_regs structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_f(void* p, uint8_t* message, uint16_t liftK); + +/*! + * Creates the registers used by the 16-bit-based implementation of the LDPC decoder. + * \param[in] bgN Codeword length. + * \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. + * \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs_s structure). + */ +void* create_ldpc_dec_s(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the 16-bit integer-based LDPC decoder. + * \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs_s structure). + */ +void delete_ldpc_dec_s(void* p); + +/*! + * Initializes the inner registers of the 16-bit integer-based LDPC decoder before + * carrying out the actual decoding. + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_s structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_s(void* p, const int16_t* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (16-bit version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_s structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_s(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes (16-bit version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_s structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_s(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword (16-bit version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_s structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_s(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits. + * \param[in] p A pointer to the decoder registers (an ldpc_regs_s structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_s(void* p, uint8_t* message, uint16_t liftK); + +/*! + * Creates the registers used by the 8-bit-based implementation of the LDPC decoder. + * \param[in] bgN Codeword length. + * \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. + * \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs_c structure). + */ +void* create_ldpc_dec_c(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the 8-bit integer-based LDPC decoder. + * \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs_c structure). + */ +void delete_ldpc_dec_c(void* p); + +/*! + * Initializes the inner registers of the 8-bit integer-based LDPC decoder before + * carrying out the actual decoding. + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_c(void* p, const int8_t* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (8-bit version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_c(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes (8-bit version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_c(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword (8-bit version). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_c(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits. + * \param[in] p A pointer to the decoder registers (an ldpc_regs_c structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_c(void* p, uint8_t* message, uint16_t liftK); + +/*! + * Creates the registers used by the 8-bit-based implementation of the LDPC decoder (flooded scheduling). + * \param[in] bgN Codeword length. + * \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. + * \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs_c_flood structure). + */ +void* create_ldpc_dec_c_flood(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the 8-bit integer-based LDPC decoder (flooded scheduling). + * \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs_c_flood structure). + */ +void delete_ldpc_dec_c_flood(void* p); + +/*! + * Initializes the inner registers of the 8-bit integer-based LDPC decoder (flooded scheduling) before + * carrying out the actual decoding. + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_flood structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_c_flood(void* p, const int8_t* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (8-bit version, flooded scheduling). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_flood structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_c_flood(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes (8-bit version, flooded scheduling). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_flood structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_c_flood(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword (8-bit version, flooded scheduling). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_flood structure). + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to each layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_c_flood(void* p, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits. + * \param[in] p A pointer to the decoder registers (an ldpc_regs_c_flood structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_c_flood(void* p, uint8_t* message, uint16_t liftK); + +/*! + * Creates the registers used by the optimized 8-bit-based implementation of the LDPC decoder (LS <= \ref + * SRSLTE_AVX2_B_SIZE). \param[in] bgN Codeword length. \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs_c_avx2 structure). + */ +void* create_ldpc_dec_c_avx2(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the optimized 8-bit integer-based LDPC decoder (LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs_c_avx2 structure). + */ +void delete_ldpc_dec_c_avx2(void* p); + +/*! + * Initializes the inner registers of the optimized 8-bit integer-based LDPC decoder before + * carrying out the actual decoding (LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2 structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_c_avx2(void* p, const int8_t* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (optimized 8-bit version, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2 structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_c_avx2(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes (optimized 8-bit version, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2 structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_c_avx2(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword (optimized 8-bit version, LS <= \ref + * SRSLTE_AVX2_B_SIZE). \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2 structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_c_avx2(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits (optimized 8-bit version, LS <= \ref + * SRSLTE_AVX2_B_SIZE). \param[in] p A pointer to the decoder registers (an ldpc_regs_c_avx2 structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_c_avx2(void* p, uint8_t* message, uint16_t liftK); + +/*! + * Creates the registers used by the optimized 8-bit-based implementation of the LDPC decoder (LS > \ref + * SRSLTE_AVX2_B_SIZE). \param[in] bgN Codeword length. \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs_c_avx2long structure). + */ +void* create_ldpc_dec_c_avx2long(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the optimized 8-bit integer-based LDPC decoder (LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs_c_avx2long structure). + */ +void delete_ldpc_dec_c_avx2long(void* p); + +/*! + * Initializes the inner registers of the optimized 8-bit integer-based LDPC decoder before + * carrying out the actual decoding (LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_c_avx2long(void* p, const int8_t* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (optimized 8-bit version, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_c_avx2long(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes (optimized 8-bit version, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_c_avx2long(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword (optimized 8-bit version, LS > \ref + * SRSLTE_AVX2_B_SIZE). \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_c_avx2long(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits (optimized 8-bit version, LS > \ref + * SRSLTE_AVX2_B_SIZE). \param[in] p A pointer to the decoder registers (an ldpc_regs_c_avx2long structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_c_avx2long(void* p, uint8_t* message, uint16_t liftK); + +/*! + * Creates the registers used by the optimized 8-bit-based implementation of the LDPC decoder + * (flooded scheduling, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in] bgN Codeword length. + * \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. + * \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs_c_avx2_flood structure). + */ +void* create_ldpc_dec_c_avx2_flood(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the optimized 8-bit integer-based LDPC decoder + * (flooded scheduling, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs_c_avx2_flood structure). + */ +void delete_ldpc_dec_c_avx2_flood(void* p); + +/*! + * Initializes the inner registers of the optimized 8-bit integer-based LDPC decoder before + * carrying out the actual decoding (flooded scheduling, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2_flood structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_c_avx2_flood(void* p, const int8_t* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (optimized 8-bit version, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2_flood structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_c_avx2_flood(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes + * (optimized 8-bit version, flooded scheduling, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2_flood structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_c_avx2_flood(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword + * (optimized 8-bit version, flooded scheduling, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2_flood structure). + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to each layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_c_avx2_flood(void* p, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits + * (flooded scheduling, optimized 8-bit version, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p A pointer to the decoder registers (an ldpc_regs_c_avx2_flood structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_c_avx2_flood(void* p, uint8_t* message, uint16_t liftK); + +/*! + * Creates the registers used by the optimized 8-bit-based implementation of the LDPC decoder + * (flooded scheduling, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in] bgN Codeword length. + * \param[in] bgM Number of check nodes. + * \param[in] ls Lifting size. + * \param[in] scaling_fctr Scaling factor of the normalized min-sum algorithm. + * \return A pointer to the created registers (an ldpc_regs_c_avx2long_flood structure). + */ +void* create_ldpc_dec_c_avx2long_flood(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr); + +/*! + * Destroys the inner registers of the optimized 8-bit integer-based LDPC decoder (flooded scheduling, LS > \ref + * SRSLTE_AVX2_B_SIZE). \param[in] p A pointer to the dismantled decoder registers (an ldpc_regs_c_avx2long_flood + * structure). + */ +void delete_ldpc_dec_c_avx2long_flood(void* p); + +/*! + * Initializes the inner registers of the optimized 8-bit integer-based LDPC decoder before + * carrying out the actual decoding (flooded scheduling, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long_flood structure). + * \param[in] llrs A pointer to the array of LLR values from the channel. + * \param[in] ls The lifting size. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_ldpc_dec_c_avx2long_flood(void* p, const int8_t* llrs, uint16_t ls); + +/*! + * Updates the messages from variable nodes to check nodes (optimized 8-bit version, + * flooded scheduling, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long_flood structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_var_to_check_c_avx2long_flood(void* p, int i_layer); + +/*! + * Updates the messages from check nodes to variable nodes (optimized 8-bit version, + * flooded scheduling, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long_flood structure). + * \param[in] i_layer The index of the variable-to-check layer to update. + * \param[in] this_pcm A pointer to the row of the parity check matrix (i.e. base + * graph) corresponding to the selected layer. + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to the current layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_check_to_var_c_avx2long_flood(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Updates the current estimate of the (soft) bits of the codeword (optimized 8-bit version, + * flooded scheduling, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] p A pointer to the decoder registers (an ldpc_regs_c_avx2long_flood structure). + * \param[in] these_var_indices + * Contains the indices of the variable nodes connected + * to each layer. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int update_ldpc_soft_bits_c_avx2long_flood(void* p, const int8_t (*these_var_indices)[MAX_CNCT]); + +/*! + * Returns the decoded message (hard bits) from the current soft bits (optimized 8-bit version, + * flooded scheduling, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p A pointer to the decoder registers (an ldpc_regs_c_avx2long_flood structure). + * \param[out] message A pointer to the decoded message. + * \param[in] liftK The length of the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int extract_ldpc_message_c_avx2long_flood(void* p, uint8_t* message, uint16_t liftK); + +#endif // SRSLTE_LDPCDEC_ALL_H diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_c.c b/lib/src/phy/fec/ldpc/ldpc_dec_c.c new file mode 100644 index 000000000..2a675f609 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_c.c @@ -0,0 +1,363 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_c.c + * \brief Definition of the LDPC decoder inner functions working + * with 8-bit integer-valued LLRs. + * + * Even if the inner representation is based on 8 bits, check-to-variable and + * variable-to-check messages are actually represented with 7 bits, the + * remaining bit is used to represent infinity. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include + +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/vector.h" + +#define F2I 100 /*!< \brief Used for float to int conversion---float f is stored as (int)(f*F2I). */ + +/*! + * \brief Maximum message magnitude. + * Messages use a 7-bit quantization. Soft bits use the remaining bit to denote infinity. + */ +static const int8_t infinity7 = (1U << 6U) - 1; + +/*! + * \brief Inner registers for the LDPC decoder that works with 8-bit integer-valued LLRs. + */ +struct ldpc_regs_c { + int8_t* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + int8_t* check_to_var; /*!< \brief Check-to-variable messages. */ + int8_t* var_to_check; /*!< \brief Variable-to-check messages. */ + int8_t (*min_v2c)[2]; /*!< \brief Helper register for computing check-to-variable messages. */ + int* min_v_index; /*!< \brief Helper register for computing check-to-variable messages. */ + int* prod_v2c; /*!< \brief Helper register for computing check-to-variable messages. */ + + uint16_t liftN; /*!< \brief Total number of variable nodes (after lifting). */ + uint16_t hrrN; /*!< \brief Number of variable nodes in the high-rate region (after lifing). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint16_t ls; /*!< \brief Lifting size. */ + int scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ +}; + +/*! + * Carries out the actual update of the variable-to-check messages. It basically + * consists in \f$ z = x - y \f$ (as vectors). However, first it checks whether + * \f$\lvert x[i] \rvert = 2^{7}-1 \f$ (our representation of infinity) to + * ensure it is properly propagated. Also, the subtraction is saturated between + * \f$- clip\f$ and \f$+ clip\f$. + * \param[in] x Minuend: array we subtract from (in practice, the soft bits). + * \param[in] y Subtrahend: array to be subtracted (in practice, the + * check-to-variable messages). + * \param[out] z Resulting difference array(in practice, the updated + * variable-to-check messages). + * \param[in] clip The saturation value. + * \param[in] len The length of the vectors. + */ +static void inner_var_to_check_c(const int8_t* x, const int8_t* y, int8_t* z, uint8_t clip, uint32_t len); + +void* create_ldpc_dec_c(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs_c* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t liftN = bgN * ls; + uint16_t hrrN = (bgK + 4) * ls; + + if ((vp = malloc(sizeof(struct ldpc_regs_c))) == NULL) { + return NULL; + } + + if ((vp->soft_bits = srslte_vec_i8_malloc(liftN)) == NULL) { + free(vp); + return NULL; + } + + if ((vp->check_to_var = srslte_vec_i8_malloc((hrrN + ls) * bgM)) == NULL) { + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->var_to_check = srslte_vec_i8_malloc((hrrN + ls))) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->min_v2c = malloc(ls * sizeof(int8_t[2]))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->min_v_index = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->prod_v2c = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->liftN = liftN; + vp->hrrN = hrrN; + vp->ls = ls; + + vp->scaling_fctr = (int)(scaling_fctr * F2I); + + return vp; +} + +void delete_ldpc_dec_c(void* p) +{ + struct ldpc_regs_c* vp = p; + + if (vp != NULL) { + free(vp->prod_v2c); + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + } +} + +int init_ldpc_dec_c(void* p, const int8_t* llrs, uint16_t ls) +{ + struct ldpc_regs_c* vp = p; + int i = 0; + int skip = 2 * ls; + + if (p == NULL) { + return -1; + } + + bzero(vp->soft_bits, skip * sizeof(int8_t)); + for (i = skip; i < vp->liftN; i++) { + vp->soft_bits[i] = llrs[i - skip]; + } + + bzero(vp->check_to_var, (vp->hrrN + vp->ls) * vp->bgM * sizeof(int8_t)); + bzero(vp->var_to_check, (vp->hrrN + vp->ls) * sizeof(int8_t)); + return 0; +} + +int update_ldpc_var_to_check_c(void* p, int i_layer) +{ + struct ldpc_regs_c* vp = p; + + if (p == NULL) { + return -1; + } + + int8_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + + // Update the high-rate region. + inner_var_to_check_c(vp->soft_bits, this_check_to_var, vp->var_to_check, infinity7, vp->hrrN); + + if (i_layer >= 4) { + // Update the extension region. + inner_var_to_check_c(vp->soft_bits + vp->hrrN + (i_layer - 4) * vp->ls, + this_check_to_var + vp->hrrN, + vp->var_to_check + vp->hrrN, + infinity7, + vp->ls); + } + + return 0; +} + +int update_ldpc_check_to_var_c(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + int j = 0; + + for (i = 0; i < vp->ls; i++) { + vp->prod_v2c[i] = 1; + for (j = 0; j < 2; j++) { + vp->min_v2c[i][j] = INT8_MAX; + } + } + + uint16_t shift = 0; + int index = 0; + int8_t this_v2c = 0; + int is_min = 0; + int i_v2c = 0; + int i_v2c_base = 0; + + int8_t current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + this_v2c = abs(vp->var_to_check[i_v2c]); + is_min = this_v2c < vp->min_v2c[index][0]; + vp->min_v2c[index][1] = + (this_v2c >= vp->min_v2c[index][1]) ? vp->min_v2c[index][1] : (is_min ? vp->min_v2c[index][0] : this_v2c); + vp->min_v2c[index][0] = is_min ? this_v2c : vp->min_v2c[index][0]; + vp->min_v_index[index] = is_min ? i_v2c : vp->min_v_index[index]; + + vp->prod_v2c[index] *= (vp->var_to_check[i_v2c] >= 0) ? 1 : -1; + } + current_var_index = (*these_var_indices)[i + 1]; + } + + int8_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + + this_check_to_var[i_v2c] = (i_v2c != vp->min_v_index[index]) ? vp->min_v2c[index][0] : vp->min_v2c[index][1]; + this_check_to_var[i_v2c] = this_check_to_var[i_v2c] * vp->scaling_fctr / F2I; + + this_check_to_var[i_v2c] *= vp->prod_v2c[index] * ((vp->var_to_check[i_v2c] >= 0) ? 1 : -1); + } + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_c(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c* vp = p; + if (p == NULL) { + return -1; + } + + int i_bit = 0; + int i_bit_tmp = 0; + int8_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + int8_t* this_var_to_check = vp->var_to_check; + + long tmp = 0; + + int8_t current_var_index = (*these_var_indices)[0]; + int current_var_index_ext = 0; + + for (int i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + current_var_index_ext = current_var_index * vp->ls; + for (int j = 0; j < vp->ls; j++) { + i_bit = current_var_index_ext + j; + i_bit_tmp = (current_var_index_ext <= vp->hrrN) ? i_bit : vp->hrrN + j; + tmp = (long)this_check_to_var[i_bit_tmp] + this_var_to_check[i_bit_tmp]; + if (tmp > infinity7) { + tmp = INT8_MAX; + } + if (tmp < -infinity7) { + tmp = -INT8_MAX; + } + vp->soft_bits[i_bit] = (int8_t)tmp; + } + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int extract_ldpc_message_c(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs_c* vp = p; + + for (int i = 0; i < liftK; i++) { + message[i] = (vp->soft_bits[i] < 0); + } + + return 0; +} + +void inner_var_to_check_c(const int8_t* x, const int8_t* y, int8_t* z, const uint8_t clip, const uint32_t len) +{ + unsigned i = 0; + long tmp = 0; + + const long infinity8 = (1U << 7U) - 1; // Max positive value in 8-bit representation + + for (i = 0; i < len; i++) { + if (x[i] >= infinity8) { + z[i] = infinity8; + continue; + } + if (x[i] <= -infinity8) { + z[i] = -infinity8; + continue; + } + tmp = (long)x[i] - y[i]; + if (tmp > clip) { + tmp = clip; + } + if (tmp < -clip) { + tmp = -clip; + } + z[i] = (int8_t)tmp; + } +} diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2.c b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2.c new file mode 100644 index 000000000..1eb3da2da --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2.c @@ -0,0 +1,545 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_c_avx2.c + * \brief Definition LDPC decoder inner functions working + * with 8-bit integer-valued LLRs (AVX2 version). + * + * Even if the inner representation is based on 8 bits, check-to-variable and + * variable-to-check messages are actually represented with 7 bits, the + * remaining bit is used to represent infinity. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include + +#include "../utils_avx2.h" +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/vector.h" + +#ifdef LV_HAVE_AVX2 + +#include + +#include "ldpc_avx2_consts.h" + +#define F2I 65535 /*!< \brief Used for float to int conversion---float f is stored as (int)(f*F2I). */ + +/*! + * \brief Represents a node of the base factor graph. + */ +typedef union bg_node_t { + int8_t c[SRSLTE_AVX2_B_SIZE]; /*!< Each base node may contain up to \ref SRSLTE_AVX2_B_SIZE lifted nodes. */ + __m256i v; /*!< All the lifted nodes of the current base node as a 256-bit line. */ +} bg_node_t; + +/*! + * \brief Maximum message magnitude. + * Messages use a 7-bit quantization. Soft bits use the remaining bit to denote infinity. + */ +static const int8_t infinity7 = (1U << 6U) - 1; + +/*! + * \brief Inner registers for the LDPC decoder that works with 8-bit integer-valued LLRs. + */ +struct ldpc_regs_c_avx2 { + __m256i scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ + + bg_node_t* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + __m256i* check_to_var; /*!< \brief Check-to-variable messages. */ + __m256i* var_to_check; /*!< \brief Variable-to-check messages. */ + __m256i* rotated_v2c; /*!< \brief To store a rotated version of the variable-to-check messages. */ + + uint16_t ls; /*!< \brief Lifting size. */ + uint8_t hrr; /*!< \brief Number of variable nodes in the high-rate region (before lifting). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint8_t bgN; /*!< \brief Number of variable nodes (before lifting). */ +}; + +/*! + * Carries out the actual update of the variable-to-check messages. It basically + * consists in \f$ z = x - y \f$ (as vectors). However, first it checks whether + * \f$\lvert x[i] \rvert = 2^{7}-1 \f$ (our representation of infinity) to + * ensure it is properly propagated. Also, the subtraction is saturated between + * \f$- clip\f$ and \f$+ clip\f$. + * \param[in] x Minuend: array we subtract from (in practice, the soft bits). + * \param[in] y Subtrahend: array to be subtracted (in practice, the + * check-to-variable messages). + * \param[out] z Resulting difference array(in practice, the updated + * variable-to-check messages). + * \param[in] clip The saturation value. + * \param[in] len The length of the vectors. + */ +static void inner_var_to_check_c_avx2(const __m256i* x, const __m256i* y, __m256i* z, uint8_t clip, uint32_t len); + +/*! + * Rotate the content of an __m256i vector (first input) towards the left by + * the number of chars specified by the second input (i.e., the \b imm * 8 least + * significant bits become the \b imm * 8 most significant bits). + * \param[in] a Vector to circularly shift. + * \param[in] imm The shift order in chars. + * \return The shifted vector. + */ +static __m256i _mm256_rotatelli_si256(__m256i a, int imm); + +/*! + * Rotate the content of an __m256i vector (first input) towards the right by + * the number of chars specified by the second input (i.e., the \b imm * 8 most + * significant bits become the \b imm * 8 least significant bits). + * \param[in] a Vector to circularly shift. + * \param[in] imm The shift order in chars. + * \return The shifted vector. + */ +static __m256i _mm256_rotaterli_si256(__m256i a, int imm); + +/*! + * Rotate the contents of a node towards the left by \b imm chars, that is the + * \b imm * 8 most significant bits become the least significant ones. + * \param[in] a The node to rotate. + * \param[in] imm The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \return The rotated node. + */ +static __m256i rotate_node_left(__m256i a, int imm, uint16_t ls); + +/*! + * Rotate the contents of a node towards the right by \b imm chars, that is the + * \b imm * 8 most significant bits become the least significant ones. + * \param[in] a The node to rotate. + * \param[in] imm The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \return The rotated node. + */ +static __m256i rotate_node_right(__m256i a, int imm, uint16_t ls); + +/*! + * Scale packed 8-bit integers in \b a by the scaling factor \b sf / #F2I. + * \param[in] a Vector of packed 8-bit integers. + * \param[in] sf Scaling factor. + * \return Vector of packed 8-bit integers with the scaling result. + */ +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf); + +void* create_ldpc_dec_c_avx2(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs_c_avx2* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t hrr = bgK + 4; + + if ((vp = srslte_vec_malloc(sizeof(struct ldpc_regs_c_avx2))) == NULL) { + return NULL; + } + + if ((vp->soft_bits = srslte_vec_malloc(bgN * sizeof(bg_node_t))) == NULL) { + free(vp); + return NULL; + } + + if ((vp->check_to_var = srslte_vec_malloc((hrr + 1) * bgM * sizeof(__m256i))) == NULL) { + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->var_to_check = srslte_vec_malloc((hrr + 1) * sizeof(__m256i))) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->rotated_v2c = srslte_vec_malloc((hrr + 1) * sizeof(__m256i))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->bgN = bgN; + vp->hrr = hrr; + vp->ls = ls; + + vp->scaling_fctr = _mm256_set1_epi16((uint16_t)(scaling_fctr * F2I)); + + return vp; +} + +void delete_ldpc_dec_c_avx2(void* p) +{ + struct ldpc_regs_c_avx2* vp = p; + + if (vp != NULL) { + free(vp->rotated_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + } +} + +int init_ldpc_dec_c_avx2(void* p, const int8_t* llrs, uint16_t ls) +{ + struct ldpc_regs_c_avx2* vp = p; + int i = 0; + int j = 0; + + if (p == NULL) { + return -1; + } + + // the first 2 x LS bits of the codeword are not sent + vp->soft_bits[0].v = _mm256_set1_epi8(0); + vp->soft_bits[1].v = _mm256_set1_epi8(0); + for (i = 2; i < vp->bgN; i++) { + for (j = 0; j < ls; j++) { + vp->soft_bits[i].c[j] = llrs[(i - 2) * ls + j]; + } + bzero(&(vp->soft_bits[i].c[ls]), (SRSLTE_AVX2_B_SIZE - ls) * sizeof(int8_t)); + } + + bzero(vp->check_to_var, (vp->hrr + 1) * vp->bgM * sizeof(__m256i)); + bzero(vp->var_to_check, (vp->hrr + 1) * sizeof(__m256i)); + return 0; +} + +int update_ldpc_var_to_check_c_avx2(void* p, int i_layer) +{ + struct ldpc_regs_c_avx2* vp = p; + + if (p == NULL) { + return -1; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1); + + // Update the high-rate region. + inner_var_to_check_c_avx2(&(vp->soft_bits[0].v), this_check_to_var, vp->var_to_check, infinity7, vp->hrr); + + if (i_layer >= 4) { + // Update the extension region. + inner_var_to_check_c_avx2(&(vp->soft_bits[0].v) + vp->hrr + i_layer - 4, + this_check_to_var + vp->hrr, + vp->var_to_check + vp->hrr, + infinity7, + 1); + } + + return 0; +} + +int update_ldpc_check_to_var_c_avx2(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + + uint16_t shift = 0; + int i_v2c_base = 0; + + __m256i* this_rotated_v2c = NULL; + + __m256i this_abs_v2c_epi8; + __m256i minp_v2c_epi8 = _mm256_set1_epi8(INT8_MAX); + __m256i mins_v2c_epi8 = _mm256_set1_epi8(INT8_MAX); + __m256i prod_v2c_epi8 = _mm256_set1_epi8(0); + __m256i mask_sign_epi8; + __m256i mask_min_epi8; + __m256i help_min_epi8; + __m256i min_ix_epi8; + __m256i current_ix_epi8; + + int8_t current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + + this_rotated_v2c = vp->rotated_v2c + i; + *this_rotated_v2c = rotate_node_right(vp->var_to_check[i_v2c_base], shift, vp->ls); + // mask_sign is 1 if this_rotated_v2c is strictly negative + mask_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, *this_rotated_v2c); + prod_v2c_epi8 = _mm256_xor_si256(prod_v2c_epi8, mask_sign_epi8); + + this_abs_v2c_epi8 = _mm256_abs_epi8(*this_rotated_v2c); + // mask_min is 1 if this_abs_v2c is strictly smaller tha minp_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(minp_v2c_epi8, this_abs_v2c_epi8); + help_min_epi8 = _mm256_blendv_epi8(this_abs_v2c_epi8, minp_v2c_epi8, mask_min_epi8); + minp_v2c_epi8 = _mm256_blendv_epi8(minp_v2c_epi8, this_abs_v2c_epi8, mask_min_epi8); + min_ix_epi8 = _mm256_blendv_epi8(min_ix_epi8, current_ix_epi8, mask_min_epi8); + + // mask_min is 1 if this_abs_v2c is strictly smaller tha mins_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(mins_v2c_epi8, this_abs_v2c_epi8); + mins_v2c_epi8 = _mm256_blendv_epi8(mins_v2c_epi8, help_min_epi8, mask_min_epi8); + + current_var_index = (*these_var_indices)[i + 1]; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1); + current_var_index = (*these_var_indices)[0]; + + __m256i mask_is_min_epi8; + __m256i this_c2v_epi8; + __m256i help_c2v_epi8; + __m256i final_sign_epi8; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + + this_rotated_v2c = vp->rotated_v2c + i; + // mask_sign is 1 if this_rotated_v2c is strictly negative + final_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, *this_rotated_v2c); + final_sign_epi8 = _mm256_xor_si256(final_sign_epi8, prod_v2c_epi8); + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + mask_is_min_epi8 = _mm256_cmpeq_epi8(current_ix_epi8, min_ix_epi8); + this_c2v_epi8 = _mm256_blendv_epi8(minp_v2c_epi8, mins_v2c_epi8, mask_is_min_epi8); + this_c2v_epi8 = _mm256_scalei_epi8(this_c2v_epi8, vp->scaling_fctr); + help_c2v_epi8 = _mm256_sign_epi8(this_c2v_epi8, final_sign_epi8); + this_c2v_epi8 = _mm256_blendv_epi8(this_c2v_epi8, help_c2v_epi8, final_sign_epi8); + + this_check_to_var[i_v2c_base] = rotate_node_left(this_c2v_epi8, shift, vp->ls); + + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_c_avx2(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2* vp = p; + if (p == NULL) { + return -1; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1); + + int i_bit_tmp_base = 0; + + __m256i tmp_epi8; + __m256i mask_epi8; + + int8_t current_var_index = (*these_var_indices)[0]; + + for (int i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + i_bit_tmp_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + + tmp_epi8 = _mm256_adds_epi8(this_check_to_var[i_bit_tmp_base], vp->var_to_check[i_bit_tmp_base]); + + // tmp = (tmp > infty7) : infty8 ? tmp + mask_epi8 = _mm256_cmpgt_epi8(tmp_epi8, infty7_epi8); + tmp_epi8 = _mm256_blendv_epi8(tmp_epi8, infty8_epi8, mask_epi8); + + // tmp = (tmp < -infty7) : -infty8 ? tmp + mask_epi8 = _mm256_cmpgt_epi8(neg_infty7_epi8, tmp_epi8); + vp->soft_bits[current_var_index].v = _mm256_blendv_epi8(tmp_epi8, neg_infty8_epi8, mask_epi8); + + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int extract_ldpc_message_c_avx2(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs_c_avx2* vp = p; + + int j = 0; + + for (int i = 0; i < liftK / vp->ls; i++) { + for (j = 0; j < vp->ls; j++) { + message[i * vp->ls + j] = (vp->soft_bits[i].c[j] < 0); + } + } + + return 0; +} + +static void +inner_var_to_check_c_avx2(const __m256i* x, const __m256i* y, __m256i* z, const uint8_t clip, const uint32_t len) +{ + unsigned i = 0; + + __m256i x_epi8; + __m256i y_epi8; + __m256i z_epi8; + __m256i mask_epi8; + __m256i help_sub_epi8; + __m256i clip_epi8 = _mm256_set1_epi8(clip); + __m256i neg_clip_epi8 = _mm256_set1_epi8((char)(-clip)); + + for (i = 0; i < len; i++) { + x_epi8 = x[i]; + y_epi8 = y[i]; + + // z = (x-y > clip) ? clip : x-y + help_sub_epi8 = _mm256_subs_epi8(x_epi8, y_epi8); + mask_epi8 = _mm256_cmpgt_epi8(help_sub_epi8, clip_epi8); + z_epi8 = _mm256_blendv_epi8(help_sub_epi8, clip_epi8, mask_epi8); + + // z = (z < -clip) ? -clip : z + mask_epi8 = _mm256_cmpgt_epi8(neg_clip_epi8, z_epi8); + z_epi8 = _mm256_blendv_epi8(z_epi8, neg_clip_epi8, mask_epi8); + + // ensure that x = +/- infinity => z = +/- infinity + // z = (x < infinity) ? z : infinity + mask_epi8 = _mm256_cmpgt_epi8(infty8_epi8, x_epi8); + z_epi8 = _mm256_blendv_epi8(infty8_epi8, z_epi8, mask_epi8); + + // z = (x > - infinity) ? z : - infinity + mask_epi8 = _mm256_cmpgt_epi8(x_epi8, neg_infty8_epi8); + z[i] = _mm256_blendv_epi8(neg_infty8_epi8, z_epi8, mask_epi8); + } +} + +static __m256i _mm256_rotatelli_si256(__m256i a, int imm) +{ + __m256i rotated_block_a[4]; + + // rotate left a as if made of 64-bit blocks: rotated_block_a[i] contains the + // rotation by i units + rotated_block_a[0] = a; // blocks 0 - 1 - 2 - 3 + rotated_block_a[1] = _mm256_permute4x64_epi64(a, 147); // 3 - 0 - 1 - 2 + rotated_block_a[2] = _mm256_permute4x64_epi64(a, 78); // 2 - 3 - 0 - 1 + rotated_block_a[3] = _mm256_permute4x64_epi64(a, 57); // 1 - 2 - 3 - 0 + + // rotation index we are interested in + int step1 = imm / 8; + // small-step rotation + int left = imm % 8; + // next block, for carry-over + int step2 = (step1 + 1) % 4; + + // shift right each block + __m256i reg1 = _mm256_slli_epi64(rotated_block_a[step1], left * 8); + // carry-over from the next block + __m256i reg2 = _mm256_srli_epi64(rotated_block_a[step2], (8 - left) * 8); + + return _mm256_xor_si256(reg1, reg2); +} + +static __m256i _mm256_rotaterli_si256(__m256i a, int imm) +{ + __m256i rotated_block_a[4]; + + // rotate right a as if made of 64-bit blocks: rotated_block_a[i] contains the + // rotation by i units + rotated_block_a[0] = a; // blocks 0 - 1 - 2 - 3 + rotated_block_a[1] = _mm256_permute4x64_epi64(a, 57); // 1 - 2 - 3 - 0 + rotated_block_a[2] = _mm256_permute4x64_epi64(a, 78); // 2 - 3 - 0 - 1 + rotated_block_a[3] = _mm256_permute4x64_epi64(a, 147); // 3 - 0 - 1 - 2 + + // rotation index we are interested in + int step1 = imm / 8; + // small-step rotation + int left = imm % 8; + // next block, for carry-over + int step2 = (step1 + 1) % 4; + + // shift right each block + __m256i reg1 = _mm256_srli_epi64(rotated_block_a[step1], left * 8); + // carry-over from the next block + __m256i reg2 = _mm256_slli_epi64(rotated_block_a[step2], (8 - left) * 8); + + return _mm256_xor_si256(reg1, reg2); +} + +static __m256i rotate_node_left(__m256i a, int imm, uint16_t ls) +{ + if (imm == 0) { + return a; + } + __m256i step1 = _mm256_rotatelli_si256(a, imm); + if (ls == SRSLTE_AVX2_B_SIZE) { + return step1; + } + + __m256i step2 = _mm256_rotaterli_si256(a, ls - imm); + + step1 = _mm256_and_si256(step1, mask_most_epi8[imm]); + step2 = _mm256_and_si256(step2, mask_least_epi8[imm]); + + step1 = _mm256_xor_si256(step1, step2); + + return step1; + ; +} + +static __m256i rotate_node_right(__m256i a, int imm, uint16_t ls) +{ + if (imm == 0) { + return a; + } + __m256i step1 = _mm256_rotaterli_si256(a, imm); + if (ls == SRSLTE_AVX2_B_SIZE) { + return step1; + } + + __m256i step2 = _mm256_rotatelli_si256(a, ls - imm); + + step1 = _mm256_and_si256(step1, mask_least_epi8[ls - imm]); + step2 = _mm256_and_si256(step2, mask_most_epi8[ls - imm]); + + step1 = _mm256_xor_si256(step1, step2); + + return step1; +} + +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf) +{ + __m256i even_epi16 = _mm256_and_si256(a, mask_even_epi8); + __m256i odd_epi16 = _mm256_srli_epi16(a, 8); + + __m256i p_even_epi16 = _mm256_mulhi_epu16(even_epi16, sf); + __m256i p_odd_epi16 = _mm256_mulhi_epu16(odd_epi16, sf); + + p_odd_epi16 = _mm256_slli_epi16(p_odd_epi16, 8); + + return _mm256_xor_si256(p_even_epi16, p_odd_epi16); +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2_flood.c b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2_flood.c new file mode 100644 index 000000000..06f6afdbe --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2_flood.c @@ -0,0 +1,572 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_c_avx2_flood.c + * \brief Definition LDPC decoder inner functions working + * with 8-bit integer-valued LLRs (AVX2 version, flooded scheduling). + * + * Even if the inner representation is based on 8 bits, check-to-variable and + * variable-to-check messages are actually represented with 7 bits, the + * remaining bit is used to represent infinity. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include + +#include "../utils_avx2.h" +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/vector.h" + +#ifdef LV_HAVE_AVX2 + +#include + +#include "ldpc_avx2_consts.h" + +#define F2I 65535 /*!< \brief Used for float to int conversion---float f is stored as (int)(f*F2I). */ + +/*! + * \brief Represents a node of the base factor graph. + */ +typedef union bg_node_t { + int8_t c[SRSLTE_AVX2_B_SIZE]; /*!< Each base node may contain up to \ref SRSLTE_AVX2_B_SIZE lifted nodes. */ + __m256i v; /*!< All the lifted nodes of the current base node as a 256-bit line. */ +} bg_node_t; + +/*! + * \brief Maximum message magnitude. + * Messages use a 7-bit quantization. Soft bits use the remaining bit to denote infinity. + */ +static const int8_t infinity7 = (1U << 6U) - 1; + +/*! + * \brief Inner registers for the LDPC decoder that works with 8-bit integer-valued LLRs. + */ +struct ldpc_regs_c_avx2_flood { + __m256i scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ + + bg_node_t* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + __m256i* llrs; /*!< \brief A-priori log-likelihood ratios. */ + __m256i* check_to_var; /*!< \brief Check-to-variable messages. */ + __m256i* var_to_check; /*!< \brief Variable-to-check messages. */ + __m256i* rotated_v2c; /*!< \brief To store a rotated version of the variable-to-check messages. */ + + uint16_t ls; /*!< \brief Lifting size. */ + uint8_t hrr; /*!< \brief Number of variable nodes in the high-rate region (before lifting). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint8_t bgN; /*!< \brief Number of variable nodes (before lifting). */ +}; + +/*! + * Carries out the actual update of the variable-to-check messages. It basically + * consists in \f$ z = x - y \f$ (as vectors). However, first it checks whether + * \f$\lvert x[i] \rvert = 2^{7}-1 \f$ (our representation of infinity) to + * ensure it is properly propagated. Also, the subtraction is saturated between + * \f$- clip\f$ and \f$+ clip\f$. + * \param[in] x Minuend: array we subtract from (in practice, the soft bits). + * \param[in] y Subtrahend: array to be subtracted (in practice, the + * check-to-variable messages). + * \param[out] z Resulting difference array(in practice, the updated + * variable-to-check messages). + * \param[in] clip The saturation value. + * \param[in] len The length of the vectors. + */ +static void inner_var_to_check_c_avx2(const __m256i* x, const __m256i* y, __m256i* z, uint8_t clip, uint32_t len); + +/*! + * Rotate the content of an __m256i vector (first input) towards the left by + * the number of chars specified by the second input (i.e., the \b imm * 8 least + * significant bits become the \b imm * 8 most significant bits). + * \param[in] a Vector to circularly shift. + * \param[in] imm The shift order in chars. + * \return The shifted vector. + */ +static __m256i _mm256_rotatelli_si256(__m256i a, int imm); + +/*! + * Rotate the content of an __m256i vector (first input) towards the right by + * the number of chars specified by the second input (i.e., the \b imm * 8 most + * significant bits become the \b imm * 8 least significant bits). + * \param[in] a Vector to circularly shift. + * \param[in] imm The shift order in chars. + * \return The shifted vector. + */ +static __m256i _mm256_rotaterli_si256(__m256i a, int imm); + +/*! + * Rotate the contents of a node towards the left by \b imm chars, that is the + * \b imm * 8 most significant bits become the least significant ones. + * \param[in] a The node to rotate. + * \param[in] imm The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \return The rotated node. + */ +static __m256i rotate_node_left(__m256i a, int imm, uint16_t ls); + +/*! + * Rotate the contents of a node towards the right by \b imm chars, that is the + * \b imm * 8 most significant bits become the least significant ones. + * \param[in] a The node to rotate. + * \param[in] imm The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \return The rotated node. + */ +static __m256i rotate_node_right(__m256i a, int imm, uint16_t ls); + +/*! + * Scale packed 8-bit integers in \b a by the scaling factor \b sf / #F2I. + * \param[in] a Vector of packed 8-bit integers. + * \param[in] sf Scaling factor. + * \return Vector of packed 8-bit integers with the scaling result. + */ +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf); + +void* create_ldpc_dec_c_avx2_flood(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs_c_avx2_flood* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t hrr = bgK + 4; + + if ((vp = srslte_vec_malloc(sizeof(struct ldpc_regs_c_avx2_flood))) == NULL) { + return NULL; + } + + if ((vp->llrs = srslte_vec_malloc(bgN * sizeof(__m256i))) == NULL) { + free(vp); + return NULL; + } + + if ((vp->soft_bits = srslte_vec_malloc(bgN * sizeof(bg_node_t))) == NULL) { + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->check_to_var = srslte_vec_malloc((hrr + 1) * bgM * sizeof(__m256i))) == NULL) { + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->var_to_check = srslte_vec_malloc((hrr + 1) * bgM * sizeof(__m256i))) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->rotated_v2c = srslte_vec_malloc((hrr + 1) * sizeof(__m256i))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->bgN = bgN; + vp->hrr = hrr; + vp->ls = ls; + + vp->scaling_fctr = _mm256_set1_epi16((uint16_t)(scaling_fctr * F2I)); + + return vp; +} + +void delete_ldpc_dec_c_avx2_flood(void* p) +{ + struct ldpc_regs_c_avx2_flood* vp = p; + + if (vp != NULL) { + free(vp->rotated_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + } +} + +int init_ldpc_dec_c_avx2_flood(void* p, const int8_t* llrs, uint16_t ls) +{ + struct ldpc_regs_c_avx2_flood* vp = p; + int i = 0; + int j = 0; + + if (p == NULL) { + return -1; + } + + // the first 2 x LS bits of the codeword are not sent + vp->soft_bits[0].v = _mm256_set1_epi8(0); + vp->soft_bits[1].v = _mm256_set1_epi8(0); + vp->llrs[0] = _mm256_set1_epi8(0); + vp->llrs[1] = _mm256_set1_epi8(0); + for (i = 2; i < vp->bgN; i++) { + for (j = 0; j < ls; j++) { + vp->soft_bits[i].c[j] = llrs[(i - 2) * ls + j]; + } + bzero(&(vp->soft_bits[i].c[ls]), (SRSLTE_AVX2_B_SIZE - ls) * sizeof(int8_t)); + vp->llrs[i] = vp->soft_bits[i].v; + } + + bzero(vp->check_to_var, (vp->hrr + 1) * vp->bgM * sizeof(__m256i)); + bzero(vp->var_to_check, (vp->hrr + 1) * vp->bgM * sizeof(__m256i)); + return 0; +} + +int update_ldpc_var_to_check_c_avx2_flood(void* p, int i_layer) +{ + struct ldpc_regs_c_avx2_flood* vp = p; + + if (p == NULL) { + return -1; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1); + __m256i* this_var_to_check = vp->var_to_check + i_layer * (vp->hrr + 1); + + // Update the high-rate region. + inner_var_to_check_c_avx2(&(vp->soft_bits[0].v), this_check_to_var, this_var_to_check, infinity7, vp->hrr); + + if (i_layer >= 4) { + // Update the extension region. + inner_var_to_check_c_avx2(&(vp->soft_bits[0].v) + vp->hrr + i_layer - 4, + this_check_to_var + vp->hrr, + this_var_to_check + vp->hrr, + infinity7, + 1); + } + + return 0; +} + +int update_ldpc_check_to_var_c_avx2_flood(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2_flood* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + + uint16_t shift = 0; + int i_v2c_base = 0; + + __m256i* this_rotated_v2c = NULL; + + __m256i this_abs_v2c_epi8; + __m256i minp_v2c_epi8 = _mm256_set1_epi8(INT8_MAX); + __m256i mins_v2c_epi8 = _mm256_set1_epi8(INT8_MAX); + __m256i prod_v2c_epi8 = _mm256_set1_epi8(0); + __m256i mask_sign_epi8; + __m256i mask_min_epi8; + __m256i help_min_epi8; + __m256i min_ix_epi8; + __m256i current_ix_epi8; + + int8_t current_var_index = (*these_var_indices)[0]; + + __m256i* this_var_to_check = vp->var_to_check + i_layer * (vp->hrr + 1); + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + + this_rotated_v2c = vp->rotated_v2c + i; + *this_rotated_v2c = rotate_node_right(this_var_to_check[i_v2c_base], shift, vp->ls); + // mask_sign is 1 if this_rotated_v2c is strictly negative + mask_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, *this_rotated_v2c); + prod_v2c_epi8 = _mm256_xor_si256(prod_v2c_epi8, mask_sign_epi8); + + this_abs_v2c_epi8 = _mm256_abs_epi8(*this_rotated_v2c); + // mask_min is 1 if this_abs_v2c is strictly smaller tha minp_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(minp_v2c_epi8, this_abs_v2c_epi8); + help_min_epi8 = _mm256_blendv_epi8(this_abs_v2c_epi8, minp_v2c_epi8, mask_min_epi8); + minp_v2c_epi8 = _mm256_blendv_epi8(minp_v2c_epi8, this_abs_v2c_epi8, mask_min_epi8); + min_ix_epi8 = _mm256_blendv_epi8(min_ix_epi8, current_ix_epi8, mask_min_epi8); + + // mask_min is 1 if this_abs_v2c is strictly smaller tha mins_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(mins_v2c_epi8, this_abs_v2c_epi8); + mins_v2c_epi8 = _mm256_blendv_epi8(mins_v2c_epi8, help_min_epi8, mask_min_epi8); + + current_var_index = (*these_var_indices)[i + 1]; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1); + current_var_index = (*these_var_indices)[0]; + + __m256i mask_is_min_epi8; + __m256i this_c2v_epi8; + __m256i help_c2v_epi8; + __m256i final_sign_epi8; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + + this_rotated_v2c = vp->rotated_v2c + i; + // mask_sign is 1 if this_rotated_v2c is strictly negative + final_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, *this_rotated_v2c); + final_sign_epi8 = _mm256_xor_si256(final_sign_epi8, prod_v2c_epi8); + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + mask_is_min_epi8 = _mm256_cmpeq_epi8(current_ix_epi8, min_ix_epi8); + this_c2v_epi8 = _mm256_blendv_epi8(minp_v2c_epi8, mins_v2c_epi8, mask_is_min_epi8); + this_c2v_epi8 = _mm256_scalei_epi8(this_c2v_epi8, vp->scaling_fctr); + help_c2v_epi8 = _mm256_sign_epi8(this_c2v_epi8, final_sign_epi8); + this_c2v_epi8 = _mm256_blendv_epi8(this_c2v_epi8, help_c2v_epi8, final_sign_epi8); + + this_check_to_var[i_v2c_base] = rotate_node_left(this_c2v_epi8, shift, vp->ls); + + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_c_avx2_flood(void* p, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2_flood* vp = p; + if (p == NULL) { + return -1; + } + + __m256i* this_check_to_var = NULL; + + int i = 0; + int i_layer = 0; + int i_bit_tmp_base = 0; + int8_t current_var_index = 0; + + __m256i tmp_epi8; + __m256i mask_epi8; + + for (i = 0; i < vp->bgN; i++) { + vp->soft_bits[i].v = vp->llrs[i]; + } + + for (i_layer = 0; i_layer < vp->bgM; i_layer++) { + current_var_index = these_var_indices[i_layer][0]; + + this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1); + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + i_bit_tmp_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + + tmp_epi8 = _mm256_adds_epi8(this_check_to_var[i_bit_tmp_base], vp->soft_bits[current_var_index].v); + + // tmp = (tmp > infty7) : infty8 ? tmp + mask_epi8 = _mm256_cmpgt_epi8(tmp_epi8, infty7_epi8); + tmp_epi8 = _mm256_blendv_epi8(tmp_epi8, infty8_epi8, mask_epi8); + + // tmp = (tmp < -infty7) : -infty8 ? tmp + mask_epi8 = _mm256_cmpgt_epi8(neg_infty7_epi8, tmp_epi8); + vp->soft_bits[current_var_index].v = _mm256_blendv_epi8(tmp_epi8, neg_infty8_epi8, mask_epi8); + + current_var_index = these_var_indices[i_layer][i + 1]; + } + } + + return 0; +} + +int extract_ldpc_message_c_avx2_flood(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs_c_avx2_flood* vp = p; + + int j = 0; + + for (int i = 0; i < liftK / vp->ls; i++) { + for (j = 0; j < vp->ls; j++) { + message[i * vp->ls + j] = (vp->soft_bits[i].c[j] < 0); + } + } + + return 0; +} + +static void +inner_var_to_check_c_avx2(const __m256i* x, const __m256i* y, __m256i* z, const uint8_t clip, const uint32_t len) +{ + unsigned i = 0; + + __m256i x_epi8; + __m256i y_epi8; + __m256i z_epi8; + __m256i mask_epi8; + __m256i help_sub_epi8; + __m256i clip_epi8 = _mm256_set1_epi8(clip); + __m256i neg_clip_epi8 = _mm256_set1_epi8((char)(-clip)); + + for (i = 0; i < len; i++) { + x_epi8 = x[i]; + y_epi8 = y[i]; + + // z = (x-y > clip) ? clip : x-y + help_sub_epi8 = _mm256_subs_epi8(x_epi8, y_epi8); + mask_epi8 = _mm256_cmpgt_epi8(help_sub_epi8, clip_epi8); + z_epi8 = _mm256_blendv_epi8(help_sub_epi8, clip_epi8, mask_epi8); + + // z = (z < -clip) ? -clip : z + mask_epi8 = _mm256_cmpgt_epi8(neg_clip_epi8, z_epi8); + z_epi8 = _mm256_blendv_epi8(z_epi8, neg_clip_epi8, mask_epi8); + + // ensure that x = +/- infinity => z = +/- infinity + // z = (x < infinity) ? z : infinity + mask_epi8 = _mm256_cmpgt_epi8(infty8_epi8, x_epi8); + z_epi8 = _mm256_blendv_epi8(infty8_epi8, z_epi8, mask_epi8); + + // z = (x > - infinity) ? z : - infinity + mask_epi8 = _mm256_cmpgt_epi8(x_epi8, neg_infty8_epi8); + z[i] = _mm256_blendv_epi8(neg_infty8_epi8, z_epi8, mask_epi8); + } +} + +static __m256i _mm256_rotatelli_si256(__m256i a, int imm) +{ + __m256i rotated_block_a[4]; + + // rotate left a as if made of 64-bit blocks: rotated_block_a[i] contains the + // rotation by i units + rotated_block_a[0] = a; // blocks 0 - 1 - 2 - 3 + rotated_block_a[1] = _mm256_permute4x64_epi64(a, 147); // 3 - 0 - 1 - 2 + rotated_block_a[2] = _mm256_permute4x64_epi64(a, 78); // 2 - 3 - 0 - 1 + rotated_block_a[3] = _mm256_permute4x64_epi64(a, 57); // 1 - 2 - 3 - 0 + + // rotation index we are interested in + int step1 = imm / 8; + // small-step rotation + int left = imm % 8; + // next block, for carry-over + int step2 = (step1 + 1) % 4; + + // shift right each block + __m256i reg1 = _mm256_slli_epi64(rotated_block_a[step1], left * 8); + // carry-over from the next block + __m256i reg2 = _mm256_srli_epi64(rotated_block_a[step2], (8 - left) * 8); + + return _mm256_xor_si256(reg1, reg2); +} + +static __m256i _mm256_rotaterli_si256(__m256i a, int imm) +{ + __m256i rotated_block_a[4]; + + // rotate right a as if made of 64-bit blocks: rotated_block_a[i] contains the + // rotation by i units + rotated_block_a[0] = a; // blocks 0 - 1 - 2 - 3 + rotated_block_a[1] = _mm256_permute4x64_epi64(a, 57); // 1 - 2 - 3 - 0 + rotated_block_a[2] = _mm256_permute4x64_epi64(a, 78); // 2 - 3 - 0 - 1 + rotated_block_a[3] = _mm256_permute4x64_epi64(a, 147); // 3 - 0 - 1 - 2 + + // rotation index we are interested in + int step1 = imm / 8; + // small-step rotation + int left = imm % 8; + // next block, for carry-over + int step2 = (step1 + 1) % 4; + + // shift right each block + __m256i reg1 = _mm256_srli_epi64(rotated_block_a[step1], left * 8); + // carry-over from the next block + __m256i reg2 = _mm256_slli_epi64(rotated_block_a[step2], (8 - left) * 8); + + return _mm256_xor_si256(reg1, reg2); +} + +static __m256i rotate_node_left(__m256i a, int imm, uint16_t ls) +{ + if (imm == 0) { + return a; + } + __m256i step1 = _mm256_rotatelli_si256(a, imm); + if (ls == SRSLTE_AVX2_B_SIZE) { + return step1; + } + + __m256i step2 = _mm256_rotaterli_si256(a, ls - imm); + + step1 = _mm256_and_si256(step1, mask_most_epi8[imm]); + step2 = _mm256_and_si256(step2, mask_least_epi8[imm]); + + step1 = _mm256_xor_si256(step1, step2); + + return step1; + ; +} + +static __m256i rotate_node_right(__m256i a, int imm, uint16_t ls) +{ + if (imm == 0) { + return a; + } + __m256i step1 = _mm256_rotaterli_si256(a, imm); + if (ls == SRSLTE_AVX2_B_SIZE) { + return step1; + } + + __m256i step2 = _mm256_rotatelli_si256(a, ls - imm); + + step1 = _mm256_and_si256(step1, mask_least_epi8[ls - imm]); + step2 = _mm256_and_si256(step2, mask_most_epi8[ls - imm]); + + step1 = _mm256_xor_si256(step1, step2); + + return step1; +} + +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf) +{ + __m256i even_epi16 = _mm256_and_si256(a, mask_even_epi8); + __m256i odd_epi16 = _mm256_srli_epi16(a, 8); + + __m256i p_even_epi16 = _mm256_mulhi_epu16(even_epi16, sf); + __m256i p_odd_epi16 = _mm256_mulhi_epu16(odd_epi16, sf); + + p_odd_epi16 = _mm256_slli_epi16(p_odd_epi16, 8); + + return _mm256_xor_si256(p_even_epi16, p_odd_epi16); +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long.c b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long.c new file mode 100644 index 000000000..6f55e34b9 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long.c @@ -0,0 +1,541 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_c_avx2long.c + * \brief Definition LDPC decoder inner functions working + * with 8-bit integer-valued LLRs (AVX2 version, large lifting size). + * + * Even if the inner representation is based on 8 bits, check-to-variable and + * variable-to-check messages are actually represented with 7 bits, the + * remaining bit is used to represent infinity. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include + +#include "../utils_avx2.h" +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/vector.h" + +#ifdef LV_HAVE_AVX2 + +#include + +#include "ldpc_avx2_consts.h" + +#define F2I 65535 /*!< \brief Used for float to int conversion---float f is stored as (int)(f*F2I). */ + +/*! + * \brief Represents a node of the base factor graph. + */ +typedef union bg_node_t { + int8_t c[SRSLTE_AVX2_B_SIZE]; /*!< Each base node may contain up to \ref SRSLTE_AVX2_B_SIZE lifted nodes. */ + __m256i v; /*!< All the lifted nodes of the current base node as a 256-bit line. */ +} bg_node_t; + +/*! + * \brief Maximum message magnitude. + * Messages use a 7-bit quantization. Soft bits use the remaining bit to denote infinity. + */ +static const int8_t infinity7 = (1U << 6U) - 1; + +/*! + * \brief Inner registers for the LDPC decoder that works with 8-bit integer-valued LLRs. + */ +struct ldpc_regs_c_avx2long { + __m256i scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ + + bg_node_t* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + __m256i* check_to_var; /*!< \brief Check-to-variable messages. */ + __m256i* var_to_check; /*!< \brief Variable-to-check messages. */ + + __m256i* rotated_v2c; /*!< \brief To store a rotated version of the variable-to-check messages. */ + __m256i* this_c2v_epi8; /*!< \brief Helper register for the current c2v node. */ + __m256i* minp_v2c_epi8; /*!< \brief Helper register for the minimum v2c message. */ + __m256i* mins_v2c_epi8; /*!< \brief Helper register for the second minimum v2c message. */ + __m256i* prod_v2c_epi8; /*!< \brief Helper register for the sign of the product of all v2c messages. */ + __m256i* min_ix_epi8; /*!< \brief Helper register for the index of the minimum v2c message. */ + + uint16_t ls; /*!< \brief Lifting size. */ + uint8_t hrr; /*!< \brief Number of variable nodes in the high-rate region (before lifting). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint8_t bgN; /*!< \brief Number of variable nodes (before lifting). */ + + uint8_t n_subnodes; /*!< \brief Number of subnodes. */ +}; + +/*! + * Carries out the actual update of the variable-to-check messages. It basically + * consists in \f$ z = x - y \f$ (as vectors). However, first it checks whether + * \f$\lvert x[i] \rvert = 2^{7}-1 \f$ (our representation of infinity) to + * ensure it is properly propagated. Also, the subtraction is saturated between + * \f$- clip\f$ and \f$+ clip\f$. + * \param[in] x Minuend: array we subtract from (in practice, the soft bits). + * \param[in] y Subtrahend: array to be subtracted (in practice, the + * check-to-variable messages). + * \param[out] z Resulting difference array(in practice, the updated + * variable-to-check messages). + * \param[in] clip The saturation value. + * \param[in] len The length of the vectors. + */ +static void inner_var_to_check_c_avx2long(const __m256i* x, const __m256i* y, __m256i* z, uint8_t clip, uint32_t len); + +/*! + * Rotate the contents of a node towards the right by \b shift chars, that is the + * \b shift * 8 most significant bits become the least significant ones. + * \param[in] in_256i The node to rotate. + * \param[out] out The rotated node. + * \param[in] shift The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \param[in] n_subnodes The number of subnodes in each node. + * \return The rotated node. + */ +static void rotate_node_right(const __m256i* in_256i, __m256i* out, uint16_t shift, uint16_t ls, int8_t n_subnodes); + +/*! + * Scale packed 8-bit integers in \b a by the scaling factor \b sf / #F2I. + * \param[in] a Vector of packed 8-bit integers. + * \param[in] sf Scaling factor. + * \return Vector of packed 8-bit integers with the scaling result. + */ +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf); + +void* create_ldpc_dec_c_avx2long(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs_c_avx2long* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t hrr = bgK + 4; + + if ((vp = srslte_vec_malloc(sizeof(struct ldpc_regs_c_avx2long))) == NULL) { + return NULL; + } + + // compute number of subnodes + int left_out = ls % SRSLTE_AVX2_B_SIZE; + int n_subnodes = ls / SRSLTE_AVX2_B_SIZE + (left_out > 0); + + if ((vp->soft_bits = srslte_vec_malloc(bgN * n_subnodes * sizeof(bg_node_t))) == NULL) { + free(vp); + return NULL; + } + + if ((vp->check_to_var = srslte_vec_malloc((hrr + 1) * bgM * n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->var_to_check = srslte_vec_malloc((hrr + 1) * n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->minp_v2c_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->mins_v2c_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->prod_v2c_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->min_ix_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->rotated_v2c = srslte_vec_malloc((hrr + 1) * n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->min_ix_epi8); + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->this_c2v_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->rotated_v2c); + free(vp->min_ix_epi8); + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->bgN = bgN; + vp->hrr = hrr; + vp->ls = ls; + + vp->n_subnodes = n_subnodes; + + vp->scaling_fctr = _mm256_set1_epi16((uint16_t)(scaling_fctr * F2I)); + + return vp; +} + +void delete_ldpc_dec_c_avx2long(void* p) +{ + struct ldpc_regs_c_avx2long* vp = p; + + if (vp != NULL) { + free(vp->this_c2v_epi8); + free(vp->rotated_v2c); + free(vp->min_ix_epi8); + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + } +} + +int init_ldpc_dec_c_avx2long(void* p, const int8_t* llrs, uint16_t ls) +{ + struct ldpc_regs_c_avx2long* vp = p; + int i = 0; + int j = 0; + int k = 0; + + if (p == NULL) { + return -1; + } + + for (k = 0; k < vp->n_subnodes; k++) { + vp->soft_bits[k].v = _mm256_set1_epi8(0); + vp->soft_bits[vp->n_subnodes + k].v = _mm256_set1_epi8(0); + } + for (i = 2; i < vp->bgN; i++) { + for (j = 0; j < vp->n_subnodes; j++) { + for (k = 0; (k < SRSLTE_AVX2_B_SIZE) && (j * SRSLTE_AVX2_B_SIZE + k < ls); k++) { + vp->soft_bits[i * vp->n_subnodes + j].c[k] = llrs[(i - 2) * ls + j * SRSLTE_AVX2_B_SIZE + k]; + } + } + bzero(&(vp->soft_bits[i * vp->n_subnodes + j - 1].c[k]), (SRSLTE_AVX2_B_SIZE - k) * sizeof(int8_t)); + } + + bzero(vp->check_to_var, (vp->hrr + 1) * vp->bgM * vp->n_subnodes * sizeof(__m256i)); + bzero(vp->var_to_check, (vp->hrr + 1) * vp->n_subnodes * sizeof(__m256i)); + return 0; +} + +int update_ldpc_var_to_check_c_avx2long(void* p, int i_layer) +{ + struct ldpc_regs_c_avx2long* vp = p; + + if (p == NULL) { + return -1; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1) * vp->n_subnodes; + + // Update the high-rate region. + inner_var_to_check_c_avx2long( + &(vp->soft_bits[0].v), this_check_to_var, vp->var_to_check, infinity7, vp->hrr * vp->n_subnodes); + + if (i_layer >= 4) { + // Update the extension region. + inner_var_to_check_c_avx2long(&(vp->soft_bits[0].v) + (vp->hrr + i_layer - 4) * vp->n_subnodes, + this_check_to_var + vp->hrr * vp->n_subnodes, + vp->var_to_check + vp->hrr * vp->n_subnodes, + infinity7, + vp->n_subnodes); + } + + return 0; +} + +int update_ldpc_check_to_var_c_avx2long(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2long* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + int j = 0; + + uint16_t shift = 0; + int i_v2c_base = 0; + + __m256i* this_rotated_v2c = NULL; + + __m256i this_abs_v2c_epi8; + __m256i mask_sign_epi8; + __m256i mask_min_epi8; + __m256i help_min_epi8; + __m256i current_ix_epi8; + + for (j = 0; j < vp->n_subnodes; j++) { + vp->minp_v2c_epi8[j] = _mm256_set1_epi8(INT8_MAX); + vp->mins_v2c_epi8[j] = _mm256_set1_epi8(INT8_MAX); + vp->prod_v2c_epi8[j] = _mm256_set1_epi8(0); + } + + int8_t current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + i_v2c_base *= vp->n_subnodes; + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + + this_rotated_v2c = vp->rotated_v2c + i * vp->n_subnodes; + rotate_node_right(vp->var_to_check + i_v2c_base, this_rotated_v2c, shift, vp->ls, vp->n_subnodes); + + for (j = 0; j < vp->n_subnodes; j++) { + // mask_sign is 1 if this_v2c_epi8 is strictly negative + mask_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, this_rotated_v2c[j]); + vp->prod_v2c_epi8[j] = _mm256_xor_si256(vp->prod_v2c_epi8[j], mask_sign_epi8); + + this_abs_v2c_epi8 = _mm256_abs_epi8(this_rotated_v2c[j]); + // mask_min is 1 if this_abs_v2c is strictly smaller tha minp_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(vp->minp_v2c_epi8[j], this_abs_v2c_epi8); + help_min_epi8 = _mm256_blendv_epi8(this_abs_v2c_epi8, vp->minp_v2c_epi8[j], mask_min_epi8); + vp->minp_v2c_epi8[j] = _mm256_blendv_epi8(vp->minp_v2c_epi8[j], this_abs_v2c_epi8, mask_min_epi8); + vp->min_ix_epi8[j] = _mm256_blendv_epi8(vp->min_ix_epi8[j], current_ix_epi8, mask_min_epi8); + + // mask_min is 1 if this_abs_v2c is strictly smaller tha mins_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(vp->mins_v2c_epi8[j], this_abs_v2c_epi8); + vp->mins_v2c_epi8[j] = _mm256_blendv_epi8(vp->mins_v2c_epi8[j], help_min_epi8, mask_min_epi8); + } + + current_var_index = (*these_var_indices)[i + 1]; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1) * vp->n_subnodes; + current_var_index = (*these_var_indices)[0]; + + __m256i mask_is_min_epi8; + __m256i help_c2v_epi8; + __m256i final_sign_epi8; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + i_v2c_base *= vp->n_subnodes; + + this_rotated_v2c = vp->rotated_v2c + i * vp->n_subnodes; + + for (j = 0; j < vp->n_subnodes; j++) { + // mask_sign is 1 if this_v2c_epi8 is strictly negative + final_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, this_rotated_v2c[j]); + final_sign_epi8 = _mm256_xor_si256(final_sign_epi8, vp->prod_v2c_epi8[j]); + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + mask_is_min_epi8 = _mm256_cmpeq_epi8(current_ix_epi8, vp->min_ix_epi8[j]); + vp->this_c2v_epi8[j] = _mm256_blendv_epi8(vp->minp_v2c_epi8[j], vp->mins_v2c_epi8[j], mask_is_min_epi8); + vp->this_c2v_epi8[j] = _mm256_scalei_epi8(vp->this_c2v_epi8[j], vp->scaling_fctr); + help_c2v_epi8 = _mm256_sign_epi8(vp->this_c2v_epi8[j], final_sign_epi8); + vp->this_c2v_epi8[j] = _mm256_blendv_epi8(vp->this_c2v_epi8[j], help_c2v_epi8, final_sign_epi8); + } + // rotating right LS - shift positions is the same as rotating left shift positions + rotate_node_right(vp->this_c2v_epi8, this_check_to_var + i_v2c_base, vp->ls - shift, vp->ls, vp->n_subnodes); + + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_c_avx2long(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2long* vp = p; + if (p == NULL) { + return -1; + } + + int j = 0; + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1) * vp->n_subnodes; + + int i_bit_tmp_base = 0; + int i_bit_subnode = 0; + + __m256i tmp_epi8; + __m256i mask_epi8; + + int8_t current_var_index = (*these_var_indices)[0]; + int current_var_index_subnode = 0; + + for (int i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + current_var_index_subnode = current_var_index * vp->n_subnodes; + for (j = 0; j < vp->n_subnodes; j++) { + i_bit_tmp_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + i_bit_subnode = i_bit_tmp_base * vp->n_subnodes + j; + + tmp_epi8 = _mm256_adds_epi8(this_check_to_var[i_bit_subnode], vp->var_to_check[i_bit_subnode]); + + mask_epi8 = _mm256_cmpgt_epi8(tmp_epi8, infty7_epi8); + tmp_epi8 = _mm256_blendv_epi8(tmp_epi8, infty8_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(neg_infty7_epi8, tmp_epi8); + + vp->soft_bits[current_var_index_subnode + j].v = _mm256_blendv_epi8(tmp_epi8, neg_infty8_epi8, mask_epi8); + } + + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int extract_ldpc_message_c_avx2long(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs_c_avx2long* vp = p; + + int j = 0; + int k = 0; + + for (int i = 0; i < liftK / vp->ls; i++) { + for (j = 0; j < vp->n_subnodes; j++) { + for (k = 0; (k < SRSLTE_AVX2_B_SIZE) && (j * SRSLTE_AVX2_B_SIZE + k < vp->ls); k++) { + message[i * vp->ls + j * SRSLTE_AVX2_B_SIZE + k] = (vp->soft_bits[i * vp->n_subnodes + j].c[k] < 0); + } + } + } + + return 0; +} + +static void +inner_var_to_check_c_avx2long(const __m256i* x, const __m256i* y, __m256i* z, const uint8_t clip, const uint32_t len) +{ + unsigned i = 0; + + __m256i x_epi8; + __m256i y_epi8; + __m256i z_epi8; + __m256i mask_epi8; + __m256i help_sub_epi8; + __m256i clip_epi8 = _mm256_set1_epi8(clip); + __m256i neg_clip_epi8 = _mm256_set1_epi8((char)(-clip)); + + for (i = 0; i < len; i++) { + x_epi8 = x[i]; + y_epi8 = y[i]; + + help_sub_epi8 = _mm256_subs_epi8(x_epi8, y_epi8); + mask_epi8 = _mm256_cmpgt_epi8(help_sub_epi8, clip_epi8); + z_epi8 = _mm256_blendv_epi8(help_sub_epi8, clip_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(neg_clip_epi8, z_epi8); + z_epi8 = _mm256_blendv_epi8(z_epi8, neg_clip_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(infty8_epi8, x_epi8); + z_epi8 = _mm256_blendv_epi8(infty8_epi8, z_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(x_epi8, neg_infty8_epi8); + z[i] = _mm256_blendv_epi8(neg_infty8_epi8, z_epi8, mask_epi8); + } +} + +static void rotate_node_right(const __m256i* in_256i, __m256i* out, uint16_t shift, uint16_t ls, int8_t n_subnodes) +{ + const int8_t* in = (const int8_t*)in_256i; + + int16_t n_type1 = (ls - shift) / SRSLTE_AVX2_B_SIZE - (ls == SRSLTE_AVX2_B_SIZE); + int16_t n_type2 = n_subnodes - n_type1 - 1 - (ls == SRSLTE_AVX2_B_SIZE); + int16_t gap = (ls - shift) % SRSLTE_AVX2_B_SIZE; + + int16_t i = 0; + for (; i < n_type1; i++) { + out[i] = _mm256_loadu_si256((const __m256i*)(in + shift + i * SRSLTE_AVX2_B_SIZE)); + } + + __m256i tmp1 = _mm256_loadu_si256((const __m256i*)(in + shift + i * SRSLTE_AVX2_B_SIZE)); + __m256i tmp2 = _mm256_loadu_si256((const __m256i*)(in - gap)); + + out[i] = _mm256_blendv_epi8(tmp1, tmp2, mask_most_epi8[gap]); + + for (i = 1; i <= n_type2; i++) { + out[n_type1 + i] = _mm256_loadu_si256((const __m256i*)(in - gap + i * SRSLTE_AVX2_B_SIZE)); + } +} + +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf) +{ + __m256i even_epi16 = _mm256_and_si256(a, mask_even_epi8); + __m256i odd_epi16 = _mm256_srli_epi16(a, 8); + + __m256i p_even_epi16 = _mm256_mulhi_epu16(even_epi16, sf); + __m256i p_odd_epi16 = _mm256_mulhi_epu16(odd_epi16, sf); + + p_odd_epi16 = _mm256_slli_epi16(p_odd_epi16, 8); + + return _mm256_xor_si256(p_even_epi16, p_odd_epi16); +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long_flood.c b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long_flood.c new file mode 100644 index 000000000..83bb3d1ba --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_c_avx2long_flood.c @@ -0,0 +1,576 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_c_avx2long_flood.c + * \brief Definition LDPC decoder inner functions working + * with 8-bit integer-valued LLRs (flooded scheduling, AVX2 version, large lifting size). + * + * Even if the inner representation is based on 8 bits, check-to-variable and + * variable-to-check messages are actually represented with 7 bits, the + * remaining bit is used to represent infinity. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include + +#include "../utils_avx2.h" +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/vector.h" + +#ifdef LV_HAVE_AVX2 + +#include + +#include "ldpc_avx2_consts.h" + +#define F2I 65535 /*!< \brief Used for float to int conversion---float f is stored as (int)(f*F2I). */ + +/*! + * \brief Represents a node of the base factor graph. + */ +typedef union bg_node_t { + int8_t c[SRSLTE_AVX2_B_SIZE]; /*!< Each base node may contain up to \ref SRSLTE_AVX2_B_SIZE lifted nodes. */ + __m256i v; /*!< All the lifted nodes of the current base node as a 256-bit line. */ +} bg_node_t; + +/*! + * \brief Maximum message magnitude. + * Messages use a 7-bit quantization. Soft bits use the remaining bit to denote infinity. + */ +static const int8_t infinity7 = (1U << 6U) - 1; + +/*! + * \brief Inner registers for the LDPC decoder that works with 8-bit integer-valued LLRs. + */ +struct ldpc_regs_c_avx2long_flood { + __m256i scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ + + bg_node_t* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + __m256i* llrs; /*!< \brief A-priori log-likelihood ratios. */ + __m256i* check_to_var; /*!< \brief Check-to-variable messages. */ + __m256i* var_to_check; /*!< \brief Variable-to-check messages. */ + + __m256i* rotated_v2c; /*!< \brief To store a rotated version of the variable-to-check messages. */ + __m256i* this_c2v_epi8; /*!< \brief Helper register for the current c2v node. */ + __m256i* minp_v2c_epi8; /*!< \brief Helper register for the minimum v2c message. */ + __m256i* mins_v2c_epi8; /*!< \brief Helper register for the second minimum v2c message. */ + __m256i* prod_v2c_epi8; /*!< \brief Helper register for the sign of the product of all v2c messages. */ + __m256i* min_ix_epi8; /*!< \brief Helper register for the index of the minimum v2c message. */ + + uint16_t ls; /*!< \brief Lifting size. */ + uint8_t n_subnodes; /*!< \brief Number of subnodes. */ + uint8_t hrr; /*!< \brief Number of variable nodes in the high-rate region (before lifting). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint8_t bgN; /*!< \brief Number of variable nodes (before lifting). */ +}; + +/*! + * Carries out the actual update of the variable-to-check messages. It basically + * consists in \f$ z = x - y \f$ (as vectors). However, first it checks whether + * \f$\lvert x[i] \rvert = 2^{7}-1 \f$ (our representation of infinity) to + * ensure it is properly propagated. Also, the subtraction is saturated between + * \f$- clip\f$ and \f$+ clip\f$. + * \param[in] x Minuend: array we subtract from (in practice, the soft bits). + * \param[in] y Subtrahend: array to be subtracted (in practice, the + * check-to-variable messages). + * \param[out] z Resulting difference array(in practice, the updated + * variable-to-check messages). + * \param[in] clip The saturation value. + * \param[in] len The length of the vectors. + */ +static void inner_var_to_check_c_avx2(const __m256i* x, const __m256i* y, __m256i* z, uint8_t clip, uint32_t len); + +/*! + * Rotate the contents of a node towards the right by \b shift chars, that is the + * \b shift * 8 most significant bits become the least significant ones. + * \param[in] in_256i The node to rotate. + * \param[out] out The rotated node. + * \param[in] shift The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \param[in] n_subnodes The number of subnodes in each node. + * \return The rotated node. + */ +static void rotate_node_right(const __m256i* in_256i, __m256i* out, uint16_t shift, uint16_t ls, int8_t n_subnodes); + +/*! + * Scale packed 8-bit integers in \b a by the scaling factor \b sf / #F2I. + * \param[in] a Vector of packed 8-bit integers. + * \param[in] sf Scaling factor. + * \return Vector of packed 8-bit integers with the scaling result. + */ +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf); + +void* create_ldpc_dec_c_avx2long_flood(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs_c_avx2long_flood* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t hrr = bgK + 4; + + if ((vp = srslte_vec_malloc(sizeof(struct ldpc_regs_c_avx2long_flood))) == NULL) { + return NULL; + } + + // compute number of subnodes + int left_out = ls % SRSLTE_AVX2_B_SIZE; + int n_subnodes = ls / SRSLTE_AVX2_B_SIZE + (left_out > 0); + + if ((vp->llrs = srslte_vec_malloc(bgN * n_subnodes * sizeof(__m256i))) == NULL) { + free(vp); + return NULL; + } + + if ((vp->soft_bits = srslte_vec_malloc(bgN * n_subnodes * sizeof(bg_node_t))) == NULL) { + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->check_to_var = srslte_vec_malloc((hrr + 1) * bgM * n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->var_to_check = srslte_vec_malloc((hrr + 1) * bgM * n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->minp_v2c_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->mins_v2c_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->prod_v2c_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->min_ix_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->rotated_v2c = srslte_vec_malloc((hrr + 1) * n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->min_ix_epi8); + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->this_c2v_epi8 = srslte_vec_malloc(n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->rotated_v2c); + free(vp->min_ix_epi8); + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->bgN = bgN; + vp->hrr = hrr; + vp->ls = ls; + + vp->n_subnodes = n_subnodes; + + vp->scaling_fctr = _mm256_set1_epi16((uint16_t)(scaling_fctr * F2I)); + + return vp; +} + +void delete_ldpc_dec_c_avx2long_flood(void* p) +{ + struct ldpc_regs_c_avx2long_flood* vp = p; + + if (vp != NULL) { + free(vp->this_c2v_epi8); + free(vp->rotated_v2c); + free(vp->min_ix_epi8); + free(vp->prod_v2c_epi8); + free(vp->mins_v2c_epi8); + free(vp->minp_v2c_epi8); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + } +} + +int init_ldpc_dec_c_avx2long_flood(void* p, const int8_t* llrs, uint16_t ls) +{ + struct ldpc_regs_c_avx2long_flood* vp = p; + int i = 0; + int j = 0; + int k = 0; + + if (p == NULL) { + return -1; + } + + for (k = 0; k < vp->n_subnodes; k++) { + vp->soft_bits[k].v = _mm256_set1_epi8(0); + vp->soft_bits[vp->n_subnodes + k].v = _mm256_set1_epi8(0); + vp->llrs[k] = _mm256_set1_epi8(0); + vp->llrs[vp->n_subnodes + k] = _mm256_set1_epi8(0); + } + for (i = 2; i < vp->bgN; i++) { + for (j = 0; j < vp->n_subnodes; j++) { + for (k = 0; (k < SRSLTE_AVX2_B_SIZE) && (j * SRSLTE_AVX2_B_SIZE + k < ls); k++) { + vp->soft_bits[i * vp->n_subnodes + j].c[k] = llrs[(i - 2) * ls + j * SRSLTE_AVX2_B_SIZE + k]; + } + vp->llrs[i * vp->n_subnodes + j] = vp->soft_bits[i * vp->n_subnodes + j].v; + } + bzero(&(vp->soft_bits[i * vp->n_subnodes + j - 1].c[k]), (SRSLTE_AVX2_B_SIZE - k) * sizeof(int8_t)); + bzero((int8_t*)(vp->llrs + i * vp->n_subnodes + j - 1) + k, (SRSLTE_AVX2_B_SIZE - k) * sizeof(int8_t)); + } + + bzero(vp->check_to_var, (vp->hrr + 1) * vp->bgM * vp->n_subnodes * sizeof(__m256i)); + bzero(vp->var_to_check, (vp->hrr + 1) * vp->bgM * vp->n_subnodes * sizeof(__m256i)); + return 0; +} + +int update_ldpc_var_to_check_c_avx2long_flood(void* p, int i_layer) +{ + struct ldpc_regs_c_avx2long_flood* vp = p; + + if (p == NULL) { + return -1; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1) * vp->n_subnodes; + __m256i* this_var_to_check = vp->var_to_check + i_layer * (vp->hrr + 1) * vp->n_subnodes; + + // Update the high-rate region. + inner_var_to_check_c_avx2( + &(vp->soft_bits[0].v), this_check_to_var, this_var_to_check, infinity7, vp->hrr * vp->n_subnodes); + + if (i_layer >= 4) { + // Update the extension region. + inner_var_to_check_c_avx2(&(vp->soft_bits[0].v) + (vp->hrr + i_layer - 4) * vp->n_subnodes, + this_check_to_var + vp->hrr * vp->n_subnodes, + this_var_to_check + vp->hrr * vp->n_subnodes, + infinity7, + vp->n_subnodes); + } + + return 0; +} + +int update_ldpc_check_to_var_c_avx2long_flood(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2long_flood* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + int j = 0; + + uint16_t shift = 0; + int i_v2c_base = 0; + + __m256i* this_rotated_v2c = NULL; + + __m256i* this_var_to_check = vp->var_to_check + i_layer * (vp->hrr + 1) * vp->n_subnodes; + + __m256i this_abs_v2c_epi8; + __m256i mask_sign_epi8; + __m256i mask_min_epi8; + __m256i help_min_epi8; + __m256i current_ix_epi8; + + for (j = 0; j < vp->n_subnodes; j++) { + vp->minp_v2c_epi8[j] = _mm256_set1_epi8(INT8_MAX); + vp->mins_v2c_epi8[j] = _mm256_set1_epi8(INT8_MAX); + vp->prod_v2c_epi8[j] = _mm256_set1_epi8(0); + } + + int8_t current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + i_v2c_base *= vp->n_subnodes; + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + + this_rotated_v2c = vp->rotated_v2c + i * vp->n_subnodes; + rotate_node_right(this_var_to_check + i_v2c_base, this_rotated_v2c, shift, vp->ls, vp->n_subnodes); + + for (j = 0; j < vp->n_subnodes; j++) { + // mask_sign is 1 if this_v2c_epi8 is strictly negative + mask_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, this_rotated_v2c[j]); + vp->prod_v2c_epi8[j] = _mm256_xor_si256(vp->prod_v2c_epi8[j], mask_sign_epi8); + + this_abs_v2c_epi8 = _mm256_abs_epi8(this_rotated_v2c[j]); + // mask_min is 1 if this_abs_v2c is strictly smaller tha minp_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(vp->minp_v2c_epi8[j], this_abs_v2c_epi8); + help_min_epi8 = _mm256_blendv_epi8(this_abs_v2c_epi8, vp->minp_v2c_epi8[j], mask_min_epi8); + vp->minp_v2c_epi8[j] = _mm256_blendv_epi8(vp->minp_v2c_epi8[j], this_abs_v2c_epi8, mask_min_epi8); + vp->min_ix_epi8[j] = _mm256_blendv_epi8(vp->min_ix_epi8[j], current_ix_epi8, mask_min_epi8); + + // mask_min is 1 if this_abs_v2c is strictly smaller tha mins_v2c + mask_min_epi8 = _mm256_cmpgt_epi8(vp->mins_v2c_epi8[j], this_abs_v2c_epi8); + vp->mins_v2c_epi8[j] = _mm256_blendv_epi8(vp->mins_v2c_epi8[j], help_min_epi8, mask_min_epi8); + } + + current_var_index = (*these_var_indices)[i + 1]; + } + + __m256i* this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1) * vp->n_subnodes; + current_var_index = (*these_var_indices)[0]; + + __m256i mask_is_min_epi8; + __m256i help_c2v_epi8; + __m256i final_sign_epi8; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + i_v2c_base *= vp->n_subnodes; + + this_rotated_v2c = vp->rotated_v2c + i * vp->n_subnodes; + + for (j = 0; j < vp->n_subnodes; j++) { + // mask_sign is 1 if this_v2c_epi8 is strictly negative + final_sign_epi8 = _mm256_cmpgt_epi8(zero_epi8, this_rotated_v2c[j]); + final_sign_epi8 = _mm256_xor_si256(final_sign_epi8, vp->prod_v2c_epi8[j]); + + current_ix_epi8 = _mm256_set1_epi8((int8_t)i); + mask_is_min_epi8 = _mm256_cmpeq_epi8(current_ix_epi8, vp->min_ix_epi8[j]); + vp->this_c2v_epi8[j] = _mm256_blendv_epi8(vp->minp_v2c_epi8[j], vp->mins_v2c_epi8[j], mask_is_min_epi8); + vp->this_c2v_epi8[j] = _mm256_scalei_epi8(vp->this_c2v_epi8[j], vp->scaling_fctr); + help_c2v_epi8 = _mm256_sign_epi8(vp->this_c2v_epi8[j], final_sign_epi8); + vp->this_c2v_epi8[j] = _mm256_blendv_epi8(vp->this_c2v_epi8[j], help_c2v_epi8, final_sign_epi8); + } + // rotating right LS - shift positions is the same as rotating left shift positions + rotate_node_right(vp->this_c2v_epi8, this_check_to_var + i_v2c_base, vp->ls - shift, vp->ls, vp->n_subnodes); + + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_c_avx2long_flood(void* p, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_avx2long_flood* vp = p; + if (p == NULL) { + return -1; + } + + int i_layer = 0; + int i = 0; + int j = 0; + + __m256i* this_check_to_var = NULL; + + int i_bit_tmp_base = 0; + int i_bit_subnode = 0; + + __m256i tmp_epi8; + __m256i mask_epi8; + + int8_t current_var_index = 0; + int current_var_index_subnode = 0; + + for (i = 0; i < vp->bgN; i++) { + for (j = 0; j < vp->n_subnodes; j++) { + vp->soft_bits[i * vp->n_subnodes + j].v = vp->llrs[i * vp->n_subnodes + j]; + } + } + + for (i_layer = 0; i_layer < vp->bgM; i_layer++) { + current_var_index = these_var_indices[i_layer][0]; + + this_check_to_var = vp->check_to_var + i_layer * (vp->hrr + 1) * vp->n_subnodes; + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + current_var_index_subnode = current_var_index * vp->n_subnodes; + for (j = 0; j < vp->n_subnodes; j++) { + i_bit_tmp_base = (current_var_index <= vp->hrr) ? current_var_index : vp->hrr; + i_bit_subnode = i_bit_tmp_base * vp->n_subnodes + j; + + tmp_epi8 = _mm256_adds_epi8(this_check_to_var[i_bit_subnode], vp->soft_bits[current_var_index_subnode + j].v); + + mask_epi8 = _mm256_cmpgt_epi8(tmp_epi8, infty7_epi8); + tmp_epi8 = _mm256_blendv_epi8(tmp_epi8, infty8_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(neg_infty7_epi8, tmp_epi8); + + vp->soft_bits[current_var_index_subnode + j].v = _mm256_blendv_epi8(tmp_epi8, neg_infty8_epi8, mask_epi8); + } + + current_var_index = these_var_indices[i_layer][i + 1]; + } + } + + return 0; +} + +int extract_ldpc_message_c_avx2long_flood(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs_c_avx2long_flood* vp = p; + + int j = 0; + int k = 0; + + for (int i = 0; i < liftK / vp->ls; i++) { + for (j = 0; j < vp->n_subnodes; j++) { + for (k = 0; (k < SRSLTE_AVX2_B_SIZE) && (j * SRSLTE_AVX2_B_SIZE + k < vp->ls); k++) { + message[i * vp->ls + j * SRSLTE_AVX2_B_SIZE + k] = (vp->soft_bits[i * vp->n_subnodes + j].c[k] < 0); + } + } + } + + return 0; +} + +static void +inner_var_to_check_c_avx2(const __m256i* x, const __m256i* y, __m256i* z, const uint8_t clip, const uint32_t len) +{ + unsigned i = 0; + + __m256i x_epi8; + __m256i y_epi8; + __m256i z_epi8; + __m256i mask_epi8; + __m256i help_sub_epi8; + __m256i clip_epi8 = _mm256_set1_epi8(clip); + __m256i neg_clip_epi8 = _mm256_set1_epi8((char)(-clip)); + + for (i = 0; i < len; i++) { + x_epi8 = x[i]; + y_epi8 = y[i]; + + help_sub_epi8 = _mm256_subs_epi8(x_epi8, y_epi8); + mask_epi8 = _mm256_cmpgt_epi8(help_sub_epi8, clip_epi8); + z_epi8 = _mm256_blendv_epi8(help_sub_epi8, clip_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(neg_clip_epi8, z_epi8); + z_epi8 = _mm256_blendv_epi8(z_epi8, neg_clip_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(infty8_epi8, x_epi8); + z_epi8 = _mm256_blendv_epi8(infty8_epi8, z_epi8, mask_epi8); + + mask_epi8 = _mm256_cmpgt_epi8(x_epi8, neg_infty8_epi8); + z[i] = _mm256_blendv_epi8(neg_infty8_epi8, z_epi8, mask_epi8); + } +} + +static void rotate_node_right(const __m256i* in_256i, __m256i* out, uint16_t shift, uint16_t ls, int8_t n_subnodes) +{ + const int8_t* in = (const int8_t*)in_256i; + + int16_t n_type1 = (ls - shift) / SRSLTE_AVX2_B_SIZE - (ls == SRSLTE_AVX2_B_SIZE); + int16_t n_type2 = n_subnodes - n_type1 - 1 - (ls == SRSLTE_AVX2_B_SIZE); + int16_t gap = (ls - shift) % SRSLTE_AVX2_B_SIZE; + + int16_t i = 0; + for (; i < n_type1; i++) { + out[i] = _mm256_loadu_si256((const __m256i*)(in + shift + i * SRSLTE_AVX2_B_SIZE)); + } + + __m256i tmp1 = _mm256_loadu_si256((const __m256i*)(in + shift + i * SRSLTE_AVX2_B_SIZE)); + __m256i tmp2 = _mm256_loadu_si256((const __m256i*)(in - gap)); + + out[i] = _mm256_blendv_epi8(tmp1, tmp2, mask_most_epi8[gap]); + + for (i = 1; i <= n_type2; i++) { + out[n_type1 + i] = _mm256_loadu_si256((const __m256i*)(in - gap + i * SRSLTE_AVX2_B_SIZE)); + } +} + +static __m256i _mm256_scalei_epi8(__m256i a, __m256i sf) +{ + __m256i even_epi16 = _mm256_and_si256(a, mask_even_epi8); + __m256i odd_epi16 = _mm256_srli_epi16(a, 8); + + __m256i p_even_epi16 = _mm256_mulhi_epu16(even_epi16, sf); + __m256i p_odd_epi16 = _mm256_mulhi_epu16(odd_epi16, sf); + + p_odd_epi16 = _mm256_slli_epi16(p_odd_epi16, 8); + + return _mm256_xor_si256(p_even_epi16, p_odd_epi16); +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_c_flood.c b/lib/src/phy/fec/ldpc/ldpc_dec_c_flood.c new file mode 100644 index 000000000..cc89ff130 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_c_flood.c @@ -0,0 +1,391 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_c_flood.c + * \brief Definition of the LDPC decoder inner functions working + * with 8-bit integer-valued LLRs. Flooded scheduling. + * + * Even if the inner representation is based on 8 bits, check-to-variable and + * variable-to-check messages are actually represented with 7 bits, the + * remaining bit is used to represent infinity. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include + +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/vector.h" + +#define F2I 100 /*!< \brief Used for float to int conversion---float f is stored as (int)(f*F2I). */ + +/*! + * \brief Maximum message magnitude. + * Messages use a 7-bit quantization. Soft bits use the remaining bit to denote infinity. + */ +static const int8_t infinity7 = (1U << 6U) - 1; + +/*! + * \brief Inner registers for the LDPC decoder that works with 8-bit integer-valued LLRs (flooded scheduling). + */ +struct ldpc_regs_c_flood { + int8_t* llrs; /*!< \brief A-priori log-likelihood ratios. */ + int8_t* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + int8_t* check_to_var; /*!< \brief Check-to-variable messages. */ + int8_t* var_to_check; /*!< \brief Variable-to-check messages. */ + int8_t (*min_v2c)[2]; /*!< \brief Helper register for computing check-to-variable messages. */ + int* min_v_index; /*!< \brief Helper register for computing check-to-variable messages. */ + int* prod_v2c; /*!< \brief Helper register for computing check-to-variable messages. */ + + uint16_t liftN; /*!< \brief Total number of variable nodes (after lifting). */ + uint16_t hrrN; /*!< \brief Number of variable nodes in the high-rate region (after lifing). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint16_t ls; /*!< \brief Lifting size. */ + int scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ +}; + +/*! + * Carries out the actual update of the variable-to-check messages. It basically + * consists in \f$ z = x - y \f$ (as vectors). However, first it checks whether + * \f$\lvert x[i] \rvert = 2^{7}-1 \f$ (our representation of infinity) to + * ensure it is properly propagated. Also, the subtraction is saturated between + * \f$- clip\f$ and \f$+ clip\f$. + * \param[in] x Minuend: array we subtract from (in practice, the soft bits). + * \param[in] y Subtrahend: array to be subtracted (in practice, the + * check-to-variable messages). + * \param[out] z Resulting difference array(in practice, the updated + * variable-to-check messages). + * \param[in] clip The saturation value. + * \param[in] len The length of the vectors. + */ +static void inner_var_to_check_c(const int8_t* x, const int8_t* y, int8_t* z, uint8_t clip, uint32_t len); + +void* create_ldpc_dec_c_flood(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs_c_flood* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t liftN = bgN * ls; + uint16_t hrrN = (bgK + 4) * ls; + + if ((vp = malloc(sizeof(struct ldpc_regs_c_flood))) == NULL) { + return NULL; + } + + if ((vp->llrs = srslte_vec_i8_malloc(liftN)) == NULL) { + free(vp); + return NULL; + } + + if ((vp->soft_bits = srslte_vec_i8_malloc(liftN)) == NULL) { + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->check_to_var = srslte_vec_i8_malloc((hrrN + ls) * bgM)) == NULL) { + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->var_to_check = srslte_vec_i8_malloc((hrrN + ls) * bgM)) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->min_v2c = malloc(ls * sizeof(int8_t[2]))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->min_v_index = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + if ((vp->prod_v2c = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->liftN = liftN; + vp->hrrN = hrrN; + vp->ls = ls; + + vp->scaling_fctr = (int)(scaling_fctr * F2I); + + return vp; +} + +void delete_ldpc_dec_c_flood(void* p) +{ + struct ldpc_regs_c_flood* vp = p; + + if (vp != NULL) { + free(vp->prod_v2c); + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp->llrs); + free(vp); + } +} + +int init_ldpc_dec_c_flood(void* p, const int8_t* llrs, uint16_t ls) +{ + struct ldpc_regs_c_flood* vp = p; + int i = 0; + int skip = 2 * ls; + + if (p == NULL) { + return -1; + } + + bzero(vp->llrs, skip * sizeof(int8_t)); + bzero(vp->soft_bits, skip * sizeof(int8_t)); + for (i = skip; i < vp->liftN; i++) { + vp->llrs[i] = llrs[i - skip]; + vp->soft_bits[i] = llrs[i - skip]; + } + + bzero(vp->check_to_var, (vp->hrrN + vp->ls) * vp->bgM * sizeof(int8_t)); + bzero(vp->var_to_check, (vp->hrrN + vp->ls) * vp->bgM * sizeof(int8_t)); + return 0; +} + +int update_ldpc_var_to_check_c_flood(void* p, int i_layer) +{ + struct ldpc_regs_c_flood* vp = p; + + if (p == NULL) { + return -1; + } + + int8_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + int8_t* this_var_to_check = vp->var_to_check + i_layer * (vp->hrrN + vp->ls); + + // Update the high-rate region. + inner_var_to_check_c(vp->soft_bits, this_check_to_var, this_var_to_check, infinity7, vp->hrrN); + + if (i_layer >= 4) { + // Update the extension region. + inner_var_to_check_c(vp->soft_bits + vp->hrrN + (i_layer - 4) * vp->ls, + this_check_to_var + vp->hrrN, + this_var_to_check + vp->hrrN, + infinity7, + vp->ls); + } + + return 0; +} + +int update_ldpc_check_to_var_c_flood(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_flood* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + int j = 0; + + for (i = 0; i < vp->ls; i++) { + vp->prod_v2c[i] = 1; + for (j = 0; j < 2; j++) { + vp->min_v2c[i][j] = INT8_MAX; + } + } + + uint16_t shift = 0; + int index = 0; + int8_t this_v2c = 0; + int is_min = 0; + int i_v2c = 0; + int i_v2c_base = 0; + + int8_t current_var_index = (*these_var_indices)[0]; + + int8_t* this_var_to_check = vp->var_to_check + i_layer * (vp->hrrN + vp->ls); + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + this_v2c = abs(this_var_to_check[i_v2c]); + is_min = this_v2c < vp->min_v2c[index][0]; + vp->min_v2c[index][1] = + (this_v2c >= vp->min_v2c[index][1]) ? vp->min_v2c[index][1] : (is_min ? vp->min_v2c[index][0] : this_v2c); + vp->min_v2c[index][0] = is_min ? this_v2c : vp->min_v2c[index][0]; + vp->min_v_index[index] = is_min ? i_v2c : vp->min_v_index[index]; + + vp->prod_v2c[index] *= (this_var_to_check[i_v2c] >= 0) ? 1 : -1; + } + current_var_index = (*these_var_indices)[i + 1]; + } + + int8_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + + this_check_to_var[i_v2c] = (i_v2c != vp->min_v_index[index]) ? vp->min_v2c[index][0] : vp->min_v2c[index][1]; + this_check_to_var[i_v2c] = this_check_to_var[i_v2c] * vp->scaling_fctr / F2I; + + this_check_to_var[i_v2c] *= vp->prod_v2c[index] * ((this_var_to_check[i_v2c] >= 0) ? 1 : -1); + } + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_c_flood(void* p, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_c_flood* vp = p; + if (p == NULL) { + return -1; + } + + int i = 0; + int j = 0; + int i_layer = 0; + int i_bit = 0; + int i_bit_tmp = 0; + int8_t current_var_index = 0; + int current_var_index_ext = 0; + int8_t* this_check_to_var = NULL; + + long tmp = 0; + + for (i = 0; i < vp->liftN; i++) { + vp->soft_bits[i] = vp->llrs[i]; + } + + for (i_layer = 0; i_layer < vp->bgM; i_layer++) { + current_var_index = these_var_indices[i_layer][0]; + this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + // recall that current_var_index depends on i! + current_var_index_ext = current_var_index * vp->ls; + for (j = 0; j < vp->ls; j++) { + i_bit = current_var_index_ext + j; + i_bit_tmp = (current_var_index_ext <= vp->hrrN) ? i_bit : vp->hrrN + j; + tmp = (long)this_check_to_var[i_bit_tmp] + vp->soft_bits[i_bit]; + if (tmp > infinity7) { + tmp = INT8_MAX; + } + if (tmp < -infinity7) { + tmp = -INT8_MAX; + } + vp->soft_bits[i_bit] = (int8_t)tmp; + } + current_var_index = these_var_indices[i_layer][i + 1]; + } + } + + return 0; +} + +int extract_ldpc_message_c_flood(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs_c_flood* vp = p; + + for (int i = 0; i < liftK; i++) { + message[i] = (vp->soft_bits[i] < 0); + } + + return 0; +} + +void inner_var_to_check_c(const int8_t* x, const int8_t* y, int8_t* z, const uint8_t clip, const uint32_t len) +{ + unsigned i = 0; + long tmp = 0; + + const long infinity8 = (1U << 7U) - 1; // Max positive value in 8-bit representation + + for (i = 0; i < len; i++) { + if (x[i] >= infinity8) { + z[i] = infinity8; + continue; + } + if (x[i] <= -infinity8) { + z[i] = -infinity8; + continue; + } + tmp = (long)x[i] - y[i]; + if (tmp > clip) { + tmp = clip; + } + if (tmp < -clip) { + tmp = -clip; + } + z[i] = (int8_t)tmp; + } +} diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_f.c b/lib/src/phy/fec/ldpc/ldpc_dec_f.c new file mode 100644 index 000000000..ef496b5ef --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_f.c @@ -0,0 +1,302 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_f.c + * \brief Definition of the LDPC decoder inner functions working + * with float-valued LLRs. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include +#include +#include + +#include "ldpc_dec_all.h" +#include "math.h" +#include "srslte/phy/fec/ldpc/base_graph.h" + +#include "srslte/phy/utils/vector.h" + +/*! + * \brief Inner registers for the LDPC decoder that works with real-valued LLRs. + */ +struct ldpc_regs { + float* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + float* check_to_var; /*!< \brief Check-to-variable messages. */ + float* var_to_check; /*!< \brief Variable-to-check messages. */ + float (*min_v2c)[2]; /*!< \brief Helper register for computing check-to-variable messages. */ + int* min_v_index; /*!< \brief Helper register for computing check-to-variable messages. */ + int* prod_v2c; /*!< \brief Helper register for computing check-to-variable messages. */ + + uint16_t liftN; /*!< \brief Total number of variable nodes (after lifting). */ + uint16_t hrrN; /*!< \brief Number of variable nodes in the high-rate region (after lifing). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint16_t ls; /*!< \brief Lifting size. */ + float scaling_fctr; /*!< Scaling factor for the normalized min-sum decoding algorithm. */ +}; + +void* create_ldpc_dec_f(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t liftN = bgN * ls; + uint16_t hrrN = (bgK + 4) * ls; + + if ((vp = malloc(sizeof(struct ldpc_regs))) == NULL) { + return NULL; + } + + if ((vp->soft_bits = srslte_vec_f_malloc(liftN)) == NULL) { + free(vp); + return NULL; + } + + if ((vp->check_to_var = srslte_vec_f_malloc((hrrN + ls) * bgM)) == NULL) { + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->var_to_check = srslte_vec_f_malloc((hrrN + ls))) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->min_v2c = malloc(ls * sizeof(float[2]))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->min_v_index = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->prod_v2c = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->liftN = liftN; + vp->hrrN = hrrN; + vp->ls = ls; + vp->scaling_fctr = scaling_fctr; + + return vp; +} + +void delete_ldpc_dec_f(void* p) +{ + struct ldpc_regs* vp = p; + + if (vp != NULL) { + free(vp->prod_v2c); + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + } +} + +int init_ldpc_dec_f(void* p, const float* llrs, uint16_t ls) +{ + struct ldpc_regs* vp = p; + int i = 0; + int skip = 2 * ls; + + if (p == NULL) { + return -1; + } + + bzero(vp->soft_bits, skip * sizeof(float)); + for (i = skip; i < vp->liftN; i++) { + vp->soft_bits[i] = llrs[i - skip]; + } + + bzero(vp->check_to_var, (vp->hrrN + vp->ls) * vp->bgM * sizeof(float)); + bzero(vp->var_to_check, (vp->hrrN + vp->ls) * sizeof(float)); + return 0; +} + +int update_ldpc_var_to_check_f(void* p, int i_layer) +{ + struct ldpc_regs* vp = p; + + if (p == NULL) { + return -1; + } + + float* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + + // Update the high-rate region. + srslte_vec_sub_fff(vp->soft_bits, this_check_to_var, vp->var_to_check, vp->hrrN); + + if (i_layer >= 4) { + // Update the extension region. + srslte_vec_sub_fff(vp->soft_bits + vp->hrrN + (i_layer - 4) * vp->ls, + this_check_to_var + vp->hrrN, + vp->var_to_check + vp->hrrN, + vp->ls); + } + + return 0; +} + +int update_ldpc_check_to_var_f(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + int j = 0; + + for (i = 0; i < vp->ls; i++) { + vp->prod_v2c[i] = 1; + for (j = 0; j < 2; j++) { + vp->min_v2c[i][j] = INFINITY; + } + } + + uint16_t shift = 0; + int index = 0; + float this_v2c = NAN; + int is_min = 0; + int i_v2c_base = 0; + int i_v2c = 0; + + int8_t current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + this_v2c = fabsf(vp->var_to_check[i_v2c]); + is_min = this_v2c < vp->min_v2c[index][0]; + vp->min_v2c[index][1] = + (this_v2c >= vp->min_v2c[index][1]) ? vp->min_v2c[index][1] : (is_min ? vp->min_v2c[index][0] : this_v2c); + vp->min_v2c[index][0] = is_min ? this_v2c : vp->min_v2c[index][0]; + vp->min_v_index[index] = is_min ? i_v2c : vp->min_v_index[index]; + + vp->prod_v2c[index] *= (vp->var_to_check[i_v2c] >= 0) ? 1 : -1; + } + + current_var_index = (*these_var_indices)[i + 1]; + } + + float* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + + this_check_to_var[i_v2c] = (i_v2c != vp->min_v_index[index]) ? vp->min_v2c[index][0] : vp->min_v2c[index][1]; + this_check_to_var[i_v2c] *= vp->scaling_fctr; + + this_check_to_var[i_v2c] *= (float)vp->prod_v2c[index] * ((vp->var_to_check[i_v2c] >= 0) ? 1.F : -1.F); + } + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_f(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs* vp = p; + if (p == NULL) { + return -1; + } + + int i_bit = 0; + int i_bit_tmp = 0; + float* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + float* this_var_to_check = vp->var_to_check; + + int8_t current_var_index = (*these_var_indices)[0]; + int current_var_index_ext = 0; + + for (int i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + current_var_index_ext = current_var_index * vp->ls; + for (int j = 0; j < vp->ls; j++) { + i_bit = current_var_index_ext + j; + i_bit_tmp = (current_var_index_ext <= vp->hrrN) ? i_bit : vp->hrrN + j; + + vp->soft_bits[i_bit] = this_check_to_var[i_bit_tmp] + this_var_to_check[i_bit_tmp]; + } + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int extract_ldpc_message_f(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs* vp = p; + + for (int i = 0; i < liftK; i++) { + message[i] = (vp->soft_bits[i] < 0); + } + + return 0; +} diff --git a/lib/src/phy/fec/ldpc/ldpc_dec_s.c b/lib/src/phy/fec/ldpc/ldpc_dec_s.c new file mode 100644 index 000000000..26d9b2242 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_dec_s.c @@ -0,0 +1,364 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_s.c + * \brief Definition of the LDPC decoder inner functions working + * with 16-bit integer-valued LLRs. + * + * Even if the inner representation is based on 16 bits, check-to-variable and + * variable-to-check messages are actually represented with 15 bits, the + * remaining bit is used to represent infinity. + * + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include + +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/utils/vector.h" + +#define F2I 100 /*!< \brief Used for float to int conversion---float f is stored as (int)(f*F2I). */ + +/*! + * \brief Maximum message magnitude. + * Messages use a 15-bit quantization. Soft bits use the remaining bit to denote infinity. + */ +const int16_t infinity15 = (1U << 14U) - 1; + +/*! + * \brief Inner registers for the LDPC decoder that works with 16-bit integer-valued LLRs. + */ +struct ldpc_regs_s { + int16_t* soft_bits; /*!< \brief A-posteriori log-likelihood ratios. */ + int16_t* check_to_var; /*!< \brief Check-to-variable messages. */ + int16_t* var_to_check; /*!< \brief Variable-to-check messages. */ + int16_t (*min_v2c)[2]; /*!< \brief Helper register for computing check-to-variable messages. */ + int* min_v_index; /*!< \brief Helper register for computing check-to-variable messages. */ + int* prod_v2c; /*!< \brief Helper register for computing check-to-variable messages. */ + + uint16_t liftN; /*!< \brief Total number of variable nodes (after lifting). */ + uint16_t hrrN; /*!< \brief Number of variable nodes in the high-rate region (after lifing). */ + uint8_t bgM; /*!< \brief Number of check nodes (before lifting). */ + uint16_t ls; /*!< \brief Lifting size. */ + int scaling_fctr; /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ +}; + +/*! + * Carries out the actual update of the variable-to-check messages. It basically + * consists in \f$ z = x - y \f$ (as vectors). However, first it checks whether + * \f$\lvert x[i] \rvert = 2^{15}-1 \f$ (our representation of infinity) to + * ensure it is properly propagated. Also, the subtraction is saturated between + * \f$- clip\f$ and \f$+ clip\f$. + * \param[in] x Minuend: array we subtract from (in practice, the soft bits). + * \param[in] y Subtrahend: array to be subtracted (in practice, the + * check-to-variable messages). + * \param[out] z Resulting difference array(in practice, the updated + * variable-to-check messages). + * \param[in] clip The saturation value. + * \param[in] len The length of the vectors. + */ +static void inner_var_to_check_s(const int16_t* x, const int16_t* y, int16_t* z, uint16_t clip, uint32_t len); + +void* create_ldpc_dec_s(uint8_t bgN, uint8_t bgM, uint16_t ls, float scaling_fctr) +{ + struct ldpc_regs_s* vp = NULL; + + uint8_t bgK = bgN - bgM; + uint16_t liftN = bgN * ls; + uint16_t hrrN = (bgK + 4) * ls; + + if ((vp = malloc(sizeof(struct ldpc_regs_s))) == NULL) { + return NULL; + } + + if ((vp->soft_bits = malloc(liftN * sizeof(int16_t))) == NULL) { + free(vp); + return NULL; + } + + if ((vp->check_to_var = malloc((hrrN + ls) * bgM * sizeof(int16_t))) == NULL) { + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->var_to_check = malloc((hrrN + ls) * sizeof(int16_t))) == NULL) { + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->min_v2c = malloc(ls * sizeof(int16_t[2]))) == NULL) { + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->min_v_index = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + if ((vp->prod_v2c = srslte_vec_i32_malloc(ls)) == NULL) { + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + return NULL; + } + + vp->bgM = bgM; + vp->liftN = liftN; + vp->hrrN = hrrN; + vp->ls = ls; + + vp->scaling_fctr = (int)(scaling_fctr * F2I); + + return vp; +} + +void delete_ldpc_dec_s(void* p) +{ + struct ldpc_regs_s* vp = p; + + if (vp != NULL) { + free(vp->prod_v2c); + free(vp->min_v_index); + free(vp->min_v2c); + free(vp->var_to_check); + free(vp->check_to_var); + free(vp->soft_bits); + free(vp); + } +} + +int init_ldpc_dec_s(void* p, const int16_t* llrs, uint16_t ls) +{ + struct ldpc_regs_s* vp = p; + int i = 0; + int skip = 2 * ls; + + if (p == NULL) { + return -1; + } + + bzero(vp->soft_bits, skip * sizeof(int16_t)); + for (i = skip; i < vp->liftN; i++) { + vp->soft_bits[i] = llrs[i - skip]; + } + + bzero(vp->check_to_var, (vp->hrrN + vp->ls) * vp->bgM * sizeof(int16_t)); + bzero(vp->var_to_check, (vp->hrrN + vp->ls) * sizeof(int16_t)); + return 0; +} + +int update_ldpc_var_to_check_s(void* p, int i_layer) +{ + struct ldpc_regs_s* vp = p; + + if (p == NULL) { + return -1; + } + + int16_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + + // Update the high-rate region. + inner_var_to_check_s(vp->soft_bits, this_check_to_var, vp->var_to_check, infinity15, vp->hrrN); + + if (i_layer >= 4) { + // Update the extension region. + inner_var_to_check_s(vp->soft_bits + vp->hrrN + (i_layer - 4) * vp->ls, + this_check_to_var + vp->hrrN, + vp->var_to_check + vp->hrrN, + infinity15, + vp->ls); + } + + return 0; +} + +int update_ldpc_check_to_var_s(void* p, + int i_layer, + const uint16_t* this_pcm, + const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_s* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + int j = 0; + + for (i = 0; i < vp->ls; i++) { + vp->prod_v2c[i] = 1; + for (j = 0; j < 2; j++) { + vp->min_v2c[i][j] = INT16_MAX; + } + } + + uint16_t shift = 0; + int index = 0; + int16_t this_v2c = 0; + int is_min = 0; + int i_v2c = 0; + int i_v2c_base = 0; + + int8_t current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + this_v2c = abs(vp->var_to_check[i_v2c]); + is_min = this_v2c < vp->min_v2c[index][0]; + vp->min_v2c[index][1] = + (this_v2c >= vp->min_v2c[index][1]) ? vp->min_v2c[index][1] : (is_min ? vp->min_v2c[index][0] : this_v2c); + vp->min_v2c[index][0] = is_min ? this_v2c : vp->min_v2c[index][0]; + vp->min_v_index[index] = is_min ? i_v2c : vp->min_v_index[index]; + + vp->prod_v2c[index] *= (vp->var_to_check[i_v2c] >= 0) ? 1 : -1; + } + current_var_index = (*these_var_indices)[i + 1]; + } + + int16_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + current_var_index = (*these_var_indices)[0]; + + for (i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + shift = this_pcm[current_var_index]; + i_v2c_base = current_var_index * vp->ls; + i_v2c_base = (i_v2c_base <= vp->hrrN) ? i_v2c_base : vp->hrrN; + for (j = 0; j < vp->ls; j++) { + index = (j + vp->ls - shift) % vp->ls; + i_v2c = i_v2c_base + j; + + this_check_to_var[i_v2c] = (i_v2c != vp->min_v_index[index]) ? vp->min_v2c[index][0] : vp->min_v2c[index][1]; + this_check_to_var[i_v2c] = this_check_to_var[i_v2c] * vp->scaling_fctr / F2I; + + this_check_to_var[i_v2c] *= vp->prod_v2c[index] * ((vp->var_to_check[i_v2c] >= 0) ? 1 : -1); + } + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int update_ldpc_soft_bits_s(void* p, int i_layer, const int8_t (*these_var_indices)[MAX_CNCT]) +{ + struct ldpc_regs_s* vp = p; + if (p == NULL) { + return -1; + } + + int i_bit = 0; + int i_bit_tmp = 0; + int16_t* this_check_to_var = vp->check_to_var + i_layer * (vp->hrrN + vp->ls); + int16_t* this_var_to_check = vp->var_to_check; + + long tmp = 0; + + int8_t current_var_index = (*these_var_indices)[0]; + int current_var_index_ext = 0; + + for (int i = 0; (current_var_index != -1) && (i < MAX_CNCT); i++) { + current_var_index_ext = current_var_index * vp->ls; + for (int j = 0; j < vp->ls; j++) { + i_bit = current_var_index_ext + j; + i_bit_tmp = (current_var_index_ext <= vp->hrrN) ? i_bit : vp->hrrN + j; + + tmp = (long)this_check_to_var[i_bit_tmp] + this_var_to_check[i_bit_tmp]; + if (tmp > infinity15) { + tmp = INT16_MAX; + } + if (tmp < -infinity15) { + tmp = -INT16_MAX; + } + vp->soft_bits[i_bit] = (int16_t)tmp; + } + current_var_index = (*these_var_indices)[i + 1]; + } + + return 0; +} + +int extract_ldpc_message_s(void* p, uint8_t* message, uint16_t liftK) +{ + if (p == NULL) { + return -1; + } + + struct ldpc_regs_s* vp = p; + + for (int i = 0; i < liftK; i++) { + message[i] = (vp->soft_bits[i] < 0); + } + + return 0; +} + +void inner_var_to_check_s(const int16_t* x, const int16_t* y, int16_t* z, const uint16_t clip, const uint32_t len) +{ + unsigned i = 0; + long tmp = 0; + + const long infinity16 = (1U << 15U) - 1; // Max positive value in 16-bit representation + + for (i = 0; i < len; i++) { + if (x[i] >= infinity16) { + z[i] = infinity16; + continue; + } + if (x[i] <= -infinity16) { + z[i] = -infinity16; + continue; + } + tmp = (long)x[i] - y[i]; + if (tmp > clip) { + tmp = clip; + } + if (tmp < -clip) { + tmp = -clip; + } + z[i] = (int16_t)tmp; + } +} diff --git a/lib/src/phy/fec/ldpc/ldpc_decoder.c b/lib/src/phy/fec/ldpc/ldpc_decoder.c new file mode 100644 index 000000000..0f411afb4 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_decoder.c @@ -0,0 +1,785 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_decoder.c + * \brief Definition of the LDPC decoder. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include + +#include "../utils_avx2.h" +#include "ldpc_dec_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/fec/ldpc/ldpc_decoder.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/vector.h" + +#define MAX_ITERATIONS 10 /*!< \brief Iterations of the BP algorithm. */ + +/*! Carries out the actual destruction of the memory allocated to the decoder, float-LLR case. */ +static void free_dec_f(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_f(q->ptr); +} + +/*! Carries out the decoding with real-valued LLRs. */ +static int decode_f(void* o, const float* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + + init_ldpc_dec_f(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_f(q->ptr, i_layer); + + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_f(q->ptr, i_layer, this_pcm, these_var_indices); + + update_ldpc_soft_bits_f(q->ptr, i_layer, these_var_indices); + } + } + + extract_ldpc_message_f(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with real valued LLRs. */ +static int init_f(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_f; + + if ((q->ptr = create_ldpc_dec_f(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_f(q); + return -1; + } + + q->decode_f = decode_f; + + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the decoder, 16-bit-LLR case. */ +static void free_dec_s(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_s(q->ptr); +} + +/*! Carries out the decoding with 16-bit integer-valued LLRs. */ +static int decode_s(void* o, const int16_t* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + + init_ldpc_dec_s(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_s(q->ptr, i_layer); + + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_s(q->ptr, i_layer, this_pcm, these_var_indices); + + update_ldpc_soft_bits_s(q->ptr, i_layer, these_var_indices); + } + } + + extract_ldpc_message_s(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with 16-bit integer-valued LLRs. */ +static int init_s(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_s; + + if ((q->ptr = create_ldpc_dec_s(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_s(q); + return -1; + } + + q->decode_s = decode_s; + + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the decoder, 8-bit-LLR case. */ +static void free_dec_c(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_c(q->ptr); +} + +/*! Carries out the decoding with 8-bit integer-valued LLRs. */ +static int decode_c(void* o, const int8_t* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + + init_ldpc_dec_c(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_c(q->ptr, i_layer); + + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_c(q->ptr, i_layer, this_pcm, these_var_indices); + + update_ldpc_soft_bits_c(q->ptr, i_layer, these_var_indices); + } + } + + extract_ldpc_message_c(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with 8-bit integer-valued LLRs. */ +static int init_c(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_c; + + if ((q->ptr = create_ldpc_dec_c(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_c(q); + return -1; + } + + q->decode_c = decode_c; + + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the decoder, 8-bit-LLR flooded case. */ +static void free_dec_c_flood(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_c_flood(q->ptr); +} + +/*! Carries out the decoding with 8-bit integer-valued LLRs, flooded scheduling. */ +static int decode_c_flood(void* o, const int8_t* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + init_ldpc_dec_c_flood(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < 2 * MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_c_flood(q->ptr, i_layer); + } + + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_c_flood(q->ptr, i_layer, this_pcm, these_var_indices); + } + update_ldpc_soft_bits_c_flood(q->ptr, q->var_indices); + } + + extract_ldpc_message_c_flood(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with 8-bit integer-valued LLRs. */ +static int init_c_flood(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_c_flood; + + if ((q->ptr = create_ldpc_dec_c_flood(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_c_flood(q); + return -1; + } + + q->decode_c = decode_c_flood; + + return 0; +} + +#ifdef LV_HAVE_AVX2 +/*! Carries out the actual destruction of the memory allocated to the decoder, 8-bit-LLR case (AVX2 implementation). */ +static void free_dec_c_avx2(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_c_avx2(q->ptr); +} + +/*! Carries out the decoding with 8-bit integer-valued LLRs (AVX2 implementation). */ +static int decode_c_avx2(void* o, const int8_t* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + init_ldpc_dec_c_avx2(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_c_avx2(q->ptr, i_layer); + + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_c_avx2(q->ptr, i_layer, this_pcm, these_var_indices); + + update_ldpc_soft_bits_c_avx2(q->ptr, i_layer, these_var_indices); + } + } + + extract_ldpc_message_c_avx2(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with 8-bit integer-valued LLRs (AVX2 implementation). */ +static int init_c_avx2(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_c_avx2; + + if ((q->ptr = create_ldpc_dec_c_avx2(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_c_avx2(q); + return -1; + } + + q->decode_c = decode_c_avx2; + + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the decoder, 8-bit-LLR case (AVX2 implementation, + * large lifting size). */ +static void free_dec_c_avx2long(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_c_avx2long(q->ptr); +} + +/*! Carries out the decoding with 8-bit integer-valued LLRs (AVX2 implementation, large lifting size). */ +static int decode_c_avx2long(void* o, const int8_t* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + init_ldpc_dec_c_avx2long(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_c_avx2long(q->ptr, i_layer); + + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_c_avx2long(q->ptr, i_layer, this_pcm, these_var_indices); + + update_ldpc_soft_bits_c_avx2long(q->ptr, i_layer, these_var_indices); + } + } + + extract_ldpc_message_c_avx2long(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with 8-bit integer-valued LLRs (AVX2 implementation, large lifting size). */ +static int init_c_avx2long(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_c_avx2long; + + if ((q->ptr = create_ldpc_dec_c_avx2long(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_c_avx2long(q); + return -1; + } + + q->decode_c = decode_c_avx2long; + + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the decoder, 8-bit-LLR case (AVX2 implementation, + * flooded scheduling). */ +static void free_dec_c_avx2_flood(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_c_avx2_flood(q->ptr); +} + +/*! Carries out the decoding with 8-bit integer-valued LLRs (AVX2 implementation, flooded scheduling). */ +static int decode_c_avx2_flood(void* o, const int8_t* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + init_ldpc_dec_c_avx2_flood(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < 2 * MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_c_avx2_flood(q->ptr, i_layer); + } + + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_c_avx2_flood(q->ptr, i_layer, this_pcm, these_var_indices); + } + update_ldpc_soft_bits_c_avx2_flood(q->ptr, q->var_indices); + } + + extract_ldpc_message_c_avx2_flood(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with 8-bit integer-valued LLRs (AVX2 implementation, flooded scheduling). */ +static int init_c_avx2_flood(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_c_avx2_flood; + + if ((q->ptr = create_ldpc_dec_c_avx2_flood(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_c_avx2_flood(q); + return -1; + } + + q->decode_c = decode_c_avx2_flood; + + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the decoder, 8-bit-LLR case + * (flooded scheduling, AVX2 implementation, large lifting size). */ +static void free_dec_c_avx2long_flood(void* o) +{ + srslte_ldpc_decoder_t* q = o; + if (q->var_indices) { + free(q->var_indices); + } + if (q->pcm) { + free(q->pcm); + } + delete_ldpc_dec_c_avx2long_flood(q->ptr); +} + +/*! Carries out the decoding with 8-bit integer-valued LLRs (flooded scheduling, AVX2 implementation, large lifting + * size). */ +static int decode_c_avx2long_flood(void* o, const int8_t* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + srslte_ldpc_decoder_t* q = o; + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + init_ldpc_dec_c_avx2long_flood(q->ptr, llrs, q->ls); + + uint16_t* this_pcm = NULL; + int8_t(*these_var_indices)[MAX_CNCT] = NULL; + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + for (int i_iteration = 0; i_iteration < 2 * MAX_ITERATIONS; i_iteration++) { + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + update_ldpc_var_to_check_c_avx2long_flood(q->ptr, i_layer); + } + + for (int i_layer = 0; i_layer < n_layers; i_layer++) { + this_pcm = q->pcm + i_layer * q->bgN; + these_var_indices = q->var_indices + i_layer; + + update_ldpc_check_to_var_c_avx2long_flood(q->ptr, i_layer, this_pcm, these_var_indices); + } + + update_ldpc_soft_bits_c_avx2long_flood(q->ptr, q->var_indices); + } + + extract_ldpc_message_c_avx2long_flood(q->ptr, message, q->liftK); + + return 0; +} + +/*! Initializes the decoder to work with 8-bit integer-valued LLRs + * (flooded scheduling, AVX2 implementation, large lifting size). */ +static int init_c_avx2long_flood(srslte_ldpc_decoder_t* q) +{ + q->free = free_dec_c_avx2long_flood; + + if ((q->ptr = create_ldpc_dec_c_avx2long_flood(q->bgN, q->bgM, q->ls, q->scaling_fctr)) == NULL) { + ERROR("Create_ldpc_dec failed\n"); + free_dec_c_avx2long(q); + return -1; + } + + q->decode_c = decode_c_avx2long_flood; + + return 0; +} +#endif // LV_HAVE_AVX2 + +int srslte_ldpc_decoder_init(srslte_ldpc_decoder_t* q, + srslte_ldpc_decoder_type_t type, + srslte_basegraph_t bg, + uint16_t ls, + float scaling_fctr) +{ + int ls_index = get_ls_index(ls); + + if (ls_index == VOID_LIFTSIZE) { + ERROR("Invalid lifting size %d\n", ls); + return -1; + } + + switch (bg) { + case BG1: + q->bgN = BG1Nfull; + q->bgM = BG1M; + break; + case BG2: + q->bgN = BG2Nfull; + q->bgM = BG2M; + break; + default: + ERROR("Base Graph BG%d does not exist\n", bg + 1); + return -1; + } + q->bg = bg; + q->bgK = q->bgN - q->bgM; + + q->ls = ls; + q->liftK = ls * q->bgK; + q->liftM = ls * q->bgM; + q->liftN = ls * q->bgN; + + q->pcm = srslte_vec_malloc(q->bgM * q->bgN * sizeof(uint16_t)); + if (!q->pcm) { + perror("malloc"); + return -1; + } + + q->var_indices = srslte_vec_malloc(q->bgM * sizeof(int8_t[MAX_CNCT])); + + if (create_compact_pcm(q->pcm, q->var_indices, q->bg, q->ls) != 0) { + perror("Create PCM"); + free(q->var_indices); + free(q->pcm); + return -1; + } + + if ((scaling_fctr <= 0) || (scaling_fctr > 1)) { + perror("The scaling factor of the min-sum algorithm should be larger than 0 and not larger than 1."); + free(q->var_indices); + free(q->pcm); + return -1; + } + q->scaling_fctr = scaling_fctr; + + switch (type) { + case SRSLTE_LDPC_DECODER_F: + return init_f(q); + case SRSLTE_LDPC_DECODER_S: + return init_s(q); + case SRSLTE_LDPC_DECODER_C: + return init_c(q); + case SRSLTE_LDPC_DECODER_C_FLOOD: + return init_c_flood(q); +#ifdef LV_HAVE_AVX2 + case SRSLTE_LDPC_DECODER_C_AVX2: + if (ls <= SRSLTE_AVX2_B_SIZE) { + return init_c_avx2(q); + } else { + return init_c_avx2long(q); + } + case SRSLTE_LDPC_DECODER_C_AVX2_FLOOD: + if (ls <= SRSLTE_AVX2_B_SIZE) { + return init_c_avx2_flood(q); + } else { + return init_c_avx2long_flood(q); + } +#endif // LV_HAVE_AVX2 + default: + ERROR("Unknown decoder.\n"); + return -1; + } +} + +void srslte_ldpc_decoder_free(srslte_ldpc_decoder_t* q) +{ + if (q->free) { + q->free(q); + } + bzero(q, sizeof(srslte_ldpc_decoder_t)); +} + +int srslte_ldpc_decoder_decode_f(srslte_ldpc_decoder_t* q, const float* llrs, uint8_t* message, uint32_t cdwd_rm_length) +{ + return q->decode_f(q, llrs, message, cdwd_rm_length); +} + +int srslte_ldpc_decoder_decode_s(srslte_ldpc_decoder_t* q, + const int16_t* llrs, + uint8_t* message, + uint32_t cdwd_rm_length) +{ + return q->decode_s(q, llrs, message, cdwd_rm_length); +} + +int srslte_ldpc_decoder_decode_c(srslte_ldpc_decoder_t* q, + const int8_t* llrs, + uint8_t* message, + uint32_t cdwd_rm_length) +{ + return q->decode_c(q, llrs, message, cdwd_rm_length); +} diff --git a/lib/src/phy/fec/ldpc/ldpc_enc_all.h b/lib/src/phy/fec/ldpc/ldpc_enc_all.h new file mode 100644 index 000000000..c4f39ba80 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_enc_all.h @@ -0,0 +1,211 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_enc_all.h + * \brief Declaration of the LDPC encoder inner functions. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef SRSLTE_LDPCENC_ALL_H +#define SRSLTE_LDPCENC_ALL_H +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" + +/*! Computes the product between the first (K - 2) columns of the PCM and the systematic bits. + * \param[in,out] q A pointer to an encoder. + * \param[in] input The message to encode. + */ +void preprocess_systematic_bits(srslte_ldpc_encoder_t* q, const uint8_t* input); + +/*! Computes the high-rate parity bits for BG1 and ls_index in {0, 1, 2, 3, 4, 5, 7}. + * \param[in] o A pointer to an encoder. + * \param[out] output The resulting codeword. + */ +void encode_high_rate_case1(void* o, uint8_t* output); + +/*! Computes the high-rate parity bits for BG1 and ls_index in {6}. + * \param[in] o A pointer to an encoder. + * \param[out] output The resulting codeword. + */ +void encode_high_rate_case2(void* o, uint8_t* output); + +/*! Computes the high-rate parity bits for BG2 and ls_index in {0, 1, 2, 4, 5, 6}. + * \param[in] o A pointer to an encoder. + * \param[out] output The resulting codeword. + */ +void encode_high_rate_case3(void* o, uint8_t* output); + +/*! Computes the high-rate parity bits for BG2 and ls_index in {3, 7}. + * \param[in] o A pointer to an encoder. + * \param[out] output The resulting codeword. + */ +void encode_high_rate_case4(void* o, uint8_t* output); + +/*! Computes the extended-region parity bits. + * \param[in] q A pointer to an encoder. + * \param[out] output The resulting codeword. + * \param[in] n_layers The number of layers to process (when doing rate matching not all + * layers are needed). + */ +void encode_ext_region(srslte_ldpc_encoder_t* q, uint8_t* output, uint8_t n_layers); + +/*! + * Creates the inner registers required by the optimized LDPC encoder (LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] q A pointer to an encoder. + * \return A pointer to the newly created structure of registers. + */ +void* create_ldpc_enc_avx2(srslte_ldpc_encoder_t* q); + +/*! + * Deletes the inner registers of an optimized LDPC encoder (LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p A pointer to the register structure. + */ +void delete_ldpc_enc_avx2(void* p); + +/*! + * Loads the message in the opimized encoder registers (LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p The register structure. + * \param[in] input The message to encode. + * \param[in] msg_len Number of variable nodes in one message. + * \param[in] cdwd_len Number of variable nodes in one message. + * \param[in] ls The lifting size. + * \return Error code: 0 if correct, -1 otherwise. + */ +int load_avx2(void* p, const uint8_t* input, uint8_t msg_len, uint8_t cdwd_len, uint16_t ls); + +/*! Extracts the final codeword from the optimized encoder registers (LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p The register structure. + * \param[out] output The output codeword. + * \param[in] cdwd_len The number of variable nodes (after rate-matching, if enabled). + * \param[in] ls The lifting size. + * \return Error code: 0 if correct, -1 otherwise. + */ +int return_codeword_avx2(void* p, uint8_t* output, uint8_t cdwd_len, uint16_t ls); + +/*! Computes the product between the first (K - 2) columns of the PCM and the + * systematic bits (SIMD-optimized version, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] q A pointer to an encoder. + */ +void preprocess_systematic_bits_avx2(srslte_ldpc_encoder_t* q); + +/*! Computes the high-rate parity bits for BG1 and ls_index in {0, 1, 2, 3, 4, 5, 7} + * (SIMD-optimized version, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] o A pointer to an encoder. + */ +void encode_high_rate_case1_avx2(void* o); + +/*! Computes the high-rate parity bits for BG1 and ls_index in {6} (SIMD-optimized version, LS <= \ref + * SRSLTE_AVX2_B_SIZE). \param[in,out] q A pointer to an encoder. + */ +void encode_high_rate_case2_avx2(void* o); + +/*! Computes the high-rate parity bits for BG2 and ls_index in {0, 1, 2, 4, 5, 6} (SIMD-optimized version, LS <= \ref + * SRSLTE_AVX2_B_SIZE). \param[in,out] q A pointer to an encoder. + */ +void encode_high_rate_case3_avx2(void* o); + +/*! Computes the high-rate parity bits for BG2 and ls_index in {3, 7} (SIMD-optimized version, LS <= \ref + * SRSLTE_AVX2_B_SIZE). \param[in,out] q A pointer to an encoder. + */ +void encode_high_rate_case4_avx2(void* o); + +/*! Computes the extended-region parity bits (SIMD-optimized version, LS <= \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] q A pointer to an encoder. + * \param[in] n_layers The number of layers to process (when doing rate matching not all + * layers are needed). + */ +void encode_ext_region_avx2(srslte_ldpc_encoder_t* q, uint8_t n_layers); + +/*! + * Creates the inner registers required by the optimized LDPC encoder (for LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] q A pointer to an encoder. + * \return A pointer to the newly created structure of registers. + */ +void* create_ldpc_enc_avx2long(srslte_ldpc_encoder_t* q); + +/*! + * Deletes the inner registers of an optimized LDPC encoder (LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p A pointer to the register structure. + */ +void delete_ldpc_enc_avx2long(void* p); + +/*! + * Loads the message in the optimized encoder registers (LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p The register structure. + * \param[in] input The message to encode. + * \param[in] msg_len Number of variable nodes in one message. + * \param[in] cdwd_len Number of variable nodes in one message. + * \param[in] ls The lifting size. + * \return Error code: 0 if correct, -1 otherwise. + */ +int load_avx2long(void* p, const uint8_t* input, uint8_t msg_len, uint8_t cdwd_len, uint16_t ls); + +/*! Extracts the final codeword from the optimized encoder registers (LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in] p The register structure. + * \param[out] output The output codeword. + * \param[in] cdwd_len The number of variable nodes (after rate-matching, if enabled). + * \param[in] ls The lifting size. + * \return Error code: 0 if correct, -1 otherwise. + */ +int return_codeword_avx2long(void* p, uint8_t* output, uint8_t cdwd_len, uint16_t ls); + +/*! Computes the product between the first (K - 2) columns of the PCM and the + * systematic bits (SIMD-optimized version, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] q A pointer to an encoder. + */ +void preprocess_systematic_bits_avx2long(srslte_ldpc_encoder_t* q); + +/*! Computes the high-rate parity bits for BG1 and ls_index in {0, 1, 2, 3, 4, 5, 7} + * (SIMD-optimized version, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] o A pointer to an encoder. + */ +void encode_high_rate_case1_avx2long(void* o); + +/*! Computes the high-rate parity bits for BG1 and ls_index in {6} (SIMD-optimized version, LS > \ref + * SRSLTE_AVX2_B_SIZE). + * \param[in,out] o A pointer to an encoder. + */ +void encode_high_rate_case2_avx2long(void* o); + +/*! Computes the high-rate parity bits for BG2 and ls_index in {0, 1, 2, 4, 5, 6} (SIMD-optimized version, LS > \ref + * SRSLTE_AVX2_B_SIZE). + * \param[in,out] o A pointer to an encoder. + */ +void encode_high_rate_case3_avx2long(void* o); + +/*! Computes the high-rate parity bits for BG2 and ls_index in {3, 7} (SIMD-optimized version, LS > \ref + * SRSLTE_AVX2_B_SIZE). + * \param[in,out] o A pointer to an encoder. + */ +void encode_high_rate_case4_avx2long(void* o); + +/*! Computes the extended-region parity bits (SIMD-optimized version, LS > \ref SRSLTE_AVX2_B_SIZE). + * \param[in,out] q A pointer to an encoder. + * \param[in] n_layers The number of layers to process (when doing rate matching not all + * layers are needed). + */ +void encode_ext_region_avx2long(srslte_ldpc_encoder_t* q, uint8_t n_layers); + +#endif // SRSLTE_LDPCENC_ALL_H diff --git a/lib/src/phy/fec/ldpc/ldpc_enc_avx2.c b/lib/src/phy/fec/ldpc/ldpc_enc_avx2.c new file mode 100644 index 000000000..0a49d4fc4 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_enc_avx2.c @@ -0,0 +1,442 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_enc_avx2.c + * \brief Definition of the LDPC encoder inner functions (AVX2 version, small lifting size). + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include + +#include "../utils_avx2.h" +#include "ldpc_enc_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/vector.h" + +#ifdef LV_HAVE_AVX2 + +#include + +#include "ldpc_avx2_consts.h" + +/*! + * \brief Represents a node of the base factor graph. + */ +typedef union bg_node_t { + uint8_t c[SRSLTE_AVX2_B_SIZE]; /*!< Each base node may contain up to \ref SRSLTE_AVX2_B_SIZE lifted nodes. */ + __m256i v; /*!< All the lifted nodes of the current base node as a 256-bit line. */ +} bg_node_t; + +/*! + * \brief Inner registers for the optimized LDPC encoder. + */ +struct ldpc_enc_avx2 { + bg_node_t* codeword; /*!< \brief Contains the entire codeword, before puncturing. */ + __m256i* aux; /*!< \brief Auxiliary register. */ +}; + +/*! + * Rotate the content of an __m256i vector (first input) towards the left by + * the number of chars specified by the second input (i.e., the \b imm * 8 least + * significant bits become the \b imm * 8 most significant bits). + * \param[in] a Vector to circularly shift. + * \param[in] imm The shift order in chars. + * \return The shifted vector. + */ +static __m256i _mm256_rotatelli_si256(__m256i a, int imm); + +/*! + * Rotate the content of an __m256i vector (first input) towards the right by + * the number of chars specified by the second input (i.e., the \b imm * 8 most + * significant bits become the \b imm * 8 least significant bits). + * \param[in] a Vector to circularly shift. + * \param[in] imm The shift order in chars. + * \return The shifted vector. + */ +static __m256i _mm256_rotaterli_si256(__m256i a, int imm); + +/*! + * Rotate the contents of a node towards the left by \b imm chars, that is the + * \b imm * 8 most significant bits become the least significant ones. + * \param[in] a The node to rotate. + * \param[in] imm The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \return The rotated node. + */ +static __m256i rotate_node_left(__m256i a, int imm, uint16_t ls); + +/*! + * Rotate the contents of a node towards the right by \b imm chars, that is the + * \b imm * 8 most significant bits become the least significant ones. + * \param[in] a The node to rotate. + * \param[in] imm The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \return The rotated node. + */ +static __m256i rotate_node_right(__m256i a, int imm, uint16_t ls); + +void* create_ldpc_enc_avx2(srslte_ldpc_encoder_t* q) +{ + struct ldpc_enc_avx2* vp = NULL; + + if ((vp = malloc(sizeof(struct ldpc_enc_avx2))) == NULL) { + return NULL; + } + + if ((vp->codeword = srslte_vec_malloc(q->bgN * sizeof(bg_node_t))) == NULL) { + free(vp); + return NULL; + } + + if ((vp->aux = srslte_vec_malloc(q->bgM * sizeof(__m256i))) == NULL) { + free(vp->codeword); + free(vp); + return NULL; + } + + return vp; +} + +void delete_ldpc_enc_avx2(void* p) +{ + struct ldpc_enc_avx2* vp = p; + + if (vp != NULL) { + free(vp->aux); + free(vp->codeword); + free(vp); + } +} + +int load_avx2(void* p, const uint8_t* input, const uint8_t msg_len, const uint8_t cdwd_len, const uint16_t ls) +{ + struct ldpc_enc_avx2* vp = p; + + if (p == NULL) { + return -1; + } + + int i = 0; + int k = 0; + for (; i < msg_len; i++) { + for (k = 0; k < ls; k++) { + vp->codeword[i].c[k] = input[i * ls + k]; + } + bzero(&(vp->codeword[i].c[k]), (SRSLTE_AVX2_B_SIZE - k) * sizeof(uint8_t)); + } + + bzero(vp->codeword + i, (cdwd_len - msg_len) * sizeof(__m256i)); + + return 0; +} + +int return_codeword_avx2(void* p, uint8_t* output, const uint8_t cdwd_len, const uint16_t ls) +{ + struct ldpc_enc_avx2* vp = p; + + if (p == NULL) { + return -1; + } + + int k = 0; + for (int i = 0; i < cdwd_len - 2; i++) { + for (k = 0; k < ls; k++) { + output[i * ls + k] = vp->codeword[i + 2].c[k]; + } + } + return 0; +} + +void encode_ext_region_avx2(srslte_ldpc_encoder_t* q, uint8_t n_layers) +{ + struct ldpc_enc_avx2* vp = q->ptr; + + int m = 0; + int skip = 0; + int k = 0; + + uint16_t* this_shift = NULL; + + __m256i tmp_epi8; + + // Encode the extended region. In case of puncturing or IR-HARQ, we could focus on + // specific check nodes instead of processing all of them from m = 4 to m = M - 1. + for (m = 4; m < n_layers; m++) { + skip = q->bgK + m; + + // the systematic part has already been computed + vp->codeword[skip].v = vp->aux[m]; + + // sum the contribution due to the high-rate region, with the proper circular shifts + for (k = 0; k < 4; k++) { + this_shift = q->pcm + q->bgK + k + m * q->bgN; + if (*this_shift != NO_CNCT) { + tmp_epi8 = rotate_node_right(vp->codeword[q->bgK + k].v, *this_shift, q->ls); + vp->codeword[skip].v = _mm256_xor_si256(vp->codeword[skip].v, tmp_epi8); + } + } + } +} + +void preprocess_systematic_bits_avx2(srslte_ldpc_encoder_t* q) +{ + struct ldpc_enc_avx2* vp = q->ptr; + + int N = q->bgN; + int K = q->bgK; + int M = q->bgM; + int ls = q->ls; + uint16_t* pcm = q->pcm; + + int k = 0; + int m = 0; + uint16_t* this_shift = NULL; + + __m256i tmp_epi8; + + bzero(vp->aux, M * sizeof(__m256i)); + + // split the input message into K chunks of ls bits each and, for all chunks + for (k = 0; k < K; k++) { + // for all check nodes + // NB: if looking for performance you can do the following loop only over the high-rate + // region of the PCM (m=0,1,2,3) and over the check nodes that result in a transmitted + // coded bit after puncturing or IR-HARQ (see Deliverable D1 Section 3.4). + for (m = 0; m < M; m++) { + // entry of pcm corresponding to the current input chunk and the current check node + this_shift = pcm + k + m * N; + + // xor array aux[m] with a circularly shifted version of the current input chunk, unless + // the current check node and variable node are not connected. + if (*this_shift != NO_CNCT) { + tmp_epi8 = rotate_node_right(vp->codeword[k].v, *this_shift, ls); + tmp_epi8 = _mm256_and_si256(tmp_epi8, one_epi8); + vp->aux[m] = _mm256_xor_si256(vp->aux[m], tmp_epi8); + } + } + } +} + +void encode_high_rate_case1_avx2(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2* vp = q->ptr; + + int ls = q->ls; + + int skip0 = q->bgK; + int skip1 = q->bgK + 1; + int skip2 = q->bgK + 2; + int skip3 = q->bgK + 3; + + // first chunk of parity bits + vp->codeword[skip0].v = _mm256_xor_si256(vp->aux[0], vp->aux[1]); + vp->codeword[skip0].v = _mm256_xor_si256(vp->codeword[skip0].v, vp->aux[2]); + vp->codeword[skip0].v = _mm256_xor_si256(vp->codeword[skip0].v, vp->aux[3]); + + __m256i tmp_epi8 = rotate_node_right(vp->codeword[skip0].v, 1, ls); + // second chunk of parity bits + vp->codeword[skip1].v = _mm256_xor_si256(vp->aux[0], tmp_epi8); + // fourth chunk of parity bits + vp->codeword[skip3].v = _mm256_xor_si256(vp->aux[3], tmp_epi8); + // third chunk of parity bits + vp->codeword[skip2].v = _mm256_xor_si256(vp->aux[2], vp->codeword[skip3].v); +} + +void encode_high_rate_case2_avx2(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2* vp = q->ptr; + + int ls = q->ls; + + int skip0 = q->bgK; + int skip1 = q->bgK + 1; + int skip2 = q->bgK + 2; + int skip3 = q->bgK + 3; + + // first chunk of parity bits + __m256i tmp_epi8 = _mm256_xor_si256(vp->aux[0], vp->aux[1]); + tmp_epi8 = _mm256_xor_si256(tmp_epi8, vp->aux[2]); + tmp_epi8 = _mm256_xor_si256(tmp_epi8, vp->aux[3]); + vp->codeword[skip0].v = rotate_node_left(tmp_epi8, 105 % ls, ls); + + // second chunk of parity bits + vp->codeword[skip1].v = _mm256_xor_si256(vp->aux[0], vp->codeword[skip0].v); + // fourth chunk of parity bits + vp->codeword[skip3].v = _mm256_xor_si256(vp->aux[3], vp->codeword[skip0].v); + // third chunk of parity bits + vp->codeword[skip2].v = _mm256_xor_si256(vp->aux[2], vp->codeword[skip3].v); +} + +void encode_high_rate_case3_avx2(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2* vp = q->ptr; + + int ls = q->ls; + + int skip0 = q->bgK; + int skip1 = q->bgK + 1; + int skip2 = q->bgK + 2; + int skip3 = q->bgK + 3; + + // first chunk of parity bits + __m256i tmp_epi8 = _mm256_xor_si256(vp->aux[0], vp->aux[1]); + tmp_epi8 = _mm256_xor_si256(tmp_epi8, vp->aux[2]); + tmp_epi8 = _mm256_xor_si256(tmp_epi8, vp->aux[3]); + vp->codeword[skip0].v = rotate_node_left(tmp_epi8, 1, ls); + + // second chunk of parity bits + vp->codeword[skip1].v = _mm256_xor_si256(vp->aux[0], vp->codeword[skip0].v); + // third chunk of parity bits + vp->codeword[skip2].v = _mm256_xor_si256(vp->aux[1], vp->codeword[skip1].v); + // fourth chunk of parity bits + vp->codeword[skip3].v = _mm256_xor_si256(vp->aux[3], vp->codeword[skip0].v); +} + +void encode_high_rate_case4_avx2(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2* vp = q->ptr; + + int ls = q->ls; + + int skip0 = q->bgK; + int skip1 = q->bgK + 1; + int skip2 = q->bgK + 2; + int skip3 = q->bgK + 3; + + // first chunk of parity bits + vp->codeword[skip0].v = _mm256_xor_si256(vp->aux[0], vp->aux[1]); + vp->codeword[skip0].v = _mm256_xor_si256(vp->codeword[skip0].v, vp->aux[2]); + vp->codeword[skip0].v = _mm256_xor_si256(vp->codeword[skip0].v, vp->aux[3]); + + __m256i tmp_epi8 = rotate_node_right(vp->codeword[skip0].v, 1, ls); + // second chunk of parity bits + vp->codeword[skip1].v = _mm256_xor_si256(vp->aux[0], tmp_epi8); + // third chunk of parity bits + vp->codeword[skip2].v = _mm256_xor_si256(vp->aux[1], vp->codeword[skip1].v); + // fourth chunk of parity bits + vp->codeword[skip3].v = _mm256_xor_si256(vp->aux[3], tmp_epi8); +} + +static __m256i _mm256_rotatelli_si256(__m256i a, int imm) +{ + __m256i rotated_block_a[4]; + + // rotate left a as if made of 64-bit blocks: rotated_block_a[i] contains the + // rotation by i units + rotated_block_a[0] = a; // blocks 0 - 1 - 2 - 3 + rotated_block_a[1] = _mm256_permute4x64_epi64(a, 147); // 3 - 0 - 1 - 2 + rotated_block_a[2] = _mm256_permute4x64_epi64(a, 78); // 2 - 3 - 0 - 1 + rotated_block_a[3] = _mm256_permute4x64_epi64(a, 57); // 1 - 2 - 3 - 0 + + // rotation index we are interested in + int step1 = imm / 8; + // small-step rotation + int left = imm % 8; + // next block, for carry-over + int step2 = (step1 + 1) % 4; + + // shift right each block + __m256i reg1 = _mm256_slli_epi64(rotated_block_a[step1], left * 8); + // carry-over from the next block + __m256i reg2 = _mm256_srli_epi64(rotated_block_a[step2], (8 - left) * 8); + + return _mm256_xor_si256(reg1, reg2); +} + +static __m256i _mm256_rotaterli_si256(__m256i a, int imm) +{ + __m256i rotated_block_a[4]; + + // rotate right a as if made of 64-bit blocks: rotated_block_a[i] contains the + // rotation by i units + rotated_block_a[0] = a; // blocks 0 - 1 - 2 - 3 + rotated_block_a[1] = _mm256_permute4x64_epi64(a, 57); // 1 - 2 - 3 - 0 + rotated_block_a[2] = _mm256_permute4x64_epi64(a, 78); // 2 - 3 - 0 - 1 + rotated_block_a[3] = _mm256_permute4x64_epi64(a, 147); // 3 - 0 - 1 - 2 + + // rotation index we are interested in + int step1 = imm / 8; + // small-step rotation + int left = imm % 8; + // next block, for carry-over + int step2 = (step1 + 1) % 4; + + // shift right each block + __m256i reg1 = _mm256_srli_epi64(rotated_block_a[step1], left * 8); + // carry-over from the next block + __m256i reg2 = _mm256_slli_epi64(rotated_block_a[step2], (8 - left) * 8); + + return _mm256_xor_si256(reg1, reg2); +} + +static __m256i rotate_node_left(__m256i a, int imm, uint16_t ls) +{ + if (imm == 0) { + return a; + } + __m256i step1 = _mm256_rotatelli_si256(a, imm); + if (ls == SRSLTE_AVX2_B_SIZE) { + return step1; + } + + __m256i step2 = _mm256_rotaterli_si256(a, ls - imm); + + step1 = _mm256_and_si256(step1, mask_most_epi8[imm]); + step2 = _mm256_and_si256(step2, mask_least_epi8[imm]); + + step1 = _mm256_xor_si256(step1, step2); + + return step1; + ; +} + +static __m256i rotate_node_right(__m256i a, int imm, uint16_t ls) +{ + if (imm == 0) { + return a; + } + __m256i step1 = _mm256_rotaterli_si256(a, imm); + if (ls == SRSLTE_AVX2_B_SIZE) { + return step1; + } + + __m256i step2 = _mm256_rotatelli_si256(a, ls - imm); + + step1 = _mm256_and_si256(step1, mask_least_epi8[ls - imm]); + step2 = _mm256_and_si256(step2, mask_most_epi8[ls - imm]); + + step1 = _mm256_xor_si256(step1, step2); + + return step1; +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/ldpc/ldpc_enc_avx2long.c b/lib/src/phy/fec/ldpc/ldpc_enc_avx2long.c new file mode 100644 index 000000000..04052f7cb --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_enc_avx2long.c @@ -0,0 +1,403 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_enc_avx2long.c + * \brief Definition of the LDPC encoder inner functions (AVX2 version, large lifting size). + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include + +#include "../utils_avx2.h" +#include "ldpc_enc_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/vector.h" + +#ifdef LV_HAVE_AVX2 + +#include + +#include "ldpc_avx2_consts.h" + +/*! + * \brief Represents a node of the base factor graph. + */ +typedef union bg_node_t { + uint8_t c[SRSLTE_AVX2_B_SIZE]; /*!< Each base node may contain up to \ref SRSLTE_AVX2_B_SIZE lifted nodes. */ + __m256i v; /*!< All the lifted nodes of the current base node as a 256-bit line. */ +} bg_node_t; + +/*! + * \brief Inner registers for the optimized LDPC encoder. + */ +struct ldpc_enc_avx2long { + bg_node_t* codeword; /*!< \brief Contains the entire codeword, before puncturing. */ + __m256i* aux; /*!< \brief Auxiliary register. */ + __m256i* rotated_node; /*!< \brief To store rotated versions of the nodes. */ + + uint8_t n_subnodes; /*!< \brief Number of subnodes. */ +}; + +/*! + * Rotate the contents of a node towards the right by \b shift chars, that is the + * \b shift * 8 most significant bits become the least significant ones. + * \param[in] in_256i The node to rotate. + * \param[out] out The rotated node. + * \param[in] shift The order of the rotation in number of chars. + * \param[in] ls The size of the node (lifting size). + * \param[in] n_subnodes The number of subnodes in each node. + * \return The rotated node. + */ +static void rotate_node_right(const __m256i* in_256i, __m256i* out, uint16_t shift, uint16_t ls, int8_t n_subnodes); + +void* create_ldpc_enc_avx2long(srslte_ldpc_encoder_t* q) +{ + struct ldpc_enc_avx2long* vp = NULL; + + if ((vp = malloc(sizeof(struct ldpc_enc_avx2long))) == NULL) { + return NULL; + } + + int left_out = q->ls % SRSLTE_AVX2_B_SIZE; + vp->n_subnodes = q->ls / SRSLTE_AVX2_B_SIZE + (left_out > 0); + + if ((vp->codeword = srslte_vec_malloc(q->bgN * vp->n_subnodes * sizeof(bg_node_t))) == NULL) { + free(vp); + return NULL; + } + + if ((vp->aux = srslte_vec_malloc(q->bgM * vp->n_subnodes * sizeof(__m256i))) == NULL) { + free(vp->codeword); + free(vp); + return NULL; + } + + // for some reason, the software stops with a segmentation fault when ls is a multiple of 32 + // if we don't add the extra block. + if ((vp->rotated_node = srslte_vec_malloc((vp->n_subnodes + 1) * sizeof(__m256i))) == NULL) { + free(vp->aux); + free(vp->codeword); + free(vp); + return NULL; + } + + return vp; +} + +void delete_ldpc_enc_avx2long(void* p) +{ + struct ldpc_enc_avx2long* vp = p; + + if (vp != NULL) { + free(vp->rotated_node); + free(vp->aux); + free(vp->codeword); + free(vp); + } +} + +int load_avx2long(void* p, const uint8_t* input, const uint8_t msg_len, const uint8_t cdwd_len, const uint16_t ls) +{ + struct ldpc_enc_avx2long* vp = p; + + if (p == NULL) { + return -1; + } + + int k = 0; + int j = 0; + int i = 0; + for (; i < msg_len; i++) { + for (j = 0; j < vp->n_subnodes - 1; j++) { + for (k = 0; k < SRSLTE_AVX2_B_SIZE; k++) { + vp->codeword[i * vp->n_subnodes + j].c[k] = input[i * ls + j * SRSLTE_AVX2_B_SIZE + k]; + } + } + // j is now equal to (vp->n_subnodes - 1) + for (k = 0; k < ls - j * SRSLTE_AVX2_B_SIZE; k++) { + vp->codeword[i * vp->n_subnodes + j].c[k] = input[i * ls + j * SRSLTE_AVX2_B_SIZE + k]; + } + bzero(&(vp->codeword[i * vp->n_subnodes + j].c[k]), (SRSLTE_AVX2_B_SIZE - k) * sizeof(uint8_t)); + } + + bzero(vp->codeword + i * vp->n_subnodes, (cdwd_len - msg_len) * vp->n_subnodes * sizeof(__m256i)); + return 0; +} + +int return_codeword_avx2long(void* p, uint8_t* output, const uint8_t cdwd_len, const uint16_t ls) +{ + struct ldpc_enc_avx2long* vp = p; + + if (p == NULL) { + return -1; + } + + int k = 0; + int j = 0; + for (int i = 0; i < cdwd_len - 2; i++) { + for (j = 0; j < vp->n_subnodes - 1; j++) { + for (k = 0; k < SRSLTE_AVX2_B_SIZE; k++) { + output[i * ls + j * SRSLTE_AVX2_B_SIZE + k] = vp->codeword[(i + 2) * vp->n_subnodes + j].c[k]; + } + } + // j is now equal to vp->n_subndes-1 + for (k = 0; k < ls - j * SRSLTE_AVX2_B_SIZE; k++) { + output[i * ls + j * SRSLTE_AVX2_B_SIZE + k] = vp->codeword[(i + 2) * vp->n_subnodes + j].c[k]; + } + } + return 0; +} + +void encode_ext_region_avx2long(srslte_ldpc_encoder_t* q, uint8_t n_layers) +{ + struct ldpc_enc_avx2long* vp = q->ptr; + + int m = 0; + int skip = 0; + int k = 0; + int j = 0; + + uint16_t* this_shift = NULL; + + // Encode the extended region. In case of puncturing or IR-HARQ, we could focus on + // specific check nodes instead of processing all of them from m = 4 to m = M - 1. + for (m = 4; m < n_layers; m++) { + skip = (q->bgK + m) * vp->n_subnodes; + + // the systematic part has already been computed + for (j = 0; j < vp->n_subnodes; j++) { + vp->codeword[skip + j].v = vp->aux[m * vp->n_subnodes + j]; + } + + // sum the contribution due to the high-rate region, with the proper circular shifts + for (k = 0; k < 4; k++) { + this_shift = q->pcm + q->bgK + k + m * q->bgN; + + // xor array aux[m] with a circularly shifted version of the current input chunk, unless + // the current check node and variable node are not connected. + if (*this_shift != NO_CNCT) { + rotate_node_right( + &(vp->codeword[(q->bgK + k) * vp->n_subnodes].v), vp->rotated_node, *this_shift, q->ls, vp->n_subnodes); + for (j = 0; j < vp->n_subnodes; j++) { + vp->codeword[skip + j].v = _mm256_xor_si256(vp->codeword[skip + j].v, vp->rotated_node[j]); + } + } + } + } +} + +void preprocess_systematic_bits_avx2long(srslte_ldpc_encoder_t* q) +{ + struct ldpc_enc_avx2long* vp = q->ptr; + + int N = q->bgN; + int K = q->bgK; + int M = q->bgM; + int ls = q->ls; + uint16_t* pcm = q->pcm; + + int k = 0; + int m = 0; + int j = 0; + uint16_t* this_shift = NULL; + + __m256i tmp_epi8; + + bzero(vp->aux, M * vp->n_subnodes * sizeof(__m256i)); + + // split the input message into K chunks of ls bits each and, for all chunks + for (k = 0; k < K; k++) { + // for all check nodes + // NB: if looking for performance you can do the following loop only over the high-rate + // region of the PCM (m=0,1,2,3) and over the check nodes that result in a transmitted + // coded bit after puncturing or IR-HARQ (see Deliverable D1 Section 3.4). + for (m = 0; m < M; m++) { + // entry of pcm corresponding to the current input chunk and the current check node + this_shift = pcm + k + m * N; + + // xor array aux[m] with a circularly shifted version of the current input chunk, unless + // the current check node and variable node are not connected. + if (*this_shift != NO_CNCT) { + rotate_node_right(&(vp->codeword[k * vp->n_subnodes].v), vp->rotated_node, *this_shift, ls, vp->n_subnodes); + for (j = 0; j < vp->n_subnodes; j++) { + tmp_epi8 = _mm256_and_si256(vp->rotated_node[j], one_epi8); + vp->aux[m * vp->n_subnodes + j] = _mm256_xor_si256(vp->aux[m * vp->n_subnodes + j], tmp_epi8); + } + } + } + } +} + +void encode_high_rate_case1_avx2long(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2long* vp = q->ptr; + + int ls = q->ls; + int j = 0; + + int skip0 = q->bgK * vp->n_subnodes; + int skip1 = (q->bgK + 1) * vp->n_subnodes; + int skip2 = (q->bgK + 2) * vp->n_subnodes; + int skip3 = (q->bgK + 3) * vp->n_subnodes; + + // first chunk of parity bits + for (j = 0; j < vp->n_subnodes; j++) { + vp->codeword[skip0 + j].v = _mm256_xor_si256(vp->aux[j], vp->aux[vp->n_subnodes + j]); + vp->codeword[skip0 + j].v = _mm256_xor_si256(vp->codeword[skip0 + j].v, vp->aux[2 * vp->n_subnodes + j]); + vp->codeword[skip0 + j].v = _mm256_xor_si256(vp->codeword[skip0 + j].v, vp->aux[3 * vp->n_subnodes + j]); + } + + rotate_node_right(&(vp->codeword[skip0].v), vp->rotated_node, 1, ls, vp->n_subnodes); + for (j = 0; j < vp->n_subnodes; j++) { + // second chunk of parity bits + vp->codeword[skip1 + j].v = _mm256_xor_si256(vp->aux[j], vp->rotated_node[j]); + // fourth chunk of parity bits + vp->codeword[skip3 + j].v = _mm256_xor_si256(vp->aux[3 * vp->n_subnodes + j], vp->rotated_node[j]); + // third chunk of parity bits + vp->codeword[skip2 + j].v = _mm256_xor_si256(vp->aux[2 * vp->n_subnodes + j], vp->codeword[skip3 + j].v); + } +} + +void encode_high_rate_case2_avx2long(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2long* vp = q->ptr; + + int ls = q->ls; + int j = 0; + + int skip0 = q->bgK * vp->n_subnodes; + int skip1 = (q->bgK + 1) * vp->n_subnodes; + int skip2 = (q->bgK + 2) * vp->n_subnodes; + int skip3 = (q->bgK + 3) * vp->n_subnodes; + + // first chunk of parity bits + for (j = 0; j < vp->n_subnodes; j++) { + vp->rotated_node[j] = _mm256_xor_si256(vp->aux[j], vp->aux[vp->n_subnodes + j]); + vp->rotated_node[j] = _mm256_xor_si256(vp->rotated_node[j], vp->aux[2 * vp->n_subnodes + j]); + vp->rotated_node[j] = _mm256_xor_si256(vp->rotated_node[j], vp->aux[3 * vp->n_subnodes + j]); + } + rotate_node_right(vp->rotated_node, &(vp->codeword[skip0].v), ls - 105 % ls, ls, vp->n_subnodes); + + for (j = 0; j < vp->n_subnodes; j++) { + // second chunk of parity bits + vp->codeword[skip1 + j].v = _mm256_xor_si256(vp->aux[j], vp->codeword[skip0 + j].v); + // fourth chunk of parity bits + vp->codeword[skip3 + j].v = _mm256_xor_si256(vp->aux[3 * vp->n_subnodes + j], vp->codeword[skip0 + j].v); + // third chunk of parity bits + vp->codeword[skip2 + j].v = _mm256_xor_si256(vp->aux[2 * vp->n_subnodes + j], vp->codeword[skip3 + j].v); + } +} + +void encode_high_rate_case3_avx2long(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2long* vp = q->ptr; + + int ls = q->ls; + int j = 0; + + int skip0 = q->bgK * vp->n_subnodes; + int skip1 = (q->bgK + 1) * vp->n_subnodes; + int skip2 = (q->bgK + 2) * vp->n_subnodes; + int skip3 = (q->bgK + 3) * vp->n_subnodes; + + // first chunk of parity bits + for (j = 0; j < vp->n_subnodes; j++) { + vp->rotated_node[j] = _mm256_xor_si256(vp->aux[j], vp->aux[vp->n_subnodes + j]); + vp->rotated_node[j] = _mm256_xor_si256(vp->rotated_node[j], vp->aux[2 * vp->n_subnodes + j]); + vp->rotated_node[j] = _mm256_xor_si256(vp->rotated_node[j], vp->aux[3 * vp->n_subnodes + j]); + } + rotate_node_right(vp->rotated_node, &(vp->codeword[skip0].v), ls - 1, ls, vp->n_subnodes); + + for (j = 0; j < vp->n_subnodes; j++) { + // second chunk of parity bits + vp->codeword[skip1 + j].v = _mm256_xor_si256(vp->aux[j], vp->codeword[skip0 + j].v); + // third chunk of parity bits + vp->codeword[skip2 + j].v = _mm256_xor_si256(vp->aux[vp->n_subnodes + j], vp->codeword[skip1 + j].v); + // fourth chunk of parity bits + vp->codeword[skip3 + j].v = _mm256_xor_si256(vp->aux[3 * vp->n_subnodes + j], vp->codeword[skip0 + j].v); + } +} + +void encode_high_rate_case4_avx2long(void* o) +{ + srslte_ldpc_encoder_t* q = o; + struct ldpc_enc_avx2long* vp = q->ptr; + + int ls = q->ls; + int j = 0; + + int skip0 = q->bgK * vp->n_subnodes; + int skip1 = (q->bgK + 1) * vp->n_subnodes; + int skip2 = (q->bgK + 2) * vp->n_subnodes; + int skip3 = (q->bgK + 3) * vp->n_subnodes; + + // first chunk of parity bits + for (j = 0; j < vp->n_subnodes; j++) { + vp->codeword[skip0 + j].v = _mm256_xor_si256(vp->aux[j], vp->aux[vp->n_subnodes + j]); + vp->codeword[skip0 + j].v = _mm256_xor_si256(vp->codeword[skip0 + j].v, vp->aux[2 * vp->n_subnodes + j]); + vp->codeword[skip0 + j].v = _mm256_xor_si256(vp->codeword[skip0 + j].v, vp->aux[3 * vp->n_subnodes + j]); + } + + rotate_node_right(&(vp->codeword[skip0].v), vp->rotated_node, 1, ls, vp->n_subnodes); + for (j = 0; j < vp->n_subnodes; j++) { + // second chunk of parity bits + vp->codeword[skip1 + j].v = _mm256_xor_si256(vp->aux[j], vp->rotated_node[j]); + // third chunk of parity bits + vp->codeword[skip2 + j].v = _mm256_xor_si256(vp->aux[vp->n_subnodes + j], vp->codeword[skip1 + j].v); + // fourth chunk of parity bits + vp->codeword[skip3 + j].v = _mm256_xor_si256(vp->aux[3 * vp->n_subnodes + j], vp->rotated_node[j]); + } +} + +static void rotate_node_right(const __m256i* in_256i, __m256i* out, uint16_t shift, uint16_t ls, int8_t n_subnodes) +{ + const int8_t* in = (const int8_t*)in_256i; + + int16_t n_type1 = (ls - shift) / SRSLTE_AVX2_B_SIZE - (ls == SRSLTE_AVX2_B_SIZE); + int16_t n_type2 = n_subnodes - n_type1 - 1 - (ls == SRSLTE_AVX2_B_SIZE); + int16_t gap = (ls - shift) % SRSLTE_AVX2_B_SIZE; + + int16_t i = 0; + for (; i < n_type1; i++) { + out[i] = _mm256_loadu_si256((const __m256i*)(in + shift + i * SRSLTE_AVX2_B_SIZE)); + } + + __m256i tmp1 = _mm256_loadu_si256((const __m256i*)(in + shift + i * SRSLTE_AVX2_B_SIZE)); + __m256i tmp2 = _mm256_loadu_si256((const __m256i*)(in - gap)); + + out[i] = _mm256_blendv_epi8(tmp1, tmp2, mask_most_epi8[gap]); + + for (i = 1; i <= n_type2; i++) { + out[n_type1 + i] = _mm256_loadu_si256((const __m256i*)(in - gap + i * SRSLTE_AVX2_B_SIZE)); + } +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/ldpc/ldpc_enc_c.c b/lib/src/phy/fec/ldpc/ldpc_enc_c.c new file mode 100644 index 000000000..586a774ef --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_enc_c.c @@ -0,0 +1,221 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_enc_c.c + * \brief Definition of the LDPC encoder inner functions (not optimized). + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include + +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/utils/debug.h" + +void encode_ext_region(srslte_ldpc_encoder_t* q, uint8_t* output, uint8_t n_layers) +{ + + uint8_t(*aux)[q->ls] = q->ptr; + + int m = 0; + int skip = 0; + int i = 0; + int k = 0; + + uint16_t* this_shift = NULL; + + uint8_t tmp_out = 0; + + // Encode the extended region. In case of puncturing or IR-HARQ, we could focus on + // specific check nodes instead of processing all of them from m = 4 to m = M - 1. + for (m = 4; m < n_layers; m++) { + skip = (q->bgK + m - 2) * q->ls; + for (i = 0; i < q->ls; i++) { + // the systematic part has already been computed + output[skip + i] = aux[m][i]; + // sum the contribution due to the high-rate region, with the proper circular shifts + for (k = 0; k < 4; k++) { + this_shift = q->pcm + q->bgK + k + m * q->bgN; + if (*this_shift != NO_CNCT) { + tmp_out = *(output + (q->bgK - 2 + k) * q->ls + ((i + *this_shift) % q->ls)); + output[skip + i] ^= tmp_out; + } + } + } + } +} + +void preprocess_systematic_bits(srslte_ldpc_encoder_t* q, const uint8_t* input) +{ + uint8_t(*aux)[q->ls] = q->ptr; + + int N = q->bgN; + int K = q->bgK; + int M = q->bgM; + int ls = q->ls; + uint16_t* pcm = q->pcm; + + int i = 0; + int k = 0; + int m = 0; + uint16_t* this_shift = NULL; + const uint8_t* this_in_chunk = NULL; + + bzero(aux, M * ls * sizeof(uint8_t)); + + // split the input message into K chunks of ls bits each and, for all chunks + for (k = 0; k < K; k++) { + this_in_chunk = input + k * ls; + // for all check nodes + // NB: if looking for performance you can do the following loop only over the high-rate + // region of the PCM (m=0,1,2,3) and over the check nodes that result in a transmitted + // coded bit after puncturing or IR-HARQ (see Deliverable D1 Section 3.4). + for (m = 0; m < M; m++) { + // entry of pcm corresponding to the current input chunk and the current check node + this_shift = pcm + k + m * N; + + // xor array aux[m] with a circularly shifted version of the current input chunk, unless + // the current check node and variable node are not connected. + for (i = 0; i < ls; i++) { + // mask with 1 to remove the filler bit flag + aux[m][i] ^= *this_shift != NO_CNCT ? 1U & (*(this_in_chunk + ((i + *this_shift) % ls))) : 0; + } + } + } +} + +void encode_high_rate_case1(void* q_, uint8_t* output) +{ + srslte_ldpc_encoder_t* q = (srslte_ldpc_encoder_t*)q_; + uint8_t(*aux)[q->ls] = q->ptr; + + int ls = q->ls; + int k = 0; + + int skip0 = (q->bgK - 2) * ls; + int skip1 = (q->bgK - 1) * ls; + int skip2 = q->bgK * ls; + int skip3 = (q->bgK + 1) * ls; + for (k = 0; k < ls; k++) { + // first chunk of parity bits + output[skip0 + k] = aux[0][k] ^ aux[1][k]; + output[skip0 + k] ^= aux[2][k]; + output[skip0 + k] ^= aux[3][k]; + } + for (k = 0; k < ls; k++) { + // second chunk of parity bits + output[skip1 + k] = aux[0][k] ^ output[skip0 + ((k + 1) % ls)]; + // fourth chunk of parity bits + output[skip3 + k] = aux[3][k] ^ output[skip0 + ((k + 1) % ls)]; + // third chunk of parity bits + output[skip2 + k] = aux[2][k] ^ output[skip3 + k]; + } +} + +void encode_high_rate_case2(srslte_ldpc_encoder_t* q, uint8_t* output) +{ + uint8_t(*aux)[q->ls] = q->ptr; + + int ls = q->ls; + int i = 0; + int k = 0; + + int skip0 = (q->bgK - 2) * ls; + int skip1 = (q->bgK - 1) * ls; + int skip2 = q->bgK * ls; + int skip3 = (q->bgK + 1) * ls; + for (k = 0; k < ls; k++) { + i = (k - 105) % ls; + i = i >= 0 ? i : i + ls; + + // first chunk of parity bits + output[skip0 + k] = aux[0][i] ^ aux[1][i]; + output[skip0 + k] ^= aux[2][i]; + output[skip0 + k] ^= aux[3][i]; + // second chunk of parity bits + output[skip1 + k] = aux[0][k] ^ output[skip0 + k]; + // fourth chunk of parity bits + output[skip3 + k] = aux[3][k] ^ output[skip0 + k]; + // third chunk of parity bits + output[skip2 + k] = aux[2][k] ^ output[skip3 + k]; + } +} + +void encode_high_rate_case3(srslte_ldpc_encoder_t* q, uint8_t* output) +{ + uint8_t(*aux)[q->ls] = q->ptr; + + int ls = q->ls; + int i = 0; + int k = 0; + + int skip0 = (q->bgK - 2) * ls; + int skip1 = (q->bgK - 1) * ls; + int skip2 = q->bgK * ls; + int skip3 = (q->bgK + 1) * ls; + for (k = 0; k < ls; k++) { + i = (k - 1) % ls; + i = i >= 0 ? i : i + ls; + + // first chunk of parity bits + output[skip0 + k] = aux[0][i] ^ aux[1][i]; + output[skip0 + k] ^= aux[2][i]; + output[skip0 + k] ^= aux[3][i]; + // second chunk of parity bits + output[skip1 + k] = aux[0][k] ^ output[skip0 + k]; + // third chunk of parity bits + output[skip2 + k] = aux[1][k] ^ output[skip1 + k]; + // fourth chunk of parity bits + output[skip3 + k] = aux[3][k] ^ output[skip0 + k]; + } +} + +void encode_high_rate_case4(srslte_ldpc_encoder_t* q, uint8_t* output) +{ + uint8_t(*aux)[q->ls] = q->ptr; + + int ls = q->ls; + int k = 0; + + int skip0 = (q->bgK - 2) * ls; + int skip1 = (q->bgK - 1) * ls; + int skip2 = q->bgK * ls; + int skip3 = (q->bgK + 1) * ls; + for (k = 0; k < ls; k++) { + // first chunk of parity bits + output[skip0 + k] = aux[0][k] ^ aux[1][k]; + output[skip0 + k] ^= aux[2][k]; + output[skip0 + k] ^= aux[3][k]; + } + for (k = 0; k < ls; k++) { + // second chunk of parity bits + output[skip1 + k] = aux[0][k] ^ output[skip0 + ((k + 1) % ls)]; + // third chunk of parity bits + output[skip2 + k] = aux[1][k] ^ output[skip1 + k]; + // fourth chunk of parity bits + output[skip3 + k] = aux[3][k] ^ output[skip0 + ((k + 1) % ls)]; + } +} diff --git a/lib/src/phy/fec/ldpc/ldpc_encoder.c b/lib/src/phy/fec/ldpc/ldpc_encoder.c new file mode 100644 index 000000000..04ae14741 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_encoder.c @@ -0,0 +1,390 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_encoder.c + * \brief Definition of the LDPC encoder. + * \author David Gregoratti (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include + +#include "../utils_avx2.h" +#include "ldpc_enc_all.h" +#include "srslte/phy/fec/ldpc/base_graph.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/vector.h" + +/*! Carries out the actual destruction of the memory allocated to the encoder. */ +static void free_enc_c(void* o) +{ + srslte_ldpc_encoder_t* q = o; + if (q->pcm) { + free(q->pcm); + } + if (q->ptr) { + free(q->ptr); + } +} + +/*! Carries out the actual encoding with a non-optimized encoder. */ +static int encode_c(void* o, const uint8_t* input, uint8_t* output, uint32_t input_length, uint32_t cdwd_rm_length) +{ + srslte_ldpc_encoder_t* q = o; + + if (input_length / q->bgK != q->ls) { + perror("Dimension mismatch.\n"); + return -1; + } + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + + // systematic bits + int skip_in = 2 * q->ls; + for (int k = 0; k < (q->bgK - 2) * q->ls; k++) { + output[k] = input[skip_in + k]; + } + + preprocess_systematic_bits(q, input); + + q->encode_high_rate(q, output); + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + encode_ext_region(q, output, n_layers); + + return 0; +} + +/*! Initializes a non-optimized encoder. */ +static int init_c(srslte_ldpc_encoder_t* q) +{ + int ls_index = get_ls_index(q->ls); + + if (ls_index == VOID_LIFTSIZE) { + ERROR("Invalid lifting size %d\n", q->ls); + return -1; + } + + if (q->bg == BG1 && ls_index != 6) { + q->encode_high_rate = encode_high_rate_case1; + } else if (q->bg == BG1 && ls_index == 6) { + q->encode_high_rate = encode_high_rate_case2; + } else if (q->bg == BG2 && ls_index != 3 && ls_index != 7) { + q->encode_high_rate = encode_high_rate_case3; + } else if (q->bg == BG2 && (ls_index == 3 || ls_index == 7)) { + q->encode_high_rate = encode_high_rate_case4; + } else { + ERROR("Invalid lifting size %d and/or Base Graph %d\n", q->ls, q->bg + 1); + return -1; + } + + q->free = free_enc_c; + + q->ptr = srslte_vec_malloc(q->bgM * q->ls * sizeof(uint8_t)); + if (!q->ptr) { + perror("malloc"); + free_enc_c(q); + return -1; + } + + q->encode = encode_c; + + return 0; +} + +#ifdef LV_HAVE_AVX2 +/*! Carries out the actual destruction of the memory allocated to the encoder. */ +static void free_enc_avx2(void* o) +{ + srslte_ldpc_encoder_t* q = o; + if (q->pcm) { + free(q->pcm); + } + if (q->ptr) { + delete_ldpc_enc_avx2(q->ptr); + } +} + +/*! Carries out the actual encoding with an optimized encoder. */ +static int encode_avx2(void* o, const uint8_t* input, uint8_t* output, uint32_t input_length, uint32_t cdwd_rm_length) +{ + srslte_ldpc_encoder_t* q = o; + + if (input_length / q->bgK != q->ls) { + perror("Dimension mismatch.\n"); + return -1; + } + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + + load_avx2(q->ptr, input, q->bgK, q->bgN, q->ls); + + preprocess_systematic_bits_avx2(q); + + q->encode_high_rate_avx2(q); + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + encode_ext_region_avx2(q, n_layers); + + return_codeword_avx2(q->ptr, output, n_layers + q->bgK, q->ls); + + return 0; +} + +/*! Initializes an optimized encoder. */ +static int init_avx2(srslte_ldpc_encoder_t* q) +{ + int ls_index = get_ls_index(q->ls); + + if (ls_index == VOID_LIFTSIZE) { + ERROR("Invalid lifting size %d\n", q->ls); + return -1; + } + + if (q->bg == BG1 && ls_index != 6) { + q->encode_high_rate_avx2 = encode_high_rate_case1_avx2; + } else if (q->bg == BG1 && ls_index == 6) { + q->encode_high_rate_avx2 = encode_high_rate_case2_avx2; + } else if (q->bg == BG2 && ls_index != 3 && ls_index != 7) { + q->encode_high_rate_avx2 = encode_high_rate_case3_avx2; + } else if (q->bg == BG2 && (ls_index == 3 || ls_index == 7)) { + q->encode_high_rate_avx2 = encode_high_rate_case4_avx2; + } else { + ERROR("Invalid lifting size %d and/or Base Graph %d\n", q->ls, q->bg + 1); + return -1; + } + + q->free = free_enc_avx2; + + if ((q->ptr = create_ldpc_enc_avx2(q)) == NULL) { + perror("Create_ldpc_enc\n"); + free_enc_avx2(q); + return -1; + } + + q->encode = encode_avx2; + + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the encoder. */ +static void free_enc_avx2long(void* o) +{ + srslte_ldpc_encoder_t* q = o; + if (q->pcm) { + free(q->pcm); + } + if (q->ptr) { + delete_ldpc_enc_avx2long(q->ptr); + } +} + +/*! Carries out the actual encoding with an optimized encoder. */ +static int +encode_avx2long(void* o, const uint8_t* input, uint8_t* output, uint32_t input_length, uint32_t cdwd_rm_length) +{ + srslte_ldpc_encoder_t* q = o; + + if (input_length / q->bgK != q->ls) { + perror("Dimension mismatch.\n"); + return -1; + } + + // it must be smaller than the codeword size + if (cdwd_rm_length > q->liftN - 2 * q->ls) { + cdwd_rm_length = q->liftN - 2 * q->ls; + } + // We need at least q->bgK + 4 variable nodes to cover the high-rate region. However, + // 2 variable nodes are systematically punctured by the encoder. + if (cdwd_rm_length < (q->bgK + 2) * q->ls) { + // ERROR("The rate-matched codeword should have a length at least equal to the high-rate region.\n"); + cdwd_rm_length = (q->bgK + 2) * q->ls; + // return -1; + } + if (cdwd_rm_length % q->ls) { + cdwd_rm_length = (cdwd_rm_length / q->ls + 1) * q->ls; + // ERROR("The rate-matched codeword length should be a multiple of the lifting size.\n"); + // return -1; + } + load_avx2long(q->ptr, input, q->bgK, q->bgN, q->ls); + + preprocess_systematic_bits_avx2long(q); + + q->encode_high_rate_avx2(q); + + // When computing the number of layers, we need to recall that the standard always removes + // the first two variable nodes from the final codeword. + uint8_t n_layers = cdwd_rm_length / q->ls - q->bgK + 2; + + encode_ext_region_avx2long(q, n_layers); + + return_codeword_avx2long(q->ptr, output, n_layers + q->bgK, q->ls); + + return 0; +} + +/*! Initializes an optimized encoder. */ +static int init_avx2long(srslte_ldpc_encoder_t* q) +{ + int ls_index = get_ls_index(q->ls); + + if (ls_index == VOID_LIFTSIZE) { + ERROR("Invalid lifting size %d\n", q->ls); + return -1; + } + + if (q->bg == BG1 && ls_index != 6) { + q->encode_high_rate_avx2 = encode_high_rate_case1_avx2long; + } else if (q->bg == BG1 && ls_index == 6) { + q->encode_high_rate_avx2 = encode_high_rate_case2_avx2long; + } else if (q->bg == BG2 && ls_index != 3 && ls_index != 7) { + q->encode_high_rate_avx2 = encode_high_rate_case3_avx2long; + } else if (q->bg == BG2 && (ls_index == 3 || ls_index == 7)) { + q->encode_high_rate_avx2 = encode_high_rate_case4_avx2long; + } else { + ERROR("Invalid lifting size %d and/or Base Graph %d\n", q->ls, q->bg + 1); + return -1; + } + + q->free = free_enc_avx2long; + + if ((q->ptr = create_ldpc_enc_avx2long(q)) == NULL) { + perror("Create_ldpc_enc\n"); + free_enc_avx2long(q); + return -1; + } + + q->encode = encode_avx2long; + + return 0; +} + +#endif + +int srslte_ldpc_encoder_init(srslte_ldpc_encoder_t* q, + srslte_ldpc_encoder_type_t type, + srslte_basegraph_t bg, + uint16_t ls) +{ + + switch (bg) { + case BG1: + q->bgN = BG1Nfull; + q->bgM = BG1M; + break; + case BG2: + q->bgN = BG2Nfull; + q->bgM = BG2M; + break; + default: + ERROR("Base Graph BG%d does not exist\n", bg + 1); + return -1; + } + q->bg = bg; + q->bgK = q->bgN - q->bgM; + + q->ls = ls; + q->liftK = ls * q->bgK; + q->liftM = ls * q->bgM; + q->liftN = ls * q->bgN; + + q->pcm = srslte_vec_malloc(q->bgM * q->bgN * sizeof(uint16_t)); + if (!q->pcm) { + perror("malloc"); + return -1; + } + if (create_compact_pcm(q->pcm, NULL, q->bg, q->ls) != 0) { + perror("Create PCM"); + return -1; + } + + switch (type) { + case SRSLTE_LDPC_ENCODER_C: + return init_c(q); +#ifdef LV_HAVE_AVX2 + case SRSLTE_LDPC_ENCODER_AVX2: + if (ls <= SRSLTE_AVX2_B_SIZE) { + return init_avx2(q); + } else { + return init_avx2long(q); + } +#endif // LV_HAVE_AVX2 + default: + return -1; + } +} + +void srslte_ldpc_encoder_free(srslte_ldpc_encoder_t* q) +{ + if (q->free) { + q->free(q); + } + bzero(q, sizeof(srslte_ldpc_encoder_t)); +} + +int srslte_ldpc_encoder_encode(srslte_ldpc_encoder_t* q, + const uint8_t* input, + uint8_t* output, + uint32_t input_length, + uint32_t cdwd_rm_length) +{ + return q->encode(q, input, output, input_length, cdwd_rm_length); +} diff --git a/lib/src/phy/fec/ldpc/ldpc_rm.c b/lib/src/phy/fec/ldpc/ldpc_rm.c new file mode 100644 index 000000000..ffa9502d4 --- /dev/null +++ b/lib/src/phy/fec/ldpc/ldpc_rm.c @@ -0,0 +1,696 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_rm.c + * \brief Definition of the LDPC Rate Matcher and Rate Demacher (float-valued, int16_t and int8_t) + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" //FILLER_BIT definition +#include "srslte/phy/fec/ldpc/ldpc_rm.h" +#include "srslte/phy/utils/vector.h" + +#include "srslte/phy/utils/debug.h" + +//#define debug +/*! + * \brief Look-up table: k0 indices + * + * For each rv, the corresponding row contains the indices of the + * two base graphs. + */ +static const uint32_t BASEK0[4][2] = {{0, 0}, {17, 13}, {33, 25}, {56, 43}}; + +/*! + * \brief Look-up table: base codeword lengths N/LS + * + */ +static const uint32_t BASEN[2] = {66, 50}; + +/*! + * \brief Look-up table: base codeblock lengths K/LS + * + */ +static const uint32_t BASEK[2] = {22, 10}; + +/*! + * \brief Look-up table: Retuns the mod order associated to a mod_type_t + * + */ +static const uint32_t MODORD[5] = {1, 2, 4, 6, 8}; + +/*! + * \brief Look-up table: Maximum number of coded bits available for transmission in a + * transport block + *If there is only one user + * in the system using the maximum bandwidth, then + * MAXE is smaller than nRB * nDS * nSC_RB * modOrd * nLayers + * where nLayers is the number of layer (<=4), modOrder is the modulation order (<=8) + * nSC_RB is the number of subcarriers per resource block (RB) (<=12), nDS is the number of symbols + * to transmit data in a RB (13) and nRB is the maximum number of resource blocks in the system, + * this depends on the channel bandwidth and subcarrier spacing and according to + * Table 5.3.2-1: Maximum transmission bandwidth configuration NRB : FR1 , + * it is not larger than 273 (i.e. for subcarrier spacing 10 and bandwidth 100MHz) + */ +static const uint32_t MAXE = 273 * 13 * 12 * 8 * 4; + +/*! + * \brief Describes an rate matcher. + */ +struct pRM_tx { + uint8_t* tmp_rm_codeword; /*!< \brief Pointer to a temporal buffer between bit-selection and interleaver. */ +}; + +/*! + * \brief Describes an rate dematcher (float version). + */ +struct pRM_rx_f { + float* tmp_rm_symbol; /*!< \brief Pointer to a temporal buffer between bit-selection and interleaver. */ + uint32_t* indices; /*!< \brief Pointer to a temporal buffer with the indices for bit-selection. */ +}; + +/*! + * \brief Describes an rate dematcher (short version). + */ +struct pRM_rx_s { + int16_t* tmp_rm_symbol; /*!< \brief Pointer to a temporal buffer between bit-selection and interleaver. */ + uint32_t* indices; /*!< \brief Pointer to a temporal buffer with the indices for bit-selection. */ +}; + +/*! + * \brief Describes an rate dematcher (char version). + */ +struct pRM_rx_c { + int8_t* tmp_rm_symbol; /*!< \brief Pointer to a temporal buffer between bit-selection and interleaver. */ + uint32_t* indices; /*!< \brief Pointer to a temporal buffer with the indices for bit-selection. */ +}; + +/*! + * Initialize rate-matching parameters + */ +static int init_rm(srslte_ldpc_rm_t* p, + const uint32_t E, + const uint32_t F, + const uint32_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref) +{ + if (p == NULL) { + return -1; + } + + uint32_t basek0 = BASEK0[rv][bg]; + uint32_t mod_order = MODORD[mod_type]; + uint32_t N = ls * BASEN[bg]; + uint32_t K = ls * BASEK[bg]; + + // check E smaller than MAXE + if ((E > MAXE) != 0) { // + ERROR("Wrong RM codeword length (E) = %d. It must be smaller than %d for base graph %d\n", E, MAXE, bg + 1); + return -1; + } + + // check out_len is multiple of mod_order + if ((E % mod_order) != 0) { // N can only be a multiple of either BASEN[0] or BASEN[1], but not both + ERROR("Wrong RM codeword length (E) = %d. It must be a multiple of modulation order = %d\n", E, mod_order); + return -1; + } + + // Set parameters + p->N = N; + p->E = E; + p->K = K; + p->F = F; + p->ls = ls; + p->mod_order = mod_order; + p->bg = bg; + // Determine Ncb and k0 + if (N <= Nref) { + p->Ncb = N; + p->k0 = ls * basek0; + } else { + p->Ncb = Nref; + p->k0 = ls * ((basek0 * Nref) / N); + } + + return 0; +} + +/*! + * Bit selection for the rate-matching block. Selects out_len bits, starting from + * the k0th, ingoring filler bits, and consider an input buffer of length Ncb. + */ +static void bit_selection_rm_tx(const uint8_t* input, + uint8_t* output, + const uint32_t out_len, + const uint32_t k0, + const uint32_t Ncb) +{ + uint32_t E = out_len; + + uint32_t k = 0; + uint32_t j = 0; + uint32_t icwd = 0; + + while (k < E) { + icwd = (k0 + j) % Ncb; + if (input[icwd] != FILLER_BIT) { + output[k] = input[icwd]; + k = k + 1; + } + j = j + 1; + } // while +} + +/*! + * Undoes bit selection for the rate-dematching block. + * The output has the codeword length N. It inserts filler bits as INFINITY symbols + * (to indicate very reliable 0 bit), and set to 0 (completely unknown bit) all + * missing symbol. Repeated symbols are added. + */ +static void bit_selection_rm_rx(const float* input, + const uint32_t in_len, + float* output, + const uint32_t out_len, + uint32_t* indices, + const uint32_t ini_exclude, + const uint32_t end_exclude, + const uint32_t k0, + const uint32_t Ncb) +{ + uint32_t E = in_len; + uint32_t N = out_len; + + uint32_t k = 0; + uint32_t j = 0; + uint32_t icwd = 0; + while (k < E) { + icwd = (k0 + j) % Ncb; + if (!(icwd >= ini_exclude && icwd < end_exclude)) { // avoid filler bits + indices[k] = icwd; + k = k + 1; + } + j = j + 1; + } // while + + // Initializes the data_decoded_vector to all zeros + bzero(output, N * sizeof(float)); + + // set filler bits to INFINITY + for (uint32_t i = ini_exclude; i < end_exclude; i++) { + output[i] = INFINITY; + } + + // Add soft bits, in case of repetition + for (uint32_t i = 0; i < E; i++) { + output[indices[i]] = output[indices[i]] + input[i]; + } +} + +/*! + * Undoes bit selection for the rate-dematching block. + * The output has the codeword length N. It inserts filler bits as INFINITY symbols + * (to indicate very reliable 0 bit), and set to 0 (completely unknown bit) all + * missing symbol. Repeated symbols are added. + */ +static void bit_selection_rm_rx_s(const int16_t* input, + const uint32_t in_len, + int16_t* output, + const uint32_t out_len, + uint32_t* indices, + const uint32_t ini_exclude, + const uint32_t end_exclude, + const uint32_t k0, + const uint32_t Ncb) +{ + uint32_t E = in_len; + uint32_t N = out_len; + + uint32_t k = 0; + uint32_t j = 0; + uint32_t icwd = 0; + while (k < E) { + icwd = (k0 + j) % Ncb; + if (!(icwd >= ini_exclude && icwd < end_exclude)) { // avoid filler bits + indices[k] = icwd; + k = k + 1; + } + j = j + 1; + } // while + + // Initializes the data_decoded_vector to all zeros + bzero(output, N * sizeof(int16_t)); + + // set filler bits to INFINITY + const long infinity16 = (1U << 15U) - 1; // Max positive value in 16-bit representation + for (uint32_t i = ini_exclude; i < end_exclude; i++) { + output[i] = infinity16; + } + + // Add soft bits, in case of repetition + const int16_t infinity15 = + (1U << 14U) - 1; // Messages use a 15-bit quantization. Soft bits use the remaining bit to denote infinity. + // input is assume to be quantized from -infinity15 to infinity15. Only filler bits can be infinity16 + long tmp = 0; + for (uint32_t i = 0; i < E; i++) { + tmp = (long)output[indices[i]] + input[i]; + if (tmp > infinity15) { + tmp = infinity15; + } + if (tmp < -infinity15) { + tmp = -infinity15; + } + output[indices[i]] = (int16_t)tmp; + } +} + +/*! + * Undoes bit selection for the rate-dematching block (int8_t). + * The output has the codeword length N. It inserts filler bits as INFINITY symbols + * (to indicate very reliable 0 bit), and set to 0 (completely unknown bit) all + * missing symbol. Repeated symbols are added. + */ +static void bit_selection_rm_rx_c(const int8_t* input, + const uint32_t in_len, + int8_t* output, + const uint32_t out_len, + uint32_t* indices, + const uint32_t ini_exclude, + const uint32_t end_exclude, + const uint32_t k0, + const uint32_t Ncb) +{ + uint32_t E = in_len; + uint32_t N = out_len; + + uint32_t k = 0; + uint32_t j = 0; + uint32_t icwd = 0; + while (k < E) { + icwd = (k0 + j) % Ncb; + if (!(icwd >= ini_exclude && icwd < end_exclude)) { // avoid filler bits + indices[k] = icwd; + k = k + 1; + } + j = j + 1; + } // while + + // Initializes the data_decoded_vector to all zeros + bzero(output, N * sizeof(int8_t)); + + // set filler bits to INFINITY + const long infinity8 = (1U << 7U) - 1; // Max positive value in 8-bit representation + for (uint32_t i = ini_exclude; i < end_exclude; i++) { + output[i] = infinity8; + } + + // Add soft bits, in case of repetition + const int16_t infinity7 = + (1U << 6U) - 1; // Messages use a 15-bit quantization. Soft bits use the remaining bit to denote infinity. + // input is assume to be quantized from -infinity15 to infinity15. Only filler bits can be infinity16 + long tmp = 0; + for (uint32_t i = 0; i < E; i++) { + tmp = (long)output[indices[i]] + input[i]; + if (tmp > infinity7) { + tmp = infinity7; + } + if (tmp < -infinity7) { + tmp = -infinity7; + } + output[indices[i]] = (int8_t)tmp; + } +} + +/*! + * Bit interleaver + */ +static void +bit_interleaver_rm_tx(const uint8_t* input, uint8_t* output, const uint32_t in_out_len, const uint32_t mod_order) +{ + uint32_t cols = 0; + uint32_t rows = 0; + rows = mod_order; + cols = in_out_len / rows; + for (uint32_t j = 0; j < cols; j++) { + for (uint32_t i = 0; i < rows; i++) { + output[i + j * rows] = input[i * cols + j]; + } + } +} + +/*! + * Bit deinterleaver (float) + */ +static void +bit_interleaver_rm_rx(const float* input, float* output, const uint32_t in_out_len, const uint32_t mod_order) +{ + uint32_t cols = 0; + uint32_t rows = 0; + rows = mod_order; + cols = in_out_len / rows; + for (uint32_t j = 0; j < cols; j++) { + for (uint32_t i = 0; i < rows; i++) { + output[i * cols + j] = input[j * rows + i]; + } + } +} + +/*! + * Bit deinterleaver (short) + */ +static void +bit_interleaver_rm_rx_s(const int16_t* input, int16_t* output, const uint32_t in_out_len, const uint32_t mod_order) +{ + uint32_t cols = 0; + uint32_t rows = 0; + rows = mod_order; + cols = in_out_len / rows; + for (uint32_t j = 0; j < cols; j++) { + for (uint32_t i = 0; i < rows; i++) { + output[i * cols + j] = input[j * rows + i]; + } + } +} + +/*! + * Bit deinterleaver (short) + */ +static void +bit_interleaver_rm_rx_c(const int8_t* input, int8_t* output, const uint32_t in_out_len, const uint32_t mod_order) +{ + uint32_t cols = 0; + uint32_t rows = 0; + rows = mod_order; + cols = in_out_len / rows; + for (uint32_t j = 0; j < cols; j++) { + for (uint32_t i = 0; i < rows; i++) { + output[i * cols + j] = input[j * rows + i]; + } + } +} + +int srslte_ldpc_rm_tx_init(srslte_ldpc_rm_t* p) +{ + if (p == NULL) { + return -1; + } + + struct pRM_tx* pp = NULL; // pointer to the rate matcher instance + + // allocate memory to the rate-matcher instance + if ((pp = malloc(sizeof(struct pRM_tx))) == NULL) { + return -1; + } + p->ptr = pp; + + // allocate memory to the rm_codeword after bit selection. + if ((pp->tmp_rm_codeword = srslte_vec_u8_malloc(MAXE)) == NULL) { + free(pp); + return -1; + } + + return 0; +} + +int srslte_ldpc_rm_rx_init_f(srslte_ldpc_rm_t* p) +{ + + if (p == NULL) { + return -1; + } + + struct pRM_rx_f* pp = NULL; // pointer to the rate matcher instance + + // allocate memory to ther rate-demacher instance + if ((pp = malloc(sizeof(struct pRM_rx_f))) == NULL) { + return -1; + } + p->ptr = pp; + + // allocate memory to the temporal buffer + if ((pp->tmp_rm_symbol = srslte_vec_f_malloc(MAXE)) == NULL) { + free(pp); + return -1; + } + + if ((pp->indices = srslte_vec_u32_malloc(MAXE)) == NULL) { + free(pp->tmp_rm_symbol); + free(pp); + return -1; + } + return 0; +} + +int srslte_ldpc_rm_rx_init_s(srslte_ldpc_rm_t* p) +{ + if (p == NULL) { + return -1; + } + + struct pRM_rx_s* pp = NULL; // pointer to the rate matcher instance + + // allocate memory to ther rate-demacher instance + if ((pp = malloc(sizeof(struct pRM_rx_s))) == NULL) { + return -1; + } + p->ptr = pp; + + // allocate memory to the temporal buffer + if ((pp->tmp_rm_symbol = srslte_vec_i16_malloc(MAXE)) == NULL) { + free(pp); + return -1; + } + + if ((pp->indices = srslte_vec_u32_malloc(MAXE)) == NULL) { + free(pp->tmp_rm_symbol); + free(pp); + return -1; + } + + return 0; +} +int srslte_ldpc_rm_rx_init_c(srslte_ldpc_rm_t* p) +{ + if (p == NULL) { + return -1; + } + + struct pRM_rx_c* pp = NULL; // pointer to the rate matcher instance + + // allocate memory to ther rate-demacher instance + if ((pp = malloc(sizeof(struct pRM_rx_c))) == NULL) { + return -1; + } + p->ptr = pp; + + // allocate memory to the temporal buffer + if ((pp->tmp_rm_symbol = srslte_vec_i8_malloc(MAXE)) == NULL) { + free(pp); + return -1; + } + + if ((pp->indices = srslte_vec_u32_malloc(MAXE)) == NULL) { + free(pp->tmp_rm_symbol); + free(pp); + return -1; + } + + return 0; +} + +void srslte_ldpc_rm_tx_free(srslte_ldpc_rm_t* q) +{ + if (q != NULL) { + struct pRM_tx* qq = q->ptr; + free(qq->tmp_rm_codeword); + free(qq); + } +} + +void srslte_ldpc_rm_rx_free_f(srslte_ldpc_rm_t* q) +{ + if (q != NULL) { + struct pRM_rx_f* qq = q->ptr; + free(qq->tmp_rm_symbol); + free(qq->indices); + free(qq); + } +} + +void srslte_ldpc_rm_rx_free_s(srslte_ldpc_rm_t* q) +{ + if (q != NULL) { + struct pRM_rx_s* qq = q->ptr; + free(qq->tmp_rm_symbol); + free(qq->indices); + free(qq); + } +} + +void srslte_ldpc_rm_rx_free_c(srslte_ldpc_rm_t* q) +{ + if (q != NULL) { + struct pRM_rx_c* qq = q->ptr; + free(qq->tmp_rm_symbol); + free(qq->indices); + free(qq); + } +} + +int srslte_ldpc_rm_tx(srslte_ldpc_rm_t* q, + const uint8_t* input, + uint8_t* output, + const uint32_t E, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref) + +{ + // initialize parameters. The filler bit is ignored + if (init_rm(q, E, 0, bg, ls, rv, mod_type, Nref) != 0) { + perror("rate matcher init"); + exit(-1); + } + + struct pRM_tx* pp = q->ptr; + uint8_t* tmp_rm_codeword = pp->tmp_rm_codeword; + + if (q->mod_order == 1) { // interleaver can be skipped + bit_selection_rm_tx(input, output, q->E, q->k0, q->Ncb); + } else { + bit_selection_rm_tx(input, tmp_rm_codeword, q->E, q->k0, q->Ncb); + bit_interleaver_rm_tx(tmp_rm_codeword, output, q->E, q->mod_order); + } + + return 0; +} + +int srslte_ldpc_rm_rx_f(srslte_ldpc_rm_t* q, + const float* input, + float* output, + const uint32_t E, + const uint32_t F, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref) +{ + + if (init_rm(q, E, F, bg, ls, rv, mod_type, Nref) != 0) { + perror("rate matcher init"); + exit(-1); + } + + struct pRM_rx_f* pp = q->ptr; + float* tmp_rm_symbol = pp->tmp_rm_symbol; + uint32_t* indices = pp->indices; + uint32_t end_exclude = q->K - 2 * q->ls; + uint32_t ini_exclude = end_exclude - q->F; + + if (q->mod_order == 1) { // interleaver can be skipped + bit_selection_rm_rx(input, q->E, output, q->N, indices, ini_exclude, end_exclude, q->k0, q->Ncb); + } else { + bit_interleaver_rm_rx(input, tmp_rm_symbol, q->E, q->mod_order); + bit_selection_rm_rx(tmp_rm_symbol, q->E, output, q->N, indices, ini_exclude, end_exclude, q->k0, q->Ncb); + } + return 0; +} + +int srslte_ldpc_rm_rx_s(srslte_ldpc_rm_t* q, + const int16_t* input, + int16_t* output, + const uint32_t E, + const uint32_t F, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref) +{ + + if (init_rm(q, E, F, bg, ls, rv, mod_type, Nref) != 0) { + perror("rate matcher init"); + exit(-1); + } + + struct pRM_rx_f* pp = q->ptr; + int16_t* tmp_rm_symbol = (int16_t*)pp->tmp_rm_symbol; + uint32_t* indices = pp->indices; + uint32_t end_exclude = q->K - 2 * q->ls; + uint32_t ini_exclude = end_exclude - q->F; + + if (q->mod_order == 1) { // interleaver can be skipped + bit_selection_rm_rx_s(input, q->E, output, q->N, indices, ini_exclude, end_exclude, q->k0, q->Ncb); + } else { + bit_interleaver_rm_rx_s(input, tmp_rm_symbol, q->E, q->mod_order); + bit_selection_rm_rx_s(tmp_rm_symbol, q->E, output, q->N, indices, ini_exclude, end_exclude, q->k0, q->Ncb); + } + + return 0; +} + +int srslte_ldpc_rm_rx_c(srslte_ldpc_rm_t* q, + const int8_t* input, + int8_t* output, + const uint32_t E, + const uint32_t F, + const srslte_basegraph_t bg, + const uint32_t ls, + const uint8_t rv, + const mod_type_t mod_type, + const uint32_t Nref) +{ + + if (init_rm(q, E, F, bg, ls, rv, mod_type, Nref) != 0) { + perror("rate matcher init"); + exit(-1); + } + + struct pRM_rx_c* pp = q->ptr; + int8_t* tmp_rm_symbol = pp->tmp_rm_symbol; + uint32_t* indices = pp->indices; + uint32_t end_exclude = q->K - 2 * q->ls; + uint32_t ini_exclude = end_exclude - q->F; + + if (q->mod_order == 1) { // interleaver can be skipped + bit_selection_rm_rx_c(input, q->E, output, q->N, indices, ini_exclude, end_exclude, q->k0, q->Ncb); + } else { + bit_interleaver_rm_rx_c(input, tmp_rm_symbol, q->E, q->mod_order); + bit_selection_rm_rx_c(tmp_rm_symbol, q->E, output, q->N, indices, ini_exclude, end_exclude, q->k0, q->Ncb); + } + + return 0; +} diff --git a/lib/src/phy/fec/ldpc/test/CMakeLists.txt b/lib/src/phy/fec/ldpc/test/CMakeLists.txt new file mode 100644 index 000000000..18f6f709c --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/CMakeLists.txt @@ -0,0 +1,193 @@ +# +# Copyright 2013-2020 Software Radio Systems Limited +# +# This file is part of srsLTE +# +# srsLTE is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of +# the License, or (at your option) any later version. +# +# srsLTE 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 Affero General Public License for more details. +# +# A copy of the GNU Affero General Public License can be found in +# the LICENSE file in the top-level directory of this distribution +# and at http://www.gnu.org/licenses/. +# + +add_executable(ldpc_enc_test ldpc_enc_test.c) +target_link_libraries(ldpc_enc_test srslte_phy) + +add_executable(ldpc_dec_test ldpc_dec_test.c) +target_link_libraries(ldpc_dec_test srslte_phy) + +add_executable(ldpc_dec_s_test ldpc_dec_s_test.c) +target_link_libraries(ldpc_dec_s_test srslte_phy) + +add_executable(ldpc_dec_c_test ldpc_dec_c_test.c) +target_link_libraries(ldpc_dec_c_test srslte_phy) + +add_executable(ldpc_chain_test ldpc_chain_test.c) +target_link_libraries(ldpc_chain_test srslte_phy) + +add_executable(ldpc_rm_test ldpc_rm_test.c) +target_link_libraries(ldpc_rm_test srslte_phy) + +add_executable(ldpc_rm_chain_test ldpc_rm_chain_test.c) +target_link_libraries(ldpc_rm_chain_test srslte_phy) + +set_target_properties(ldpc_enc_test ldpc_dec_test ldpc_dec_s_test ldpc_dec_c_test ldpc_chain_test ldpc_rm_test ldpc_rm_chain_test + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/tests/ldpc" +) + +if(NOT DISABLE_SIMD) + add_executable(ldpc_enc_avx2_test ldpc_enc_avx2_test.c) + target_link_libraries(ldpc_enc_avx2_test srslte_phy) + + add_executable(ldpc_dec_avx2_test ldpc_dec_avx2_test.c) + target_link_libraries(ldpc_dec_avx2_test srslte_phy) + + set_target_properties(ldpc_dec_avx2_test ldpc_enc_avx2_test + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/tests/ldpc" + ) +endif(NOT DISABLE_SIMD) + +add_custom_command( + OUTPUT ${PROJECT_SOURCE_DIR}/tests/ldpc/examplesBG1.dat + ${PROJECT_SOURCE_DIR}/tests/ldpc/examplesBG2.dat + COMMAND cp examplesBG?.dat ${PROJECT_SOURCE_DIR}/tests/ldpc + DEPENDS examplesBG1.dat examplesBG2.dat + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMENT "Copying LDPC test reference files" + VERBATIM +) + +add_custom_target(ldpc_test_files + DEPENDS ${PROJECT_SOURCE_DIR}/tests/ldpc/examplesBG1.dat + ${PROJECT_SOURCE_DIR}/tests/ldpc/examplesBG2.dat +) + +add_dependencies(ldpc_dec_test ldpc_test_files) +add_dependencies(ldpc_enc_test ldpc_test_files) +add_dependencies(ldpc_rm_test ldpc_test_files) + +### Test LDPC libs +function(ldpc_unit_tests) + foreach(i IN LISTS ARGN) + add_test(NAME ${test_name}-LS${i} COMMAND ${test_command} -l${i} + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/tests/ldpc + ) + endforeach() +endfunction() + +set(lifting_sizes + 2 4 8 16 32 64 128 256 + 3 6 12 24 48 96 192 384 + 5 10 20 40 80 160 320 + 7 14 28 56 112 224 + 9 18 36 72 144 288 + 11 22 44 88 176 352 + 13 26 52 104 208 + 15 30 60 120 240 + ) + +set(test_name LDPC-ENC-BG1) +set(test_command ldpc_enc_test -b1) +ldpc_unit_tests(${lifting_sizes}) + +set(test_name LDPC-ENC-BG2) +set(test_command ldpc_enc_test -b2) +ldpc_unit_tests(${lifting_sizes}) + +set(test_name LDPC-DEC-BG1) +set(test_command ldpc_dec_test -b1) +ldpc_unit_tests(${lifting_sizes}) + +set(test_name LDPC-DEC-BG2) +set(test_command ldpc_dec_test -b2) +ldpc_unit_tests(${lifting_sizes}) + +add_test(NAME LDPC-chain COMMAND ldpc_chain_test) + +### Test LDPC Rate Matching UNIT tests +set(mod_order + 1 2 4 6 8 + ) +function(ldpc_rm_unit_tests) + #foreach(j IN LIST ${ARGV0}) + set(listMod 0 1 2 3 4) + set(listModord 1 2 4 6 8) + set(listrv 0 1 2 3) + set(listbg 1 2) + set(listbaseN 66 50) + set(listbaseK 22 10) + list(LENGTH listMod modlen) + list(LENGTH listrv rvlen) + math(EXPR modlen "${modlen} - 1") + math(EXPR rvlen "${rvlen} - 1") + foreach(i IN LISTS ARGN) + + foreach(numbg RANGE ${bglen}) #bg + foreach(numrv RANGE ${rvlen}) #rv + foreach(nummod RANGE ${modlen}) + list(GET listbaseN ${numbg} baseNval) + list(GET listbaseK ${numbg} baseKval) + list(GET listbg ${numbg} bgval) + math(EXPR N "${i} * ${baseNval}") + math(EXPR K "${i} * ${baseKval}") + + list(GET listMod ${nummod} Modval) + list(GET listModord ${nummod} Ordval) + list(GET listrv ${numrv} rvval) + + math(EXPR Div "${Ordval}") + math(EXPR tmpN "${N} - (${N} % ${Div})") + math(EXPR E "${Ordval}*(${tmpN})/${Div}") #twice the rate + + add_test(NAME ${test_name}-b${bgval}-l${i}-e${E}-f10-m${Modval}-r${rvval}-M${N} COMMAND ${test_command} -b${bgval} -l${i} -e${E} -f10 -m${Modval} -r${rvval} -M${N} + WORKING_DIRECTORY ${PROJECT_S${cval}OURCE_DIR}/tests/ldpc + ) + math(EXPR M "${N} / 2") + # Half size buffer + add_test(NAME ${test_name}-b${bgval}-l${i}-e${E}-f10-m${Modval}-r${rvval}-M${M} COMMAND ${test_command} -b${bgval} -l${i} -e${E} -f10 -m${Modval} -r${rvval} -M${M} + WORKING_DIRECTORY ${PROJECT_S${cval}OURCE_DIR}/tests/ldpc + ) + math(EXPR Div "2*${Ordval}") + math(EXPR tmpN "${N} - (${N} % ${Div})") + math(EXPR E "${Ordval}*(${tmpN})/${Div}") #twice the rate + add_test(NAME ${test_name}-b${bgval}-l${i}-e${E}-f10-m${Modval}-r${rvval}-M${N} COMMAND ${test_command} -b${bgval} -l${i} -e${E} -f10 -m${Modval} -r${rvval} -M${N} + WORKING_DIRECTORY ${PROJECT_S${cval}OURCE_DIR}/tests/ldpc + ) + math(EXPR M "${N}/ 2") + # Half size buffer + add_test(NAME ${test_name}-b${bgval}-l${i}-e${E}-f10-m${Modval}-r${rvval}-M${M} COMMAND ${test_command} -b${bgval} -l${i} -e${E} -f10 -m${Modval} -r${rvval} -M${M} + WORKING_DIRECTORY ${PROJECT_S${cval}OURCE_DIR}/tests/ldpc + ) + + math(EXPR Div "${Ordval}") + math(EXPR tmpN "2*${N} - (2*${N} % ${Div})") #Half the rate + math(EXPR E "${Ordval}*(${tmpN})/${Div}") + add_test(NAME ${test_name}-b${bgval}-l${i}-e${E}-f10-m${Modval}-r${rvval}-M${N} COMMAND ${test_command} -b${bgval} -l${i} -e${E} -f10 -m${Modval} -r${rvval} -M${N} + + WORKING_DIRECTORY ${PROJECT_S${cval}OURCE_DIR}/tests/ldpc + ) + math(EXPR M "${N}/ 2") + # Half size buffer + add_test(NAME ${test_name}-b${bgval}-l${i}-e${E}-f10-m${Modval}-r${rvval}-M${M} COMMAND ${test_command} -b${bgval} -l${i} -e${E} -f10 -m${Modval} -r${rvval} -M${M} + WORKING_DIRECTORY ${PROJECT_S${cval}OURCE_DIR}/tests/ldpc + ) + endforeach() + endforeach() + endforeach() + endforeach() +endfunction() +set(test_name LDPC-RM-BG1) +set(test_command ldpc_rm_test) +ldpc_rm_unit_tests(${lifting_sizes}) + +add_test(NAME LDPC-RM-chain COMMAND ldpc_rm_chain_test) \ No newline at end of file diff --git a/lib/src/phy/fec/ldpc/test/examplesBG1.dat b/lib/src/phy/fec/ldpc/test/examplesBG1.dat new file mode 100644 index 000000000..d98531192 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/examplesBG1.dat @@ -0,0 +1,1122 @@ +ls2msgs +11010100000100000011011--------------------- +00110101000110011001100--------------------- +11110101000110011011011--------------------- +01011010001110100100010--------------------- +00111000101110101001011--------------------- +00010101110001111110000--------------------- +10110101001000101011101--------------------- +00011101100001111010101--------------------- +00000010110101110110100--------------------- +10100110110100001011010--------------------- +ls2cwds +0100000100000011011---------------------10111111101111100001110010001111101101001100111011100110111010110010111111101010110100010100 +0101000110011001100---------------------00001101111000001010011110110000010011011101001101001011001010111101101000111111011111010011 +0101000110011011011---------------------00110011000101111011011100111101001111010001110000000111110001101100011011001011101011001000 +1010001110100100010---------------------01010100111101111001000010000110011001100101010110101101010101100000110110000010001100100101 +1000101110101001011---------------------11011011110010101000000111000010010011010000001111110011010011100111010100100010010100000000 +0101110001111110000---------------------10000000010101101001000001100001010001101010001100000100110100110011110100010111110111101100 +0101001000101011101---------------------01100101100110010010100110111010010111001110101100011101101001011100000101011100001011010110 +1101100001111010101---------------------11110101011110100101011010010010010001101010000010001001010011001011111100100011010111000101 +0010110101110110100---------------------11101000000111100001100101110001100000110010001010101100110000000100110100100010100010000111 +0110110100001011010---------------------11001010111000100001101110111011000110111111100100010011010001110000011001100000001111000111 +ls4msgs +0111001110111001010110011111000111101111001111010000100100010111110--------------------- +0001101010110000111101101111101101111100000000111010100110110000000--------------------- +0101011111001010010101100010010111101001111000000001110000010111100--------------------- +0111100010101000100011010010101110110110001010011101101101011100100--------------------- +0101011101100111101111010000011010000011101011100000110100001001011--------------------- +1001100001110010101111000010001101100101011110111101100110101001000--------------------- +1100011010011001111110111001101111010001001100000101101011111011011--------------------- +0010110001101011111100100100101101011111111101100110010011101000101--------------------- +0001101001110000010000011001010101101010011000010101111110010100001--------------------- +1001100101011101110001110000000001011110100100111011010111011101001--------------------- +ls4cwds +10111001010110011111000111101111001111010000100100010111110---------------------0101010101000010001011010000000000001100100110110110101001101111111011000101010010011100111000101100001100100010110101010000101011101010010000110111000000101000001101011100111011000000 +10110000111101101111101101111100000000111010100110110000000---------------------0011110001000000100001000111100110010010100100101110110000010111000000110110010010111001001001110001111110100111111000010000000111010001010101100101000010110010110000110101010111111010 +11001010010101100010010111101001111000000001110000010111100---------------------0011101000100100011111100000010000111001001001110110000001001011111011110011011100000011110110100110100010000111111111010000101001111011011110110011101100110001011100100100110110101000 +10101000100011010010101110110110001010011101101101011100100---------------------0010100101111111110000110110111011100000101001110110110101001001001010100010001010111011101101011100100000111101011010000110111001110100101010100010111100100010100101100001111110110001 +01100111101111010000011010000011101011100000110100001001011---------------------0100111111111110011101001010100001111000101101100100000100001110010110010000001100101001100011101100110101111100001001100010111001010011000011000110111101101001101111000010111101111011 +01110010101111000010001101100101011110111101100110101001000---------------------1001011110101101000100010111110001110001010010001000010111101101110101100000111110101000011111100111111110011010111011111011000011101110110001111010011001100110111110100001101000111011 +10011001111110111001101111010001001100000101101011111011011---------------------1011000011001011000010001001100100010011101011011001110101000100101110101001011010010111001101101011111000100010001110001001100010100101000010001011001100100111001010001111110111101001 +01101011111100100100101101011111111101100110010011101000101---------------------1101111001010100011100011000100001000000101000101001100111000001000010101011010111101000111100000010001011001000110111000011010011111100010011001101110000100011111011100001000100100100 +01110000010000011001010101101010011000010101111110010100001---------------------1100100110110011100001101111100111100011100111111001111011100001101100001111010010010011101110000111111110010101100111110101010111000011011010100011001110111111111000001101110111101010 +01011101110001110000000001011110100100111011010111011101001---------------------1000100010110111010101101001000101001010011111111010110011010010011000000100100101111001001001010011101110110110000001101000101000011010000110100110000101011101100100001101011010101111 +ls8msgs +11110011010011111100001110101101011000010100010100101110011100001010010110111100110101101100111100101001011010100101001000011001011100100111110101111100111--------------------- +00001111111110011010010111001111101100000010100111001111111100011010011111101111001011100001011001101100010100000111011000010000000010100111011100011010101--------------------- +10111010101101010000101011101010000001111001000001001011010110110111111011100001001011000000000001100000111110011110000000001101111101011001011100011001000--------------------- +01111111010000000001111000001011111011010101000100100110100000110001011011100101011111111011110011101100000101011000101001111100010101110100000010001110000--------------------- +01100111010101000001010101011010100010001100011000011010000100111011010011010111000010011001000000011101100010101011110111010000000011010000110011101111111--------------------- +00100000101000000100001011100100111111111010111101001100010010010000111001101101010000110001010011110001000110001100101011110000110101101100111011101110011--------------------- +01101001010010110000011011010010000111100011100010011000100011010011101010010111101001011010010111111000001000010111010110101101111101110101011011101011001--------------------- +10001011101001110011110111001100110101101011110100000011010111101110001100001100001110010111111110001111001001110001011010001000010001111111001100100001011--------------------- +10011000101011110111101010101101100000011100000010110000011100011011000100110010101110000100111100000000010001111000001101101110010110001111101110001110000--------------------- +11010011000001001111010100111000100100011101111110001101110011011010101111110100010000101110001011101101001000100011011111010011111001000111111010111010100--------------------- +ls8cwds +1100001110101101011000010100010100101110011100001010010110111100110101101100111100101001011010100101001000011001011100100111110101111100111---------------------00101000001001100110010100001100101011011100111010100011110000111100111101000011100001110011111001001100111110110110101010100111001010111011010111100001110101011111100101011010010000001100110101111000000110100001001000100110110000110011001011111110010001001011010010111100111011101101101101101110111011010011010001101010100110101100100110011000110110110111000110010101 +1010010111001111101100000010100111001111111100011010011111101111001011100001011001101100010100000111011000010000000010100111011100011010101---------------------11101010101001010011110111010011100111111000000011011011011010101011110101110100011011000011010001110111010000001000001111001100111000010101111010111010000011111000011011100000110011000001000000101100101100010000111110100010000011010100110001111001110010111100110011100110110001010100100110010111111011011101011011011111010000000111011110001101011100010110010011001111 +0000101011101010000001111001000001001011010110110111111011100001001011000000000001100000111110011110000000001101111101011001011100011001000---------------------10110000110110010110001010111011001110100100110101001101000000010000001000001101001100000011111110000010010001001011000010111110101000101101001100100111100010001000010111110100110110001010001001011100000111001010011111011001010110100001110011011111000100001000001110000110111010110110101011100111100101010010101110001010010110010000010001110011100010111010011100000101 +0001111000001011111011010101000100100110100000110001011011100101011111111011110011101100000101011000101001111100010101110100000010001110000---------------------01000011010110110000011010011111111111111101111010100110010001011101001001010011101100010011111100111110111000100101110111000011001000100010110110111001100000000100010111001000000001011000011101111000100111000111001011111110110000101011011110011000111000000100101010001000100110011001001110010111001011001100010100100000110010110010100101011110101101111100110010100100 +0001010101011010100010001100011000011010000100111011010011010111000010011001000000011101100010101011110111010000000011010000110011101111111---------------------00011001100001000000011100100010111110010101011000010100000110011000010011001001001110110101111101011010001111001110100100001010101001010001100010011001100111100010010010000100100010110010011000110110011011101100110101100000011010101011100011110001110110010010000111011000001100011110100111111110101011111001000111011010000001000010100011110011101011101100010000000011 +0100001011100100111111111010111101001100010010010000111001101101010000110001010011110001000110001100101011110000110101101100111011101110011---------------------10100011111110010010011010100110001011000001010110111101100111101011101110111010010010110011101111001001011111100110100101001000110011111001011100001101010011101111000011000100011011101111101101001111001110101111001000110101110100111100001111110010001011001101110010111000110111001110000111111000010011100100000101111010110000011101000010110111000011100011011110010011 +0000011011010010000111100011100010011000100011010011101010010111101001011010010111111000001000010111010110101101111101110101011011101011001---------------------01100000101011100010101110101111111111111101001000111000100000111110000011000110110011100010110000100100011011011110000011011011001001001111000010100011001101010110001000011000110100001111100101111110101110001100000111100110101011101101000001010101010011010011100101010110100000111100100101000001011110100000110001101110100100111011011010111000000110100100101011110111 +0011110111001100110101101011110100000011010111101110001100001100001110010111111110001111001001110001011010001000010001111111001100100001011---------------------01011111100111001000110010001100100110000111000110100100011000011011000011110101100100110100000101000001110100110101011110100000101111010111100110101100011000010000111011011100111001100101011011110101101100001100111111000011010111011011100111000111000010111110110010001001100110110100011100111000111010011001100000111001110010001011101010110010101010010001110011101001 +0111101010101101100000011100000010110000011100011011000100110010101110000100111100000000010001111000001101101110010110001111101110001110000---------------------00110100001010011000111110101100111110000111101111101011010100001111010010100111001011010101001100100100011011100110101011110100101110100100000110001101110001110000110111010101000100100100010100010010100100000001101000101001101010000001000010110001111000111100110111110011111011110101001111101001001110110100001010110110000011111011010000111100101000011111110111110001 +1111010100111000100100011101111110001101110011011010101111110100010000101110001011101101001000100011011111010011111001000111111010111010100---------------------11000010111010010010110101100001011110110111010000111111101100011110000010111100001000000111001010111100000000111111101010011100101110100100000100111000011011110101001100101011000101010101110001011010100111101000001100101011111100011000000100101111100110010101011001111010000011010010111000110000100001001011010001111000111000101111111100010010011110011101100001100111 +ls16msgs +1110101101000000101101011100101110001100110111100100000100100010110110010110011111111011100011000010001111100110101010001110111001110000100011000100010110111111100000111001100010011110110100111101001101000000011101001011110111010010110110101011101000110110010001101001011001000001001001101100011110110111000100101000111011100010000--------------------- +0010000001101111010101111001010001001000111101101100100111001011111101001010001100100010101100101000001111101011011010001010011101110001010000001101110110110110110001100010111010011101100111110000100101111010000101101111101100001001111010010101011001101110011110001001010001110100011001010101011101011110111011100100111101010100011--------------------- +0100101100101101100100111001010101100111111011100111101100001100011100011111111100101011100101101001011100000010011011001010100101100011100110011101001001111101011001000000000100000111011000011000100000001001011011111100011101010001110101010011011110111100000110101011110100000010100001001100001000101111000100111000011001100111011--------------------- +0111011110100001011010000001110111000010000010101000000010101011001100101111101010111000001001011111000010011010001100000010011111011110100010010100110011000001010110010110101000010001110111001000001001010111110001001110000101111101001001100111100010000000001010000011110000101100000010100001100011011001000011100010110101010101101--------------------- +0000001101101101111100000111111011110101010001101100000010110100010110000101111110100110100001000011111001001011100110101000000100001100000110110111000101000001000100101000110011111010101001001110110100001001001011010101111000000010100010001101101010111101011110011011111101110001101001000000111011110101101110011111101011000001100--------------------- +1100100101001011001011010001001110001011100010111110001010001011010100000011101011011111111010100110100010000000011001000110101011001101001110111100100011010001001010001101101111101111011110010011000001010001100011010011010010010101111010111110011001100000100101010010011010001101111111010110110000001101111000010000100001111100001--------------------- +1011001100100010001111110110010110010010010101001100100011010000000010000110001101000111000010011110101100001111110100101011000111011001110001001111100101100111000110101010011010010100000111001101001011111011100100110100011111011000100110111110000111100000010010001000000000011011010011100100011001101110100100001010010000000110110--------------------- +0100000110100111001001011001110011110111101010101011110100110001000110101111010000001011101001110000001010101110011010110001111011100110000110001101000000010001010110011000000001000000001010110011011110101110110011110011001011010100110001010110110101110000001011010110001001100100011001101011100000000101001111101001000101010111111--------------------- +0110101001111000001101101000000100101001110011010010011010101100100110011011000101010001111110111101011101001111010001001001101100001110101101100000101011101001010000101101001001010001101111110001001101001111001011100110100100011000001010101110111000100000101100011000101000011111001001101000101011000101100110111011111001101111010--------------------- +1100000110010001000001011111010100000000101111111110001100110101011110011110100010110001011000110100101111110011001100001111010101010011101110010101110011001010110110011001011110101111110011100001000010010010111110100000011110100011101101001101011110110110010001011100010000001100101111001100111011111001001101001000001000010010000--------------------- +ls16cwds +10001100110111100100000100100010110110010110011111111011100011000010001111100110101010001110111001110000100011000100010110111111100000111001100010011110110100111101001101000000011101001011110111010010110110101011101000110110010001101001011001000001001001101100011110110111000100101000111011100010000---------------------0010011100111000001101001100101100010011110000101101110011010001011011111000010101011111011111001011011001110111100100011100011001110111100100100010110111101010110111011010111000000101001010100000011001100101010011110110001001010110010110010001000011111100111110101011001110111101101000000011100001001000110011001010100110111111101010110101011001001001100110001001001000001000011000010011101010110001001110111010011101011000010110011011001101111001100101100111100110010000110010110100100010111111001100101101000100100111011001101000010001110101100000010000110011100010111000001011101111001010100010010111010111110101101000100110101111101011001000010100000110001100001100000001011100010110101001110111100011111011010110101000011000100110 +01001000111101101100100111001011111101001010001100100010101100101000001111101011011010001010011101110001010000001101110110110110110001100010111010011101100111110000100101111010000101101111101100001001111010010101011001101110011110001001010001110100011001010101011101011110111011100100111101010100011---------------------1011101101110010001010001110101100001010101100001110110101011010000000010001100010100111010000111110000000010101101100000100110010000000001100011000101110101011001111110110001010110011000100010110101000000110110100100011000110101000101010111010011111111001100101101101001111100010000011101101111010011111100000110100111100000000101100010110000011111010010011100100011111100111100001000001101011110010110100011001110011011111111111000000011000101101011111011110110001010110110101011010100110101111100011001001100001111001111001101101001100101101000111110101010001101111101110000011001011010010111110001101100101111111111010110010111000011110111010000100000110101010110101000001001101100101000100110000100100101110110011110001000000101000 +01100111111011100111101100001100011100011111111100101011100101101001011100000010011011001010100101100011100110011101001001111101011001000000000100000111011000011000100000001001011011111100011101010001110101010011011110111100000110101011110100000010100001001100001000101111000100111000011001100111011---------------------0110111100111000110100010011010000101000010110001100100001001110010011000000000110110000110000010110010001101100100110101100000010011101111100111111000000010011101100101111111010100110100011111001000001110000001110100001010011010100001110101111110101011000101100011111000001100110001011010110000000010000100000110011010010110000011001011001111100100100010111110111001001001100000110000001001011110010011101111001110000011111010101101010011111010101000001000000000110000001001101110101100010111100010011110110001001111011100101001111111101100111100010111010000110011111010010100101110100101001010000001101110011000100100000000101011100000001110010110010001010111100110110100011101111000110100100010010011011011001110001011111001101001011 +11000010000010101000000010101011001100101111101010111000001001011111000010011010001100000010011111011110100010010100110011000001010110010110101000010001110111001000001001010111110001001110000101111101001001100111100010000000001010000011110000101100000010100001100011011001000011100010110101010101101---------------------0000001101110000010001110001010111111100000011100011010101101011001010011010111000001000000110010100110000010100001000100000011101100001110000011101111000111010100010001111010011001100111101001101010100001001010001100011010001010000000111011111101001010001001001111111110110111011100010011000001011001110101111001011010011110111101111100101100110100101000000000111100010110110101010101110001101110011110111111010100011011111010101001101101000000111111011010100011010110111110101001000100111111001101100101101101000100010011001010100111001000110001101100100101010111010010011101010010111001111010011100000100011101001100011001111101111001101101111000000110000011000010010111010111110001001001101011110010110001011110111011111101111111001 +11110101010001101100000010110100010110000101111110100110100001000011111001001011100110101000000100001100000110110111000101000001000100101000110011111010101001001110110100001001001011010101111000000010100010001101101010111101011110011011111101110001101001000000111011110101101110011111101011000001100---------------------1011101011001010111101110011000111001111011001000110100011011001101111111101000111101000100000010110101111110110110110111101101000100000011100001100100111010010111001000011010000111101110011010101000110111000100011101001100001111111111110010100000001110110101000101011001110000110100001001101000110010100001110001100110100100000111110010001011110011100100001101001001110000000011101001101111100100101011111100101111100100101101001001000011010110010001101111101000101000110100111101110001010010101110010111000101111000000111110111011111110100100010100100111010010111010010000110101110101000101001110101011010111111100001001111001000111000011101000101111101111010110011000110100111100110101100110000001101110000110000110010110110001001000 +10001011100010111110001010001011010100000011101011011111111010100110100010000000011001000110101011001101001110111100100011010001001010001101101111101111011110010011000001010001100011010011010010010101111010111110011001100000100101010010011010001101111111010110110000001101111000010000100001111100001---------------------0100010001001000111101110110001001101110101101111001001111110001001111011110001010100010010111110011111100011001111000100001111011010011000000001010011011000110100010000101111111001000101001101010010101100001110100010110011100100100001111001000010100011010111101101110010111010100000011111011100101111110001111101110110010011010000010111100000001000010101011101111001100001111010000100010100000111100001101011011110100010111111001101001001011011101111011110001110111000001001001111010011111001000111010000110011111010010011011110001101111001110011100010110011111110110001000011100000000111001100001111100010100101010100100100101011011110010101100010000001001111101001101110000110110100011000000011011110001011100110000001000111111000101 +10010010010101001100100011010000000010000110001101000111000010011110101100001111110100101011000111011001110001001111100101100111000110101010011010010100000111001101001011111011100100110100011111011000100110111110000111100000010010001000000000011011010011100100011001101110100100001010010000000110110---------------------1011111101101110000010100001110011101001101101110100110000110100100011110010101110100100110001010010100110000011011011000001100100110001111010110110001000011001100010001101100001000111001000101100111001101110011011001110111011010110010101111111001010101000000010100000000000101100001111001101001111011100001001101101101011101000111010001110011111100000101110000111101100110111011111100101100110000100101100001001111100100110000010011010001010000110101010111101000100001111001100010100011011000110010110001010000110100110101000000110000000101110000100101101000101000001000101010011001010100110110100000101001101110110001011111110011100110100101101100001010010100011011011010110101010001001100111000011000100110011000111010011100001011111 +11110111101010101011110100110001000110101111010000001011101001110000001010101110011010110001111011100110000110001101000000010001010110011000000001000000001010110011011110101110110011110011001011010100110001010110110101110000001011010110001001100100011001101011100000000101001111101001000101010111111---------------------1101110111110100111011000000011111010101101001111011111100000011100011110011110111000100110000001011010011101111010001110001000110101000111011011100011101110011101010010101111101111001101000011000100011110001000001100110100001101110111110011000001110011001101100111101110001000110010110101100011101111111011110001011011001001011000101011000110011110010011110011010011001111011110100000111100110101110111000001000001111000111110011100000111000101010110011010000001101111010111100011101101010010110111111101100110111110010110110111001011101001101110010101101001111111111010000011101000101111010010101000100101001101101000010010101010000000110010101010011010001110101111010001111100000011101000011111111101111101100010111100010010010101001 +00101001110011010010011010101100100110011011000101010001111110111101011101001111010001001001101100001110101101100000101011101001010000101101001001010001101111110001001101001111001011100110100100011000001010101110111000100000101100011000101000011111001001101000101011000101100110111011111001101111010---------------------0000100111111001000101111100011000000010011010100110011100011110101011010000001011000111110011100101101100100111100010100100010110101100101111101101111010101100110010101111101010010110111011001010001100101001001100000101101111000001011111000100100011011110010001101000001111010101010101000000001001110000010110100000011111111111100111001101100011111100101110111000010011010001100000001000000101100001010011000111111011011000101000100111011101100010001010111001100001101010000011100110000111000101010011100000101011011111000010001100110111101001100101010000001111110001110110111010111110110000001010101111010010011010100100100100111100110011100001011001000111101110110111001010100000111111100011101010111011011101101101110001111011101100 +00000000101111111110001100110101011110011110100010110001011000110100101111110011001100001111010101010011101110010101110011001010110110011001011110101111110011100001000010010010111110100000011110100011101101001101011110110110010001011100010000001100101111001100111011111001001101001000001000010010000---------------------1101000101001110001111100010000101001101010011000011101001101101010001010111001101100011100110001101111000011011100000001100001000101010001110100111001100100101101100010000000101000010111000111110101110111100100000111111010010100010110111111100011100000110001101110100011011001000111111001001110110101010011100110110100100001101011111000011010111010001001110010011101011110011000011111100001111001110111010111011001000100111101111000101011110100101011011001101100001000011101010000010000100010010101010010100100101101010011010110111001010001110111001110110001111011010101000100001111100000111100001100001100111010010011011000010010110000011110111010001010001101000111001011010010110011111100001001010110000010100011010011000110011101001 +ls32msgs +11000100000101100011101100001001011110000101001001110100111000100101001101100100011111010000000100111001111011000000000100000011110110101100101100011110101011111000111101000000000000001100011101000100001100101000001111011101011000101111111110010111011010111010100100011001110011111000111111110000100000001011000111010011101011000010111101110010010110010001101101000011100111000000100100010001000110001101001111100011011101000001111011011001011000100111111010011100101011001010100111000011011001101010100101110100111110111111011010101000100101101110011000011100110001111100111111100110000110111000110010001000000011010010111010000010101011001101000001111011011011101000011011110101001--------------------- +01101101000100001010100001011101111110110010101010001000101101000111011000011110010000001100011001000011111001100001000100100101110101110101100010101010111110110101001010011110101110000000000101100010100110101110111011111101000010010111000111101000100011010001000110100111010001011000111100110001111001011001100100001000000111101000110100110010110010111101011111100101111110000001111101001110000000110100101110110010000001101111010010000101010101101111100000000110001101001000111111011011001110101111010100111100100000101100000000101111000000011110111010110010000011001111110011011011011111110111100110100011111001000000101101001001000100101000010100110000010010011111100001010011110--------------------- +10011110111000010111100001010100101101001101110100111101010100010101100111100101010110100101010101010001010001011101110000001000110011000000001110111110111001100000110100100001101011011111110000010101011110101000100110001010010111101000000100011000010000011111010001100001111111000101000000111111000111011111110001001001011011011111111011100101101010100001001000101010110000100101011111001101001010110111010111010111000010101001000101000111010011011010010000000110001010001001001110101110001000001001000101111110100001100111111000001001000111110110011110010011001011010010110100100011101010001110110111011001000101110110011010110010010111101111001001100101000101100111101101010110110--------------------- +11001011001011100100110100011101001111001110011110101111000000001010011110111000111100101111010000011110011101000100110110111100111011000100000011101111001101111111110010111100001001000000110000110111001110011101110111100111001100111000110001100010000001001101011001100010010101000111111011100111001010110101111011100110100101111001110100101101011110001011010010010101011011110001100111011110011011000000101100111000101000010011010001011100011011111101101100001001011101000100000011100001100111101100011001010011000001110001010110100110101100000100110111111010000010110010001011011011011000010101101101101110100100010001111000111000111111000111001111101110110001100110101000010110101--------------------- +01011000001001011000111100010011010010101000010101100110011010100110100001011111011000010111101010000001000010010000010100001101101001000001111010100111011011101010000011101001000010001011010000110001101111100111100101001111100111101100110000001010001010011110000100101011110101010110000001101001011010100010100001100111111100000110101000001101001001000001111111010100001101000011110000111100010111000011110100110011100001101010111000010110101000001101100001000110100001011011011110001100001110011000101111100000010011000001111101001001000000111101000101110011110111100010000001010000100001001000010011011001010000100110011100111000110110100111110101010011100010100100110011100101101--------------------- +11010110110111110111011010101000100101010110011011101111000001100000011110011001011010100111001001000101111111010101011110001010111111011010111000111001100001101100100001101100000001011000010101111010110110111110101010000100010100010011110110010110100100101100100011101010111110001110001100011110000011110011111001000010100111011101010011001010010110011101111110101100010001111101101000010000111011011100110110110110100000111010111110110111011000100001100010010000100010010011001111100001101011110110111010101111001000000100010101111000001110101000110111001101101110010001000101001000000110110110110101101010100000110110001011010110000111010100101100100011110100001001010001011001111--------------------- +11010000010011110110110001110000111100010100110110111110000101111000001011010110010001111011010100001010111101110001001110101110010011110000001111010000100100010011011001010110110111000101111111011011111111100010000111111000011110110010101011111010111100100100011000110111010011010011101011011010101011011110011001000000001000011100000100100111111101111111011000001001001110000101110101001000100000011100101110111110100100110110101011100111000101000110010100001100000011111100101011001110111100011000011011101111110111110101001010101010011000101111101110000000000010101110101100001110100011010100101100111001000010111101101001011101010100110110000101101011010110001111000100011010101--------------------- +01100001100001101111110100110010101110111111100110000010000111000101101111001000110100110010101001000011100101110011100110000111001011111110100011001110001001110010100111011001101100101000000100011011111001111000010111110001010100110010001011111000010100001101100100000011111111010001111010111010111011000001010101010000011001001101000000011110101101000010001000101001100000000110011011101100010101011101110011111001110010111011100110101110001110011010011000100111000101010111000110001011011001001011101111100110000100010001110000011110000110110000100100000010000100101011001001101110001101110100111010111110001110111101110100101000000110000011010000110111110101110101001001010010011--------------------- +01100111100011110000001110100010000100101000011011001010101100001011000010011011011100111001000000101101100000100111010101011111011111100011001001111010100100111110011101110010011100000110101010001011000010001010011100000001110111011111000100110111001000000010011111000100011000101011110110001011101011100100000010011111100010000011011001010001110000001110101001000000000010100101001111011011111000110111010001011000001001111000000000010000011100000111100011011111100010111111001000101101111111000000110010011001111011011100100011001011101101110011001010011101101011100111000111010001110111111000101111001110101010001100000010010010011111010101110101001000000000101110110000110111001--------------------- +00000111101111101001000111011101101010111011001111011101101100000100100011010100111111101010111011001010110011100001101101111010100111101100000101101100101100001001100001101010110101100111010011000000100100110111010001000110111001000101110010011011001010101000011000111110001111111001000100001101111000011011101001111001010110000110100110110110001100111010111010010001111010000110111111100000110011101101110001110111100000100100010110100001101010011101101110110010110000011111000101100101001010000000100011111110010010000111101101111000000110111110101101000110110001110100110011011111011110101001101001101110010000111100100110010000011110011011011110010101111111110011110110011110101--------------------- +ls32cwds +0101001101100100011111010000000100111001111011000000000100000011110110101100101100011110101011111000111101000000000000001100011101000100001100101000001111011101011000101111111110010111011010111010100100011001110011111000111111110000100000001011000111010011101011000010111101110010010110010001101101000011100111000000100100010001000110001101001111100011011101000001111011011001011000100111111010011100101011001010100111000011011001101010100101110100111110111111011010101000100101101110011000011100110001111100111111100110000110111000110010001000000011010010111010000010101011001101000001111011011011101000011011110101001---------------------01011100001011110011001001111001111111110101011110100110010000101000111110001110010010100110111001101000110000010101011101111110001011000001111111111111111111110111000000101010011000010111001100101011100000011101110001000111111101110101111001101110011111010010011010111000000100111100011001000001010100111010001111110110011111001111011001011111000000011101110001010011100100101001100010101011000100000110011010101100011100101110111000000100101010111100101100100011011111111111110001101011101011111111010000011110110100110000000000001110101011111001100100110001100000011000111000110100111111011001100010100111101111111001110001011001101111001011110111001111000001011010001000011101001001111000100000001001001011100010100000100011001010101111101010100000110000010101000101011101101101110011101000011101000111110101011001111100101011000000011100111010111100111100110001010010000101000100011110010011101100100110010001001011001000100000101010001111001111010101011000101001110000000110011010100101001011001100000001000000101000110111100000101000100111100101001001101100111011010100101101010111010110001010010001011100100111100000100010011100001001100100111001111000110111100011001101111100001110000010000110001011100100010101111110100110101101011110100111001110110101101000101110011011111100101110000100011011101010111110100011100111100001000100001110000110111101010011110000001101110101011010001110000010000010001011111111001101000110011101011101100101010101000011111111011001 +0111011000011110010000001100011001000011111001100001000100100101110101110101100010101010111110110101001010011110101110000000000101100010100110101110111011111101000010010111000111101000100011010001000110100111010001011000111100110001111001011001100100001000000111101000110100110010110010111101011111100101111110000001111101001110000000110100101110110010000001101111010010000101010101101111100000000110001101001000111111011011001110101111010100111100100000101100000000101111000000011110111010110010000011001111110011011011011111110111100110100011111001000000101101001001000100101000010100110000010010011111100001010011110---------------------10011111010100010011000010110100101101110011011111011111010100111010111111100000001110111101011000100110110111111001110001010011011001110000000000111000001101010010110010101011100001111101101101101110100001010111001110110110110001001101100010101100011111000111111100000110111000011001111100100001010010010001111000010110111001011011111001001111111000010100000011110000110011100100100100100100000111011101101111111110001011111011101000010011100000111111101111100011100101010001011111001100101101101101101011000011101101001110011011001101111100111101100101000101001011010000100000001110011111000011101011100001011001000111011001111110011101101100100010000100000000000110010001000111001100010001010101100011111001000011111111110000101101111101111010010001010010110111101011001101100010110001101110010011011010111011110111111110101101011000100000111010000000001110101110110101100001011011111001001111100011011011100101110110010011100110001110101100100101100001110011010001011110011101111101001111110110110101111111101100110001100100100001010101110111001000001100010100111010000111000101111010110010101000101001000111000110011010100001001001101100111000101110100100010000011011001011110011111001000001000110111010000101100001111110000111001001111011000110010100001101011101001001010101011111001011010011011101011010011010101001000101000011000011001010110001001100010001101000010101010111111010101000001111000100011000110101010110100011011101001000101110101101110100110110101001 +0101100111100101010110100101010101010001010001011101110000001000110011000000001110111110111001100000110100100001101011011111110000010101011110101000100110001010010111101000000100011000010000011111010001100001111111000101000000111111000111011111110001001001011011011111111011100101101010100001001000101010110000100101011111001101001010110111010111010111000010101001000101000111010011011010010000000110001010001001001110101110001000001001000101111110100001100111111000001001000111110110011110010011001011010010110100100011101010001110110111011001000101110110011010110010010111101111001001100101000101100111101101010110110---------------------01111010011100011111110010101110011001011101101111111100110100011100011010001100000010101110111001100110011010110011011110011100101001001001001101111011011001110011001111010000001000000100100000000101010100001001111001000111011001011010110011100100010001011001001001111000100010101001100101110111100110010111011000001010011100001011000001010010101010111010111111010001101110101110100111011100000110001001101110110111011101101100010100001101100010101010011110111110011110101001110011110000100111011111101101111001100000100101010111101111010101010000001111001011010111111010011111101000101101000101100000011000011001010100001011101110001100001000001000101110001010011000111100001001011110001011100010000111110010101101100101010100001000011110101101010010000111011010010111111010010000111111111011010001011100101010111100001101000100001000001100000011000111100111111000001000011001111100000100101100011111100011010001001000010110110111000110111011110100001001100011111100010010101111100101101001011110011110101110100010111111100011100010010010101100111110011000101100001111011100011110110000010111100011110000011101111110010100010011111110111110100100100110000010101010001111010000110010101000100111000100101111111010100111000011000111110101101011101010010110000001110001011001101100111101011000100001111100100001111101011001101100001111110111110011001011000001100111011001111110110111110010110111100001001001001110011101101000101010101111100010010000010011101111001111010101 +1010011110111000111100101111010000011110011101000100110110111100111011000100000011101111001101111111110010111100001001000000110000110111001110011101110111100111001100111000110001100010000001001101011001100010010101000111111011100111001010110101111011100110100101111001110100101101011110001011010010010101011011110001100111011110011011000000101100111000101000010011010001011100011011111101101100001001011101000100000011100001100111101100011001010011000001110001010110100110101100000100110111111010000010110010001011011011011000010101101101101110100100010001111000111000111111000111001111101110110001100110101000010110101---------------------00010001110111101101010000011101111011110110010110010010100011000011110001001111011101101111011101001010010010000010111011001101100000001000111000001001101011000101110010101011110001001010100100100100011001100100011001111010011100011111101011011110001101100100000011000110001010010011100000110101011111001000100111001000000101010110000000111011111110011000000100011100101111101001100000101111110010011101100010111011110010110000001010011101000011110110001000010100001000100000100110010001101110111110001010010111001111101011100000011110111001000011110001111101011001110011100111000011110010011001110011000100011000110010001011100111110111000001010100000000000111101111101000110010001000001000010000010010101000001000110110111101100010001000111000000101110001000011001010011001000001011101010010101000100010011011011001101110011110110010100100010010101011011001010001100000001011010111100110010010010101111111000110001000001001110111001110101101001100010001110011010110110111010000010101000110100111100111001101100100010111001101100010011111101010010100111101111100011111011111110111111110000111001011011101000100001110000111010000000010100000110101100000101011011001010100111110100010111100000100010100010011100000110000010111000110111001110010001110000110000101011010111000011111000110011000010010001011010011100001011111111010100001000100010011000000110111001001011001010111110100101010100011110111011010010001011111000000001101110001010111011101000010101011110001010000 +0110100001011111011000010111101010000001000010010000010100001101101001000001111010100111011011101010000011101001000010001011010000110001101111100111100101001111100111101100110000001010001010011110000100101011110101010110000001101001011010100010100001100111111100000110101000001101001001000001111111010100001101000011110000111100010111000011110100110011100001101010111000010110101000001101100001000110100001011011011110001100001110011000101111100000010011000001111101001001000000111101000101110011110111100010000001010000100001001000010011011001010000100110011100111000110110100111110101010011100010100100110011100101101---------------------10110000100011111101011101000101000000111101110101100001010011000110101100011000001110110011110000001000110101011100011110010101110010100101110100101011011100000100010001111111001100101110101011100111010011010110101000000110001011011110001010101101010100100011010011011000100010101001000001011010001111111001101010011000111000010110011111110111011111110001101001101100011010011110011000001100111011101111000111110110100111110110010100100000000011000101010010001101101011101111011111010100000001111110100000000001011011000100011110001110000100010010111000101000011100010111100000001111101000110101100011001011011100111011101101000010011011101101101111101011001110100010110010111110011010001110010000010000011010110101111101010110111001101101111000011111000000111101100000001001111001111111100010110111010001000011001111110000111000110110110000101010000001000100111011101110010000110001000001111110101100100110100100101110001000001000101000101101001100011101011101010111101100101011101010101111011011010111111101101101010101110000110110100011011001100010010001010001001110000011011110011101011000010011011010000010010111101111101110110111110110011100010000001111111011100110100010010011100110010011110000001110011111010101110110011111100101001000010111100011101100011100010000000011111110001011010001011110010110110101111111111001111111000000110100000110100111101010100010001010011010110111100010001000111111111010111000011000111011101010111001011111110101110001110111101000 +0000011110011001011010100111001001000101111111010101011110001010111111011010111000111001100001101100100001101100000001011000010101111010110110111110101010000100010100010011110110010110100100101100100011101010111110001110001100011110000011110011111001000010100111011101010011001010010110011101111110101100010001111101101000010000111011011100110110110110100000111010111110110111011000100001100010010000100010010011001111100001101011110110111010101111001000000100010101111000001110101000110111001101101110010001000101001000000110110110110101101010100000110110001011010110000111010100101100100011110100001001010001011001111---------------------11101001000101101001101111101101101110010001110001011110011110110000010010110111111010010100000000110110011010100100001110110011010000110110000000101111011100001001111010010010111010011001101101000111100010110010100100010100010100000010000100001011010010101010001101100111000011010001111010010010110110100100011000000111101000000101111111001001001010100000000001001100101110010001000001101010100101111010111010010100111010001110110110011110000111010100100000111010100010101110000111110110100111001110100111000000100001101100000111011000110101010010110000101010110001110101100000001101001111001101010010001010000001001000010011011110001110010011001110111011011100001010001011110000101000111101011110110000111011101111101101100111101000010000001110100111001011110010000101110000010010011001101001101111011111010100001100000000111101101101101000100000101100110100010011110101011010111010101000101011100011000101100000101010001011011000010100000010000001010100100100001100000100110100001111110011011010001110010001000011000111110001111100100000000010000110011010011101001010100000110111110110001010011011010011000100000010100001110000100110011100000000000011100101110010111010010100111101100111110110010101001011101010101111101001100000101001110000111101100110011101000111000100101100111011010001101110010000111100111101010101010000110101101011001101100101011111011001110011010111101111101101000110100010000101101001001010010110101110110101011001001000100010101110110111100110 +1000001011010110010001111011010100001010111101110001001110101110010011110000001111010000100100010011011001010110110111000101111111011011111111100010000111111000011110110010101011111010111100100100011000110111010011010011101011011010101011011110011001000000001000011100000100100111111101111111011000001001001110000101110101001000100000011100101110111110100100110110101011100111000101000110010100001100000011111100101011001110111100011000011011101111110111110101001010101010011000101111101110000000000010101110101100001110100011010100101100111001000010111101101001011101010100110110000101101011010110001111000100011010101---------------------00011110010111100010111011000110001111100101000010100101001110111111110100001001111011111110101010101101000101001101110001111111010010010110011001101000011100100000011001000110001011001101011000010011010011111100001111100001010110110101100001001011101001001100000110100111111101111110101111100110110001010101011000011101011110101010010010101100100100111001110010011101110101010010001000000011011000111111110100000110001000101000000000111101000011110101010011000001001010011111100000111101101100100101001001110001011110010101100000110100000010101001011010001100010111101110101001111101011001000000001101001100101111100101100010101010001101001000001110000110011101011111011011001111100110001010101001110000000101010111011001010010100110110111111100101001100111001001111110111000101100111001001001011001101010000110011110101111101010000000111010101110110001000000000111001001000111100101011101001110100101110000010000000101000100101011001110100111000000100000000011110101110100110001111000110010000110100000110011010011001101001000001001001010010100111110001001111011010100000010010010001110111011111000001010100100100011000101011110010111000001000111101100011111100000101110000000010111111101101010000001101001000110011010011111101101000101111001011101011010110010101011011001110010001010011110110011101001000000111011011100011111100010101101011010110100001001011010011000000101111111101110100100101001011100000010010010110001001010000001000111011110000000000010110100110111 +0101101111001000110100110010101001000011100101110011100110000111001011111110100011001110001001110010100111011001101100101000000100011011111001111000010111110001010100110010001011111000010100001101100100000011111111010001111010111010111011000001010101010000011001001101000000011110101101000010001000101001100000000110011011101100010101011101110011111001110010111011100110101110001110011010011000100111000101010111000110001011011001001011101111100110000100010001110000011110000110110000100100000010000100101011001001101110001101110100111010111110001110111101110100101000000110000011010000110111110101110101001001010010011---------------------11110111000000011011000111011110101111100011101001111100110000000011000101010011011100010011110101010101101011111001110100010011101100100101000001011000100010000101111001000000011001001000100000110110001010010101101111111110101001101011011101000001100111010000001101010100010011111000111000111011100100101000000001010100000100010100110110110100111111011001001011110110110100011111010010001110001101000010110110100001110111101110100000110101110101100011101101111111000101100101001101000011100101110000010000000100000010010111011011100110000110000110101110000011010110011101111001000111101011111101110001100000111111111011010111100110110011000001001001111001111001110111100000011001010110011001101001000000000010000100001110011000011010001010110011111001101000001011101010101011101000101011100001011001001100001011010010110110001100000101011110011110010101001100111010111010111111011111011001100100101101101010100001000010011100100111011001111000010000111010001100001101011101010010110111111000110111001111010001111011100110011111100100100001001011011100001011101110001110100001000110101111000100110111010111100001100000010110010110100111101000110100101100011111101011110010100101101011011000000010001111110100001111101000010100010111000010110010001110111000010110001110000100100100000111011000101111000010010101100010010001101100011110000101111111100101010100110101001101111001000100111000001001011011011100101101110011010110101110000110001111010011000101011101011011000000 +1011000010011011011100111001000000101101100000100111010101011111011111100011001001111010100100111110011101110010011100000110101010001011000010001010011100000001110111011111000100110111001000000010011111000100011000101011110110001011101011100100000010011111100010000011011001010001110000001110101001000000000010100101001111011011111000110111010001011000001001111000000000010000011100000111100011011111100010111111001000101101111111000000110010011001111011011100100011001011101101110011001010011101101011100111000111010001110111111000101111001110101010001100000010010010011111010101110101001000000000101110110000110111001---------------------11110100010111010001011010000111111110011011101110000110100111001011000010001101101010101111010011001111111101001001001110011010111011010100001101001100011100000000000000110110100110101001101101101100111110101101100010000111101001101000100011111011001000000100100111000100101011101101011110110010001001101101010110111010111100000101100001110110100101100111101010100111001100111011110001000001011100001110100010000111001011101101001111000100010100100101001100110110011101000110011011111110101000011100101001000100111001000010110011011011001011101001000000101100010000111000101110111000101100011011101110000000110000010000111011010000010111000110001111100110011100010111001001000110110111010000001000010111111101000100011001011111110000011000101000111011001101011101101100101011111010011101000101010000110111100011110110101010000111111100110011111101000000010110011011110111100100111000011011101010111101011110010101001001110111110001010101110010011111010111010010100101101101100110011101100010111011111001010000110011100011001011111000001101110110011111111001001111100010101110111110001000100011011101001000001111000101011101000010111110010110110101101011100100111011110010000011010110110100000010110001000011000110010100011001011001011011101110110110000110001001111101011101100111000010100001001011001001100011101001100010100010101011100010000100000000110111110101011111010011011000111010101000010010100111101001110000000001110011111010111111001101111011110011010011001110 +0100100011010100111111101010111011001010110011100001101101111010100111101100000101101100101100001001100001101010110101100111010011000000100100110111010001000110111001000101110010011011001010101000011000111110001111111001000100001101111000011011101001111001010110000110100110110110001100111010111010010001111010000110111111100000110011101101110001110111100000100100010110100001101010011101101110110010110000011111000101100101001010000000100011111110010010000111101101111000000110111110101101000110110001110100110011011111011110101001101001101110010000111100100110010000011110011011011110010101111111110011110110011110101---------------------11111010101001010100011100110000100000111011100111010000100010110010100110111010100011001110011111111100111010011000001101100010010011000000000010111110000100010010101001000011100111101111110010110000100110101000111101101001011111010011000000100001011100111001111011010010011010100100110010110111101100000010011110110110010001111010000101101000010000110111110110100111010001001010011100001011111110010010011101001100010101111000001110110000111101110010101011001001111010001001001110101011000101110010110110110010011101111001111000111100101111000110100010101010001110100110011111100010010111100100111001110010011100000010110100001011010101011111100100100001101101000010100101011011110010110010011000000000000100100101011010000010001001110011011111001110110011001000011111100001111101110000010100000110100001011111100100110110010101110101110001101100101010011110011011101010110110111101111100111101100111111110101101111110111111001101110010111000110111100101101011010010111100000101001111010011011010000110001000011001101001110110101110110011101111110000000111111111010111011111101101101010100010101011000100110001110111000111100110010001010110111010001110111011011111011000101111001101010110101101110111010001011100101000111010110101110010110010011100101101111110001101100011001010001101010001010110011001111011110010000000111101111101000010111001011101011000010001010000010111100001001101100011010101001111000110111111101110101101111100010010100001101011100010011001101101 +ls64msgs +1011111110111001100001101101110100110101011100000111101100101000100000110110010011011110001001100110100000100001100111110100011001100001011100011111100111010011101010011001111000101010011101100011111001110001100011001100111010000100000001110011010101101110101000111000000111011100101110110100100001001111001010010011001001111110000010011011101111110010000011001100000011010001110000101101100100111110100010110000001010010101010111011111111010101000100110001010001101110111000111111001110010010101101010110001110010011111101101110100001100010011110011111110101110111101110011100001110110100001100000000011101001000001111111110001001011111000101100100011001011001000001111100100010110000111001111100010000010011101111101000100000111011001010011010100111000111111101111100011100111011100000110110111001110100001101110110111001110101111100011000010111110100110100100111110111110100000111010011010010100101110110101111010110111100000101000010101011011001000100110100101001011001011111111000100110010100001100001000010111010110110110010100100010011011010111100111100101010100111010010111111001000000110010101010101010010100111101000100010110111001111100011000011110011000011100111111101110101100101001011100000011011011101001100111001011110011010100010101011101110110101101100001000001101011011001100011111001010001001010001001011000110011010101000010101101110011011110000100000010001101001001--------------------- +0101011001000010111111101110001011011100111100110100100110001100110100110001010011000110110000111000001100110001111011101111110101010011110110111011001110110110101100010110110110101010000010000010111011010001110100111101010111001001010010100100001011001100100011010101010101000110101010111101000110001001000000010110101101110101011000000001101001101001101010001100001010111000011000101101100000111111101100011010000000010110000101010100010110100100000001011001000111001010010110111110011001000011011100000001011000010110010110000000000001001101101110001101001111111100101101011110101011100100101011100100010011100001011000001001100000101111000010110111011001111000101101101000111110101110111010111001111011110110101001110011001100110101001101010000011101111010111010100001010001110010001111101011011001110100111010010000111101111100011110001100011111101111101010011110001101000001010100111000011010001001101011110010100110011011100000010111001111001100111110110111011010110101001110010001010001110001010010111110111010100111010011111010110001000001001011100010011110011101000011110011111101110010000000010011100101001100100001101101100100111100111000110101110101101110111011101100100001101100010011000100111100000110111111010110110100110010001101001001000100111111001001101111011000100010010001110010000001111110101001000010010111010000011101101010111001100000110001000001100100100001110--------------------- +1111111001000011101110011100100011001100111011101101011101100101001001010111010101100010010001101100100010101010010001001110111011100110111100010010000110111101110100101110111000001101011011000110011000100101110000011001001101011111011110001010001110000000001010001101000100111011101100001101100110101010011011001001010100011111011001011011010010101101001010011000111100010011110100011001101001011000000010100111001010001111110101001110101101000111111101101010110000101111011101111111110110110011011011001111101000101101010011111001011010100010100110101010010110010111100001000111010101001110000110001110010011110011000100111000000111010111111100111010000110100111101110110110001011000110111010111101000001110010111000101010110011111100010111100100010010101111110010001010000001101100010000101101111111010101011111001100010110011110001001101101101100111001100010011110011000110100000000111011010001010100000111011110101000010101001101100100101110100101011010010011000110000101011101011100100010110101010010101001111011010111110100100111000001101000100010101100101110000110111100100010001101101001010101010010101101001001010010001111000111101001011111010001100011100111000111101011001000101001100101011010001011001101100111111110111101010110110001101101001111110100000011011010101000101011010001000111110011100110001000010111110010111111000101010000011001111101010010001011110011100111111--------------------- +0010101101101101011100001100011001110100101101111010010010000111101111011010010100011011101000011000010011101001111011001110100001010001011010010010100010011100101011111101000001100010100010010011100111100101010110100001010100010001011101010010100101100101111101111010100000000101010010011010011010111010110110010001010110000100010100001101011110100010011110011110000111110101100000011011000101011010111111100110100111111100110110011000010000011100011110100110010000010110101100100001101000101101101100100101101100100111000110101011001001011101011100000100110100101011101110100101011110101110001110111011001111101011001111001000111110000001101101111111001001100110011100111110111010001100011110111011011010111101101111111000111000111000110101001100001110010000001100011101001011100011101001110010001111100011111011000000010001010001100010111100011100001000111010101001101000100010100100100100011010100100101110011101111101110010100010000110010101110101101001100110000001000111110000111100011001101011101111101111101000010001011100001101101100100111010110101100101011010111100101011101101011111100011001110100010011000111011010111111011111000001111100100000110010000011010100000001001100001100010000100101110001011001010100100000010010010000010000011110010010011011011101001100011000000101110100001001010000100111101100101100100110110000100011010100111100001111100111100111001100011001111--------------------- +0101111000010111001010001000110111010010011010000100110001100110010101101000010110100001010000000000100101000001010011010100011001110100001101100101001011000010100100100000111110111001000010010110011010010010011110100000010111011010001101010001011000001100001110101111100010011110110110111000100001111010000111011000000111111101101010001101011011000100010110110000001101111001000111001110100111111100111110100010110100011011001110010100001100000111000111110100010011011000001111111101010111111101101000011110000010100101110111010111110011100110111111001001000100011011001010001011110000100100001110100101001101111101101001001001011010110101110101001010110110110001011100100000000100100010101111110101110101011110100001001001110011100000011111000011001010100010111000001001001001100110000010001111011100010010011000001000101101000110110001010000011101000000000100001001010000000001011010101000010000000110010000001110100011000011000011111101010000100110111110110001110011100110110000100111010111001101001110101100111000001111010100000110001010110001010011000101111010110011010000111011011101000000111000000110111110001010000000111100101001011010111111110111101100000011011011011110111001011111100100111101000010101111010001000111110100111100110000100000101111011001001010110101011100110111011100110111100011001111100010100101111111111110111010101010000100100110101110000110011100100100011--------------------- +1110010001010101110110010000010000101011001111101000111000000110001000001010000010001010111001010111101010011100101001100011101100000000000001010011110001010001100010110111111000100001001100010000000011000100111010011100100001110000010110001010010000110110111011111010101010001010100111111101111010000011101010110101010001001101001001010011001011001010101111000000001100010100101100100110010011000110001111101111100001011001000101001011101101001000010101011110110110010010110000010000010001011100011111010000010011010101010000111110010000100000011100110110010000100011101000010010001100111000110001010010111110001001000100011010111101110110101100001110101101000101000100010000000111110000110100010110000000100101001010111010101100110001100001111110101010110111100101110010101100011011111100001111010100101001011110011010011100110100000011000111100110111000111001010100101101101100010110111001100111111011011000100011010011000011000010000010010101111111110000111111000111010110010000011010111111111001011100110001100101100001110001101001100111001001111000010000011010001100101110000101010101011010100101111100011100111000100110001000100111101011101000000111100000001110010011100110101100111000010001110110010100000111111100010011010100010111010100101010100010001000010110100011110101010111010000011100101011101100110100110011011000101010000000001011111011001100000101110110010111000000010--------------------- +1011011011110010100011111000101000000111110011011110010110010100000001101010100100011010010111001000111000100001100111010001010011100010110110010011000011100110000001110011001011101001010101001000000110011001110000100100111000111100001111001101001000010111111110010100100101001111101000001101110001001110001000101011001010101110101101001110111111001110000101101111111000011101111011010111011111101111011101101011111011001010110001101100010001001010101011000100000110100001110001111010111111101000000111110110100111011000001100101110110110111101110111110010001001111011111010000110011111100011100011011001111010000100101010110100001011111010010110010110011100000101001010001110101000110111000110110111000110001111111110011110101111001010110111100110111100010000101100010110001011101100011000010100001110101010001001101011000111111111010000110100111111011100001101110100111011111110111100111001100010100110100101010101110000010100101101110000110011101111111000101001110110101001101111000111111001000000000000101010000101110000001111100010111101010010011010100111111000010101000000100110101011110101000111111111110011111010011010010010110010101001000000010100011100100011001000010111000011100100111111011111110001011101111110000100001100100100010111111101000001000011111100111100001110110110101100111100101110000000011111110110011101100111110100011000100101111110011001010110100110110100110--------------------- +0000001011101110001001111100010010000101010000011010000100010111101010001000111000010001110111100111000111000000001010001001110011111111100110100010101110111000000001110000111011010000111010111110011111010110000011011111010110110010001100110001000101100110000110001001101001110101110011101111000101010111001111000010101011110111100010101011110010001010010010101100001010101101011011100001010111101100010000100111101011001010110001010000111000000101010000100101110010101000111100001101111101100110110101001011100011000001001000001001101011110110010010101101110100100101101010100011111011110001001011111101000010110101100010110110110001101101100111010101101000100001010101100110101011010100101010001011011110011001010000000101110000001011111000011100111100011111111101100110100011010110010011101100110110000011101110111000000011001100100000110110100110100001101011100101101110001000011100111001110011000100100011010110100010000111011111000101000001101100000001101000110101110110011101000010110111001101010001000011010110100001101010001001101111001000010101110000000110011110001000100110000110010011110011011010001100000101101101111110010011010010101010000001111010011010000011011100011110101010110010001111110110111100011100111110000101111100111100011101111110101011001010011110111000111110110101011011100110111101110111110000101110111110010111010100111010110011110001001101110111111100111--------------------- +0110110100111101111000001110001101110100101001001100011111010111110000111111011110011110110111001111100011010100101000101011110001110001011111001011111110011110001000100100010100001001011101001000011001011001000001110000001001100111011001111100100001100010010000000101100011100010101110001100011010000101110100110111011101000011001010001100111011110110010001101010111000101100001101111111100000100000110111010010100101110110110111011100100110100100001100001101000010111101110001011111010101010000100010000100110110110011000101100000100100001011111100000111000111011111111000010101110011100011011011111101100111101101001111011010101001110100100010000101010111001111101100100001111000001001011110001010101010001100000110011010001011110001000001001000001101010000100111000111110111101101011000110100000110010111100100100010011001101000110001110001111001010110000100010010110000110010010101111011001011010001110010011000110100101110011101011010110000110111111000110001011001101011011101111010001001001111001100101101110110010100001001100100111011110100011110101001000100011111000101000101111101110010001100100000011100011110000001110000110010001111101111010000110010010111100110001011000110010101101100111100000011000100110101000110010000011001000111001111000101101111100110110111101100010011000010100101000101110100011101100010000000101011111010010110000001011110010110011011110001010000010--------------------- +1111011101110101111001011101101110101000011001110000011001101001011100001011111000011101101100001011110000100110000111001110001111010011011010110011111000000111000011101101001000101111101110110100000000110111110101111000111110000101000100000000101001001001000100100000101110101000011111010001111101000010101100100011011001101001000011001010000101101000010101100110101110001101000110111010000101001001011111001000000001110001101001111011100010010111000011011111110001111101001001000001110100001101001010001101110000111111001101110100010101100010111010000010001010011010111101011010011111101100110110010001011111111110101000100000001101000000011110010101001110111110110011110000011011100101111110110001111001101001011100101000011110011111001110110011001011001011100010011111110011111010111100100101111011000101111011111100111101101011101110001111011010100001001100100011110001101100110101111000110110010101001010001011001010111101011101011000100100101101111110000100000110110111010000110100000000011100101111101011001001001100000100100011111010110001000111001000000100011010001110001001000010011110110000101100110110000101100100111010011110000100101100011100011110001001111100110010111011100001110001011100100110110111111000010010011101100010010000111111011011011101011000111100111010111010110101010010001100110110010100111000000000001011101110111101000111001011010100010100010110001011100--------------------- +ls64cwds +01100001011100011111100111010011101010011001111000101010011101100011111001110001100011001100111010000100000001110011010101101110101000111000000111011100101110110100100001001111001010010011001001111110000010011011101111110010000011001100000011010001110000101101100100111110100010110000001010010101010111011111111010101000100110001010001101110111000111111001110010010101101010110001110010011111101101110100001100010011110011111110101110111101110011100001110110100001100000000011101001000001111111110001001011111000101100100011001011001000001111100100010110000111001111100010000010011101111101000100000111011001010011010100111000111111101111100011100111011100000110110111001110100001101110110111001110101111100011000010111110100110100100111110111110100000111010011010010100101110110101111010110111100000101000010101011011001000100110100101001011001011111111000100110010100001100001000010111010110110110010100100010011011010111100111100101010100111010010111111001000000110010101010101010010100111101000100010110111001111100011000011110011000011100111111101110101100101001011100000011011011101001100111001011110011010100010101011101110110101101100001000001101011011001100011111001010001001010001001011000110011010101000010101101110011011110000100000010001101001001---------------------1001111000001100000100100101010000110001111011111000011010101111100110001000011000011001110110001110111110110011000001101010101001011011111000100111010111100101100000101010111010110110111110101010111111001110101010110110100001111010110000101010110101010110101011101100100111011110110001011100111011000000101110010100000100000110010110100111000011110001001000011101101011011111110011100101011100010010111011000010100011010000001011100001011010100000000000111101100001010011111100101101011110000100110000100111101100100111111000100100111001110111100001111110111111001011100100100010011100100001001000111110101110111111111110011000001101110010001100101101010000011101010010110001111110110000101110001110100000101011100100001000000011101001000011101110101011110011000111110001101111100010100101101111111001011100101110100011100111011101111100110011011010100001101110010110010000010111100111101111000101011100101111010100010001101111111101010001000010000101110001001100110001100011011000011001000001101101010010010011010001110011000100110000100011111110101110001101100000111100000110000001000110010001010100110000000110000000100011110100100110110100100010011110000001000000011110100000101011100110010110000101101100101101111010110110110001010100100010000101000000000101100000001111010110001100110100000100100001111110111000001001010000110111111001010011100100001011000101010001010111001000000010110100110110001010000010010010110011100111001110011101011011110100111011101110110001101001100000101111100111001011001011011001100101111100111001000100110110001000101010101010001100111010100011101100110111100001101110101111110100101101100001101111011101101110100001100101111000111001100000100110010101111011011010000111111111010000100011000110111111110011111001111010100010001100001000110011110000010011100010111111011100110011011110000010000010001100100110101111011111101011011011110010001001110100011101100000011001001010101100001101100111000010111010000101001111101000010000011010110010111100010011111011101011010010011010000110000111110000010000001000110001001010011000000000001000000010011011001110010110000001000110100011001011000100110000110110110011010101010010111110001000001101110111000101110101000001100000011110010010010110110111001100001100001101111010001101100111001101000100101010100011011111101000011010101100010000000001001000101001100111011010110011100011000011010011011010111110011111011001110011001100011011111001111101001101100000011101100001000101101011011110000110101100111100110000000110111111101010101011000111001101111010010010010001100000011010010111001101110001101101010000110011000100001100011001110100111000010100110100010010000110000011000101011111111101100010100101100111011001000100100000000010110001101100000010100011100000010000111100111000111010101011000101111001011111110110011111000010101011000000100010010011100011001001011111111000101110101100111100011000011000011000101110101001010110100101110110001110110011111100 +01010011110110111011001110110110101100010110110110101010000010000010111011010001110100111101010111001001010010100100001011001100100011010101010101000110101010111101000110001001000000010110101101110101011000000001101001101001101010001100001010111000011000101101100000111111101100011010000000010110000101010100010110100100000001011001000111001010010110111110011001000011011100000001011000010110010110000000000001001101101110001101001111111100101101011110101011100100101011100100010011100001011000001001100000101111000010110111011001111000101101101000111110101110111010111001111011110110101001110011001100110101001101010000011101111010111010100001010001110010001111101011011001110100111010010000111101111100011110001100011111101111101010011110001101000001010100111000011010001001101011110010100110011011100000010111001111001100111110110111011010110101001110010001010001110001010010111110111010100111010011111010110001000001001011100010011110011101000011110011111101110010000000010011100101001100100001101101100100111100111000110101110101101110111011101100100001101100010011000100111100000110111111010110110100110010001101001001000100111111001001101111011000100010010001110010000001111110101001000010010111010000011101101010111001100000110001000001100100100001110---------------------1100101101101100101110100100111010001001111111111011011100010111000000111111001100010100101010111011101011110111101010110000011111001111101011001100001110001011001010110000000101001000000111010101100010110110111101100000110101001101000110110101001111100011100101111110010111010110010001010100111111111001111011110011110011010001010001111111101001000100110101101110101101101001000111100100110000111100100100111011100000101011101100010010011011110001001100101111011101110000000101011100111001000011111011001111100001010011101010000101000101011111001101011101111000011010101000010111110110110101110000111111010001100011101001010011010001110111010011111001111011000011100001001100110011110101010000010101111101100001001111111101001001011110010110011000101001100101001100001000101010100111010011000010001010111001101001101000100110110111010111100111110100010111100001000011000011111011100110100010000011101001011011010011010000101010100100011100010111001010000000001011001010011011111000101100011110101101000001010000000011010001000110101100111110011010110010110001111000101000100001011010000011101100001001011000111110000110100111111101100001100000010011000000000010001100010011010000011011110011011010010111100010000010011110011010000100011000101101101101101001111101010111111101011111111100100111010011001110011111100111000010110111100001111001011000110010010010000001101100101011111011011111000110100011100001100111111101010101010010000110101101110110011000000101111111101111010110010001001010000111100000010100101100110001100110011000010010000000111000001110111011000111011000000010111010101101111011011000011111001000001010001101111010100011110010000101100111111101011001011010110000101001101001010000011100000000010000011110001100101100100011110001100011001100100111010110000111101101001111111011101000110100011100001110011010000000101001101110110001001001001101000101000011001101110110111110110101110001010011000111101101000111010010010011111110111101111010111100100000010000100100101100011101001101011110001010100001111100111010001011010000010010111000111010011110100100000100000110111100111001010100011000010010000011110001000111010111111011110111001011111100111111001011010111010100101100000000011101010111010011001111100001001101010011100001000101010101100001101000010101010110001000010100011000010000101010010110000111011101111010010110110000110010110101001001010001110000101001101001100010100000010100011100000111110010001000101101011010011101000011110100010101000111010100111001100111000000010101010000111011100111001001011001001100011000010111011111110000100000111000101001011001111011000101011111011101011101011110010001111010101111101000011111001101111111011000010000110010001111111111101101101010000001001001000010101100000101101100010101011000110111100101000000110010000000010011001101100101000101111010010110110110010100000011110111100110101001001011111000111000011101111100001110101000111001101010110110111010100010011000000111 +11100110111100010010000110111101110100101110111000001101011011000110011000100101110000011001001101011111011110001010001110000000001010001101000100111011101100001101100110101010011011001001010100011111011001011011010010101101001010011000111100010011110100011001101001011000000010100111001010001111110101001110101101000111111101101010110000101111011101111111110110110011011011001111101000101101010011111001011010100010100110101010010110010111100001000111010101001110000110001110010011110011000100111000000111010111111100111010000110100111101110110110001011000110111010111101000001110010111000101010110011111100010111100100010010101111110010001010000001101100010000101101111111010101011111001100010110011110001001101101101100111001100010011110011000110100000000111011010001010100000111011110101000010101001101100100101110100101011010010011000110000101011101011100100010110101010010101001111011010111110100100111000001101000100010101100101110000110111100100010001101101001010101010010101101001001010010001111000111101001011111010001100011100111000111101011001000101001100101011010001011001101100111111110111101010110110001101101001111110100000011011010101000101011010001000111110011100110001000010111110010111111000101010000011001111101010010001011110011100111111---------------------0010100010010110100000011001010001101101100010110011001111001101011001101100100110100000111011110110100110001000101000010001111100101100101111100100100010011000001001011011010111101001010111011110001000110000010111011001001011000101101011000111101001100110001100110000110011100001011001011110001010010000111001101000101111000111011000001111001100000100000100011011000001011000011110000011111101111110010001011111000110000100111111111011010010101110101000111110001000100100010101000101110011011111100110010000111001011101110111010110110001111100000111111010101010110001010010101100111110011110100011011001111001010111001111000101110100111100101101111100111001000101001000001101111111100100101110111111101000000110110001101100000111100010001111110110111011010000010011000110111101010100000100010110101010000101000000010011101100110110011001101011011111100000001100101000101110010101011001100101000001000010001000010101010011111100001111101001000100001010010010110011100110010001011100100110110000010001110110110011100101010101100101001111101000111101001001001100000111100111000101110111010111000001111000111000000011000101111100010000101011110000101110101010110011011011001111101000010100111100100111001101011100100001011011010110111011100001011100011101010111011000101001111011001100010110011101111100110111010010001011111000000011110001110101011111101000010011101111001110000100111011011100110000110001001000111111101010010110000101010100000011100110111111011101011001011111001000111000101110010101010010110000101011011001101011001110001111001010011110100100000011111111001111100010100000110000101011111011101001010001001010000101011101000111001011101101001111010010100111001001101000001001000000001101101010010100010111000110001110110001000100010010011001100111101110110101101100011001011011011111010110001101110010110110010111110111100011110111111111111101001100110100010100001000111011101000101110011100011001111101010100001100110100011100110110000000001010000111010110110000000100110100101101101000010110000101000111110011111001100000111101000101101000101011110000110010001010111010001000111001111101001111010011111001011010101011111111001100001001011001111010100010000101110101100100011010111000010100101001110010011101000110010110001100111110101000111100101110100111100110011111100000110110011111100011000100110001010101010010001011101111110011110010110010000011101111101010000011110111000010101101010101011010101010101001010111000010101011001100101010110000110101110111000001100001011000110001011110000001101111101111111000100101111111100000001000001011111011111001100110000001111001001101101101001010010101011100011001101000100000011001011010011111111110000000000110000000101011100101111010111101111000000000001100100010011101110101010101011000010010011110011011110001000011010110010010010100100011001100010000011100100111011000000001010001010100100010110011100000100010100001001011101011000101110100010011101110110110100101111100011000 +01010001011010010010100010011100101011111101000001100010100010010011100111100101010110100001010100010001011101010010100101100101111101111010100000000101010010011010011010111010110110010001010110000100010100001101011110100010011110011110000111110101100000011011000101011010111111100110100111111100110110011000010000011100011110100110010000010110101100100001101000101101101100100101101100100111000110101011001001011101011100000100110100101011101110100101011110101110001110111011001111101011001111001000111110000001101101111111001001100110011100111110111010001100011110111011011010111101101111111000111000111000110101001100001110010000001100011101001011100011101001110010001111100011111011000000010001010001100010111100011100001000111010101001101000100010100100100100011010100100101110011101111101110010100010000110010101110101101001100110000001000111110000111100011001101011101111101111101000010001011100001101101100100111010110101100101011010111100101011101101011111100011001110100010011000111011010111111011111000001111100100000110010000011010100000001001100001100010000100101110001011001010100100000010010010000010000011110010010011011011101001100011000000101110100001001010000100111101100101100100110110000100011010100111100001111100111100111001100011001111---------------------1011101011011000111001000010010110010110010111000101010010000010110110111110101000000011001000101110101000111010110000110100100011001010101101011001110000110001101101101000001100010001111001100101011100001111111001111111010000001001111100110011000101101011111101001110110111001110101111111000110000101011010001100111100100101011100000011101011010011000100011111100001111001001110100011101010000000101011011000100110100111100001010111101101111001011011001000010111000111111100000100101000101101100100110101000111100100110111010011100111001110011000100000110110111010100111001010011110010111000101110111001100010101100010000000001010110010110100010101001010111011000010001101010011101000011100001001000111000110110110010011111000011001110110000011100100010101000100101110000001001011011010101000110011001001001011001110000000001001111010110011100101110000100101110010010110011001011100011011111111011000100100000111000111001000010100000110011111010011100001000011000100010010000000000110100110001101101100111101110010001100110110111010011110101001100110000101000011101100100100100100101100010000101110101000111000000000100000100011111011011000100111110011010001011011110110111011111000000011111111001000000110111111011101000011001011000000100100001111001011011110100000000111110011111001110010011110011110111111000011010001011101110110000001011100000111001001100000001101100011010001001101011110101010111001111011100001110010000001000110011110110001100011000001010000010101001111110010010010111100011001110000011110000010110010110000110011110101011011110111001111000010111100100111001111110001010111010110001100010001010010101001111000001101001011001011101011011101011000111111110101010100001101110101001101101010001010001111110100000011011100111000001100001110101001010101100011000110100100011010000110111101111011101110100110000010101111011100111101101110101111101111100100110100100010111000111101000010011010011001000000000111100001011111101000001110001110011011001011110111100011000000010010110101111010101111011110111110011001010100001101100001101011011101111011111010000001111000100111001100110011000100001011100100010100111100010111011100110001001110001110011100101100011100011010111101111010100001100010111001000011111000101010100101111011111001101111010010001000101100011100010000001001111011011111101010110011000010111001100001000010011001011111110001001110101111000111000101101101001010010011101100101101111101000011010110011100000100101100111000000101010001101111111000011000001111101101001001100001010011010101100100010100101110010110010000100010110011000110001111100110000100010000100000101100101010101101011111010101001100000010110110100010101101100010011010100111001111110010100011100100001101011101011101100101000001100111010000010010010101100101100101001011011111110100000000100001110110100110110101111111011101101111010111010111111011100111001110111010100110110010000011011110011001010101010010001101010011111000010000000101011 +01110100001101100101001011000010100100100000111110111001000010010110011010010010011110100000010111011010001101010001011000001100001110101111100010011110110110111000100001111010000111011000000111111101101010001101011011000100010110110000001101111001000111001110100111111100111110100010110100011011001110010100001100000111000111110100010011011000001111111101010111111101101000011110000010100101110111010111110011100110111111001001000100011011001010001011110000100100001110100101001101111101101001001001011010110101110101001010110110110001011100100000000100100010101111110101110101011110100001001001110011100000011111000011001010100010111000001001001001100110000010001111011100010010011000001000101101000110110001010000011101000000000100001001010000000001011010101000010000000110010000001110100011000011000011111101010000100110111110110001110011100110110000100111010111001101001110101100111000001111010100000110001010110001010011000101111010110011010000111011011101000000111000000110111110001010000000111100101001011010111111110111101100000011011011011110111001011111100100111101000010101111010001000111110100111100110000100000101111011001001010110101011100110111011100110111100011001111100010100101111111111110111010101010000100100110101110000110011100100100011---------------------0001010111001000100111101111111000000000101101011001000110000100010011100100111000101011001100101000101000011011101111001100111011110110110000110000010000110010101110011100001101011111110111110101100010111100101111100010110100100101111001111010100011111101111010100001111001011000000110010110101010101010101101010001001100010111000010110011101111000111101100111001110111000110010101101100101011100001001000011011001011110000001000111110101100111010011110111001101001010000110010100000001101111101111000010001111111010010000101001011000110010100001101100111001011100101110011100100010101011011001110010011011101011100011010000110111000011001010011111110110001011101100010101110110111000001000111111000100011101110000000000111101101010000110110000111010110010110111010110000000100110011001101111011000000101001010001000011010000010011110011001011110110111100101110011001100101011100011000110110010010010010010011000110111110101000100010100110001010001101001001101111011001010000010111101110110101100110000001001011001110001110001100000000111010111100101100000001001010100001011100011100110101110101111100101100011110100111001101010100100100110001110110100101011110001111010001001010011011111010100111000101001001000010011110011011011111001100011000010000100011111000110101001001001010000000010011011000101000100101000101001000011100110111010111110110011010111011011100111001011000111001101100011100000111001100000100001000100000001110101010110010100111000001111001011011010111110010001000100110000000101011101101001001110100110000110011111100001011100000010011001101010111101001000011000010101011100100111111000011111011101001110010100010100101010110111011111110101010110110101010100000000010011100011111000110110011010110110000010010111000100100011101101110100010000010000100110100101011111011011010110010111101001011001111101000011100001010111011000011001011100011101001111001001001000011001011000000010000011110111101011101010001111101111011100111110110110101000010110001001000000110101101010110111101001110101100111011011001101110011011100100111110101110100100100111110001100101010011000101010100001100010011011011011111001011110101000010101100111000101010011000000100011100000000111001001010101001110001110010010101000100001010010100000001110011101011101001010000010101011010111100111100010100010011100011101001000111100111101001110010111110110001010110110110100011100100010001000101111110000001101101011000101011010010110110011111001110101110001110110010111011011110001110111110100101011000101111100111111111011001110111011100101011010000101010000111010000111100011111010010111101001111101011011000011100101010000101011111010100100110100111110111111100011111101001100000110111000101011110011010111101011010111100101000101101001010110110111011010011110010100111101000111011010100110111000011000100111010011000010100011100111011111110110110111011101100110111010110111011011110101010111111010011000110100110001001111101111001101001011111001001 +00000000000001010011110001010001100010110111111000100001001100010000000011000100111010011100100001110000010110001010010000110110111011111010101010001010100111111101111010000011101010110101010001001101001001010011001011001010101111000000001100010100101100100110010011000110001111101111100001011001000101001011101101001000010101011110110110010010110000010000010001011100011111010000010011010101010000111110010000100000011100110110010000100011101000010010001100111000110001010010111110001001000100011010111101110110101100001110101101000101000100010000000111110000110100010110000000100101001010111010101100110001100001111110101010110111100101110010101100011011111100001111010100101001011110011010011100110100000011000111100110111000111001010100101101101100010110111001100111111011011000100011010011000011000010000010010101111111110000111111000111010110010000011010111111111001011100110001100101100001110001101001100111001001111000010000011010001100101110000101010101011010100101111100011100111000100110001000100111101011101000000111100000001110010011100110101100111000010001110110010100000111111100010011010100010111010100101010100010001000010110100011110101010111010000011100101011101100110100110011011000101010000000001011111011001100000101110110010111000000010---------------------0111001000111001101100010010101110110001100010000011101011111011111100111010011100100110011011000111101111010101111010010000010110101100100000010101101001111011011001011011011110100000001010011110001111100110001010100100000010111111000101100100010010001110001000100100111001011111000010001111010010101000000000100111111000001100110001100011000010101010011011101100001001110001101100001011001111100001010011010001011000011010010111010110000111110010011100101101000110100010110100111111100000001110010101010010011111010010000110000111111001110011100101100001011111011000010010011111000110110110010010110000010100000010101001010101100010100110011011010110010000000010000011111110000001101010100001010010101100111001010100000000000011100001001010110101000110101000010110111100101000100101101110101010010010101010000100101110110000100110001101101100100001101000011100100011111100000001111011100000010101010000010010110000010100000101101011100010100110010011101101101111010111111100101100000111110010111010000000111100001010110001111110010010011001011011110111100100010111000001001101100010101010100100110001011111111001010100000100000100001101000011000011000001101100111001000111101111010100110011101111100001110101101111001010011001001101110101000100011010111011011011110011100011010111101111010001110000011111010000011010010101010001001011001010000011111111011111111000010011001110011111101110110110000110110100101011101000110101110010001111000000000011100000101100001011011100011101010110000101010000110100000100011110111001000010110011100101001110111111111000001000001000010011101110111111010100001101100101000011100000110000010111100001010111111001010101001011100101011010111100110100000111101000111011100010000110011101101011111000101101000001111000011010100101111101111011110011011111001011001011001111100010011110100010011101010000011010110011001111011011110001100110111000110011000110001110000110001010111011111111000100100100011001100100111111111001101101010011011010101110111010000110001001010110001010101011010011100100100010001111100100001111000000000100001001100111101011110010000000101100011100111001000110010011000011001011100011110100110001011110101111110010001010100001110110000100001101011001111101001101111001110111101110001001010001100110010111101001111000101011001001010011111100100100111110000101011001110001111101011000101000100101010010101001101000011010110101101011100000011111101000011000000001010000101110001001100011011100001010100000101000110111110011111111110001011111000001101010011100101110110100101111011100011111111111100011011010111001011011110010000000000110110110000011000110101010100111001010101001011000001000001001110010110000111011101111001010100010001101100111100001111001000111000000110010011010011000100010110001100110110010101001100110000001000101001010110111000011110101101011000001100100011011101100001111010100010010111011011010001101111101100011101011011010011001000100010110111101001111111110001110 +11100010110110010011000011100110000001110011001011101001010101001000000110011001110000100100111000111100001111001101001000010111111110010100100101001111101000001101110001001110001000101011001010101110101101001110111111001110000101101111111000011101111011010111011111101111011101101011111011001010110001101100010001001010101011000100000110100001110001111010111111101000000111110110100111011000001100101110110110111101110111110010001001111011111010000110011111100011100011011001111010000100101010110100001011111010010110010110011100000101001010001110101000110111000110110111000110001111111110011110101111001010110111100110111100010000101100010110001011101100011000010100001110101010001001101011000111111111010000110100111111011100001101110100111011111110111100111001100010100110100101010101110000010100101101110000110011101111111000101001110110101001101111000111111001000000000000101010000101110000001111100010111101010010011010100111111000010101000000100110101011110101000111111111110011111010011010010010110010101001000000010100011100100011001000010111000011100100111111011111110001011101111110000100001100100100010111111101000001000011111100111100001110110110101100111100101110000000011111110110011101100111110100011000100101111110011001010110100110110100110---------------------0010101000101101001111001110110101001100101101110001110011011110000111100101111100111010001100000010101100100101001101110000000000001110010011001101111110101001010101000101111000001000001011011010110100100011111011111010001010110001101100000101100010110011110010001001111011111001101100110011110010011000110001101101001000011000010001000000010001111110101000101111101000100111001010010001001001111010010001000001001100000001001001011101100100000110100111011010110010010110000101001111110001100100010111010111000101010100011010111111111011110100111100101010100110001001110001000001100101101110110011000110111001000011011111111100111011001011110100011111010000110001000011011011000101111001110011100000011001110101101010111100010110100110111011110010111001111001101111011001000010010101001110101010001110110010110001111100100100000000100110111000010110101001001100111110111111001001100100001001011001001000101000011010011111001011110010010010101111000000100100100000110000111011000000111101000000010101110000001011100011001110000010000101101001101111011100011111100110000011000101100111101111010111001011100000110010001110000011100000111001111000011111100010000100010010111101000110110011110110011111101011011000111101110111101101010000111011111001001011110110101111101001110010010001100010111000110000110001011100110110011010110000011110110011101110011010000011001001000110011011000111011011001000001111101000101100001101110110110010100000001010001000011010001011010010100011100011010110110001100011011111110010111001111000000111111001011100110000000101101011101111101110101000101101101100010110110011110011110000001011001111010010010101010110010000001000110100000000111110111010000111101000000111001010000010001111100101101110110001111100010011101111111011101010111011111100100000001101011101000000111111011011100011000001010111111101111110000110011111000100000110001010000000010101111101101110010000001010111111111011110100010111110001100000010100010101110001110111101011010011010010011111011010101000001001010111111100010100100011000011010010001111100001101101000100110110111010001000110100001010110110100101000100100011011110011001011110101011111011011011000011110101010101100110111100101010110000100110100000001100100010001010001000010010001010100000100101011111110111000110111110101101111010001001111011011010100000101110011011011101100111111111110010010111000111110111101101000000000100111100101100110011111111001011000001111001100101110000111111001101101111001110000011101111011110011111010011110100000110001010000110100011111000101011010101011000111111101110100110111111100010100110011111001000010111001000111011111000101110100100101111000011101011000110000111000010101011011011110111001101110110011011110100001001010001101011111010110110111001011111100001100110111110111101101001110110010010010001100010100010100111010000001000000101000101110000100010010101010100111011010000111101111001000111111111110100110100001110011011011011101101 +11111111100110100010101110111000000001110000111011010000111010111110011111010110000011011111010110110010001100110001000101100110000110001001101001110101110011101111000101010111001111000010101011110111100010101011110010001010010010101100001010101101011011100001010111101100010000100111101011001010110001010000111000000101010000100101110010101000111100001101111101100110110101001011100011000001001000001001101011110110010010101101110100100101101010100011111011110001001011111101000010110101100010110110110001101101100111010101101000100001010101100110101011010100101010001011011110011001010000000101110000001011111000011100111100011111111101100110100011010110010011101100110110000011101110111000000011001100100000110110100110100001101011100101101110001000011100111001110011000100100011010110100010000111011111000101000001101100000001101000110101110110011101000010110111001101010001000011010110100001101010001001101111001000010101110000000110011110001000100110000110010011110011011010001100000101101101111110010011010010101010000001111010011010000011011100011110101010110010001111110110111100011100111110000101111100111100011101111110101011001010011110111000111110110101011011100110111101110111110000101110111110010111010100111010110011110001001101110111111100111---------------------0100010111110011001000100001000101101110100001011100101010001101100101100000101101001110101100000010101000010000101100011011110111001100110000001010110011010101011000110010000100011000010000011100000011110001011110100001111011101101010001110000100010011000111000001010001000010011000010001100001111011001101100110110010010100010111011110101100001011011100100110011000111101100101100001101010111111011100100000100101101011001111000001100110101101101011000110011101111110111011101001010000101110101100101111010011011101001001100001111100011010000000001110100001001000011101100111010110100110110110100110101000000111010010111001011100100111110100101001011111100110101111111111001100000111100001011111011111000100011110011010101101111100010010000100010111110110000010100110010001000101001000001110000111001110111111000101100111000101101100000110101100100011000011001001001011100100000001011001101010110011001100001100110101011100000100001111111001101100111011001001101111111001001100101110011100000101001110111100011011100110110000000101111110100001101011101010010101011000101101110111011000101011100000101110100011010000111001111111100001100011001000001111100010011011010111111101001110010110011001011100011000100100110001110101110000101001011100011000001011011100101001010001000000100111001110010000110100000010010111011001100001010001011111111111101011001011111111100111101001010110111000001111111100000110110001101001001001011101001100110101010010000111001010101001101101000101111110101000010110001110111100110010100110011011110011010100000101101110001110010010000010101001000111000110100101110100010010010010100111110011100010011100010010110001000101000000110101101000110111110001010011111101110110110110110100111111011010000000111110101101111111011101001110111111110011001111111000001000010001100101001111000111100110001101111011001000100111011011010110010010001011110000011011101110110011110111010000110011011110100010110110100011101001011100001001101010010001110001000101011110111110101010010011001101011111010111110101000101111010000011101100111010101010010011001111000010011001011000110000000000110000100010100010100010100100111000001011010000111100000101011011010101000001111011010110001111100100011111111001001110101001110111011101000111011100010111001100100011111001100000100101011011111110000100001100111111110110111101101011100100001110100010101010010110100001100000110010011011101100111110111100010010100111111111111011010011000000011001101110101000010111101001001010110101000100100111101100010000110101010001010101100010010000100111001101101111101101100010010101100100100001011010000111100000100111010001100111011101000100100110111001101111100000000111101101001111101100011111010011111100011111001010111011100100011110000111001000011100100011101111010111010000111101000000111001101110110001101101110111001111111110110000011010101101010100101101000100001111110010111000110110011111111000000010100110010111100000011110100110011010110 +01110001011111001011111110011110001000100100010100001001011101001000011001011001000001110000001001100111011001111100100001100010010000000101100011100010101110001100011010000101110100110111011101000011001010001100111011110110010001101010111000101100001101111111100000100000110111010010100101110110110111011100100110100100001100001101000010111101110001011111010101010000100010000100110110110011000101100000100100001011111100000111000111011111111000010101110011100011011011111101100111101101001111011010101001110100100010000101010111001111101100100001111000001001011110001010101010001100000110011010001011110001000001001000001101010000100111000111110111101101011000110100000110010111100100100010011001101000110001110001111001010110000100010010110000110010010101111011001011010001110010011000110100101110011101011010110000110111111000110001011001101011011101111010001001001111001100101101110110010100001001100100111011110100011110101001000100011111000101000101111101110010001100100000011100011110000001110000110010001111101111010000110010010111100110001011000110010101101100111100000011000100110101000110010000011001000111001111000101101111100110110111101100010011000010100101000101110100011101100010000000101011111010010110000001011110010110011011110001010000010---------------------0000111111100111010101111011001011010010000100100101100110011100111000011001001100011100000010000111101011000000101111101000101011111101010101001110010100100010000010000101111101110110000100110111111110011000110010000000000001101010100110101000000011011110010110111011110000110111110010100001000001000000000010110010001001000000101100111111011000101110001001110100100111011100101111101011001011000111111000010100010001001111101011101100000110111011011100000101001100111110110101110111010111110011100101011011000010100100000001000111001100111001000100110101010101110011100100110110110111000001110011101100001111101110000011110001101101100101100101111010101110110001101001111001011000110000111001010111111001001100000100111110100101111011110101011011100110100101101100010101011001111100001101101011110110001010101101100001110111111110011001011001000011111000100110000001001101100101100010010010101000001101110101111100010101101001111010101010001011011000010100011001010100000001101100011101011010001010000110011101001110010100011001100000101101011011011010010100100010101110010010010010101010000000110110010010011001011000100101000110101010111110110101110010110011011010001001111010001011001101010100000101110111101110100011101101000111011110001001011011111011101010010110001000100000110010001001010101001010111011110101000000110100010010111111010110110111011000110100101100100011001000001111110001101011110100100110000101111101000011100010011011001101110001011111000001000010100111000010110100000111100010000101001010111010101101111010001110011100110101100101110011011101011010100000001111001101010100001100101000011000111100010011110001010001101010011000010011001011111100111000101010000011100011101010111001000101011011010100001010100001100000001010011001001010011000100111011011100111001101111000101101001000101110010101100111010000000110101111010011110000011001011010110101001100010010100111010000001011100100010110110101001111100110100110101011110101101010010111000111110101011101100001101001101011101001000000010110001001011000010110001111010110001011110000001101101111100111000111001110110101100100100010100110011100010110001001011001011100100001000001100100001001000011111011100111000101001000011101100000110110100010111110001011101001001101001111101110010110011001101111001100100111101110101110011110010001011011000110011000110100111000001000011000101011010011110001001010001011011110001101010011100010110010010010001010101101000001110001010110100100110101000110101011111110100011111101110011000010110101001110000100100000110101010100010000101001000100101000010100011001101110100010111111100110110110001110010011101011010000111010010001100000100011010101000111101011001011101110111010110101110100011010101110011010101100000010101001110000010001010110001101110001001010011011100100101100000110100110010101000101110011011100111101100011110010100011011100100110001000010111000100101110011000001000010011010010101111000000111011011110010010 +11010011011010110011111000000111000011101101001000101111101110110100000000110111110101111000111110000101000100000000101001001001000100100000101110101000011111010001111101000010101100100011011001101001000011001010000101101000010101100110101110001101000110111010000101001001011111001000000001110001101001111011100010010111000011011111110001111101001001000001110100001101001010001101110000111111001101110100010101100010111010000010001010011010111101011010011111101100110110010001011111111110101000100000001101000000011110010101001110111110110011110000011011100101111110110001111001101001011100101000011110011111001110110011001011001011100010011111110011111010111100100101111011000101111011111100111101101011101110001111011010100001001100100011110001101100110101111000110110010101001010001011001010111101011101011000100100101101111110000100000110110111010000110100000000011100101111101011001001001100000100100011111010110001000111001000000100011010001110001001000010011110110000101100110110000101100100111010011110000100101100011100011110001001111100110010111011100001110001011100100110110111111000010010011101100010010000111111011011011101011000111100111010111010110101010010001100110110010100111000000000001011101110111101000111001011010100010100010110001011100---------------------0100010110111100100000010100011110110110001011101110111110101011111111010101111001100010011100100000111101010101000100110010001010100111011110110100001111101100101111000000100111000111000010010010110100000001101101100111110000011110100111100000110100001001011111001000101111011000000100010001000101101001110100001001010010011001100010000111110100100000010011110110110101101001000011010000010000100000001101101001010101111100000101011010010010001100110000100000111100001000000100101100001001000111101100110011001011000010011010110110101001110100000001110000000011110110000110101001001001010100111001111001001101100011011001000100111101000111010110111001001101000110101110010100001010111001101011001111110010111010111110010110110010001111000100110101010001110011110111111010010101100001001111010000111000111101110111101001100111010001000111111011111101101101011100101100010101000110111110100010010110101000110000100101101101111100101111110011110100110000011011001101001000101100010001110001000010001011000010110001000100101110101100000011101100100010001011011010100010100011000011101010001100001110001100011101011101011110101000100100111100010110010000001101010001011101111100001010000111000001000011101011010001100001100001100100111101000010100101111111011011010101100110010011111100110100110000111111001111001001100011011101001100111111101101110110000110001000011110000000001010100001011111010111101010000001111101001000010011011111100111110001111111001011100001110100111001000010111101111010101101110011101100111110100111001111011010101001101110110110111111101001010101100101100100001110011100011011011000101100011100000110100101001010101100011100011110100011011001110000110010001111110010110101101010111001111010010110010000110011101000011101110011100001001100101111000101111001011110011110000011100001101000101111010101110110010010101100110100100110011010001100011100110000001110001110100011110000100011000010000010110000011111101010110101101101001010000011101100110011011010001110110001001111000110010111000111010000100111010000100011100000000100111101011100001011010000001010110100010101111010010110100100001111001111011000011000011110000000101101111001110101001011011100011111110001011001111010011101111111111000011000010000111111100100111111001110110001111010011101111011000111111001110100001100110011101100011110101110000101110110001011001110001110000110100010100001111011010011011000110111100001101000110101000001101000001101110111110111101010000111000110001100100101110011111110100101110011100010000100110100011101100110101110101110001000000111000100101010110011010001010001111011011110110111101000100011101001110011100011111111110000010010101111011011100000011011101001001110101110111000011010100000111101111000011100111100011000100011111101011001000000101011001111100010110010111001000000010000101011101000000100011010100000101011101010000101101100001011111110011001011000010011010010110110000010001101111110011000011101010011111110 +ls128msgs +01001011001010011101001101111000001111110010011001000101010001110110100100111101100000011101011101010001010001100100111100101011001101001001111011110100100000110001011001011100010000011110010011111011001111111010101011101011111000101110100010110101001011011011000000001001101100001111110011011010111111110110000010001010010100111000110100010011011101001110010011000101010010000011001000110110000100000100100001100111100001011000000001110010010110110000001001100000101010010111001001000001000010101010011100101000100101000011010001000100111011001101110110100111110111101011110100010011110110011011000100101010110111110010000101111010010111000010000111100100010101010011101101101001100111111111111001101000100100001010000100101111000111111011010111001000110001011011000101010100001000000011101000000011011110111100101100011111111001101000000100010110110001100110001000011010100011011110111111010000011010111111101101100101000110001100110010000101011010011000111000100111101011000111111100010000011000010111110110001001100100111110011100100100011000101101001001101001111101010001011110110100011110101000000001001101001110000010001101100001110101100100100011011111011110011100101111101100000001100111100100000101000100100011010101010111100110111010100100101101100011001101110001110011011001101100111010010010110110110110111001101010011110010101011101110100110100101011000000011101110010110111110100101110010011011000100011000011110001100001101101000101111001110000001010011111010101010011101100111100000100010100000010010000100110101000100111100100010011000100101001000001001011110100000001111001101111110000100100011100100010110010010010100001000011111100010001110111000111111110000111001000010111111110000000001000001011101001110100010010000110101000001101010110100001010010000101100100101110010111101101011101110111101000100111110010101000110100101110110110000111000011000000000110011101110110100111110001100011011101110001110011001110000010111000001110101101000111100100001000110101001100000001111011010111100101001010001010010010001001001111010000110001110010111110000101001101100100100011101111010011110100101111110111011100011011010100101110101011101111011110101010100111100100001110110111001010011100111111001110111110011110101101001011010001011001101111010010000010110110100010010001100010010110010101010101101000011111001010110110011101010010110010111111011010110011110110101010010011001000110001101011100011101111000000011000011010011101110010001001100111100010111111011001100001111101011110011001100011011001110001001101100100001001110100111000101101101000011111000011001011011010101100010100010110101000010001011100110001110110011010101011010111011100011101000000001010100010011101011100000001001011000100101000010010101010101111111001001001010101011000100001001110011110101011111101010--------------------- +11011101000111001110001101100101001111000100011101001011000101100010000010100100111101000011011101101000111100011011011100101110011000110101000001101011111010101000010001001011000111101001100110001100100011000110100001011010010110111110111110010100011010111011110101011111111010110101100000001000000111100110100011001011100010101011110110101101011010100000111011000010011011001010101011010000000011000001010110110011011011110110100010110001001110000101111000100100001001100110010110111110101011100010101010110000011110001000110100101011101110000101111110110100101100000010001000110000111110000100111010101010011111010111011110010110111010111010101100110000000100001011011111110000010111111111111010101000001011111100010010100111001000100101011101101010001011010111010001010101011110010011100100110100001000110011000100000111001111000101010111011101011001111100000101011010100111111110100101110110001110001011100111100010110111100001100110101110111110011111111100010001011000111111101011011011000110010001111000111011101100111100110000110001111011101011101111100010100000011101101101101011000101111110010001011010011111000000001101010010101011111011110110110100111001000110001110011111001010101101111011011101111010001010010000000101110110111101010110111100011111110111001101111000101100101111001001110001101101010001100010100101000011111001010011100101001011111110000000011010011001011001100000111011111101111001000110100101001100110110000101111110101011010000010110100101011110110000011100000100111110011100010101010000111001100010010110000010010010110110010000000011011110110001010011000011001110000110100111110001010001110110001001100111111010000001101000110001101110101001011111011000010001110010001000111111011101100010010000111001010101001110000010000001001100101111110111111010111110010101100110110011101110111100100001001101100110101110010000101100101001111101001101001101110000110111001000101011011000111000011000111110111000101000111101111101010110100110101111111110111100000100001111000110100100000101001111101100011101100011001011010101111011001110010000110101010000010110100001011100101011110111110000110001101010000100001001010001101001111101110110100001101011010001000010010110011010001100100000011111010001000111101010111110111101011100101001101100010111101101010011000011010110110001111000010100111111101110111101101110101111011100010100110010110100100100010100011100100101110101111011010010110101011010101001010101011010101101000111100110100011000101110111110110001111110110111100001000010000111111100101111110011011011000110001110111100010000110110100110011101101110001100011000000001000101100110001110101111100111011101101110101000111101000010111111100111000000010011011110001000100111011111010110100011001100010100001011010100110000010011001001001000110010110010010100001100--------------------- +00111001111000011011000000000001110110010000010111101100100101011010001110000110001110010100000110001010011010011000010000110000100001001011101001000111101000000110010101001101101000001010100001001111110110101101111000001000101110010101010100110110110111000011001000000111011011111101000011010111110111111001111111001111111111100110100100011111000111000101000000000111110101101101000111111100100011101010000000110101110110101111111111101001110011110011100110100111011010011000010101111100010001011011011101010000001110110010110001000111001011100101110000100010110111010111001001000010100011011000000101101010001001011001011110111001101001010100000111100010101110111010111101000101000100000001000101110111001100001101111010101000001011001001100001111000110011000011111011011010101000011011110000001111001001111111010100100000100111110111100111000010111011001000000101011011100011110010010111011100110000100000000111000101111000100100110011110000001100010000110101100101011001101001011101000000110010100110110101101001100110011101000011011010011110101000101110101011001111111011000000011010110100101010000100100000000101010100011010010100100001010001110000110010101111100001001110111100001010101100001110010001101000101011111011101111101011111000001000101101000111001000100001100000011110110101011001011110000110000110001010000100111001010101111111011010110011010011100010111001010101111111111011111011001000011000001010010111110011100000100000110110001001111110101011101111111000001101111001010011011101011010110010000000011100001001010010101110111110101101111100001111110101000111101010001110110010100010111011101001111111100000111010010011000100111101000011000110101111000001100111000011100010000111000101111101110111110010011000110011001000110000001010111000101111010001010000110010101101110010110010101111100000000010000011111110001000100001011001100000010110011111000000011011110101011010010001101111101001100001011000001110100010011001100110111101001011010101111101101000001011011001110001011011100010001101100101101001110001000000111001001000000111101011011000100101010010111011111011101111000000000101011111010111101001010001110111110000001100101101110001111100000011001111110011100011111010010101110001000010001110100001111010101011000111101111111001100101000111000000011100101010011110011101100100001010000110111010110011100110000000101111110001100001111010011111001011111111100011101011011001000100110101101000011000001001010011011001010011110001001111111001110011101101110011111101010011001100110011010000111011011111100100110001010110110101111100000001111100101111110101001000111110111000111010100000101001111110111010101101001110101100101101010000110011101010010010000100111011110000111000001110110001011101011110111010011111100001110101011110111100111101010100110011100011010001011--------------------- +00010010101110110011110001100101000010010011100111100110110001101000101000101000010001111100001010010111101111011110110010001100010000110000000100010011101111001001110111011000100111010010001110110011101111100001100010011000010101000100100100000000010111011010100101000111001011010011010111110010110000010100101110000010111110000100101101111101110011101100100110011101111100010010011001101010010110011111100010101111101111001010110111110101100100110001011011110010101111010010011110000101110010101011010100101110110100101001110100001010011100100110101001111111111100011110010100110011010100010011101110001101111101100111011111110010000001000011100111010101110000110110010101100111011001100010110010001101100111001000011010101010110000011011110000010010000011110110100101010000010001010110111000111000100001010010010111111100101101000000101001000101011010010001001001011111011011100110110010111100000001100000110001111110010111111000110011100110100001000001110100010100101111111000001011010101101100110000010000100110011101100010010011100100010110011111011100001101110110111010101001001100110000000111111101010001101010110000001000110001000100011011100101010011101011010011010001111001001110111000001011111011110110011110001100110100011011001000111101110010100100100001010111001111001001100010101011011100110000100001111111011010000110010011001001001111111010100010110010100101110000111101000101100011000101000001110011000110110110001110011000101100010101111001011001001110001111010011001101101010000111001110110101011011001010010000011110111000101001001110101101111011011000100101000010001011011010000011000110101001110111000010011101111111100011001001001100000101101100000111110001001000100011110011001010011010110000000001100000010001111101110111001100101100110011101111100111000101101001001100011110010110101111111000111011001001111111100101000010110001111010110001000100111110001011001111011011111010001010011101011010101010000100101010001011111110010001001001111111010010100110000001100101110101011001100101110110001110010110110011001110011010001010111011000100101010011101110111011001110110000010101100101101100011100011111111011011011100010000011111001001011110011001111110001000111111001011101111010010000011010001001000101111101001101010110010000100110000100010111110011111110100000111000000000101001111011010000110000111010000001010101001000101011111011110011111111010001010001101111001001010001110100010111001010111010011000010110100000001100100000011001110111011101101110000110011000000000011011110011010110111100111000010110001111100010001010100011110011111100011011000000010001001111001010110011010100111011001010001101111010000100011101110101000110110000011111110110111001100000001101110110001010000100111011001001001010010111101100111101000110001000001111101100111101111101110010--------------------- +01011110110110111010110000101101100110000111010011000011001111001011110011101110000000000001110011101111110110111101011100111111000100010000100111010110001001000011111001001101010001111110110001001100001001000101011110110010100010001111110101110011111010001110110011110001110000110101100011001001011001010011111001011101000000000000101111100100000010110011111100011111110010110001110001011000111111011101101010010010001100111000010110110000000101011001111111111110010101001100010010001111111111111001011010001101010111101101101010000000010110111010100010011011110110101101110100010101111100000000110101111001111101110110011001101101100010000100101010011111010100010001000001101001011111111110010101011011101101010010100001100101001010001101000010010101111011010101110011110110101101001001010010111001101111001101111110011110100001101010111000011101101111100101001111010010011101101100101000111100100001001100100000011011011110010001010110110100110111100011011001001001001100101010111011100010100100011111110000100111001001101110111100010011010011100111000000100010100111110101001111101010110101101000111111110001011000101110000010011000101010110111110011110101100100101000100110110100011011111010100000001101100000110110000111111011001101100110110001100000100011011001110010011001011111000011100100100101110011111100110110010010111011011011011000110100011010000000000011100011011001110001001100111000101111100011000101001100000001100100000011011111110101110010000011111010010100000101101001101000000011111001101011010011001011110010101100110011110010111101100000100011001100110010110110111101101000011111111011101111000111111111001110100000111111111011110100101110111100001010010001001111100001110110010110001100100001001110001111001110000110100111000110011110011011011011100001110111010111000001110010101011110011100010011110000100111100111000010001001011011101111100101111101000011110011100101101010110001000000110101110001000110001101100111010111010111001000011101111011001011011111011001011011011110001110111011110010011100100101011101111010111001011010000010110100110100100001010001011000111011011111000110010010011011001000010111000000010100010110110110100111100010101001001010100110110011001001010000001101010101000001110000000101110010000010101101010100001011010001010110100111010111101001110111010011011000011110011011011100110101111101000101100010100001000011011000001111111101000001111110111000100011101001011011010110111001011001000001101001110101100111001000100100001111101010010111011000011101011011010001101111010011001011000111101111101101011011110101100100110101011101110001001001110010110111110000001111010111011000111001000011000100101011011100101110100101111101100001111010100001111001011111111111101110111000110111101001110101100001010011010100011010001110100110111000111010--------------------- +11010010111001100111100011010000100111100000010000110100100110101001000111100110011111001110110111010111111110111110100010001111010001010101111010101101101001110111101001101010110101000110101010110100111101000010011001111101010001000111111101011011100010110001111111000001110101010010011110010000011110000100001010100011101100101111110011111101010010000111000000111110111100111111001000101101011101010110011000000100010011100101111111000010110101110101001100111101110101010000111010100001111110010001100000100101100001110110110000100101010010111010110110111011000010010011101100111001101010110110110110110011010010000100110111000100110110101100110101111011101011010011111001000101110111110000101110111011111010110100011110011100111010101001010110111101001010100001010110011101110100001001001110000011010010000101110110101110100100101111100011110101101111001111111011000101110011010110001101000000010111100001111111100101101110101011110011010010000011000001001001011001011111100101110101010010011001101101001010000111100001111011101101111110100001100110110101010000010010111100000011110110100010100000100110100011011100011100111000000100101000111010011111011110010111010010001111011110110110011100110010101001011000111010111110011010000010111000011011000001101101110001000001111001001010110011101000010011001001100000011011111111110111010010011010101010111101100010110110000001111111000100111100011111111100000101110100100100101001011001101110101110110010110000100000101111011100111111001000100101011000010110110001011100010110100001000011111101001110100110011011001111110110010110001101001101110101100001010111111001111100010000111010110001100111011100110100111011010101011101101001000101110111101100110001101110110011100111001001101110001011011010100100000001101001001011000011101111011100000011000001111000111100100100111010010001011010101100000000010101010100001001000001101111110010101011011000011101000001110101010101100001011001001010001000110111011011001001001010110001011001011001011100110001110010110010110000111101110010110100101110001101101000101100011001001100110011010100011000000110011010011101010111100011100011010011001000010101101100111100001100111001000100010111010000010011100100111000001110001101000111011010111001011001100111110111100101111000010000111111000000001000011110010100111011110100010111100101100100100001101011011100111000100110000011111001100111100101011010100111101000100001001001100110001001110101010011011101101101010001101111000001000011100110110010011011100010100110000111101101000000010001000010101110000010101101000110110000001101100011010111100100011000101110011101100111010101000001010101100111011010011010001110011001101100110011010100000001110100010100000000000111100111101111011011101000000101011101000001011011100001101011000001001110010111010101110--------------------- +11011010011101001101100010001000101111100010100010100110101000100101000100001110001011010110011000001110101101110100010101111011111110010010111110010101110100100001101001000110000100011111101101101100101110011001011101001010001000101011110001101100110101101011010111011100010101101101111001111110011110011110100111111010110111100000000001101000100100101100000100011011000000101111011011110111100011001101100100011101000000100010100101101100010011010101101100111001110011010100000010110010001101001000000100011011000111110011101111100100110101000010001110011111100010100100101001001010001000111011001011111101110010100101010011001001100000000010000100110011010000000010111000101110001001100110011111000111000001110000111111001100011000111010111010111110011100001001001000011011101010100101110010000011011001110010110101101100100010101111000100101011111111011101101111000000001011110011001101101011111010011101000100011100001100110101010111100101101000100011101000011011000110100001001000100011101001110110101101000011101010000100001000101111101100111100000111000100000111001110100000100001001000010000000101110110101011100101010101001101100110001111001001011100011110000000011010001011111101010111100001000110110010110101000011001001100011110011101010111000010100011110100110100000100000011101000111101111101010011001101100001111111000011000111101110011111101000100011101010111011101111011001011100000010010010111001100110100111011000011101010111011110101111010110111111110011010111110110111001000010111110011101000100110011010010101100000100010101110000010101000001111110111011001001110111001010010100110101100001000000011011101011010100001010001001000101101001000000111100100010111011011011010110001101000000011001110000100110011111011110110110101011101001110010110010101101011001101000101101111001111111110100101111111111010101110100101010111000101010100100111000111011001100110101010101011011010001001011111110010010110100100111011101111101010011110011101010001111100101100001111110000110000001101111111000100110001100110100101000111011000100000011011111100110001110010101101110011001001001011000000001100001100001010001111100011100111110000001100100011101110100000010001101101010100010110101101101110001010000111100111100111010010001110111000100000100001110011100110111100010001101101011101111100011110001010000000100010010000001110110000010101111111010000110100100101111101000000011100000101000010010101010101101100000011000110111110001110101101100111010000001011001111111111101000110101001011010000011100001000000111111101010110110111111101110001110100111001111100010010011100111010010011101001101000010110100000000001011001011111110100000010000001000000110010100000000010010011101101100011000010111001110111100101110001001010000001001111010110111000101111001011111001000100001100110010110--------------------- +10110100100100010011101010000100111011111011011011011011110001001101011000000110101100011111100101100000111101100111101001111011011111101110111111000100000110000111110111100111011111001101011101110111110010110000101101010001110001011101010011010100101111010010100101110001000101111011011111001001101001101011001010100101001111100101111100111011011001010100101001101000111011000000001011100001100001011111100010101110011010100101100001000100001000100111011100000110100111000101101010110111000111010101110100000100001111110001010101110110110001111100111011110110101101100110101011110110001011110000011101010100001100111010101000100110100100010000111101110110011001011110101101000000001101111001100011011110111010000110101110001011111011101000000000001011111010101110100010011111100010100011010111001100100100011110101001110001010101111101011001000001101111001111111100110110010011100110100110010100011110110111111001010000110110011010111011011001100000010111100011000010111000001110111011001101000110000001001111000001001010100000000001111010100011110010101011011101011010101000100100110111100001111111100010011111101110100100011010100110001000111011111000010101110110000111000101110100100100010001100100000101010100001000101000000011001001010110101001111101101011101111000101101101111110001011110010001010001100100011100010010100100100100111100111001010111000101010111011000111001110101000001011010011011000110000111010101001111000011001111100011111110001010101000100101111110000011100111000100011100011000100010010010011001000011000010100010001101000001010101111101111101111101011010110100111110101001110011111100101111011100000011110111110101000100111111010000011111101100000001110010100110000000111101110101001011111110110101011100101010010101001110111010110001110101001101000011011111000000010000100111001010111010000001001001110110110011111100100100011001001000011100001111101011011010100111101011111110001011010001100011010011100111000111011001100101111100011100011100110001000000001100110100101100011111011110010100001111000011101110101001101001100101110001010010100101101110100110100101010100010100110101010101001101111000101000000011110110101010110110010001111110011011111111111111001100000111111111011110010110010110010001101110100011000011010011001100000000000011100100101011010000100101110100101110010001100011111010000011111001101111010101001110101110010111100111010100100000100011011001101011001101111010100001011111011111011010000011101011101111101101101111011110110010010011001101111110100100001100000011111011001001000000101101100110011001100111010110010101110111010101110111101101000110000111110000111010101110110100111110000100110010001001011101111110111000100110111101111000000110011110101111001101000100010110001110010100000100110001001111010111101000010011001100100101000001--------------------- +11000001011000001011011010111100011111000011010101010010000011101111100010011110101111101001000110100000010001100100010111100010001011011011011101000101101010101100101001001010110111101110001100011100001111001011001001010100010011111000001101000010110111111011000101110000011100100101101001011001001010011100100001010101011101100010010111111100111011001000110000010000000100001011001111110110000000011100101010101011011001100100101011111001111001101111000001001000011000000111100010001011101010100110001110111101111001111100011111101000011001100110000011010100010101100111001101111110111100011010010110100001111000101010000101000000000010101111010011001001111010010001010111101010100000000010001100000011001001100010000011010000010001110101010011100100000110001011010100010101000011111101100111101100111111010110001001111100000010011100001000111010100010101010001100100001101010000000000111001101101011111100001000111011100010100010110110000000000000110001110111111100110011100110001100000000111100010001100111000101111100100000110010101100100000110010010110100100001100000100100100011110101001101101101011011011001100110001101000111000111000011011101001101111100011001110110011010000001101110001011100101100111010101100111100001010101001011111100001101001000110111000111110000110011100000111000100101000010000100001110011111000101001000101111110101111011010011001000010100110000110100001000011010000000101100001111100100000000100010001101011001111011011111100011000111100101000101110000110001000011110110000101100000001011000011110010010100010110011010010001101001001010001111101101100011110110010011010000101010100110111110111000001001101111111010100001101011000110110111111011000101000101010000101000100100011001111010001011000111110011101111100001011101111000011010110111001111011011110001101100001010011111100111000111110111001001011110110111111010011000110110100010010010111110101100010001010011111111011100110101011000100110110100010010010000001001111001001001010011011101000011001111100110111001111001111000010000000110101100111101010100110110010111001100011100001110001101011101100010000010011001100000100011111101110010111010010010011001010111101100010010111001110010110011001101001011101000101001101001001110100001101000010101101110010110000110100110100001010010001000100100100100110010111110010101011011101110110101110011010001011100111100010010010000011101011000000000100000000111100100001011100000100011011101011011111011011011010010001111011100100111101110110100101010110111101100010111101001010010110101100011001011100011110000111001101101101000101011010100111001111111000110011000000100110011110010011010001100100001110110110011110110000001010010110111001010110010000001000010110101110011000000100011111011101100011010111010001110111011110010100100001001100011011000110110101000--------------------- +01110111001101100011100001111000111101101011100011111101111011111010001101101110011101011000101110000010011100111000011010100101000101111001001001001111101100111100110011001000111010000011000101000011101111010100001100000110001101011010011001000001011001101001000110110110110000101100001101000001101000110010010011110000011001011110110101100001011011101101110011001001010011010011101111001010111111011110111101110110001010011001011000001101001011110101010100111010010001001011001010101011111110011010101010010101100001011101101101010011110111100111100111011011101101010010011011111100111011100010000000100100011101011001000000111110010100101110101110100010111101000001000010100000000100110111010111000011110111110001110011101110101111111100010001111011110001101001000010101010111001000010111010101101110010010011001010111011010000010011011010010100110100000100000101001101011011001100110101000110001100011100010010010001001110000011111001000000011011101011000111001110001011000110100001010010011110111100011111101001010111011001100010001011011010011011000111000101000100101111011101010100010000001001010011001100111111111111001110000100100111001110010111100100011111011000101010000011011001110101101000101101100110111100101100101101000000010010110010001110000110101101111011101010100001100011111110000100010000100100001111001111010100001001100110011110111000000001100010000100010111001101101000111101011011000101111011001101111011000100001001110110110100100011110101000110110010010110010110011011100011100001010000000000000101111100111111100011100100111111101001000011111010110101011011111001111011101010001000110000111001100111110101100010000110100101110100010110110110011011110011010010011000111001110111001100100100010101000011010011010010001101001111001010001000110010001111100000001111111010011110101100001000110111001100011110011001011011011010101010111110011000010000010000101111001100011011001101110101000001111101101000011111100110011010111101000111001011000101001111011110101101100101001000101011101001010111100100000111110000001101110110110001010101000101000000110000010110011110010110101111001011010101011010111111011000010110111101100011100011010011011010101111110000010100100011010100100110010010000000010001100100110111000011011110101100111011110100000001110110001010011111100000101000000001110010001101111101101011110011001001101101101010110010101011111000111001000000000001110010010100111001110110111000111001110001101000011111111000011101101001001110110101000110110001001001111010010100101000101110000110000000000000000101110011010110000001101000010000111010101011010101101001100101110000111011001011101100101010011000010110001111110011100001001101010110000001001101110001010000000101101110001111100100001111111100010001000110111001110001010001000001100111001110000011100110110--------------------- +ls128cwds +1011000000001001101100001111110011011010111111110110000010001010010100111000110100010011011101001110010011000101010010000011001000110110000100000100100001100111100001011000000001110010010110110000001001100000101010010111001001000001000010101010011100101000100101000011010001000100111011001101110110100111110111101011110100010011110110011011000100101010110111110010000101111010010111000010000111100100010101010011101101101001100111111111111001101000100100001010000100101111000111111011010111001000110001011011000101010100001000000011101000000011011110111100101100011111111001101000000100010110110001100110001000011010100011011110111111010000011010111111101101100101000110001100110010000101011010011000111000100111101011000111111100010000011000010111110110001001100100111110011100100100011000101101001001101001111101010001011110110100011110101000000001001101001110000010001101100001110101100100100011011111011110011100101111101100000001100111100100000101000100100011010101010111100110111010100100101101100011001101110001110011011001101100111010010010110110110110111001101010011110010101011101110100110100101011000000011101110010110111110100101110010011011000100011000011110001100001101101000101111001110000001010011111010101010011101100111100000100010100000010010000100110101000100111100100010011000100101001000001001011110100000001111001101111110000100100011100100010110010010010100001000011111100010001110111000111111110000111001000010111111110000000001000001011101001110100010010000110101000001101010110100001010010000101100100101110010111101101011101110111101000100111110010101000110100101110110110000111000011000000000110011101110110100111110001100011011101110001110011001110000010111000001110101101000111100100001000110101001100000001111011010111100101001010001010010010001001001111010000110001110010111110000101001101100100100011101111010011110100101111110111011100011011010100101110101011101111011110101010100111100100001110110111001010011100111111001110111110011110101101001011010001011001101111010010000010110110100010010001100010010110010101010101101000011111001010110110011101010010110010111111011010110011110110101010010011001000110001101011100011101111000000011000011010011101110010001001100111100010111111011001100001111101011110011001100011011001110001001101100100001001110100111000101101101000011111000011001011011010101100010100010110101000010001011100110001110110011010101011010111011100011101000000001010100010011101011100000001001011000100101000010010101010101111111001001001010101011000100001001110011110101011111101010---------------------10101100101110110000111100110000101001011110111000010010000001110011000111100000100111110000110100010101010100111110110000010010100110001011001101010001100001101011100000001101000111000100011010010011100011111000111111111001011100000101101111111000111000111110001111110000111100110000101110101101000010101010000111000011110111001000110100110001101111111100111000110111100010101011001101001100101001011010011011100010100000001100010011110000101101100010010011100111100101101001100100110100001110100100010010111011101111011100100110000011111001011100101010011010100100001111111101111101001110001011000011011011101001101000111110000000100101111011001111110011000100111111111110000000000001011000111111011100110101100110101101001010001011111110100110110010010110101111100101011010110000010000011010011111000111011110110000110100111111010100000011100010110100111001011100100000001011110001101110010011101100101001110101110110100111101100100111011110110100011110011101000100001011100101110010010101110001000000101101100111110111110011000010101010011011101011000001000001110010010010011010000100110100110111111010111110101110011011000000000111010011001110101000111110101011100100100001110001011101000010001101000100010101101110000010011010011001110011111000010000001000100011101111111100011111000100101110001001010001100100111110010010110010010010010100011011010100011000000111010001011110010001111111100111001010111000011001111110111110110010100111000101010111100011010011101010101111111011010111100001110010110110001011010001110111111010000100000101110000001010011000111110111110010011110101000010000001010100010100100111001111001010100011011100111000011001011011010110001100111011001110101110001011110100010010100000100010101010110111100100010001110001101000000100111001010010111101111011010000001000101000111101111101001110111101101010110001001000111011010001001110000110001100010010010111101110100111001010111000011100101001110011110100001001011110110100000111100011110010101110011010110011100000110001011111011011001010101100110100110110100011111110111110101100011010000111001000011000111000000111000011100110010000101010101101001111100010001101001011010100111110001111110000101101011100100000100100111110001101000001100000111111100100100001010001010011110000010011000100000111010110011110010010011000111001110000000111110011100011110011000010010100000000101110110011111011100110010100011011110010110001100100101111101011110101110101000111010101011000000000100111011000101111000011101101001111000100100001000101001101110000011100110110110111101001111000101111001010011011101100101100001010010100100010111001100111100010001110110010110110101100111000011111110110000001101111100101111101010010101100101010010110101001001111001010110100001000111011011011101100101000001011000110111110101111000001100000111000011001010110010110010011001000011000111000001111011000011101011011111010010100100010001110101000010111100111011000001101011011110100110011101010100100010011011000101000100101101010000111001011101110100111010111010101101100010110000100111011000011000010101000110100111011101001110100101011011111111011100101111010000111101011010100100010000111000011000011110010111010000001011010010100101001010100000101010000000010011110111011001111010100110100110011010110000110001100110010111011101111110000010010000000111100100000001001000000010100011001011101011000000001110010110101111010011011111001001001010001010111010001100001111110101010010011110000011101001101100001110000100101110000110111011001000100101100100101000011011000000001001011101111001010001011101011011110110000000100100010101011100011000110101001100111001011001100000010011100111011101110110101110111011010100101000000110000010101111011010101000100100100001110001010011111011101011110100110000111001100111100000001000001101111110000000010010101011000000101111011010011010000001000101010110010001000101101001011100110111011010000111100100010010110001001101011111101011000011010101010000010111101010111001011000001111101010010010100000000110100101100011000001000010111100011001111010111010110100100010011010101110100010111011000001101110101000110011011111101111111101111001100101110001110111001010001010101110000110110011111001011100100100000111010101001010010111010000001101101010110111000111101100010000010110111101111011101101101000100001001101000000110011000100011110100111010100000110010010001111100110001010110010001100110110011010100101001101011111000011010100110111111000011101011110001110100100011011111111111111110001000000100000101100101101100011000011111101100010110101001100100111111111110111110000011011101110011001110000101111101001001011001001000001011001000110011110110001110110001010111111101001001101111100000101110101101110011111001001010001010110011101100001010011101101001100001111101010011000100110011011000111011100111000011111100111001110000010011101000111111000010111110111010000111001011101111000111011110010010110001101001000100111101000011110001101010000011010101101111010010001110111101100000001010100011000000101110101011101001111000111010001101001011010110000101100110100001101111100001110110011100101001010110010110010010100001011101101101100010110011010001100110111001100000011010111011010110101011110111111010101110010010100001100110000111011101010001001011010100001110011001000101110111110111010011010111100101011100110110100101011100011110010011000010110010111111111111110011100100010101010101010000100001000101000111111101010110010110001011000111101101101101011110000001111000011000111110101000101001100000101111000010101100100111110011000010011111100100000010101111011011100000111110111110001110111001010000111001010101110010000010001010011010000011101000100110010101001111100000101100101101001000111100011100010110111101101100011100010100101110011111010010011110100100111000111000010110111101101001101000011111100010011100111101001011100110001111010101001000101010110001011110111001110100 +1011110101011111111010110101100000001000000111100110100011001011100010101011110110101101011010100000111011000010011011001010101011010000000011000001010110110011011011110110100010110001001110000101111000100100001001100110010110111110101011100010101010110000011110001000110100101011101110000101111110110100101100000010001000110000111110000100111010101010011111010111011110010110111010111010101100110000000100001011011111110000010111111111111010101000001011111100010010100111001000100101011101101010001011010111010001010101011110010011100100110100001000110011000100000111001111000101010111011101011001111100000101011010100111111110100101110110001110001011100111100010110111100001100110101110111110011111111100010001011000111111101011011011000110010001111000111011101100111100110000110001111011101011101111100010100000011101101101101011000101111110010001011010011111000000001101010010101011111011110110110100111001000110001110011111001010101101111011011101111010001010010000000101110110111101010110111100011111110111001101111000101100101111001001110001101101010001100010100101000011111001010011100101001011111110000000011010011001011001100000111011111101111001000110100101001100110110000101111110101011010000010110100101011110110000011100000100111110011100010101010000111001100010010110000010010010110110010000000011011110110001010011000011001110000110100111110001010001110110001001100111111010000001101000110001101110101001011111011000010001110010001000111111011101100010010000111001010101001110000010000001001100101111110111111010111110010101100110110011101110111100100001001101100110101110010000101100101001111101001101001101110000110111001000101011011000111000011000111110111000101000111101111101010110100110101111111110111100000100001111000110100100000101001111101100011101100011001011010101111011001110010000110101010000010110100001011100101011110111110000110001101010000100001001010001101001111101110110100001101011010001000010010110011010001100100000011111010001000111101010111110111101011100101001101100010111101101010011000011010110110001111000010100111111101110111101101110101111011100010100110010110100100100010100011100100101110101111011010010110101011010101001010101011010101101000111100110100011000101110111110110001111110110111100001000010000111111100101111110011011011000110001110111100010000110110100110011101101110001100011000000001000101100110001110101111100111011101101110101000111101000010111111100111000000010011011110001000100111011111010110100011001100010100001011010100110000010011001001001000110010110010010100001100---------------------00011100101001100000011100011100010110010011000010000110001101111001100010110100010010111011001101010001101110111110111100111101010110101101100111101011000010001110011111010100000000001110000110110100010000110111010000100010110100110001001010101001011000101001001001100110111010110101000100010010100001001010001001101100011101011110111111110010011001000011101100110110001000010100011111110001100100001000011100110011001100101101100011101110110110110000011100001011110100110010001101111100011010111000010000000100010111000110110111110011101110100001000000001110011001000010011111111111110110011001000010000110111110001011100110001010111110101000001110111000011010000100111010110111100110001101011111101100000011010010011110100010110010101100110010111110110110101111001100101100001110111000100100110110010111100100001111101111100000000001111111110101111001101000101110110010101101111110100010110110100011111110010110010100100001101111101000001111010001111111110000101011000001011110011001101001100011110001010000011101001101111101100110101100111001110010001100011000100101010011100100011110001111010100001011001111110110101100011010001011010011011000011110001111111011000011011011011111010111010110111110111111010101010001111011011111011011110001110110011010010110001000011011001001110000110000000011011000011110000100000001000100111111001101000101011000101001011011101010101000001001010000101110011010111101101011100100001110001101100100011010010110001011101010111011011101100101101011011000001001011111100111101100000111010010001010011011010000101011110110110110010100001001010110011001001001111101110110001100101111011100000000110101001010101101110000101000011010110011110000011100110001110000100010110101000110010110110011011111100001111000110000110010101110011100101001110111001111111101011010101110010111110111000111100010111100101010100111100000001010001100100100011010011010110101100110110100010111111111100110110101011000001100111111110011110111101000011010001110011101111010100001101000001111110001100110011100100000001101011010110110110010111101110111110101111101110111110110100001000001100111010101111100110110000011110110111010011001100001010101101110100100000110000010100111001010000001011111111010110111101111110110100100011110111011010101101101111011010001100100000100100100100010011011111000101010000110101000010000110011111100010100111111101101000001011111111001010010100111010101110101001010001111110011011010010000100110101010000011101100010001111111010000101110111000101000110001100111101100111110011110001101100011111000011000001111011111010010001101111100011101100110111011110110010010111000101100001100110001000000100011010010110110010000111010001101100111110100100010100000111011000000010010011110011101011001110101000010011010000110101101110010101110001101011101001010010000011001110110001011101111011110000001111010010101011111011001100010111010011110101010100010010111011101000111011100110011001100110101000110110101000000100000000111011001111011110010110011010100011110011001101001111100001101001110000100001101000100111110110010110001101100110011100001000110000010000010000010111011001101010011010001101011100010000011010100010010000111101010010111011110110000000111001101001111000110000101101110111000010010000011111100011010100101011010001110001011010100110001000001111101011111101000101001001110100011110100110100001000101000010100010101011111110111100101001010110101010100100011000101011100110011001100111111001011010101101100010101011100001000100110011000010001110110101010010010000001001011010101110111010110011001001010000001101001100000110000100001110101010100111101100011111011100101110001000011001011111101011100000111110100101010110000111110100110111100101101010011101011101011000101100010011111111110100000110010000011101010100111101100011000001111110011001100001101101010010101111010010001001100110101011100110001001111000010000001010100001100110000010100000110110111101000000010101100011110110010110001010011111111111111100000101101101000101111101011000111010110111100101000010000100101001000010101100000100011111100010011000001011101000011011111001110001001000110101101100110001100000100001000001101000010110100010000011001011000011010111011010100011000011001110010100000110111111101000000001110100000010000110111010011110101010000010010000101000011001110110100001001000101001000110001010110010101001001011110000100001110111101011100011000010110100101010010111110110001011000110010010011010010001101011011000011101110101001110111001010101100110101111100011010000110001000010100111111101011000101110111001100101011101010101000000101001001101100111001110111010000111101111100101110001000111010101100100111111100101110110000111101010110111100010010010101110001011100100000001111111110110010110110101110010101111010101110100101010100001111010011001101110101111100100000111010000000000000010011110110100001111010100010110011101001011110000010010111000100111101110101000001111101111001001001111000011111011001111110001001011101011000101110101011101000001000110010011011000111100110111001101010101001011010011010100111001000000010011110100110110010011001100111110000111011011010111101110111010101011001110110001010001001000001111100111100011110010010101110011100000101011010001000000111010011111011110101001110011010011111101010010111001100110101011101001101010101000110010011101100110010101111101000100001101111101110010010001000100111111110101010100001111011110011001000001011011001111111000101101000000001011010100111001001001001110111100110100010001000100111001111100101011100010010001111010110111001010000011001010101101101101111111000000100110100001111011001110100110101110111110010000010100110001000011110111010101000111001110001001011000111101011000100110110101001111001000100011000001000110101101110110111010110110010110101110001101101101110010010110110101110101101110010000011000010011111111011110010011101111101001111011111100000110000011101 +0011001000000111011011111101000011010111110111111001111111001111111111100110100100011111000111000101000000000111110101101101000111111100100011101010000000110101110110101111111111101001110011110011100110100111011010011000010101111100010001011011011101010000001110110010110001000111001011100101110000100010110111010111001001000010100011011000000101101010001001011001011110111001101001010100000111100010101110111010111101000101000100000001000101110111001100001101111010101000001011001001100001111000110011000011111011011010101000011011110000001111001001111111010100100000100111110111100111000010111011001000000101011011100011110010010111011100110000100000000111000101111000100100110011110000001100010000110101100101011001101001011101000000110010100110110101101001100110011101000011011010011110101000101110101011001111111011000000011010110100101010000100100000000101010100011010010100100001010001110000110010101111100001001110111100001010101100001110010001101000101011111011101111101011111000001000101101000111001000100001100000011110110101011001011110000110000110001010000100111001010101111111011010110011010011100010111001010101111111111011111011001000011000001010010111110011100000100000110110001001111110101011101111111000001101111001010011011101011010110010000000011100001001010010101110111110101101111100001111110101000111101010001110110010100010111011101001111111100000111010010011000100111101000011000110101111000001100111000011100010000111000101111101110111110010011000110011001000110000001010111000101111010001010000110010101101110010110010101111100000000010000011111110001000100001011001100000010110011111000000011011110101011010010001101111101001100001011000001110100010011001100110111101001011010101111101101000001011011001110001011011100010001101100101101001110001000000111001001000000111101011011000100101010010111011111011101111000000000101011111010111101001010001110111110000001100101101110001111100000011001111110011100011111010010101110001000010001110100001111010101011000111101111111001100101000111000000011100101010011110011101100100001010000110111010110011100110000000101111110001100001111010011111001011111111100011101011011001000100110101101000011000001001010011011001010011110001001111111001110011101101110011111101010011001100110011010000111011011111100100110001010110110101111100000001111100101111110101001000111110111000111010100000101001111110111010101101001110101100101101010000110011101010010010000100111011110000111000001110110001011101011110111010011111100001110101011110111100111101010100110011100011010001011---------------------11001011001101011000100001111101011011101111000111100111011110100100110101101111100101101110001001000101100001100011100100010001100101100001001110000010110110111101101100011111010000101101111001100001110011010101100000001110010100101011110100101111110010110100101101001111010100000000101000111101000011111011100001110111111010101100111101101101110110100101110011001011101010010010011110110111101001010011111100000111100001101100010100000101100100001000100111110000101010000000110100100001110111000011011111010100011011100110110100001010101100111001101011100001001011110011000101100010001001010001101010010101111100011000101110110100001011101000111111010111100100101000111111001101110010010100001010011111101101001111000100011100001110001011111100000000110100011111010101011000000001000010001101001110100010101110100101010100110101001101010000100111010010010111101011011011101000010010010110100010001110101011101101110001110001001100001010011011001100011101110101010001010101000001000010101101000111111111001000110100110101110001101000100011100110010000110011101100000111111011001100001010101010100101001101110001010011111001000010011000111110111111001000000001010101010001001001110011100100100010111111110110010110010011000011011011101111100000111010110010111011000100010000000100101000111000001011001101100000001101111000001011110000100100000100100101100001100010011011101011110001111000000010110100001001010100011101100011101110110000010000011110011101001000011110011110111110110100000110000100101110001100001101101011101001001000101101000111101100000101101000101000100110101110010111000100010010101110110110100011101110101000011111010001000011100111001100100110000111010101011101000000111011100011111101011101110001110001001100011110100001100101110100000001110000000010100011110011111111011100001101110110000111001001010110111000000101101001000101001000100100110000101011110011000101101010000111011001100101110100111111000000010000111010111011110010000001111010110110101111100000100100011110101011010000000101101101001000111011101000001101000010111011111101011111111101111110100100000000101001010011100101111011000000010101000101101000001000010110100110011101101000011010011011100111011110111001110001100111111001110000001100011000000000100010111101011101101011110101011010110110011001011000010100001010110001000010111010000001110010110100100010100010000001011000110100011000011110011100100110111111001001000000101001101011001111101101101000000011110100010010000111000101101011001111101001110101111101000000001100110011010011000011110110011101111001000001001010001111010110001100010101010111111011100100001110100101000100111001101010111011110001001110111010011000111011010000110100111010001100011110110011100100101010111101110010000001011001110000100000100001101001100100000011011110001011110011001111010000000011011001111111100101111011110111100110010110110101110101011110011000111100011010010001011010001011110101010001101101100000100011101000110101000101111001111111110010100111100100100100010001111001001111101101111110000000001110000010111010110000010011100110011100000110110111001101110000000110001100100000001000011111000011100011100101110110010011000110111100110110100110000110110001010101011100000000010011110101111011010000101001001010101001101111110001010011111011010101011001001001100111010101010010101111101010101010110000100001111000001111000011010010011011111000100010010111101001111000110101010001000111110010110001000111010011110101011010000101011010111100011111001110111010110111000110101110111010001010011100111011110111110011101011010111000110110011010110111111101100001011110100101110011101000011101111110111101000110110011111010111000010001100100101010110011101011100000100001100101010000111101001100100101110110000111010011110111100101110010011101011011110110011010101111010011110010100001000111100011101100010010011110010111001110001011010010010010110101100111000110001010011000001010110001101101000101001001010110011100001100110001100101000001100011111100111100000011101000011000110001001000101011010100000010100111100001110111100000100000001000111011010000000101110010101011100010000111010100000111011111011100110101111011000011100000011011111111100011101110111111110111111001100111100110100010110111011000010010000001010111000110010110001011111010000010010011101010011110001101101110110011001000010110110010100111000001010100100000000001111010011001111100001010100001110111010010011011101111000101000100000100000101101110100110011111001011100010000101100111011011101000100000001011110011100111101100110111001000000001100011110100110111011010001100000011101111110111110101111100110110111100101110100011110011101100011110000111011011011100011001001001010101110110011010111011010100111101011000001011100001110010100110011111010001111000011100100000111100000010101100001001011010000000000010000000010001011000010010001000011101110100001111111001101100111110000011110001110011110010101011000000001110001010001111011010111001111000010011001100001111101011011000101100000110000110010011100100000010101000110011100111000001101111000011011100101000011111110000000011111000101011000110111111010000101101001000101110111101101100001110001111001110011001011010100000111010000100011011111111101000100000101010000100110010011110111001101100001110101001011000111010111101000001010111100000111100100001110100010111100001011111110000110100111100011011001110010111001010101000111110110111101101001110001011001010100101111001111111111001001011000000011101011110110110110001100001111101001000101100000101000111110100110000001110011000011110101010011100011101111000111001111100000001010110110000011111101000100010010100111000010111011101101110011000101000110000110011010010100101101010101100001110100000111011011000001110101000010011110100010010100110010110001111011011111110011001001001111000010100101000110100001100111111011000111011111011000100110011110110100101100101110100111 +1010100101000111001011010011010111110010110000010100101110000010111110000100101101111101110011101100100110011101111100010010011001101010010110011111100010101111101111001010110111110101100100110001011011110010101111010010011110000101110010101011010100101110110100101001110100001010011100100110101001111111111100011110010100110011010100010011101110001101111101100111011111110010000001000011100111010101110000110110010101100111011001100010110010001101100111001000011010101010110000011011110000010010000011110110100101010000010001010110111000111000100001010010010111111100101101000000101001000101011010010001001001011111011011100110110010111100000001100000110001111110010111111000110011100110100001000001110100010100101111111000001011010101101100110000010000100110011101100010010011100100010110011111011100001101110110111010101001001100110000000111111101010001101010110000001000110001000100011011100101010011101011010011010001111001001110111000001011111011110110011110001100110100011011001000111101110010100100100001010111001111001001100010101011011100110000100001111111011010000110010011001001001111111010100010110010100101110000111101000101100011000101000001110011000110110110001110011000101100010101111001011001001110001111010011001101101010000111001110110101011011001010010000011110111000101001001110101101111011011000100101000010001011011010000011000110101001110111000010011101111111100011001001001100000101101100000111110001001000100011110011001010011010110000000001100000010001111101110111001100101100110011101111100111000101101001001100011110010110101111111000111011001001111111100101000010110001111010110001000100111110001011001111011011111010001010011101011010101010000100101010001011111110010001001001111111010010100110000001100101110101011001100101110110001110010110110011001110011010001010111011000100101010011101110111011001110110000010101100101101100011100011111111011011011100010000011111001001011110011001111110001000111111001011101111010010000011010001001000101111101001101010110010000100110000100010111110011111110100000111000000000101001111011010000110000111010000001010101001000101011111011110011111111010001010001101111001001010001110100010111001010111010011000010110100000001100100000011001110111011101101110000110011000000000011011110011010110111100111000010110001111100010001010100011110011111100011011000000010001001111001010110011010100111011001010001101111010000100011101110101000110110000011111110110111001100000001101110110001010000100111011001001001010010111101100111101000110001000001111101100111101111101110010---------------------00110110111000010100111111000110011010001000010011100110101001111001101011001011001110000010000010110101001111110110011000000101001011101110110010001100101101110011001101000000110000011110110111100101000110000110000000101000100001001001101110001010001000101101011111100111000101010010101010101101000001101111000110110100001101010101100011011110011101001101001100001010010001001101110000111001001110001011010001001010110100100010000011010101000111001111111110111111010000010100010011011001001011010011001010110011101100110110011100101011100010000001000100000001111001111101111100100100110100001111010101111101011011011101000101000001100110010100001000111101111111111000001000011010110110100011110000100100011010100011110100110000101101101001011111000100001010101010111010011110101110000100100000000110110010101000110010111000010000101110000001010010101011110011101010001000010001010100100100000011010001000001100110101111101010001001101001000010001100010110011000000100111101111100110100011100011100001100001100100000110001111001110001010111011011001110010001111010101111000011010111001100001000111001100111011010111110110111010011101001000010110000001111111010011111111000111011000110010110010001111000111010001111010101000001100101110111100100100100110100000011100011110010010001110101111011000111101011110111101101000011110100111011110111011000111110001010100111000000011001001010100110110111101111000110111110100100011101001101010101010111110011011011000000001101010011100000010001100110101001001010100101010011011100010101101110000110001100011111110111111111010001110100001011110100110001111111111110010001000100011000111010101111110000101100011000100100110011000001111110101011001110101001110111101010001110001110000011000101001100101000111011000000110101111011000110111001011101110100011000111101010011000001001110100010100011110010100100001011001011111101101010000100101110010101111000010001100000100011101110001100000011110110110100111110000100110111010001000010100110110000111110001011001000110001000110001110000110110101100111000100001011001000110110110001101011001000000111100110000000100100011000000100100010000110000011110000000001110010001000001111110011001001010100100100111110011111110101000101110100111110001000100011101011111000101110010101111010001000111101001111000110001101110000101110100110001010011111011100011000111111010000000011000101111101011000100100101000100011011111011110111110110000000000000100110101111110101011001000101110100010000001111110011010000110111010110010110000100101110010010010010110110010011101111101100000011001101100001110011001100010100001001001001100001100000010101000010010100010110010100101010100100001010001000110101111110110110111110010111001110011101011100110100110010100111100010100000010000101011010101010100110000000001100110011111001101101011101111010011011000100010011100011001010100111100001001101000000001100001001111011010111010010000010000000001110101001100101111011101111010100110001100000111100010001111011100010110110011000000011111011101010101111000011000000000111111001110010010100111001001110110001110001100111011100110011100011010011011001001000001000101111011010001100110011110101000110001111111101110111110000111110111111001111110100000011101001110000010000111101101011100000000110111110010000111101001000111001100010001000100011100010010001110011000011110001110110100010111000110001111101100111111000101101101010011100101001011011100101001010110101001001110110110011001010000001010100010110101010100100101111000110000010101100110100000010010100001000011011000101010000011101011011001000100000011011100101001011011111010110010110010100110010110010100011011111111101001001101001101110001010101110010101000111111101111100101100100001101101101011001110001101100001000011010010101001101010011001110101100010111110001111111010010000101101011110011111011101011001001000010001111100010101001101111101111001101011000000010101100001110110101001100100011101101000110000110001001010111111110000110010110010111100111000001100111000110101011000110010001100010000101101001110010011010001110000011101101110011010111101100001101001101010101111000011000010110111010110010001000001011000101110001101011100100010010111101001111011101010010001101111101100001110110000100000000111001101011111101101100110011001111111101010101111000001011110110011011011011100011001010010011111111101111010010101111110011100100100000011111100110011011001100110011011011001000010011111010001010011100010111101001000000111011101010001100001000111100000001010111100101001010101000110110011100101001001100111011100100101111111000100100101010011110000001010010101101110010111011010010100111000001101011010010100100010101011000100000110010001111110111000110111001010001111011011110000011001110111101000100111101010111101001000001000011111011000010110001010110100001101111110000100111110010010001010100110010101010010101001010001111101101111000100010001101110100101111100111100011000011101111111010010110111010101000110111011010011001111101111010101111001000101110100011100110100001111001101001110110000011111000011000110111111101110110000101101010110010010110110110010000000010011000000110111101101110000010010111010010100100001101100100100111101010101111010111101001010000001010100010110011000000100100001010010001000001101001101001010011100100111010000100011100010010011011010010001000110000000011011011101101101001100011010010101111001110111011000001111110001001000110001011010011100110101100000001010000100111111011100100000111000000101101100011111010110000100111110000110100000111011001111010011010101011100110111111100110111111100001011001011000010001001100010011101000101101000011101001111101010010110100010111100110101010101110000010011000001101011011011010111100011000000111010011000110101011001101100110100100000011000011110000110110111011011000011001010000010110110010100000111100101100111001010010100101101000000010101000000111011100010001110011010 +1110110011110001110000110101100011001001011001010011111001011101000000000000101111100100000010110011111100011111110010110001110001011000111111011101101010010010001100111000010110110000000101011001111111111110010101001100010010001111111111111001011010001101010111101101101010000000010110111010100010011011110110101101110100010101111100000000110101111001111101110110011001101101100010000100101010011111010100010001000001101001011111111110010101011011101101010010100001100101001010001101000010010101111011010101110011110110101101001001010010111001101111001101111110011110100001101010111000011101101111100101001111010010011101101100101000111100100001001100100000011011011110010001010110110100110111100011011001001001001100101010111011100010100100011111110000100111001001101110111100010011010011100111000000100010100111110101001111101010110101101000111111110001011000101110000010011000101010110111110011110101100100101000100110110100011011111010100000001101100000110110000111111011001101100110110001100000100011011001110010011001011111000011100100100101110011111100110110010010111011011011011000110100011010000000000011100011011001110001001100111000101111100011000101001100000001100100000011011111110101110010000011111010010100000101101001101000000011111001101011010011001011110010101100110011110010111101100000100011001100110010110110111101101000011111111011101111000111111111001110100000111111111011110100101110111100001010010001001111100001110110010110001100100001001110001111001110000110100111000110011110011011011011100001110111010111000001110010101011110011100010011110000100111100111000010001001011011101111100101111101000011110011100101101010110001000000110101110001000110001101100111010111010111001000011101111011001011011111011001011011011110001110111011110010011100100101011101111010111001011010000010110100110100100001010001011000111011011111000110010010011011001000010111000000010100010110110110100111100010101001001010100110110011001001010000001101010101000001110000000101110010000010101101010100001011010001010110100111010111101001110111010011011000011110011011011100110101111101000101100010100001000011011000001111111101000001111110111000100011101001011011010110111001011001000001101001110101100111001000100100001111101010010111011000011101011011010001101111010011001011000111101111101101011011110101100100110101011101110001001001110010110111110000001111010111011000111001000011000100101011011100101110100101111101100001111010100001111001011111111111101110111000110111101001110101100001010011010100011010001110100110111000111010---------------------11110000011100000110000100110111001001101000000100110100111001100111010001101001000001011100011111000101001110001111011000010110101010000010001101010101010101010101000100110000110011101100000010111110111010001010110000111111111011101011101100000101001100011001010011110110010001010010010010010001110011101001101001001001001110110001001000011010011111111100110010101001010100110011111110111000101111001111100101100011101110111000110010001101010110010101100000111000010001000000001101000101010100011010010100111001100011000101001001100010011000111101010111101000010010010000110000001110101010101000000111110100111000101100111010011001001001111010101100100000110010000110010000010011111110111110111100001111010111100110001010100111110011000110011001010001111101010011101000011011101011011000111001110000001001010110010000010100001110111110001111100001101100010010111010111110011111000010100010101000010111011001110101100101101100111111001011000001010101010111010000000010001001010001110101110100011110011110101010101111101011101001110010011101011010101011000010110011001000011100111000110100110001000011101111000011011101011100101110111010011100011110010110010000100010111110000010110011110110001101000100001000110001111011100100110010010011011101111100010110101001000101000110111100100110101011111111010001000001010011101101011011110100100100010110100000000100110110111001011111101110000111011101111101011100001010110110110101101000000110010110011001110111000101011110110001000111000011001011110010101011100010000101111001001101110101111010101101000000111110000000110110000111111001100000100010011111101001000101101000010010111110110100001100100111011001111111001011011011011100100110010001010101110101100111110010111010110110000100100111011101110010010111111000100111110100011000101111000000100011101100000111000100010110111110010100001100000100001101111110101010101000111101010110110100001011001000111101101101111111011111100100001011100101100110111100100000100101110000010110010011000011010111000000111001001111110100101101110101110011001011010000101100101011011010101111101110011010110000010111001101100000001110001011010011101011111110101010101010110011101100101100000100101101001111100100011001100010010011001001011101010001011011011111101001101111001010100000011000111111100000110100011110110100101000101110010000101011101110011100001011101001111110001111111000010100000100110101111101000001101000010000101000010011011011100101101000010101010111111000000001111010010101001011110001111110111110001000100011111001111010101100101100111111001011110111101111110010111010001110110001001100000011111111111001000110010011100111000000010110011000100100001010100010001011110010100000111010011011101100011111010101101010001001101101001001100100011100111100001110000110010011010010000000010110011111001010101001100010101100011011001010111101010011110001011111011000111110100001111010101101111101011000111011110111010001101001000010101000011110101010001111010000101010110011001001001010110111100110011011011100011000101110011111000010100010100001101000101011111011110010101110110010000011001110010000110110010110011111110110111111111000101101000001110000011000110001000100001000011000010011110110001101111011110001100011111000100001011001001000000001011011000110100100000000111101010110011001010010110010111001010000101010011011001111101111010100110111101011001011000101010010010001011100100011101001110110001111100111110101000010011101000111110010011000100011000001100100100010010110001111110010111011100110111001011100111000000000011011000010010001011000100101000111111000010000111111010101101110110010100100100001100111011010101010011001110111011110110110001111100110000111111010000000000011001100111001011111001011001010111001000110100100010011001111001110101111001101110010011111110100010011000111001100010011010101001111100110110111000011010001111100100101001111000001110101000000110111111010111001101001101001100000101001000011101011000011010101101011000100010100110110110000000101101101000100010101111010110110110111100000000001111011101001000111010101101001001101011000011000001011100011011100111011101000001000100110010100001111010001110010111110111000010010110010010011111001010001011111100000111000110101000101111110000100111000000010001100100100010000000101000001101101011111001110011000111001000110011001011100100000001000001101110101001011110111000000111110111100101011110111100101100001111100001101110001101111001111110100100101010001000011110101010001011110001110111010111010110010101111100111101010010100110000001101100110101010001101011010111110001110011010010010110101001110110010011000000000100011011110001111100010100001000110000101110101111001011011000101011110001101111110010010001001001011000100101101100010001101001101001010010110111011100110100000101010010100010010011111011100011100110110110101101110001111110001010100000000101010110000000111101000000010001001111110101110000110000111010001010000110001101101101100001100010001010111000001110111000011110101001110100010100000000101100010001110000000110000111100001001111000101110100110110100001100100100101110101010000001000111001011110000100110100000000000011001111100101100001111101010110011110010001111101111101010101111000011000001100001111000010001110101111100101010100101110111011110110011101000110010111010001000000001110110110001100100001010110011100100000110010010000000100010010000000111000101100000011100001010100011110011100000010110000001110100001110000110010001100101000101110010010101001010111110100101101111010001010111100000010110101101110001000101001111110101110010000100000111000011010110110110110111010101010011111101111101000010101010011110101010010000001011010101011001001101000000010111101111101111111111001110001001000101011001010110111010111010010010010100001110101001010001001011110111110101111101100010101101111011111011111001100101011000100100011110111111010101111111111010111001110010010110 +0001111111000001110101010010011110010000011110000100001010100011101100101111110011111101010010000111000000111110111100111111001000101101011101010110011000000100010011100101111111000010110101110101001100111101110101010000111010100001111110010001100000100101100001110110110000100101010010111010110110111011000010010011101100111001101010110110110110110011010010000100110111000100110110101100110101111011101011010011111001000101110111110000101110111011111010110100011110011100111010101001010110111101001010100001010110011101110100001001001110000011010010000101110110101110100100101111100011110101101111001111111011000101110011010110001101000000010111100001111111100101101110101011110011010010000011000001001001011001011111100101110101010010011001101101001010000111100001111011101101111110100001100110110101010000010010111100000011110110100010100000100110100011011100011100111000000100101000111010011111011110010111010010001111011110110110011100110010101001011000111010111110011010000010111000011011000001101101110001000001111001001010110011101000010011001001100000011011111111110111010010011010101010111101100010110110000001111111000100111100011111111100000101110100100100101001011001101110101110110010110000100000101111011100111111001000100101011000010110110001011100010110100001000011111101001110100110011011001111110110010110001101001101110101100001010111111001111100010000111010110001100111011100110100111011010101011101101001000101110111101100110001101110110011100111001001101110001011011010100100000001101001001011000011101111011100000011000001111000111100100100111010010001011010101100000000010101010100001001000001101111110010101011011000011101000001110101010101100001011001001010001000110111011011001001001010110001011001011001011100110001110010110010110000111101110010110100101110001101101000101100011001001100110011010100011000000110011010011101010111100011100011010011001000010101101100111100001100111001000100010111010000010011100100111000001110001101000111011010111001011001100111110111100101111000010000111111000000001000011110010100111011110100010111100101100100100001101011011100111000100110000011111001100111100101011010100111101000100001001001100110001001110101010011011101101101010001101111000001000011100110110010011011100010100110000111101101000000010001000010101110000010101101000110110000001101100011010111100100011000101110011101100111010101000001010101100111011010011010001110011001101100110011010100000001110100010100000000000111100111101111011011101000000101011101000001011011100001101011000001001110010111010101110---------------------00010000101110100110100000011110100010101001010001000100010000000111011110101000100100000110100100110010100001100110010011100101111000111011001100011010100110101001110101011011111011010011101000111001101111101100111101101100010000010111100111110100111001111101111000000111111110111110011101010000101010001101010011000001111011101111010011101111001011100111001000111100001000111100101101000010110011001000111110110111100010111101001010111001000111010100011100110110101000100010011101111101110100010001001100011000000011000001011001100100010000100000010110010111101001100100001100100000010010100110011110111100110001110101010101010000010010110100101111011100001001111110111111101000101001000000011111101001001100101101001100011101011001101011011010111000111110101000000111011101100010000110111000011011000110010101001011001110100000110001010001001000100111111110000100001011110100101101011001001001110000000110101010111001001001100111001100000000110111011100110000000011100001101001000000111111100000000101000100001100000011100000000100000011100010101100000110111000010001011000111110000011110000101011111011100101101110111101000000101000010000001011001100001000111000100110100010100101001010101100101010011010010001110111101110110111011011000100100101001100001110110100110101101010000000001111011010100101000001111010000111111111100001011110000000010011000110110010100110000100011100110000000100101010001101001101000110101101100001010011111011011111110010010011011100111110100000011010101001110011000110001001101110111000110101100000111100010011110011110001100000011100000110000101110010001110101001011011111101111010111000101100000100101110111001000001101110001000100111011000010101100001010000111001011111010001010101001000001001101101100101011111000101000000000101111010010111011101010001101111110000011010001011010000110100100010110011011111010001111000011100101110100110101000001000110110101101011100000001000011001011000001000010001010011000100101101010111100110001001001000000101001011100010000010001000001000100110101110010000000100111001101111100010010010010000101010001110111010010110010101110110001101011100101000101100100111110001101100110110010011010001111010100000101101101000100010010010000110011100001101111000100110011110011001001011110111100010100100110010111000001011011101101101101001011001010000000001111010111100011111110111001000000000011011010000100011111011101111001001000110011111110110000110110110011001100000111101111111110010011111001100111001001010000110111000000000100011100011010111001111101011011010000111011000011111000001010110011011000000011011001101101011111100001011010111000101101011110010000000110001111111011010010011101001111111000100001110101101101001011110000001010000110101011110100000111001001000111110110111101110000110001000010100110100001010011101101001100100100000111110011011111000000111011101100110111100100011011001111010001011001010111111110100110111010111001100111001000100011000011110100110000000001000011011110100000100101101001011111010011011100011011011110000101101010010010100000011011011001111101110100101001011010011010110011100100111110100101101011100101101100001111001100010010010101001000100110111011111000110100000111101100110111010101011111100000111101110011110001111100000111110010101000101000101011011111011101110100100010110001010011100100001111011000010100110111101111100001000001101110011111111100000110010001100011011111100010111101010000011000101000010110101001101100101001101011100110101011101100010001100011110010001111011110100011100101100110100100101011011100011101011111101010100010000110010100000001000100100011101010011000011110000111110100001110101000110111101110011000110001001101110110000000100000101110101011110111110011101000010101101110100101101100110101010110111110000001001011110000001001100110100110110110011010100000010000100011101100110011100010111001111110001011101110110011110100100111101000100011101011001111010011111100001000001110010111010000011100110010001000110001111010010101101011100111001100000001110111111010110111001010100011110111011100001011000001011011110111110001101111010011010101000100001010100001001111011010101000011101011100101100011110110101001000111000011011001001011101111111000100101010110110000011001110111110111001110100111010000110010000010011100110000011000100111011100011010011100001110000111110110010001100000110000101100000111101100011111101000011110100001100010100110010001100101111011001110000000101000000000111100110101000110010000100110011000011101011100101000111010111000111010100101101101011111011011101010100110001010010111010100100001011111101011111001110101011101101110111010000000100010100001101111011100101101101011110011100100000111001000111100100001111110101010001010000010111100010101100110110001000101110001100110001011101110011000111000011111110001010010011100001010011100010110111111000000100000011010101001000100111111011101110011010110011001111100000100000111000011110001111011000101011100011011111001100010110010000001010001101100111001100101100010000001011001100011011111100010001111010000111010011110100011001010000100110001011000101111110010111100111011111101010100011000001100111101011110111111111100001100000111010001110110011011010011010100001110001111001111110000010110110101101010100000010000111101011010011111000110011101110000010100010001101010000010101010100111100011110010111000101001100001000000111101111101110111010100001100000010100110110111100000000101001011100111011010010101001000001110101101101000110110000001000111001010100000100111111011010010000110011001000110100101001110001000110110100010001001010001111011001111001000111001001000101100100000010110000111110100100110010001010110001100000001001101000000100010101100110010101000011101111100001100100011111100101101000101101101101010011011000010000001010101001011111000011011000101111110011110000100100101001001001011101000101100100010100111101001100001011111101000010011111 +1011010111011100010101101101111001111110011110011110100111111010110111100000000001101000100100101100000100011011000000101111011011110111100011001101100100011101000000100010100101101100010011010101101100111001110011010100000010110010001101001000000100011011000111110011101111100100110101000010001110011111100010100100101001001010001000111011001011111101110010100101010011001001100000000010000100110011010000000010111000101110001001100110011111000111000001110000111111001100011000111010111010111110011100001001001000011011101010100101110010000011011001110010110101101100100010101111000100101011111111011101101111000000001011110011001101101011111010011101000100011100001100110101010111100101101000100011101000011011000110100001001000100011101001110110101101000011101010000100001000101111101100111100000111000100000111001110100000100001001000010000000101110110101011100101010101001101100110001111001001011100011110000000011010001011111101010111100001000110110010110101000011001001100011110011101010111000010100011110100110100000100000011101000111101111101010011001101100001111111000011000111101110011111101000100011101010111011101111011001011100000010010010111001100110100111011000011101010111011110101111010110111111110011010111110110111001000010111110011101000100110011010010101100000100010101110000010101000001111110111011001001110111001010010100110101100001000000011011101011010100001010001001000101101001000000111100100010111011011011010110001101000000011001110000100110011111011110110110101011101001110010110010101101011001101000101101111001111111110100101111111111010101110100101010111000101010100100111000111011001100110101010101011011010001001011111110010010110100100111011101111101010011110011101010001111100101100001111110000110000001101111111000100110001100110100101000111011000100000011011111100110001110010101101110011001001001011000000001100001100001010001111100011100111110000001100100011101110100000010001101101010100010110101101101110001010000111100111100111010010001110111000100000100001110011100110111100010001101101011101111100011110001010000000100010010000001110110000010101111111010000110100100101111101000000011100000101000010010101010101101100000011000110111110001110101101100111010000001011001111111111101000110101001011010000011100001000000111111101010110110111111101110001110100111001111100010010011100111010010011101001101000010110100000000001011001011111110100000010000001000000110010100000000010010011101101100011000010111001110111100101110001001010000001001111010110111000101111001011111001000100001100110010110---------------------10100110000001111100111111001111101110000110001001000000111000111100100000001001011100010000100100000100001101111011001010110101101011100001000110111100111001010101010000111001101100101001011001110101001011110000101000100111110100110100001110110100000110001000001001101011010101100011000011011001010000000100011101110011111001110000001011110000010101001100010100011000011111001011001110101101101011110000010110010000011100001100101000111110101100001011010000111111100000110101000110111101101100111010111111011100101110001101111000100001011010100000000111000100101100010010101001010000010100101001011001110100010101010010101101001001100110010010100001010010111000111000101011100101110011100111101110011100001101011000001011000101001000101111011000100001010101001111100100011011111100101001111111010111111100001001011000111110010100010110110100011111100010001111010001010110001010010100111110100000001111011100001011100011110001110111001001100011100101100100100001001000000011010000110101010001110001101000011111110101010101011111100000110110000001101101101011100100001000000100010111100011110011111101110110100100111000111000011010001101011110111001001001101010101000010001000000100011000100001101100111101001100000110110101010100111001100101101101001100111100011101101111100100100010010010010110101100000111000011001011010100000011101001110010001010000011001001001100100101010000001010010101001001101011111001000110111011101000011001000010111100011110101110000001100101100111100000010000010010011011000111010100111011110001110010010001110000010101011011101100000001011010101011101010101110110011111001000001100010101100110100011111011011000000110100001110011000110110100001001100111100100100110011010011000001010000101000001111110001010110001010111001101011011001110010000101010001110001010111000100001111011101000001100011110101011010111101010001100110010010011100001100111011101001111001111001011101111000100111100111101100110000110001100111011011000100110000100000110001100000010011100111001000111010000111011010101110001011110100101010001100111100100010011010101010000000010011011011110000011001111000011011101000100011001001011101011111011001110111011011000110000001100101111110010100010000010011011110000010010110000111000010001010111111111001010110011110111001110100101010100000011000101101000010110011000100001010111011110010110000111010101110111111011110011001000011011010110111011001001011001001110010011100010010101001110000110101000100101101100100111010001000010101110111010101111010100111000000111111000000000110001101110110011000111001101100001100110101011011110001001011010000000111111011111100100100100000101111110111010100000010011011001001000111101011110100111101110011100000111010100011011010100101011011001000001011101111111001110000011011100100111000111101100100110101101110010010110010110000110001101011101011111110010010101011011110111110010011011111000111001001001111111100111000010011110110110000001111100110000001100001010011000010000111100001100111111111010010111110111010011011001011111011010100110111110110100101111100100010011111100111111011110001101010001011000100101000100100010100001001001010001101011100010100010111000010100010001001101110010111011101110001001000101001011001111100000100000111001111011100101000010001010100011111101100100001100011100101111110010100110011101111000101111001110010000000010100000010100000011111110001111100101001100101100100111111000101111110000100100110100000101111001010101110010011001010000001111000000100011110110000001000010011011001110010011100000001011000110010111001111010010111110010110011111000010010001101111000001100011101001101101111100000101110010010101100101101111010100010000011011011100111011111011111000111000110110000111101001100010101110110010110000010101010011100010001001101010110100000011011011001001111100011001110100010111100101111111100001100010000101001110001100100011110111000011111101011000111000000011001011010110001001111010000010010100110111000011001100100010110100000011011001111010001111001100101101011111100001110110011000011000011101100100111011000110000110001101111111001101111111011100001111100001011010101001010010011110000001110100010011000101010011110101101101100000101010000101011010111010010011000101111111100101111110111111000011000011111011011011001001001000001100111001110100101010010010110100001010100111101001101010000001100101011100111100000011011101011010001000111111100110001111000110101111111000100100010110010101110001101100101110010010111011000101001001100000010000110011000001100100101111111110011010110101101011010101110111000101000001010011010110111011001100111111101111000010111111110001110000100110001111110111100110001100000100100000111010111011111001111101010000011000010100010000100110001100001011101001000011101010010100100000111000101010100101101110101111100011101100001010100011100100011111101100101010110000010111010011000101011111111000111001010101110110110110100101010100100000000011000110011111001000100010110010010011010100011100111110111001000101011101011111011010011101100101111001110010100011010011011111101110100111101101011111110100101101100010000101111000110100001101011100000100100101001111001001100100100100101110001000101101110001101110000010110000010000110011100110101011000110001000010111011101010000111100100111010101101001101001001011001110011110100100100111101001101010100010011001101011001011111110000011100001010010101011100101000011110010000101010111101111000111011000000010110000010101000001000001101011111001100101001010011100011001010101010100000101111110010110001111101101011111101111001110111000000001000100000100010000110011100000000010101000110011001110000000111111001101010010111110100110101111101110110110101110001110110000100110011111001100010101111110100001110000101011110100101000001111100000011001111100000000000001100111001101100000000011011010101001011101111101110111010100011001001101010011000111101001010010010000010001 +0010100101110001000101111011011111001001101001101011001010100101001111100101111100111011011001010100101001101000111011000000001011100001100001011111100010101110011010100101100001000100001000100111011100000110100111000101101010110111000111010101110100000100001111110001010101110110110001111100111011110110101101100110101011110110001011110000011101010100001100111010101000100110100100010000111101110110011001011110101101000000001101111001100011011110111010000110101110001011111011101000000000001011111010101110100010011111100010100011010111001100100100011110101001110001010101111101011001000001101111001111111100110110010011100110100110010100011110110111111001010000110110011010111011011001100000010111100011000010111000001110111011001101000110000001001111000001001010100000000001111010100011110010101011011101011010101000100100110111100001111111100010011111101110100100011010100110001000111011111000010101110110000111000101110100100100010001100100000101010100001000101000000011001001010110101001111101101011101111000101101101111110001011110010001010001100100011100010010100100100100111100111001010111000101010111011000111001110101000001011010011011000110000111010101001111000011001111100011111110001010101000100101111110000011100111000100011100011000100010010010011001000011000010100010001101000001010101111101111101111101011010110100111110101001110011111100101111011100000011110111110101000100111111010000011111101100000001110010100110000000111101110101001011111110110101011100101010010101001110111010110001110101001101000011011111000000010000100111001010111010000001001001110110110011111100100100011001001000011100001111101011011010100111101011111110001011010001100011010011100111000111011001100101111100011100011100110001000000001100110100101100011111011110010100001111000011101110101001101001100101110001010010100101101110100110100101010100010100110101010101001101111000101000000011110110101010110110010001111110011011111111111111001100000111111111011110010110010110010001101110100011000011010011001100000000000011100100101011010000100101110100101110010001100011111010000011111001101111010101001110101110010111100111010100100000100011011001101011001101111010100001011111011111011010000011101011101111101101101111011110110010010011001101111110100100001100000011111011001001000000101101100110011001100111010110010101110111010101110111101101000110000111110000111010101110110100111110000100110010001001011101111110111000100110111101111000000110011110101111001101000100010110001110010100000100110001001111010111101000010011001100100101000001---------------------10010110101100000110010011000000011001011111100111101111001110000011001111000111100100111111100110110010110000000100110001001001001110000010011110001110100011100110000110101011111101011000001110000100011101001110011111011101010100001101010011110101011011100101001100100100001011111110111111001010100100010001011101011011011100101001001001100101110011000000110100101100001110101010100000011001111000010001101010000110001011110111111011110110010011110110001110100000110101101111110001110110011010011101100001100010111010001100001111110100001001110010000100110001110100000010000001010101110000011111101010010010100001000101000011110011001000010000011011001001101011001100010011110111111011100111110101001010110111000011101101011100110011001011010111111001001010101000001000011010011101110010101000101111111001100110011100110011010011011111110100010010010011100110101010001011111011010111001100000001001110110101010010110011101100001101010010001001001001000101010000011100100001001011010110101011000101100010111010000111111011110011101010100110101110000101000001001111000011011010010010010001110000010001111100100010011111010000100011010110010001111011010110011111110011111001111111011000101011111100111011101110000110101010100110101110111100110011000001010001010100111100011111100010101010101101011100111100001001001111000000110010011011010000100010011101110011001101001001110100101110011100001011101101011010101000101011000100001111100100111111001100010010101011000011000110100000010011101011000100110001101111111100000000111101010011111001011011010100100100100111100101101011111011010101101101001111100101100000100101100011000110011010011101100000011000100000101110100101010001011010000100100011101010110010111011001110101010001011001001010111001101100000101000111111000011100000000111101110110011101101101101001110100011101001110110000110000001001100000101101110111101000100110110011100001101011101011000111000100000000100000110100110011000010011000101010011011110001011111110100100000100110101010101111011111101001000101101100100110011000101111010010100101110100101010010100111010110100010010011111100100101011011111010111110100111111000000110001111101010010000010000011000010101000111010100101111100010010000101011010011111000100010010100010101011110011001011010000001000100000001110101010111001011000111001100100100010011111110011011110101101010111101110110001100101101011010000100011000101100000010101100110110010110100111100110000000010010011110010001011110101011101001101110111110011000100011100001111110010010011101011001101100000011001000000100100010011101001000111110100100110010000101110000100111010111011101111110001001000001011010010101110010000100001100011000110001001110010110111011011010010000011010010001000110101011111010001111100000101001000110010011001000000001010101010001110000111011101101010100111011100001101100111111010101000111001011000011011110100011110010110010001001100110100011011010000010000101001011101000101001010111011100011110011101111010011010100011001000001111101010110111011111110110001100101100101011001011111010100101010011101101111110111010010111111001100110111011010100001000110100010111010000101001000010111010100010000101100101111101001001000100111110100111110111000110010110000110110101011101011100000011100010000011101010010110000110100111010100000101101111001001010011010100001111110111100100001001101000001010011101100110101011100010111111111010111100010000100100101100010111000000010000100000100001100010011001100001011100000010010010001111001111100100001011010100011111110100100000010000110000101101010001001110111010110000010001100000000101100110011111100011110101100100010101100010001110100010010010100101010110000110110000000001011110010000110100101100000001110100101101011000011111010111100101001010100001010010111111011011001100000100101110001110001001100111010011000001110101001111000010010100100101001010010000001110100111000100011101001001010100011011001111010101000000000010110101100011101111010011111110011001100100101001110001110110011111001001010100011111011100100000101111111011010111111111001010101100110110011111010100000000100011010001111000000101001000000001011110101101000010100110101001011011000100000110100110011001011100011000000000100001101000010111101000010100001001101111011100111001010000011000111110101010110011100001101101100000111101110000001011111110000110011010110010110111001011000110001111010010100110001010110100100111110000001010010010011000010100110001000001100100010101111001011101111100110111101010010011011100100111011101001001000001001010001100110011010010110100111110111101010011101010111111000010110010001011011110000110000011001000101100001000000000110100001011111010011110110010101000110010011011011111101011001100100111111000011100011010000110001010011000101111101011111101010100001111010011101110011100010110110010010110100100001001110110101000101100100011001111110101011101001110011010110000100000000110101101011011101101100011000111110111000100000001000100110101100000110000000101011000000111010000110110011011010001101101101101010100101010010100111110100001001000001101010000011111111100010000010111011111110111010001001001000101110011011011010111101001100010000101011110100011011111110011011101000110001001000010000000011001111110101010100100011000000011011100101010010101001110100100011011110000110010100001011001100000010100110101001111110000111100001011000101101100010010000111100001000111001111111110000011000001000111000110010110110110011001110110010010110000100000011100110000111000010110110001011001001000110000011111101000010001000101001111011101011101010101100110101101011011100001100111110110101110011110101100100100011000100000100100100000001110111010111000001100111001000010011001100010011100100111001100001010100111000101111011100111100100001010010000101111000011100111010100110010010000000101001010111010001000100101010011001010001011000101001000000011101001010000000111111110 +1011000101110000011100100101101001011001001010011100100001010101011101100010010111111100111011001000110000010000000100001011001111110110000000011100101010101011011001100100101011111001111001101111000001001000011000000111100010001011101010100110001110111101111001111100011111101000011001100110000011010100010101100111001101111110111100011010010110100001111000101010000101000000000010101111010011001001111010010001010111101010100000000010001100000011001001100010000011010000010001110101010011100100000110001011010100010101000011111101100111101100111111010110001001111100000010011100001000111010100010101010001100100001101010000000000111001101101011111100001000111011100010100010110110000000000000110001110111111100110011100110001100000000111100010001100111000101111100100000110010101100100000110010010110100100001100000100100100011110101001101101101011011011001100110001101000111000111000011011101001101111100011001110110011010000001101110001011100101100111010101100111100001010101001011111100001101001000110111000111110000110011100000111000100101000010000100001110011111000101001000101111110101111011010011001000010100110000110100001000011010000000101100001111100100000000100010001101011001111011011111100011000111100101000101110000110001000011110110000101100000001011000011110010010100010110011010010001101001001010001111101101100011110110010011010000101010100110111110111000001001101111111010100001101011000110110111111011000101000101010000101000100100011001111010001011000111110011101111100001011101111000011010110111001111011011110001101100001010011111100111000111110111001001011110110111111010011000110110100010010010111110101100010001010011111111011100110101011000100110110100010010010000001001111001001001010011011101000011001111100110111001111001111000010000000110101100111101010100110110010111001100011100001110001101011101100010000010011001100000100011111101110010111010010010011001010111101100010010111001110010110011001101001011101000101001101001001110100001101000010101101110010110000110100110100001010010001000100100100100110010111110010101011011101110110101110011010001011100111100010010010000011101011000000000100000000111100100001011100000100011011101011011111011011011010010001111011100100111101110110100101010110111101100010111101001010010110101100011001011100011110000111001101101101000101011010100111001111111000110011000000100110011110010011010001100100001110110110011110110000001010010110111001010110010000001000010110101110011000000100011111011101100011010111010001110111011110010100100001001100011011000110110101000---------------------11101010111100010101001001100111001101001111110100000100101011010111111000001000101101101000101000100000001010110011100011011101000101111000011001110111000100010100110001100011111001011010010011010011001110100011001001101100100001010110111011111000100011001100010000111101101100110000000110101011110011011111101111000101000110101010111100110110010110111100110010010000001100010001000100000000111010111011100101000001110010101010100011110011010010100111011110011001101000100111110010001001011000101001010111000110011011110101011000011101100010101011001011000010101111010110000010100110101111110111000001111011010101110000000010000011110001000111000110010100011101000010111010001101101011010100000011110011011101100100111010000000100000111111011101100000010010110001001100000101011001011100010011111010111110100100111101110010100000011000111000101111110000111110110111101000110110110010010111110101000101101000101010011010101000011001100010110010101110101111011101001001001011011110101100011010101011010000011111101010010010110101011100001000010001011001110111001010111110111100011011011100110000000111111001000011000111000000111010001011000011100011000101100011001001010010001010100110001101010110111011001100011110100111001010010111000011001110100100000111101001000010110110011111111011001011110101001011000011011101011010000011001010100010110101111101000101100110111110011000000100100001110100011010001110101101111100111010000100110001100010010101101011000000101110010111111010001110110011100100011001101011011001011001011011110110101010010010001110101010100100101110110001111010100000101100111110100011110001111010101001100111110111010110010011101101000101001010010010110001001001100111010100001111100010101011101000011101010111101100000000011001010111111000101001100011110101111001101101000011010111010111110110110111101011101101111000100011000101001100011101011001000110100110011010011111111001111110001011111010011010000001011101000111001000110001100111111010110111111111110101010001010001111010101011101101110001100011011101001111100011011011110110011101011101100100011110011101110001111001010011001001100111001001100101101000111000110011111101101110010001001101001011110110011110011101111101100011100001110101110000101111101011011101000011110101011010110100001000011011000110001100011011111011110000101010001110001011110011011110111000001111011100011100110110101101011011011111000000100010000110001010001010111110010100010110010001001100100011010010000000111010011100101101001001000110011111001111001100110001110100010100111100000000100001101110100111111110001011001110010110011110101001010011101110001100110000000010100011111011111100111101000111000110101100011011101110110010011111011100111000101101011101100101011011110011101111101001101111010100111010000000111011011000001111101001011001101001100001101100000000011101111110100111011000101110010111100001100001110000101000111111010010101110000100010110101100000110101100010100011110000100011011001001011000101000111111011011100110101110011001100001001010001000000000011100110101100110110001001100100000001100000111011001100010111011100110110010010011000101011100111000001011110001001101000101001100101111110000000101010001010011000111000000011100010101000011100100100101000101111011011000011010000110000010111011110001001011101010011010000101000111011001001100111100001010001001111111110010000011000010000101100010011100101011111000101000100000010100101010011101110001100011100011110110110101000101100110111111100011010001100100101000010000001000010011011100011111100001010001000000111101000100010100000100001110100111010000010100100110110101000101001001100001101110101111110110100000101100010001011001111100101111001101100100011101101000010101011010110110110110011110110111000011110010001111001101011111001110101000110000111000010111011011101010001000100111110100000111001100010101000001001111001111111100001110111100001100011111100101010111100001011001111110011100010011000000110000110111110110110000010011101111110100001110111011010111000100101010011110101100000101110010011101010100001001100101110010110101010111100101101111000011001111011010010011111110100000011000110111110001011111111110010111001100101000001110010010101001010010000001001101010100111100000001001111011011011110100000001001100011100101101110111000110100111110011101000001001100110101001100100010000010010101100110101001110011010111000000000111111011110100111111011110011111000110001101110101010110000100000011001101010011111010100000010101110111011010100111100000101000011010100111010100011111000011111111110110110100011101101101001101011100110111110000011110100111111101011110111011110100010001101010111101110010011001101010110011011001111000110110010001001110001011110001001001011011001000111011100100110011111010010001101011011110000010100001011110010110101101011101111011100011111011000110101010010000110100010101111111000010110000111111110101011011100010110011000101011100110000010000010100011100111011111001111100011000001010101100001011101001110000101001001001011010001111001100100110011111111001111101111100011001101111011001101111011010011100101001110100000111001000001100001010010111001110100111011011000100111010101000111000100010110011100100000100100111001000101000011011000001100110001110101111111000001101000000100010000100100111011010101100011010010110111100101011001111001101011100011010110000110101000101011110001100010110010101100000111100110000111100110011101101011111011010101101010101101011000000001100100101110101000011000000110000101111001010010010010000100110110010011011001100100100101110100110111000101111111010001110101010110110100101001010110010101000110010100000010111110101100000101001001010110001010101111011100011011101000001100010110001000001000001110100110100010011000111111100110100010110010000111111011101011101011110110010011011000100101011001001110111100001001101110001001011110101000010000101111110110001000000001010 +1001000110110110110000101100001101000001101000110010010011110000011001011110110101100001011011101101110011001001010011010011101111001010111111011110111101110110001010011001011000001101001011110101010100111010010001001011001010101011111110011010101010010101100001011101101101010011110111100111100111011011101101010010011011111100111011100010000000100100011101011001000000111110010100101110101110100010111101000001000010100000000100110111010111000011110111110001110011101110101111111100010001111011110001101001000010101010111001000010111010101101110010010011001010111011010000010011011010010100110100000100000101001101011011001100110101000110001100011100010010010001001110000011111001000000011011101011000111001110001011000110100001010010011110111100011111101001010111011001100010001011011010011011000111000101000100101111011101010100010000001001010011001100111111111111001110000100100111001110010111100100011111011000101010000011011001110101101000101101100110111100101100101101000000010010110010001110000110101101111011101010100001100011111110000100010000100100001111001111010100001001100110011110111000000001100010000100010111001101101000111101011011000101111011001101111011000100001001110110110100100011110101000110110010010110010110011011100011100001010000000000000101111100111111100011100100111111101001000011111010110101011011111001111011101010001000110000111001100111110101100010000110100101110100010110110110011011110011010010011000111001110111001100100100010101000011010011010010001101001111001010001000110010001111100000001111111010011110101100001000110111001100011110011001011011011010101010111110011000010000010000101111001100011011001101110101000001111101101000011111100110011010111101000111001011000101001111011110101101100101001000101011101001010111100100000111110000001101110110110001010101000101000000110000010110011110010110101111001011010101011010111111011000010110111101100011100011010011011010101111110000010100100011010100100110010010000000010001100100110111000011011110101100111011110100000001110110001010011111100000101000000001110010001101111101101011110011001001101101101010110010101011111000111001000000000001110010010100111001110110111000111001110001101000011111111000011101101001001110110101000110110001001001111010010100101000101110000110000000000000000101110011010110000001101000010000111010101011010101101001100101110000111011001011101100101010011000010110001111110011100001001101010110000001001101110001010000000101101110001111100100001111111100010001000110111001110001010001000001100111001110000011100110110---------------------01110100011100010011111010011011001011110001001111101110110111011001000110011001111010110011110000010011111010100101100101010100111011001111001101110100110011110010100010110111010001000101000001000110010011101001111111000011001000001000001101010100110011010111010000001001010010100111001100000010110101001011100010001101010110110011100011001111000101010001010001010000111010101111111001000110000110100100011100111100111001000000001011100111110010010000110001101011100001101010100000111101000101001101001000100110011101110100011101000110001110000001000011111110001000100100001001000010011101000111110010000100010000011011011000000110100000100010110100111010111101111101000110110010101111001001101101111011010111111010101010001101111001101101011100100101000101100110010100110000011101101010000111000111111011110001100111000101001010110101111000001111010100011010000001101010101101100111001001100010010100011100011001110100000111011111110001100111001010000000000101001011101011101101110100010101110001010110011001011110110000110000110100111110011000001001111110010001101000110010101000110110111100000000100001001110100010100110110001000111101000100110110100100101101010100110011011101001110011100101101110010000001000110110001111111010110010000001111100110001111011111000000100100000000110000010010101011101010110000001001110011101001010010101001011101010011101010111100001101000011010101111000001011000001110110101001001101001101110101111001000101011011001101000101001101011011001110100101101101101100010000010011111110010001110111000010010111111111011111111101010111000000100100010010011110011011000000000110110111011010000111010001000000011110111011100110011001100001110101100101000110111111010111001000111011111111111011110010011001001000101101001111110110101000100100010010010100000111000100010100101011010101000011100010011100011000100011001001011101111001111010011000111001111110111001000000011111001000000011001010111100111010011101011110010111010001110001111000000101101110000000111000000001010100001010001011111010000100011111000111000001110110110001011011101111000001011101000001111101001110000111000100110111011100011001110111101100011111100011010001010111100010111100011111000110010001000011111010001101110001001011101010100001111010011001011000000000000111100111000110100000010100001010111100111011111110110010011010011110111010001101110111101101010111111010101100111101011010100011010110000110000101101101011101100001001001111000100011100110000111111000101011111111010010101101001110011010100111110000000101011000110001110011111011100001010011000011110100110000011000010101011111010110100111010000100101110111001100011000010100110001100000101110011111111011011100111001101100001110101010011011100101110101100010011000011101100001011100110100111111010000011100101001111010011101110111110110000110111010011011100001101101110010001000100100100000010001001101011010010101101101011100101010100110101111000010110010110100101011000100001111110010010110010001111110101001100011100010101001010101000101111001001011110000011101011110010101000011111000110100101111001100011010001111001011101101110001010111100010000110010001100110110111000010010011111110001001100110100000000110110111011000101110101000000101010010110110100111100000001011010101000110010001110010011111011001111111001101110100011100001100010011010101010100111100011101110111100111111000010011110010000010001110011010111110101101111000000000111001101101000011000111001011001010101111100100000001001000001111110010010000101010010001011101110100100110110010101110011111101101010110111001101001100101101001011100010000011010101011011001011000110100010110010100000011100111100101111101111111001101101101111000111101010100100100110011001110110110000011110100000001110110000010110101101111100000111000000010001001011000000100100101001011010000001100010001010010111010011101010110101100110111111100010000111101000110110111110000100111001000100110010011010110011010111101000000100011010111101001000001001000000110110001101000000010101001001110100001001111100100010110010110001011001100010000001100000110001000011001100011100110011000010110001001110111000110111111011000011010100010010101000101011111011001010111001111001110101100111000000101011100011010110000000001010011110000110111110111001010110100011101111000001110110001100111100110101110110110110101001000101100000011101000011101001011110000100001001101110010101100101110100010010000101110001001001011111000010111111000110001001111011101001100000011010011101101011101100110100011001110000110111110000111100111101110001001010000111010000110001111111001100000101101011100101110001001110000101000001000110000100110111111100100100101100100000000110101101000001100011000100100000100000101010100111111110001101110100100010010111011110101101000100110010010111011010100010101001010010011011001010011100010101100001111110011001001100111000110010001100001111110000111100000011011111111010000101011000100001000110001110111010001101001100110111110000110011100110001000110110001000000010100101110100100001000100110010010010001000110111011010111101000011101000010011100100110011101101000010101111010110000011100101011010010001001001010001110100111111100110100111101100001111111110111011011001001110111101110011000011111101111101111110101000010101000011000000010110100001000110010100010000100111000010100000111111000111001110011110000011111000111001101010000111010100000001101011010010101100010100011110111110110010110001100010110011011111000100111001011100011000111001001000100101110000000111000001010100011000010011111110010111001101101101100010010111000111000001010111011111010001110110100101110000110001000100111010011001110001111111000100000001000101001000111010011010001001010111101100001000000001110010100011011000111000010011111000110010100010000110011101000111001101010100110010001111110101101011111101111111111011100010110101111110101101001110110110010000010101011010000101111111 +ls256msgs +0010111101101011110110110110110011011010001101111111101011111000110010110111010100000100010000001100100011010110001001010000011000100111101010110100010001110000010100001000010111000010100000010011101010111100101000100000101100101011101011000111101110100110011011001011101101011100100000000010101100011111000001000001001110110101000001101110111100111000010011100111000111111101001100000111010111011100001110110000101111000101100011000001100001111001001100011010100100110110101000010111011000101110110101001110101011100111011110011000001100110011101100011010010000010010111111001001111011100111011100000100011110001101111100110000000000000101111000101001011111101101110111110110101101000010000101010010001000110110000101010000000010100111111010101101001010110110001110000110000111110010010011000110101011101011010001111101001010101011100100100001000001000111010100111111000001000100110010110111011011100011011001110000111000110010000001001101000110110001010111110001001110101011101011100101011010010010000100001110001000010101001001001100001011100011111111011000101101011000111010111100010001000010001111100011100000000110011000110100001110001000000001010111000110001011011111110010010010110010100110000010100101111010111010001001000011011001111100111011110010001110101110110011000010011100101110011110001011000000100000001010111000111011111110000000100011010100000111000000111101011000000100111011001101000001101001101011101111001100011001010001010111100011000101001111110110111100011110110111111000101010101100101110100100001101011000111100100001101010111101100000100111000001000100000101101111110001111110100010100011101111000010110101101111000101011001001000001010011110111000000001000011001110001101010010011000011100111101100000011011001111101010011011110101010110100000111011101100000100101000011111010001101011110101011001010100101101011100111100011000100001001111100010000101100000010000000011010000100010001111101101101110000011011000011101101011001110011100111000001110000000000101110011110011000100011001111110100010101100111001110101100010001100110010011011111101010000010011010010001011010000001101001100110111111010110001111101100100010100011001010101101110001100011000101000010000101011001110010010111000011011100111010111001001000111100010110011010010001110110001111000000000110100100100010001100000110011101110101100100011110110100001110110110011100001001000100100010110011100111111100111101010111001001001111101001010110011000000001001110101010110001011111110100001101011010101010100010110110101110010101110110011011000011011010011100001010000001000111100110100110001000010111000101000100001110110010110010100101111110110100101111110111010010101100111001010011000011111011010001011111111110101111111110000011000110111001000001100000100100000011101111110000111101001100010001111010101000010010101001110100100001011100011101111110010100100011100111000110010000000000111001000011001001101101001100101011100001000111000111001000001010111011110101011000010100010101101000001110001100110001101000011100010101111100000110000010110100000110000100100010001011001101110000111111110011011001101011111001011010001011000100110000000100100101000000110110001111111111110000111010011001001011100100110010100000100100110000111110110000011111110100010011110110111101010101110111000111010000111100101111111011000100011000001111101101111011110111110000110100110000011000100001110101111101101101100000100101110111001100101101110100011000110101111111011000101011001111010000010011100001010010111010010111001101101000001000100000000000100110001110001111011100000001010000111001001111111011001000111110101000100011101111010011100101110101001111000001001110100011100011101100000010101110010001011001001100100001000001100000110100100011101011000001111110100011010000011101000010111001111011010111100001100001000010000110011011011001100100001111001000011101111011111100111101111100010011110111010110000000010110100110001010011000100001000010011110000111000011110001010011001000000110011001001001101111100101101101011000100010001000101000011000001101011101010001011011110010110001001000001111101010001101010010111101111000100001110111101011100001101010001100110101010101111010000010110111001000001000001100110100000100101110001110101000000100010011000111011000000010000111000111000010000101011100000000110001111101011000010111111111000111101111010101100001111111110111110010011011010010011000100110111110111010110111000000000010100111110111101001011000100011011101111010001010010001111110111110110011010000010001000000111110100110001010110001010110010111100100101110111001111100100000001101000001100100110001110001110001010000100100001101001110000001100101111110101000000010000111011000011011000010110000110101100101011000010011110010100010010000111110010000011110101111100111111100011011001100100100011100010000110001100010100100100101000010110101001010111110110000000001001010000100011100110011111000001001110010100101111010001000011101100011110111110101001011010001110010011101000000110010110100000011100110001000110110101100001111000011010000100010100101111111111001110100001100100011000101001110110000011010010011000001011110000001011010110000010110000011011011111011111101100001111110001101000000101100101000101011000011010111000101110011000001001111010101001001001101011111110100110110110100001010001000001101010111011101100011001110000011000001001101000100000011000101001000100111110101101011000100101100010100111000010100111100010010110100100010001011100111100011010100100111000100000111111100110110101101010011001001011111011010001010001000101001000011100001101100011011000100111000000010111111111010111001100010--------------------- +1011010011001111100011011110111000110010111010000100101011011101000111000111101000101010111000001000010100001101101110111110101101101101101111110010011110101010001000011111000100010000010101010001010010001001111011010001100011110001001000110000010101001100000010111101100111000001110000010110110101010100100110101111100100000001000110111100010101010100001100111001110011111011011100100001000010101110101110110101110010010001001010010111100111001110001101001000010111101011110111011001011111110111001101001110010100111000000000001110000101001011011110011111001100101000011010000001110101010111101001000000101000101110100111010010100101001011000110010100111011111111010010110101111011100000001100101010110001101010001111001110101010111110110010101001110001111111000110101100110000011000110110010001101111110010110000010100100110001101010010010100101110001110011011000010111011000000000110101110011001010000011011101010101001010010001000001110111011100011000011110111011011010100000001110111001100111011001011000010100111000010110001111000110100101100101101111101100010011111110101001101010010111110000111001001110110110101000001010011010110110000000000101010100100001100011000100010110100101010110110001101111110111101000110011110001111110011001110010010101011110110111011001100101101011100001000000010111111100001001010101011110110101111111000010011011000100111000111010010111110001001110001001110010101101001110010101011111000000011010010000001100110110000111100111010011100001100111101000011000000110000100010011111000101011000100011110110000001100101010110110011110010011100011111010010011100101110111110100101010101011101100111001101010101111101110110000010010001000011111101110101111010001101101000010101110001100110011000100011100100110010001000110000010100000110011000111001010001110100011010010001001001010100011000101011011000100100101101100010111011101111010001111011100011000010101010010010111100010011111111001001010110100110111110001000100000000101011101100111001100001101011000000001100101000000111111011011101011000101011001011100110111111110011100010011111100101100101111010110100100110110001010100100110011111111111100101010110110011111010011001101110001000010111110001110000111100110010100010010011100100100111100101110011011000010110101001011000101101000110011110111000100100001010101000001001010100100001101100011110101111010010000111001101101110111111001010001100100101010010001000011100010010101101111101110000100111000111110000000001000101110111111111101001011110010001001001010011010000011111001110010111001011110000001110110011101111010100010011100100111011000110100010001100110010100100110111101011111001011101111000010000000000100010110110001100001001001101101011001100110110101000110110101101000011100001100101010000111100100000010110011010000011000000100010001010001110100011110011011001001010001110101101101011001001010010011001001100000010100011010111011111101110100100110001011101110111000011101011001111011101110100110110110001011000000001111000100111001101000110011010110011101000010101001110010000101111000010001010100001110001000110110101000000010010010100010000000010011111011101000000110101001110001100011100000101111110001000111000010110110000000011001100100110110011000011111000001100001000101110111011110110011001010111101001111001111011100110001011111001100101011101000001100011000110110000101000111011010010001101100010011000011111011110000101011100010011011010000011000010001101111111110001100111101100111100010010110110111011001100111001011010101110111100001111101011001000010100100000001010111110101100001100100101000111110011000111011101010011000000101110000010110010110000101110110101111101010100011010110010011101010110100101011100010011111000100001111011100111010101100111010000000011101010001001000111110111110110001000100111100111111011000010111110101111010010101101100010011101101111100111000010000111110010111101011111100011011101110111011100000100101010000111000000101011111011010100110110101010011010100100111111111001110111000011100010010011010111101100010100010101001111100000101011000100010010000100100010101100000100001010101001110010111100110011110110000000100111101001000111111111101111001010100101100111101000011110001011000101011101111011101001100010100010001111100111110001001010110011111111111101001100100011001011000001011110111000111110010011100110000001001000101011111110111011010000100110100100110100001100001110101011111111011110101100100011000010110100010001011110111110101100110111000110111101010101000100100011010010110011111111011000101110001111101010111110100111011110110011100000110000111001110011110010101100000110110000101000100011010101000111011010011000001011111000000101111100111111110011010111000111110000101011100001111001111110011101111111101100111001000110001101111001000011101100011111100111010011111101110011111010100110010001101011010110010100111011001010101000101010011010100010011011111100011001111110101011011100000011110110100011000000001101001010100101000011101111000111011111001100111111110010101111100001100111001010010011001011001111000000100111101110000111001100010011110011101010010110011001100100000110011110011001101011000011101111011000101100010101100001000001100101010101111001100000100011001001110010001010101111011110110100111001101000111011100010101010011011100010001111100001010001011011111100111111010101110000101010100000100110000110101000110110000101101001101000010000111111010111100100101000110101010000111010000010001001100100101010001111010000011010100101010101101010011001010110011111000011101001110101100011100101000011101011111010001010010001100000001000010110101100101011111010101010110011110100--------------------- +0100111011100101000100011001110001101111011100011111101001001111101111100111111101101011001100010011000010101000100101001111111100100101101010100110100111001100011011011000100111011101011001101011011110111110101100010001110001000101010111001111000101100100001110101010110011010010110101001000010001110010011101111100100111001100100011101000011001010100111010001111100111110110001011010011010001000110101101110000000101010111110101110001100111010111100000011110110100111010011010011010000011100101000110110110000000001100001001011101111110000111100111111000111010011010100011110001110001010010101101111101000101110000110011001111100101111000100110010011000011100000110001011110101100001110110111100010011000001111101101001101011010110001000101111101100001101010000100100011100011110010100010001010110010001011011100100101111101110110011010001110010001100110001000000100000000111110110100001110001011101010011000000000110010100110110010000000100000100010111110110101000100001110010011101001101101110111001111010100110011100101100000001001111001100000000011011011000010110010010110001001011110000101100110011011111101100100111000011001101101111011010100110000001111010010111011110010100101100100110111001110000100000011011110000011000010001110100011111010110001100100001001110110010001110111011001000111011001101100000100101111110011111110110000010011101011111100000110011101001010011100110101010010101000110110000011001100110110010011001000010001010011010001000101110010100010010110011010101110000110111001100100010111101101111110010011011111011101101111111011100100000110100101011100000101110011110100101011111010101111000011111011111111101011101001011100111001100101101110110111111111101000010101010000010010110100101101010100010100100111001010110001111010111110100110100101101000111011011000111011101011100101111101010110100110100010111111101001000011101100001010000001000010100101000110001100011001110101000100110110110010001101111010011101010010110001010000110000100010110110001110110001011101111010001111101101101000110000101001011111111100010011111101100001100001111010110101101010111110011111100111111101110111010011100001100111011110110101000011011011000111111110110010001110010101011000101100011011100110011011101011000111001011111010001100111001010000001001000110000100111010110011110010011110110100000010010011010111101010011100011010101011100110011111001101010000011001011100111000000010101110010100101001101010111010010101010001101101000000010100000111110110011111111100100010011010111011010010010110101111011100000011100100000000101001010001010011101101011010011001101010111101101100000100100111111101110010000000100100000010011010001001000110010011001011000001100011111101001111001110101010100101000000100011100100011000100010001011100001111101101011111011011101000011101111011101111100111001011001010101110001110011000110100101110100110001100001001101011000011100100111110111010000100001111101010011000011010101101100000100100000000110110111110110001000101010111000110111111010010011101000101010001111010011011111011101101111010011111100101011001100001001101011110001101001011000100011011110001101000010101101010010110110010101101010010110110110100001010100001111010011010001101111101100001000011001001111101110101100011010010011010000111011101011100011000110001100001101000101001000110111000110111000000101010110011101001101110010100000111010111001101111101000011010101000001001101010000110001111111101100000110100011110111001010111100100010011010101101001001000110011001000100000110110011100111001101111100011101011001101100111111000001010110001000100001100100010010001100110100000101100100110100100100110111011110001000111101001111010110110100110101011110101101110110110100010111111011110101111101101000001011000000111001010111110001001001101110010011111000110011001011100111011110101010001000000010001101111101011010010111111111100000101010101110101010001000101100001101110110101100011110011010000000101111100000110100100011000101001100001110001110011101000001010111011011001111011110111011000101010010001110110111010010001010010111001101111011110011100101111100000101001101111111111010100011010110111111001101110011011111110000000111101110111011000000101110011110111000111011011011111000101101110001001111100101011000000101011001010110101101111110110111000110101110010010011011001110111110100000111000111100000100001011111000011110111001110010010000111000011100111110011000010100110100100101000011001000010111101010001111010111111001101001101110001010011111011010100110001100011010111110111000001100101000000110001011001000000111100000011000100110010001001100001011010100111100101101110100011100000100000100110111111111100011010010001000110001110101100000011101001100011101000111110101111001011000000011110111000110101111011011001001000100010001101110011111001011100110101110100010101101100010000010010111001001001101001111000000100110011100011100100100111001101111001001111010001100100001001101011111101110011000100001001100111000101000110010001110010111100001100010111100100001011001111101010100100111010010101000011101001111111110011100110001011110101110011010010110110101001111000011111011011000111010011110111001100011000000110011001000111011100000111101100110101111101110011110100010000010000001101001101011001001111001000010101001110000010101011110010011101101101011010111010101010000000110000011011101111011010000010011111011101101011100101011101101011101000101010110011011011101111000000001010110110100001010110011001001000110101010101101111111111101110011100010001110001110110001101000111110010000111000111011001001001001000011000101001000101100110101000000111011010001011010011010--------------------- +1110011100101011111100001100111101111001010100001000000001000101001111111010000001110101000001100000111101010001001011010100111000111000000100011110011001110111101010001000110100101100101110110010111111111010001010111001101100010110110011001101001010110111010011101101000010111000010010010001110101100110111011110111000011011111100001100001010010110110100100000011010101011011110100111101110011010110101100110011011001100000101001010111100011110011010001101111110000010111001001101000010001110110001101100110011111100001110101001000010111000000011000001100101100010001100110000010100110101101100011011100011001001111001111010111110101011111011000011001100110010100100001111001110000101001111110011101100010010011101110010101000010101010110110001100000001110000000101111101011100101010011101000000110110011100000000110010110001110001001101111000010000110010100000011100101010011000101011011010011110110101110111001111001101101000110000011010101111011011101010111010110010011010010011111001100100101100101010010111110010001111101111101011100110001010111110110111001001101000101100101101001111011001011001011010101101101101000101101000010110000010110010110001001010011000001101100011000100101111111100111101010010011000010100011010101111111110101111110000010000010001011001101101111001111010110110001101010101001001101011100010011101000010100011111011101001110101100110001100100110001110011000101010001011001100010000001001011110010110101101110111110000010110001011111110111010111111101100000110101101111000010010100100000100000000110001100110011100011111111111111110011110010011011010101100011101001111010100110110010110010010000001101111101011100001011000100101110100001011111011000110100101011101010011110100001111101100010100011111011001100110010001101110111101100100111001011100011101000101101010111010000110010101000011111111110100101001100110110011000001100000111001101111000000000000101100000010001010111100011010111110111110110101110110101100100000010000001011000000000110110110110100100110001111101000011110010100010010100100100010011011110110111110101011101111011111101001011000110100010000101001101011101010010110000001111000000010100000000011011100010111011110011101011000111100010100000100101010101010000000101110010011101111100010000100111010100110101111000010001000101110100101011000000011000110110000100101111010110001100110111111100100111011101111001100011011111011001110110100110011100100110010110101101111011111100001001001001000000001010011111010111101100110100011010110001011011111001011111100001010101110100100010110100101000100101101100000000010111010001000101101101111100101110000000101011011000011000010101010111011001111100110000110011010011000000011010100110110000111101010100110101111010100110011010100000110111100111100101110101010000111011101100001101000000111001000010100101111100110000011001011101101101010011101100010011000000111011101111101101001111011101001100011010101010100000000000100000111010100011011110110010110111110000011100010110111100101111100001010011110100000100001011101010011100010000001110110101101011111010011111010110100111001111010110100001101110100010111110100000110001011101110110110011111101001101110010011101110111000011000111101011111000111111011111000111011001011010101000011110001000011111011101110010000010011111000110100100100110100100000001110110010000011011111010111001000101101111111110111011000011111101111101110101111101111001100011001011011000110110010101111001110000010011001101100110001000111101010011001110101000000101100010111101101000100111001001101010000101011000011100101000010000110001101000011000111100100110100010111100101101001110111000111100011000101101110001100011000001011001110100011110111011011100011011011001001001111010010101010001110110001011000000001111011111010000000110011000110000100110000001100101011000000011011100110011010011000011000001101010101011000101101100011111001010001010011111001010000101011001000011101100110110001001111110011100100001101110110110011001110101010010011100001011101001001010100000001100010110011101010101101101000000111010011010000001100011110100110011100100111110010011101011011101010001110011111100101110001000111011111100001100011010100011010100000101011001111100000111000101100111110000111110001010000000100011000110010011111110001100100100111110110101100000001010101010101100110001010011001001011100100110010110111010110010000101100101111001100011011011000011110010110001110110110111100111011011010111011101110010010101111000110011010011010001011101100011101001010010011000001000110001011010100101001001000110011110010010001000011010001100010010101000101001011110000010000111110010000110000100001011100001110011011101011000000100010001110110011100000111100110011000110111100000000110001100110101100011000101000010011100011000110100001001111111011001100100110000111000100010110001100110000001101100010100000000010100011100000010100001100001100111111010111011010111001001010111011101110011000000001111000100111000101111100110110000101000111101111101111011101111010011100011101100100100000100100000000111000010111001010100101100101010110110110010110111110001101101111011010111001010110101011010011110000111011001010011011110001001001010100001001110101001000111011010010110001110100010000100011011100100011101010010000000101110101011001000100100101010010110001110100101000000001100001000101110111010110111110001111010000000010011110000010001011010110010100010100011001101011111101101001000100011101010110011101100010011001001011111001101011000000101110110011111100011000000000010011101100110111011001011001001111111011101011111000010101110001111110011010100110111110110011101110100010101010101--------------------- +1111001110101110001111101010101000001000000010111001001011110100110010000000000110000011000011111000101011110000101010010001111100101100000011100000110111010111100100110101101011100000011010010100100000000011111110001111111011001111101001111000111001011111010010001010011001100001111001000101110101110110110100010100111111010110001000001101101001101110101001010010101100111100001010010101111010100110111100000010101000111110100011010001101110010100100011000110010100111001101010101101001100011101111110010101011111001101010100001000111111101010100001011001100010011110111101001011011100010001101110101001100011010111101000011001110011001001011000010010011011011101111111101010001011110011001000110101000010100110100010010010100011001110010010000111101101010000000011111001010101001011011111000100100011110110011011110000000110110010010101101100001000001110101001011101000001110011011101011111000011001011010101010100000101111110101111111101110100110110110011111011110111010001000111110011011010111000011000110101000100110100110101110101101110110010111000101111100001000010110110100000110001010101011111110110001110110100110000100100000110000111110001011101001001100101001101010100100011101000101011111010011111101110010101100001111110101101001001101100110010101100110011110011011011101011111110010001000101111111100000001110111111000010111001000101010111110001100001110011111110001011110000010110000011100000111111000111100101100011101110101001101111110111000101011110101111111011011010010101100000111011000001011000000010010011111101101011111001100110110111111011000001101100010101110011001001001111110000111000100101011111011101011100001010001111100101000110011110000000011110010101001000100000000011100110110010001010011111010010011111001011010011101111011101010000001111010100011010011001101000000101111011000001100010101101000101011100110101101111011111101010000000010010110010011100011010100000101001001110011110000000101100000101010111000100010100100010110110001110011010101010101100001111000111000000000011100100110000000111101000100011010011101010100000001001000011101111010101010001010111011111101000101001000001000101110011110001111011001011000111000011011010001010111101010110001111011110011101010100101010110000001011110111001111010001010100101110111000001000110011111010111000101111010000111000111101011011111111000101010000011101100111111111010011100011001111100011001101100100101100010010110101001100100001111010010110111000110101011101000001110001111110001111000011000000110001111110000110000111110111100000001110110101100100111010011110111000100111111100011010000111101100010100110000011001010111101001010001110011110011001011001101001100100100000100100010101100100110111000111011010110011011010001010100000101010011000010001001000011101000010010000001011001111100010101011101000110010110111100011110101100010001101000100100011011001010000100101000010011111000111110100111110001010011010001010110110110100010110100101101001100100000010011011001010010001010000011101101010000001110111001110010011001100001011111011111111011000001011111010001111010111100100011100111001110100111000011010111101111110010101101100000000110110100110100101011000111110010110000111110001111001100011000011000001101100111001011000111011000001011001101100101111111111111101011100001001000011011110100101100001111011101110110110101011001101111100110101000010101000100001100001001011001111011010001010010000010001000101100001000100011101111110011000111110000111100100101000110001101011011001001001010010100110011011000101111000111011111111101000101111000010101110010001100110000110111111000100010001000011111011001010100100001101010010011100010100111101000110100111010000101001010011110111100100101100101111011001111000000001000010101111111101110010000101100000000111110001110111101100101001010100010001001101000001000001110010101110001101001101001000011011000100001011000111010101011111011100000001001001001011010011010111111000011100010100010100111011000111010100010110001111011010011011100000100000010011111100101000100010010101001100001011101110001101011100010110011110011111111101111011010000001110001000110111010001010110101100011110000010001001011100010100111011001110001000010101000010111001000010101010110011011010100010100010011001001010011000011110010000010111000100000111111000001000001011010111000001100110011110010011010010110111000010011010001011001110100000000011001001011011100010110101100111010100100101011001100000110010110000000000010111000111010001110011000010100101100011110000010010100000111010111100111111110100100111111010110001011111100000110101110111111000101111100011111101110001111011110110010011010100110101110101110001110010011110101011001111111111001110010110111100110110101111000100011011111100010001000101100011111110101000110001100000110110001100111111011100000101101000101000000010100100111001011011000010001111000011110111110010100100110011100000101011101001011011010000110111010010001010001100110000001101101110000010100110111100111100101101010111000100111100100111111100111000100011111001110001010001111011110110101000011101010101110100101101010110110000010110110100101010000110010011000011110111101001101100000110000100101100001011000111000010001001110100110100111111001101101011111101001101110000110011111110101011011111101001100000110011010010101110001110010110000010111111000110011010000010000011111111111000100011011111000100011010110111011101111100111100011111101110001010000010100011101110110100011011001111000110011111010111101100001101001110100111101001101100110101100010000111011000111101101100100111110011000100011010010111010101110110010001010100110000010101100101111001--------------------- +0011011011001100011100111011110111001001100011001000110110001100111001001010111011011000000100100100111010110010111101111100000001010111110000001100010101000111100100110101011000111000101000111100011101110110100111010110100100111101111111000111001000000100101000110111010011011110000001100110111000011011000110110111100111011001100111011111011101011100111010011100100101000110011111011010111110001101111000100010100111011011110110111110000000110000111010001001010101011111101011100000010011011001111110101010010110010111110100011011001010101001011100101110001001100111100101101100111010000101001001010101011110100010000000101101011100110110100100111100011111101111011010010111101101010100111001111010001010000001011001001011110000000111101000001011001111111010111011001100111001010100101011001001001010011000101110011110111000101110101010011110111101011111000001000010111000011011010111111010111100111111110000100001000010000001100111100001111011111001010000000110011000011011000000101001000000110110001010100010001111000001101001010111100001000110000110111010110010110001010011010010010011111100101011111111111000111010100100111110000110011111110000011011010011110000101101010001011010011001111110001001100010100000111011100111000001001101001011011101110010001111110111110101110111111001000110000011001010111010111100011101110110010101110000100100010100101001101100011110101001111111000010011101100100001001001110110010101101101110010100100101011010101010111011010000001111111010000001000100111110011001101010111100010010111111011111011110101000101001111110110000111110101011100110010110000000011100111010001111100101111011101000110011111110010101000000010010000111111100101101000110111000110010001101011001011001100110101101001011111101101010011110000010101100101100010011011011111101100111111101101100000000110101000010101011001111010001111011110110100001100111001111000010011001000000000000010100011111000100011010010011111000110001000010101100100001100000101001010011110111010100000111011100001110101000010001010001111101010101000001001001010101110001010000111000101110100010000000110001110010100101011010101010111000100011101000101101101110110110000101001000111110100100010101111010011010001001001111011100111011110101110101111100011011110011001111100100111011011001001100000000000001010111001010110011100011110000001011100110101010100100101010010100110100111100011010100011000100000000011011011000111011100001001011110111000001101110111011101001111100101011100010100100111001100111000000001010100001000010010001011111010000110101001001011111001010111110101100011100011101101011111001111011110010101001001100101010001000011001001001000101101110111110100010100111101000001111110001011101010000010010010111000010111111011101011101101011110010001101111010001110010110110100101101101111101001010000001010011010111100011101110000000000001111110001100001110001000000111100010111110010010111111010010001100101011101001101100100110010000110110101011100001001110001110000110011001111101111110010110101010111010011010110101000000110001111011001111011010111011110110100000010011101100110000101100011111101110000100000010100010010110111110110101100111101001110100111110110011100100101101110000100101001000101111001110001000111110101100111111000101111110110001110001010110011010011111111000100000010011101011010000001111010101011110011011111011000001011110111110000101111100110111110100001100010000110000011101000011110110100101010111111111100000010001110001110100101110110000101110110100111011101010011110000011000010001000111100010000101100001010010110010100110111110011011110101010111110110010110100101111000001011100111010111101011011011000010100111000101000101101001111010100001000110001001110011111110111010110101100111100111110001101010001010110111011100001100000101000100001000000011000110100110000100010011011110100100101001001010111010000110001111110101010110010110010001001001110110101110100010011011001000110000010011111101000001100010001111010110101110100110100011001010001111011111011100110001111111000101000111011110101100110010101100101010000100111101101010110111110110101000000101000110111010001001101010001100011111011000011101110011110100011011101101010000110001010000111010110001010001100100100111100101010000111010110101000011100000011101101111011010101001011011101110101011010010010110001111010000101101011110100111110101101011111010100010010100110110000001100011100101011111010110011110111100010110111000000101011111110011011011011111010010110000100000000010101100011011011010001101011001101101011010000000010001100011001100011100000100000101100111110101100000001010100011000101111010101101100110011110000101100110101101010110110111011001000000000011001001110010011110101100010010100110111111000011011000110110100110110101111001001100101100011011101100100000110101100101010000100010111111010101010110100111100100101001000011011011001001010100100000110100111111110011000110000111000100000110001011000011011111101011101011001110010101100001110111011111000010101010100011000011000110110011101000001010100011010100100010100001111011101010001111110000100111001101111011111001000110101111010001000111000110000011010011101100100010101000111011001110101000100110001010101100101100100010001011111100101111000010100101010110001101000001001111100111110101010101101010100100011011000000011001010001011100010100101110010110001110000011110110111011000001110010101110001111000110001010101100011000010101000010100001111001000011011011011010100110110000000101011010101000110101010000101000101010101001010110010010110010011110001100010001100110001101000011100011111110100000100001110011000011100110101100011000111--------------------- +0110010101010111000001110011100001111101111111011000010001110010010111010000001011100001100011001010011100011010111011011111001000111011011101000100001101101110001000110111000011111100110000101011101111111110111111010111100110001010011111001110010001111011010100011001011111110010110010000001000110010001001000010101001110100110011011100100010010110100111001100010011011110000000011000011111000101000110110000101011011010111101001000111100110000010011111111110001101110100100011001110001011110001010100001101110111011101011110000011110111100001111001111101100010011100010001001001000111111011110111000010100001000101111001011100001011110111010101110110111001110001101110110010011100101001000100010111011010011101011001001111111010011001100101011010001001111110110101011111010000010011011010000100110011101001000011110000110001111101001101000011001011100010111011010001101000110101000010000101100010011010011100000010100111100110100100011010001110110101111001001111110001010111010000110010011101101011011100000001001001010110111101111000111110111100111101011101010000010110001111111000011100011000011001111100001111110000000011010001001111101011111110101111100001111000011010111010011001010100100011010000010100001111011010010101110110010101000000011111111011010011110011011010110110001011101010010001011111111101001000011111000100111111010001010011111100110110010111010010001110011100100001110001100111101011100110101010100001001110111011000000010110001011101111001100101110101010100010010110000110001110111111000010000011110001000011100110100010010001101011011011101101110110110010100011100100110100001110010110111001001010111011101111100111011011011100010111001101010010010000010100011011010010101100111110101111010111111101010010001111011100010010100000111110011110101010101111110000101001010010010101011110011000110110100000110100111000010001101100011111011101101110000001100000001110010010010011000110010011000111000100100001110010111011101101010100000000111011100110001110110001000101101000110101000110110010101011011000000011000011110011011010111111001010110100101111101011111101011001011111000000010100101001111101000110101110011000001111110100001100001101100101001110011001110000101111100000110110011010000010111111110100011101100001000000000010000101000111000100101001010011011000000011000100101110010101101111101100110011011101110101111101101101111101001101000000001000011001101111000101101111110001000000000101100001011011000111011011001011111101011011010011101110111011011011001101100010101011010110110001000011111010101011100100010101111000001000011000010000100010001111001101100001101001000110110001011101010101011000000010001000100100111101101100011101010000101011110000101110001101100110001110110110000100000110111101001100000100011001111001000011101010011010101101100010011111100010110001000101101000001101111000100000010111001101011010111010001101011010000001011000101111110001100111011001011110101110111001000011100101010111011010101111100111010011000011011010001100100000110000100000011110101011010001110111001111111110110010110000001101101001010100001001101111111010101110001001100110010001001101001111001011011010110011001111000001000000100000100010110001101101110000110001000100100010100010110110000001000001010100100001011001000001110000011001101110111000001100111101001010000011111010001110101010100101000000000111010100011101100001010011100001111101110000110011110001010001101111110111100001011010110110001100101110101000000110000110000110010001011111000001110100101110001101101001110110000001010100110100000000010000111110001010001101001011000010001001100010101001001100100001101000010010110110010001110100100000110001001101100000010011001110001100101010111000010110101010011101101101000000000001111000101011010000001010101101011101101000110110000101011101000000111100011100101100001100101100010111100111001000101000100011101010001101011111001101011011111101111000110010100010010011101110011110100101101000101001111001111111001101001101110111011000010110000001001110101111000111001011001110000100101001000000111111001000110010000110100110000000011001000101000000110101001011100001101110101001100100000110100100110101011011100010011100011001010010101000010010011000000100011010011010010001111100110011001011000000010001100110010011100101101100100000111000010101100010101010010100110100000001110111001110111001001101111101110101101001111010101011010010100001100011111110111010010011110100011100011011111010010011111110010011110010110011010010101011111010111101110001100011000010011111111010001100101110000010011001110111110000000100111101101011000110010111000000101101011100111101001110001100100001111001001110000001000001111111001000100001010000100001111000000001100011101100001010101010110101111010110110100011011100111110110111110110110000001001001110111101110001111000001011100000001111101100110011101111000011010000110100011010100101001011111001001001010001111101111001000100000110110011011010001011010001111011110010111001110100100110110100111101001010111111000110100001010111100101000111000111111110000001100001111100110111001001100001000000001101111001010100101000111000010111101100110010001000001111100110110111101111010010100100101111010101011010110101100110010101110101111100111101010001000110100101010011111111100010100101110001011101001001100111010101011101000010100111000101011100101110011001011000000000000101001100011110101111111111010110110011000100111110001100101001110111110111101010010111011000011110100110001101001011010110111110001011011010110101100010010011100110100111111100010111010101110010011001110110111010110011011100110001011001111111111001010101101001111--------------------- +0000011101010110001000101100100101011010000110110010110111110111010111000100001101111001000000111101001000101111000111001110011001101001110010010001001111001101111000010011000000110100100000001010111000010011111001010010010111000101001001011000001011011011101111100001001110011000011111000010110000111101101010100010100011000101000000100110100011000110010111011101011101100011001110100010110100100000011111111100110100100101010111100001011110001111000101111000011100001011110110000101010101100000100101101011111011100000000000000100101001101100110011110110101010011110100110000010100000001010100000000001001110011100110111101011010011011101101000101111011101110111001110011101000110101110011110100000111000011100001110111011010000010010011111011000111100001110010010001010011010001111100001001111001111110101011000111100000001110011010010010011000101100000111100000000110110111111100001000101110110000101001111101000001111011001101011010100110011011010001111011001010010111011111100101101000011100011110101110001101111000011110111000001010001110111000101100110000001010001010110010110110100101010001010001100011001001011010011010010100001000001011110011110111100111101011010110110101110001110101010100110011110100011001010111101100010001110011111100001111101111101001001001100011101110000111111100100111100111001010100101000111000111011101011100111000111111001010100001011111101011010010011010110001101111101011100001110000011100010010000101100011110111010111111010000110111000000111010110000111111101000111110111101011011100111100100011101100011110100111010101011001001001001010100100111001011000010001100110100010010100010000001100101010100011101000011010110001100100110111111010100010101010011010111101110100111001010011111110000010101010001110011101010111000011010100001111111010110110000110010001000011000010100010110110111001010110110101101100011001100010011001101011010000011000101111110110101111011100000110001001100001100001111010101011001011000011100100100011000111100001000101111010110001001001011010101111011100111011001101100110101010100101101101010011000101001111010101101101011010011010111000100010001100010011000001001100010000110001001001100000000100101010111000000110000000100110011101110110111001111001000001011011101001101000001111110001011100000010101011011000111011110110101101010100111010001010011011010101001010000101000011001000001110110110101110011101100000000101001010100101000011000000101011100001101000001011110001010011101100011100100001110111111011100101111101011001101000111100100111011010110001001000101110100100011111011101010011101111100011111100111011110111010101001110111010100111100000100001101111010111101000000110011111100001010011101110000111110100000101010101011000111010010100011001000100011101110101100101110100010111101010111111000001110000100010010001111101011110000000101001001111101100001000011001111100111101001101000100111001111010011100001000010010100010101110101110110100000110011100011010110111000111011010111100000011100110011000101101100000001100000110100010000000001101101100111010001110010101000001010010001001011111011000000011110111110011101010010000001111100000000001111111010111010101111010010110011000100001011111011011011110110110000010110001110110100111111110111100000000001001101111101111001100111110100101001001110010101001100110000011010010111101010101011111011001000100100000100001000111110100100010010101000000101111100011111010010100010001111110011110101001011001111100110100011110111000111001001110100010011110000111111001010001001011000000011110110011001101010010100110000001111000001101110011100110010001111100000101111110001011100100010111101111010111001100110001011111110000011000101101001100100100000000111110110010100011100001101111111101101111100110100111011111000010110111010001101100110011001010010011011110101111101000110011101011010000100011101101001101111001110000010011010001100011100010111111100110001100111100001000000111001001110001000101000001110111010101000100111011111001111001000111011110000000000100101010100100100110110100100101000010000100110100010100000101111110001010111000101111000011010100010111111110110001110101100011000110111100011000111101000011100100101110111100000101000000111111100011100011100011110001111101101110001101000011001001010111101101101111010000001101101100100010011001110100101111001010001100001100001110000000100001110101001001011011110111111010111111011101101101011101011101111010100001110010100110001100010010100110111110000001101101111101101010010000111000001000111111011010001000100101011010001000011010101100101100001100101000110010111011011100011001001010010101010110000100000100110101110101110111011000100100111000110101010100110100010111111100010110001110110100110111001000111011010110000011101010101010001011111001000001100010111010100011010010101110010110000000101000101110000101000101110011000000111000011111100111001011100101010100100111100000111010001101111001010011001001011110110000101110111000000101011100101111101010101111001001011110100101000001110111110110011100001111110101111110101011001110011110010101101000111000001110001000011101011100100010001101000010010001001100101001000110100010111010110101001100010110100010010011000000001011011100100100001001000010101001011110011101110000001011111100001011010011001110010000110111001110111111100000001100101010010101010001010001110111111010111101001010010011011100000100110111100110100000000011111010101001001101000010111100010000001011100011011011000010111000011011101111011001111111010010000001101000010010001100110000110001011110000111000001001000100001000100001110011011100110110001100111010100001011000010101100010000010100--------------------- +0110101100111101011010100101000001001111100001110010101001111100110010100000100000001000011011111111100011001111111011101000000000011100100111011011110110111011010000101011101000001110110100011100000001011000100111101101101010110011100011001001101101100011111000010110010000000110100100100111100110111011001000001110100010010110110010000001001101100000110101111000001101101001000001100011001100110001110000111110011011111111011101001101010100001110001001010100010000110010111110110110111011101100101101110010001100110001001110000001100011001010001100000011011111111011100110100110101000001001011111000001001010011001001100110101001010011101111000010100000000110110001010011100001010101011101011010110110011111110101100100101100110000001001000101000010100010101001000000010001010010001010101101101010001111011101010100000100000000011100010100011000001110101111010111000010001010000010000100001100001100110001100110000100111011110010100111011101001010000101101000011010100001111001100000001001111111110111101010011001101100011110010011101100110101110010111100001101010010011101100101101111110000111111101010110110001010011101110100011111100101011110101001101101000111110111101010110011001010001111110000001010101101010001110101010111111100010011001000000100001110000111001100100111100110101101100101011101001110001000110101101001110001010011011000100100011000010010101101001001101000001001001001110101011011110111101110001101101101000110101110111110000000010011110100011000100011111010100101011100001001111111010111100111101111000110100101101110101000000001111101010000101110010001000110111011010001000000011001010100100101100110010000000100111000000111010000010010011111110111111101001110010011101101001100001111011101111100010011001110011100110011111010000001011011100010001110001111000010001111100000111100101001101010100111001111001101100110001010010111010011101100100110101010101111011011010111011011100110100101010001011110011011010100001111111000100001110001111101001111111011100110011001000110100000111001101011100000010010111100100100011010110111000100111101111100110101101000010001001011111010100101000001011101011000001101000110001101010110111000101001101010101110001101010011010110000101100101100110010100111010011111000010100011000010100111000010001010011100000100001101101111011011100111010011100010110001110000101110011100101001011011101100111110001101111000000011100101110010000101011001010100101101110100110010000010000100100101110001100001100100011100100011001101100010110110000110001110101101010011001000100100111111110010011110010000001111110001000011010111000111000001110110110001101101110110000011011011110011110011011110100101100001111101110000000000001001000011101101001010001100000011101000010010010100101100010000111100100101110001010011001101100110110110011010010101001001100101110110011011100001100011110110111101011000111110110110011001110000010110111001100111001011111100011100111101000011100110101101010010000101011111011110010101000000000010100100001010011000110110101011101100001100111111110111000010101111000001010100101011111101001011111001100000001100100111000001111001100011011111011101010100111110101011011100100001000010010100011101011001010101000101101111010100001101111000100011000010011100101110010100001110000100101100011000010010111001111011011100010110010111010001010100010111101110101011000110111001011000111011101100001011001110110001111001000110001111110011111110010100100000000010111011101111111110110001000010111011101011011001101010101011111111010000111111111111001001011110101110101100010110111110011001000010100000010010000000101010000101000111000110001110010001101010110111101001110100000011011100111100100011010001110110110010100101110111000110111100111011000111100111010111100011001100100000000010010010101101101101001110001100000110001011111110010001010011011111010000010001001011001000101010111110010101111001111010000100101010001010110001110000000010110000101000010010011010111100110001000110100111011110111101011101010000111000001111010010001001000101011110110101111110101011100011101111011010110100111001001101010111011111111101001101101011001100100100100011101110111101011011110001011010110101000010000010001010111010111010111110011001100010000001000101011010101111101110111101010000111100011000001111101111000000111001000110111111001100001000011100010010100111010110011011001110110111000110001011111101010001100001101011010001110010011010010000111010111001111000100001010011110111010111100001000000000001101011100011010100100111001101101100011000110101101101011100111101101110001010100001000011110111001110101001001101000100010001011000111111110000011010101001110110010101111101101110111000101100111001011010110101111000001101001001100100001010001000001001000011011000000101101000000001110111101010110100111011001101011110000101010001100000011000111011111100101011010011110011111001011010011011100101110101101001001000011110111101111001011011110000110000111100111000110110000001001111101010010000011110001100010100001011111101001101011001000000110010100000001011000001111000100111010110011010110011000000001101110001110110011111110101000011100010001001100010010000011001010010011000000101000001000010110001010100001001111001100000110111111001101010010100100001010101010010111111100011001000101010010000100100111111100000111010000000000100011111010101110011110101110111010101111000111101001110010011111111000000101111110011010001001101101110101011010000111100110110010011011001110011110010101110100111011000110001001111110010100110110000100101011100001100000001011000011000110010100101001001111001100010011000011110110010011100011110111111001000010010--------------------- +1111001010101001111110011111000111110011100010101111011101111011001011011101010111100100111111101100000010011110011001110100001100011110000111011001010100111000111010111100000101011000101111001000111110100010010110000101011101001110000001110101001010011011001100010011101001010001011100100001010001111110111001111001100010110010111111111000100110100110001001001110100110111110110010011001100100110111010011011000001001001101001111001011000010000111000010101001001000111100011010011000111101010011011000110011101001100110011010101110110001011111110101100011011000100101010001011000000010011110101001111011111011100101010111100100011001010010010100111011111010110001000011110100100000011101010000010010001011011111000010000111000000011100100100110011100000110110111011100100100100001101111010110001011101000001001011010101110110011111110111010100100001101011010001100010010101110000010011111000110111111001011110111001010111010111000000010101100100100001101011010111011101101011101011001101010110010110010101111101101111011110111110101001000010001110100000010011010101010111110100000001001100000100000011101011010111000100011111111110001111001101100101010100000101100000100000111101111010010010000001100100110110101101000011110111011111010100001011100010001000100111011111110001000110111101010011001010001111011011011101100111001111110000101110001000110011010110011110010011101010001010000010001100100110011011000101001101001010111011110001000101111111101000011011000001111010101110001111010011111001010111001101110000011110011011101101000010010100111111011110011111001000000011000111100100110010011110010100011100010110001001110000111101000011100101100101101111111100100001001010111111000101101010101100101111001100111001001000100101000110001111100001100100111111000000001000111100111110011000010000101110000100010111011000011010010110100110100101000011110100101111011001000110101001011111011110010110001110000110011100011010001100100111101101100111111010000011110010000011111011101001001110001101111110101001010100101011101101010111001011001110000100001100011111100001001101001001101101011010011101111101011011110100100011011101111001101011101101111000011100010111111110111100011011101011110111001011001110001001110001111100010000110101110100100010111011001110000000110101000111011010010000010111111100010001110000111001011011100100001100001101000010010011001110010001010010011101001010001011100100011001100000110001010101101101111001010010111110110101001010110011011000111011011101101111100001100010000101000101011111010111110010110101010111011101111000111001101010010111010001101001001001011111101001011001111111111010100011011100000110011101010110000001001001011000010110011010001010001100001111110100111111000000000100100100100011110100100000100111010000110011110010010111011010011010001111001001010100101010100100000010011110111110010101000010010101100000001010000100011100011111001110110011110110010100000111000000101111010100111110000110110100110011110000111011010001001010000010001111110101100101000010110100011110100010111100111110001010100010000010111111001110000011101011011001011000000100000101110000101101001010001000000111010101110001011011011000010010010110100000000000110011011000101000100100110110000101100010010011111101101111001110100111010010111101000001100110100000101100011000010100101000101100010001011000110010000001011010110111000010100111100011000011001011001011111000000110110011100000100101001100011010001101101000011000001110011000110011011101111011010010011011011100000000000000100011010001011100001010010000011001010111111101111000000001010110110000010010010111010011001111001110001011010011100111011011110111111000011100001100101010010010010101001100011011100000100101000011101001111011101101100010101001101001111101111111100000010101111110111111101000110001010011110011111111001011011101011010110110101010000101101110001001110101101001111010010110000101001110001011000011101100111011000111110100000000111110101010000111010001111000000100100101010110110001111110110111111101010101100100001111101010101110001011001000101011111110011101110000000010111000101100100000101100101011010001111100010010111111011010110101010010101010101100111001010100111001010010101001100001001011101100110100000100110111100010101010101011101000011110110101110000001000001011101110110110100110100011011101111100001101110011110110111001110000110000110001001110110001110001110001001000001110010010111001101100111110111110001000000000001110100111001011011101001000100101000101010001010000011110010011000001100111010110010000111101000010110010010110001001011000111101111101111110111011101010111000010000010100011111111110100001111101001010110000000000100011110010100111001111110001100110110010100111010100110111011101000011011101100100010110100100010100011110101001000101110011111001000110001101011101001110011101110111000011010100000110001001111011010011111010101001110000001011001101010100110001101010010111000111000101001111000111011100111101001100101011111011100100110011110010010000000001110011011101000100111000111010111100100100111000000110101001110100001101110101111111111000100000101101011001010011010001110111111110001110101100101010101010000100111001100100101100101011101101111000000110001001111111011001110100001111111001011001011001101110000001100101100101111101111100101000100001011010111111011101000111011000000110110000101100110100000011101001111110111101011001100010001111110110111101010011110100111111111010001111000001011110110010111111001111001010001110011010101100100000001011000011010110000100000000100010011010001110110101011010000010110010101101101111101111000111001000001111010011110--------------------- +ls256cwds +11100111011110011000001100110011101100011010010000010010111111001001111011100111011100000100011110001101111100110000000000000101111000101001011111101101110111110110101101000010000101010010001000110110000101010000000010100111111010101101001010110110001110000110000111110010010011000110101011101011010001111101001010101011100100100001000001000111010100111111000001000100110010110111011011100011011001110000111000110010000001001101000110110001010111110001001110101011101011100101011010010010000100001110001000010101001001001100001011100011111111011000101101011000111010111100010001000010001111100011100000000110011000110100001110001000000001010111000110001011011111110010010010110010100110000010100101111010111010001001000011011001111100111011110010001110101110110011000010011100101110011110001011000000100000001010111000111011111110000000100011010100000111000000111101011000000100111011001101000001101001101011101111001100011001010001010111100011000101001111110110111100011110110111111000101010101100101110100100001101011000111100100001101010111101100000100111000001000100000101101111110001111110100010100011101111000010110101101111000101011001001000001010011110111000000001000011001110001101010010011000011100111101100000011011001111101010011011110101010110100000111011101100000100101000011111010001101011110101011001010100101101011100111100011000100001001111100010000101100000010000000011010000100010001111101101101110000011011000011101101011001110011100111000001110000000000101110011110011000100011001111110100010101100111001110101100010001100110010011011111101010000010011010010001011010000001101001100110111111010110001111101100100010100011001010101101110001100011000101000010000101011001110010010111000011011100111010111001001000111100010110011010010001110110001111000000000110100100100010001100000110011101110101100100011110110100001110110110011100001001000100100010110011100111111100111101010111001001001111101001010110011000000001001110101010110001011111110100001101011010101010100010110110101110010101110110011011000011011010011100001010000001000111100110100110001000010111000101000100001110110010110010100101111110110100101111110111010010101100111001010011000011111011010001011111111110101111111110000011000110111001000001100000100100000011101111110000111101001100010001111010101000010010101001110100100001011100011101111110010100100011100111000110010000000000111001000011001001101101001100101011100001000111000111001000001010111011110101011000010100010101101000001110001100110001101000011100010101111100000110000010110100000110000100100010001011001101110000111111110011011001101011111001011010001011000100110000000100100101000000110110001111111111110000111010011001001011100100110010100000100100110000111110110000011111110100010011110110111101010101110111000111010000111100101111111011000100011000001111101101111011110111110000110100110000011000100001110101111101101101100000100101110111001100101101110100011000110101111111011000101011001111010000010011100001010010111010010111001101101000001000100000000000100110001110001111011100000001010000111001001111111011001000111110101000100011101111010011100101110101001111000001001110100011100011101100000010101110010001011001001100100001000001100000110100100011101011000001111110100011010000011101000010111001111011010111100001100001000010000110011011011001100100001111001000011101111011111100111101111100010011110111010110000000010110100110001010011000100001000010011110000111000011110001010011001000000110011001001001101111100101101101011000100010001000101000011000001101011101010001011011110010110001001000001111101010001101010010111101111000100001110111101011100001101010001100110101010101111010000010110111001000001000001100110100000100101110001110101000000100010011000111011000000010000111000111000010000101011100000000110001111101011000010111111111000111101111010101100001111111110111110010011011010010011000100110111110111010110111000000000010100111110111101001011000100011011101111010001010010001111110111110110011010000010001000000111110100110001010110001010110010111100100101110111001111100100000001101000001100100110001110001110001010000100100001101001110000001100101111110101000000010000111011000011011000010110000110101100101011000010011110010100010010000111110010000011110101111100111111100011011001100100100011100010000110001100010100100100101000010110101001010111110110000000001001010000100011100110011111000001001110010100101111010001000011101100011110111110101001011010001110010011101000000110010110100000011100110001000110110101100001111000011010000100010100101111111111001110100001100100011000101001110110000011010010011000001011110000001011010110000010110000011011011111011111101100001111110001101000000101100101000101011000011010111000101110011000001001111010101001001001101011111110100110110110100001010001000001101010111011101100011001110000011000001001101000100000011000101001000100111110101101011000100101100010100111000010100111100010010110100100010001011100111100011010100100111000100000111111100110110101101010011001001011111011010001010001000101001000011100001101100011011000100111000000010111111111010111001100010---------------------0001010011111111011111101110101000010001010011011100001010110100111010010011110101000111000011111110111010001001101010101001011011001101000010010011000010001010100010010101101001111111001000110111110101100111001000000100011111100001011010101110010100111111111000010110010011100110101000110100110110001110000001011110100101101001000101100011101100000100111111110101110010001000000100010100010110010001010111000001010001001011101001011100011101010001101101001001110110110100111111101000011000000111111011110011111001001000010110110100011110100011001010001111101001100000101001111010011000100000101010010111101001111000001001111110011111100100100100000110101110110010010111000010111011110000011101101000110010100011010111001001001001101110110111011001000011011000000110010110011111100010110100011101100100010110100000111110001110000000001100101010000111100100100000001101100010110100010100011101110101101101010001000111100001110011111001001001101101110011101000101111010001000001100010110101110110001100111111011010000000000001100101100110111111110100010011010101000001011001010101101011000000000110011100111001000100111000101011111010000011010011001100000001000011110011110001011100010000110111101110011000000010000010110111101101101111000000010011011000010101001110101001101001110101011010111100110100100001010101001111000011110011101111010101110010001011010100001011110010111110010000101111111010110101000000011100111010010010010100001001100111011111111000011110010001110100011111101001000101010010100110101101011101100101010001100011100011100100110101011111110101100011001010101100110101100111110000100010101101001000000110011111110011101010001110110111111011101111100111010000110000110010001111100001001101000101101000111101011110111001001010011110110010000000011100111100000111111000010000111110101010110111100100100011011110101000010000001111010011110101101111100101100000111101101001101001001011101010010101111001000100110111010110101110110100100111110010101101010100101111101101111101010110010010101100001110110001000111001000100000101111010110100111111000110000111001111000110010110011001101101110001111101101110101110101001010111011011010000001001100001000111010101000011110000001111000110000001100111000000000100010110000001101001110110000001000101010110001110010011101111110010110010001111101111100010100001001100100010101110001011000000001111011001001010100010010010110011101010001100110001111000010110110101000110000000101101011110110110000110001100010001011010011000101110010001100011001100101001011011000010111110001001001000011010010001111011001001111010011100001001111100001111101000111111000101000101111010000101010010011011001110010010000011010100101010111110010000101110111001000011010101110101101001011111001011101111100111100111000101111010100000111000110001001100101110111110000001011100011101000110110010000010111100000111001011001010100100111110101101110001101100110101011111011111000111101110010011110010010010111110011000110110111000101110011100010100011001001101000101100001110011100011000100001011011000011010000111111000010101101010011011011100001000001100110101000010000111000101011101001001111001110100010101111110000100111001111001010011010110010010100010000111100001001101101111001110101010011000010001010001101001011100101000001000001010101000000101101011010011011011010111001001011101001010010011110101001100111111110001110011100001001100101101000001011111000011000010110001111111110111110011011010110101110001101010110101000100111111101110000000100100101110101011001010101011111000110111010000010111111110010101111000010010010101100010100110010111001001011001110100100000100011000110110110110000011100011010010101000011001010000001000101011010110011000001111010010010001110000010011001100001010001101101110011101000011101011010101101001000001011001111010100101100101011110011100010011000100010010110011110001010101000000010000011011000001000010011011011101111011001111111000111110010101001010100011100000010111110011110111111101110101001000111000001101101000101110010010011111011001011110010111010001110111011010011100000011101010110001101001111001001011110010001000000100000001001101111111101000110000100100111111001011001111110011111000111100100101010011010101000111010100001110010010101111111110000100100000001011100011010001010001110001001111110100111111010111111010101011010100111111111111000000001110100001101001001011100111110010000011011100000010110100011111101111001001010000000101111011011011011000110111101001000110110101000001010100110111101010101010111110111010110111001001001010100100110100001101000111111010001101011100011111000001101001101101011001011010000001101101101010001101001011000011110101001110101110000111110111000111110000111101010011111011010101000010011111110110011011111111110101000000110101101101100111100111110111110111110110001001100000011111101001011111000110001010100000000110110001110000100000101011011101111101011100010101110110111110010101110000111101001011110000100010010011101000100000001000101010000101101011101011101110110100010100101010001111000111000111100110101111010000100100100111100000010110001000100111011101010100110101101101001000010000001101100011000111000000000111010111001100111011110100111110101110011110110101010110100001111111001111010001000011011101001100001110011111010110011011010001000111100111110100101011100001111000110001100011001101111101111101001100010111101110000000100111110110010100010101000110001010011110010111100010101110010000101000100111100111011011001111001010101010100100100110110001101000001101011010001000010110001010011000001000000101100000011110010110001100011011010101111110001010001010010110001110101101001011111111110000000001100111001010011011111100011000111110110000111101011100011110010110011000000001001111011100000001100100111000001000100010011000011111100001110100110011110010111001011010101110100110101000010010110101001100111011111011100000000011110100001111111110011111001000100001000010110011110011000111011010101111110111111100001111010001101010000011010000101010011010011000000110001011100111110110011000111101110110101111111011000111111101010001011101111110000010100001100010010001110110011101111100101000001100110000011000000110010100110011011001011010011001011000100101010000110010011110000100010001101111101110110101101000110001100010000100111011010010101101010000001101111001011010110110111101010011001110000010000100000010100101001100010101111101110111110100100110110111110001111001000101101100011011011001011001111111101000000100010010100111100000001101110101100000110110001111011010100001011001001101001111000101111110101111000110101110001011111000100110110001110011000010011110000001011010100110000111011111001001101000000101010110100100110111000001001111010010111111110100010100100001010000011011000110111100110100000100001010100010111111100011110110111110101111010010110000011001101111010010010011010001001101000001011010010010110011100001001011111011100001101010111001101101101100011110011011101010110111011001011110100001000110101101011001011010011011101000101111011001101111001001010001011111001110100011110110110000001110011100110010010000000000110101100111011101100010100111000000001011011101000100010110000000100000101011001010011010111010100101010001111001001001101101001010110001011111110000011101000101100100010100110110010010111100100111001110010000011111110101010100110100110010101010000110010010101000000110000001101001000111000111001000001101101100110101100100010110101101101111100100101010011110100010101110101000110100010000110110010011111011110010111011101101001111010011110010111110010011101101101101010011100111000011000111100110100101011110001000000001100001111010010011011101000001001101011101000001010010010101011000010001110010000101000111001111011000010010000011000011100100000010100101100010011101110111010010101110000000000000001100100000000011011110000111101100110110111001110101001110100100011010111110111000100000010010111101001111010010001101101101000010111110010110100000011001111011011011101001111101101100110011001110001111000100101111100011000011000110010101110001000000001001111110011010101101111000111000010101111111000100010001011100100110010011000000111001111010011100000011111001001010100011101110001111111001111011110001111111011100010001100100110001011101011001100110010010111111011011111101010100001111101001011001100100001110110111111001100101010011011100111101100101000111110101010010010100010000011111101111011100000111010000100000001000111000100010000011101100001100000010010111101110001110000110100001010000001110110110000011111001010111001011100110101100100101110011101101111011111000111000000100001010100011011110010100100011001001001100011101100111110101100100011010000011001001101100010011111110101110100000100001010010000111101100100111011001011000101001101100011100000110110010001011001101000111110011101010100011010011110011101010111100100000000000000110110110011110101000000110110001010101111110001111111010011110101110010101101101010111101101000110010010010011000101100010000001001111001110001111001011111000001110111000011000000111101001010111000111001111000010001100001011011010110110001111011111101010111010000110001011111111111111111010111100010010001011010110111110111011111000100110100111101011011100111010111111000010111000101111011000011111101010011101111001010001111101000110110110010110010011001010110001010110100000101000100100101101001101010111001110100110111001011110100100110001100100101001101110100011100100100011011000010011000110010011000011011011110110000100110011110111001110011111010100101011000101000101010101011110111111101011000101011011110100110100100011011001001010100010110001110101001011111000111000100011100001001000101000010101001100000000100011111000010011110111000110010011000011111111101010110111001000010101101010011101001000111101001110010000111101101100010011111001111100111010110001110100111011110110011010110110111100101111010101001110111001001000111110111111101111100101110001101010001001010000011110001010001011000011001010000011011101001101001010011100001000011110111001110110011100111110011100110111010111111011000101011110100001111010000101010100100100010101000001100110000011000100000101010101001001001010100000011010011100111001011001011010101110001101100011110001101010000110001100111101111101111010000000011010111101000000110010010111010110001001110010110101000101010011001010001000101111001010000000101001001110010001110000001001000010100011101100010111001001011100111001110011111010110110011001000100100010011110001011000111000010111001010001000101101001101011000010111010001100000011001001100011101010100010100111011110011110101011000100000111101101111001001100010000110101101111011010011001011011010110001011101010110101111100001010011111111011010100001011111111100010101011010101100001110001010111010011111100111100111101101011011100101011101101110110000101010111101100100011111101000001111111010100100101000111101101100000111001010001101010011111110001110111010110001000111001111111100110111011000000010100100011100111110011010001000001001110100101001110101100010001010101100000000010010010101011001010000011011000011110111011001011001101010100100011010011010110110101111001000100110001011100110010010000111100111101100000100100110011000101011011111101100010010110110010001110110110101001010110010100100101001110010100110011010010101100011111110010111001010101010100111010000100101000011111001011111001011010100101011001101000110010100001101111111000000001001100110010100001111100000100111101000110000101010101000000101111110110010100110101110101000100110111100110100111000110100000100011101000001100110110011011111001101000000111100011111000000000000100101101100101101111100110110001001001111101010110000100000010010101100101011010100101111010010001101001100000010101101111101000000100100101110010011000101010100011010110000011 +00111000000000001110000101001011011110011111001100101000011010000001110101010111101001000000101000101110100111010010100101001011000110010100111011111111010010110101111011100000001100101010110001101010001111001110101010111110110010101001110001111111000110101100110000011000110110010001101111110010110000010100100110001101010010010100101110001110011011000010111011000000000110101110011001010000011011101010101001010010001000001110111011100011000011110111011011010100000001110111001100111011001011000010100111000010110001111000110100101100101101111101100010011111110101001101010010111110000111001001110110110101000001010011010110110000000000101010100100001100011000100010110100101010110110001101111110111101000110011110001111110011001110010010101011110110111011001100101101011100001000000010111111100001001010101011110110101111111000010011011000100111000111010010111110001001110001001110010101101001110010101011111000000011010010000001100110110000111100111010011100001100111101000011000000110000100010011111000101011000100011110110000001100101010110110011110010011100011111010010011100101110111110100101010101011101100111001101010101111101110110000010010001000011111101110101111010001101101000010101110001100110011000100011100100110010001000110000010100000110011000111001010001110100011010010001001001010100011000101011011000100100101101100010111011101111010001111011100011000010101010010010111100010011111111001001010110100110111110001000100000000101011101100111001100001101011000000001100101000000111111011011101011000101011001011100110111111110011100010011111100101100101111010110100100110110001010100100110011111111111100101010110110011111010011001101110001000010111110001110000111100110010100010010011100100100111100101110011011000010110101001011000101101000110011110111000100100001010101000001001010100100001101100011110101111010010000111001101101110111111001010001100100101010010001000011100010010101101111101110000100111000111110000000001000101110111111111101001011110010001001001010011010000011111001110010111001011110000001110110011101111010100010011100100111011000110100010001100110010100100110111101011111001011101111000010000000000100010110110001100001001001101101011001100110110101000110110101101000011100001100101010000111100100000010110011010000011000000100010001010001110100011110011011001001010001110101101101011001001010010011001001100000010100011010111011111101110100100110001011101110111000011101011001111011101110100110110110001011000000001111000100111001101000110011010110011101000010101001110010000101111000010001010100001110001000110110101000000010010010100010000000010011111011101000000110101001110001100011100000101111110001000111000010110110000000011001100100110110011000011111000001100001000101110111011110110011001010111101001111001111011100110001011111001100101011101000001100011000110110000101000111011010010001101100010011000011111011110000101011100010011011010000011000010001101111111110001100111101100111100010010110110111011001100111001011010101110111100001111101011001000010100100000001010111110101100001100100101000111110011000111011101010011000000101110000010110010110000101110110101111101010100011010110010011101010110100101011100010011111000100001111011100111010101100111010000000011101010001001000111110111110110001000100111100111111011000010111110101111010010101101100010011101101111100111000010000111110010111101011111100011011101110111011100000100101010000111000000101011111011010100110110101010011010100100111111111001110111000011100010010011010111101100010100010101001111100000101011000100010010000100100010101100000100001010101001110010111100110011110110000000100111101001000111111111101111001010100101100111101000011110001011000101011101111011101001100010100010001111100111110001001010110011111111111101001100100011001011000001011110111000111110010011100110000001001000101011111110111011010000100110100100110100001100001110101011111111011110101100100011000010110100010001011110111110101100110111000110111101010101000100100011010010110011111111011000101110001111101010111110100111011110110011100000110000111001110011110010101100000110110000101000100011010101000111011010011000001011111000000101111100111111110011010111000111110000101011100001111001111110011101111111101100111001000110001101111001000011101100011111100111010011111101110011111010100110010001101011010110010100111011001010101000101010011010100010011011111100011001111110101011011100000011110110100011000000001101001010100101000011101111000111011111001100111111110010101111100001100111001010010011001011001111000000100111101110000111001100010011110011101010010110011001100100000110011110011001101011000011101111011000101100010101100001000001100101010101111001100000100011001001110010001010101111011110110100111001101000111011100010101010011011100010001111100001010001011011111100111111010101110000101010100000100110000110101000110110000101101001101000010000111111010111100100101000110101010000111010000010001001100100101010001111010000011010100101010101101010011001010110011111000011101001110101100011100101000011101011111010001010010001100000001000010110101100101011111010101010110011110100---------------------0010110011111110011101110010101000100011110101100110010111011000111000001011101110011000000011101110010000101100011011000101000000111100110100100001110100001111010011010111111101000101111001010111010011000000001011001001101000001000001000000011010110110100000001000000011010110111110100000101000010111011111101001011001010000000001011101100011111011111111111010000000101010000000100011101100000011111110001001111010011010111000010001100001100010000101001110111000010010111110001010110011101011111010111100100001010101001000011011011111000111011101011111001101100001110001100100010011010011111011010101010000110000100110111110010011000001001100000011100100110000110101010000010111110000111110110100110001011010001110001100100001001000000010001100000000010101000010111010011010001111001001000010101110011001000000011010001111101011100111111001010001101111100010011111011100001101101001101100110011100110101010111001111010000001100111100101100000111100110111111101110100110110101011100101110011011011101010111000010011000100010101000110000000011111110100011101000100100111111111010101000011101010100011110100001001100100100101101111110001100000110110110000011101110010000001100000001100101010101111111110011010100000111010001011000011100001001001111010010101101000110101100011111100101010101110101011111111010000001111010010000001100011011110000101110110111011001101101100100101111001111001011111001110000001011001111110011101110110100111001111000100101101000001100100011010011001001010110011000101011100100100111100010000110111001000101101111101100101110000111101101111011001001001100000111011101011110110101001111000001001000110110001000101110111111010001110011000011101100101100100101010110100110001001010011011111011011101001000001110010101011101010010110001000001011011100110100111100100010100010100100110111011101010111100100011000001110011011101111001011101011001000011011111101111100110010101000010101101101101010110000000101001110000011011010010001101111100110000000010101111001010000110010110110000111010001111011011101111010000000110010111101100100111100011011111110001111001011101100000011010001011100111111100111011111101111101111111100110011000011011110101010001011101111111011000101000000101001111110101001111010010111000001001111101011010110000110110110100111011011110100101010010000001001101011110101111000110101100011110000111101111000100110100101111001111000100010000111110101110101000001011000101001101110110100011000001010101100111100011011010100010001100000011010011011101011000000110011001010110010011000101110011110010011110000001001001010000101111100011010101110111110101000000111110000000010111100001010000000100001001100010100101111010000000100100000010101101111000101011001001101001100011101110001001000111001110100001011100100100010110010100100001010000111010001100010011111000001111110101001100101100011101110110100111010101111111100001111101111100001110111110000111000100100101110100111011100110011011011000001000001011100111010101100011000110011101110000011011011011010100011001111001101000011110100011111010001111000100110010001100110011100011100000100001001001100010001100000111011011010000101101101011011001001011001010011001100111110101101001000011001100011111100111001010001111110011010110101110010110000000111011011110000001111000100011101010011101101110011110110010000110000111011111000010011010100010110010110011011100111001101001000000101011011010011000110011111001100010110100100101111111111001100010110001001011110100000101111100001111111010111111011110100101011001010100100010111001000000101111101011011001001110011011101001110111111101010010011111100101000011011001011011100010111001001101100100010110100011000101101011101111001100100111011001000110000011111001101110110000010011010001110111001101100010000000110001010110101011010011011101100000001000010000100101111100110110100001110010100100101010011110000011000000011100001110111001000010101100000000000011010110011000011111011010110000110010011110110010001010000110001100110101001001110110000000011000001110011110001100001111101101100000011111010100000001110111101010100110110010110011011110010000101111111100110000111100110010011111010000100010111011000100100110111111110011111010000010000101010000110101100001101001011111000100011110110000110111100000010111011011001110010111111111000000000000110100011100010100100100011101111011001100101101010000110101001100110111010111000011010100101101011001010001011000100001011101100001101100101110001011000011110001001010111000000101010010011101100010110101111101000010011111001111100100101000111110011010101010101101011001010110000000010011011000110000011011001101010110011011001011000110001111101100010111010011011111100010111000001101010100001000110100111100111101010000110001011011101101101010010111100000111110010010110011111001100110101010111111111000000011100110010010011111110001111111010000011110111001010010000000111110010011111000101000010111110100000010011101110011000101010100000110101101010110000000000111110001010101001101100110000101000100110011111111111000011100110011101100011000111111011011101100101010100001101011001000000000000001010101000111111001011100111000011110011001111010011110000000100001010101101111001001100100111010011101011101011000011011101010101101010101110110000000010101010000011110010100010110101111010100110110001000011011101111101010110010100101111011101110100101011101000111000111101011000100100100111011011010010100110001001101000000100110000000110010001001000101001000101100011000110001110000110011000010101111101010001011011100110110101101100000101001000111110110001100110010111011101111000011010100010001100101100111000111100010011110111010100010011111101001011111111110110001011001011010000010101011111011100000001101000000001111110010100011101010011100101010110001010010001110110000011010011100100101010111001001110000100010110011101100000101100000110001010110101110011000110011001011010101011110110001110011010001111000101011101011111110110110000011111000110011000000111010010110110101110011101111001011011101001010010001100110001010110010010000101100111011001111011100100110010101001101101100000111110101100101000001011001110110011010000111011110101001101010010001011001101110110101000000001000100000011100011110010010100001001110001000111010111110101001100100010110100101001100100101010110110001011000101001100101100010100001110111110101000101100010001010000111110010110111000011010100000000010101100100100111110001110111110111010100101110111001111011011110011000010011000011111010100000010101100111100101110101100001100001001010101100100010011010010011100000000111011000101110010001100011100101001111001000101111101010001111011001100111101001001010100101101011110001101101000011110111111100001011011101010110000101001001001001001010100011100001100111100101011010110000011100010010011100101110001011110011100111101001111111000110111111101110011000001000001100100011110100010001100101100001110011001111000010101010000101101101111010001010000010010001101010100111000100110000011111101111000000011011100010110100111011111010010001110100110100000001101100111101001010010011110110000100101100001000000000101000110010000000010010110001111010110011101011100000011110110011110010011001101000100100100010110000110101101100010111001110011000101101100101001110111110001010010111001110111010001001011101111010110011011111000000110001010100000111000001111010001001001100000111101000010010011110110101000000111101010011101010111101110011101011010011111000110010101000100011101110010110010001011100110000110001011110011011101101100101101011000000000100010001111111111100110010000000111011011011011000000100011101100010110100101101000101000010100110000001111110001010010000000000001110011000001010101000001011111001010100000100001010111000011111111010011000100011100100101111110000100000100001010100011101000000001011001100111110101110010100001101011000000100101011101101111010001101011100100010101010000110110001111100100100010101100010010100010110101001001001111100101000001111010000101010011100111110001101000001011100110101001100110111111101011001010001101110010111010110100000111010001010001110011001101011001001010101010010110010000101101100000111000000100010001100101000001110101111100100101001100101111110111101011011011110101001101011011110011101111001111010111011010001010011100001010001000101111010000100001010011000001010010100100011110000110001010110001110000110111000001101010010111101101000001000010011010000011000011000010010011110011111110011010001001111100001001011010110010110000110010111010101010001101000000101010001000100111011100011011110101011001001100100100010110001100010001000101110110100111000011100010000001001001111010100110001011011101100101110100100111100001001000101111001000101001100010110110110011111000001100011101100011101111101011000001110000111010110110111011001011101001011110101111001000001010000001001101010100001101100100110001011001111000011110010000110110111110000101110100110000000100001110111010011001110101000100101101010101001011011101001101110000110110010010111011110010101011110110110010011110110110001101100011100101100000010011001111001101001110011110110001011100011110001001011001001010101111101110000110010001110101110000111111111110110000100010010111010110001100100110011111000100011000101100111111111100100011100100100101010111110111110001100001111011001100101000110100011001011101100111100000010000111001001111100000101100110100010110011111001100101110101101110100110101011001011111010111101010011100111111000110000101010100001111111011010011000000101011100101101110010011011000111111010110011100110101010110100111111000100000111000101111110010010000111111011011011111111011000101101101101110011010101100110000101000011010101010011101101101101101011000010001010111110001110010101011001010011001010101000011000101111100000001101000010010010010010101100001000100000111100100100101000110110110101110001111011000101101111000111111100101001010100110001111101101010000111111001111111100000011011001000011101000011000010000110011110111111101100111001000010101000000011010010011001101101000110000010011110100010001101111100000001100000100001011100111011101100000111101000010111001111101011100011010111110000111001010110101110011110010100011011000111101110101001010101111010101000100110101100000000111011101100010101111111001010001000101101010101111101001110011000111011100110010100011000100100011000111000010000111110101101111110111001011000000100010101010001100101001111000110111111101110011100000000010111110000001000111001111110111100101101011000010000010010011011111101100111001001101011010110111001001011010110010110011101010001011111111010101110111111100111101110010100110101011010101001111011101101010010010110101100001010001000010110110000101011000000100011100011010000011010010010100111010000101101111100000111101110100011100001100010010011101011000101010100110001010100010101011111001000010101100010001111001011101011101000000110111100001110011010101011101101010011101000011001100111110100111110001111000101111101100001001100011010101001011111010010110000000000010100010100010111110001010101111101010111001011010011010101100011010001001011001000101001110001011010100111011001101010101011000100010111100001001100110100000001110100010100011010111100001010100010011000111101000011010110101010111101101110011110000011101110111110111110011101111101110001010000011010011000101010000110111111000110011010000111010111101110101010111111111101110110011001101101010111011001101000000110000100000111110101100010001110110100100010101111111001101010101010001011011000100011110110000101001111100101001000011010000010010011110010001100110010010110101100000000100100110110000110000110100010110011010000100001001111101001000010001100101101100001011100111111111100101000101100100110100001011111110111110100011001000000101111011111110100110111011100100001101110110 +00001100001001011101111110000111100111111000111010011010100011110001110001010010101101111101000101110000110011001111100101111000100110010011000011100000110001011110101100001110110111100010011000001111101101001101011010110001000101111101100001101010000100100011100011110010100010001010110010001011011100100101111101110110011010001110010001100110001000000100000000111110110100001110001011101010011000000000110010100110110010000000100000100010111110110101000100001110010011101001101101110111001111010100110011100101100000001001111001100000000011011011000010110010010110001001011110000101100110011011111101100100111000011001101101111011010100110000001111010010111011110010100101100100110111001110000100000011011110000011000010001110100011111010110001100100001001110110010001110111011001000111011001101100000100101111110011111110110000010011101011111100000110011101001010011100110101010010101000110110000011001100110110010011001000010001010011010001000101110010100010010110011010101110000110111001100100010111101101111110010011011111011101101111111011100100000110100101011100000101110011110100101011111010101111000011111011111111101011101001011100111001100101101110110111111111101000010101010000010010110100101101010100010100100111001010110001111010111110100110100101101000111011011000111011101011100101111101010110100110100010111111101001000011101100001010000001000010100101000110001100011001110101000100110110110010001101111010011101010010110001010000110000100010110110001110110001011101111010001111101101101000110000101001011111111100010011111101100001100001111010110101101010111110011111100111111101110111010011100001100111011110110101000011011011000111111110110010001110010101011000101100011011100110011011101011000111001011111010001100111001010000001001000110000100111010110011110010011110110100000010010011010111101010011100011010101011100110011111001101010000011001011100111000000010101110010100101001101010111010010101010001101101000000010100000111110110011111111100100010011010111011010010010110101111011100000011100100000000101001010001010011101101011010011001101010111101101100000100100111111101110010000000100100000010011010001001000110010011001011000001100011111101001111001110101010100101000000100011100100011000100010001011100001111101101011111011011101000011101111011101111100111001011001010101110001110011000110100101110100110001100001001101011000011100100111110111010000100001111101010011000011010101101100000100100000000110110111110110001000101010111000110111111010010011101000101010001111010011011111011101101111010011111100101011001100001001101011110001101001011000100011011110001101000010101101010010110110010101101010010110110110100001010100001111010011010001101111101100001000011001001111101110101100011010010011010000111011101011100011000110001100001101000101001000110111000110111000000101010110011101001101110010100000111010111001101111101000011010101000001001101010000110001111111101100000110100011110111001010111100100010011010101101001001000110011001000100000110110011100111001101111100011101011001101100111111000001010110001000100001100100010010001100110100000101100100110100100100110111011110001000111101001111010110110100110101011110101101110110110100010111111011110101111101101000001011000000111001010111110001001001101110010011111000110011001011100111011110101010001000000010001101111101011010010111111111100000101010101110101010001000101100001101110110101100011110011010000000101111100000110100100011000101001100001110001110011101000001010111011011001111011110111011000101010010001110110111010010001010010111001101111011110011100101111100000101001101111111111010100011010110111111001101110011011111110000000111101110111011000000101110011110111000111011011011111000101101110001001111100101011000000101011001010110101101111110110111000110101110010010011011001110111110100000111000111100000100001011111000011110111001110010010000111000011100111110011000010100110100100101000011001000010111101010001111010111111001101001101110001010011111011010100110001100011010111110111000001100101000000110001011001000000111100000011000100110010001001100001011010100111100101101110100011100000100000100110111111111100011010010001000110001110101100000011101001100011101000111110101111001011000000011110111000110101111011011001001000100010001101110011111001011100110101110100010101101100010000010010111001001001101001111000000100110011100011100100100111001101111001001111010001100100001001101011111101110011000100001001100111000101000110010001110010111100001100010111100100001011001111101010100100111010010101000011101001111111110011100110001011110101110011010010110110101001111000011111011011000111010011110111001100011000000110011001000111011100000111101100110101111101110011110100010000010000001101001101011001001111001000010101001110000010101011110010011101101101011010111010101010000000110000011011101111011010000010011111011101101011100101011101101011101000101010110011011011101111000000001010110110100001010110011001001000110101010101101111111111101110011100010001110001110110001101000111110010000111000111011001001001001000011000101001000101100110101000000111011010001011010011010---------------------1000001000010101010111101010100110110101010001101101111100101100010110110111011000100111111010000000110011110000110001111001001100101100000101111011110000010010100010111100011001000010100100011110110000001010110011110100010000100010011010001101010101001000000001001101001111000110100001010011101000110000011010000110000001000111100110010100111000010010000100001010101000001111000000110001100010111101111000011010100001011010100000010001010000110011111000111000111011101101011101010100001100010110010001000010111110110011101101100001110001010110111000010101011111010111110111111101010000110011111000101000011100000010110001010110111101000000000100000101001000110000011011010101010000111100100011011011101010101110100110101110000111011011101100100001010001100101010011011011100010110100000101100011101111110011110000011001001001110000100000000100000101001111011111101110001010111100101011100010100111011001111010100001011100011100010001110101001000011000000111101101001010001001101111110100001110000011101101101101101110101000101100111100110010110000111000011100011101011010000101100111011001111101011011011110101111001100111100101001001000111000010110111011010010101000111001110100011101011100111110110101100001000111001110101000100011100000111011001100011100010100110110000000001111110000111100100110001110111100101111010111010001010100111000101010001101110010010111101110011010111000001010011001111110110100010000010101111011101110010001000100010011111100010010100100001010000010111111011011011011110011000100010111100000000000110011111100110110000101101110010101110111101000101101111111001000111011110010011110101001111110011101010001110010110000111111101000101110000010011000111011111000101011100001110110100010011100011111100111000111100101100001111101010111110000100000011011101001111110100110110110000100000001101100001111000100010111010001001001100100001100110110011011000101011000111100011101011111100010100010100111101010110111011110110000000101110011110110001111011011000001101010111100111111100010100001100101110101011010000001101110101011110111001011000011000010000100111111111010011110011000010110010110111101111001111000101110001101100010110011010101111100010110010010000000100010011111010000100101101110110010100101101010001111000000000001000110010110110110010001001110110111011001010011000101010000010111111001000000010000100001101010100010110111011000100000110011111101110010001010100101011011000001011111110111101111100111011010100100010000110000010101010001000110111101011000101010001010011000110101110010111011100000100101001000000100001110110101001011000001100110001000111001110101000010010010111111100101110110111100000111101101100111000100110010100111101100011011101011110111101100101001001001010100111101000000110001001011000110110111101010101011011011110010000111100000100001011110000000000010011101001100001110101101111100101011011101011111101110111110101110010110001011010111100000110001010100001010101101001011010010011100100100100011110101111011110001101101110010011011001001010100000000101101010000110010001001011110111111011100111101100011110011110000011000111010001000011001000100110000011001110000110111110001001100010101100110010010000011001000011010101011001100000000110100111010100110010010110100101101101111001111001101001010001010010111001101010000001010000101101000001000100001010101001001100110000101101101110010100010101000100100000000001000011010101101100100011011101010110011110101111110110110011100010111100011100010010100011100000111111101111100110101111100001001000101001011001000000010101010111011010011101111100001000100111101001010100010110011010101100011111011001011101010100111011011100100101001110000100000111010000001010011010110101010101111101101110000111011000010000010010110111010101110000111100011101000011110111010111011101110011100101101011101110000101011101010100000001100100100001110001110101101110000010111010001000011011110100001110001111101011110111010001111110100101001101111101101011101010000000010010000010010110001001110010101111111010001010101011000010000100011001111110000110000101000011001110111111101110110111001101111011110101101010011001101001110101010011110010010000000101100100110110010011001000010000101000101101010001000111000101100011101100111101010101011011010000111101110010111010110011100110101110011000111101100001010111100011101010100010011101101000001100100000100001100000101110000110110110110011101100101000101111001101001010101010010110010000101011101010101010011001101011101101010101001101100100101110001011000011100011111111010011110010010101000101010110001110101101010101010001111101001100101000110000101110110111011010001111001110101011100000000101101110101111100111111100101100100111000111001101011101001000010010100101110101011000010011010100110100010111100110111000101100111101110100100001001110111101010110001001011011001000001101000000111100110001110001110000000110010000010010001010111101010111100011111101101110001111011001010110110000010000101001111111001100000100001110001100101100111011010111101110111110011111000100111001000000001010001011010110001111110111110100010010001001110011011101100101010110100010101011110000010101101010001011000010010000101110101111110011010100010001110010001011000001100111000000110001111011100110010010000110111010001100100000101110111100010101110000100110010111101001011001111000101110110011000011101010101001001001010110111011000000111110111111011011001101000010001110101100001100100100011101010100010100001001100000110110000110000101111101101110011001010011111111010001100101010101001010111100100111101010001010110001101001001010101111111010010101011111111010000110100000001011000100010100010111010011111100010111101110110011001100011101110000100010010001001110000001110100110010101011101101010100001111111000011101000111011010011101010011000101101001000000010011001010000001101000001011111110000110101111100010110011001010100100000000100100100010100011100010110000101100011100100000100101000110000000110000101100101100100111001111001010110011110111100101001101010010101011110011100110101001011110100011111111110111100001000110111100010110010101011001011011110010000101010110000001111111010101111100101111011100100010000000010111000001001110100011101010010111010011010001111010101001010010010001110111110111111010000010111001111011000000000100001010101111001110010101001010110100110100101001011101011110011101010101011000110001100011110111000000011010111010111001010100001000110110001000111001100101100111101001110010111001101001011101010100001100010111000000111000100100101101011010110001010101111101011100000001010000001010110011000110101110010101100110101001101110100111000111000101101000000011111110101010001011010000111010011000100111111010001011100001011000101111000001000100001010011100010001101010000011001010111110101011101111100101011111110111111101100010100000001011011011101100101111101110101111011010110110111001100011111011101011111110100001100101010010000000111010111001111101111011101001001100100000010110100001100000110100010011100101110010011011000011100110011111100110000101111010001010101000111101001110000000101110001110011010101110001100101000110010100011001000101100011110010000011110000000110101100010010100101011100100000001111110100110100101111111100111011011000000001001001001011100001111000001100000000110000110111101011011101101101011000111111100010100010010111001110011101001011101111001100110010010110111100110100111110011110011110001100110010011001000010101110001001001001000010101011101110111011110110010001110010011111101001110010100000101010011101011111101101001010111111101101010100111001101011000110011011000100101010001011001001100100001010110101110100001000000111000110101100000111101101000000110000000100001111001000001100000101001000100110011001000001100110101010010000110000010000110011011101010100001110000110001001011110001001010011001100100111101011001101110010100101000110111000011100001101010011011100010001110010111100010001100001010000101000101111001001010110110100000001000111100001001111010111101101100101000011000111100010000010111001101101011011111001110100001010010100000111000010111110100111011010111110011101011101110100100101000111101010110100001110000011001101000101100000100110100110111110000101110011110111101011101001101010101000001001010010110100010111101011111000001001111001111010010100101110101010110110100010000101100001111011110111001101101111000101010110111010111011101110000100011011101101101011001001111100111101010010001001001111100111111000100001000101101000100100110001110000111000011111010110010010100111011000100000011101110110110000100010011010111001110111110001000111110000100110101000000001000111011101111101100010110110111100110101100011011110000001101101001111110001001111000011111110111101001001111100101010001100111101101000001010101011011111001100100001000110010101001110111011011011111010010110000110011000101100011100011011011010100100010010011100101101111001010011110001001100100101011001111000100011101110100000111001011001110100000000010011110100101111000001010001000000000110100111111011111000101111001111111000001101011100001000011110110100011011101011001001111111000100101011010010010111110001000110110111100001101011110110110011010100101101010000110001000101111010111110110000101000111010110001111110110101000110100001110010001110111111101001011110011011011001110011110100101101110000000111001110000000100101111001011111101011000010000011100000010111001110101110001111001011001011000010110001100000000000110001000011010001101011000110100010101100011111011110100000101110110011001101111101100001000101100101000011011101000001000000100000111100111011110011000000100100100101011001001010101100001111110101100100111001110000111101100011011111101100101011111000111001100010110100010101101111111010111010001000010010001011111101010111100111010110000011010010111100010011000010100000111001001001010110101000001110110101110101101101111010010110110000001000101011101110100110100010111001110100110110011010000110001101001101000011100001110110101100111010110011110101101101010010100110101001110000010101001110100010111111101010011001111000111110111100101000100001011100111110001111011000100011100000110011001111101110000001110000010100000101111011110001001011101010110110001111111001000110101011010001011110110010111101010110110110100110101011001111011110011011001011001001001010101011001111010011100111111010011100110111011001110110000110011100110001101001110100101010110100010010101010101100001100100001010000100111000100001101011101101110111110111010001100100000010010100101000100001001000111000111010010110100001011101111000010001111101101101010011111001011111000000000010101100010010000100111000101100101000101111010110100110011000111100110111010111110000001000000101101100010010111100111110011000010101010010010111111000001011000111011000101110110111101111011001110111010110010111001001101011010111000111100011110011000000101101001010001010000100010111100010011101001101000110000100011101111000101101110101101000111101010011001110111010000011101000111110101110101010000000110100010001000010010000111010101001001010001100001111010011101111011011101011010110001101111011110100001111011111111111000101001001111110100110111000101110110011110011001100000110101110100110111001100100010010000001111010101010101101111000011010011111111101100010000110111011110111111010000100000000001011010110000110110001110000000010001111010110000011111110000101011010101000100111100111001001100011010110000110110100010111110000010011011010110001110010001001000001100110101010001100110110110010110101110101011001110110011101101101110011011000111001000111011001101001110100101111110111111001001001001010110011101001111101101001101001001100110010000110111101001101110011010011001110010100001111011111101100111000101110110010101010001100100011111111011011100010110111110001101011001 +11100001110101001000010111000000011000001100101100010001100110000010100110101101100011011100011001001111001111010111110101011111011000011001100110010100100001111001110000101001111110011101100010010011101110010101000010101010110110001100000001110000000101111101011100101010011101000000110110011100000000110010110001110001001101111000010000110010100000011100101010011000101011011010011110110101110111001111001101101000110000011010101111011011101010111010110010011010010011111001100100101100101010010111110010001111101111101011100110001010111110110111001001101000101100101101001111011001011001011010101101101101000101101000010110000010110010110001001010011000001101100011000100101111111100111101010010011000010100011010101111111110101111110000010000010001011001101101111001111010110110001101010101001001101011100010011101000010100011111011101001110101100110001100100110001110011000101010001011001100010000001001011110010110101101110111110000010110001011111110111010111111101100000110101101111000010010100100000100000000110001100110011100011111111111111110011110010011011010101100011101001111010100110110010110010010000001101111101011100001011000100101110100001011111011000110100101011101010011110100001111101100010100011111011001100110010001101110111101100100111001011100011101000101101010111010000110010101000011111111110100101001100110110011000001100000111001101111000000000000101100000010001010111100011010111110111110110101110110101100100000010000001011000000000110110110110100100110001111101000011110010100010010100100100010011011110110111110101011101111011111101001011000110100010000101001101011101010010110000001111000000010100000000011011100010111011110011101011000111100010100000100101010101010000000101110010011101111100010000100111010100110101111000010001000101110100101011000000011000110110000100101111010110001100110111111100100111011101111001100011011111011001110110100110011100100110010110101101111011111100001001001001000000001010011111010111101100110100011010110001011011111001011111100001010101110100100010110100101000100101101100000000010111010001000101101101111100101110000000101011011000011000010101010111011001111100110000110011010011000000011010100110110000111101010100110101111010100110011010100000110111100111100101110101010000111011101100001101000000111001000010100101111100110000011001011101101101010011101100010011000000111011101111101101001111011101001100011010101010100000000000100000111010100011011110110010110111110000011100010110111100101111100001010011110100000100001011101010011100010000001110110101101011111010011111010110100111001111010110100001101110100010111110100000110001011101110110110011111101001101110010011101110111000011000111101011111000111111011111000111011001011010101000011110001000011111011101110010000010011111000110100100100110100100000001110110010000011011111010111001000101101111111110111011000011111101111101110101111101111001100011001011011000110110010101111001110000010011001101100110001000111101010011001110101000000101100010111101101000100111001001101010000101011000011100101000010000110001101000011000111100100110100010111100101101001110111000111100011000101101110001100011000001011001110100011110111011011100011011011001001001111010010101010001110110001011000000001111011111010000000110011000110000100110000001100101011000000011011100110011010011000011000001101010101011000101101100011111001010001010011111001010000101011001000011101100110110001001111110011100100001101110110110011001110101010010011100001011101001001010100000001100010110011101010101101101000000111010011010000001100011110100110011100100111110010011101011011101010001110011111100101110001000111011111100001100011010100011010100000101011001111100000111000101100111110000111110001010000000100011000110010011111110001100100100111110110101100000001010101010101100110001010011001001011100100110010110111010110010000101100101111001100011011011000011110010110001110110110111100111011011010111011101110010010101111000110011010011010001011101100011101001010010011000001000110001011010100101001001000110011110010010001000011010001100010010101000101001011110000010000111110010000110000100001011100001110011011101011000000100010001110110011100000111100110011000110111100000000110001100110101100011000101000010011100011000110100001001111111011001100100110000111000100010110001100110000001101100010100000000010100011100000010100001100001100111111010111011010111001001010111011101110011000000001111000100111000101111100110110000101000111101111101111011101111010011100011101100100100000100100000000111000010111001010100101100101010110110110010110111110001101101111011010111001010110101011010011110000111011001010011011110001001001010100001001110101001000111011010010110001110100010000100011011100100011101010010000000101110101011001000100100101010010110001110100101000000001100001000101110111010110111110001111010000000010011110000010001011010110010100010100011001101011111101101001000100011101010110011101100010011001001011111001101011000000101110110011111100011000000000010011101100110111011001011001001111111011101011111000010101110001111110011010100110111110110011101110100010101010101---------------------0100011000010011010111001101010011000000101011100000010111110011001101100011001101101001001000011100010010111101011010110111110100000010100100011111100101010010110101101100010001111011000100010100111000011111011110001000110101100101101001111011000101011011001001110010011100000010001010111010010011011100110110110001100111100010111010010110111101010111101010110001100100100110000011101110111000110110110000100011110011101011110101001011001001010001010001110101000010101111111110010111111111111101001110011010110100110111001111101011100110111011000011101110110010110011010000111001100011010110110110001001111011001111110110110011111001001001001110100100010001000000110110000111000011111001100111101011000100010101101000010101001101110111100010011100101110101001111110110000011111111101010100010000001110001100001100111000001100000110010000001011111000010111010101110101101111010011011000010010010011001111011100111100110101101100000110000000010011011110101011010001110110010000100011010100101110110100100000111000111010011001111110000100011101010001011000000101000001010011100010001110101101001011100001111010011010000111010000111110000010110111101110001111001010100111100010011101101100010011110110100001110011100111100110000101000111111001100111100010011010000111000100010110101000110101010010101110001101011011000001001000110001101111110110011101111011100011011100000100001111001001110110111010100000111100100000010010011111001010011101110010100110001000010101000101001010100001011010110011111001001100010100100111101101011100101011110011110110010100111111011100001010000100111010111111110010110110000010001000111010000000100000011100011001001110011001110111011001010101001000100111110010011101110000010101111111011101000101110110011010100000100111110101110100100110011101011001011001111111100001010010010100110001011111100110010010101011010111111110000100111111100001011001001011000000011010110011001001011011100110111010001001000001111111010100110011110001000111011000010000100111110100111100100110001101100111111010010010111000000011110111101101011100010010001000111101000000101110100110101101101010100001100111101100101100111111010000001000111001001011100100110010111100111100001111001001001000111110011100101011100110111101010111010000111110101000110101110100011100000010101000101100100110011010010110011000001011010111110010001011101100101010100110111001001011011100000110110100011110011000101011111110011001101010000101110010110100101010000110111001100101010000011000000110111111000101110010101111011100101111111000101001001001100011010010000110111111111010000111001101100011100110110110110011101000100110010011100010011100000011111000001010101100010110011011110100000010100000011100110101100111100010111110110010010100010101101100111111111001110110111111011010100100101001001000011110111001000010110000111011000101010100010100010000100101000010111101100011010111010011000011110011111010010100011001110011001000011010110011000110010001001010001100001100011001001110100110101111010101001111100011000001101111010100010100001001111101011000011011011111001110100100011100011011101001111110110010010000110000011101010000111010010010110101010101011000100110110000010001101010001011011000011101010100001110100110010101100001011100001000001101010111000001101101011000000110001110001111010110101001111110011100101011011010101100011100011011111011001001101111010110111111110101000100110110111011110001000000011111101111010110000101101101010110101100110000111010101101001101111101000000010000101011010001011101101001101000010100100110100110101001000111010000011110010111000101110100010110011100101001001000100000110100110000101100011000011001010010110111000011110001010100111000010001000011011010101010010010001001101100000110010000110001001111010011100110011011001010001101001000110010101011111011111011011011000100101101011011010000000100110110000101010010001011111111111000111010111110001010100111101111010111011101111001000000001011101111001011001001011111100000100110001100100011100011110001100000110100011101000101101110011000001011111101110100010101011100000110011101100011001001101101101000011100000001100101111101001101100000101100110111101001100111001000110100010010001101001111000001101110001110101001011000110011110111010001010111111110110101111000110111011000100000100001101110011101111111001110101101100100001010110111111001110101001001011101101110010101000100011100000100011001110011110110010011000101101101100101011111111110101110110100101100000100001001110100110111110000110000100101111000000101010100001011000110100011010000000001010100001010101100110110010100101010111000010100000010100000001000110111000110101110101100100010010010010101000000010110011101111000001000010111110100000110110100001000100010011000001000110001101001100101101010000001011010101001101010111111110010101000000000011100010000100000111000101110011100010011111110000011010001011110101101010101010110111101010111001101001011110101000100000011100101010011011110001101100111101001111110000011010111000101000001111111101110001110011101100100110010100011010001011110000110111110000100110000011101111100011011101000011111000000111011010100101111010111001010000100011110000111010100001001101001101100100000011101110100011101000110010111000010001000001000110101110001110000100101000111111000101001011111001100101111110000010111111001010001111010001000010001010001000011101101111110010110101000010110000111110001110111011110110000010101010110101010001011000001110100110000110101100100000100110101000000110011000110110100001111010111111001000100001011100110010100011100101000010100000110010110101111111010000011110000100001110000110001001110100110000010100101000100100110111001100100000010001000100100110110100111011010000101001011110001010100100011011100010000101001001101011111101000010110000110111111110110110010100000000110001011100101100001001000101111011010100010110001111101110101111000011010110001000101010110001110000110110110100101011111111110000111010000111110101011111101001011101001000000100001110000111011001010000001101001000100001010010100100010111010001101001000101100000001000011110100000111011110111110000111011110110010010010000001001110101111001010110101011101001001111000100111101011010101000100111100000101111011010000100000101101000001000101000100100001011001000011000010110000110000111001110111101000011001101101101111011000000100011101000110100001000000101000000011010001001001111000000111101011000111010101101000111110011001001110111010011000111100011011111101110011001001100011011001010000111110100101111001110010100101010000011100111001111001111100000100101101101011010010101011111100011011110101100011110110000011101010100100100110001110111011101000010011100011100010010010111101111011001000110010101000011101100101010000001001011011011110111011111100001111011001110010100011101011111110100111100000000000001000100010101111001000111100111001100111101100000010101100111111000100100011111100100000011001100110000011110001001111111101110110000110011100110011000101010100110101000111011111100100111001000100110011101111111001001011100000011111000000011000111100110110111101001011011111000001110010001010100011011011101100011001010100101011101101101001110001101000011110110111110100111000110100011011010111001011001100010001001110010001111110111001011101100110001100110100100001000110001001011000111111011010011100111010110000101000010000100011001100001000100000100001111011110011001111101101001100111001111000100110110001110010000101001000011000001010101110011000010110111101010110000110010101101000110100011010111010110000010111101011101101011100111110100001001011011101001011101100100000111010011000001010100111011100010011001100001100010010111100101011010100010010010001111111101111101100001011111100100001100100001111111010100001111010011000101111000001000100010100101100110010111110001011000100111100101101011011110111111011011111111101011000001001011101011001001000001001001100011100101110101110001001100111000100101101111100110001001101000111011111001001010010001001101011011010101010110011000001110100100010011011110110001111111010110000100110000111110011011110110110111110000011010000000111011010110101000111111001000000000010110011010010110110101011010001000000011101110000111111011010110100001001100100001111001110100100000111100011100100011010100000001110100011110101110011110110011010011010011101100010110100011011110100011010000000110001010000100000010001001010110101000010100101101000000101101101110100100101011101010011001101000110011001100001001100011101010111100101111101010000110100010100010011110001001111110000100011010100011011011111111101111010101110100011001110100100100011001101001001010111010101011110011000001001011011010100010010111000001011001111101110100001111101100101000111001000011010010101110001111000100100010010101001101100010010011011110010011010000110000001011110100000101001100100111001011101111100000101100111111111100010101001100110000101110000001111100110001000100111111000101101000101111010010100100000011010000100011010100100111001010111101111010000100101011110100000110100001001001010001100111000101001011110100010100111101110000010000111010011000111101011110000100000110101010010110001011101001101101001010000010001001000011110001010001111110100010011100011101010100111011111110110100111100101110110111111101110011111001111011100000000011111111000110111111100001111001010011110110110101011000001111100101101001100011111110010111001111111001010010000011011111011010010101101111111010011100010001001011110110000111000101110000000101000100100100011010011010011110000001111001101000110110011101110100011011011101100010111100011011101001011101110000110111010011010011011110101110110000011100100011011000001101011011011111000110101110000101100110000011010001111011001010101100001100110000000100110010110001000010000110011110100011011000101111010100110101011100001001110001010011011010001000110111000101011010001010011111101101010011011011101111101011110001100010110000011000100110011011010110000010010101110001111001110011011010110011010011110110011110001100100100111100101010001011110111100011000011110110111100110101111010101011010011101010110101111010100110101011011110110100100010100001000101101101010101101001100011110001100100101001110010111111111000010010000110000001000001010101000111101101110101011000110111001110011101101110111101010110111001011111000011110101010111111111010010100111001100011000010000001010100100111000100001110110111110111100110110010000100101000111000100010100111000001100100111000101110000100011001001000001000000000000111010100111101111110101101100001010111010010111111011111100001011111010110001100010000010101011100000010100000101011101001110011001001001100000100010111000101011010100011111101100110011011100010010011001100111011101100000001000110101010101011001100010001010110001110001010110110111101011101101110011011011110001010111001110100010100011000011010010100100001011001111000001000100100111100001010110100010100101001010111101010101110110111000110010100101010111110100000011001111110001101111101111010001001011010001110000000110000011000101001010101110101110100000010110010111110010101011010111100110010111111101001111011111101101111010110010100010110110010010110110110110100010100010110100100000101001111111111101110001010110110110110000100100000000100001011110100111010011110110001000100101010010111011110110010111101100101011111100011001011101101000001011110100100000011011001010101000100110101000000100111000000000011110000000010011001100010100111011010010001100011011101011011100010100001100111100000101011011000110111100101101100010110001100001000100000110100001101001000110011110010011000100110010011110111001100001000001011111101001100100010101100011011111000010111000000000111101011001111111100111010000001001111110101010111000101000110100010011100000111101000001100101010001000 +11001101010100001000111111101010100001011001100010011110111101001011011100010001101110101001100011010111101000011001110011001001011000010010011011011101111111101010001011110011001000110101000010100110100010010010100011001110010010000111101101010000000011111001010101001011011111000100100011110110011011110000000110110010010101101100001000001110101001011101000001110011011101011111000011001011010101010100000101111110101111111101110100110110110011111011110111010001000111110011011010111000011000110101000100110100110101110101101110110010111000101111100001000010110110100000110001010101011111110110001110110100110000100100000110000111110001011101001001100101001101010100100011101000101011111010011111101110010101100001111110101101001001101100110010101100110011110011011011101011111110010001000101111111100000001110111111000010111001000101010111110001100001110011111110001011110000010110000011100000111111000111100101100011101110101001101111110111000101011110101111111011011010010101100000111011000001011000000010010011111101101011111001100110110111111011000001101100010101110011001001001111110000111000100101011111011101011100001010001111100101000110011110000000011110010101001000100000000011100110110010001010011111010010011111001011010011101111011101010000001111010100011010011001101000000101111011000001100010101101000101011100110101101111011111101010000000010010110010011100011010100000101001001110011110000000101100000101010111000100010100100010110110001110011010101010101100001111000111000000000011100100110000000111101000100011010011101010100000001001000011101111010101010001010111011111101000101001000001000101110011110001111011001011000111000011011010001010111101010110001111011110011101010100101010110000001011110111001111010001010100101110111000001000110011111010111000101111010000111000111101011011111111000101010000011101100111111111010011100011001111100011001101100100101100010010110101001100100001111010010110111000110101011101000001110001111110001111000011000000110001111110000110000111110111100000001110110101100100111010011110111000100111111100011010000111101100010100110000011001010111101001010001110011110011001011001101001100100100000100100010101100100110111000111011010110011011010001010100000101010011000010001001000011101000010010000001011001111100010101011101000110010110111100011110101100010001101000100100011011001010000100101000010011111000111110100111110001010011010001010110110110100010110100101101001100100000010011011001010010001010000011101101010000001110111001110010011001100001011111011111111011000001011111010001111010111100100011100111001110100111000011010111101111110010101101100000000110110100110100101011000111110010110000111110001111001100011000011000001101100111001011000111011000001011001101100101111111111111101011100001001000011011110100101100001111011101110110110101011001101111100110101000010101000100001100001001011001111011010001010010000010001000101100001000100011101111110011000111110000111100100101000110001101011011001001001010010100110011011000101111000111011111111101000101111000010101110010001100110000110111111000100010001000011111011001010100100001101010010011100010100111101000110100111010000101001010011110111100100101100101111011001111000000001000010101111111101110010000101100000000111110001110111101100101001010100010001001101000001000001110010101110001101001101001000011011000100001011000111010101011111011100000001001001001011010011010111111000011100010100010100111011000111010100010110001111011010011011100000100000010011111100101000100010010101001100001011101110001101011100010110011110011111111101111011010000001110001000110111010001010110101100011110000010001001011100010100111011001110001000010101000010111001000010101010110011011010100010100010011001001010011000011110010000010111000100000111111000001000001011010111000001100110011110010011010010110111000010011010001011001110100000000011001001011011100010110101100111010100100101011001100000110010110000000000010111000111010001110011000010100101100011110000010010100000111010111100111111110100100111111010110001011111100000110101110111111000101111100011111101110001111011110110010011010100110101110101110001110010011110101011001111111111001110010110111100110110101111000100011011111100010001000101100011111110101000110001100000110110001100111111011100000101101000101000000010100100111001011011000010001111000011110111110010100100110011100000101011101001011011010000110111010010001010001100110000001101101110000010100110111100111100101101010111000100111100100111111100111000100011111001110001010001111011110110101000011101010101110100101101010110110000010110110100101010000110010011000011110111101001101100000110000100101100001011000111000010001001110100110100111111001101101011111101001101110000110011111110101011011111101001100000110011010010101110001110010110000010111111000110011010000010000011111111111000100011011111000100011010110111011101111100111100011111101110001010000010100011101110110100011011001111000110011111010111101100001101001110100111101001101100110101100010000111011000111101101100100111110011000100011010010111010101110110010001010100110000010101100101111001---------------------0100100000010001110101111110001100010110010110000001100101111101001101011111110011111100010110100000000111101011111111111111110111101101001000110001100110001100001110001011110010111110011100101000011111110100001000011111101000000000110111110001001000011000111010010010101111110101000000111100000100011111101000101101111011101010110010110110000111011001011000010001001110010001011100011010110111001110000111100001000111100010000111000010111000111001110000111100100011100011110011101110111011001000100001101110010000010000111000001111011110011101111101111001100101101011001101101111100110110101000001001000000001000110101001101100110000110100000111101001010101110110000100111010110111011101100100110010001111010010000101100000111000011110010010000011001101111011101011110110101100110011000011000100001000010000010111010001100001110101101100111000001011100111110000010010001001010010011111101000111001011011010111000001010001001110111000110100000111110011010000100111100111110101010011011110101100101011100001010111110101101000101110001010010001010110010110101000000010111100011101011001000001111010101100100001010011101000111001110011101110101101011000011000011001111111001001111000110010110000100110000100100101110110101011001110101001000110110101100110110110110111010110100001001110111011010101001100111101011100000111011010101111001110101010010011101100100110010010000000110001000110101010111010011000010110100000111011011011111101000101111111110010110111010001110000011011001111010000101001111011010001011000110101011100110111001111001011101000111101100101001110011100001100000010011110111101010010101111010101010101101100010110111000110110011101101010011110011110010100101010101100111000000100001100000100111110010011000001011011101001001111010101100111000000101101110001101011000100110111010100101011001101000100110000101101101000001010000011111100001010101001001111010001010011011101100001010111111110110011000110000001001011011101001010011100010010001100111011111011001011111101010101110011111100101110010000000111111101000101010101011011100111010001011110000001111001100010010001100100101111011110001110011101000100101100000010100101111010010010100000000001010111100101111100010001010000011001001111110111000111010000011101111110100110101100110010010001110110111011111011011100100111111101101110110110100100010010111000111010101010111111111101100010111111110010110110110110010001101000000101000100010101110010111000110111010110110000000101000110110100000010011111110011010100100100010001100100001110011101000101111001111110100011001110101000010100111000011011000000110010001011011011001000110100000011100010100001001010010100000011011100110100011001100010100000000010010001110000110111101011011011000001100101111001010101010010110111110110100001101000001010111000111110110010000101111101001010111111011110010110011000110100010000111110011110111000011000101111001101010010011110011101011011100110111111001101000101000101101101101010000110011111100100110010110100101011010110111010011111001110111011010100101111110001011111000000100110111101011000010000101000000000110000011001011111000111001100100110110010100011101100100100000101011001110010000011001010011011110000000000110000111100111011001111101110001101100100001101010100011001001011001000111011111000100110001101110010101110011100011100011001001011110010001011110110011101011100010011101100100000010011110011001000011111010101111100011111110001101100110100011111111100010101100001011011101011100001010001101011101000001011000101001100001110111101101000000010010111100001010111110010010100000100111101101100010011110100001011110000011011001111010000100100101010101001111110101101110011110010111101000100010010100101101100011100000110100010101000111110000010100001010010110011000001000100111111001111100100011101011111011001100101000000100011001011101111000001011111011011001110100101111110001101000100010111110011011110011000110011110101101101110101100000000010111101101111100110000111101110010011011001110010001110100101000010000000000010100101010110101001100100110001100101101111100101010011010010100010001111100010001110111110010000010010111011001000011001001111000100011110000111010100011001000100100001000000101011111010101000101010111011100010110000010100111110011011111100100100110110100100001000011100100000110111001110110000000101100001010101101100000010000101001001110011010001001111110100000100110110000010001110100010001001110001001001100101100000011110010010101010101000100010001110001110100011000110110101100110001000111010010010101010001001111110011111011100011100010110101101111010010001010001111111011010111000011110011001100111000011010001100011001001110101101101100000110000000010111001110000100010000001101000011110110011000100001010110001011110111101100111100000101111000001010011001011100111010101011001111111110011110110101011100001010100110001011000111010101100011000011111111011001000011110111111101101111011011001111000000111101100000010111100011110110011001101100000010010101011111111111110001001010000111100101000111011100000001000100111110100111101100110000000010000101000000101011001100100010011011101010101011010100100111101110111100011000110001000010011001001101111100010010111000001111111111010000001110000100100110101110010101011010110011100011110011011111101011001001111000001010000110110100001010101000110000001011010011011100010110110010100001110010100110000010011110001110010000101010101111000000111011001001001101101001010101011000110000110101101000101110101000111100110001010111011000110011101000011111011100100001111101101001010000011001001000101000110011000000000010011011010000011000100000000100001101001000111000111111010001100000011000110001110100000111001000001100000111010101100010000010011000000010001001000110010000101100110010010100101010100011111001011000110011111000001100000010101110010001100001010010110001001111010011100101001001010110010111111001100101111100010001111100011001101000010110111000010001001110001110010000110000101101000110111011001010100111110011101010111001000110011000110111100010000101111000110101011000101100000001100000111000001111111101101111111111110000100011000001011010111111011011110000000101010111000001111100001100111100010100100010111111010010011001010100101110101111011100011100111100100000110011000111111100101100101111001010101110100110111011000110111001011110010100010000110010110100111000100101010100110000001100010100001100101111011100011011001110011100110101010111010001001000101011000110100111101000101111101111011111111100101010111001010110111011000010110011101000100100101011011100001011001010100100100011111111110000100000000110101111110110000110100000000001100110101110111110101000110100110111001101000011110011110011110011101000100110101111100010010100010100000011100000111000110011001001010001101100000001110000000000000101011110001111010101101000000111011101100010101101110110110011111010011111000010001010010000101010011011101001111111001011101000011010000001001100101001100100000000111011000010001101101110010110101000110111100001001101000111000101100110110100100110001000011101000101000001011001011111111110010011000111011011110100000001101001101011100011011000011011110010000001101000011101000010011001110110101010011001011100101100010001101111101011100111101011001110001100101000000100010100101111111001101010001100001101001010111010100000110111101100010110001110010001100100001010011000110101000000011101011111110111000101100000101000000111100010110110000010011001111110100110110110011101110111010000011110011111111110011110111101101010101100111000110010011110010011000100001101011110011000111101100101001010001011011010010100100101000101111110110111001001001110000001000111010001111110001001001011011100110001000100101010000010111100010000010110101101110111010000011100101011011101010111010010011110000011011010111011000110111110111100010001111101101011010110101111101001001001110000111111110011111011110110110001000000010001001100010101000011110101111010100010011001110111000100101011110001011011100000100100100011010000011111100011001100001011001011100101101111111000001000011000100110001011000010000101011001000010100100100101101010111110111101110101101010101000000001101001011000001111101110010000000001001010010000000001111000100000000101101001010100111110001101100001010000010011011100100011110010001011101101101111001010110100010001000100001000110100000001011001000011010100100001000100110000010111111001011011011101000011010011100010000101110111100010101101111010001101011011111001011010011011100000000010011100101000001010111101111001101100010001101111111010111011111001110101011101011011111011101000110010011011000001001110110100110100001000011111000010011110111000100100101001111111110010101101010100011001001010010111001000011100000011110110010110101010111110000100111111000101100110011111110100100111101110010011010000001100100001010010111110001100001101100001011010010000100110101000011011011010101101010111111111111000111111001001110001110111110010100110011000000111111000100100001000110001010011001000010001110001110000100001011111010100110010111101010100101110010100000010110001101101110010001111010010101110001111010101011000111110001000110110110011011110011110110100000110001100111001001010010100101001100010101110111011110110101000111101100110011100110011001110100011010001000001110110110001000011011101001000100101101110111110001000001110001011100110100000010111001100001110000000111011111010000010010000101110100111110010111111111111100010001011101110110000000111101000011010100101100101011011100101001011111001101000000101100010000100001000011101111000010101100101100010001001001001011100010110101011101110011000010000001100001001010110111001001100000110100111010001000010101111110110101101111111111101101001011000100111111101111001110001101010011111011100011011101111001110101000110101111001101111011101000001101001110010001111001101100110110110101001100100110100011011110000001001001011110011110100110010101110001001101100100011011001110101100101011000001110110110010001110010111000010010000101111000110001010011101000000011011110101010001000111111111010101010110111101101110010001110001000000011010001111000000110100111101001001010101011110101000001111001100101100011001010110110111000101111000100111111100100001010111100011111110110110100010100111110111100001100001000010000001111110010100000001000110111110000010000100100101101101111100100101010011010100010111000000001100100001101110101011111101010010000000100111001001110100011110000001011111110000011101101111100001010111100001100011110100001111000010010110000110000110111000101101000111010111111010101110111111110001100000010110000110010101001100110010100101110111101111000100111101010111010110100111000100000101001011111011001010000111011110010001000111100111010110111110111111001001000001100011010000101000110100001011101110001111101001111100110011001011001001111111111010100101000001010001100001110111011111100010010111011011101001001011101001100110000111011100111001101110000010000001101101011001001110110000011011100110000011010100001100010100111101010101001101000000000000110011001110000111110001110101001100000001000100101110011000000111101111000100100010100000011011001110011010111111101111101111110000010011011011110001110000001101010101001111110011110000001011000000101001100000110111110101011010110101000010000100011111011111011010001110000010010001110011000010010001111001100010011001001101101111110111101000010110101010011111000111110001000000111011001011001110001100111111000111111001100110011110010100110000101011010100010001001000011011011101010110011100001011001101010001110001100011011011011100001011101001000110101011111011011101111110011110110100111000010101110101111111110000010111101000000100101100111101111010111010000100001010100110111111001101001101100011101011110110101011011101110111010110001011110101 +10010111110100011011001010101001011100101110001001100111100101101100111010000101001001010101011110100010000000101101011100110110100100111100011111101111011010010111101101010100111001111010001010000001011001001011110000000111101000001011001111111010111011001100111001010100101011001001001010011000101110011110111000101110101010011110111101011111000001000010111000011011010111111010111100111111110000100001000010000001100111100001111011111001010000000110011000011011000000101001000000110110001010100010001111000001101001010111100001000110000110111010110010110001010011010010010011111100101011111111111000111010100100111110000110011111110000011011010011110000101101010001011010011001111110001001100010100000111011100111000001001101001011011101110010001111110111110101110111111001000110000011001010111010111100011101110110010101110000100100010100101001101100011110101001111111000010011101100100001001001110110010101101101110010100100101011010101010111011010000001111111010000001000100111110011001101010111100010010111111011111011110101000101001111110110000111110101011100110010110000000011100111010001111100101111011101000110011111110010101000000010010000111111100101101000110111000110010001101011001011001100110101101001011111101101010011110000010101100101100010011011011111101100111111101101100000000110101000010101011001111010001111011110110100001100111001111000010011001000000000000010100011111000100011010010011111000110001000010101100100001100000101001010011110111010100000111011100001110101000010001010001111101010101000001001001010101110001010000111000101110100010000000110001110010100101011010101010111000100011101000101101101110110110000101001000111110100100010101111010011010001001001111011100111011110101110101111100011011110011001111100100111011011001001100000000000001010111001010110011100011110000001011100110101010100100101010010100110100111100011010100011000100000000011011011000111011100001001011110111000001101110111011101001111100101011100010100100111001100111000000001010100001000010010001011111010000110101001001011111001010111110101100011100011101101011111001111011110010101001001100101010001000011001001001000101101110111110100010100111101000001111110001011101010000010010010111000010111111011101011101101011110010001101111010001110010110110100101101101111101001010000001010011010111100011101110000000000001111110001100001110001000000111100010111110010010111111010010001100101011101001101100100110010000110110101011100001001110001110000110011001111101111110010110101010111010011010110101000000110001111011001111011010111011110110100000010011101100110000101100011111101110000100000010100010010110111110110101100111101001110100111110110011100100101101110000100101001000101111001110001000111110101100111111000101111110110001110001010110011010011111111000100000010011101011010000001111010101011110011011111011000001011110111110000101111100110111110100001100010000110000011101000011110110100101010111111111100000010001110001110100101110110000101110110100111011101010011110000011000010001000111100010000101100001010010110010100110111110011011110101010111110110010110100101111000001011100111010111101011011011000010100111000101000101101001111010100001000110001001110011111110111010110101100111100111110001101010001010110111011100001100000101000100001000000011000110100110000100010011011110100100101001001010111010000110001111110101010110010110010001001001110110101110100010011011001000110000010011111101000001100010001111010110101110100110100011001010001111011111011100110001111111000101000111011110101100110010101100101010000100111101101010110111110110101000000101000110111010001001101010001100011111011000011101110011110100011011101101010000110001010000111010110001010001100100100111100101010000111010110101000011100000011101101111011010101001011011101110101011010010010110001111010000101101011110100111110101101011111010100010010100110110000001100011100101011111010110011110111100010110111000000101011111110011011011011111010010110000100000000010101100011011011010001101011001101101011010000000010001100011001100011100000100000101100111110101100000001010100011000101111010101101100110011110000101100110101101010110110111011001000000000011001001110010011110101100010010100110111111000011011000110110100110110101111001001100101100011011101100100000110101100101010000100010111111010101010110100111100100101001000011011011001001010100100000110100111111110011000110000111000100000110001011000011011111101011101011001110010101100001110111011111000010101010100011000011000110110011101000001010100011010100100010100001111011101010001111110000100111001101111011111001000110101111010001000111000110000011010011101100100010101000111011001110101000100110001010101100101100100010001011111100101111000010100101010110001101000001001111100111110101010101101010100100011011000000011001010001011100010100101110010110001110000011110110111011000001110010101110001111000110001010101100011000010101000010100001111001000011011011011010100110110000000101011010101000110101010000101000101010101001010110010010110010011110001100010001100110001101000011100011111110100000100001110011000011100110101100011000111---------------------0010010110010101010111100011001000010011110100000110011000010010000111000111101111101110000011011001110101011110100001011101110111100010001100100110010011101000011101001111001000001010111000111001000010100011101111101010111110100111001110011000011000001001000111010010010100101110111001100011100010000101100011111001000001111001111000011101011000110000000001010001101111110001010101001011110010101010001011110000110001101110000010110110101100111001111101111010101101010011001110100000000111000111010000110011010101001110111100010100011011111111110011011101000000110000110100001011001001011011100010000110001000001100101101011010010000111010110001111101111010001111011101010000010011100000010001110001110010110000000000101001100100100100110011110001111101111000011011001110101010011111010011010110001011011001101101111100110000101000101111101100110010001011010001110010110001000011100000000011111011100010110101110111001001011000100101101000000010001011101001100000100100000001101101010000000111011111001111000000101110001110100000000011101101011000011111111001101110010110010110011101101111010001010001111000001001111010101000111000111001100101111101101000111101001111001110001101100101000001101000100101101010011001110011110001000010000000100011100110110110000101110011111001001010001101101100000110110110110100110001110100011011110001010010111011110100111111111011101000000101010010100111100000011110000110110100010010011110110011100110000001101010000000110110000011011010011101101100110001100010001111011100010101100101101001011010001100011011011101010001011011011010110000001011101000000111001101000000110101000101100111100000101000111110000000000011010101100111011010001010101001100001110000100000010110100111100100001001101011011001000000111100010100100010011111110100101101001000100100100000100111100110110111101110100011101111110010011110111111111010101010001001001100100000000001111001100110100000010100001011101011100011111010010001000100110010100110011000110100110110100011100111000100000000111010011011011110101000100001110000000101011101000000100100011111100100100011001100110101000101011001100001000011100000000101111001100001110011001011110010010000110001011111101010000100000010011111101010100011010000000011000001000100011110010000000100100010110101001111000110101100011011100110001000111101010111111100011010001010110100000111010011010111101001110111011011001100111100111101101011011110110100111010000110110111011111011001011101111011000001110110001101111010111011101001000011110111110100010110110101111011101111011001101011110111110000111110111011010111001111100101001001100110110000010010110010010000100001111110000100000110001000011110000010101000001100010001111010000000101010111111010001000011010010011111100100101101101010011111111011110001110010110101100000100100110011110000111110010011100101000100010101110000100001101011001100110110000100011010110001010101111000100011101001100101001000000110111011000001000010011111010101010010000111000101101111000001011000000010010101100101010011111100010101101100001001011101010110111100110011010000010100011010100101000100111010011001000101111000110011011110001100010000001011010011011000100001101110000110001010111011101110110001011001000011010111101010101010111010010011010000110010000111110110111111111110101110101001000100000101111011100011110101111001101110010000001001110101001100100100101010111011011010111001101100101110111110101000111100011111010010110001000101100100100001100001110010100100000100001000001001000111100100101100100111110011100010010101111001000111110110000011011000001101100111010001010110010100001010101100011011011011011100010101001011000101010100110110010101011110001010011000111110000010111110110010010110000100110000001101000011001011010000010011000001011010000101101010100101001011111010011011111000101100101110110000000110011110111000100110111001001101111000000111001111101000000100100111000011101011011000001001011000101001000101111000111001101011001111001100010001000110010010101100011011110100010101001010000001010001101111111110100110001000000111000010000110000110100010101000011001011010001010100010010011101101100011000000101100001010101000001001010101000101101111010110010110000000100110011010110101101011111110010110100101011010011010000011011000011110001001100011001100001101000011110010110111011010011110101010010001011010001100001110011111010100000110110111110001101110101011011001001110011111101000101010111110001001110110001110000010111101001011010100101000000001110111111010110101001110000110000001100110010000110100110111110000100100110010011110110010010101001100000010110011001101011001100001011101010001111100000111001001010101001001100100000100110100001101101010111001011100001011000001111011000001110011100111011001000010101011001001101011101001011100001111011001100000110001000000001101100010011001001011010000110111000101001001111101101100000111000110000000000101111001011000101010011100011110001111010001100111101010100001001000001001001101111010101110110010100110011011011110011110111011101110101101010010100000101100100001011100001010111000001000001010101100101101000000100010101110101000000110100000100000111001100001010011101101110111101100001011101011111110110101000100001101110000000101011000101101010111101100000001001010110001100011010010110100001001100001101110000000111111111001101010100101100101101100011011001010000001001100100110111000011011000001100000101100010011100000011011000000111100110110111001010110001100011111010101011110111111111111001101111101010100100010010100001001011111111011001110110011101010010100001011110011001100101001111001100111001010001101011101001100111111111000011000110100111010110111011011000110101100000100101011000100000110001111000001001110100111010110001000010111111100110100011100100000100110011110001111100010011001001011100100111001001010100010010101111110100011100101001011011100011010100010001101111100000111011101010011010000100001110000101001010111001011101011101011010011101010000000101010010101010010000110011110110000100110111110100000000101100000101101011111001010110000001111100110001000101110100110011110010111111011100100101111111011010001110100010111001101101011100011100110100111011000110000010111101111010000110011000110111000110111111010111101111100100000001000100000010011001111101111101011101000001100111101101001111100110011110000101111011101000000011111100001101110000110010010111011010110001101101101111000110100111000010100101000011010001100001100001011010010111000101000010110100011011010001011011001010101010011101110111011111001111110111101001101011101110101000010001001010101110111010001100010100010011101011001100000100011000110100010100100001101010011001110101000011110010111101000110110001011000100000000000001101100010111001001111001000100000011111000011111001011001011010001000001011000111001001110111011101100000110011011100011111101010011001101011111000100001000000111011001111001101000111100000010100101101101000101010100100100001011001010111010000111110111000101010101110110111010101011101100001000101110111001110101010101101001010100001010100110100001100101101101000100100100000111100000011011100001011001101111110011100010111110101010001001111010100001010110011000011101001010101100110010011001001000101111000110101100100111000100010011111100111111100011001101100111010001010011110001111011010001101110000001001101110011110011011110111011001100111110001010110010000100011010001101100010011100011011110010000111101000100111111101111110001010111000000011001011000110000100001111100100000011101110110101110101111011000010001010110001000110011100011010010001000001001011001111011101011001110111101110111110111001110010101101111010011001000011000000101110111111100100101101110100101111100101011010111110110010011100100111000110110010011100111011011010011110100101001111011111001100000010111010010110110101001100011001010001001011011111111101011000100111001100011000010000001110110111110101011100010011001011100101101011010010101010111100001110000011101100110000110110110101100100101110010001011100101010100000111111000110000110001010010110010110110011111000001111010001101111111101001001000100110100011000001111010011010100101000100010101101000111000110010100011000010000100110010001000010111011001101100100011100001100100111001101001001001011011000010011110100010110111011110100111101001110011110010011011111000111011101100011110100110101101101001101001001110101001000110000100101011101000000110011011101011001101100100111010010010001010000100010101100101011111000001001001011001001110001111001100100100111001000001011100000111100110101001001100110001010000111010010110011011100111000111100111110100101100101110001100001010010110011111011111110000100101111100101010111111111000111011010101110110100111101011011000110101110100101111111000001100011010101001111011100010100100001100010011010110101110010100010111101110100100110011011011101000010001100110110100111001010001010001101010101000001111111000001011011111111111110010011001010101011010010110000000001010101111101101010011000011011110110100101001101011011001011010110011111001001100111111101010101111011110010111000011011000110101011100011000011011010100010101100011000001001111100011011110110110110010011100111111011001011001101000101110011010110001110011101011000011111101100111100000100000101101001101111010001001101000010100101101100010101111011011111010011111100010110000000000001110100101011101011000001100110011111100010101011010010111001010011100001000111110001100011001001110001011010100010001100001010100111110100010101110011111110011010101101000000011110101010111011100000010101011100101100010010110101011101101111101111011101101010000001110011110101010010110110001001001111011010111101010011110010110101111010001100010101011010100100111001101001111001101101001111010010100110111101000000011000001000011111111010100010000100000000101101010100110000100100100100000011001100010011010101101110000001100000100011011011001101010001010011100000101001000001111011110101100000110100010111001111001011001111010001110100001111001110011001110010110000110101100110100111001101110111011000100100000001001101101010000111000010000010010001001010101110001011101100001011101101011111111111111110101111100001000110110101011111010101100001000100110001111001110110000000010011101001100011000100100010011100110010111110101110000000101110100001110111001000010011110111001001110111101000001111110100001010010101000011100101100010001010001001011110010100000000101110101011110010010110100111101110000110100110110001110101000011011001101010111001000110110000110000011000001110010001001101000111000011111101111111110010100001111110001011011111001111100010010000010110110110001100101010110110111110000010001110111101000000101110010110001111010110111101001010101011011101100100110101101110110010011000111101001110101100011011010011100100111101101011001001001110001101111000010110000100111000010000001101111110111100101011011001000010011101000011100000101000101110011110101110100011100110100011001011011110001110011100100101001000011011111110100101110111001001101100110101010100000100001110001010101101001000010011111110101101110010010100000111101000110001001110110011010001010000001100011000001110110100001011011011101011111010011111100110111101101000000010011100111000110010110001011000111110100001000000010111101011110101001000011001000100011101000100110001000001111011101010110000011101011000111011101111010110000011111000110001000011110001011000111000000111000110111111111001110011010100010011000010010100110010101011010001010110101010110100111101100010111001000111010100001001011110011101111111111101101011101100101110100110001111110011101010110010000100001001101010001110000000010011110100100010011011100000010011100000010101111011011111111100110110001010010000010001100000011100000101000100010100001001010110011001011011110001100101 +11011101011110000011110111100001111001111101100010011100010001001001000111111011110111000010100001000101111001011100001011110111010101110110111001110001101110110010011100101001000100010111011010011101011001001111111010011001100101011010001001111110110101011111010000010011011010000100110011101001000011110000110001111101001101000011001011100010111011010001101000110101000010000101100010011010011100000010100111100110100100011010001110110101111001001111110001010111010000110010011101101011011100000001001001010110111101111000111110111100111101011101010000010110001111111000011100011000011001111100001111110000000011010001001111101011111110101111100001111000011010111010011001010100100011010000010100001111011010010101110110010101000000011111111011010011110011011010110110001011101010010001011111111101001000011111000100111111010001010011111100110110010111010010001110011100100001110001100111101011100110101010100001001110111011000000010110001011101111001100101110101010100010010110000110001110111111000010000011110001000011100110100010010001101011011011101101110110110010100011100100110100001110010110111001001010111011101111100111011011011100010111001101010010010000010100011011010010101100111110101111010111111101010010001111011100010010100000111110011110101010101111110000101001010010010101011110011000110110100000110100111000010001101100011111011101101110000001100000001110010010010011000110010011000111000100100001110010111011101101010100000000111011100110001110110001000101101000110101000110110010101011011000000011000011110011011010111111001010110100101111101011111101011001011111000000010100101001111101000110101110011000001111110100001100001101100101001110011001110000101111100000110110011010000010111111110100011101100001000000000010000101000111000100101001010011011000000011000100101110010101101111101100110011011101110101111101101101111101001101000000001000011001101111000101101111110001000000000101100001011011000111011011001011111101011011010011101110111011011011001101100010101011010110110001000011111010101011100100010101111000001000011000010000100010001111001101100001101001000110110001011101010101011000000010001000100100111101101100011101010000101011110000101110001101100110001110110110000100000110111101001100000100011001111001000011101010011010101101100010011111100010110001000101101000001101111000100000010111001101011010111010001101011010000001011000101111110001100111011001011110101110111001000011100101010111011010101111100111010011000011011010001100100000110000100000011110101011010001110111001111111110110010110000001101101001010100001001101111111010101110001001100110010001001101001111001011011010110011001111000001000000100000100010110001101101110000110001000100100010100010110110000001000001010100100001011001000001110000011001101110111000001100111101001010000011111010001110101010100101000000000111010100011101100001010011100001111101110000110011110001010001101111110111100001011010110110001100101110101000000110000110000110010001011111000001110100101110001101101001110110000001010100110100000000010000111110001010001101001011000010001001100010101001001100100001101000010010110110010001110100100000110001001101100000010011001110001100101010111000010110101010011101101101000000000001111000101011010000001010101101011101101000110110000101011101000000111100011100101100001100101100010111100111001000101000100011101010001101011111001101011011111101111000110010100010010011101110011110100101101000101001111001111111001101001101110111011000010110000001001110101111000111001011001110000100101001000000111111001000110010000110100110000000011001000101000000110101001011100001101110101001100100000110100100110101011011100010011100011001010010101000010010011000000100011010011010010001111100110011001011000000010001100110010011100101101100100000111000010101100010101010010100110100000001110111001110111001001101111101110101101001111010101011010010100001100011111110111010010011110100011100011011111010010011111110010011110010110011010010101011111010111101110001100011000010011111111010001100101110000010011001110111110000000100111101101011000110010111000000101101011100111101001110001100100001111001001110000001000001111111001000100001010000100001111000000001100011101100001010101010110101111010110110100011011100111110110111110110110000001001001110111101110001111000001011100000001111101100110011101111000011010000110100011010100101001011111001001001010001111101111001000100000110110011011010001011010001111011110010111001110100100110110100111101001010111111000110100001010111100101000111000111111110000001100001111100110111001001100001000000001101111001010100101000111000010111101100110010001000001111100110110111101111010010100100101111010101011010110101100110010101110101111100111101010001000110100101010011111111100010100101110001011101001001100111010101011101000010100111000101011100101110011001011000000000000101001100011110101111111111010110110011000100111110001100101001110111110111101010010111011000011110100110001101001011010110111110001011011010110101100010010011100110100111111100010111010101110010011001110110111010110011011100110001011001111111111001010101101001111---------------------0110010010010011100001100101101111001011001110100010000000000111010100101100101111011000101010011010110101010101000001100000011000011001101111101010111010100101011100001101100110000101001001010101001010111111100011010001100010111000111111100101001100100000001110000101110100101011001100110000011001110101110110101000100010101101111011101111011011000111110100000001000100100010000110011110110011010011000100000000100110011101001100011011010100100010001010101111000000001000100101000010001010001100111100001111101011110101111001011010110100011101111100000001101100100010100111010111111010001110010001001110100010011101110110011000010101001001011010110100110111101111101100000110101010100100101101000001000101111110110101110011100011000001111010111000101110111110110101111111011110100101010101110010000100100001101011001001111001011110011010101001011011111100111000111100000001100110100001011011100000010010111101011110011111011101101000001110101110101001110010011001011000101000001101101101111001000011100011111010111010010001010011011101001000011100100101111101110101001001110010100001101011011000010100011111110000010000100101000111011111000011110111111011001111101011100001111101101000101110010111001110111000110101111100001010101100001001010101111101110011111111101001010101010011011110000111011101111100111111000110011100110000101011011100110111111010010100110010101001001101111000011111111011011010110100000000010010010101110111100111111100010010010101110101000110000000011001110001111011101110111110011110101111110110100001000000100101100100010000100011100011111100010111010010101001100110110111111111000111011100000001011001010000110000011110101101100010100000110110000001100101010110110100111110111101000111001011001100101100110100110010000000111101010001011011001110011101100101001111101000110010011111010100111001010001001001101111010110100110111111110101100011001101110011111111111000011100100100110011101110101110100110010010101011001101110010000010110011000001101110100111101011111111111011001011010110001001101011001100001100010001100010110100100110111001001010011001100010000110011110001000100100011011111001100000111010001111011010001000011101100111010010100000110011110111000001001101011001001011000110110000101110010101000000000011011100001111011001110010101010011110010000001001110110110011001111110111110010100110100011110101100011101111001111000110110001101110111011010100101000111101001110011101100001010111101111111100000010101100010011111101101000101110001111100010110001101110100000011000001110001101001011101011101110110000111110110101011110100101011010110011011110010011011111010001100010010000110101010100110110100011110100110001011010001010000110101000111101100001011100011010101100100010000100110011110101100100100110100011100011110000100111100001101010000110111110100111010111010100111011100111010111101010010000101001001100110111001100110100101011100000010101100001000000011110111101010110001000110111110111111000100111000001011110000100101010010011011011001001111111000111111111110100010101110100101010110000100011001111001100111100011000100101011001000101101100001010011100011001100001001000111011000101101011111101001111111110010000100111001110000111001111001010000101110000000001010010100010000110011010101110001110100010010011100010001000110001100101010001000001000011111100011111011110001000000011000011001111011101001110011001101010111100100110101000111101010000101111010100000100010010110000011001011010011111110111010110000101110111011111111000010111010000011001110011100100011011010010010011111101001011000101001010001011100100110000110011001011110001111000111101011001110111000101011001001001010101001100001011010101000001010111111111001101111101110100100000100001010011101111111110111011100001001110100111000111110101111100010000011100100011001010011111010101010010010011011100100111100100110010101100111000111101000110000001001100101010101011011000110111100010100101000010111101111111011110000101001111010100110111101111100001111100101100100010010111011011010011000010000110101011100101111000110110111001010111110011100010000011011101011001010110011100001101000000011010010001100010000011001111100011111011110100100010011001001010001001001011101011010010101101001111111000011101011010110010000011110101111110000000101110000010011001100101100100011111101100001100010100110000011011110110001110100011001110111100110000100100110101111011010001010010110110001110010100100110000100011011011001010000000110001111011100111000001111000101110001100100010101110101100001110111011110000101010100010011010001000000111000110110000100000000001111110100101110101101111101101111101100001011100101000010110010100111001101110110011001000111110010111111000110110110010100010011100101000100110000001101001101001001010110101011110101101011100000010001001010010110111100000110000101111100100001011110111111001101110101101000001000010000010000010101010010011001111101101010110000011101010101110011010011000100111010101010111101000110101110010011100011010000110010100100011000111001010001101100101001001101100000101001001001100111100101100001110111111110100111100001011000001111111001010011101100011110000100011011001000011100010011011100010100111010111010001110110010110110101011011110000011000100011001000000101100110010100111111011110010111101000000110000010100101111111100001100010000011100001011010110101001000010010000000101000101011010000010000010100000000010011100100111100111000100100101111100000101000101001000100101000001011111001100011110000101001101001111110011100010011110010111010011010000101011110101011010101101101011010011111001110011100101011010110100000011010001111000100100111110011100010110011110001110110100110110011000011100000101011010110011010010010000100000100001010110010101110001010100000010010011101011001001111011001100111000110010100100010101101010111110000111111000111111110011111101110111010001010111000110001000011100100101011001011110000011100000111111011000110001101001101001100000001011010000111000101000110001100100101101110010100100011010000110110101100000100101010100000010000101001110011010101011100001000111010011000101001111001001011111111001001000001001000110100101001001100100001101000100100111010100100001101110000111011110010011000110100001001101000010101010011110111000110001001100100111110110010110000111101101010010111000100101110101110011101000011000001101111100111011101101110110001101100000010010101010010001001011100101001010110011001101110111011101111111000110010001011000011111011001111001110101100000100011100010110100010001001111111000011010011111000111100010010100111110001111110110110100000010000000000010101110100111110000011001001010010110101110010100010111111111001101101011100000011110101001110101011111001110011101110000111100010110100000100101111101101111110111011100101110101101000100111111001001100001100101001000100111111011100111100001111110111000001110101000110010001000011111000001101010000000111000000100010100010110000100101101110011000101100000001001110010110100100000001001110000011111101011011010010111011011000001001001101001010111110110010001111010010010011000011110010100010001011001000100011000101001100100111111010011010101011111111001010110000101101000011001111101011100010000000110000101001011110100010100000110011100001110010011001011010011010101100001100111101000011011011110000111011111101011010111100110001101011111010000001011011001101001001110011010100101101001000011101000010001000001110111000111000010110001011110100001000101001100000000111001111111110000010011111111100010101011100100000100110100101001100001010100101110011011110110100111000001111000101110101111000010011000010101010100001011110011001010101100001110111101100111000000000011100111100010000100110001101011101110100011101011010001101111111000010110011101111010100001011010011101000110101110101000101101000001110110111010001111011111111010010011010110001101101010111110111110001110011111101111111110110100011101001000000110011100000010100101010011000000001110111000010111000111011111101010110001001001011100010110110001010110010010110100100001010011011100100000100011110101101001101111000110110000110010011000001110100111101101001011000000010000000000010000000110010011001011001100111100000001000010111001110100000011100001011010111011001111000010000011101100110101101010110011011111010110001110100011000010101101110101001101011010101011001000110110000011000101101000010000101110100101000100100110011001110000000011010111000110111110110100011010000001011111110000011001100100100010101011101010001100001101101001110100011101111111000010001110010111001111000011000111000100101011000000110011001000111011000111011101111010011000111010001000110111111000000001011101100110110101001010010011010100100001000000100110011111001111100110011100000010010010110111101100100101001110011110011100001100000101110100001110000100100010111010110101001010010000011010010111100101011000000111011000111011111011101111111101011011100011000110001010001101110100100110010000101001010011110111010001111011011101100111101010111111000000001111100000001001110011110011011100011110011101011001010011001110011101011100110000110010100100110011010100011000001110011001011111001101111111111001000110111010001110101001010101011001000011101100010001000010011111010111000000110000011100110000110110000000101100000001001110101010110001001010000111100100110110110001100011101100111110111101100100110111101101100101000100101000001010100111101110001110011001110101001010011010010011110110110000011110111010010011101000010001100000101000000101010101101011011111111100010001101000100111101000000101100010111110110100001010111000010101111100011101100110010000101011111101111011111100111000110001010011000011101111001100001110100100011110100110001011000111101101101110001101101010001001010001100010100101101101011000000000011111100001010010110100011010011001011111101010011100111110001011101000111100000001011111111011001101001011111001011110001100001011011110101101110011100100000101001011010011010111000100010011100111111110010111010111000100001010001111101101001101001101110100101010010100000110101010011110110110100110001011101101111111011111000000001101001101110101011001110111001100011111100010000011111100100101100000100011011101010100010110111011001111110001001100001110011010111110010100111010110110100111000101101111001001000110000001101101100010011011010101010001111001001001111001010010101110100111100010000111111000110011111100110100011001100110101011011100011110000110000010011001000110111001010000111000000011111100110111100110000010111101111011101100011001011010001111001101111010100111110101101100011101100100000101000100100010111001001101010101111110111100010010111011110000001001001010011001001010101111101111010111000110010100010000000001011001010111101111100001000110101001011000111000110010110110100011110010001010101011100110101100111100000101001110111110000010001111101001101010110101111111100010011011100000111100101001010110010110110101110100001110100000010110110000001001100010110111110010110010111111010011110001100101010010010000101111000100101010010001111111100101011000100101100011111100111111011001010101100011110010110110101000100000111001010111111001110100000000111110001001011000010000101000000101010100001011000000111111010111100000110111011100110110011001011111011100101110000110111000110100000101000101110101001100111010001011000000100010001010001011111011000011011111000101010100010110000001110101101111111100100011101101000100100010100011011011000001100110100010110010110111001111010010011100111010100010010011011010101100001101000010011000110000000001100111100011100011011001011011010111100100110100100101011000011001110011000100100110011001001000101101011001111000010010010110100111110110111011110110010100101101000010110011100100001101010000101111110101110010000001011100001011001100110101010100111011 +11100000000000000100101001101100110011110110101010011110100110000010100000001010100000000001001110011100110111101011010011011101101000101111011101110111001110011101000110101110011110100000111000011100001110111011010000010010011111011000111100001110010010001010011010001111100001001111001111110101011000111100000001110011010010010011000101100000111100000000110110111111100001000101110110000101001111101000001111011001101011010100110011011010001111011001010010111011111100101101000011100011110101110001101111000011110111000001010001110111000101100110000001010001010110010110110100101010001010001100011001001011010011010010100001000001011110011110111100111101011010110110101110001110101010100110011110100011001010111101100010001110011111100001111101111101001001001100011101110000111111100100111100111001010100101000111000111011101011100111000111111001010100001011111101011010010011010110001101111101011100001110000011100010010000101100011110111010111111010000110111000000111010110000111111101000111110111101011011100111100100011101100011110100111010101011001001001001010100100111001011000010001100110100010010100010000001100101010100011101000011010110001100100110111111010100010101010011010111101110100111001010011111110000010101010001110011101010111000011010100001111111010110110000110010001000011000010100010110110111001010110110101101100011001100010011001101011010000011000101111110110101111011100000110001001100001100001111010101011001011000011100100100011000111100001000101111010110001001001011010101111011100111011001101100110101010100101101101010011000101001111010101101101011010011010111000100010001100010011000001001100010000110001001001100000000100101010111000000110000000100110011101110110111001111001000001011011101001101000001111110001011100000010101011011000111011110110101101010100111010001010011011010101001010000101000011001000001110110110101110011101100000000101001010100101000011000000101011100001101000001011110001010011101100011100100001110111111011100101111101011001101000111100100111011010110001001000101110100100011111011101010011101111100011111100111011110111010101001110111010100111100000100001101111010111101000000110011111100001010011101110000111110100000101010101011000111010010100011001000100011101110101100101110100010111101010111111000001110000100010010001111101011110000000101001001111101100001000011001111100111101001101000100111001111010011100001000010010100010101110101110110100000110011100011010110111000111011010111100000011100110011000101101100000001100000110100010000000001101101100111010001110010101000001010010001001011111011000000011110111110011101010010000001111100000000001111111010111010101111010010110011000100001011111011011011110110110000010110001110110100111111110111100000000001001101111101111001100111110100101001001110010101001100110000011010010111101010101011111011001000100100000100001000111110100100010010101000000101111100011111010010100010001111110011110101001011001111100110100011110111000111001001110100010011110000111111001010001001011000000011110110011001101010010100110000001111000001101110011100110010001111100000101111110001011100100010111101111010111001100110001011111110000011000101101001100100100000000111110110010100011100001101111111101101111100110100111011111000010110111010001101100110011001010010011011110101111101000110011101011010000100011101101001101111001110000010011010001100011100010111111100110001100111100001000000111001001110001000101000001110111010101000100111011111001111001000111011110000000000100101010100100100110110100100101000010000100110100010100000101111110001010111000101111000011010100010111111110110001110101100011000110111100011000111101000011100100101110111100000101000000111111100011100011100011110001111101101110001101000011001001010111101101101111010000001101101100100010011001110100101111001010001100001100001110000000100001110101001001011011110111111010111111011101101101011101011101111010100001110010100110001100010010100110111110000001101101111101101010010000111000001000111111011010001000100101011010001000011010101100101100001100101000110010111011011100011001001010010101010110000100000100110101110101110111011000100100111000110101010100110100010111111100010110001110110100110111001000111011010110000011101010101010001011111001000001100010111010100011010010101110010110000000101000101110000101000101110011000000111000011111100111001011100101010100100111100000111010001101111001010011001001011110110000101110111000000101011100101111101010101111001001011110100101000001110111110110011100001111110101111110101011001110011110010101101000111000001110001000011101011100100010001101000010010001001100101001000110100010111010110101001100010110100010010011000000001011011100100100001001000010101001011110011101110000001011111100001011010011001110010000110111001110111111100000001100101010010101010001010001110111111010111101001010010011011100000100110111100110100000000011111010101001001101000010111100010000001011100011011011000010111000011011101111011001111111010010000001101000010010001100110000110001011110000111000001001000100001000100001110011011100110110001100111010100001011000010101100010000010100---------------------0110011010000110000001100011010000011001010100111011010110000011000101111000100100110111111111000111111001101111011100110010111110001110111101011011110110000101100100101111110111100000001010011100010111111110100110001011110010100110000111000101001110111100001001011010010000011110001011010100000110100101110000010010101000010001010110111010011101000011001101101000110111111000111111011000001101001100011111111100101111001110111111111000000010011011111111001110000110000100110100010111110011011010010001011000101110000000000100101100011111110100001011010101010101111100110110000100111001110101101001100001001001100000000100111110010001100111111010110001110100110111100100101100000110011100011001100101110111011100100101101011010100000001001101110111001011111000110111001001001010001011011110101100101010111010001101111010110011001100000001010010110001011010101000111000000010011010101001000001100110101110110110111010010111001101111110110001101010101011100000111000101011111000111110111101010000010111100101111100011011100001110010011111111011001000000110110101110111011101100011111110110111101111001000010101001110011110100000010010100000110010010011000111001101100110110010100001000101101111011011100111000000101011011101010010111101101001101011011000110110100011000100111110111001111110010010010000100101000100000110101100101001010001100111110111110011100001010100111000101110000101011100011001100001001000001000100110100111000100111001111010011110110010111111110010110111011100001000010010110111100000011011100100001111001110101010100000100000010000010010000000010111100000001100101001110011000010110011100000100001011110011000000011000000010101000001101111110101110000101010101011101000111100000100101110111010001001001111101111101111101001011110011100100110110111101101010101101011011111010011010010101100101010101000101011101111101000011110110111010010100111110000001011001110000001111111101010000111010100101101101111111100111000010111110010011101010100010111111111111111001011101011001000111101000010000011111100100110110000100111110100011011111110000111111001101101011100000001001011010111001011000111011010110000100001011010011101010100101110101110011010101011100011110110010101001001110011110110011011011111110110010101000110101101001111111001101110100000110010001011100011010010000010110101100011110111010001010000011100010000000001101000110000000000111000111101111111111010110110010111100001000110011011001110010101010101101010101001110100100101100110010000011110100000010110111101100010111100111101111010110010110101111011001001110011111010011000100101110010001001110000110000101110111111111101010110010111011111111100000011010000110110001011101101110111000101100001111101010100101111001000011010111011100000101001100101100010000010001010010001100001000000100011001101110011000101011100000101101110000001000001100101100111000111001010110001000010100001111011111101010100111101101101111011001100011101110010101010011011000001100011101000111101100110011000111110010101000101011101111100110111110101111010001011110011010001000100001011111101010001000110101011111100100011011101001001100001111110101110111001110000100000000100111111001101011111010111110010110101011100000100111111000001101101001000000001011111101010011011011100101000010100001111100101010001110011001100000001110010000001101000010101011010100101010101101000101000000111001111100111010100011101000111111110001111100110111111110111100111100111010110100001000101011110101000001010011111000011001110100101100011010000011010000101110001111100011011100111000101110000011100011101000010010101000010010001111100101010000011101101111010111111101100011001010111101001000001111111010011110011111011110111011101111010111111111100000011000101011011010110110111101101101001101000111000100010010101000011000010000000110000011111001011110111010001011000010011011100101011000000011010010110111101111100001101110000101101011000110100111011111010100110101000101010101010110100100001110011100110101110011111001101010100110011101101000011111011110100100110111010100100010011110000111101001110110000000010110000011010100010101100001100010011110000010100010111101101000010011110000001000110011001001101000100010010011000001000000011100110101011000001000111111101010000110011101010011110101101101000000010101011111000001111001110110011111110100011101101000001100101110111111111011100111001110010111101010000001101101010101011010111110100100101011000101111000100011100000110001001011100010001101111000000101101011111110000000111101101111011110111110010010101000010000100110111001101001000000110010001011110111000111100001111110011001010010001011010111100010010001011111111010100000100111010101010000110000010010101110010100100001010010011100010010101000001001000001000100100101010101001001111101111110111111001000110001100111110111001000110010011001101111100110000011010001000111110000111100110001101100011111011100000011011101001001000000011000000001100100111101100001100010100100011101111011001001010100001010010000110001100011111001111001000000011001110011011001000011000010101001111010000011000111001010101011001001100111001001110000001011100001110001011001101010101010101010010101010111110100100001110100110000011010000101101011000111001011111010001101000111101011111011101000011101011000000000101101101000011111111011101001110000001000101010111101010000100001001011100101101010000001010110010101011000001101100111100110101111110110000010011111100100011100010100100110101111110010001011110000110011010100011010010101000111100001110100001110010101110110101010010010011101010110000001100011000100111110010111011111100111000011101001101010010000011010110000111110100000000001001100000010110010001001110101100011001110001100110011011001100100000101100011101010000110111110011010000000001001110110111001000011000011011110011000010010000001001010001001100011001010110011011001101110101100000000001111111110001011110010101000001110110011101001010011000001111101000100001011000011110001001011110000100100110101110000101000001010000011000100010110100000110110000111110001111010100000000111111111011100011010100010110110000001010001111100101001011100110010110111001101111111000001110000010000100000101011001000000010101000101100001011101010011110101111111011000101100011111100011000010100010101011111011011010101110101101110110111111100110110010111111001001111010111101001011000111110100111010000000011100110010100010000110001001100111101011000110011100101010100011100110001000100010101100001110010011001001101111001110101101011000000110001011111101100000001110001001011011000111101101100100101000110011110100011101010000001100111011111010101101000101000101010001110110000010101011011001010110011111000110001000100001010010111101001010111001011011001110000010001000001010010000001000111000011111111001100011110100101111011011100000100100001011000100010001011100011001110010110011111101110000011110001011010111111011000110110010111001110001110001111101101011001100101110001010110111111110000010011100011101000100011000000100100111110100111101011111111000001010011111111101000111101100101010000101111111110111111001010001110001110011100000010110011001000000101110111011011100110011011111001111110110111111101001011000101000000000100101001000000111000000001001001101010000010010010100000100010101111010001011001001110001101100111001011101010000101110011000010000101000110011010011101011110001011001100000110111011111010111001000100010001001010101011001111111110100110100111100011001110100000010001100010001011111010011101001011100100110101100000111000101000101000011101011001100001101001111000101101000101010010110111100010000011110011110110001000011110101110010010101110101011111101101100001101001110000111011001111010101011000111000010000101110011000110111100111011000110000110101010011011100101011100000100100101011001011010011001111000101011001010011010111000001101010011011110011101100011110001110111011111111011000010100101010100010010111010011011111001001111110110101001101000101011101011011100101110111011100010100100001100110100111110100101011011100000100111001000010100000011010011111000111010101110100011001000000110011010001010000110011011000001111000011110000010110111001000100101111010011000100101111001100010100110011101000011111011001000111100111111100101001010011100110110011110100100110010111010000101110000001010111000110111101110001111011110110110010010111110111010111011101110110111101101111010001010110101101101010101111101001110111011111011110011111110001001101111000101111111110101011011000100101110100100010000010100111101111111100000001110001010111101011110000000111000000001100101001011110010100001000100011010010100001011010101100000110001101110010000101010110000100111010010000001000110110101010110110010001111010001100001100011100110000101101101101000010100100100110100010011000100111001010010001000000100111001100001111000101111101111001010000101101001111101100001111101101000010111100101011110101101101010001100000111101000101001111110010000001001000110101110101100111111100100110001011111101010110100110000000110101010100000101001110111011011011011011011001000110001011110010111010101000110110000100001110010111011001110100111010010101110001011000011100100100101000001000110100110011001011001010111111111011111111110010110111101011011000100011010100101100010101111110000001001001100100101001111110011001101011100100101101000101100110101010110011011001001111011110111101001110001011010001011001011101110000001110100101101010010011010011000010011111110001100110101010101010011000111010000110100001110101100111011000001011011001011111010100111010010000010010001001001111010111110001100001100100001101111011000101101100111010000011111011000011001110111101001000000111111110010001110101111111000111001111100011000101110110110011110100110101100001110010010111010101111011011010101001011111010111001001001001111001111100111111100110000111001001101010000101110000001001000111111101010011001111010100110000111100000011111000110101000011000000110111111000110110000001110100011110111111101110110110110001111110101110010111010001011000110100101000001011110100010010110101110100110000100011000010000110111110100100111000111000100010100001101000101001111010011100100110111010001011111001101011001111100110100001101011101111100101010010100101001101101111110010101011110111100101001010111110001101101010110001010100011010110001000100011001000001010000111111011100111100000111100111001101011001111011111101010001010100100010010011100111001001001000010001010101111110001010101010100110010001010110001010101001010100001000011110101111011111110111101000001100001011000001100011110010011110000001111011110100110000100110010010110100010100111010110100001100111010010001110001010101101010010001000100000111110010100100011110000011001110010100101001101011011100101011111000000010011001001001011100000011001000000110010011110111000111001101101000100110100000001010010010100011110100000010010001100100010100010011110111010010011010110000101011101000000000010010101100010101011100100000001110101010001010010011011010010000110010000110111000100101101110011001101101101010110000000111111000100110001001111010110011000111011010011010110101011010100000111110010001000111111011110110111110101010111101111111100000010000011010011011001001001010110001111101001001000100011001100000100001110101010011000010101000010101100011101000101100000001101100110001110010100011100010110011110010111100110011110100011000111100000011110111010110111100110100111010111010101101000000010011010010011110101111110111110010111010001101111010111011011011010111010101101001100111100010101100100000100001011101111110010010000110001000100100100111000100010000100100011010111101000001101111010100111110110001001000000001011101001101101101000010001100111000001010110100011110100100011011111001000100100001011001010010010110111110000011010110000100111011001001 +00110001001110000001100011001010001100000011011111111011100110100110101000001001011111000001001010011001001100110101001010011101111000010100000000110110001010011100001010101011101011010110110011111110101100100101100110000001001000101000010100010101001000000010001010010001010101101101010001111011101010100000100000000011100010100011000001110101111010111000010001010000010000100001100001100110001100110000100111011110010100111011101001010000101101000011010100001111001100000001001111111110111101010011001101100011110010011101100110101110010111100001101010010011101100101101111110000111111101010110110001010011101110100011111100101011110101001101101000111110111101010110011001010001111110000001010101101010001110101010111111100010011001000000100001110000111001100100111100110101101100101011101001110001000110101101001110001010011011000100100011000010010101101001001101000001001001001110101011011110111101110001101101101000110101110111110000000010011110100011000100011111010100101011100001001111111010111100111101111000110100101101110101000000001111101010000101110010001000110111011010001000000011001010100100101100110010000000100111000000111010000010010011111110111111101001110010011101101001100001111011101111100010011001110011100110011111010000001011011100010001110001111000010001111100000111100101001101010100111001111001101100110001010010111010011101100100110101010101111011011010111011011100110100101010001011110011011010100001111111000100001110001111101001111111011100110011001000110100000111001101011100000010010111100100100011010110111000100111101111100110101101000010001001011111010100101000001011101011000001101000110001101010110111000101001101010101110001101010011010110000101100101100110010100111010011111000010100011000010100111000010001010011100000100001101101111011011100111010011100010110001110000101110011100101001011011101100111110001101111000000011100101110010000101011001010100101101110100110010000010000100100101110001100001100100011100100011001101100010110110000110001110101101010011001000100100111111110010011110010000001111110001000011010111000111000001110110110001101101110110000011011011110011110011011110100101100001111101110000000000001001000011101101001010001100000011101000010010010100101100010000111100100101110001010011001101100110110110011010010101001001100101110110011011100001100011110110111101011000111110110110011001110000010110111001100111001011111100011100111101000011100110101101010010000101011111011110010101000000000010100100001010011000110110101011101100001100111111110111000010101111000001010100101011111101001011111001100000001100100111000001111001100011011111011101010100111110101011011100100001000010010100011101011001010101000101101111010100001101111000100011000010011100101110010100001110000100101100011000010010111001111011011100010110010111010001010100010111101110101011000110111001011000111011101100001011001110110001111001000110001111110011111110010100100000000010111011101111111110110001000010111011101011011001101010101011111111010000111111111111001001011110101110101100010110111110011001000010100000010010000000101010000101000111000110001110010001101010110111101001110100000011011100111100100011010001110110110010100101110111000110111100111011000111100111010111100011001100100000000010010010101101101101001110001100000110001011111110010001010011011111010000010001001011001000101010111110010101111001111010000100101010001010110001110000000010110000101000010010011010111100110001000110100111011110111101011101010000111000001111010010001001000101011110110101111110101011100011101111011010110100111001001101010111011111111101001101101011001100100100100011101110111101011011110001011010110101000010000010001010111010111010111110011001100010000001000101011010101111101110111101010000111100011000001111101111000000111001000110111111001100001000011100010010100111010110011011001110110111000110001011111101010001100001101011010001110010011010010000111010111001111000100001010011110111010111100001000000000001101011100011010100100111001101101100011000110101101101011100111101101110001010100001000011110111001110101001001101000100010001011000111111110000011010101001110110010101111101101110111000101100111001011010110101111000001101001001100100001010001000001001000011011000000101101000000001110111101010110100111011001101011110000101010001100000011000111011111100101011010011110011111001011010011011100101110101101001001000011110111101111001011011110000110000111100111000110110000001001111101010010000011110001100010100001011111101001101011001000000110010100000001011000001111000100111010110011010110011000000001101110001110110011111110101000011100010001001100010010000011001010010011000000101000001000010110001010100001001111001100000110111111001101010010100100001010101010010111111100011001000101010010000100100111111100000111010000000000100011111010101110011110101110111010101111000111101001110010011111111000000101111110011010001001101101110101011010000111100110110010011011001110011110010101110100111011000110001001111110010100110110000100101011100001100000001011000011000110010100101001001111001100010011000011110110010011100011110111111001000010010---------------------0010001011101100010011100100100101100010001110000101110100011100001011011011110011010011000100110111011110110110001101101100011000110100111001010100011010000010101111110001000000110110100010011000101000011010001110110011010011111000000101001111011111010111000101001111000110011001011001001110000111100100001100001101100010000111111110111011001000100101010101011011010100110010001010001010011010110001000110101110000010010110011111110010011000100001001111011010001101000110101100010000011101110010101111100111100111111100110011000111100001110111001001010110100000010000000010001000100011110100110001001100101111101111001001011100010100110011011101001010000010010001110001010100001010100111110000101011111110011100101100100011010101110110110011111001000000001110010001010000100001001111100010001010111000111000101101111110101011011000111100111001101011001000011010011110001010011111011011001000001100100100011111011001001100100001111101010001110010011110001001001100100011000111100011000101010010110000111110011101000011100010100010001000110100000000010101101111010001111011111010100110010010001011010001001101000011100101001111000110101100010011100100011011001011011101001011011011011111000000010000001010010110010011100100011101000111000111111101011011000110010111011011111000001000010011110001110000010111001100010111010011010101001111010000011000010011100101110011110110010111111101101100111001001000101010111101010101010011000010010010001100000001111011110100000011000111001101110111110111001011101110001100011010100001010000110001101111010111000000011000011100010101000101110101010101001011111111111010001101100111011010110110101011011110011010000010000111011000010010001011010001011110011001001000100011000101001111110000010001010000011011110101111000101110001101111111001110010111011101111101000111010101010011000000010011101110001000011000000001010101111001010100110001000001011011111000001001111100100111010011011101001111101001101111100100100001100100100101110101100010000110000110111100011100010100101001100000010101100010010011101101011000101011101001010101100010111011101101001100010010100010010101010111001010010001010111101001000101100101111010100101110100011101110111010010101100011110000111101100000101010000100111010101000010001011100001011001110010010000001101000100110101011000011111111001100000101100101110110101110011001110110101111101010011101001101001101010011110010101010100110001111010110000110001011101000100100111011001100001011110110001101100101001110110000001101000111110111011100101111011010000101010110010010100011010110101101011011110011010010011000110110000100010100010101010000011110010111111111100001111100101111001110101001101001100110010001011110011011100011001001110010011101010110110010001100001111010100001011000001110011110110110000110010000100110110100001001000011101111001000001011000100001010010101000100110100100100111001001111100110110001001011101101100100100100111000110111110100001111100100010110000100101010010010010111000001101011111111010101100010100000110011111111011111100011010100111010111101101000000101011010111100101101110000000010011011111011100001011000100111011110110100010000000101101101110101010100111111001001010101011000011110010010011001101110101100110010000001010000101010100011110100010100001110100010100111010010001111010111110000010010010111000001111001010011111100001100010110010101011101101101110110001011100010001110100010101001000001101011100100011110010100000000000111111111001000001101001110111011001111101011110101001010000010110111111100000101101000111001011011001001100001111110010001000111000100000010110101101110001100100010000101100001111101111000000011111001001010010101101001011101001100101001010011001010010010110011011111001010010000100111101111011100010111010000101011100101000101010100010000010101101101000011101100101101011111001100010001010011010101110111000000001010011110011110110101000100000100110001101000101100111110100100101001011110101110011010101011000110110000001111000111000110000100101111000010110000100001010001010011101111001101001001010110001011101010000001101001001100110111011100001100000010100000000110110011010110100111001010111111000000011001011010110011010100011111100010101100000010100011110110010001001010110010100111011101001000100000111011101100101010101100001101010000010101110110000011100010011010110101001011100000001110111111111101010011111000111100110111111001101001111010000110011111010100101100110010110110001001010001000101000101111010001010001100001111110110110111001011010000011101111110101100001011000011000001110001100110001010101001010001110100111111100101010000111100011100000100010111000110011111101001100000000101111000100011010001010101100110111001010101100011001011000101101100101101010011011101010011111110111111010100110011000000010111011010100101000100111110101000100101111010111100001010010110100110101011101100100000101001101110001100010100100110010111001011001111101100101101100100101010101011010001110101111010110011101100101111100001111001000101000100000111110100101000011111100101000011110101111011110010010111110000011111110001101100001001011010110110110001101101110100010110001011100000111101111010111000100001100101111011011111010001111100110011100101000100011011111010110000011100100111011110010110011110011101111000100110110001100100010111011100111101111100101011001010010010010011111010110100000110001101101111110011011000010011111000100000101101010110110000111011110101101100101111001001000111010010001000100010010000100111010011011010110111100110010011100001010011000000110111100010110001111011101011110101010101010101010000010010110000011100001010011100101110001011000011110011000111101000001111110100011100010100010111101111100010001001001010010011101001101010010000111010111000101111111110101000101101110101101011000111001110100010110110011000100000011011101010000101111010001110101110101101000000011010011011100100101010000101101001101001011000001110110101110010000001110101011101100101011101100000011110111110010100001011101110101100000001110000100110101011101110101000011011101111111011101110100011111000101111111101011101000101101001110111010110110100110111011111010100110010111111011111001110011010111110001110110100010101101100110111010111000000101110010001110110000010111110010011001011100111111111010110100101100100100111000011001101000111010100011111001000101001101100010101011001110000111100011010110111101001110011100011000111011111110010010110100011001110111100111000010011011100101111111001100101111011110010110100000011001101111111100101000000110101110100101011011000101110000000010110100000001010101000000101100111010000000111111100000100111010001100101000010110001010101111000010001110001110010010110010110101010100001101101100011001011100101011100111001111011101110110110010001100001011010111001110011101010100110000010101011001110100111101101001011101000000000001100000010110101010010110000111001011001111011100111010000110110010011001001001111011011110011111000000010011110100110100110010100111111000100110001111010011101101101001111110101100100001000100001100111101100101100001111001100111010000011101100000000010011101111100110100010111001100011011111000111010111001001001101000011000010100011100100001011111110110001110000000011000000101110001011011011111110100100110000100101001110101011110010101100110011001000110010001011110100110110100111100101110010100000000011100100110010100000000000010100111111111101001100101011111111000011101001100110101100000001011000100001000110101011100100111010000101010101100010011000111111101111101010010110001111011100100111001110011111011010010110011000101101100001110101110010000110010100101100001001001011001100001101000111100110010001111011101101111001011101101110110001011110110100010001001101001010011100100001000011101111010101101001100101111100100000001000010001110101100110111001100001111001001001100110101011010110111111000001000001111100111111010111110110000111100100110010111100111111000101100000000100110001110101101010010010110001111101100001101011000100000010011110000101100110101110000001000110100101000111111011100100100001000100000010000110010000111100010010100111110011000000001011010101101100101000000011101111110100101111011100110101101011111111000110000110110011111100101110011101111100001101001101100110100001110011010110001110010001011001011111000100100011111110011001000101010110000000111110101101000100000010111110100110111110010010110100100000000000000000111001111110000111000010011111101111000000010100100110010011111111010010010001000110001100101010000111000110110101101111111010011010101010111100110010000100110110111111111011101010000010001001010111110000000100000010010010111000100011100110010111111010101001111111010101001101101101001100001001100111110001011001110010101111010100000010110011011010001010001010110111101000000101011010100000010111001000010111100000101011001111101001010100100011100101100110000010110011100110100010011111001010010000010111010000110011101000011001100010010100111100100101000010101110101100000001110001010110011010001001000101001110111001000000110101000001000110110111100011100110101101111011111010000011111000101111000011001010110111101101010000101010011100001111110001100010110011110101110100010010010101010100000011010010001000111101101101000100010000101010100000001110010111100100010101001111000000001111011011110010111011001100111101101110100101101011000100110110110110101000110110010000110011101111001111001011100111010000000111011001101001100000101000001010100011000110001011010101110001000010011001110111100011001011110101101010111111101000011000110000001011110111100100100000100101001001100011011010011001000000010010011000101001110001010111000010011001001100100001010000110001000011010110100011100111011101000100100111111010100010110000111000011110100001000100111111000011000101111101001101000100111001111110101111001011010101010011110101110110101000110110001010010111110110011111011000010100000010010110001101011001001011001101011110010000001010011111001100100001100001111011001101100110010101000011010100100100001011110000001100101101000011000110001010100001110100100101110011111101100100101101010101010100111011111000001101010110011110110110111100010110010001010111110001110110000011000000111010010000111111001011000100110110111000101011001111100001101001011010100110101010101111011011111110111110101101000100100001000000100111101011011000001011000111001001011111101010110001011001000110101111101000100100110011100111001011101011101100110000100110111000010011011111011001000101001001100100101101011001001111000100011100101110101100100001100101010100001001011010111110101010010000101000011011010001011001100101101110110110000001001011100000000100100011001001001000100011011111011001000001001101101011100100111010111111110101100111010100010100010001011001000000101110001110011110001110100110111110110100111010010111010001000100001100110001111100011001010000000110001011011010101001010110110011001111100010001101010110110100011110100011011110100011111111101100110101001001100110001011010110101100100000000110011100010101111110010011101011010001100100010010001101010000111010000011001010010011110000001111111101100100100010110101101000110000000100010010101100100011101111001101011111111011000001000011001101010111000000101111000111011100010111100000110011110110110011001100111001001011001000110001000111000111010110101111001011101001010010011101010010001000001100111110000000111000101111111011011011010011101111110110010001000111101111100000101100111111011011111011001110110110010100000100110011001011111101110111001011111100100011110111001001111011000110000011101101111100110101000100100011011110100101101111110000101111001100101100010010011101110001110100100010010111000110101100101101111110100010000011011101011000100001010010010000000100000111010001010110101001100000010100000110000101100100100 +01100110011010101110110001011111110101100011011000100101010001011000000010011110101001111011111011100101010111100100011001010010010100111011111010110001000011110100100000011101010000010010001011011111000010000111000000011100100100110011100000110110111011100100100100001101111010110001011101000001001011010101110110011111110111010100100001101011010001100010010101110000010011111000110111111001011110111001010111010111000000010101100100100001101011010111011101101011101011001101010110010110010101111101101111011110111110101001000010001110100000010011010101010111110100000001001100000100000011101011010111000100011111111110001111001101100101010100000101100000100000111101111010010010000001100100110110101101000011110111011111010100001011100010001000100111011111110001000110111101010011001010001111011011011101100111001111110000101110001000110011010110011110010011101010001010000010001100100110011011000101001101001010111011110001000101111111101000011011000001111010101110001111010011111001010111001101110000011110011011101101000010010100111111011110011111001000000011000111100100110010011110010100011100010110001001110000111101000011100101100101101111111100100001001010111111000101101010101100101111001100111001001000100101000110001111100001100100111111000000001000111100111110011000010000101110000100010111011000011010010110100110100101000011110100101111011001000110101001011111011110010110001110000110011100011010001100100111101101100111111010000011110010000011111011101001001110001101111110101001010100101011101101010111001011001110000100001100011111100001001101001001101101011010011101111101011011110100100011011101111001101011101101111000011100010111111110111100011011101011110111001011001110001001110001111100010000110101110100100010111011001110000000110101000111011010010000010111111100010001110000111001011011100100001100001101000010010011001110010001010010011101001010001011100100011001100000110001010101101101111001010010111110110101001010110011011000111011011101101111100001100010000101000101011111010111110010110101010111011101111000111001101010010111010001101001001001011111101001011001111111111010100011011100000110011101010110000001001001011000010110011010001010001100001111110100111111000000000100100100100011110100100000100111010000110011110010010111011010011010001111001001010100101010100100000010011110111110010101000010010101100000001010000100011100011111001110110011110110010100000111000000101111010100111110000110110100110011110000111011010001001010000010001111110101100101000010110100011110100010111100111110001010100010000010111111001110000011101011011001011000000100000101110000101101001010001000000111010101110001011011011000010010010110100000000000110011011000101000100100110110000101100010010011111101101111001110100111010010111101000001100110100000101100011000010100101000101100010001011000110010000001011010110111000010100111100011000011001011001011111000000110110011100000100101001100011010001101101000011000001110011000110011011101111011010010011011011100000000000000100011010001011100001010010000011001010111111101111000000001010110110000010010010111010011001111001110001011010011100111011011110111111000011100001100101010010010010101001100011011100000100101000011101001111011101101100010101001101001111101111111100000010101111110111111101000110001010011110011111111001011011101011010110110101010000101101110001001110101101001111010010110000101001110001011000011101100111011000111110100000000111110101010000111010001111000000100100101010110110001111110110111111101010101100100001111101010101110001011001000101011111110011101110000000010111000101100100000101100101011010001111100010010111111011010110101010010101010101100111001010100111001010010101001100001001011101100110100000100110111100010101010101011101000011110110101110000001000001011101110110110100110100011011101111100001101110011110110111001110000110000110001001110110001110001110001001000001110010010111001101100111110111110001000000000001110100111001011011101001000100101000101010001010000011110010011000001100111010110010000111101000010110010010110001001011000111101111101111110111011101010111000010000010100011111111110100001111101001010110000000000100011110010100111001111110001100110110010100111010100110111011101000011011101100100010110100100010100011110101001000101110011111001000110001101011101001110011101110111000011010100000110001001111011010011111010101001110000001011001101010100110001101010010111000111000101001111000111011100111101001100101011111011100100110011110010010000000001110011011101000100111000111010111100100100111000000110101001110100001101110101111111111000100000101101011001010011010001110111111110001110101100101010101010000100111001100100101100101011101101111000000110001001111111011001110100001111111001011001011001101110000001100101100101111101111100101000100001011010111111011101000111011000000110110000101100110100000011101001111110111101011001100010001111110110111101010011110100111111111010001111000001011110110010111111001111001010001110011010101100100000001011000011010110000100000000100010011010001110110101011010000010110010101101101111101111000111001000001111010011110---------------------1100011001100001010001110110001101001010011101100110010001001111110110111111100111111111111111000011111111000011011100000011001101010110100100010111110100111011111011101010001111111100011101010110001001101110110010100101110000011100100111101111100011001011100111101110001010111001111100111000111110010010011010101001110001000101101010000111000111010010011001001110010000110110000100111000010011100000010101000011101110010011010001110011111110000000010010011100101100011000101001100111001001100000101100010101011110001100011000100111101010001100010000001111111000100010011111100001001111000001010011101001010111100111011001110000001110111100110011101101000011101111001001010010010111001011001110011000001101000001111000111010011100011010010001010000111110101011111010011111110110111000001000001110010101110110111001011111001011011010101111111111011000111001111111010001000100111011111111000000110110100100111000001010101000010010101111011010100101111000100000110101001000100110110100010011110101110111101111000110000000010110001001110001011110011001011100011101110000100111001010111001100110100110111011001100101110010001110110101101101000100101010111011110101010101001100100000110001100101011001011101110000000011010110001111010101000101010110001001101110000100001110110110010111001001001101101001011010111111101111100010011101111101000100100001000001000011110110000100111101101010010010110000001101100100000111010111111001001101100011100000011000011000110000100111010111011000001111110100101000010100011010011010000101100110001011001001100101111010010000000100011001010011100101011101100101010111011110010001100011110100110111100111101001001110101111101011000000010000000000100001100001101010101000100100010000001001110010011011001110011110101101011000010110101101101101010000011000000000101101111010011100011010101101100011111100101100000100111111011100000011011001010100101110100111010000100001110101110111101000101001111100101000110011111101001001100101110010011110001100100011111100101001001110111111001110101100001100010000001000000011100100000110101110010100011001111000111001111010010101101000100100110001001100010011111100110010111001101000101101001011111111010110000101000111101010000000111100001111001011111100101111000011111001001011011000111011010101111100101000011000101110110101101011101010000001010011000001011100011101001110101000010100010011011111101011000011011000011011011100110010001011100110111110010100100010110100010010000000101000110001011011101010001111110111001010110001111000110010100001110101001100011011110100010000101001100000001010011110111001100101000011111100100001010101011100100001110010111000111010010111011111011011011111101000010110011010010101001111000000111100000100001101011100101111000101110101011111111101110101000110001110101010010010010010001100101111000101110001110100000001011111000101111101000000000100100000000011100001101001011011110110101101001101111001110111110001010100000000000001011100101011100100011100000100100110010101001100001110011001111100110111100010110011000101010110010101011111001110100010001000000111011011001100011001101000011110100000100101100111011101110000011000011000110000000111000111101011101110110111100011000011010000011011000000001001000001001111001010000001111010010000110001011111101101000010011001011000101101101010000100011101010011001010011111101101011111001010100101010000111000001001111101010101001111111111010011001011100110110011000110101011101011001000100011010011010001001110000010011001110010001001001110000000110110011100101010001000110001000010101111010111000111100101101000110110010111111001001100110011000111111001101011011011000000111001000111110010011110011110011100000011010001110100001001110010100101000110111010111101111100001101100100100011010001110011001001101111111111000010011110111101110101100001110100011001100101000001011111010010000110001110011000100000100010001100001010010001100001111111001011000000110000101011001011000011100001100010100000011100010010001011100001000000101001010101001001001110010011011111101010101000011010011000110011100010001110010000110010010101001001100010111101000100010111110111110101011100100011010101011011100011011111000011001011011100111101010001000100101000100001011110000100111001111000011011111111010010110001101100011010110100011010111110111111000111111111010011000111011100010001001000011011110000100001111101010011001110111110001100100010110110001100000111000000011010011000110111111001111100100101000111010010000101110110001011100101001110011101010110101110110011101010001110000001111111011110011100011101111111111110111111010001100110001100101001111011011010000110111110001101101110011100110101100101100000110001100110001111110010101101001011100000011110011111001000001001100011011100100000011010001101011001110101111100010001000110010111010100110101010100111110111101010101110101011001101111111101011110010110001100101101111010011001111111010010010101011101110111000010011000110111000010011111000110010110011111000011011010010100000101100110111111001000010010001001101111010110010011100001011011010001010111111101010100111111010100001011010001011101101100111100010111000101001111100010110011111000000001111111101001110100011010110100111010110111111000100101101110011011111101001101011010101001110111001000001011110001010111000000010011101010111000000001101111000010101001110000111011011111010110101010101011111100010110110100011000101000000010100110001111010000100010000101010001001101010001011001001110110011100111011100000000000011010010100100101111101110000101010011000010011111100000011110111110100111111000010000101010100001001101101010101101010001111110101001001111110010011010101101100011001111101100101110111001111000100100101111001010011010110001100110000111101010101110000101100010001010110100011110111010111111111100111110010101000001001011011111010010010011011100111101011101010101101011111011100101111110001101001100110100000000100111000100111100010100010101000101111100011000111100000110101100000100001011101001011101110001100111111100000111111111100101110111101101111011111111110100001000110000101101010111000010100101111010100100111001100111100011100101000011110011101111100111110000011111001110001110100000101011000111011011111001111111101010100111001111110101100110111000110111101110101001010000011101110011010100111010101111100100011111011100001111101111101100110101101101110101011000110011100100101010100110010110011001100100111100101000011100001101101010110111101010110011101000011000101001011101100011000001000100110010111011001001100001111101100101011010011001100100000111011100010001101100001111111000101010110110110110010100010001110011100101010000011011011010010001110000011000010010010101011000001101101110011010010111001110110100110000101110110011101101101010010000000110110010001010110100010011011011110000100111000100101101101011110000110011010100000101000101110111101011100011101110000100110100001110001110110101010101101111011100101111000101000001101100000100011101001101100000001001100101001100101100011101000100010111100000010101100101000101001110101001110011000000100001000100111101110101001110100001010100100101000100010100111011110100101000101000111010111000000000110101011101000000110110101100111100111011100101000101000101000101100111101100000100100000011111100010101111001111100101010111101111010010001001110111011111111011100100110111010101011111110110000011000011001101010110101011110100000100000000111101110011100100110010111110000000101000101001111110101011110010110000110011011001100100110100011111000100011110010010111111011111010101000111101011010111110000011110001000001011110101100111000010110000111101100011011000101011010101101011001001010111001001011100100001000100010111001000110111001100110011100110000000111010101001010010111100000010001010001010010111110011000000111011010011111010001100100111000111010010000100010111110000001000111011100010011011011000010001011011010001010100101110001011100000010111101011100010011111111101011100000000001111001111100111111110000101101000010111100011011100010011100100100010011000111010010100101111010000100100101001110110011101110001111010011110010001100110111111101001010111001010110000000111011100110100000000100111101101000110010001101110000111111001000111111010010010001000011000011100001111101011000001011111101010011100111000000100011000110000011101000100011010100011110001011010110100111011110011011010010011101101000101011010010101010000000101111000011000010110101110011100100100101100000011010111110010011001100000111011110111010111111010010110101000001100000101010000111001111010111011011101000010000101101101010000110100011001100101110001100100101011100111000001100100000000011111100111110101011110101111010101011101001111010100110100100010011110100110101000001000100100100111110101110000111110110101100001111001100101000010001001000101011001010101111111101111000100011111110010011101101101100100010100100101000110110000111001010110001010001001011011010101110011111110110000111100000010010100110001111100001110000001011010100101011101100001100001110111100111100001011010011000101100010010111011110101101111101100111110110111011010010101011001100110001010000100110101010000010111100101011011011110110000101111011110101101000110001010001010000110101001110101001011000101011101011110100001100000111000000000010111001111011101000011011110110101011100110000000101101101000000101110010110101000011101001010010010101101010111001111101110000000010011110011110000101011101001100111000010101010000010000101000000101001111010110100011000101110111110010001110100000110111011000010100101110010000001011101000001111110100001000101100011001100001110010000100011111010010011100010100010000101110110101101100100111000010010100011110010100010000010111000001110110010001000110110101111100001000111100101010000100010101011010101010011110010110111100001101110001000010110010011100111010111000001010101011100101110110101101100001110111100001001100010110110000001000000101100011011011101101111011100011010010010110011000110000010111110101111110111010110000110010001001101100111011010000110001001001001100000101110111110111110111000010010101010011010110111000011010010100000111101010010101000011010000100000101100001010101000001110111001010111010100111110111110110001010100011001111110101110101000010000111110000111000001100010000011101000001100011110110011100000001101011111111011011111101111111111011100111111001111100101110011111010010001010100110001110011110100010001001100011101001111011001001100001110011111101110011111010100100010011010100110010100011010101000100010110100011100111110100101010110100111010001000101111001111010010110001110100010101000100100100110110011100110000110011010001101101101101110101000101110100001100110100010101111000100010010101110100111110101001011100110100100100011110010000110011011001110011101010010000011111110111101010100100000000011000000100001001101000010011110001100011011100000100111001101111011100101111111011111011100011000011001001111011101011100111010000010010000001000111001001010111001010000011011000010001110010010001010101001010100101000101011010010100110101100000110000010000001000111001100110100010011011001100011001010010110001110110100000110011110100110101000101000110011101001100111111000011111000000001010011011001100111001101011111100011110000111110101011010001100101000000101101101011110111001010001000011111111111111101011111001111001001000010011000001011111110101101110100011011011111011111110011000101111110111111011101100111010111011101000001100111100100011110101000111101111100001110101101011101010011111110010001100000110011100000100001010110100110011011010101100011111100000100010000101010101010011100111100010101111010111110001000101100000001010100000101111111011101111001101010010010100101100001101010001111101101001110001011111100001111110111001110101011100110111011011001110000011 +ls3msgs +010101011111101010000110101011111110000110011--------------------- +001111001010101100010011100001110111110110101--------------------- +000010010110001101100101111100101000001111111--------------------- +100011001111000101001001100000101101110101110--------------------- +111100010101111000111011111001101000110001111--------------------- +000101101011001101011110011100100011010000101--------------------- +110111000001100101101010100011101011001110010--------------------- +110111011110011100101011110010010100110111011--------------------- +000010001111111110100010011011111000010011100--------------------- +110101111000000100111010001111010101000110010--------------------- +ls3cwds +011111101010000110101011111110000110011---------------------010100111000010111011100110101101010101001100011000010110011010001001111100101001000001000001010011110100111100010101111111010000110101010 +001010101100010011100001110111110110101---------------------011110111011011001100001000001001110001000001000010001111001000011001110100110110100010010000111011100010000010111101011011100101100011000 +010110001101100101111100101000001111111---------------------111111110000100001110110010110100110000111100011000111001101000001011000110001000100010101010101101000011000111001101111111110111001011101 +001111000101001001100000101101110101110---------------------001100111011100001110100000001001111001011010001101100000010100011001100010101011011100011110101000010000110001111100110000001101110001010 +010101111000111011111001101000110001111---------------------000110011010110011111001011010100101010010100000111000110111000001000110110001010010000001011000011011001110000101000111000101101000110110 +101011001101011110011100100011010000101---------------------000111011010011100111010010001111011111111001011101101111001100110001010100110111110010001010100100110101010011001001011110111001100111100 +000001100101101010100011101011001110010---------------------010101001110100101110010010100100010100110001010010001000111110010001100001010010011111000111001111001111100010001001010100101101001011100 +011110011100101011110010010100110111011---------------------000011100101100001010100000101001100000000110001000000101101110011010110100111110010000111001001100011101010000110000111000000100010100011 +001111111110100010011011111000010011100---------------------001100110100100000000101101000100000000111001111010100110001000010100001001101110110111100100101000101100110001110000001110101100101110111 +111000000100111010001111010101000110010---------------------110010100001000101110100100010101010100000101011000001110100111111101110110001100101110101101110000010111010010111000001111100001111011000 +ls6msgs +010011000100100011000000000000010110001011011010011110101011001000100101011101011100011100000100100110100011110--------------------- +011101011110110111111100110011100110011101101111111001110010011111001011110011100000010110010111110010111111010--------------------- +000100101100101100010110011111011001100101110100100000010110000000001010101100001011100111111110110111011011010--------------------- +111110110011111000100110110100001110011111101000011100000110100011001000001101101000000100100101110011011001110--------------------- +001101101011111100001001000010000011010111101110010000111111101100100100110011001111000011100110111000111110010--------------------- +001000110111111010110100111101001110010011010111100001010101001000010111100000001000011111010000001101110011110--------------------- +011100010000110001010101100000110101011111111011101001100100111101110010000111100101110010110111010011111111111--------------------- +110100111101011110000110100111010001011111111111000110100100000010101010010000001101111011001100001100010111100--------------------- +101001000100110001111100001011100101111111010101100101101111100011000010110101010110010010111101001110010011000--------------------- +001010010111101001100000001111001010110110001010000111010010001100000100111000100111101000011001010011001000101--------------------- +ls6cwds +100011000000000000010110001011011010011110101011001000100101011101011100011100000100100110100011110---------------------111111101011110111110101000101101111010010111100101101100001011110011001001110110101100001111001011011100010001100010010000000110111001011100011100111110000110100110011010011111001001100101110111011000111001001111111001101010010110011100010111001100110110110100001111111000100 +110111111100110011100110011101101111111001110010011111001011110011100000010110010111110010111111010---------------------101101011110001011001110001001101001010001100010000000101110011010110010011110000100010101011011111011101110011000111111101000110110001011011001110111010001011001110000111010011001011100011110001010000110000100101110001001111011111010000010110110100001001101100011100100100110 +101100010110011111011001100101110100100000010110000000001010101100001011100111111110110111011011010---------------------100100111100011001100011001001010011111001100110010010011011010101010001100001100110111010100000110101100100110000111100010000111101000001111000010011100011111111110100111010111110010101001101000010110000101001100000111110011101111011010011010010101110011010010010000001010111 +111000100110110100001110011111101000011100000110100011001000001101101000000100100101110011011001110---------------------110110111101000110110101011100101100110010000101010110000110111100010110101100110100111100100010001010010011011100000001111110010101011010101110101011001100001100111100010111000010010100000011011100001010110001001111011100001000111011001101011100011010010100001111110010101101 +111100001001000010000011010111101110010000111111101100100100110011001111000011100110111000111110010---------------------111101011011100101100010100011100011110011010000111111010111001100011100010101011111001100100110111000000100111110101010101101011010111100101110101010010100001000111011001001101010101001111000100111001111001000111101111101110000111100001001000100110001111000111111111010010011 +111010110100111101001110010011010111100001010101001000010111100000001000011111010000001101110011110---------------------100010111101011101111100001111100000010100100010110100000011100110001000101101110100010111110000010010001110001110110001101100110010100000111100110010101010001000100010110011100010101100111011011100111110100010111110110010000010110110100100100000110100000110111010110101010110 +110001010101100000110101011111111011101001100100111101110010000111100101110010110111010011111111111---------------------101111110111000100011100010001000000100010100001001000000110010111101101111010000000110110011110011110000010101011001101100111100001110010010100101010110000110101001000011101010010001010010001000011101010001101001100000000111110100000000100010100100000011100111111111000000010 +011110000110100111010001011111111111000110100100000010101010010000001101111011001100001100010111100---------------------000000000101100111111110101000000001010111110100001000111001110011000100111001110111100111001111110110011000001100100000000000101001101111110010001111010110010011001001111011111010110001001111110010010010111000011001100110100111111110110010110010101110011010101100100101010000 +110001111100001011100101111111010101100101101111100011000010110101010110010010111101001110010011000---------------------110111100101111110000010101110001010110001000001100110011000110100001011101010111000011101110111010101110001001111000001110101001110101100111011011000000011010111011101111111001111101101111100111100000001111111100111100010101100010011110110001011101101100011001110010001000011 +101001100000001111001010110110001010000111010010001100000100111000100111101000011001010011001000101---------------------000101100111010001101000000110101111101101011010010110101110001111001001100011000001000000100111100100110101010101011100100100010000100111111110011011100001101101100101010100101110000110111111110100000101010100110001010101011101000001110001010010111011111100111000010111000000 +ls12msgs +000000110100001000001110100101111010100000001001101110101110001010011001101101000110010010101011100111100010100110100011010100100011111101011100101100001100000011010011100010101111010100011111111000111010001101110010010101000100001100110001110--------------------- +110010011110100110101010101100011110010110010101000000110101000000000110001111100110011111101110101001000100100101011000010010100011001001001110000011001111101100101001001100100110000101100001001010111010001111000101001110101011100001011100001--------------------- +011011100010110001100001001110011111101001100111001110101101000010110101001011001100011101111001100111101001001010010010011110101111000010111101101010010101001101101001000111100011100110010000001001001111100110010000010000011110100101110001110--------------------- +011001000101100110010111000111010011111011111100001101000101101010110100110110010111010111001011101010101001101111001111111011010001100011011101110111111111011011001101110011010000101010010011111101000111110101011110011001001110000010110101111--------------------- +000100010010101101100101100000110011111010011111101000010100000000111000000100101001000010110001101101110100111111000010111010111001001111011101011111011101100101001011111001000110011101000110001111100011110001010101010010100010010100100101100--------------------- +011100010001010011101111110101101010001101111100011010101010110001101000101011100101000110001111110101100000000101101100001101100111011111010101111001110111110010100100101101101110110001101001011111110011000000011011100001100110001110100100110--------------------- +110010011000100101010011011011110111010011000010111011000110010100000101111100001001000001111110001101001101111011100101111000011000000110000011011001011100010001000111011110111110100111110111010001101101010011010011011101100110100010101111100--------------------- +110101010111100001101100011100011010111010010101100111001101001011101100101111101110000110101010100110010110011010010101011100110001010011100001001010001000100011001000001100000001111100100011010100111000110111001110001100111010110101000001111--------------------- +000110100110000010101101011000001100100001111011110001011010110000010100000011011101011010111011100001101001001001111001010011101100100001000101100110010000101001010011000000010100101101100111111000001000110011010110011000111110000111111010111--------------------- +000111100110010110101010101110111100101101000100101101110111110011000001110000100101101000101000100011001110111011011001001011000101100101010011011110000110101010011010010000001001000011001101101010111100110011100000100000101001011010000111101--------------------- +ls12cwds +100101111010100000001001101110101110001010011001101101000110010010101011100111100010100110100011010100100011111101011100101100001100000011010011100010101111010100011111111000111010001101110010010101000100001100110001110---------------------100000010101101011010001101111010100101100100010000000011111001111000101110111011011000000101000111001011101000101010110101010110010011011000010111001001110011100010000100110110010001000111011111011010010110001100100010110111100010010000011010000010000000001111000101000111011110100111000100011110001100000100010111000101011100101110001100101001110010101110001110111000100110111111100011001001110010100101001010001010001011111100111101001010100010100100110100100110001111111000101101010110110010001001101011101101000010111001001100100011001000110111101 +101100011110010110010101000000110101000000000110001111100110011111101110101001000100100101011000010010100011001001001110000011001111101100101001001100100110000101100001001010111010001111000101001110101011100001011100001---------------------001111100010111110000000000001010101010100100111110110011100011001110011000100111101010000001010101111011111111110000110101001110110000011101101011101000101111111000110011010101110110001011110100100110101011101011110100100010100111100001101100001011100100100110111111000010010111001100011110100001101010110111100111001101101000110100110100011111011100111100001000101000011001110100100001010011000111011111000101100000001011111011101010110100111001111100101011110000111000011100100100000101000001100011101001001011001100000000000000111100100010010001001 +001110011111101001100111001110101101000010110101001011001100011101111001100111101001001010010010011110101111000010111101101010010101001101101001000111100011100110010000001001001111100110010000010000011110100101110001110---------------------001000000001001001101011101100110001011111100111101010101101001101111110010010111101001000000110101010011001110000010011101111010010001100001110100111101111001110010111001100101110111000011111000100001011000101011011100001011000010101110110010010011010000011110011101010010011000000101010001100011011111110111011111011011000011110000100100100011111100100101111110100010111001110011111111111011110000001110011011111101010001011110010011011101100110101110001000111100100000111001101101101110100001010001000111000111111111000000000000110100111011111110000 +000111010011111011111100001101000101101010110100110110010111010111001011101010101001101111001111111011010001100011011101110111111111011011001101110011010000101010010011111101000111110101011110011001001110000010110101111---------------------010010110110111011101100100001111101110111011110011001001011001010011110010100101001000011101001110110110110101110011101111110000111110010000101011011100101000110110011011001101010000100011101001101010000011101011101000001000010100001111111101101100100101110111010110101011100110000100100011110000110110101011001000001110001010100110100100010010011011001001010110110000101001111100011101010111110111001101101011001011010110001110100001101100011000100110111010100001001101101011101101010111111001100011010010001001110001111110011100101000000100011001000 +100000110011111010011111101000010100000000111000000100101001000010110001101101110100111111000010111010111001001111011101011111011101100101001011111001000110011101000110001111100011110001010101010010100010010100100101100---------------------010101000010101000011110001100010000111000100010010011011010001001000111100001011101011010000011101100010111010000100111111000100100101011110011111100100001010111110100111110111010011001010100001001100110000101001111101000101001001010101100010110110011011111111000000100001101010101110100011000010111100001011001001010100010011110100100110010000001111000010011101001111011110010111000110010000101100110001011101011011100011101011110000001110101110110110100111100111110100000110110001110110100100111111000011001010000100111100101011001111101101111000000 +110101101010001101111100011010101010110001101000101011100101000110001111110101100000000101101100001101100111011111010101111001110111110010100100101101101110110001101001011111110011000000011011100001100110001110100100110---------------------101100000010000100001011110011100011011001000110100010101111001101010011010001001000101111100110111000101111001000010110111001110000111110010100111001101110110001010011100101111001011011101111001110110101000011111100111010100001011011000010101100001010110101011000001111111000110001001111001100000110101111110011001000011111010000110001101100101010101110010100001001111100001011111001001010111000111100001011001110110101011111101001110000000000101101001000001101010000011110101011001001100010110101101001101100001000010111111101111001111100000011110110 +011011110111010011000010111011000110010100000101111100001001000001111110001101001101111011100101111000011000000110000011011001011100010001000111011110111110100111110111010001101101010011010011011101100110100010101111100---------------------100000111001011111001010101101111100101100100110101001101110100110010000010100001011011000010110111010011111000011101111001110110000110100011110010101110001010111100011011001110001110001111011010010011000001010000011100110001100111000110100110111110111010000100111000011000000000010111100000100100001111111101100101110000101000011001111111110111100110000000011000010011110100100001101010001111010100011000000111100101101010110000110101010011100001001011101010101100011011101110111111000101101001110100001010111110000110010100100001110110001101101100101 +011100011010111010010101100111001101001011101100101111101110000110101010100110010110011010010101011100110001010011100001001010001000100011001000001100000001111100100011010100111000110111001110001100111010110101000001111---------------------100100101011010101111111010110011001111111001001011100001100100101111101110110111101000011100010110110111110110100100111101011100111110100100011110001011001101011111010001011101110000101000100001100110110010000001000110110100000100111001100011110010100100110010111011011010011110010010001111000100010011001101111010010101110110011011011011100100110001111100100101000000110000001100110111111110000011110000101110111111000011111111111000001110100000000001001111011101000101100110001010100001001010100010001101110101001100111101101100110101101011100111000 +011000001100100001111011110001011010110000010100000011011101011010111011100001101001001001111001010011101100100001000101100110010000101001010011000000010100101101100111111000001000110011010110011000111110000111111010111---------------------001101110000110110110010111001000001000001101100011101000000101011010010001010011101100101011101001100110110100011001111001000111011010011001000000101111101010110110010001101110001110010110011011111010011110001001110000011000010111000011101100110010010010100100100110000001111100100001010101011000100000001000101101111000101110011110000101101000101100011011111011100110100101101000000110110010100010010111101111100100001111011100110101000000101001001011000110100110000010111011100111100001000000110010011110010101111010001011101010010001111100110101011 +101110111100101101000100101101110111110011000001110000100101101000101000100011001110111011011001001011000101100101010011011110000110101010011010010000001001000011001101101010111100110011100000100000101001011010000111101---------------------010100111000110001101101101111100010000001101100110101001010110100101011010001111110110111000001100000000010101001000100000100000001111111111011100011101011010101001101011001000101101111000101010111001010110000111011001110100011010001000100100000101010000110101101101000101001011011111011101000111000000000001111001000101111111111101111101000101010111011001111100010111100011101100101010000100110110011001001110111000001111010110000100010001001100100001110001101110011111110100100111001110010001101101000111010010111010111111011000110001110111111000011 +ls24msgs +111000100110111010011100100011011111100010110101110001011110001101000010010110010001011110101101110010100010000011001111010111100111110100111001011111000111010001011001101001100111010101011011000011111010000100010010110100010111100100100011110011101110111001000001000000011110000101111110011111011100001101001000010001010100011010011000010101100110001011101000111100111001000011010101011001001000100010010110100000000010001101111110010000101011110100111010101011010100101001101010100000001101000010101100011--------------------- +000101011111111101111110011101000100110111101101111110111100000111110101001110101000000001010011000110101011000010010101000001100001110100101000100101101011111000110111100110111001110011001111011001100101100010011001100100001111010101011111110110001111110110001100100010100111111101011100001100001101000001011111110110110110101100001111010010001101010011010111011011110101100011000010000010111001110011001111101011011101100110001111101110001001101101010011000001111000100010100010010101111011101011101010010--------------------- +000110001011111001101111010010111011110001111101011110100000111111001010111100011011100000000011110100000100010000011101001111101010001101110001001001011011100111010000111000010111011110110000101011011000000100000001100110110111100110001110100110111110100000001101000011100011001110011011010101111110000010111100001010111010010111000100001110000110011010111110101100000011010011001100011101010001000100010000110111101101100101001000100101110001111110100000000110111110100110111010001001101011101100101010101--------------------- +001010011110011101100111011111010010011011011110010101011001101110100100010110010111001001101101110101000001100111001101011001011010011111000110001001011111101000111111001010011100111101010100111110000111101011111001101101010111110111101110001111110110010111011000001111001000111000110000110000010000010111111001100001011111000011001001010011000010001011111110001011110101100011011110111000110001111100011101010011111111101111011111011101111101101111010100001100001100010010010110011000110001100001010111010--------------------- +101111100010100101011100001010000011010010000110001110100011111000111000101101111110011101010010000111101010000101011001001111000001100011000010111001100011100101000011000000011011100001000110001101010100001100011110011000011001011100011111111111101110101110100101100001101010001111010110001000111001000001011111011000001110101011011110101001100111000011001000101010010001001110011011001111010010010101011111110101101110001000010010000001100011100110111001011011100011001000001001101101101000110110000100100--------------------- +100101110101011100111110001111001011011011001111001001011010111010111110110011001001001100111101001111100111001111010100011100010111001010100010010100001100111100011000011110010001010010110111110111110101100111110111101011000001011111110101010011101011010000111010001101010100111010001011010011011000011011000100001011101100100111000000011100110100111110100001101110001100010110111110010100000111000100000010010000000111100000010011010100000010100111111001101101111111110001011110110111100111011101110011101--------------------- +111001010111101010110001101101011100110111111100010111100010000011001100100110000010001110011001100100010111011010010011010110000001011101010010101100100111001111110110000001000111001100100001010111100101100001110100111001001101010110100011011111011010001101110011001010110101111010010101101111111011101010011001110001100100000101000001001010011101100000110100001100011100111101010110011110001011100001101101100010101100111000010101100001111100000101100000100100010001010000100011110100110010011000011011011--------------------- +010011000011001001011001001110010111111110001111010101011010101100111011111000101001000100011001001100001100010011000110111111011011110110110101010010000010010001001010011010101011001101010010100000011011011010101100110100011000001001011001101011110110111000101001000010011000101111100111111001100111111111100110101001110000111010000010011011011100001101101000111101001110101101010100110011100111111000111000100011011111011011101010000010100111000100101110111000110111110001101111110100111110011100110100010--------------------- +110000001100010000010000110100110100011010011101110111110111011000001110001010011000100000100110110010111000100100100011011100101011101010010100101001111000010000101000100010011111010110001100101100111011001110101100110000100010111111111000000010010010100001101000110110110010100001100010110001111001100101010001111101001001000100011011000111001000001100100110011010100100010111010000001110010110101001001011110001101010001001001010101100011100001011010100101111100000000001100110000101111000111010010011010--------------------- +011110001110001111110011010000011001011101110001110010101101000001010100010011101010101000111010100001000111101101011101100011010100011011111100110001101100100111010111001110010010010000010101010100011001001100011110100101110100100000111101011110001110011000111101001100000000111111011000100001100010101001001111110011101001111010000110010100010101001001100010000101011010011000000011010010110011010010111011001011001010011011111111001000000011111111000111000110000110001110111010101110101110001000011101011--------------------- +ls24cwds +110001011110001101000010010110010001011110101101110010100010000011001111010111100111110100111001011111000111010001011001101001100111010101011011000011111010000100010010110100010111100100100011110011101110111001000001000000011110000101111110011111011100001101001000010001010100011010011000010101100110001011101000111100111001000011010101011001001000100010010110100000000010001101111110010000101011110100111010101011010100101001101010100000001101000010101100011---------------------100101101000100001000001000101100111000001001000001100010010000000111100100001000011110101110000110110001001011101010110100010101000110000001000100101001100101110011000101110010100010100101110011000010000011011011000001100001000101010100111000110000110100110110111010011100101111001011011010000011001101101100100110101110111010000111001011001110000111111101011011111001001000101110110101000010011000101111101000010110001100111001110001111100111111111101010111000110111010111111000101000110001111101100110010011111000000101110101000100010110011010000100110101011010001101111100001001100010010100011011101110100101100000011000110000000100110110101001001100100001000111110010001100010101000100010100010111011011000000100110111100101101100000000011011110100110111111101001001101001101001111110110001001010010110010010110000000110001100110010001111010111010001110000110101101101011000000101010111001011100010000100110010010010010111100101110001111001010111011010100100101010010110011111011111001111110001100011110110011101011011010100101100011110100101000111101110011000100011110011000111101001010101010100100 +111110111100000111110101001110101000000001010011000110101011000010010101000001100001110100101000100101101011111000110111100110111001110011001111011001100101100010011001100100001111010101011111110110001111110110001100100010100111111101011100001100001101000001011111110110110110101100001111010010001101010011010111011011110101100011000010000010111001110011001111101011011101100110001111101110001001101101010011000001111000100010100010010101111011101011101010010---------------------010000011110001111011011001010011001110000010110011100101001100101101101001100100111011100111100010111001111000101111110111011010001011101010110010110000110001111101100000110011001101011000110011110110001101000110000110100011001111101111111000111000010010010111010001101100010000101100010111001100001011011001101011001111100111011000110100000111001000000001001000100000010011100010011110000011101010110000110010110000011001111101001000011000101100110010001100111110110101100100100001001011010010110011010001111110001100001001001000010011110011010110110111010101111101111101100011111110001111000011000100111100111101000100001111000000111001001000001010000001101110001000111101011111000000100100001100111010101100000111100010001101110110100110101110110000010010101001000000011000100011011110110101110100110000001100000101010001001100110110100010000100111110001111110101011110110100111100111100101001100111000100011011010110101101111010001101100001111101101011100010000010100101001001110111010101100001101100010000100110000100011100111011010101000110101110011011010111010011101011110111001110001000010101010 +011110100000111111001010111100011011100000000011110100000100010000011101001111101010001101110001001001011011100111010000111000010111011110110000101011011000000100000001100110110111100110001110100110111110100000001101000011100011001110011011010101111110000010111100001010111010010111000100001110000110011010111110101100000011010011001100011101010001000100010000110111101101100101001000100101110001111110100000000110111110100110111010001001101011101100101010101---------------------000110111100100111010110011111111101001011110001100011001001001000100101011110011111001000101000011111100010001010010001000000000011010100100100010111100111001111101010001101010000011001101001111101110101000111000111001000101010111010100101010000011101011100011010001010101001100100000000011100010000011111010101110111100101010111011000010101010101010101110001011100010000011011000101111100001010010100000111101110110101000101101101100100111111001101011110001001001011111000000101011010111000001110101100001100111101011101001101100101011001100001100000011001100000011000011011001111100011000111010011101000110010101001101000010110110011101000101010000010000011011010000000011111111000000011000111000011110111010001100110111000101011011100110110101110110110101011011001000110111111010101100111111100000100011001010001100000010101011010101001100111100000010000001010101101111101010100010001011010110110000110010000000011110000010001111110100001101010111001000011101000011101101101110100100111101110001110110111111010110000110111111011000100000011111001111111101100000000000010000011100011110101001000101110 +010101011001101110100100010110010111001001101101110101000001100111001101011001011010011111000110001001011111101000111111001010011100111101010100111110000111101011111001101101010111110111101110001111110110010111011000001111001000111000110000110000010000010111111001100001011111000011001001010011000010001011111110001011110101100011011110111000110001111100011101010011111111101111011111011101111101101111010100001100001100010010010110011000110001100001010111010---------------------000110010110010001010001101000100101010101010101101110010000000001001110010100000101101101111011101010010101000111010010101011100011001110001000010000111001001100100000101001010010111101000001011001010011101101101111001011110100000110010100110000000010100010101101011110110110110100001001011001001111111010001000111111100110011101100111100101101110011011101000010111010001111100010000101011001111010011110100111000000101110101010110001011011111101000110101010111100110111011011100101001000010101001000101110000111011111000101000000101101110001011010100001100000101010010100110110010000111111000100101010110111010100001111110001111000000100010011101011011000010110010111010000110110011000101100111010000011011100001101100101010100010100000010010111110011011111110000111001111111101010101001001110101000100101101011100011010011011110001011001110101011010010111000001001110111010010101000101110010101110111101110010001110110000010001101010011001101010011000010000111000110111011101000100101101011101010001101001010110010010011111110010010011001010000001101000011100000101110110101001001111000110011011000101 +001110100011111000111000101101111110011101010010000111101010000101011001001111000001100011000010111001100011100101000011000000011011100001000110001101010100001100011110011000011001011100011111111111101110101110100101100001101010001111010110001000111001000001011111011000001110101011011110101001100111000011001000101010010001001110011011001111010010010101011111110101101110001000010010000001100011100110111001011011100011001000001001101101101000110110000100100---------------------000111010101111110000111100110011111001101000001110110001010100010100110011000010001010010111011010110110010011110010011000001110011001011010100100111010011001000011000101011101000010001010011101011000110110110111011100101111010001001000100010010010011110111101110011111100101110100100001001010101010100100000100010111001010010011000101001001100110001110101110010011111000011101111000110110101110000001110010010100001111011101010011100011011101010000111101000010010110101011101111011110001000100110010110010111110001100100011101000000011101011101100010000111010011001011101111100100000100000111000001000010010101010000011111010100101101100001011000100100000101010011010001101000011000000010110011111100101001100010000111101001111000110011000110001001001000000000101011111111101101100101101000100101110100111111010110110101000010011101011100001111001010010111101001001110011110100101010001101000010010011011011100101000100111000111001101110010110101011011100010101000011000101011100101101000011110000000101001100011011001100101100001110111001010111111100110110000100101110111110011010101101100001100010011 +001001011010111010111110110011001001001100111101001111100111001111010100011100010111001010100010010100001100111100011000011110010001010010110111110111110101100111110111101011000001011111110101010011101011010000111010001101010100111010001011010011011000011011000100001011101100100111000000011100110100111110100001101110001100010110111110010100000111000100000010010000000111100000010011010100000010100111111001101101111111110001011110110111100111011101110011101---------------------011001101001001000010010101101100000100100110110001001001101100100000000010111111110011101101110001100001001001011100101000101101101110100100010001011001101010100010000111011010000011100110111100101110100000110011111000110001010011000101011010001010010000110100000001100100000110011110000000010111010111000110001010101101010111001011010100110100101000011101000011011110010111011111001111011100111011100100001000010111000011001110000110110010010111011100100011101100110111101001011101011101001110000111010101111001101000110010100101100111010111001011110010001101111101110001110110100011001010011110110110000111101001010101011010011110101001001010010010110101101100110100110000010111111101101010000011111011001001110111000000110100111110110000101010100000010001100000111011011011111101100000111011100100101101110010110000010000110110001010010001100101111101111101000101111011011101001010000000001000110100100010101110111001100110000110011001011110000000000110111110101010001110010110011000001000110100101000010000110110100010100110010001101001111101110100011111101110011101001101100011000110101101000001011 +010111100010000011001100100110000010001110011001100100010111011010010011010110000001011101010010101100100111001111110110000001000111001100100001010111100101100001110100111001001101010110100011011111011010001101110011001010110101111010010101101111111011101010011001110001100100000101000001001010011101100000110100001100011100111101010110011110001011100001101101100010101100111000010101100001111100000101100000100100010001010000100011110100110010011000011011011---------------------011101000011100011001110000100000101101000101000101101111011101001011101101000000011010111110101101000011100000100010010000111110110100100011000111000000011001100011110000101000110111101010101001110101110001111111111100101100011000001100011111111011111111011010010010010110100110011110111101001100111011000001111001010100011001110100110110001011111111110101011101001100110101010011010101101011110001001010110000101100001101000110011101111001000001100000111111000100110001001100110001000000011100101111010011011010101111001010100011010110101111010000011011111010001010100001101111100110000111001100011111100110100100010111111111100100111110100010010110101011111011010100011110100110110010001110100110101111011101110110101010111000010011111110100000100101001011010001101000111000101100000111100000110011001010000011010010111001101110110011100101110101100110000010001000110100111000111001101111111000011101001011110010111000010010101111100001001010001000001110111001110010001110100101100101001001011011001100000000110011100011111011110010111011001011011100000100110100110011011011001000010011001101011100001 +010101011010101100111011111000101001000100011001001100001100010011000110111111011011110110110101010010000010010001001010011010101011001101010010100000011011011010101100110100011000001001011001101011110110111000101001000010011000101111100111111001100111111111100110101001110000111010000010011011011100001101101000111101001110101101010100110011100111111000111000100011011111011011101010000010100111000100101110111000110111110001101111110100111110011100110100010---------------------110010100111100010101111011010010101010001101001110111000101110101000100001101000001101000100111011001010010010000001010011111011101001011011000001011101111101011100111011000010000101101110001111111101111110111001111010000001000100010000001110110011110100111111100101101101101110011100101001100111101001110000101111001111010000010100010010000111100111100110101101000110101010001111100001110101111110010100110011111111101100111100010011011101000111001001101001001110000011010101110101010011001100111011101101111000011100011001000010101011001001011000111110110010110100001000100010011011110110101101000111101010111010100000110101010001101011100001111111100111011101010000101000010101101011110001011000101011001111000100111110100001001001001101001001110101011110010100010011111001100000100001011010001000101010111010000000111011100001100010011111010111000000000111000101010010101000111010101010111101011000111011000010100010110100001101101001101010010000110110001010000010100101001111010110110010100000110101000111100100110000101000110011100011100110111111011101100101011111011101101110101111100001001000001 +110111110111011000001110001010011000100000100110110010111000100100100011011100101011101010010100101001111000010000101000100010011111010110001100101100111011001110101100110000100010111111111000000010010010100001101000110110110010100001100010110001111001100101010001111101001001000100011011000111001000001100100110011010100100010111010000001110010110101001001011110001101010001001001010101100011100001011010100101111100000000001100110000101111000111010010011010---------------------011110000000110011010001100011001011101100100000011100001000011000100010110100101000000101011001110111111011011000101001000010010000010111010111110011111011001010011100010100000100010101100011010111001110010101111111101001110001110000000110101100000000001111000010010010101110000101101011010100100100000100010101110000100010110000000110100011011001010010101001111110011011000101101000000100111110000010010000111110100001110011100000010000101111001001100001001001011010111111001000010011100010010000100001110101001101011111001100011111011100101110111100010011011110111111110001100110110011011000001101110110100111000001110101111001001000011111001111101001010111111101000011110011110101111100010010110101111111100100100110001100111110101001001110011011001010000110101001011110100111011110100000111101001011000000000000010010101000101100011010111010110000100111000101011001111001110111010010001010001101100110110001000111011100011010001000011001001000001101000101110100010011110001011100111001011001101011101110101010110110101111100011000111110101001101001001010011000010011101111101100010100110100000100011 +110010101101000001010100010011101010101000111010100001000111101101011101100011010100011011111100110001101100100111010111001110010010010000010101010100011001001100011110100101110100100000111101011110001110011000111101001100000000111111011000100001100010101001001111110011101001111010000110010100010101001001100010000101011010011000000011010010110011010010111011001011001010011011111111001000000011111111000111000110000110001110111010101110101110001000011101011---------------------101101001101100010101011101001111010010111110111100111000100101101100110000011101000100110101111110110011010011000001101101010111010111111010010001001010011000000100000001101000010111011111110010001010001010001000000010101111011110010000011001000100000101011001011110001001110000101111101100000100100001001100100001110110010101010100001101100110011010100111010011010110000111001111001000011111010001111101001101001001100100110111111110111010111001101101000101001110110101111100111010001101011101000101000011100111000000001100110101011000011010001101101001011100101001111110100110000111101000000110000001000111101101010001010010110000111100000010010001011110001100101010000010100101110010100100101111111101100110110101001110010001000101110101000100001000011100011110101100010110111011101001001000010111100000110110110110110100011010111000010101111111101111000111010110001110100011010011000111101011100100000111101011001101100110000000000110110111111001111001110001111101001010101110001111011110101101001111011010000001011110101000011101110110011111011001101001001001110001010100100011111110010011001000000 +ls48msgs +000011001010001000000011010101000101111100100100000110011000011110101110000111110011001100111101101101010010111011000001000011000000100010111110101011001101101001010001000101100000100110100111010111001111000001111101100000100111100111000011011101100001111011001111011001010101001010100001110111010010101100000010111011110110101100100110100011111010110100001110000010110011110000111010010110100100110000000011100111000110001010010011110011001100001001001010111011101001001101010000011000101100011001110110111100111111110110001000001110100010001000101100110110010010110101001011011111100100011111111111010100011111110101100111110001000101000001010100000111100111101000010101000001111101010001001010100011001001011111101011110100001000001100110110101100011111111000110101011111110010010101110011110000110100000100110000101111110001110000000010001000010100111010011010111101111100010100101101001010101001111010101001011010011011110110010110000110110010110001010100010001001101011101001000111110111011001000101000000010100000000101100000000--------------------- +100111010001100001000101111101110000100000000000000101010100101101001000010011001100010111100100110101010101011010111010001011110010111101000101010010110111100000111010000111000010000101011011010011001000001000110101011111101110110101000111101101001101110001101101000111011111111111101100000111101111100100110010001010100110110011011001101100011010100011101111001100110010101111011111000001011110101000000110101111110100110111110011111001001010100011111001100000001101010010011001011110100100100110001001000101010111110010000000110100001000000101011010101001110010111011101110111111101100100010111010010010001100110011001100000101000101011101010101101100000110101100011111110101100110000110011000000101101001001001111000111011011011111000101011011011101110000000110011100001110000011100110000000001000110010111001011000010011001110001011000000011010111010010011010101000000101001111011001110100111111010000001101011001011111000001011100110101111010110100101001001001010111101101010111011101101101110011011100000110010101011001110101101--------------------- +101100010100111000001001110100100100110001001000110010111010100011110111010100110010010110000111100111101100110001010001010110000001011111101100000111111110101100100111001111010111111100101111111110001111100101100100001011001100001100010010101111101001101010111000001111010101101010111011011111101000001100010010110010110111111000111111011001100101010110111010100101111101111001011110101110001011000010100100111011011111011010111010110110011110100111110110010011111001101111001101000011110110010100010010111110110000010001011110110101000110110010011000010100101010000011111010000001001011000101101010101001110001001010101011100101110001010110101010100111010011110001010100010010110001100011111011110110000101001010011001001110000011101100000001011100010111001010110100001010111101101000110100111001010101001110100100110010001001010101011001100111001110110111101100000100111011000000000101110111001110000111110001101010101100110110110001101010001000110100101101110101110100111101011001000001111110001000101100111101001011010010001010101--------------------- +100011001111100011111001011001001000110000001000111110010010000101010111110000001011011110001011110011001111001101001001010101111110001110100100111000111000101001100110111110100000101011111001011110110111000011110101111100000110011000111000011101001011001011100101000000111101010110011110101111011001011100000111010010111111010010110111101010111100001111111101111001111100101110110001101110100000110000011100010100101010001011001101100001001100100010100101001010111111101110100111000111100101011100011101010010111101101101000110011011000011111001111011000011110011001101011111010100111101110001000100000011101110101101111110010000110010111110110100100111111111000010100001110001101100110110101000100100011111001100110111100111000000011111100110001101011100011011001000011110110100011110110111100000110001100110101110110000010000000010111000010101000101000111100010011100111000001111000110010110110100000001110110111011111010110011110001011111101001001111010101011101010111110111010010001101101000011011100110111001000100101011100001101--------------------- +111011110100011000100000001101110110111001000001111000010000011010011100111110100100000100000101011011101011110010100101000010100110011111101011111100110000000111100101101011100000010011111111000101111111111001010100001011110101001011011111111010101100000010111100100000011000000011100101011011011010010000111000111110010001110011010001111010000100100000000011010011110101110101001001100010110100101001110111100111101010101000011010100100010110101011111000001111011001011001111100111111010011100110111010001011010000011011101100000110110110100010101010111011100001010000000100000100001111111011110001101010001110111001101001010010110011011110010001100111000101101000100010100000001101100110010010010000010001110000110100000001100001101110110000101100001100111000011100001100001111100001100010010111100110011000100010010100001000001110111111110011010111101001010010100110011000101111000100000110010100001000011111000100000111100001101000101001100101001001111000110111011001100101101001011010011110000000110110010110000101000100010001000--------------------- +011110110000001101101010001110000010111000001001000000110010110011101111101010111001110010001010001111010011100110100010010100001011010111100100001001100111001101100100011101111110011111001011011110010110010101001100010110000101011010011010110110101110100010000111101001010000100100011111000010010101000111010110011011001111110111110001111010100000101000111111010101110000001111001110100100110011010000100011100011010100000101110011000101000100100000110000100001100000110101100000100010011111110001110100110001100010000000110110110000101000011001010010000010110101011001001001011101001001010111011111001001111010100011101011011110000001101001010110100110100101110101010000101010000000111110001101011010010110001010011011000001101101100110001010000100001110010101110000000001100010100001001001011100000110001111010110001011100001000000110000001001001000001001100100011101011101110001111100101000100110100001010100010010100001010000110010000100101110000111100110000011000011111101010011101101000011011101001010110100010110100111001100100--------------------- +111010101000111111000111000100001101100011100101000000011001011011011011010101111110000101100010001101110001100011110000110110100110110101011100100000000000111010110110000000011001101101000011011000101100101100110111101001011101101100100001111011100001110101001000001110101101010100011011011100101111000011100101111101010010101100011010011110110010110000101011001111001000000111101011001000001110111111000011111101011111111111000101101001101100001100101111001011111100010000010000011011100100101010101011100011011011101000000011011000101100001110101000101111000001111000011101101011101101111011100101011110111010100011000001110001011110110000011010001010011010011010000010000110111001000111001011000110001101110100111011111010110111001101010110101111010111011101100011000001000110000100001101110011101001111000100111011101011011110100011000110110110110011010100101010001010000001001010001010000101100000010011111101010100010110100001000010111111011010111011010010010101000110001010001000010100111110011110101101010000101001110100100001--------------------- +001010110011000001011001110101110001100101000101110111110111111000101100111110010010100111110000001100111010010110101010111011110000010111011001110000001101101001100010101110100111000000010010001011101100001000100101100100110101110000001000100111000010000101100101001011001111000001110011010000110000010000010110111101101101111111001011000001011000010010001000110001011011111100011001101000100110101111110101010111001000101000001001000111001111011010100011100001110100101101001011111101111110011101110111100110110101110010000001000111001110110100011000011110011100010000111111001011110110111001001011001111100011000101001010101001111101001101011110001101011010110001000101110010110011101111000100110111101111001111100100111100001101101010010011000110101001011000011011000011101101010100001110011100110011000000110100111101011110111111100110000110101011000001010001000101000011010000000101110110110101101111100000110001101001001101100000111011000111001100001100110001010111010101110000100101111011110000101100011001011100001101011010001--------------------- +100101110101101100001011000000111101000101111110011010000100100100010000111000100011010011010111000010001010010111111100100111011101000001001110000000101010111110101111001011000011101101011001110010011100110000000011010110110100001110000011100000001001011000100110111111010001001101001011010001100110111001111111000011101010000110000110000011011101011010100011111011010001101000101100111101101011100011100101111001101010101111001011000000011011001110101101110101110111011010011101111011100100011000100111111010011111110101000011111111100111000010111011111001000000011100111011000010000100100010011110111100110110011011111110010011010000001110010100011111111010101011001100100100011011001110000000101011000100011100010111001100001100001001100111001101101100011010000011000000101100000000100111110101010110101100110110110011111000011010010010110001011000100011010001010111100001010001000001100010100010000110011101110010100010100011110100001001010001100110111011101000111110001010110010000111101101110000011110000001101010101101010101011--------------------- +011001110010110100001001111010111110110111101000111000010011010011000101010000100000110111100110111110010111011010010001000001000010001001110111101011111010000001100100101100101001011100101101001001101111111001110101000110101010011101110011011001010110010010101011010110111010011011110101101010001111011000100001101111000101000110110010110101111100011010111100011100000111110101001001000001100101101111101111011010110111010110001011101011000011110111001001001011111000010000001110001000011011010110000010101001111111010100011110101001001110001100111000111110010011101101001011101100101000101011011011011011001000011010010110010001111111010100100000110111100100110111111000111001001000110010101011100101011100110110110011000010001011111011101000011100110100001001110100111111100101010110100001101110001010010100100110111011001000001100010000101010111001101100110101001010010001100111110010100001001011010011000100100100100111010011000011100010000110101111011100100010011010100100111101011111011011101001011110101110011001110100001111101--------------------- +ls48cwds +101101010010111011000001000011000000100010111110101011001101101001010001000101100000100110100111010111001111000001111101100000100111100111000011011101100001111011001111011001010101001010100001110111010010101100000010111011110110101100100110100011111010110100001110000010110011110000111010010110100100110000000011100111000110001010010011110011001100001001001010111011101001001101010000011000101100011001110110111100111111110110001000001110100010001000101100110110010010110101001011011111100100011111111111010100011111110101100111110001000101000001010100000111100111101000010101000001111101010001001010100011001001011111101011110100001000001100110110101100011111111000110101011111110010010101110011110000110100000100110000101111110001110000000010001000010100111010011010111101111100010100101101001010101001111010101001011010011011110110010110000110110010110001010100010001001101011101001000111110111011001000101000000010100000000101100000000---------------------111010011000111110111110010011101010110101111101001111100101111100110011110111010110010000101110010011101010001011101001101000100111110100000110101001100101001001010011101111110000001101110101001001110110100100010000110000001000011000010100100010111101000011110000101001100111011100111101000100111100011001011010000101001111011111100001100110101110101010100001101000101111101100111011100100110010011001110111101001011010011111011100100001110010101111000010111111110100010100101110011111101001111101111000001110001011110110010001111100010000110010110100011001100000111000100010011100001110000101010010000101111000010011010100010000000110010010010011101011011011101111011101101110011001100110010111110101100100000010010001001110001110100000011000011001001111001000101110100101000010000100011100110010001000110001011001000110100011010111100001111000000110100101001100010100101111100111000000100100010100001111010110010001100101001010111010001110011000111101110011011000110000010000101100111100011100110110101110010010010111101110011111010010000101001011000101100010111110100010001010110001000100000011010011111110000111001001010000100101001011101010001110001000000001100000001000110010010011100000100110110100011010110010000111010101100111011110101111101010010001111001001110101000100110010100111111010110110011001011000000010011010011001000000100011000000000001110000100100001010010001000010000111111101001110010100010011000010100110101011000111010000111101101011101101001100001010011011111001101110110000101001010001101101110010100111010110010111101101010000001110101100001110000111010000001111011001101010110010000011000101000000001000111100100011110010101011101001101110111111111100111100000001010010010000100011101000011101000101101110100000000011100010111010000100100011001100100001101101110010011000000000101011101000011011111110100101101101001101110100101011110001100100000101111001110011100011111101110010111000111010111001011011111010101011011100110111000100100101100011111111101000000001111011011000010100110100100000011110000111001000000100100010111011110010001001001000010011011001011001000001001111100011100101010100110010011111100011101111111111110000000001001010101100000111111100101101000100001 +110101010101011010111010001011110010111101000101010010110111100000111010000111000010000101011011010011001000001000110101011111101110110101000111101101001101110001101101000111011111111111101100000111101111100100110010001010100110110011011001101100011010100011101111001100110010101111011111000001011110101000000110101111110100110111110011111001001010100011111001100000001101010010011001011110100100100110001001000101010111110010000000110100001000000101011010101001110010111011101110111111101100100010111010010010001100110011001100000101000101011101010101101100000110101100011111110101100110000110011000000101101001001001111000111011011011111000101011011011101110000000110011100001110000011100110000000001000110010111001011000010011001110001011000000011010111010010011010101000000101001111011001110100111111010000001101011001011111000001011100110101111010110100101001001001010111101101010111011101101101110011011100000110010101011001110101101---------------------000001111101111010101010010101011101101000000010111110100100110111110000000000001001110010110110101001001100001111001001000101001101011000001110010111101001100001100001001100010010110001001100101101010101001100101101001101100111100100011000011010011111010001010001011011000010011111010101100110010000000001011011111101101011100101010000100011011000101111100101010110010010110000001110111000110010001111100111101110010010010000010101000111111111101100111101110001101010110001100011001000111111011100110101101110100011010011111100110001001001010110101110011100000010101111110001110111100010100011000001000010100001110111011001101010010110010011100110110110100000110011010111100110101011001101000000001000110000101000101100010111011110101011111111111000000011000100101101101100011111111000111011110010000110011111010010010110111011110101001010100000110110110110101010110001010001110110101100010110000010100010110100110001011101111000111100000101011100000100011010011011111100001010101001101010000000111110000011010010011110001010101000001101111101001010001011101110101010011111101001000010010111000101001011011010011110110110001011111100111000010010010001110110011110000101101010010011010000011111011110111001101101011100110010111010001000001011001101011110000011011001100000000000001011010111001011100100111000100100111110011100110001101010010100001101101111001011100101010111110111000101111010001100010011101000010111101101011011011001101111110100110110000101110011111001000111101000001110000001010100011100101111010100001100101111010100110011000011100001100011111000010011111011010110100110110010110000011000110101000000010100110100111011110111000010010100101010101001001111010111111001101101001001101101011000100011011110111010011111001101000010001101110110101101101011110001101101001100010000110110010000111110110110100111110011101010100111011000110011110101011000111111000010110101100101110011001001101111110100001011001101110001010001101001110001010110100101001010010010110100011101110111111111100100110000000000010101011110100110010001110000111110011000110100100110100100001001100111110100110011001111111110011001101111100111001010110001111111001000101011111010011010011001011110101010011000000001100101 +100111101100110001010001010110000001011111101100000111111110101100100111001111010111111100101111111110001111100101100100001011001100001100010010101111101001101010111000001111010101101010111011011111101000001100010010110010110111111000111111011001100101010110111010100101111101111001011110101110001011000010100100111011011111011010111010110110011110100111110110010011111001101111001101000011110110010100010010111110110000010001011110110101000110110010011000010100101010000011111010000001001011000101101010101001110001001010101011100101110001010110101010100111010011110001010100010010110001100011111011110110000101001010011001001110000011101100000001011100010111001010110100001010111101101000110100111001010101001110100100110010001001010101011001100111001110110111101100000100111011000000000101110111001110000111110001101010101100110110110001101010001000110100101101110101110100111101011001000001111110001000101100111101001011010010001010101---------------------110010011100000001101000011110100101111110010010101110100001010110010011100100110111101010010111100110100100100101011001010011000000100100001110111001011101001001110001010111101101001100110001001110111110110110010101100000111100111010100000110110001001010010100011011100101011110111011011010101000011000100110100001110010101110100000111101011001001111100101100111101101111100010001000000000110101000111100101110100011111110110001111000011101111100101110110101101101101111001010000111000010100010101110100011111010111101100111010110111100101010011100110011100100110100000100100010000101011010100110100100011111010101011110111001001111101111000101110000111010111000010110100010111110111100000000000011000100111100101011011010010101010001000101000100111111110111100011111100101100011100000011011101101000001000110101011001000001100000110011011000001001010110111110000001001000111101010001111110110011110101011101111110100110010001011111000010101001110001011000010010011010000111000111010111101000011010101111010110101011111101011100001000010000101101100100011110101100101001001000100101000011100010101111111110011110100100011110111011111110101100100011010100011100110110000011110111011110110110110001111100111011100101100111111101101011010001000100101101111101111011000001101010011101110001010000100110000101011101100001011110111111011100110110101000111101010110011111100100111101011110111100101110001010010011000011110110000011011110001001100000111001001001000101010101010100100011010111001001000011101011111110111011110111011000001110010010101010011111100110011100111000011110101001110001011000011101110110000111110001000111011011110000001111001111111010011111111011101010011001100011000010111110110100011011101100000001101000001010110100111001011011111011100111110101010111111000010010111100101110001100111100110010000110010000100011111011110100000111101110110110011100001111100110011100011111100100110111010001110001010011011011001111010100010011110110000110000001110001100100000110010000011001000110110100111001111011110101000101110010010001111001111100111000111100111010100010001000000100011010100010110110101011101111110100011010001101101000000100111010001100110101111101000001111001110110110100111001111 +110011001111001101001001010101111110001110100100111000111000101001100110111110100000101011111001011110110111000011110101111100000110011000111000011101001011001011100101000000111101010110011110101111011001011100000111010010111111010010110111101010111100001111111101111001111100101110110001101110100000110000011100010100101010001011001101100001001100100010100101001010111111101110100111000111100101011100011101010010111101101101000110011011000011111001111011000011110011001101011111010100111101110001000100000011101110101101111110010000110010111110110100100111111111000010100001110001101100110110101000100100011111001100110111100111000000011111100110001101011100011011001000011110110100011110110111100000110001100110101110110000010000000010111000010101000101000111100010011100111000001111000110010110110100000001110110111011111010110011110001011111101001001111010101011101010111110111010010001101101000011011100110111001000100101011100001101---------------------110010111110101011010100100011110001111000001001110011000110111010000011000000000111001101001010100111101100110010000000001011010110101000110000010010100011010001100101011000110100111101101010011110011011000010101011101111001011000011010110100010000001010011101111010110100111111101101000000110100000010011101110001111101110111111010110110111010110111010100001011001001000100101111000111011010011100111000001100000110101101111111011100011100110110111011011110101001111011010000010010110101110001101111000010001001010010000101001010000011111011101011101000011000011100010000100011101100110011100100110100111110001100000001111000111110101101000010110001010111001010000011110100110010110110000010010100111100010100010100011110111000111110111110100111111101110010111010000111001110111010100101001001011101111010001000000011001000011101010010010010111001101001111000001101000101011001110111111000101100000011011111010000000001100100100111100010011000110111001100101001001110100100111111011111001111011000110010101001001100111111100001110001111010011010000011011100101101011000001110011101111001011001100001000101100001000010010100101100111110101001101101000111111110101110011100100000010100111111101100011100010100011001010101011101000110111001000001001101110111111000000011101111100011101010001001010010100110101101011001000011110010101010101000110011101100100110110010100001111110101111000000000100000110000110110111001000100011100001110000001100111111111010110110100111100110110100001010100010101101010111110010011100100111111110011011110001100000100101111100111100001011001111111010100110001001011001101100000001100010110011111110111111101011101010111010101100110001100000011110001000110100100100101001101100100001010101100110000000000101101000000111010111011000100100111110010110011000111011111101001110011001001101111110011110110010100001000011101011000001100001011010010001101010110011011110000111110011100100010101010010010111110001011100101001111101111011001011110001101011001101100011000111101110100111010001111011110100001110111000011111001000011010100101101010011110100010010110000111111110111000000011001001011111001110000010100100111110111001001100100111110011011100110010100011101100111100110000111 +011011101011110010100101000010100110011111101011111100110000000111100101101011100000010011111111000101111111111001010100001011110101001011011111111010101100000010111100100000011000000011100101011011011010010000111000111110010001110011010001111010000100100000000011010011110101110101001001100010110100101001110111100111101010101000011010100100010110101011111000001111011001011001111100111111010011100110111010001011010000011011101100000110110110100010101010111011100001010000000100000100001111111011110001101010001110111001101001010010110011011110010001100111000101101000100010100000001101100110010010010000010001110000110100000001100001101110110000101100001100111000011100001100001111100001100010010111100110011000100010010100001000001110111111110011010111101001010010100110011000101111000100000110010100001000011111000100000111100001101000101001100101001001111000110111011001100101101001011010011110000000110110010110000101000100010001000---------------------001010110110000000011101000000000010010001100010000010110000011011001100101101100110011001010000000011011110001001111011110111101110010001111100110100110000000110101110001110110011001001110010001111100100100001000010110100001110100110101100001110101001110001100100011100010010010011010111110011011100111111110011011011011110110110110000100001110111011110100001001000110101111001111000101010100000011110111011010111110011101001011110100000010011100110111000110111000101111001100001000100110100110000001101010110111110110100010101101000101000001010100011101101100010010000010110111101100011101001001000011010001110101000000100100010000101100101101111110100011011100100000011111101011010001110001100100101001111100011010001000001110000011011101100001110001111001000011110101101011100010111010000001010111010001111010010111101010110000010110111111010001101000001011101100011010110010011010010000110100000111001010001100000111101100110110100010101011100000001001101001001100111101010010000010011101011110010010010110111000001111010110100111110010110100000010001100110111101010111000111000101011101100011010001110100011100100100100000101110101101001111010100110010101011110001111001001000110010000101011010001111101000101100001001011001001010101011100010001111010100101000010111010000011011110010001000010110111100010001100011110110000011010000000011011111010110110100000110000010000101010001111110011100100011111101111000001110011010001111110010001001000111011000111011110111000111101011101011011011011111110011001000101010100100101011011110101001001000000000100001100001001111100101000100110010101000000000001010011001011101110101011001101101110100001101110100000101010010101011100010101101001011110110110011011101000010101101000010101101101010110011110010011010010000011101001000010001010001101010100010011111101100110111011000001111110110111101000000100010111010110011000010010111010101010101001001011100111001001100000100001110010000101111001100101111010110000001110001110101010111101010100011101100001011100101100100101011101111010011111000000000111001001010011100011100001000000011110111001000001000000001101010111010010111011110001011001100001101111110110011111010110110000100011111000110111001100110010001 +001111010011100110100010010100001011010111100100001001100111001101100100011101111110011111001011011110010110010101001100010110000101011010011010110110101110100010000111101001010000100100011111000010010101000111010110011011001111110111110001111010100000101000111111010101110000001111001110100100110011010000100011100011010100000101110011000101000100100000110000100001100000110101100000100010011111110001110100110001100010000000110110110000101000011001010010000010110101011001001001011101001001010111011111001001111010100011101011011110000001101001010110100110100101110101010000101010000000111110001101011010010110001010011011000001101101100110001010000100001110010101110000000001100010100001001001011100000110001111010110001011100001000000110000001001001000001001100100011101011101110001111100101000100110100001010100010010100001010000110010000100101110000111100110000011000011111101010011101101000011011101001010110100010110100111001100100---------------------000011001000110001101110100100001111010011111101010000011010011000010000110100000000000110100011110011110100101111011010100110100011110010111001111010101101111011001100111000101111000110001011000001101111000001010011001111100111011110010011000000110110100001011010000110001000000001010111100010011110001011110101100110100110110110001000000111000110001101110011010110011000001101110001010100010110001111111100011010011011010011010110110001110001001001000000010000100001101000110010001101011010110100011000001011000111101010000010111011100100011000001001101110011110011000011001100001011100101010110011010011011101000111100001011110001110100111011001011100001100010001111100100110100101011100111010101100110000110110011101000011101111011011011000011011010110111111001011000010000011111101110010011000111101100001000001101010111101001001110000011001110011001011011101111111110110100100101101010101110101010000011111011110100001010000000100110000101111010001111010001001110111011001000100011110100110000110000000001001011000011111000010110110111111000000011011000011001010101111001110001000010011000110011100111111100011110010011110111011111011111101011110111001110111111010010010110010001101111101011001000110110010001011110101111000101011000000100110100000101011000000000000110100101000000100110100010011110111000010010110101101011010101110011110110010000000000010001110100110100011110111000000110111011000101000001011010000000000001011011100001111010101010111010010111001111100110000010010111011111110111000111111101100110001010101010000101111011000110011111000000100001000110001011111000110001100011111011010010101111001010001100111011000000101011100010010000100010110001011001110100010011010011001100000101101100000001101000100010111010111110010100100001100011010100010010101100000000101000010101101000101101100101010101100110100100010010011111101000101010111010001001010110110101111100101100111011010100000011101110110000111011111010010111111001010111101010010000100100110000010111111101011000001100101110100001110111011111001010010101110100010010100011100110101111100100100111101110001001010111001100011100010101110010011111010011000101100001111110111101111010101010101100001001011111100110010111100010001 +001101110001100011110000110110100110110101011100100000000000111010110110000000011001101101000011011000101100101100110111101001011101101100100001111011100001110101001000001110101101010100011011011100101111000011100101111101010010101100011010011110110010110000101011001111001000000111101011001000001110111111000011111101011111111111000101101001101100001100101111001011111100010000010000011011100100101010101011100011011011101000000011011000101100001110101000101111000001111000011101101011101101111011100101011110111010100011000001110001011110110000011010001010011010011010000010000110111001000111001011000110001101110100111011111010110111001101010110101111010111011101100011000001000110000100001101110011101001111000100111011101011011110100011000110110110110011010100101010001010000001001010001010000101100000010011111101010100010110100001000010111111011010111011010010010101000110001010001000010100111110011110101101010000101001110100100001---------------------110111111000101110011010011101101000000010111111100001010001010110000010001000100110110110010101100001011101001010110000001010100100111010010000110010011001010101101100110110110011111000011101011100101110100011001110101010100110011101110010001101010101110011000000001000110011011100111100110010011111111110010111110000110110011001110010001101000101000000110001100110011111100110100100101110101001110101110101111111101100100111000000011011001011111111000010111110011011111101000000010011110001001110110010111000001011010000000101001111111001100001011111110101001000011001011011111111000100101011101011101101000010001011010100110110110011010010010101110110001001111111001010111111110001110001110101111011110011000101101101111100100011100110100010010110100110100111011010110111100010110100010011000000111001000110101100100111100100001001101000100011100100000111101111100001111011010001111001100100100111101110001000110110010010001011100000100000001101011100010010101010011011011010101011110010001001100010111011000010101101010001000101011111011001100111011100111100100100000011010110100011001100000010111001101011001111101000011110100010000101110101000010011100001110100100010111100001110111001110011001001110010100000000011010101100001010001000000100011011001000110101111001101111101010100001011010110100000110000010000100001101001101000101000101001010011100010110000111000111010010101010110111111110000001100111100101011111101101100010110110010000110110100010000111110010110111001100001011100000100010110001111100001000010011011110001110001100100100111111100110101110100111100011100011110011001001010010101100000111100000000010001001100111011000010001000000100100011110100000110100101110010110001100011001111111001100001110110101111000110000110001111100101001101110111000110101011101110011010000111011001011101001101101100000110000011000101100110101011110001011110001010001111101111110001000011110001001000010110110001011010011111011000001001101110010100010000000101111110111110011010011110011010001011001001001000111111010101111001010000101000101001100011101101101110010101110101010011011011000000101111010100001100000110001111001101010111011111001001000011100101110101101101010101000110010010111111110011011 +001100111010010110101010111011110000010111011001110000001101101001100010101110100111000000010010001011101100001000100101100100110101110000001000100111000010000101100101001011001111000001110011010000110000010000010110111101101101111111001011000001011000010010001000110001011011111100011001101000100110101111110101010111001000101000001001000111001111011010100011100001110100101101001011111101111110011101110111100110110101110010000001000111001110110100011000011110011100010000111111001011110110111001001011001111100011000101001010101001111101001101011110001101011010110001000101110010110011101111000100110111101111001111100100111100001101101010010011000110101001011000011011000011101101010100001110011100110011000000110100111101011110111111100110000110101011000001010001000101000011010000000101110110110101101111100000110001101001001101100000111011000111001100001100110001010111010101110000100101111011110000101100011001011100001101011010001---------------------100100000100010100000111001100101110100010000100101101011011111111000010101011100100110001101011110000011011110001010001101000011100010000110100011010010011110000101000000011001011011011000000011011001010100011101010010110001110111010110001100110111011010111000110001011111101001011010100110101101101111111111000001010100001000100111101011001000010100111101101010110110010110011111010001011010000010010101000010111011110100010000100101011111000000111001101110110001011011010101110100001001110010010011001111001000110110110110110101010101010010111001001101001101010000010011000001110100100101100110101101100100010101010111110111011011111100001011000011011011001011011110110001100011110100111100010111111001101011011000001000100100011111011111011001100111110100001010010000111000010001011011000101000011101010011100100100110011110100000000101110110101010000110000111011011001010001001101001011100001001000001000011001110001000110001101110000100110111110001010010100000110010011011001101101010100101110100111110001000001011100110001010110101001101101010010110101110011110101100001001100001110101011110101111011111110110001011010000101110110011111011110101111011011001011000000110100111111101010000100000100010001111010111101111111000000001110001101100110011100000111010011101101000011111010100111101001111001001011001000011101011101001100111011010100000111111110000110011010001110011100000101000000010011010011100111101110101001010010001101101100011001000100101000101010100001001110011010110101000011111101001010111110000100111010101100001000010011010110001000100111010011100010101100001100111110001000000101010110011010110010000000001011110011111111001111011111000000000010001110011111111100110100111101010101111001001001000101000110101001111011011100101101011000110101000101001100000010101101011100111111111110001000010110111001111001000001011100100111000111000101110101101110111110001110100100101100011100100111001100001110101110010011010001001000100110110100010011100010100101111000100110100010101101001011100111101101111011101101000110110100011101010110010010110010000010110100100010001010110000011010100110111110010001010101101110001000111011000000010011000001000110010000011001111100011010111111000001111 +000010001010010111111100100111011101000001001110000000101010111110101111001011000011101101011001110010011100110000000011010110110100001110000011100000001001011000100110111111010001001101001011010001100110111001111111000011101010000110000110000011011101011010100011111011010001101000101100111101101011100011100101111001101010101111001011000000011011001110101101110101110111011010011101111011100100011000100111111010011111110101000011111111100111000010111011111001000000011100111011000010000100100010011110111100110110011011111110010011010000001110010100011111111010101011001100100100011011001110000000101011000100011100010111001100001100001001100111001101101100011010000011000000101100000000100111110101010110101100110110110011111000011010010010110001011000100011010001010111100001010001000001100010100010000110011101110010100010100011110100001001010001100110111011101000111110001010110010000111101101110000011110000001101010101101010101011---------------------100000001000010001001111010010000001011011100101111001111100001011111001011000110011101001000100110110000100001111001100111110000100110010000101110010100101101111001000000101011100000000100100011100111001100010111001100100100010000101010001100000100110101101010110000101110011000011000000100010000101101110010000011011011001011010100111000111111111111011101001101100101010110110101101011110010010011100110101101110010000100111111111001000000011101001011010001001000000101110001111111010100001100100111100001000110000000000110000011001111011001110100111101000011001010010011001011111111010100001011001000001000111111001111001101111001001110100110111101110000100100001011000000001101110110000011001011000010100001100011010010010001010001011101111100110111001101000001010100001101000111011000110001101000000010010101101000101110110011001010000001110111010001101100111010100111101000100110110010101011111110101111000111101100111010000001011010101011000000010000000001001000110101001110111101110000010011011110110011111110001101000010000111011011001011011010100100110010101000000001101101110100010110001110011111010111101010001001001110010011010110101110100111111000010111010101111100101000111100101101110101101101000010111010010000000111111101101011010000101100111110001010000111110111010001001001101011011111000000100000011011001110010110000111010010011000000101011100001001101000100001010011100001001111101010100001000000000100110101010011001011111010110011110000011100011001000011110011001100001110010100110000011100101110110111001101101100010000101010100001000100111000100010110100001100111011110001101101000011001000010100001100011010011101101101111100010110001101110100001100101000101101001100110111010000000011100101011100100110000010000101100110100111111111111111010000100001001101011001000001011001000000100110111110101011100000100000101000101001000001011010010101100011010001011101011011000111000111110000111101100010101000100100101001101011111101011111111000110100000100110010110110110110011010110100111100011111101111110001101100101011111001101001111110110100000010100110011100111000100111000111001011101101000101101100000100010110101111001001101000101101101011000111100111011111111011011011011110001 +111110010111011010010001000001000010001001110111101011111010000001100100101100101001011100101101001001101111111001110101000110101010011101110011011001010110010010101011010110111010011011110101101010001111011000100001101111000101000110110010110101111100011010111100011100000111110101001001000001100101101111101111011010110111010110001011101011000011110111001001001011111000010000001110001000011011010110000010101001111111010100011110101001001110001100111000111110010011101101001011101100101000101011011011011011001000011010010110010001111111010100100000110111100100110111111000111001001000110010101011100101011100110110110011000010001011111011101000011100110100001001110100111111100101010110100001101110001010010100100110111011001000001100010000101010111001101100110101001010010001100111110010100001001011010011000100100100100111010011000011100010000110101111011100100010011010100100111101011111011011101001011110101110011001110100001111101---------------------011010111111000011011100010101010010000110010001011110000111100001101110111001001101011000000001010111010100101001001001100110100100100010111001111111101000110001100010001110110111010000000100001110101010111011110110000001100001011010011111110111010100010001001010101001000110111110001101101111101011001100010001111001001001010010001001010011001111010000111010001000011100010001100101101010001010000001110001110011010100101110000101111011001111111111111111110001011111110110101011000000111010001001000100010001111011100000011101111110011010111010110010110101101101101111010110010111011101110100100111011110000110000010110011100010111001110110011011110001000111111101011101111111101000001010100100101101100101111011111011001100010001000100011110110100011100110011111001000100101011001011110001101110000100000110110011101010111000001111000111000010000011001100100011011111111011011011101100010111111100101010010001100011110111100000110110001001011100000101110111011011110001010001110101000000111110101101100101001110111111000110010110011001011110110011111100011101111100100001011010110001010110101110110001001110000000110111010100001010000011011100100011010101101000101011111101011011001001000110010100011111110101101110101000010110001101011100100110011011110110011010001010010110010010000010011111111011000111011001111110100101111100000000110001011101001110000111111100101000001111011011000000010010000000111111111001111000010110011011000000110011111010000000110110111001100111000100011000001110000001110100000010100010100110110001111111100101101000100001110101011111010010011011101010110100011100111111011010110011011001101011101011010101100100100011110100101000001111110101010100110001110011000011011001111101110011010010110000001000010111001010101110011010010100111011001100000000010111101101110011111110011101100000010010010000001001100110100010100010110000110100001110010100111000101011101010001011110100100001001101111011000000111111001101000001111110101010001011100001010110100011111110010100111001011100011000111001111011001110010111011110010010111011000011001010011000110100101001011110011111000111100110001111011000001110011101011010101011011001001101001011001110011101010111011001111000011110001001 +ls96msgs +001101001010001100101001011000110100100010001011001111001100111010001100000111101000001101000111100000111011110011100001000110110001101000000011110111111011011100001111111000100100011110001001100111000100011001101110001110101000001010110001110100110001000000110001010110101011111001010100110011101001101000011000111010001100000001000111101001101011101001100110111000110001101011110110100010011111010010111000101011101100101101111011010011101101011101010101001110110101001101001010001011000101100010010010011000001110011000010010100010011011001001111110100111011100001011100000111100001110101101111001100100101001001010011010101011100000001100000111011010101001111011101000111110111000011110000100110000100000110011100101110101011001110100110011011010000101101010011111101101100010001010010101111110101111101101110010111000001101011111000110001111011000010011000111011011111010000000011001111000101101011100011001111110110111111101110100011000001110001100000011000100010010001101010111100101101011110110011101101111001101001101101100111101010011111100100110111011011011100110100011111000100100101011110110101101001010110101001010100011000100100000001100001111001100000010100011000011110101101001010100000001101011001000011100001010010110011010110100111010110101001010110000110000100001100110111100111010110100101100001110111010111101111101010111010000110110000110101101110110010011101000111100111111110001011001101010111000100101100100000001010111110111100001100001101111111011100110100010011001111000001001010000010110010011100100010000001011101001000100001001000001011001101100110111011100011001100000011110010001100100100001010010010011010110011101100000110011101101110010010111001011000010001000001110001110111010010111011011110010110101111000111111001111001001100101011111110110011110111011001111010001000111100000101011110010010110110101111110001111100100011100010001011011110101001001110100100010000010011100100101101000101110111100001000000110001110110111010111100110010111100001111100101101001110011010110110110100001001101010110110010101011000101010001011011011100100111010000111011--------------------- +000011100110111011111100110111101010001111110000001000000010010010101111111011101011010101000100101001100100001101101011110010101110000000101001100110001110110010000000011011111010011101000000001011010000100011110010111101100011010000100100101000011000000110000010111011001011110000111010101010110000110101001010101101001100000010110011000000100001011000110111001000000001000010101111111101010100000011111001101000110100010000001110011000110010001110000111100010011011110100101101111100101110101010101001000011101101101000010011110010101011100011000000111000011110101010111010010011101101001011011000100001100110100010010010100100000001001011001110011000000101100011000000011100101000101110000010001101110100111110100000011101111001001010000111011011001000011001011001010001110101101001111110001100111101000000100010000111100100100101011001011100001111100110010111100011111000110110100001111111011010110100001111000010010111100110000110010011001101001111100000001001100110011100010101101100011001110000001000011001010111001110001100010010110010111011000000011001000011100110100011011010000000111001000010101011110100111110010110001001110110000101011011001000001110110010000001000000110111100001110010001001001100101111100011011101010011010111110000010011110110101100010010111101110101000111001011110000011100110000111111101101011010010111011101111110001000000000101111110110111110101110110110010000110000110100010110100010110010001011110101100100000011010110101110001100011001100010100001000000000001001010111010010000111111111100110011100110110010110100111111101110110011000000101101111110111010010111101000101001111011010101001111100010110001101111001001011001111010001101101100000001010001011000100001111000001001111101010011111101101111100100110001101100101000010110001001000100010111001010010100100111111100111010110001000000001110010000000101101100101011101111110001110011010110010100111000001001011011011101000010110001000010111111010110110001100000101101101111001101110110100001111000010011011101011101000100011001111101010011110010110100111110101001100011100011110001001101011010011--------------------- +001001011001111101010111111111100010001001101110000110001100100011010111110010000101101110110001011111110111110000001000100100111010010000101010111110101000100111100110001001111100001111011111001101001000111011101000101001111110000010001110011001001101001110010000111100111011100100011100000111000001111100000111010011000100110100000010000111001101011100100001000011111011111101110110100100101000000011001001100001011001000110101110011111110010011010010110110010110011100001011110100101111100111110111001011001000111011101011000111010101100110110001011101010010010110010011010110101011011011110101000010010111110101110110011111110100101100111111110111000100001100001111011010101111110001011100111110110010100101110110010110011110110100110000001010110000001111101000010011011110100011100100000111100111110111010001010011100110011101100011110011010001100100100111100010111100000001010000100010111111101000100101001011110010101110010001110000100011010111011011000100011100110100001010000001100110011110110101101011110011001110011011111001010000101010110010011000001000110100011011110000110011100010111111110010110011101111000111010001001100101110010101000011110110101011011111100001011101000011101100001000110100011000111011000011011100101010001100011001110111100010100010101001100000010010001101110110001010011100000110101001110100110111100011011100111111111010110001010010011110001111111100100101110100101110011001110000110011001010111011001101111001101110101000010110000010101100111111010000000100111000101101011111110010110000000000111011100010010011010111100111111000110001010010001111001101001011111000111110111111010101100000000010001101011011011000111101100001001111000001010000010100100101110011101011110100010111111011010011011001111110000000011010000110011001101100000101011111101000100111000111100011000101101110110111110010011010011110100011100111101011111111100001000111100111111100100111110100010110011100110100100001110111010111110110010011101101010101101100001111111111010101100010110001000100000011100011011010100010001000001111101000011100101000010101101110011000100011100001--------------------- +110100001101110001110011101111000001100110111110000100001010100101101001101111010111100000111001000111000010110001010000110101100111010011010100001010001111101000100010000011011011011110101001010101000111011100010000101110101101011010000011010101110110011010001110111100000110011110000101000110011101001010100011011000010101110111000000001101100001010100001001110100001101000101010011111101011101111100100010111101001101100111101010111101000011011001101110010010110000100101001010001101101010001101001110000010010011110000111100000011010010000010110001110001111110011111110101100111000001001100111011100000000101000000011100101110011000101000100011001110100001010011101101011110111111111111011000111101101101001000101111011101001001010111001111001010101010000011010011100101011001010010011000011001011100111011011111111011110101101110111010010011000101000101000100111111010000000100100000000000011000001100001111100010100011000101010101100100110001100001000000001010010011101001010010011111101101101110000000011100110101011000110101110110000101000001010101011011101001011100000010111111100101001011010110001011111000111111100000110011010001011000001000001101000001001001101100111100001111010001011001110101011100110101010000000000000000010010010001101110101111000001111010110010100000010000100000010010100100100001111100000110100010110110000110010010001110011110011010110000111100101010010111111111000111001100010100111101010100000111001111000110111100111111101010100111110011011110111101100100110000001001001001110111010111111101100001010110100001000010011101001001111011111100001010000110011110011011111010101101101000111110000001001010110101101110001101101110110110111100001000101010101100100111100110000000011101101001000010111011100110001011010000110011010010000110011111101110100110001111011010001010110110111010000101000110010101110000000110100110000011100111111110110101110110111001111100100001001011001111101110110101111000100110100111101100111100110010011110101100010001111111100111110101101111110000111100000010011011001110111011111011010110100001000111111010101101110110001100101--------------------- +110011001101111000000100111111011111000001100011110000111000110000010010100110011100011110110000101111110111010001000011000000000110100110010111111111101101100101101001100010111110100101011010000100101111011100000101111011000111111111010111001010001111010000001111101011101000100000110111011010110011110110111011110010010001000110100110111100101000001001001010001011110000101100110000110100011110101010101111110011101110100111000011000011010011011001011110000101011100001110011101000011101100011011011010010001010000101101110000011101000011000110100100010101100000010100001111110011010111000101000000101010111011000100011011011100011100001000011111001100111010011100101110101111101000101010011000001110001010000101110011010111101110101111001010101011100001110000000000010110101010001100001100000110010001011000000010000111000000001111001001110111110010110111110011111101101100111001110011101100101010111110001001011100010011000100011011001110100110111110110010111011101010010111000111101011110001100010101101000110000011001011011011100011011110001001000111100011100100000100001010000110100010000011001011000000001101100011000011110111011000101110011010001001000001000010100100110001010001100000100101010011001110101101001000110001010001010001010101010101100000000010110110101111011001110001000001100111111101100000110000001000111010010100111100110101111000011010100011001110111011000010011001110100110100100101101001000101011000011000111110000011101000100001110101100001011000101101101111010100010110010001101000111100101110101010101000001100010010010110100111100101011011110100011000011001010111100010111111111110010011001010101011010100000101100111100011001111111011100110101001001110111000000101111011000111111110000111000110000100111010111111100000011011011011001111000011100101010001100011011111011101100011100101010001100010101001001110011000101101111100010011110000000111101011000000101001100010010001001110000011100100111000000001011110010010100110000110110100100110010101000010101000010001111100011011111010011000101100110000100001000010101000010110101110001000100001010110011111011--------------------- +101110110111100010011110100101111100010011100110100100100100101101000110111100111001101111010001001101101001010111100110111101100000110011110111011000010010101001001001100100100000101000111101100111100011101100100101111101000100100111001010110111001100100110001000111010111010111001010100001100111011001011011100101111011011010011010010011001000100000100000111110110101100011101111101000011111101001011001110101001101011110011110000101000000101011101011101101010011010011011111010000000111101010110101010011001000000010110101110010000010010100011001101101111000100111011110101001001101101110000010000101000010110101001001100011000000000001010010011100111010011100100001101011010111010000010011100111001010111100110000011110011001100101000111101111101101000010001101000001010111101000110011000010010100011101000010110101101110010000000111100111101100101100101001000001000110101101000000011110001000110100010001011000100010111100100010001110100000111110001111000000111100001100000011111010101010001100110111111010101000000000101111110111101101101000001110010110101001111101100110011111111101010000110101101010110010000011111000101111100000101000010100110010010010100100010000110111000010100000010100010000011011100010011011100110101001111110010100111001001001100101111011001111001010000011010001001101001100110011001000000001001100011110111001111101110110001001011101110111010010111000110011001111000010110100010101011100010111100111110100011110011011100110000011111011000011001101000011010111011010011111010010000010101111100001011101111111110010000101001010011100000000010010110100101001000011101010010101111100101100111011011010010100000100101001010001010111010010101110110001100010011100111000110000101100100111000110100010011000011011000000010010111001010111101100010011001011000001101000010101001110101100101011011000011100110011000101001011100111101001111011000001001000111101000101111000101010101001100111110101010010011011100011010111011100001101011000010100001100101101101110010100100110010010011110011100001101010000101010110010000100110101011010001100011001001001110101100101111000--------------------- +010010010101011111111001010000001110110010111110111000001001001101110101000110100011100001111111110110001011100000000101100111101111110011000000001000100111101001001101101110001111110111010010101100111100000110110000001010101101001000011011000010010110000011101101100011110100101011101111111010000111011101100001110001001000100001110111101100011010011000101111000001101000011100101100100110110110010010010111101001010111111101011100100001111110001011001001010111101101011100100011010100110011010100001101100010010111010111101000110110110011000010010100000010011111111101101001001001000011111101111101110110011001001100111101111110010010000010101001100110011010011011111100111110001001111110001000101001100000101010011001011011100101000110111101010011101100001000000001110110011100110101110000001011111010011011101001011011110011111001010010111001011111001111100101011101100100010111111101011000100010111111001110010001000010110010011100011100010101011010100000110100011011101110111110111001001110111001001111111011100100001111111100001110001011001011101011011111001110100000011011100001011111110001010010000110111001110011101000011101011101010000011010110001100111111101111100101111100110000001010100011000100011001101100011001001101011111100000101101010101000111100000010000000101000110110000010001011101110111110001100011000111011101010100100111011011001001011111110000001001001100011111111001001000111110101111001100110111100110001011000000011100011110110000010011100001100110111110101110001110100011010110001111001100010101111001101011011010101011011101010000100001100101101101011101111101110001110100000010100001000000011101011110111010010110010011101011000110011101010110101100101111000110110110110101001001110000001100100101111110110100000101100100011000011000111110111010111101011110001001011111111100110011010010000001100001111010001111011101111111101101101001010111000010110100011001000001110011110011101101011010101000101000011011011011010111101101110110010101111011000010101100111000001111101110110001101010001111111001000001101111111001000101011111110101110101111111111111001010--------------------- +000100010100001000101010001101110101011100011110110011100111101101001110001101110100010011000100001110111010101101111111110100001011010001011101110111111111110001111111011001101010010110011111110001000011100010110111001011011001001111010110010011100100101100011010001001001110101100001001000100001110000010000111010110010111000011000110011000110110010100101010000101001110011000000110100111001010110001101001101001100101111001110100010001100001011101110001101101010011011110101101010101000010000101001101101110000100011110001010111101110110010000100110110101101000000111000111011111000101110110011010100000010100110111001100000111001001111101011011111000011010111001110011111010001100011011000110001100100111001100110010111011100011101111100000111110110000101001110000000101010100111110011100011110101110100010111111100001000010000001110111101101101100011111011100100111101001110111111000000010001100000011100011110110111111101000100011011101011110100010010000110111101100110111011100000011111011111011111000000000111101111001111100000110010101010111101111011101010110001110110101111011010001100011101011100011000101011110010000000110100110101010111001000011010011101111011111100001111101000111001111101100100110110110110011000011001111111101100000111111111000011001110100010101001100100001110111011101001100001110000100100000011011110111111110010101101110001110100111011110000110110111110111111000010011010011000111100000000001011001100101110101110010011011110100100110010010011100011010100001100100001100000010100001010000010000001010000011111011011001010011110101111001001001101010010000010001110010111100001110101100101111100010111001110011000101011100011001001011100011011110111001110011100001010000010100011000001000110011100111111001010001001011111110001110100000111010001100101011000111111100110001011010001100110011010010100001110101010100011110111001000010011011111100000000001001000010110101110000100100111000001100101110010000011101000111010101000100000111101111001111100001011010000100011000011111101101110110001110001011000011000101001001101100010100100011110010110010100111010--------------------- +110001011111100011011001000000000101001010011010111101011010001010010100000101000001010110001110110110001111100001100111010110000011000110001100001001010101001100110011000001110110110111101010001000110010001001110111001101001001001100110011101011100101100101000010101111100010111101110000111010111000000101001011001100111100101111000111110010010110010111010101101111101000101010111000000001010101001011111001010011110111110100110000111011100101000001010011100111001101011000000000010010010111111110011001010010110110100010101110111100001011001011000111111000011000011000101101011011001001100001011100100000010010111010011000001011001001110010110011100100000111110100110010100111111011010000100111010000010101110001000100000110100011010001110011100101010101101010010110110101101101010001100011010000011010001011101000111110011110010010011000000111101100000011100001111100110001110000100000010110011111011101101001010010101001011010000110111101101101101111100110100110000101000001111000100010001011101001001111001101000000111000001000001001011101000001000011111111001010000110000010100101110010010100110101100011000101011100000110000110011000000101100000011101000011111000100100011011110110000001010111110001101101101101011000111111100111111011010111011010101110111100011110001101010111010111101001111110000111100000111011000011111010111101000110001111001101001101101010111101110111110101011101010101111001011010011110100010111001001010110111100101000110101100111100100001001010101101010010000001101100000001001010101001010000011001000110110001001110100111111111101110101110001011001110001101011011010101001100111101101000110101110101111010011010001100010111001001011110100100100111000111001100000000111100111111001100101010111101101011111110000000101111011111001011000001010110010111111011011000010111100011011011000100011110011010001101010110001011011001010101001000010011111100110011011110101110010000111000111001010100011010100110010001000000001100100010101100111100110011100010100000100111101011011010101100010100000001010110000111010110011010010100110000111011000101010111011010010111011--------------------- +100001111111011000111000001001111111101101101011000011100011010101110010010100100000110101110010111101001001010101000000101111110100010111010011011101100011100111001010000011100100001001110100100111000111001110010010001110001001011111101110111011011010011111000001101010101101000101000001010001010011011011100000010001011001110000010100101111000011111111100001100000111111000001000111010001010010000001010110011010100110110011111001001101111100010000010001101110111001011100000111100011000110100001001010100100010111010111111111101111111010101111000010101101010111011101111001010010110000001011001110110011011100011100100110001000100110011110111010111010000001110001000111100010101111100100111101011001100101101010100001110100010011011010101011111101101010001100111101010111111100110011111110111001011111111001000011001111010000101001010000111100101010010111100101100000100101001110000010000001101111011100001100001011101001010100001000110111110101100111100000110011000111111101101111010100010111000001010010001010000011110101010101011011010011000001110011111110001111000000010010111100001100111011001111010110000011010010100010000011010010110111011110110011111100000101001110010011100001000101111010001110010100100111100111111100111101010010011010101000100001110110010001111100000011101111001010011001101101100100111001111011111111100110001010001001111111010001101010110111111010001110000101111101101101100100001101110111010011001011001100100111011110100010011000001001011010100100101100101101110000000101110011111100001000011110100100111011000000110000100000011010101101101101110000100010110010110111000110111000111000110001000101000101110110110100000001001101100110111111101101110001111000000111011010101000011110101001111000010000100011111011101010100111010111100111101111110011100010011111001011110101111010000010101010101100010000111101100011010110100010110100110111000110110010001111111000100010110100110100011111010110111001110100010110011011111110010000000111110001011101001010100110110010000001010010000111111011010000010110101000110001100000111001110000111010111000000110110111010--------------------- +ls96cwds +100111000100011001101110001110101000001010110001110100110001000000110001010110101011111001010100110011101001101000011000111010001100000001000111101001101011101001100110111000110001101011110110100010011111010010111000101011101100101101111011010011101101011101010101001110110101001101001010001011000101100010010010011000001110011000010010100010011011001001111110100111011100001011100000111100001110101101111001100100101001001010011010101011100000001100000111011010101001111011101000111110111000011110000100110000100000110011100101110101011001110100110011011010000101101010011111101101100010001010010101111110101111101101110010111000001101011111000110001111011000010011000111011011111010000000011001111000101101011100011001111110110111111101110100011000001110001100000011000100010010001101010111100101101011110110011101101111001101001101101100111101010011111100100110111011011011100110100011111000100100101011110110101101001010110101001010100011000100100000001100001111001100000010100011000011110101101001010100000001101011001000011100001010010110011010110100111010110101001010110000110000100001100110111100111010110100101100001110111010111101111101010111010000110110000110101101110110010011101000111100111111110001011001101010111000100101100100000001010111110111100001100001101111111011100110100010011001111000001001010000010110010011100100010000001011101001000100001001000001011001101100110111011100011001100000011110010001100100100001010010010011010110011101100000110011101101110010010111001011000010001000001110001110111010010111011011110010110101111000111111001111001001100101011111110110011110111011001111010001000111100000101011110010010110110101111110001111100100011100010001011011110101001001110100100010000010011100100101101000101110111100001000000110001110110111010111100110010111100001111100101101001110011010110110110100001001101010110110010101011000101010001011011011100100111010000111011---------------------100101010101110011111111111011100100001100001011011000110000111111001101000100111000010000110010110100001111111101010000111000000011011110001001000010011000101010010111010101110110100101101111000010110100101010010010010000001100011000001100111100001101110111101100001001111001100011010010010100101110011101001000101111111101000101001000100001001100001000000100100001110101101011000000010000101111110010011111010111011100101101010111001100110011000111000100011101111100100011000000001110001010011001010101101000100111010001000110100101110100100011011011011001111010110011010101010000000011011110010110000010000110001000000110101010110110110000100100000010100001101010000100101111000100000011111010111010110001100100000100110001111100110011011111011100100110110100001010000011010101111001110100010010010100011001110000101001011000010010110001100110101110101000011000010111011110000110011000011101000101110001110111001011101100110010011001001100001010101000111000000100001100111010100110111011101100101010010101011001111000010010010000011000110111001110101010111110010101001000101110110010001000011001101111110101010011110011100000111001011100010001110100111100111101011110101000100100000101010101001010100110101100101011010001010111101011110000100100101101110110111011011001111000100011101010011001100011100011100101000111110101001011010101111100001001101010100100101001010101011100000100100110100100001010011001110011000110011100000110101111101100110110010011111000100101011010001010000100000001101010110111100101110101111000100011110001000001100001101111010111011001011011011101110011001000111101110011001010001010000000011110101011000010010010000111001111110001110101010010101111111000110010101101000101100010111110100101010111110111011000010101100100110001011001111011000100110011010010110001101010001111001101101110110110011000001111100011011010001111011100111100111101010100000110110110101000101101100000101001010110001101001011110111100111100111011100011011000100011100100100001010100101011101110011110100000110000111110101111010110101001111111000001100000101100101010100110010100110100111001101000000000111100111010101101100000110001101111101110000001111000100010000111101010101101011111011011001010101001110110111011011010110001010000111011001010100110010001101001000100000000010000100111111111110010001111000110110011010011000000100101110111000010011111101110110000011001101000110110110011110001101011001101101010010001010001111000011111111000111010101100010100110111110010001101000111011011001001011101110110001110110011001111101010010010010000010111100101111001100101100111100011001000010010000110011011101011110010100110000111001110111000010100011100101100100111111110101110011111000100111000010011110000000010111111010110111101101011111000100001101101000101110100101101011000001010000110111110001110001011100110011010101100000100111111100110101001111110101011000001100010100110010100000000100111110011011001011000101010011111001000101101100010100010100011001100011011010100000000100101001010100010110100100110000111110000101101101101100101111001011001110100111100000001010100110101110111101100011111100101000101100101110101111011100111101010100000010101100101110111000110001110101111101001010101101011010011101011110011001101010001100000000011101110000010101000100011001101100111011000000010111001111010110110101000111011011010000111011000010010010111100000001000000011010011010100101101000111001100111000011100001100010010111000000110110110010000000001010100100001111010110101010011011111001000110001110011110111000100100010101101010101110101100101010111100100001011101010001001101111111101111110000100010011101101001000101110110101001101010011111111110100011001111100010001011101000110010111011010100011111000000111001101110100011010010000110101110000000110111110100101111001011110010100100000100111100101011101100000101000110111000010010001100010111100001010111000100001111000001110001011010000001011110001001111000110000010111001111010000100100001000010000111101000100011101010011011000000101000000001010011011001101011111111111010100010000000010111101110110011000010100110001000010011010011100011110000101110010000010101110100110001000101010111101101111111001000110000010011011001110001010000111100001011100001001100010110110000111001010100100101011101010000010001000100101111101010110010010111101110001011010100100010001101000000110101111001001010100011011111101010001110011101100011101011001001001 +001011010000100011110010111101100011010000100100101000011000000110000010111011001011110000111010101010110000110101001010101101001100000010110011000000100001011000110111001000000001000010101111111101010100000011111001101000110100010000001110011000110010001110000111100010011011110100101101111100101110101010101001000011101101101000010011110010101011100011000000111000011110101010111010010011101101001011011000100001100110100010010010100100000001001011001110011000000101100011000000011100101000101110000010001101110100111110100000011101111001001010000111011011001000011001011001010001110101101001111110001100111101000000100010000111100100100101011001011100001111100110010111100011111000110110100001111111011010110100001111000010010111100110000110010011001101001111100000001001100110011100010101101100011001110000001000011001010111001110001100010010110010111011000000011001000011100110100011011010000000111001000010101011110100111110010110001001110110000101011011001000001110110010000001000000110111100001110010001001001100101111100011011101010011010111110000010011110110101100010010111101110101000111001011110000011100110000111111101101011010010111011101111110001000000000101111110110111110101110110110010000110000110100010110100010110010001011110101100100000011010110101110001100011001100010100001000000000001001010111010010000111111111100110011100110110010110100111111101110110011000000101101111110111010010111101000101001111011010101001111100010110001101111001001011001111010001101101100000001010001011000100001111000001001111101010011111101101111100100110001101100101000010110001001000100010111001010010100100111111100111010110001000000001110010000000101101100101011101111110001110011010110010100111000001001011011011101000010110001000010111111010110110001100000101101101111001101110110100001111000010011011101011101000100011001111101010011110010110100111110101001100011100011110001001101011010011---------------------100111111001010111011111010001011110001100100100010101011010110000001001100000001001011101111011110011101001001101001101101011101110001011011101110001111000000100011111111110011011011101011111101100010110111100011001011000111110100100001101100111111011100001001011101100100111110001100000011010001111001000010101011010000101101100000110011010110000000011101000111111110000001011101010111010100001011010000010100100111001001000001000010001011101010111110010010111011110011111001011001011111000111100110111110011110100101101000101011010111111010101011010110111000101000011010000100010101100000001101011110000001001000100101111011011111001000101000010101101110111110100111000011001010101011010110100010111100010110111011111000001010010011100100100011001100000110000010100000101000000011010011000111110110111010000010011001010100001001010011010110100000111111101111010000111110001110010000001000101000001010010011011111011010000011010111110111101111001110011111001000010000100110010101000001001000011001110110111100101100001001101010111100001101001111010101101110111111100110011110001110111100011000011010001000100111110001011110101010101100001011110111100001001010010010011110011011000000110010110100101101110011100000111111001011000100010110100000001010001010100111010110010101001000111111111000110110010000010101110101001110011001010011100111100111000001111111000011011100110010000100001000110001110000010000010100001110110011001000011010110000000101110011101110010010111010110101001011011010100001100110000000100111110110101111001010100001010100100000101100010111001010010011010001010000010100001000001110101011110100111010101111000111110111000110110101001010110100001011100011000010011101101101100001011100111110101101011001101000100001001000111101011001000110000011101101011011000111001010001111011011010110101001111011001000111100101010111100101100110000100100100111011001010011011001101010111010011001011011101110110101101111011001101100111000100100100111110101011110110001010101001101100010001010000110000010111111011010100000000110010000110100010100110010010011001100011101010111101111101011000010010111110000000101001111101010000101101001001010000011110001100001111001110101000111100110001011001100001010110110001111100010101001011101001000010000000001110100010011111111111100101010101111100110000101011100000100001100011100001010110111100101100011000000000101111000001000010011010111100000101101111000000010111100110110110111100100110001000111001101100101100101110010101101011001000100110101101011111110000110101111110001001111011110111000000001100100001101000100011110001111001101110010010010000100100001011010010000010011010101111111010101101001000010110001000001100110011101011101100111011010000110101011100101000110110001000001101101101001010001101100100101100001110101100100100110010110100111111110010111000110001111001111101100001011001101000001100101101000101000110101011110110010000010101011000101111011101000111101111110110000001100000100010000111001100010011101100010110110000110011100100011101110101111111010100001111010011111101110101000000110001111011100010110111000001000001101010011111101100101010101001001110101000010101100110010000010000110111111011101001100100100000010011001001001110000100010011010010111110011011111110011111101110011001001101000011101111010101100001000000110000011011110100111100110111100100101111000001100000100110001010011100111100010101101011110001101010111010000001001000101011010110100000100011100001100101000110011010000100110001010101011111011011101101000111110111001001101111001000011000000111100010000011101110101000111111100010100001101010101100111001001110011110001110110100110001101001000001001000111100110111110101000010001111010001010100101011011111010000111111001100101011011101010011011101101100100111100011001110101000011101001011001010110001000111010000000100100110010001111000001110010100001010100010000110010100011001010001100000111000111110101000110101101000101001000100110100110111100000110111011100101100111111000000111100010111101011111011100100100001010001101010010010000111000110100000100111010011100110101111011101111100111010000111000001101101110111101000111011001000001010000110010000010000110001111101011011100000001011000000111111100110110000111001111110110101101010110011100111110001110100101001111100110110010000000011000010000110001111111011100111000100110101110100010011110001110101100011101111000010110110100110000110001110010000010001 +001101001000111011101000101001111110000010001110011001001101001110010000111100111011100100011100000111000001111100000111010011000100110100000010000111001101011100100001000011111011111101110110100100101000000011001001100001011001000110101110011111110010011010010110110010110011100001011110100101111100111110111001011001000111011101011000111010101100110110001011101010010010110010011010110101011011011110101000010010111110101110110011111110100101100111111110111000100001100001111011010101111110001011100111110110010100101110110010110011110110100110000001010110000001111101000010011011110100011100100000111100111110111010001010011100110011101100011110011010001100100100111100010111100000001010000100010111111101000100101001011110010101110010001110000100011010111011011000100011100110100001010000001100110011110110101101011110011001110011011111001010000101010110010011000001000110100011011110000110011100010111111110010110011101111000111010001001100101110010101000011110110101011011111100001011101000011101100001000110100011000111011000011011100101010001100011001110111100010100010101001100000010010001101110110001010011100000110101001110100110111100011011100111111111010110001010010011110001111111100100101110100101110011001110000110011001010111011001101111001101110101000010110000010101100111111010000000100111000101101011111110010110000000000111011100010010011010111100111111000110001010010001111001101001011111000111110111111010101100000000010001101011011011000111101100001001111000001010000010100100101110011101011110100010111111011010011011001111110000000011010000110011001101100000101011111101000100111000111100011000101101110110111110010011010011110100011100111101011111111100001000111100111111100100111110100010110011100110100100001110111010111110110010011101101010101101100001111111111010101100010110001000100000011100011011010100010001000001111101000011100101000010101101110011000100011100001---------------------000111100011000010001101011011100011111010011100011001101010100101111110110101100100111010110101001110111001001110110101101101111010110101100010100100100001011010011011011101101101110000010110111000111010001111110001011010101000011010100001000110100111000001100100010010101011111011101001100101111000111001100010111010101101100011111101100100111111111111010011101101101000110011111100100110100110001101100010111111011001011111001111100101110000011010100100010000110010011011011110010101000101010010000001010111000110101100010001001001011101000111011100110010011110110100111011011010000000101000001111110001111000000011101100100100000111111000100101011010111010100010110110110100111111000100100111001101110011101000110000100111100111100011100010101010111010001000100000001100110000000111001100100110010101110101100110010000111101001001010101110110010000100011000011010101110011111110110101101001011111011010101100010001100100001110011010000111101101110101010011010101000100111010111101001011001000010010001111011000111111111110000010010110101000001010101100110100001011111001001110111101111010010100011000001110011110010000111100000011001101010010111000010011110111101111100100011010111101101001011110111010110001000100000100010001110111111010100001011001001100001111010110011100101111110110000011101110001101001110011000011001100011000000011011010110111111100001100110111000101000011011010100100101001101000011101010100000101000001011100010101111001011010100100000000100011011101110011111011000110110000010111100001110100111110101101101001111010001101001101101000011000010110111100110111100111110001101010010000011010000111110100000101100010001111110000010000111000010101010001110100100001011000100111011001011100100111000101111111011011010011100110110000001111000001011010110000010110101010001111110101011110011001111110011010010111000001000001101000101000011010101010111111000111010011001101011100111010001000111001010001010010110000011000111000111110100100101010011111011100010010000110010110101101100010110101010111000001010100101101100000001111101101110010000011010101010010000001111010111100010100011111111000011101101011100000000111000011101101100011010111100001101001101000111011111110000001111011100001010011011001100111000111001110011111000101101101111010101011110101100100011001101010001010011011110011000111001010111001010111101101011011100111000010010011000000110100110011111100000100110000100111011101010011111010011100111000110101100000100000100000100000011001111101101100010100010110111111001001000101001110011001110101100011100011000001010101111000100000110111110110110111001010000111100101010011101000111001110111100101010011001000010001110101110000011100100100100011111111110000100100011110001111100100000010101111001110101101111000000010000011010100100111010111011101111010110010111010111101100011100100001101001010110101100111110000111100101100111101101110011001010100110001101100000001101010110000110001110110011101110010101011011010000000111001101111011001100111000101011100110011101010001100100100011010100111100001111100001110110111100010111011110111100010001000010010101110010011101111111000101010100110100111101000001101101010001001011000111011010111000010111001011110101011110101110001000100111001101100010110100111010101110010000000111101010001000101100101000110110011010010110100111001011011110011100100101100001111110110010010000111011010110011100100001001110100011010110101011111110010011100110111011011110100000100100111100000100110010010010101110011010101101010010011100100100001110110001000001111101101110110110010000111010011010101001101011111011110100010101100110001111101000100010101011000000000011010010110000001010001000101011111010100010100000001111010111100101101100111111000101100110001111001000001100100101001111000101101000010001101000010101001000011101011000001011100101111111010001101100000110010011000000100011111111101001100010110101111011010011001001010100111110110001101100001101011110101111101001110010001101001111001101111101100101101001000001110001111101100110010100101101001101001101111000011110100100110111100110111111001001001000001101100111011110111110110110000001011011100000111011100100010000001111001011100111001111011101010101011001000101100111110111110100011101000101100011100010111110011001110010101110100100101010000000110110111000111111001000011000100011011101100101101100000110011001101010000001010101001101101101111010011101101100001111100010011001 +010101000111011100010000101110101101011010000011010101110110011010001110111100000110011110000101000110011101001010100011011000010101110111000000001101100001010100001001110100001101000101010011111101011101111100100010111101001101100111101010111101000011011001101110010010110000100101001010001101101010001101001110000010010011110000111100000011010010000010110001110001111110011111110101100111000001001100111011100000000101000000011100101110011000101000100011001110100001010011101101011110111111111111011000111101101101001000101111011101001001010111001111001010101010000011010011100101011001010010011000011001011100111011011111111011110101101110111010010011000101000101000100111111010000000100100000000000011000001100001111100010100011000101010101100100110001100001000000001010010011101001010010011111101101101110000000011100110101011000110101110110000101000001010101011011101001011100000010111111100101001011010110001011111000111111100000110011010001011000001000001101000001001001101100111100001111010001011001110101011100110101010000000000000000010010010001101110101111000001111010110010100000010000100000010010100100100001111100000110100010110110000110010010001110011110011010110000111100101010010111111111000111001100010100111101010100000111001111000110111100111111101010100111110011011110111101100100110000001001001001110111010111111101100001010110100001000010011101001001111011111100001010000110011110011011111010101101101000111110000001001010110101101110001101101110110110111100001000101010101100100111100110000000011101101001000010111011100110001011010000110011010010000110011111101110100110001111011010001010110110111010000101000110010101110000000110100110000011100111111110110101110110111001111100100001001011001111101110110101111000100110100111101100111100110010011110101100010001111111100111110101101111110000111100000010011011001110111011111011010110100001000111111010101101110110001100101---------------------010101000010001111100010000001001001110100101011100110110100010010100001100100000010111000001110010001110000100100011100001011011000101101001001010001110100001110010001001000000111110101101011100011100000111100011001011000011001010000111001101000101001111011001001111110110101100000101001111010001010110000100110001000101001111110101111100110101101000011111001101010010000101011111101000101000010100100010011000100011100110101001101000001111000100011011000011111111000000000101101011110001100111001011111001101011010011001111011111110101000111111001010011011010111010001000111011001110111010011101001100110111001010001100000100110101001000000110111100111001110101001001010101011100011010101001000101101111100001101100111011101111011011001011101100010100011011101111001111101000110001000101100011111000110111111001101010010100001000111011000010001000011110010000011001011000010000011110011111111100101001010100101100001110011110100000101011101110110000001111111111011101111000110011000001010010101001111000111101000000110000010110011101010011001110010000100000000100000010010011000000111111011010000111101111011001010101001110101010101111010001001001010010011011101011010101001001001111011001101110100101100100101110100110100100010111111011100100100101110000010010101111010101110100001001100111011000010011010101001011110101100010000010010110110010001000110011010100111100101000101010101001101101101001111100001100101010000110100100100000111100010011010001001000100000100100011011101001110001111001100110100010101011011001000011101101011011010111101111100011100110011100101010100011011001010001111010100000001010000100101011110010101110010011100011010011011101000001110100111100110100000101000000110100100001001111011100111110001010110011101000110111000101001011101111111111010000001111101000010110100011001011100010100101101001101000111011111000101101101010000100101010000001000110100001000111110000101001010100001011000001000011011011001101100110000100101111111000100011111101000001000001011101100000001101011111111110011011100111001001110001000111100111111100000101000100101001101001001010010110000100001000011101110110100011101010001010110100001001011100011101110011000110100000100011011001101011110100100011100110110101111001101110100000011010001111001000110100010001010010000000000101101010001110011101101100000100101100011101011101001011010000111000101110011100011000011111111011100100011001100000001001000001001110010101000100100010101000111110111110000101111010101001011100111010111110111000111001011000100011001000100100110000000011100010111111000111100010001011011001011000010000111101100100110111010100001111000010100100011011111101011101011011101001101010101001010010110000000011001110010111010100101111110000010101010001000000110001000100111111100100101010001111101111011001011110111001000101000011100111011111010011010100111111001001010011001001110000100100111110001101000110100101000110010110101000111101000110011011110010101000100010010101101100000111001101000110001100100010110101000000110011011111110000110101101001100001010100010011001110111001010111111011101000010010100100110001011011101101101010010100001001111111011110101100100110000101001110010001011001110101000110111000010100011001011101010100111000111101011111101010110100001110000110101101000100001110110101100100001000101110111000011101110010111010010001111101001110001001000010011101110001110000010110011111101000111011010010100001111001110000101101111100000010111100000011010110011110001010001000100100110001001001111010001000011011000100000010100001101011000001000101001111000011000001110010010000011100101101100101110010101110001100001000111011001001000110001100001001011010110100111110000011011011111110001100100100111001001001100001001010011000111010111100111000001000011110100010000001110001110101101001000011001100000000110100000010001011101100000100010110111001000111000001011101100111011100110110010001001011001011111111000111011001110001111101010100110001110011001111010011000101001011111101011001111000000101110010010001010110110010101010010101010011001010111100011100011001110011101111000101001011000100010010100000110010010000010101010101110110011001100001100010100011011111100110101111101100011110011011011110101101000001101010001110001001010110010011100101010111110010110011010110110011001011110111000111000101100110110111101011100100110111101110111100100111010001011000011010011000000010101001110000010001111110000110000 +000100101111011100000101111011000111111111010111001010001111010000001111101011101000100000110111011010110011110110111011110010010001000110100110111100101000001001001010001011110000101100110000110100011110101010101111110011101110100111000011000011010011011001011110000101011100001110011101000011101100011011011010010001010000101101110000011101000011000110100100010101100000010100001111110011010111000101000000101010111011000100011011011100011100001000011111001100111010011100101110101111101000101010011000001110001010000101110011010111101110101111001010101011100001110000000000010110101010001100001100000110010001011000000010000111000000001111001001110111110010110111110011111101101100111001110011101100101010111110001001011100010011000100011011001110100110111110110010111011101010010111000111101011110001100010101101000110000011001011011011100011011110001001000111100011100100000100001010000110100010000011001011000000001101100011000011110111011000101110011010001001000001000010100100110001010001100000100101010011001110101101001000110001010001010001010101010101100000000010110110101111011001110001000001100111111101100000110000001000111010010100111100110101111000011010100011001110111011000010011001110100110100100101101001000101011000011000111110000011101000100001110101100001011000101101101111010100010110010001101000111100101110101010101000001100010010010110100111100101011011110100011000011001010111100010111111111110010011001010101011010100000101100111100011001111111011100110101001001110111000000101111011000111111110000111000110000100111010111111100000011011011011001111000011100101010001100011011111011101100011100101010001100010101001001110011000101101111100010011110000000111101011000000101001100010010001001110000011100100111000000001011110010010100110000110110100100110010101000010101000010001111100011011111010011000101100110000100001000010101000010110101110001000100001010110011111011---------------------111011100010110110010001010011110010110001100001101011110000100010010000111010011111001011101010001101111010011000001011000110001100111010000000111110001100000001101001011001000000100010110100101010011111001010011100111011000101101101110101110001101001111011111100111011000100001011011010010001101001101101101010111101011011001100001110100011011101001010010101000010010010100101011010000101110110111100101111101000011111110001110110001111100011001000111011011000101110111001111011010100010111110100011111010110111101010000000011111000000011111110011100101110111001001111000100110001100010110100111001101100111100010011000111111110010111100010010000001111111110111000011110100001010100100010111010001100111101101100010110100101110101010010011000011101001100100100101010110001010100100101000011111101110001111101111100011110101110011000100000100001010010010000011010111110111000011000001000000101001101001111101110010110110111111110100110101100100000100001010101111000100100010010010100100111011011011000010010100011000010000100000010010011110010100100100000000010011010110011011010010010100000110010110101000110111101010000001000110111010101101101001100010001100001111101101111001111010100011000101001010100111001111111001110011100110001001101001110100001010111001111000000001110101010001100110001100010100111101010011101001100111011111011101111010110101010001100010101011110000011101011000100110101011010101101011000011111101110111111010111101010100010000111011111101111111000000000101010100001000011000011010100001010000110000111111110110001011100111111110001111010001111000010110011011010100101000001101000100110011100100111011111110110101001111011010110100011111111100001010101100110011001101001101111010100110111110010101110010010010010000110000011100010111000001101010100101111001100111001000110101001000111011000011101101010000110100001101011010011111111011010011100010011101000111001011011110101010110110111100100100011010110010000110010100111101011100101110000100110101001001100010001000011101111000111110001001011010110011110010000010010011111101110111101110001101011101010101100100111111111000110011011101101011110111100000010000011001000100111010101100101001111111001101011011011000100010101011111010110001010001111011001000101010011101010111001001011001000011111011001001010001111010101010110011100101000101110111011010100101100000011000010011010011000011110010000100111010011001000110100011011100100101111101101010001101000111000010111100001001111110100000010001000111100101100101000011011111110010101000100111111100011110011001100110001111100010011011000101011110011100100111110100111000111010110001101100011011010001001110001101111000001010011100001000001001000011110111010111010010110110010101101010110101101000100000110001111101100001100101100111100110011110011101011100001001101110010110011111101001010100011111000110111001010000110000100001100001000001101101001011101000111001001111100001101011100011010110101111101100100000010010011011000110101100010101101001111011011101001101011010110000001001010110111100101010101000110011010011010011110000100010111100000010010111010010000111110010010111001001110000011101001011010111011100010111101001110011100100110001110111100111010101000110100010100100111101000011010010100000011001010111001111001010011111010000010001111110110111100110101101001000100100010101101100010111001111100011101000110010000111001101111111111001001111011000110110011001100100000001111111010111010100010011110100010011010011110011100101110000001010011011110000101011011010001110111110110101100100110110001101111011111101100010001110001111011111010111001010010010101001101110001010011000101000110100101000010001111010100101111000111010111100110000001011100001101100110011011010101011000000101011100010101011101001000110101001111000101111010100011110100100010100110000110001000011111101110001101000001101101000111000010001001001111001011011011100011100000010110011011101101110011111101111101001110001101100100011111011001101011110000001111110000111101010010011100011001011101010000011100001110111101000100110110010110001101101011010011111110100110000000111011110110010101001000010010011110110101110111110001100100010001111011001100110100101000011100011100111100101011001001101001101110011001010100101100100000100110010111010101000110111100111101000010110011010100010111110010101000011101000100000110101100000110100101101010110000110100011011101011000101011110011101000101010000001000 +100111100011101100100101111101000100100111001010110111001100100110001000111010111010111001010100001100111011001011011100101111011011010011010010011001000100000100000111110110101100011101111101000011111101001011001110101001101011110011110000101000000101011101011101101010011010011011111010000000111101010110101010011001000000010110101110010000010010100011001101101111000100111011110101001001101101110000010000101000010110101001001100011000000000001010010011100111010011100100001101011010111010000010011100111001010111100110000011110011001100101000111101111101101000010001101000001010111101000110011000010010100011101000010110101101110010000000111100111101100101100101001000001000110101101000000011110001000110100010001011000100010111100100010001110100000111110001111000000111100001100000011111010101010001100110111111010101000000000101111110111101101101000001110010110101001111101100110011111111101010000110101101010110010000011111000101111100000101000010100110010010010100100010000110111000010100000010100010000011011100010011011100110101001111110010100111001001001100101111011001111001010000011010001001101001100110011001000000001001100011110111001111101110110001001011101110111010010111000110011001111000010110100010101011100010111100111110100011110011011100110000011111011000011001101000011010111011010011111010010000010101111100001011101111111110010000101001010011100000000010010110100101001000011101010010101111100101100111011011010010100000100101001010001010111010010101110110001100010011100111000110000101100100111000110100010011000011011000000010010111001010111101100010011001011000001101000010101001110101100101011011000011100110011000101001011100111101001111011000001001000111101000101111000101010101001100111110101010010011011100011010111011100001101011000010100001100101101101110010100100110010010011110011100001101010000101010110010000100110101011010001100011001001001110101100101111000---------------------110001100011010010110011101000100100001101010101001010001010000011110100011011100000011001000011111110111000110110000100101101011111100000010001110010010111010010100010001101100011100010110100111000100001010100000100110011001011111100110001001011011110100001111001111110011100011010100111100111100001000111010111011100010011001100000011101100000110010110100001001111111001000011010010001011101000001001100110110100111110011101111100100001010101101110101100101000000100111000001111000010001101011000011111001001100001101000110001101000000111010011001101110001100011001011001110111100101000111000111001001001000101101110111000001111001011101101100100010000001101101110011001011001011110110001000111111100100100100000101110000010101000010000011010001111000111000110001101001001010111100110001111101010100001111111100001000010011001100101011001010110000110110101010000001110011101101000110010101010110010011111100011101001000101100000101001100110001001011111100111010110101010110111101000101111011100000111110111110110011001110000000110100101101110001110000000100010100101110011101001011001110101111000011110100110111100000101011100100101101011001010001001010111100010011111101100000110011100100100000100111110011110111001010111010010111101100101101011010001011000010001100000110101010000100110110111110111010111101110100110000111110011000010010010001001010100001101011011111010010100000000101111100101010010011110111101011010001101010000011011010110000111100110100001101100101001111100011010011000001101101101110000011111011101011110110111111110000011010010010101010101010101101010110111001101010100000011000011111001101111110010111010100100010101111110011001111010110011100111000101011111000011011011111100100101011011101001110000000010110110110101101000000011110111010011111110000100101101010000110100010000100101101111010111001011111110100111111100111101010010100001001011110010110100010100100000000000100011111010100100110011011101001100011111110110110111011111011111100010111111011100001101001101110011010111001101110011001110100010111001001101111010001010010001000000010000100111100110001011100010001101100001000111000001010100000001000001000001000111001000001110101011100000011010011010000100001101000000001011100010101010010000001000100000010001010111101101101110111100010101011111001010110010000011101110100001001011111000011100101010011010111101111000101000101101111000000101010110111001111101011011111110100100111110001111011000000110001001101111001001110000111000001110110011011100101011101001011110011001001010110001101000110010001111010111000111010100001100110000000010000000110100001110110001010011010000000110101101100000111010111000001010010011110110111101111110010111000101011011001011001010110111000011010110101111000101010000101001000000000101111011011000010110100010001001000111010100010100101110110010001110010001010100111011111001000100111100010010111011100001000010010111100011000101001001100111110100100111000110111110111111101000000011010010001011111000011010110110010100100111010110110010110010101011111100000001111010010011010000100110000101111011010110011111000100111000100111110101010101010011001101010101000011011001010101110000110001101010000101110001111010000101110110101011011001100010101100110111110000000101101100110110110111110101001011000010011101000111100111111110000001010001001001111010101101011100111110011101000001110000101000011100110100111100011110010000010101010010001001110100110100011001001101000010001010011100110101011111100111110000010000001011011110110101010010111011101101011111110101001010011110110110100100111101010011110101011100111001000011101111110010100000100110110000000110111001010111000110110111111110011010100001101000000110101001001000100000010000111101100000010000000011011001010010101111000111000001000000100111101101111101011110010000101010100100101111010111111000011001000110011001100110001110110101111101011010000000000101010110001111101100100000100101001111100010110100101100010111110010001111000101001111110010110110101000111000100111100010011001100111000110000011101111000111101011100010010001101010110101100100101111011001011111000001100101011010000100010110111101001000000110110100010111111010100110100110001010000110000111011100011000110000011010001010101011010100011101011010100000110110110111110111100010011111000110000111101000101001001111111110011101000100100001101010010111000100001010100001011110100110001000110110111001110011110110000110 +101100111100000110110000001010101101001000011011000010010110000011101101100011110100101011101111111010000111011101100001110001001000100001110111101100011010011000101111000001101000011100101100100110110110010010010111101001010111111101011100100001111110001011001001010111101101011100100011010100110011010100001101100010010111010111101000110110110011000010010100000010011111111101101001001001000011111101111101110110011001001100111101111110010010000010101001100110011010011011111100111110001001111110001000101001100000101010011001011011100101000110111101010011101100001000000001110110011100110101110000001011111010011011101001011011110011111001010010111001011111001111100101011101100100010111111101011000100010111111001110010001000010110010011100011100010101011010100000110100011011101110111110111001001110111001001111111011100100001111111100001110001011001011101011011111001110100000011011100001011111110001010010000110111001110011101000011101011101010000011010110001100111111101111100101111100110000001010100011000100011001101100011001001101011111100000101101010101000111100000010000000101000110110000010001011101110111110001100011000111011101010100100111011011001001011111110000001001001100011111111001001000111110101111001100110111100110001011000000011100011110110000010011100001100110111110101110001110100011010110001111001100010101111001101011011010101011011101010000100001100101101101011101111101110001110100000010100001000000011101011110111010010110010011101011000110011101010110101100101111000110110110110101001001110000001100100101111110110100000101100100011000011000111110111010111101011110001001011111111100110011010010000001100001111010001111011101111111101101101001010111000010110100011001000001110011110011101101011010101000101000011011011011010111101101110110010101111011000010101100111000001111101110110001101010001111111001000001101111111001000101011111110101110101111111111111001010---------------------101000110000011010001011101001010111001110010111010000011000100100001101100111011001010001110110000001110011100001111000000011010001000010010110101010110010100100111000110001011011111011010110010010101111011011000011010011000010011011101110000001001010111111100011011111011001010010111100110111101100010010010011000010010000100100001011101011111000100110001111101111010000001111100110010101000101001000100000010100010001000001011000011011001001000100110000110111011011100111010100000001111101100011001111110101001010101000110011111101000001000010101110011011011001001110100100011000101000010101011111001110011111110100101101001000001110111110101001100011010001111011111010110110011000010011100010001110000011010101101010101011110111101000111001000101100000011111111001110000101001001101000001001011111000000011110001100011110100100000100111000111110011001100011111110110101000001000111111001001100000000011101110101100101011010110100101100100100001011101000110110011100101001100111110000011110100001111111011101111010001110000000010010011001001101110110000011110101110101010011011111000001110100010011011110101110100111101101111000001011001110101011101001100001110100000010010110010010101010010010110101001100000101011110011110111110011000010000001100101001000111001101011101110011001011101011110110001101101000110111000101010011111011010011010111110110111100100110100111000101010101101011110011110110011011111100101101000011000011100010100000001010110110011101010001000000000001111010111100100000011101000010110100001110110001000000000010001010100000100000101110101010111011000100110010011100100000000010111101110000100101101100111100001100110110011110001000101110110011000000010100110011000011110000010100111000111110000110010010111101010110110101110111111000000110011011101111011110001000111111010110100111101101000101010101010001100101010101011111110000011100000100101000101010111001010101001011110001001000111001100011010001001110011011111101110001001100010100110101101111011010010101111000001001111011100001101010001001101000100110011110010111000101110101000111110111111101100001000000001010001101110010011100111000101100100111001010110110101101001001111111101010110101111100000100111101001111001011111010111111001001111101111111010101011011110000001000010100000011100001011001100010001101000111100101100011111101011010011101010111110000110100100101101001011001010101000010000000100110111101000101110111001100111001111110101000011001001110001111000010010101100001011100100001100000111001101000000000111011000100111001000000110010011111000100111101011101110111000010011011100111011111100110010111011001111100100111010010110001011011010100010101010000111001100001110110001000000000000100100001000100111011110100101101010001100010001111000000101010000111011010010110111010011011010101000111001111110100111000011000010001000101000101101101111010101010011001101100110010101101111010001000110000010100101000001111011101111010110001110011110000000100110100001111011010001111110011000010100111001000111011001001011011000000010001111010101100100011100001001010011101101000100011010000101000000111011100101001110101100001001000011000011001101101000011100000110001011001101001010000000001011110100111011000101101110001100011110100111000101101110101111011111101000011011010111111001000010000110100100010011110000111010001010000000110100100011111011001110000100001000011011111111110001011110110000110000010110111001111100101100111010110111110010000001010000100001000001101011000010010011110000110100010010111001000100010101111101001110011001100111011110111010001101010100000001110101100111100101000111110000001011111011110101001001010000010100000111111010110111110011110100101011101010000010101101011010001101110111010110010111101100111111011010011010000001011110111101011111110011010110000111001110010011111111110111011101000001001110101011010100101000100010100011110110111101100010110110101000101011100000010000101101001110101001001111100100111110001100110001001101001001101111111011010011110011001001001010001110010110110110011001101011111001111111001100111110101110000101111101010011101011100011000100110100000111011010111101111011101100101011010100110110101110011111111110011110101100110011011110111111001001100110010001010011001110101010111100001110011010011000011111010011010010110101010011000011010100010000110101011011100110110111011001111001001101011111010011011011100100001001111110111110010001010100000000011100 +110001000011100010110111001011011001001111010110010011100100101100011010001001001110101100001001000100001110000010000111010110010111000011000110011000110110010100101010000101001110011000000110100111001010110001101001101001100101111001110100010001100001011101110001101101010011011110101101010101000010000101001101101110000100011110001010111101110110010000100110110101101000000111000111011111000101110110011010100000010100110111001100000111001001111101011011111000011010111001110011111010001100011011000110001100100111001100110010111011100011101111100000111110110000101001110000000101010100111110011100011110101110100010111111100001000010000001110111101101101100011111011100100111101001110111111000000010001100000011100011110110111111101000100011011101011110100010010000110111101100110111011100000011111011111011111000000000111101111001111100000110010101010111101111011101010110001110110101111011010001100011101011100011000101011110010000000110100110101010111001000011010011101111011111100001111101000111001111101100100110110110110011000011001111111101100000111111111000011001110100010101001100100001110111011101001100001110000100100000011011110111111110010101101110001110100111011110000110110111110111111000010011010011000111100000000001011001100101110101110010011011110100100110010010011100011010100001100100001100000010100001010000010000001010000011111011011001010011110101111001001001101010010000010001110010111100001110101100101111100010111001110011000101011100011001001011100011011110111001110011100001010000010100011000001000110011100111111001010001001011111110001110100000111010001100101011000111111100110001011010001100110011010010100001110101010100011110111001000010011011111100000000001001000010110101110000100100111000001100101110010000011101000111010101000100000111101111001111100001011010000100011000011111101101110110001110001011000011000101001001101100010100100011110010110010100111010---------------------111101100100111000000100110110000100001100011101000100111011001000001010110101011010111111000110111100001000000101101010010000111001100101000010100101000110000101001011110111100110001100011100010010011001001001101101000110011000101010111110110100110010100011000101011110001110111001111100110010111001010010110101110110010100011011110101111110100011010101101010110111001010101001111001010111110000000011000001100011001000111001011010110010101010111111011101001011001001100110100101000101100001011111010101000100001101001111011100110001011011000100101100011010011010101010100100100110110100111100001111001101001111110010101010100011111111011100110111010110010101101001001000011010110111001000111001100000111100001100001110011010011000101111000101110111000011001111011111010100010110111111001011111111100011111110011011110101111000101011000001001100110000111100011001001001001000001000110000011111000010001010001011111100110010111111100110011110010110101011101010101011100011111111110111101100010010110110100000000010000001011101000100110110010111100011011111001001001000101100000111010001100111100010111010001011111010011110000101001011110000110100100100111011110000001101010011100011001100110000101010110101101110111001110010111010010110011101100000001010100001001010010101110001101010110111111010111100110100111111101011101111001000011110100111110000011000110111110000011100001100001111011011101111100011010001011100000010111010011100011011111111011100100100011110010111111011100111010010001000001001010000000010100110000110111000100001010011001001001100011011011010000111111011101110111011101111110000010111010000101100011010001001101100110000000010011000010011100000010100001101011101110000100001011001000011010101101010100100100101011001100101101110001000110000010101101001001011100010101101110111011000001100000110011000100101000011101010110011111100111100011010011111001001100110011100100111001110111111011010111001011011100001000001110011110011011101111100000101011010000110011001111111100100000011000111010001000111111000011111000010111110001100101010101011111010001000001101100100011001100001110110110000111111001111110000111101101000000110001101110001010101010011011011100011101110101110111100100011110010111111111011010111100110011101001101100111010111001010000101100010001011000100000010001101111101101110111100010111101010000101010111001000000100001100111101110101000101000001110000111111010111111010100110010000010110111001111100011111100100000111110010010100000100100110001001011011100001000100110101110000101100011000110011010000010100110011011101110001011001001110011111010010101101100010100000011010000110101111000110110111100010011000001001100100110001001101010000110011100110001101001000001110110001110111110011100000100100010001111111000010001101111111101101010001101001001001001100010001100111000111100110101100001111000111101011011010000011010000101000110011110000010010011001001111111101100001010111000110000101101110000001010110010101100100100101001011111000100000010001110001000111100100101010000001001001001111101010000100100111111000111001101101000010001100111000011111100010110100111000110100000110101101101000000110000010011110010111100000011010110000101010001001101011001100001100001110111001001001110010101110101010000101100111010000110110110110011100101011000110000111100010010110111000001110000000010100010110101010010011111011110110000100001000010111110010101101011101110010101100110000101101001110100101101110110010011101011010101111001010000110101100010011001101010001001001100100000010110101110001100110010101100001011100010101010011010011011110000001110110100011011010011010010101110000000101100001100111100001000001010110110001110010100111000111100000100011011110001101100001100001010110011100110101001010111010101010110110011101100111110011010011110110001011001011001100010011111010110101100000011101110100010010101001010010010010001101101110010011000000011000111111111101001010010001100100011010000110110100111101110101000001001000101000100101010111110110101011110110010011010010001011110100001010000010110111000010111011000010111001100110101000111011101000110101010001010000110000011011001010100100110010100000010100110010001000100110011010101011110111001001011011110000000100010100001000101110110010110110110011110111110000110101000001111110000000111100001000110100001010001110010100110000001101011101011101100111110011010010011110100010001000101111011000011011111010111111 +001000110010001001110111001101001001001100110011101011100101100101000010101111100010111101110000111010111000000101001011001100111100101111000111110010010110010111010101101111101000101010111000000001010101001011111001010011110111110100110000111011100101000001010011100111001101011000000000010010010111111110011001010010110110100010101110111100001011001011000111111000011000011000101101011011001001100001011100100000010010111010011000001011001001110010110011100100000111110100110010100111111011010000100111010000010101110001000100000110100011010001110011100101010101101010010110110101101101010001100011010000011010001011101000111110011110010010011000000111101100000011100001111100110001110000100000010110011111011101101001010010101001011010000110111101101101101111100110100110000101000001111000100010001011101001001111001101000000111000001000001001011101000001000011111111001010000110000010100101110010010100110101100011000101011100000110000110011000000101100000011101000011111000100100011011110110000001010111110001101101101101011000111111100111111011010111011010101110111100011110001101010111010111101001111110000111100000111011000011111010111101000110001111001101001101101010111101110111110101011101010101111001011010011110100010111001001010110111100101000110101100111100100001001010101101010010000001101100000001001010101001010000011001000110110001001110100111111111101110101110001011001110001101011011010101001100111101101000110101110101111010011010001100010111001001011110100100100111000111001100000000111100111111001100101010111101101011111110000000101111011111001011000001010110010111111011011000010111100011011011000100011110011010001101010110001011011001010101001000010011111100110011011110101110010000111000111001010100011010100110010001000000001100100010101100111100110011100010100000100111101011011010101100010100000001010110000111010110011010010100110000111011000101010111011010010111011---------------------010001001010101000001110001110111011111011111000111001001010001101011000110001010000000111101010011110111001000001000010100000101111001100101110110110000110010011111101101110110010011110111100100100011110110011101100000001001111001000011111111010111001100001111100001000111001110011010001111100010110101000000110001101111001110111101111011100101000100101000000011011001011111010000101000100100000000100110110010011011010101001011110110111011101101100100111111101100110010111000100111110111101011110101101010100101000101101011010001101001110001100000000000011000100100001000100001111011000011110000000010011100100100000000011010000111001010110011001011000100001110000011000101110010110101000100011001110111111100001000111110111111101010010001010010100101110000000001001111111000110101011100000101100110110100100011101001100111101100110000100011111101100111000100001100001110001101010011010011000101011011111011011000010011110100110001110101000011100100010001101101101110010001000111110111000101000000000011011101010010101001101110100001110010001101101000101110000100010110011011001001000100111000001100101011001011011110011001110011000111011110100000011101111110110101000011110101100010100000111100001001011011101010001011111010100100101010111100000110111111101111000001111001100000111100010011000010010110000001110100110000110000010111011001111001101010011010101111010100001111011001111000100111011111101011011001010100010011001111110011100011110110010011101011010100111111111110001000111110101100101000111110101101000011011011101110000000101010000100101101001101011101110110101000000010000110010110011010111000111101011100011111001110100011110000101110000000000000101011101010000110011100010110001111001000100101101110110100010110011111001010011000001110111010000000101111101010111111011100000000011010111101011011010011000110110011010110111111101100110100101110110000101100001011010101111000111101110110111110111110011010000100001111000111001111101011001001011010111001111110111010001010000010101110110110101011110100100011011111000101010111011000000010011101001111000000100110110110000011011100010011000100111111111110000111101111111110110110011010001100010011011000100001100110011110011101000111111001111100111001111000111000000001111101111100110100011000000101010100010111010011010110110001111000011100100000101001110011100110101111010100010000110100101001010100010001001111011000111010111110000000001101100100011111001000111111001100111100010101110011001100111111000101101111111010000100010110010111000110001000001001110011001100010010111000101110000100101110100000100011101010110100100000010110000110010000111010100000010000101001111000110111010110100000001100001000101111101011000111011011010011110100101010100000110101101100100001001000011000111100010111100010110000001101000011110110100110011101000000001100000111101011101111011001101110011110101001011010100011000011011111101010101000111001100110100001101101101111111111110000000101000011100001011010110001000110110000011000101000011101110101000101110000100111001101000010100011100011101001101011110010010111010000000111101001101110110101111111100010101000100100101010111011001101100001000100100110001110100010111101011100000001101011010111001111010111010111101010111000011010010111101001110010011100100100011001110000101100100010000010010010001001011011001010001001100100011110100110011110100010011111000110011110101000100001101000010010011111001101011100011000001110110110100111000011000101010101100110001010011110011010110011010100101111000001101100101011001010001100110111100000000011011010001001011001101101001110101011011011100011001001111000100111101011000101010010101011011011100100000010011111011110011011010101000001001011110100011001011101001110101100100111000101011001000101010111011010100000001000000110110011100000001110110111000110111111110111010101111110010100010011100100011000101111001011100111010111101100100110010011011110100011101101101001000000100101001011111111010100010110100000110000100111101110010000111011000001001100000101000100110001101001011000111111001101100000101110101111011000100100001101100101011110001011000110110100011100100010101001100110001111101111100111001001001000100010000110110001111100110111110010000100111110010011110011100110011010010101111100010100111000011011111111111001010011111011010111010001011111101010001011010011100000010000110101100011011111111111100011000100111010100000100001101111011001100110101 +100111000111001110010010001110001001011111101110111011011010011111000001101010101101000101000001010001010011011011100000010001011001110000010100101111000011111111100001100000111111000001000111010001010010000001010110011010100110110011111001001101111100010000010001101110111001011100000111100011000110100001001010100100010111010111111111101111111010101111000010101101010111011101111001010010110000001011001110110011011100011100100110001000100110011110111010111010000001110001000111100010101111100100111101011001100101101010100001110100010011011010101011111101101010001100111101010111111100110011111110111001011111111001000011001111010000101001010000111100101010010111100101100000100101001110000010000001101111011100001100001011101001010100001000110111110101100111100000110011000111111101101111010100010111000001010010001010000011110101010101011011010011000001110011111110001111000000010010111100001100111011001111010110000011010010100010000011010010110111011110110011111100000101001110010011100001000101111010001110010100100111100111111100111101010010011010101000100001110110010001111100000011101111001010011001101101100100111001111011111111100110001010001001111111010001101010110111111010001110000101111101101101100100001101110111010011001011001100100111011110100010011000001001011010100100101100101101110000000101110011111100001000011110100100111011000000110000100000011010101101101101110000100010110010110111000110111000111000110001000101000101110110110100000001001101100110111111101101110001111000000111011010101000011110101001111000010000100011111011101010100111010111100111101111110011100010011111001011110101111010000010101010101100010000111101100011010110100010110100110111000110110010001111111000100010110100110100011111010110111001110100010110011011111110010000000111110001011101001010100110110010000001010010000111111011010000010110101000110001100000111001110000111010111000000110110111010---------------------110101010111011111001111011000000001111111001001111110101111100000111011001111100110100100011011011110011001010111100100000100011001001011111001000100001010000110010100010100011010101010110001110110011001001000111111010011000010110001000011011111110001010010111010101011010110001010011000011111000001110111010001100000110110010101100010110100001010011010010000011001100100010000110111111111100111110111000101100011010011011100111111100100100001000110100100101110110011111001111110110111000111011000101100101110010111010101011000110101010110101011011011101001011101011101000110000100111000011000000101000001110111011101111001000111100100000110100101010111010111111111111101110101100101011111101100111010010101110000101101111100011011100110101110011010101111111011110111001000101101010101111001100011111111010101100010000000010101111110100101100010111011001101100110111011000111101110011000111111011110010100010000011000100011010001101110110001111000000000100010101001011010101010010111001011011110000110100000111101110100000111111000111011001111101111101101111111110101111100110011011010001011101000011001111011110000110111100101011100010101101001111100110101001101111010001100111101101111000101101010110011011100100000000100000010110100001011010000011011000100111001101100001100111111000001001001011110001111110111111100100010000111100001110110000011001000010111011010010100111110001100101001101110111110001111111001110110100110100001000101101001101110101110111010111101000000110000110111000011110000010000100101100101101000111101101111011101101110000000100100111000111110110110001110101010011000010000100101011010101100101010001011101000001100100011000010001000110111110010011101110001111001111000000010001001110011110100011100001011000111101110110110011111101100100000000011000010010101111000101011111001110101111101100111010001101110110100000001100011010111110110000110110011111000000000001110101110100011001011011010001101000011101010000100101010110010011000100010000001101001111100000101010010100100001000010010110101010111100110110000010101010101010000010001100110000101110010010111010110000101100110001001001011011111111011111010000001001011001011011011011100010101110110011010011111110110001101000000011111010001111111101100001011010000111100110100100000110111011001000111011011000111001010110001000011110111000010110011111101000011011010011110111111110010010001100101001110000100000001110010100010010000011011100001111111010010010111010010111111110011110001110010001001000000101000111011000111100100001011110100100001010010101010001100001111100111001000010101001011001111110101011110000001111100000111100101011101011100001110110010111100000011001111011101110011011100010001100101111111111011010110011000111001101001000001010111001001111011010110000010011000111010100101111010100000100001111000111110011010010100111011000101010001111000010110101111001110010000010110000000010011101111010111010001010001001111111100110101000000001001010110011100000101001011010100101101100001101110011010111011010001001110111110100000011101001100111000100100011001000110000010010111100010101011110110011001100000000000110111111111011100001101101111010101000100000101111010011100010011000000001110111000101101001011111101101101010101101001010100010000110010110010110011111000010111011010011001001001010101011001010001011101010101110001011110010001111000100101110010010101100100100100000111111101001000000101111011111000100000101010110100101011110101110001000110101011110111010100011110010000111010100001011101011001000010110011111001011001110000101111100111101011000011101110100010000001001011000110101011011011101001010001111010100000001010000001001001010001010111011011010001101000111110111111100100100110100101001000101110111011101001110010010100010000000001001111011010111011000011011111100111001010001101100111111001100100100011010001111011001001111110001011000100001111011101101000001110011101111000001111010000000110100100100000100010010111010101101010011010110000110011110101101111101001100011001010000001000001001001110001000110100100010101010110010001100000000101000000001101110001010101010100000010011100010000101001011001011001111110100100011111101001101110011010011100000101111111000111100110100100010100100100000111101100010001110010100001111111100100110101100001100010000000101101001100101001111110010100000011111110000100101110010011111001110011111001101111010110111100001001010100001011001000010101110101011001 +ls192msgs +001011101001000110101110110111100100000001001111100101000011101001000110010001010111110011011100110111010010000111001001101010000100010010111111010011001000101111100011001011101010101101011001111011001100111011010101110110010011001100111111000000100101110001000001110011110010110000110110011101011111011110001010110001001100101000100001011100111110110111001101010010101110111111010110001111000010111001011011110000010011010110110000101011011000101100100110110000111110101111111110010011010000000000000110100011111110001100110101011011110000110000010011101111001110100111111000001000111111001110010001010001111010001110101001100000111000000011001110100101101000010111011110101111011000100100001010000101011100110010001111011100000100100110001110001111101011110000101010011011110011100100000001011101101001101010110011100100110011011101010101100101000110100110010010111111010101011101111111101000010011110111011011101001011110011010100101000001110000110011110000010010010001100011000001010010010100101000110110101000100101110100111000111101111101010001111110110101101111000011000001000111000100011110100100101100001011010001010111111101100110100011101101011101101001101100000010000111011000110101110001110001001011000111100010011000010110111010110001111110101001001101011100101001000010111001111100000001110110010100111010001010100001100101000010000101001010010101111101011111101101110001101110100100000010001100110101100011001011001101010100111011000001110101010010010001110100111101000101101100001000011100011110011101000011100101001110011111000110000010000101001001101000000111100111000001011110001101110010101111010101000110010001100000111111000000011111000101110010101010010010001100001011001000001111011101111101111100111111110001010011100000111110111011111101111111100111000101001100011000101101111100010000111010010000101011001001011100110111100111110001100100101101011100100011100000000111110000010100010010011010000100000010000101000001111100100001111010110111101100110000011010010101111101100100101111000011101101111011011011010100111110100101111100110000111101001101101110010111001111110011100111101010111000000100111001000101010111100101000110111010001111111010001010011100100100110110011101101010010000110111010000010001001100001011010110010100100010110001000001101100111001111001100001000010011001010011110011001011111100111010100100011101010011000100011010111110110111111011100111110011100100001100000011001001100000011010100000111000000000010000110100001000011001010010001001001111000110000010011110110101001000000101000100011110100000111010101001110100101110100000001111000100000001011000101010111010111001000001010100011100100101101110001000000000100000000111101100001011011011010110000111101001000110011110000011000011000011100001001110010011110011010111101011100100010000010101110111100010111011000111100000101101000111100101010010011110010111001100101101111100101001100010001010011011001111100010011010000000111100001100111010111000100100000100100011000000110000011001100110101000001010111100011110001010110100010100000000011011000011110100110100000001111110000110101110110010001111110111101101101101011000110010001011010100001011011111100001011001001100010010110010110101000100011111011110000110100001111011001111100100011000011010101001010110001101101110001000000010001111101000010010000111101000111000011010000110011111001001000101001000110101010100101001010000010010010001100110100000110011000000001101001010100100101010101100010011101111111000001101111100100010111001011111100111101010110011101000001001011011001110001111011001010001100010001000100001010011000010011101111110001110010001010111011110011010001110110011001110010111000010001001000011000000110010100011000010010101000000101110010001111011001010101100000100001110111010101100000000100000011000101001010000011111000001010101001110000100100010001010001010101010110010110110000001101100100110101101100011110100110111101111010110110110101111101001011110110000101001001011110110110110010110000000101001010001000000010111010001001100110011110010111111101100101011110111101111100000110111110000001010010101001100110110010000000101111111011101110110011011001101100100111000010110001111100011001100001010011011111001100110000--------------------- +011010110011010011011110001010110100000011110100101010111101110110010110010010000011100011001001101111011001100100001110101000011101000011111011001100011001000100011101011110001101011001011111001111110011100001000001100011010010000000010100001000100100000100110111000011010110110101001110101110010000001111111100001110000010011110011101100000000100001000110100000110000011001100111001101110111010101100010000111010001110011010011101000110001110010110110010110011110111010010001001100011111000011110110001011011100011000101000001101110111010101000101101000010100100010101001011110100010100011000011101010111101111000001101101111010010010100110100011111000111001101110010000010110101110010001100001000110111010111101001011010010100111010100100000101110000110001111000111011000111000001001100000111110111100101011110101110110111110101101000110000011100111000010010000010011100010001101110001000100110110000110010111000100100111111010110111100110110000100110111110100110101101000011000011001100011001101100101111000101111011101100011011110001001000010010011010100000110110010011010001111001111111010111011010001111010110110010001101110000110110011000111101101101011101100111011011011011010110001001100101110010011100101110110010101110011110101001011100100001100110000011001100100110110100111010001001110111000110010010110010010011000110111000011001010111010000111000100010011011111111100010110100001011111101011111101101010000110000110110000000001101101011000011101101010001101100001001100011001010011110011011100011011100001110001110001010010111110010001011110100011010001101100010011001101110000000001010001100110100101101000111001111110110011001110111100011100001001011000110000001110100101001000001101111100100010101010110010111110011000000100011001110001011001101010001001001100001100110110010011100001110011110000110001101110010100000010101000101111001001001110101101011010110100011111110101010111100111010011001010010010111001110101111011100011100010110110100110010010001011111111011011100101111100010000011010001000001001011100001011010101111011101111100110110110100111001101101010101100011100111110101100110011010001110010000010011010000001000000000001010100010000011101111101100000101001010001110001111011001110100011100001110101110101011101100110111110001110011101000111000000111111100101010100110001101010100000010001110000010010010110110110001101010010100111100101100101100100110110101001001100001111101010010001111010011101111111101110001111000001111111110010101000101110101100111101111101100101010111101110010101100001100100101100100101010101011111000110011110011011110111001011101101110101001101010111010001101101000010011101110100001000000011101110000011100100111111111001110110000110111110011101010010110010100101111111010101010110101000100101000111110100001111100100000111110101001000000100100001001001100110101001101011001010011000100111010110111010010011100110000101010000000010011011011000011101111100111001000000111101011001000000010101100000000100000001001011010111000010011100011100011010111011100001111111000001100001110000000100100100000000110001100000111100011101101011000011100101100100001101011011100111110100100110001010101011011100001011011110010010111110001101010000000111110001010001100101010011010000000101011000110011010111011111010101011110100101100100111010101100110110010001010010111001010110110100110011010000000001001110100010101101100110100001001101010000110001010000111011100111111001001011101001011110000001010000001100011011111111001100100110100001011101001111111000010100111000101000101111101011110011101000101001000101000010010001010000101111101111000010100110000001110101101010110011111011010001111101001001101101000100010001100100011101011001110110000000011010001011001101001010111010111110001111000101010001110111110010010000010111010001010000011110111100100111011101001101010101110011000111111110010100101000011000110111001100100001111010111011100000000010010110110100000100000000110011100011111010000001111000001110011101101100011110011001001000001010101010101100000000010011010011110100001001010001101011010000100100101111100011010000011111011011001110011000010111101111001010000110101010101010001010111011010011111000000000000000001011010100010011000111--------------------- +111111110000110010110101010011111001101011000001100010000111100101100111111111010001011101100001010111010000000100110111101000110101101001100011111101001111010000001011011010100000110101010001010100111011100010101000011110110010101100100000100001111011111001101001000110100001111011100111100111010100001000110011011101000010100000110001100000000101101110010011100111100001001110011111100101000111110011101011011001100101000000011011001010110000101011001001100010101010111100101001101100110101010100001010100111001011001111100011110000100110011110100001101000110000110001011010100100101011000010101001110100010001111011010000001100110100100100101111111011111101010110111011100001000101100101101000100111001101000001001101011011000011101101111111011101110110101101111010011000110111001010100011110101001100111001110010100100000001111000001110000010101010011000000110000100000100100100101010001101001100110101001011011011110000001011101101000111101110000100010010001000001101000000100010101111100110010011010111000010101001000011000111111011110011001000101100011100111000111000001100000100110110110000001011011010011000001100111110001110011101110110010111001111101000101011001001111011111100010011111010011000010111101100110101101101000000001101111001001111011101001001011111101000000001101101010110111011001100011010100000001111110001011011011100101010111111011111011111001100100001110010100100011110001111010001110100110011110001111011010001010101011011001100101001000001111000111010100101010110001110101100011101111111111110001011000010110100110111101001000011011111010111011111000000001011101110110010001011110110101010011011111000000010000010101011101111001110000010100011101011000100011000000011110110010011110101011011100011110000110100101100110001000000100010000111100101110010110100001101111100010100100000011110001001010000101111100010101111010101111011011111000001010011100101101011111100101001100100100010110110111101001110101001110011101001110010011100111101110111111101100110011000111001100010101100011011110111011101111001011001001000001110000101000101011111010110111100000110000001101101011011111010101100110100011111111100011101000001011001001100100101101111011000000110100111001000100011101000000101011010001111100011101010101010010100011110000111111001000000100010001011110001111011100100100010101000101111011010110001111111001011110010010101101011000101011110101110001000000110000011010100110010001101011101010111001100100011100011011100010111010000011101011001100110010011010011101110110101010010011101111101101000010011000001100110001100111101111001010110011010000110101110101110001100110111000111000110100111011101100001000001001101110010111011101110010011100100101010101010100100101111000110011010111010101010000000000011011001101111010000110001000011011110001100011000101000111010110110000011110110110001000110100101101011010101000100010010000101111111000011110010000001010000010000011011111001111101111101001011000110110000000100101100001111101110101010011000010110110101010110011101110011010001110011110101101111011111000101100000011000100000110010110100100000111010100000010010010110111101101111011010001000111110110010001011111001111001101001011110101001010010010110000101010110100111010110111101011010011110001111111010101010010010101011000000101011000001001110111101111101111001101001000000000011010001101010001100110011110011001110100110111000101000000011000100111100100100001001101001010001000000010100111111000011000101001111100101010101001000100001011011111010101110100000110010011011101110011000001110001100001110111000001000110100010001010111111111100010110111011101011101100000111111011011000010111111001000011111011100111101111011010000010100110100110001111111000001010001000011111100010000101011001101001000110010001001001011011011111111100011011010001101110100110111001110100111011110000100110001010111000010100110001001010100110101001011010110010010111010011111111010101000001111011001101010101100110111000001101110100101111010001110000111101110011001001001011100111100010111101001101110111101110001000001100101101000001111010100111011111001100001101100101101010101101110011101001110111010111001011111010001000110100101001000011011000101110111011010101000101100101--------------------- +000111100001111110010000101011101111001110000011111101111100001110000100000000011001010001001011111000000111000011100110001110110011110110011011111111111100111111110100110101011001011111111101010001100110001011011011010111100100000000110100011011101010101001000111010100011101100001011001100000101010011110001000100001001111100110000010110111001000101110010101110001110111100011010100000100011001111111111001010110001001001100010011001010101010111110001100101101010101011001011001011100110001000111101011110110111101000001000110000110111000111001101101011011101001101110000010001001011110001000011001010110010110000000110100001011001110101011011100001101011011000110010110000100111010101010011110011000100010110000110000001100001100101010011111110000001000101100110111111101001011100110111111111011100100101110110001000000011001100110111000010001101010110010101000011010111101101000111011010001111011011001110100100110000010100101001111000010001111100110001011010100101000101110001000111011110010100000110100100101010010100000011100101010000111010000101111001001110101001011000111011100000111000000100000100101000110100100010011111100000011101110011100101000000010010001101000000011011011011011001100100100100100010000000101110101111111101100001000111001010100111001110011100010101011011110010011001000111101101010010100110101011010001010001101010000110100001000111111011000000101000001011101100001101010000100100001001100110111001010100011000001100010100010010110100000010100011101010101001010100001111101110110001101001000101100010100011000000101111001111101111000101110000101111000100100001100000010101100110101000100110110101000110111010100011101100100111101101011011111001011010001101110010000011000100101100111010110001101110001111010010000101011110000000110111010100010010110000011110111010100111001001001010001010100101011110000010101001011000100110100011101101000001011010110011101001010101101101000000111100110010111001101111100011011000100101110111000110111011011100101100111001100000010010010011101011000111010100011101011100001010110100011110100110001000111110001011000111111100101110000110101000100101100000000010101001001011110110010111100011110100100100000011010101010000101000101011011110010110111110010010001111011100101010101111100111100101101110000111101111000010001111011111101100100111010000001101011100010101110001101011101111101000000110101011000100110001000101000110010110010110000100011011111100100100000001001001001000010110110110100111000111010101100011101110101011001000101101001110011101011110000100111101111011101010001110111001011101101100100100100110001111011000111101010100001101011100000010011111011101010101110011010010011001101011110010011101101000000111000100010101001101101011000111101001110101001110101011101100111001100011101111110000110000101000010010111011111111011100011011100100010011011010100100001110000100111011111100011100111011000100110001010010100011001110100011110101011111110101101001011011010001100110110001011100011110101110001011011001110101011000000100001011111010001110000111110111100101100011000100010001101011011100101101001010101110000001010100101001011010100000100110101011110011110001100111101011001000010110101011011100011111110110010000010011011110000111110011111000000110110111111111110110001100101111100011100100011101101111100110001010101100110000101100110101001010000010011001001010010011010111000001011010110010100010110000001111011111001000001011000011001001001100010100110001110110100111110111101100111010101110000011000000011011000010001010010000000011011001010111101111100111100010011011101111110001111011110111110111111010011011010100111011101001011011110101100100111111010111010001110110001100111010100100000001110111001001001001100000000111110000111101001000010001111000101110000010111100110100101011011101000011011101110100111100110101000010100011001100100111111100100110011100100001111111101101000010001101011011110110010101110000110101101000100101001110001110101001111010011101111000001100100010100110011100010011110011010011001001101100100111000101111110010000110010110000111000100110110010010010100100011111100000101110101010011100011001010000101100010111011101011011001000011110101110111011100010101001011100100000110010--------------------- +010010101001000000000111001110010000111110011000101001000001010010110011111100100000100001101011001100111101111011111110110100100110001011111001111100111110110110100010000011001010100111100011101011111100010000111100011100011010000110000101111111010110110001001101101111000011101100000000000010111011010111010011110011111110100100000111101110011001001101011101011010011110100000011110001011011011011110010001100100101110101100000111001011011010000110100101011000100101010101111100001110001011110011111010100110111100110011110001000101101111110100000110001110000111011100001000100110000111011011011100101100001000000001101111100001111111111110000110110111011001111011000100011001000001110010010010110101110000110010000110111101001000010010110100010110011011100001100100110100011111110010111111010111100001001111110111111110100111011010101001000010111110000001101101001100011100110011110001000111000100110101001011001100000010001100111000111110001101101111101011001111101011111011110001111101101100111011101001100010010111100100001110011111010111111000011011000111101110010001101000000100101100111000011011101010000110001110000000110111010101110010011000011110010101100101110101000011100010110110110100010001111010010100011111001011111111100101010101100100010000010110111000010001100100011111000011101010110011000110111011111111011111100000110011111000100100001000000100000001110110011011111000010000110110010000011011110010010101100100000100100110101001101011011100001010011101011111111010000011100010000001100100010100011111111001110111111001111011101001100001111110100000101110111011000011010110000010111001100100000111000100000000110011101111110001011101111011001101011000001001011100010011000110101111010110110100001100101001101010000111110010010110001001001100110111101101110101101101001100110001110000110011110010000101110111111001001110011110011011101010001110111010011110110101101010010101011100101111001110110010001010111001010001001110111111101110010110011111101001100111011010111010000011111110111110111101010110001110100101000000101001001010000001010010110010110101100111110111110011101011000010100000010011100000101000011011010001000100000101100001110011001100100010000000101110101001111100110011101000000100011011110000000001110001111010011110001011001011001011111001111011011001001000110110110000010100100010110010011010111101111000000101000010111110011001111001101001111110011111011010111101110100110011000010010110111011111111110111110110001000011111001000011110111111010000001010001000101110101101100001111000101101001101001000100001100001010001011110100010000110001001111001011110110111000111101101100001000100101100000010011100010001100100101101110011000101010001000100010010110010010100101100110101101010010110110010101010000001100000001010100000100010110001001001010011011011100011010100010011111001100110110110100001010001010000100111111100000111111010110001001111010101000011010100011111111111011100101100010000101001001110001111100010100100000000110010111011111010000010011110001001110001100110010001101000110100101111011110010111000011101011100111100001000110111111111101110110011100111000100010100111010000010111100111011010101110100000010101011100111011100010011111010011010010010101010100100000100101011010111011011001010001001100100111010100011111000011100101000010100011100001010010010001000100011011111010100100000101011000100101100000000111011100110000011111111110100000110110111011110110000100010000110101010011011100111001111011001101100010101011001101100000010001000110011101000001111111101110010000000010000101110110000100010000101010100010110100110110000000100110111101100001111001101101111000001110111000111110011001000011111010111100100010100010110001100010110110000110101010011011110010101010111101011011011001001000101100000000100011111010001111000101100111111111000000001001011001101110011011110000101000000111011011110110011000111001000010100011111101101100001011111111010000010111111100111011000111010000010011000100011011000100010001101010011111110110010010110110001010101000100011111010100011100101110000111111111000110000001111111101010001010101101001110100100011011001111010001101001000111011011011011011100111111100101101011111100101010101111100110011010--------------------- +001011101101000101101001111101010001001100101111001011000111100100101110011010101010110111110101101010011011110000100010100001100111110101000001110001000010010010011001111100101110001001101111110011100000001010011110001110001001100011001100001001101000011110110010111010010110110101000001001010000001110100000001011101011110110001000001101100110111001100110100111100011101100000000111000101010010110001011101110011101101101111010000111000011110100101011000110011001111010000110100001101011011101000010011011011100111101100111111011000110001111001111001001110001010101000011110000101000000110110001101100010101100100101111100101111010011110100111001111010100111110100110010010110000000011100100010000000110101011001100111010001110010000110111111100011111001110110101010001011101111010111111011110001000001011000000011100110001000000010100101111011000000011110010111001001101101101001010000110011101000100010010001100100000101001000111111000100010000010001110111001110101011010111101010100001001111101100101011110001101110110111010100010011001110011100101011011101110100100111000010101000100100010010000010111010001100000101001000001111101101100010111001010111100110101001100111101110000111011101110001011000000111000001100010111100010101001011000111111100110010111101001010111111010010100011011010000010111110100001001111100001000001100011111001001110110110110000010011101000110001111111101000101010001000010010001101111001001000000010001011100001010100111101010101000000011111000111011100111010000001110001111001101100001100011010000111010111011110101010100101010010010111110111001101101011011111110111000011110101010001011000101101101110110101001010001100101111010110011001000110000101000010011010010111001111001001111110101101000110110111000000010001010100101001001011100010001000111100010010111001010001100001111111100110110101011010111010101100001110000101100100000001011001100000100110111101100111000010110100011010010100000011000011100101100111111000100010010101101000111001010011100000011110100111010011111001100111001000100110000011111001100110110001101110010001101001001100011011101011000111011111000100110111000000001101111100010101000000100100001011011010101110100100100100000111001010101001110100011011100110111000111001011010100111101001001001010110101110111001111010000100001000110011001000000010000001010101010001010011111101100100010101110010010110010101110100110011100101010011100101110110110110011011011111110100011110101111000010011101000111101011010111011000101000000011010110111101111001110000100111101101111100001101110011111001011010000110010100111110000111111011000101010000010001001011110101101111010111110110111100000001101101100101010000111001101010110011011000110100011000010100011111010111110001110001101111101001111011011110111011111011100001101010001010100010110110000010011111100110110000110111000000001111001101101000110101001000010111100000011100110000100000000101110010101111111010001101111101111111011101011111001110100011110101100101000100111101001000101101000001011000000011100001110100101001100010010001000101111011101001111001011000010001011100010101010100100111101011000010001001110100010100101010001111101100010110001001001010000100110011101010100100001101011010000001011101101011010001000001110100111000001000001100110001110001011100001110000111101100101000110010001000000000110011011100011110101011010010100111101010011001000101110100010001000011101100000011011000101100110101011111111001000100011001000111011111100111000101010001111101000101010111101110101111010011001010011110011010001100110011000110001000100111101001101000101010010000010011000011101101101111011001111110111100000000001101001011101001101000000110111100011011001010001000101011111000010110100001010100010111101010101100001010110100010010101010101000000111111101110001110110101100101110001011100110011111000100110010101101010000101011101000100000101010111010011100110010000000001100110101010110100010111110001011001011111101101000110101110010111010100110000011100100111001111101001011000111011010001101000010111111101111011010101001100001001111001110001011001101010011110100111111100101111001110011000100000100100101000101111101111001000101101100101100000011100110100101001100110100001100010--------------------- +011010100101100111100000001100111000111111011110000111010111010101111110100011101111101110100111001011001110100000110001101001000101110000111101110110000010110001111110110010010100001111110011010011100110001111110111100010100000000001001011110010011110000000011101100001011101010011100010001010011001000100000111011001001000001011001001010001101101000111111001100100111111111111100111000000000000001101100001101010000010000000111010000010011010010011011011001011101010011110011101111001101001001110110100001001000111100001011100101100001001100111011110010000001100000001110001101100010101101111011110010000111001111000110111110100011010100101110110011111001001101010001000011100011011010100110000001010101000000110110111010000001000010011111110110010111010110011100100100010100010100011011001010101010100010010111001011011110111011111000111011011000010100000100011011011011110110110111000111010100101101000000101000111101010101010000010011010111100000100101110111100000110011001001110100100110011011100111010010111101001001001110000100111111101111100101001111011101110110101111011001110110111101101111010100100110011111100011001111111000110001100110011000101111010001000100111100100100101000100010011000111100110100110100010010111110110111010000100010001111010100101110010101000010001110000101001100101100011001001001001000011001101100110101000100100010001111011110100100000101101001100110010010010000000110011001110101001110101010101011111101110110101100011010010000100101111100100100111110001010111101001010111001010000011110100011000001011100001000001011001011101011100111000100000100100110101101011101111100010101001010000110011011110000001101001111111011111100110010000011111110100000010010110011000001011001111011110001000110001010000001001011010011111100110111111101011001100111010011101011100011100001010010100001110011110100110111010111111010100011110010111010000110111111101000000101001000010111001000110000110111111101111011111100100100100111101101011110000111000001001000110011001111011010100101010000100001011010011000101001000011001001000110000110110111101111000100011011010010011000000011010001010000100000101000100010101000000111111101101001000101000011110001100000101010001011011001110100010011111111111001010111101010110111011010111000111001011000000100100101111111001101001100001111110101010111100100001001000011010000111010110101010010011000110011110110010111101111011000011011001110101100000101010001001010000110100100011111111100011101011010011000001000001111111011000010100000010100111100011101011010011001100011110001100010011000110111001010111101110010000111010100010010001100010101100100000111001000101001010001101100101110110000111101010100110110011100111001001001111111011000110001011000110001000000110110011010011111111010010010000000111010010010101111001001011110111001001100010000100100011001001011101000001000000011111110001001111111010010111111110010101101001110110011100010101001111000101111100001001010000110000010010111010110100100001010101100010011010011101000001011011111001011011001000100011111001011111111111001111000000001011100011100010011010001000010100111001001110110101000001011010001010011011000000011001010111100001111100000011000001110100101011111111000111111000111001101100110100011010100000000010001010110100010100010010100101110001101000000101100111011011101101000001111100011010111011101110110000111000100001000101011100010001000100100000011001011000100001010010100111010111110101010111101100111101010010000101111011100011000111011101110101110011011000011011100100010101000000101011110001000100110000000001011110000110000111111000001001001000011010101110001010111011100001011101010000011110011011101010010101010000101000101010101001110100100001001110110101100110100100101101111000001000110111010000010010000010111010000101011110001000011111001011111110101100101101110111010001001011100011100011011000100000011000111110101011100011111000110001110100011000000111001000111001110010100100011000010101100101111010010110010000111100100010001010010110111110100000100010011101100100001011000110100011011111001001011001100010110001100101010011010000111101011000000100000110010111001110111010101011110001100101011011110101111110110010101001010101110111101000100--------------------- +110011011000100100001001001011111001010100001101111111001100001101010001100111111011100101100111101001011011101100111000010101110010101101100111000110001001111001011111101110110111011100000011100000100010001100110011111111100110100111101111100100001000100010110100010000100011110010100100011010110101111010111100000001001111111000101111110001001100101001110100100001100101110110100100111010101000100010011101110011000010110011001001100001011010010101000100011010001100000111011111010000101100110011010010000001000011111100110101011010100110111011111100011101101100111011100110000110001101110110011000110010110100110110011101010100100000100010110101110000000000000001000110011000100101001010000011110101010100110000101011111011011101001101010011111101000111000110011110110110000100010110110111011101010011110101010000011001100100010001101101011101101111000101101010101101011110110100011000011100100100001001001100001001100000001110111001000110101111110110111100111110001110001100001000111010010001011100001000101101110111111101010011100100111001010110111010010001001111000100010010110111110110011011100010010000111011101000110100000010111010111001111001001001101001011000101001101110101101100010111011010101010111101011111100011111111111010011011011111101100111010000100010101001110111110110010100111000001110110100000000111110100010100110111101101000101001001010001000010100101100011111010111100111110101101100001011001101001010110010110011011011001100000001110001101010000001110011010001100111000010110110011011000111011011011011101110111110010111000101111111101001100011000100101001000000111001110100100111100110000000101111010011101100001001011101101110000001001101101001010111101000011110100101100011001110011110101011110100111010100100010110110001100101010000000001011011010001000000111111111000110000111011001010011000010011111000110011010011110011110000100100000101100101010011001100001001101101011011000111001111111100001000111111000111111001111000011001011101010110111100000000111110110111101101110000011110111101100100110111101001101011110000010110000110100010101011011111101000010011100010100001110001000101100111100001111011011110111011000111011001000010101001011100001000011110111111110110001011111000011001100010111111111000111011110100110101101100101010111000010010100100100110001111010010110000101101001110001010111111110011000011001110111101101010101110101111110111110110010010101110101001111010110101001001010000111100010111001101101111101010111000110100110001110100001110011110001101010100011100111000000010010010101001010101000001110111100010011110011100011000111111001000000110111100000001100101010110100111110000100111110101110011000011001110101010101000010100010001111100011000110011010100110110011111011101110000010010011000000101001010001111101011100110111000001100010100001010011000011010100110010110010001010100100011110101111110110000111011100101001101100010110110000011000100001000001000011011110111001110010010111011110000110110101011110111110101010100111010111101111110000001010100111011100100101010101001001111010100101100101111100100001111111101101100011100001101000110011111011001001011011100111101101000010001010111000010000100111011001100100111111000110110111110101110001001110101111100010011011110010101101010100000100000101100001010001110100100010111010100100100000011110111111011000010101000100011011111100010011101110001011101011100101001110001000011000001010101011100101100000001011100001110001010011111001001111000110111111110011001001011110101100000101111100110100100101001111111110010101110100100101011001010110101000111000101000101011000001000101101111100111011011000010111010011111101101111011111010000011111110001111010111100101100001100011111010100100001010101100111010111001000100010000101110000100000001101010101111000000111000111010011010111001001001111011011011111110101000010111001001101111111011111100110001111100110100011101000100110111010000010111010101001010101111100000001100100100000101100011110100011011100100111101101011000110001000100100111011010100000100101101101001011100011111011111000101001001110110000111011110001010010101101001000100100101100011101010001111001101100011011111001100100110110111011001000010011000111001100110001010000001--------------------- +001101011011111011011101010001010100101110010111001011101011110111111010000101101000100110110010111011001100101101100001111100111100101011111100001001000101100000111001010101001100100000111010101011110001011010010010101101011011010001111100011101010101101000110100100000001001111110111011001000000111100010100100111100110110000010001010101010110001011011111110101001010110000001000000010011001000010010000001011101001101111010011110000110101100110000000101001101100000011100010010001000010000111101111000000100010110001010011110101001010100101011001010000000001111100011101110111111110101111000001001110100101101001110010111111000011110101110111011100110001111001001100011001001011111010010000001001111011010100110100011110101111111001101001100011010011000101001111101000001111111011110010010111001100011100101110010110010001111000000111000001100110001110100110010110110100011100011011111000010100001100111101101011001100100101001101101101010010011111110001100110000011100000111000010101101110010010101111010011110111010111011110100001001110010111110101100010000000101111001010110000001010100010100011010000101111100000100101101100110010100101111000000101000011001111110001011010011100000001001011010111100111011011000001110111111110000100111001100011111000101101100111101110101110001000000110011111111011101011101111000100100010110010010011101100101011110101111100011000101110101111001110110101110001110110110110111010110000111101001111100010010001001111101000001010111000010010101101010001000101110010001000001100000001000100110100011011111000001001001011011001001010111111100011100111110110110001111110111001111010110100000001010101010111000101001001111111001011000110100011101111000010110110100100011010000001111010100110100001101000000101101110001010100100101111011101100111010011011110010100110001011001001000011010010011000010011000101111100101110100110001100010001010000110011100000111110000100000011011111010100100101010100011110011110111001110110010001011110100010010000100000011011101100010110011011011000110010011110011111111100000010101011010111010000001011010000010100100010010011100010010111010001101101110101001010111111001111010110111100010111100100011000111110001000011011000110101011001101101110110000101101110110100000001011100111111000101110110010110000011010000100101001110000000110110011101100110000100001001101011111011101101000011001111011111110010100110001011100111111100000011111001111011000110010111111110010101100000011100101101001010110101100110110001110001101100111000011000100011110100110001010011011000011100100011011110110111110011101111011010010110110111011111011010011111010101101001010001011011110110001110100000101011101010001111110101101100110100110110001011001110101010100011111001000100110010011000101111111111001011000100110110100100000101101100100101000110001001110100011100000011010001111111011111100110101010101110100101011101010110100111000011011101010110110101011110101000011100011000101110001101100001111011110110111001001100000110100110111100110111100001101001101101110111110101110010001001001101000011000101011010001110100001001101011000101000101111010010110010101111110101000010000101100010000000010110010111010001011110000011000000000100001010111100101110001110001000111000110000100110001101011000101100101011000000001010010101011100011101011010011111100110111101011101101100001101011011110110101011010100010101000011110101000000000011000101100011101001101001010100001111101001110001101101101100011000100110011111111010010010011110110001101100100010000000101100001011001110111110111111110010101011111100000100101110011101110011110001010100110111111111101110011111000100010000001011010110000101001100000101000110111110111101110101010011000100111000001000000011000011000100010010101101000111111011110110011111001110110011100000001011001010011011110011101110000011111000001010100000101011010011101010100101100011111010011000110101100011000011110000010100111010001111110001111110100111100111010100101001100000011100110010000111010000101111110110100000001010111000101010101010011110100011100000111010001001110110110111011011100001100110110100000011000100110101000111100100100101010011010011001010111001001100000010110000000100100101111010110011100111011011--------------------- +011010010011011001000101100111000001000110101000100110110011110011001001001000100101101110110010001110101110110100110100000110101011011100100000011100010111001101010110111111000011101011010001110000101001000001000011100100111100001110001110001100101100011111110010010011101110001010100010001011100000010001101010101110100101111111101100100100010011110010001011111001101001111000010000010110001100011000000111101101001101010101101111011011011001110010100110101011111011011100100011111011111011000101110100000111000101010111100001100100011110011010010001000010111110100000100011100011001011100010101101011111101100011001001001010101001001110111111110000100111001011100000010010001001000010100001101101100001001010111000110000101000111111010101011111111101100001110001101011101001101110100101100010100000111011110001100111000000111010100001000011100001011011100010001100100110010010001000100110000001010000111111100111101001110000100101011001010011010010011010000001111010101111110001100100011010101001010010000011001010100000111110000101100001101001111101000110101100011101100111111111011111101101101101100101100011101011001100111010011000100011110011001010101101101000001101000011000111011010011010010110100101011011001111100000000100100010101000000011111010010011101100000000000111001001110000100111110001001000000100010010010100100000000101110010011011101000111011110011010110100110110010101010100000000001010101011101100111010100010110000100110010100101011111110100101110110010010111001100100010010110001010000010010101011110010000110100111011011100110001110110010110110010101110110110000111000111011100011000100101110101000101111001011000101011000010101110100010100110000001011010100110111101000010101000100000111011110111110011100110011011100010011001011100100100001010111100010111100001100001000000010010110001100000110101011011000000101100101001000111010100110010000010001110111010010000100000101010110010101001101010011111100011010110011011000000011111101101110111101010100000111100111111101101110110101011000001100010110011011110001000101000010011110001101100001111100010010110011110111111101110100011000011110100010011110001001101010110011100010111011110111101010110010001100000000010111110000110010100011101110110011110010111000000001001100011010011010000110001001100011110000000100011110001110100000010100010101101111100001000001010110100001001010101100100011000011010011011101111010000101010110000010000101001110101110110010010000001000001011110111010000010100001101111111100000110010100110010011001011101000100011100111010010000011111011111011010011011001100101111011001101010011100000010001000001101110101111110101100101101011110101010000001011110100100101100011001101101100111010101110110100111000000000110111100110110101001010100100111000000001011111110111011111001101111110111001000001001110011100000011111010100101010011111011110000110001111000000000010110101100100110110101100101111101000001001101111101100110010010000110010010001000011100101011111110110001100001001000111110000001101110011100100001000000110100011010101000100100100111100011001111000100111001000111000001111110001010000111011111101011111010010100100001111100000001001000001000000111110001100110111111011010001111111011011010101011111100100000101000110100000000001000111111111010000110000001010111001001010001110110010110011010000100001001110101000000011011011011110011100100010010010110011101101111010000101101100111110000110100101011110011000010000011110100110001010101100111110001011111111011000110010111101001000011101011000101010110000111001110010100000110010010010001010110000010101111001100010110011100000111110110101101011100000110011011101010010001010011001011010111000100001000001011110110110010110010000101111000110101111001011100100010101101001001011001000110111110000001111111001001001010110010001101001101100011100101110001011111001011000101101101010011001111010101010100111101110100111111010111100010010110111000010010100011001100010011011001000111010100001010100111011101111111010100000110111011010111011000101001101001100100111100011111100111110101000100010100101101110010110100111110000101111111001000100110100111010101101000000101010011100111101100111101101011001010101010011011010000100000000100100--------------------- +ls192cwds +001111000010111001011011110000010011010110110000101011011000101100100110110000111110101111111110010011010000000000000110100011111110001100110101011011110000110000010011101111001110100111111000001000111111001110010001010001111010001110101001100000111000000011001110100101101000010111011110101111011000100100001010000101011100110010001111011100000100100110001110001111101011110000101010011011110011100100000001011101101001101010110011100100110011011101010101100101000110100110010010111111010101011101111111101000010011110111011011101001011110011010100101000001110000110011110000010010010001100011000001010010010100101000110110101000100101110100111000111101111101010001111110110101101111000011000001000111000100011110100100101100001011010001010111111101100110100011101101011101101001101100000010000111011000110101110001110001001011000111100010011000010110111010110001111110101001001101011100101001000010111001111100000001110110010100111010001010100001100101000010000101001010010101111101011111101101110001101110100100000010001100110101100011001011001101010100111011000001110101010010010001110100111101000101101100001000011100011110011101000011100101001110011111000110000010000101001001101000000111100111000001011110001101110010101111010101000110010001100000111111000000011111000101110010101010010010001100001011001000001111011101111101111100111111110001010011100000111110111011111101111111100111000101001100011000101101111100010000111010010000101011001001011100110111100111110001100100101101011100100011100000000111110000010100010010011010000100000010000101000001111100100001111010110111101100110000011010010101111101100100101111000011101101111011011011010100111110100101111100110000111101001101101110010111001111110011100111101010111000000100111001000101010111100101000110111010001111111010001010011100100100110110011101101010010000110111010000010001001100001011010110010100100010110001000001101100111001111001100001000010011001010011110011001011111100111010100100011101010011000100011010111110110111111011100111110011100100001100000011001001100000011010100000111000000000010000110100001000011001010010001001001111000110000010011110110101001000000101000100011110100000111010101001110100101110100000001111000100000001011000101010111010111001000001010100011100100101101110001000000000100000000111101100001011011011010110000111101001000110011110000011000011000011100001001110010011110011010111101011100100010000010101110111100010111011000111100000101101000111100101010010011110010111001100101101111100101001100010001010011011001111100010011010000000111100001100111010111000100100000100100011000000110000011001100110101000001010111100011110001010110100010100000000011011000011110100110100000001111110000110101110110010001111110111101101101101011000110010001011010100001011011111100001011001001100010010110010110101000100011111011110000110100001111011001111100100011000011010101001010110001101101110001000000010001111101000010010000111101000111000011010000110011111001001000101001000110101010100101001010000010010010001100110100000110011000000001101001010100100101010101100010011101111111000001101111100100010111001011111100111101010110011101000001001011011001110001111011001010001100010001000100001010011000010011101111110001110010001010111011110011010001110110011001110010111000010001001000011000000110010100011000010010101000000101110010001111011001010101100000100001110111010101100000000100000011000101001010000011111000001010101001110000100100010001010001010101010110010110110000001101100100110101101100011110100110111101111010110110110101111101001011110110000101001001011110110110110010110000000101001010001000000010111010001001100110011110010111111101100101011110111101111100000110111110000001010010101001100110110010000000101111111011101110110011011001101100100111000010110001111100011001100001010011011111001100110000---------------------100110010000110101100101101111111100111000111011000011110101100010100001110111110100111010111110001111000101111100011101001010011100101110110100101101010011110110110000101011101110111010010000101110111001001001010001011010101010000110001010010011110011111101101011101101100001100000011011101101010001010011110100011001110110111111100101010000000011011000000101100100101001000001011101001010000011001111101111101001111111101100001001000010000000010110100010000110101100000001001101000100011001011001101101001100101110010001111000001001011111111000000010011010001100111011011101001010010100000010100011101111111010010000111111010100000100101101001010100001110100100010111110100101011111001111011011100110011101001100010111011010010010110100001101010000111001000000010100000011100001010100100111111010000101000110010011111101010000100101010001011001011101110111100001011111111000110100011010100101010000111101010100100010011111110001100001001000110010110100010110010111100010000100111000101010010101011110110101100101001001100100001110000001110011110100101111011000001100001100001111011101101100011000010110100001010100111010100011011001101100111011011111010100011011101000011010001110101000100011011010100000000101000001110100010011011010011000111100000111101000100110110111011011011110000010000001010111100101000011110010011111001000011101000101000100101001001010110010111101010011110000110110100111111101110100000001000000110110011110100001110111101000101100100011011010000001100101001011001000010001001010110101011000001010111111101001111010000101111000010100001100001100000000101011110111100011001101011010011011001110111011100110101100111000010000111111000010111001010110100001000101110101100010110000010100011010011011101001000010000010010000011111001011111000000001101000111111011101000110100101000001011000011101101111101011001011100011010000101111110001111111111110101000101001001010010010000000100111011101001110000011101011101011111000111000111101100001011100110000100000100111000110001110110101100110010000111101100011000010111011111100001110010111100111010000000110100011111111111000100010100111110111111000011101110110100011001100011001100000110100010101111110000100011100101000011110100100111100110100100110000001010001010110101010110001101011110110001000000010000000110111110110010101001011001111010100101100110001100101110001100101110111001111111100011100010011001100101101011000010110111100101111110000111110100001111001010110001011110101100010101101111100111011000111010010110110111011011010110110000101110011010010010110000100000010001000100001111010100111100101010110111101000010100010010101010011001001011011111100010001111000011101010000110001010001111101000111100101111101101111000001011100101101100101100011001000010011000011111001000011101100100100110011011010111000111010000111010101101000001100101000000100111001000010010010111111111101100000110101010111111011011101001111100000010001111110111010101111110100010101101100110110010111010001010010000000111100011000101010000000001110010100001101011111011110111010000000100001100111110100101101111101011010101100001001101011011111000111100001001111110110011110010000110000000000100111100100011011111100101011100000110010100101110100101100110010011011110011101100011011001001110001100101111000110000010110000000001001101110000100111000101011101100000010110001100110000011011101110010010111101101101101100110001011100011010111010010000101101001101000101011001000110011101100101110000011000110100110111011110110000110011001001001110011011100000000001011111111001011001100110111010000111101011101001101011010111000001001001010100010000111101001011110111111011010101010010100011111101101101000101000100001001100101100001110011110101011101010100101100111001110111000001011000000011001111100101011100110100000110100101000001111011001001011110011011101101111110110111111001010011110110010100010010011101101101111110001101011001000010011110010111011101000000010111001101101011111001111111000000010101100111100111110001001011100111001101111001111011000000101000101100000000011111111001111001110010110011111011000101111011110111111011111110100011101101001100011001000011001000101110000110011111011001111011010000011111110000010101011111011011000000101100010000111110001001110101000001101010001111110111001010101011111011110111010001101110001110111010001010010001111000000100001110010010100010011100011100111011100000000111111101001000100011110100010111100101010111010100011001011001011101110010100111010000110000111001110101111100001011000000111001000001001110110111001101011001100011000001101010001010001001110110011110110100010111010010010000110110011001000111010110001000011110110100110101111101001101011010010111111001111000010011101001011100001111111000111111111000001110010100110111101011100010010000100010010110010000100100000101111001011010011110110111111001101110100010001000000000101001101001000011010101110110010000010101000100111000100100111100000001110010111010000101110101110000101111001100110111111011111000000110010001110010000101010011011101000001110010101001100000000000011001100011001011110110011011011111110101101001001101000011100100000001111111100001010101011010010101111011100010001110000111000111010000101110101010010111101111101111010101101111101000011011111011101100000010000101110110111110001101100011000001111111101010100111010110110010101011011100100110110001010001010011110100001100010000001101100011110011101001111000101100100001011101010100001010011010101001111101010010111010110001011010111000000010110001010100100000101010110101100001110001101001111001000111101111000000101011100101010000010000111110001001110111110101101001100100000000000001011000110101011011111011011010010101011110110110010010001010101110101001010111111111101000010000110110110010111011011111000010110001000011101010000100010101011101010111011111000011100111101111111001111011001100001001101101110011001101101011010000100111001010011100000101011111011001100100001000101111100100110100000001011011110110011101001010000101101011100000010010101111011101110000011000111010100111000011100001000001011001011010101000111010011110100001010001010101001100000100111001010111111110011110000110111001001000010001101011010101001001111111011010011010001101111110010111001001001111111100010000011001001001101100011101111010110111100010101101011001001010100000101001111001000011011110101000000100001000001101010011010101101111000100011001101011111111011010001111000100001010011011000110001001110111101001111011111111100011110011101100101111110101100010101101011010110001000011010110110001110000110110001100001000000010100110111110101010010100111001101100010100100110111111100011101011100010001010010100011100101001100100111011010110110001111110101111111100000111100000011001000000101101000111001110001110001100111101010010000101010111101000100011010100000001001101101001010011101111010010111000011100110001111100001001010100111001100010110000011000111011001000000110000011010101111110000011110001000101100110110000011010010100101101110000110110111000001011101011110011101001000000111011010110011011001010010010001100010001111011100101000000111000001101111010010011010110110100111101111100001101101111000111000011010001011110111000110000110011100111010001110101000001110110001010101010111011111000001001111111010110100101110001111111111001001110110101010001110111101000111100010100110111010010001011111101011111100001111100110101001001011111101111001001011001110010111010110010100000110011010001100111000011001001011100000111000101001100001100110101111010101000010011010101111011011100101011110100111001111000110011101101011011011001010101110010000010111111001111011111001000001010110000001010111111000010001010001011100011101111111001000000101010110001011111010101000001110001111100000001011110010100111001010000010001111000101110100101010110011111111011100101000110010101001101110010010000101100010100000000001111100010111010111110100010111000000010000011100100000000101010010101011010000011011010111001111111001100011101001110111011100111111010001001110000111000111101110001010010010010111101101010000110011001000010011001110000100001011111100100110101101010010011110000011100101111000100100001011101111000010010010011100010100101111011111100011100100000100100001101111000001001110001001010110111000110011101010110100000101100110101011010000010100110101111110011111110111010101011111000100111100101101011010000000001010110101010110000001100101010100101110100110110111010010101010111000111101110101010101001111101100110011100011001100000001011111010011101100001000001011011001000100000000111001011100001100000010111011000010000000001111000111011100110100000011000100001110111001110110011011010111001110011110111100111111100101010010111010011100101110110100000001001110101001100101111010011000111100000001001101100101010100101111000100100000101100111011110011101101011010010111110101 +101110111010101100010000111010001110011010011101000110001110010110110010110011110111010010001001100011111000011110110001011011100011000101000001101110111010101000101101000010100100010101001011110100010100011000011101010111101111000001101101111010010010100110100011111000111001101110010000010110101110010001100001000110111010111101001011010010100111010100100000101110000110001111000111011000111000001001100000111110111100101011110101110110111110101101000110000011100111000010010000010011100010001101110001000100110110000110010111000100100111111010110111100110110000100110111110100110101101000011000011001100011001101100101111000101111011101100011011110001001000010010011010100000110110010011010001111001111111010111011010001111010110110010001101110000110110011000111101101101011101100111011011011011010110001001100101110010011100101110110010101110011110101001011100100001100110000011001100100110110100111010001001110111000110010010110010010011000110111000011001010111010000111000100010011011111111100010110100001011111101011111101101010000110000110110000000001101101011000011101101010001101100001001100011001010011110011011100011011100001110001110001010010111110010001011110100011010001101100010011001101110000000001010001100110100101101000111001111110110011001110111100011100001001011000110000001110100101001000001101111100100010101010110010111110011000000100011001110001011001101010001001001100001100110110010011100001110011110000110001101110010100000010101000101111001001001110101101011010110100011111110101010111100111010011001010010010111001110101111011100011100010110110100110010010001011111111011011100101111100010000011010001000001001011100001011010101111011101111100110110110100111001101101010101100011100111110101100110011010001110010000010011010000001000000000001010100010000011101111101100000101001010001110001111011001110100011100001110101110101011101100110111110001110011101000111000000111111100101010100110001101010100000010001110000010010010110110110001101010010100111100101100101100100110110101001001100001111101010010001111010011101111111101110001111000001111111110010101000101110101100111101111101100101010111101110010101100001100100101100100101010101011111000110011110011011110111001011101101110101001101010111010001101101000010011101110100001000000011101110000011100100111111111001110110000110111110011101010010110010100101111111010101010110101000100101000111110100001111100100000111110101001000000100100001001001100110101001101011001010011000100111010110111010010011100110000101010000000010011011011000011101111100111001000000111101011001000000010101100000000100000001001011010111000010011100011100011010111011100001111111000001100001110000000100100100000000110001100000111100011101101011000011100101100100001101011011100111110100100110001010101011011100001011011110010010111110001101010000000111110001010001100101010011010000000101011000110011010111011111010101011110100101100100111010101100110110010001010010111001010110110100110011010000000001001110100010101101100110100001001101010000110001010000111011100111111001001011101001011110000001010000001100011011111111001100100110100001011101001111111000010100111000101000101111101011110011101000101001000101000010010001010000101111101111000010100110000001110101101010110011111011010001111101001001101101000100010001100100011101011001110110000000011010001011001101001010111010111110001111000101010001110111110010010000010111010001010000011110111100100111011101001101010101110011000111111110010100101000011000110111001100100001111010111011100000000010010110110100000100000000110011100011111010000001111000001110011101101100011110011001001000001010101010101100000000010011010011110100001001010001101011010000100100101111100011010000011111011011001110011000010111101111001010000110101010101010001010111011010011111000000000000000001011010100010011000111---------------------010101111000100010100010001110000001110101101010011001001101001011011101101011010101000101010100111001111111101011110000101110000111001011110111000000001001010001111001010010010110101000110000111011100011000000010000110011010000100001100000111010000001000101001101110101110110111011100001010001100010001101010001000010100010001100011100111011101010000001011110001001001101000001011100010001100001101010101110111110110001101100100000001111110010000100000010111000010010110101000001110011001001010011101010010011111011111000100000000110110000000101111100001001101000000111011000010111111000000001011011111110001101000000110101001111000101101111111101010101000001001111011110010101011001110111001100010010011111110011001100101000001010111001011111011111100001010111010011110101000011111011110110110111111011110011000001111101000011011100000101110001000101010110100010111000110110101011111001000110110000010010001000011010000110100110011000101011001001111000001001000100011000011001101111011110111000010001111111101110001011101011110111101000111011100001110101111100000001101110010110111111101001101010101000100010100101011010001001110110111001110111100111100010010100110001001101010100111110110011110101011110000011110100011100011010010010001101001110001101010000111011010010101110100111110101111111100100010001000111110000100000110011011110001101100000011011111000011011101111001110001011011100000111100010110110011001011001010111000111011100010100111010000000010001001100001010001101011111100100000110010011101111001010111111010001100100001100101000101100100110101101011100000111100001100101010101100100010110010000011011101111110010101011100001111011001101110010011011110110100111101111011000110100001111001110101101100111000011101001010001100001110110101110010000011011110111000011011010000100011111010010001011000110011111111001001000100110001011110111110000111000100110110011011010101111101000001100010001010101010001000011010010100101010000000111011110100011101100010101111001111001010101111111010110011010000111010110001100110101011000110011011000000001001100100100001011011010000001010011000001111010110100010100100110011000111010110100101011100001010010010000101011100101000010100110000110110101001010011011011101011110010100010110011111111000010101010111001110111011100100101110101011010111111101000010110101000110100001110111100101110110110101000010111010111100001111010001101010010101101101011110010100111011111110011111100111010010010111010001111110111011111011101101001010011101100011110001110001110100101011011011001011100010101100100001111111110001110100100100011101000000101101001011101001100001110011110111011000010110011111010010010110011001100001010011001011110001010101100011000101001111010111000000111111001001010111001100000100101100111110000101001101000011000011100110010010011010111111011011011100011001101011000010100001101111010010001101000100011111011100110000010111110100001111001011000010000100111100011000101110000101110001011000110001101100001110011010001001001011001001010001000000111111101111000111111111101100111000110111111101000000000000000010011000000111010110100110110000110110110000010100000010111101110110010000011101101000100101000100110000001010101011111100000111010110011001000101000111100100011110001101110101100000101011010011011010010010001001000000110110010011101001111010101111011000110110110001011000000000011010010011010011111111001011010000110101000110111010100011000000010110010010100110000010111010101101111000101011001010010010100101010001000000111010101111011101011111011100001011011011010010110011000000100111100011001011100101000010010100111011001110110101101100010011010101011111100001111100110010010001010011110101111100001000111110110010111000000100101001100011101011111100100110011110110110100001100001110101110100110100100101100100010001110011100001011100110010101110101101111010001101000100010111111110010100111101011011111010111000100011110011001010100010111101000110000000000000101011101110111000101011100010011110000100000100001000011011001110001000000110101110100001001010111100110010101001111010010000101111111111010111001100110111100100011001111000101011110111100100000101100110001011111001000001001011101011010111001110010010111110111000101111010000011100110010001000001100111101011010100101100001101101010101100010001001010100011011011101000111011101011001110101010000010100101000111101000000110001000111111001101010011110100011001111110101111011110000000111101100100111000010010011011111101101001010100111011110001000000100011110100101010101011110110001000110100010000010100000001011010111101101001001001110010011100100110001110100110001000100101000100101001110000010101000101101100101010101011110110000110101000011000111110101110101100111101100111010001111000110110010010110001000011001100110010110001111011010110001001111110111101100011111110111010110001000000101110100001011100101111001100010001111010110111011010011011111110000110001011000101000001001001011000010010001100001110101010010011001010100111100101101100101001001011110011010111100101100110000101101001011100010001101101001111111001100000111011100011010010011100111100100001100110110010010110110111001011011010101111010010010110000111011001001000010000110000011101000011011000101110011100111111101111111000010011111100100111110001010111010100011000110011101001001001111100101101011011101100110011100001100101110000011000010110100110101111001011111111100011010111101110111110010000011100101011100001011100011011101111111000111100100001110000110000100100101001000111111111101111100010001100111011010111101100001000011001101110010110110011111110100000010111011011101111111100010011011010001010010011010010011100101000111100000111100101001111011101111111111111001010001011010001000000000100001011010010110000011011010101111001111000100110001100001100010100001101011010100001101010101100011000101111100011010011101100000100101010010111100000111111001010111101010100110011000100000000110101101100111010001110011100110110011001011000010001011001111000110000101100001011000101010110000110110110110100010001100100100011010111010101011111010010100010101001111001110010001010011110111101000010000011001001111110011101010100100101000110110101110101101101111011110100010010100100110001111010001010101001101000001000100010010001011010000111101000110110100000101101001011100010111100110001111010101011110011111001011000000001100011101110101110001101111010111110100101011000100101011100011101001101111001100110111111010001110001101000110010010000100001111010010110110011100100010111010011010000111111110100000000110000100101001111100111111110111100010001100000001011000010100000001001100110100110110111111100001100101000000001111111101110001010000010011100110101101010000100101000010110101001101001011101010011110100010110010110111110101111000010000101011010010001010111100010001010001010001111100111111100000101100000111011110000001110101101100010011011111010100100010100000000111011110110110101000101110011111001100000101111001110011101010110110101101001101001110000001110100011001110001110000110101110101101001110100011110100101000010001010100110110000000101101010010010000110000000100111001000111000100101101011011110001001011111111001100110111100100010111100101111011011001010011111110011010110101110010111011000001001111000111011110010101101011001101110101101100011001100011110010100100000101000101111000010011101111110110010100110100101001110100010001010011111101101001110100000100011000010100011010010110111101001000000101001111001010100111101001011010111001010100100111100000011101101110100101011111100101110001111001111010011010000010011111010001110100010011001001110010000011110000111100100001000101100010101000111011000010101110111011000011110000000110100000111101000110010101110000000011100010010101101101000001111100111111111011111000010010101011110100011001000000110100111011101100011011100001100101001010000001000110000001100111010101110001100101111101100101010101111110100001101001111001001110011101111001100110010111010010011100110101111100010111111110110000101101110000001101111000110011100101100110110011000110101001101101000011010010001000111010011101101111001000111010011011011111100011100110111101010001001011001001000010111101110101011011001111000001001011011010100000110110111000111010010111001001000100101101001100001101111000001111110001101010011001011101000001001101011011100111111010111011001010101011000110000101111110001001001000100101110010111010000101101011000110100011100111011111111011001110100111010010110011100011101010010001001011101010111110110101101100101011011111101010111001111100101101001111011001110101110001110111000111001111010111001000101010011011000001110011100101001010000101011000110111011011110000011101110110111010000010010011111101111100001111001000000100001110101000111100011100110011000001111011010010011101011110000011000001000101100001001001110001101011101 +100101000111110011101011011001100101000000011011001010110000101011001001100010101010111100101001101100110101010100001010100111001011001111100011110000100110011110100001101000110000110001011010100100101011000010101001110100010001111011010000001100110100100100101111111011111101010110111011100001000101100101101000100111001101000001001101011011000011101101111111011101110110101101111010011000110111001010100011110101001100111001110010100100000001111000001110000010101010011000000110000100000100100100101010001101001100110101001011011011110000001011101101000111101110000100010010001000001101000000100010101111100110010011010111000010101001000011000111111011110011001000101100011100111000111000001100000100110110110000001011011010011000001100111110001110011101110110010111001111101000101011001001111011111100010011111010011000010111101100110101101101000000001101111001001111011101001001011111101000000001101101010110111011001100011010100000001111110001011011011100101010111111011111011111001100100001110010100100011110001111010001110100110011110001111011010001010101011011001100101001000001111000111010100101010110001110101100011101111111111110001011000010110100110111101001000011011111010111011111000000001011101110110010001011110110101010011011111000000010000010101011101111001110000010100011101011000100011000000011110110010011110101011011100011110000110100101100110001000000100010000111100101110010110100001101111100010100100000011110001001010000101111100010101111010101111011011111000001010011100101101011111100101001100100100010110110111101001110101001110011101001110010011100111101110111111101100110011000111001100010101100011011110111011101111001011001001000001110000101000101011111010110111100000110000001101101011011111010101100110100011111111100011101000001011001001100100101101111011000000110100111001000100011101000000101011010001111100011101010101010010100011110000111111001000000100010001011110001111011100100100010101000101111011010110001111111001011110010010101101011000101011110101110001000000110000011010100110010001101011101010111001100100011100011011100010111010000011101011001100110010011010011101110110101010010011101111101101000010011000001100110001100111101111001010110011010000110101110101110001100110111000111000110100111011101100001000001001101110010111011101110010011100100101010101010100100101111000110011010111010101010000000000011011001101111010000110001000011011110001100011000101000111010110110000011110110110001000110100101101011010101000100010010000101111111000011110010000001010000010000011011111001111101111101001011000110110000000100101100001111101110101010011000010110110101010110011101110011010001110011110101101111011111000101100000011000100000110010110100100000111010100000010010010110111101101111011010001000111110110010001011111001111001101001011110101001010010010110000101010110100111010110111101011010011110001111111010101010010010101011000000101011000001001110111101111101111001101001000000000011010001101010001100110011110011001110100110111000101000000011000100111100100100001001101001010001000000010100111111000011000101001111100101010101001000100001011011111010101110100000110010011011101110011000001110001100001110111000001000110100010001010111111111100010110111011101011101100000111111011011000010111111001000011111011100111101111011010000010100110100110001111111000001010001000011111100010000101011001101001000110010001001001011011011111111100011011010001101110100110111001110100111011110000100110001010111000010100110001001010100110101001011010110010010111010011111111010101000001111011001101010101100110111000001101110100101111010001110000111101110011001001001011100111100010111101001101110111101110001000001100101101000001111010100111011111001100001101100101101010101101110011101001110111010111001011111010001000110100101001000011011000101110111011010101000101100101---------------------100100110001010010101011010010110111000011100000001010001001101011101000011100100101110011001101101000100111010101011011011010010111001111011000011000000001111000101010001011011000100010011101111111011100000110110001100101100001110111000010001100100001010010000001001010010101001101101101011001111100011110000000111011001000111100100000000010111011110011000111001010111110011101010110101010001000001100110111010100100010000100110101000011101110101001100010000111000010100010010111110111001010011001100011010101101101101010100100100000000010010010111000101101011010100000101010101000110010111001111110011010010100100011110110100010110001011101001001000010011100001011111011110011011001001110001000100100111001110111111000001110011011110000101000110110100000111001001001010011001010010100110111101000111010111110110000011110111110000000111100100110011101101011101111110001000111010000111110001110011011111111110011000100111110000000011000000010000100011001100100111011010000010010101110101111110010011110101001110111000010100000101001100000101000010100011000110111110110110000010000000011110001110010001000010001001011000001100101101101000110010010111100110000111010110111101000000101011000011000111000011000111010000100110101000010000111111110110010100110011111110110101001000011011100111000110000011000111011000100011001110011011101100101110011100111000111001111000000001110010100111110110000100100100101111110001011110000000011100110100101011100010011011011000010001111101111100101010010101110100111110011101011101011011111000010111100110010101110101100100000010111100111010001101110000110000101011011000101100111011011100010010111111110100100101001010110001111101000001100000001100001100010110110011111000100001101011111001000111110110100111010001111000001010111011101011011010011011111100000001001111111010100110100110111111011101100110000100000011000000111110100110001010110000010000001001011000100011011010000111011010011110111110010111011010110110111001010001101000111011001111110001010011101110111011110100000000000111001011001101001000001010011000000111011001111100011010101110010100010110010000010111010111101000100101011000001000110101100110101001101100000100000011110000110100100100010010100000001011010111001100110011110111110010011101110101111101100011000000110101010111100110010010111010001101001101011100110000111110101100101110111011100110100110000100000111010100111101100011101100010011101111011110011000000110010000101001101110000101110100100011110110011000110100001110001000000000111100010011001011111101010111001010111110001011000100111110001000101101101011011110101110101001000001101100110110010100001001011000011001101111011111010101001110000101110101101000100100000011011110001111101001001100110011100100110111101101000111100100100110101011011001110100111101000010111001100011100101011010110000100110001111101101001000101101111010001100110101101010011110011111010001100011111010110000001010111111011001011010110001011110100110001101101011111010011111101000111110111011110001001101111100101000110001000000011110000100110110111100010001110000011010100110001000000100000001110110000000011010110101110111000111011111000011011100010000011001101101101100000111001111010010110001111001111111110000000000101100100010101001110101101101100011101100111001001110110101001101010011010110000010111010111110010101000100010011101011110110101010001000011010011010111111101101101110001110001111001010111110001000101100111110001101111101100011010001011000001010111011110001111111111000111011100011110100010011011000010010100110000101000111100101001010000001101110001100010001001000010000010100111010111000101100010111110101010111010010101000100001010110110110011010110101010000101001110011110111100010001110100100100010101011111100101101010011101111100101111111011111101011000011111000101100110101110000011010110000011010110011011010100110100101100110001111100010110010011100100101110110100100010101100111010000000110101100111000011110110010001011000110100101110001111101101110110110100110111110110110001100111010001010100111101011100010000011111111001010001001100101011010111101110101101100111001111110100000101110001111010001010000010000001001000100110110010010101000011001110010111110101110001111110111001111100111101100001101010000001011001001110110111010100010011000111101001001100111011011001001000000100011111110010101000100111100000011001000010111100100110010010011100010110110110000111101111000000011101011001100000110001001001101111000010000001110100110100001010001111110101111011001000100100111001110100001010111011111001001110011011011101110110101110011010000110010010100011011000011100000110001100111010000011011101000111100100000000011001011001100110110110010000000111011111101011101111111101000110011010010000001000011110000101011101111101111111000000011010101010000111110100111010110100110101011011000111011001100011101111010011011010110110010111001110101111111110010010011001111000000010000010111101011100000011110110100111010100110001011100001111101000101011110010101011011110010110111001000000110001011000011010001001110010000111011000010111110101010111100000001101001111101000111011001010001101011100101001010000111000010111110101110010100001100011100001110010101100011001010001100001010101101010001000001001101010110000101110111011010100101010101000000000111011010000100111011100111111100011010110011000011011111110010110110101110100001100101000001100111001111111001001000010011100001111011111010001101001111011011110101110001110110001010111111100101100000000011111110000100001110001111101001111111011011010100001101001010010011010011111010001011011110010100101000111101000000101101100001101110111011010001001011111000101111011111010111001001001101010000110001001110110011111111110110010000101000011000000100110100011010100110010100111001010001110011001111110111111010011010011110101110110100111101110010010010110010111101101001011100010100110000010111000001001101001001110010111010011111101110011010101111011100111001011001011101001011110110111010100101100111011110101100100100001110000000000000011110100100101100110100101001110000010000111111001001000010010100011111010010101110101001101111011100000100011110011101010100101100100101010000011101111011111001000110111110010101110110111110001000101110110111010101110110010100001000001000000100110010011110100011101110001110011010101001001110110001100100100101101100010111101011110000100111001111000001110011000001010100100011011001110010001111000011111101111000001111100111100001011111101100001111111011000010100110111110000000110100001011001010010111010011111010101101101110110011111110011011111001010001010110000100100111111100000000011101101011010010101010011110111000100001000101100110010100111111000110110011110011011111011101111100010010000101111010000111010001101110100100000011001010100111100111101000000101100001011010011010010100011111000010011001000011110010110110001100110000110011010000001110101000111101010011100011000110000001111001011111101111100010110101001101110110011111001111101100010101110110001011110111010010010110111100011110100001101000001001101111111010010000111001011000000001111100001110001111111011000110000100000001001101001100111110000011111100001011000011101110100011001110011100111001010011010101010100110100111101001001101001111001001110001011111110010100011101000101000010001011001111001001110001101001110010001001010001001001111101100100101000010010100001000100100000110011110101000011100110100111001011000000011000000101101100111010011100100000101110001100011011101100110010111010111010010001101010101011010111111111000001000010110000110010111110111110000101101001100000101011100000101110111000001101001001101011001100100010010101101100100010010001000111110000010111100111011010110010000101011101100100011000111100111111011100101000010001110011000111110010010110101011000010000110011110111100111100110011001010001010000100111011101011011101010011110000000011000001000011001000100100100000010100001110000011100110010011001101101011111100010111010001010101111111110101100101001000011101000010010011011010110000001110111000000110100111000011010100110101100100011110011011101010011011000001110010001100111111001011111010011101100010100001110001110000110011110110111100010010100110100010101100111010000101000100001110100111100001001000010111000000011011111100111000111110100110011010000100001011100011010001110011000111001001000011110000111100110001010100111110010001011111101001001100011100011110001111101110101100010010111110110101011101011010001101101000111000100000011101000101000011110111111101011101000101101100110000011111010111000001101010000011100100101111010011111100001101011101001001101010110001010001001011010100111010000101110011100011110111001101101011111101101100010110100101000001111110100001000010100110000110110100100111011010100011001000101100101110010011111010010101000011000111110011001111010101010111100 +000100011001111111111001010110001001001100010011001010101010111110001100101101010101011001011001011100110001000111101011110110111101000001000110000110111000111001101101011011101001101110000010001001011110001000011001010110010110000000110100001011001110101011011100001101011011000110010110000100111010101010011110011000100010110000110000001100001100101010011111110000001000101100110111111101001011100110111111111011100100101110110001000000011001100110111000010001101010110010101000011010111101101000111011010001111011011001110100100110000010100101001111000010001111100110001011010100101000101110001000111011110010100000110100100101010010100000011100101010000111010000101111001001110101001011000111011100000111000000100000100101000110100100010011111100000011101110011100101000000010010001101000000011011011011011001100100100100100010000000101110101111111101100001000111001010100111001110011100010101011011110010011001000111101101010010100110101011010001010001101010000110100001000111111011000000101000001011101100001101010000100100001001100110111001010100011000001100010100010010110100000010100011101010101001010100001111101110110001101001000101100010100011000000101111001111101111000101110000101111000100100001100000010101100110101000100110110101000110111010100011101100100111101101011011111001011010001101110010000011000100101100111010110001101110001111010010000101011110000000110111010100010010110000011110111010100111001001001010001010100101011110000010101001011000100110100011101101000001011010110011101001010101101101000000111100110010111001101111100011011000100101110111000110111011011100101100111001100000010010010011101011000111010100011101011100001010110100011110100110001000111110001011000111111100101110000110101000100101100000000010101001001011110110010111100011110100100100000011010101010000101000101011011110010110111110010010001111011100101010101111100111100101101110000111101111000010001111011111101100100111010000001101011100010101110001101011101111101000000110101011000100110001000101000110010110010110000100011011111100100100000001001001001000010110110110100111000111010101100011101110101011001000101101001110011101011110000100111101111011101010001110111001011101101100100100100110001111011000111101010100001101011100000010011111011101010101110011010010011001101011110010011101101000000111000100010101001101101011000111101001110101001110101011101100111001100011101111110000110000101000010010111011111111011100011011100100010011011010100100001110000100111011111100011100111011000100110001010010100011001110100011110101011111110101101001011011010001100110110001011100011110101110001011011001110101011000000100001011111010001110000111110111100101100011000100010001101011011100101101001010101110000001010100101001011010100000100110101011110011110001100111101011001000010110101011011100011111110110010000010011011110000111110011111000000110110111111111110110001100101111100011100100011101101111100110001010101100110000101100110101001010000010011001001010010011010111000001011010110010100010110000001111011111001000001011000011001001001100010100110001110110100111110111101100111010101110000011000000011011000010001010010000000011011001010111101111100111100010011011101111110001111011110111110111111010011011010100111011101001011011110101100100111111010111010001110110001100111010100100000001110111001001001001100000000111110000111101001000010001111000101110000010111100110100101011011101000011011101110100111100110101000010100011001100100111111100100110011100100001111111101101000010001101011011110110010101110000110101101000100101001110001110101001111010011101111000001100100010100110011100010011110011010011001001101100100111000101111110010000110010110000111000100110110010010010100100011111100000101110101010011100011001010000101100010111011101011011001000011110101110111011100010101001011100100000110010---------------------000010101110100110010111010010100111011011011010110001001101001011001000000101100000010100000100111011101111100110010010111110110100010000100101101001101101001100100011101110010011100100010000111111011010100110001001001111111000100001110001010101001101001010011001000001000010000011001100010000000101011110001010101101000111111101001011001011010110100101101111111010111110110110000101111111101000011111000001101110011101111101011111100011011000111111101000011000110111010011111110000011111010110100110001001010000110101110100101010110100100110010110101111100101011000110100001000111001100100111100011110011111101101101010111111110010110001000110110110110101110001110000110101110101111000101100001110101011001101001000110000000100011001110000011110111110101010111110110101001010111010000110011000101100011001010110111110101110110110000101100010000100000010100000011001101000100110001101100101100010000100111011011100011100101110010011111000100010000101100110110001001011001111010010011101101010011111010101101101110111011011110101011110100101100001111110110101011001110010010111101111101111111010001000000100001101101111011010100110101001101010101111100101110001111100111100010101000101001011000101111000110001011100100001001010101100010111100010100001010000100001100000101011110000101110000110001010010110111110100000000001001000111001101100010111010111111101100111101000000101111010110001001111001001011000101000000110101011110111110001011011001000010010000100101010111010000000100110010010100011110110010011010000010100111100110110100011001100100111100001100011011100101110110111010101100010111111111100101010101001010000100000110001100111111011100001011100011000000111101110000001001110100110101100000001100000111010011111110110001111100000010100101101010100010110000100010101101000001110100000000101110110000000011001100011110100001001010111111001100111110110101000000011000010111011001001111101010101110000111111111010111001011010010101110101110110110110001001111100000101010101001001111110010011110111000100000001111111100010011000000110001011111011010010101101111101101111100100101111101001001100110111000011111011111100110111000001101110111000110011000110010110111011011010100101001000011101011100010100011000001011011100100101101111111110000000111000001110010101010111111101010000100011011010100000011001110010010100001100000001111100010000100011010100100010111001010101001000111100100100001101011000010000011010110000111001001010001001101011000101000111011011100001111101111011010110000011000111111101000101111000110010110010011001011100001100010110111010101011101110000011101001010000100000110001001010011101100100100000010111100000100101000011101100110011001000100001011000001111001011100010000010101010010000110110001000100011101101001101010110101011001001100101000111110011110101001110010000110010111011100101101100000100111011001010110001001110001000001010101001100000110011000000000110001011111110001000001100011010110000011001100110100010001000001000110000100001111111000010100010000010111011100111111001001001101001101001110011011000101110100011100110011100110010110110001101101101011111100011100001101011101110111110110110000001101000001111011111000110111000111111000001101000001110111110001101010000100111111100111111001010010010010010001000010011100111010011011010100011111011010100000011001000010110110111110001111100011001101110110011000111100101100001101000000111110110100000110001010101100010101000100001100100100001000010101110110001110110110101111100010110111100001101011001010110011111000001001011010110110100101101000011010000011000000100101111000100011101101110110000101110011000111101110110010100001000000111001101110010100111100000000001010101000010001111010111111001010100001111101011000110000111101101001000000000000101111010101000010001101000110101011110101001100110010011001010010110100111100111100101111111111011001110101001000111110001011001000001100011101111100101011101101001011000010000111100110100101111101001001100001101110000010111111111001000100000101010111011110001011100110100110100011100101101000011011011011010111011010010011010100010010001100001100010000110011110110001110001110111101111110001001011011001100111001000010011000010000110010000101010010100101110100100100001001101011011011111010000111000101011011011100010110001100010011101110011010000101101000000010000111101100110011011000001100101110100111100000001011111101101001111100011101100001101101110110100111110110010010000111110001011110110000000001111001110111110011110111100000100100001010010100100110100110000101011011000111110101010000101101110011110101000000000000000001010001110010101100010010001111110000110010001010111001000011000011010011011010010100101001110010000110100101011100010101011010110010000010000001111111111001111110001011010011110010010100111010010101011000000111010000001011011010101010110000111110011011011100001001001100100011111100111100101101101101001000110101110000001010101001011001111101010101111100001000100101010000010101001111011001101101100001111110000101110111000110101010010000100010111001010011100111011110110100010110011110000111100000111101001011001110001111010100011101111011111000111111011000000010000100110111000101100110000100111011001100011111011001010011100110010010001010001011001011110011101000011000110101100011110011101001100101000110100001010000011001010001011101010101111001010101000110011110110000101101110001111100110001011000011101101111011110101000000100000001101000000000100010100110111000001101111111100100101100101100001011101000110110001011001111001100000000010010110011000001111111011010111101001100000010100110001101000100100101011111101010110010011110111110111011101111111001001111101101011100011010111101111001011000010110001101011000011101111101100001100010001110010000111000111011011011000111011001110101110011101100100100010100000011000011100011000011100010111000011000000000101100001101000100101010000011111001011000110001101010000110011000011110000111010110110110011101000111100011001101001001010001000110011100100110101010011110110011100010000111001001000000000001110000001010111011010110101110110001110011101110010010010011100000011111111111000000001100111010101110001100101100011000010110111000001001111110011010000110110100001111000000011010010010010000101000111001111010110001001110111111110111011100100010010011100001111000111110111000000000100011101000101010010010001101101011000101000000111100101010111011010111110000111011011001001000111101000101111100111110101101101101111101010001110101111101111001001111010110011110101011001101001111010001100011010111001100101101000001111100110110111010011101101000101100111100001011101001010011101100001100010101010010001110100000110011001000001010011011011110101111111101100111011000010100011000100100000001000000001111101110011111111100111110010010001000111001111100011101010111111001111101111001010010110110111110011010000101010110000011111011100001110100111010101101101110110100001010100001100100110011100111100011001110000011000100010101110101011011000011001001001101100111011001111110100000010111111100011111001111111100100111001111101101010111011011110010000000011100111000010111110100010010110000101011000011010001011111000110111100010111010001001011011010101000010000010010111110011010010001001101010101001011110110111011110101001010010110011111001111110000011111100000111011000110101101100111011010010110001100011011000010010001100100111011010011110110010000001001101111001100011001010101011110111110111101110010011110101100001011010011110111011001001011101010010010011111001011111100100010100101100001110111111010011110010111100000000110101010000011111011111110101111001001101101111100101111011100110010101100001001100011011010110100011000011101101111001111001001101110000111111101010010010111010001101011100111100111111111001001010000111011110000000101100001001010101011010000101110000011011000111111010101101110110010001111001110100010011011101010000000000000111100001111010000111011011101000001111000111110111111001101101011000111010001000010000110110111101000101000001001001110010100001011001111011100110110011110110000111000010001001111000010010111111011011000000001011000000010100110100101111100111011101001001000001101000011100010001010011111111100111111101101011010100100010000011110010001000011110010001011001001100111001011110000100101010101111011011011010111000011111110011111101000111011010000001100110001000101100001100000110000110010101101101110001000010100111011101111010001110011111110110100110000000010010100010010010101001010101011010101010111001000101101101101011011000101100110011001010010111101100101110010000111110011000011101001110101011001000110010110111110011000011000011100101111001101111011010110101000011001010000010100100100100010001010101010100011011101110000001110101111001000100001101011110001010001000100011001111011100110101100010010100100001100001001111001110111 +001011011011011110010001100100101110101100000111001011011010000110100101011000100101010101111100001110001011110011111010100110111100110011110001000101101111110100000110001110000111011100001000100110000111011011011100101100001000000001101111100001111111111110000110110111011001111011000100011001000001110010010010110101110000110010000110111101001000010010110100010110011011100001100100110100011111110010111111010111100001001111110111111110100111011010101001000010111110000001101101001100011100110011110001000111000100110101001011001100000010001100111000111110001101101111101011001111101011111011110001111101101100111011101001100010010111100100001110011111010111111000011011000111101110010001101000000100101100111000011011101010000110001110000000110111010101110010011000011110010101100101110101000011100010110110110100010001111010010100011111001011111111100101010101100100010000010110111000010001100100011111000011101010110011000110111011111111011111100000110011111000100100001000000100000001110110011011111000010000110110010000011011110010010101100100000100100110101001101011011100001010011101011111111010000011100010000001100100010100011111111001110111111001111011101001100001111110100000101110111011000011010110000010111001100100000111000100000000110011101111110001011101111011001101011000001001011100010011000110101111010110110100001100101001101010000111110010010110001001001100110111101101110101101101001100110001110000110011110010000101110111111001001110011110011011101010001110111010011110110101101010010101011100101111001110110010001010111001010001001110111111101110010110011111101001100111011010111010000011111110111110111101010110001110100101000000101001001010000001010010110010110101100111110111110011101011000010100000010011100000101000011011010001000100000101100001110011001100100010000000101110101001111100110011101000000100011011110000000001110001111010011110001011001011001011111001111011011001001000110110110000010100100010110010011010111101111000000101000010111110011001111001101001111110011111011010111101110100110011000010010110111011111111110111110110001000011111001000011110111111010000001010001000101110101101100001111000101101001101001000100001100001010001011110100010000110001001111001011110110111000111101101100001000100101100000010011100010001100100101101110011000101010001000100010010110010010100101100110101101010010110110010101010000001100000001010100000100010110001001001010011011011100011010100010011111001100110110110100001010001010000100111111100000111111010110001001111010101000011010100011111111111011100101100010000101001001110001111100010100100000000110010111011111010000010011110001001110001100110010001101000110100101111011110010111000011101011100111100001000110111111111101110110011100111000100010100111010000010111100111011010101110100000010101011100111011100010011111010011010010010101010100100000100101011010111011011001010001001100100111010100011111000011100101000010100011100001010010010001000100011011111010100100000101011000100101100000000111011100110000011111111110100000110110111011110110000100010000110101010011011100111001111011001101100010101011001101100000010001000110011101000001111111101110010000000010000101110110000100010000101010100010110100110110000000100110111101100001111001101101111000001110111000111110011001000011111010111100100010100010110001100010110110000110101010011011110010101010111101011011011001001000101100000000100011111010001111000101100111111111000000001001011001101110011011110000101000000111011011110110011000111001000010100011111101101100001011111111010000010111111100111011000111010000010011000100011011000100010001101010011111110110010010110110001010101000100011111010100011100101110000111111111000110000001111111101010001010101101001110100100011011001111010001101001000111011011011011011100111111100101101011111100101010101111100110011010---------------------101010110111010010011010011001111101101100010000011101111100101101100011001101010110111111001011100001010100110101011000010000100110000100010101111001111101010010011100010001011000101100011110001000001001111011111011110001110011011000011100000000000100010110101111011110111110110001011110100011010011001001101010000101110010111110011100010110100000011010010110111101101000110011000001111100000101010111101001111111100101011110101010100110110111011000000011010101000110100111000101111011111000011010110100011110110001111111100011010100011000111011101011011100111000001111001111100010110110100100011110100001101010100011011110100111101101000001000110001010110001011111000000011010010000100110011000011001100010101110100111111000100101000100110111100101001011101000010011100111001110101100100010101001110100010010101010000001000001011010101101111110100010011101111110111010100100000000111101100001010101100101111011100100111100101011011101100001101000101100010010010100001000100111101100111101000000010010111010011000100111101111001010001100000110010100110000101001000100101110111000001000000100001110000101001110010000001000101001001111101101101010101000110010100011011110111001011100101010000011101010000010011101011111110000010010110011100000001101100111010000101111110100000111000001111101010001110100000011001111000100011000101001010111011011110111001011111011010010001111100111001110010001011101110110010110100100011001100011111100011010101011100100011100110011001111101001011100101010111001101000011110101110110011111011111011000000000111100111011010001000001100010011000100110010111100011001011101101001101111110010111110011011000101111001011111011110011010000111111001010010001011011000111101011100011011000000011011010111100001111010101100111110011100101111001110101000010011110001010111010100001101100001100111011111001101110110000111111000000100101011000010010100000000111000000000110110010101110000111010110101010000101110111010101110110010000111001010011110011011010011100111010100000111111101000111001110101101010101000011001110011110110001101001110011110000111111001110010111011101100101101100101111011011101111100101000000011011101011101001001000110000011001000010101011001100010000011011010100000111101111101110111101111111010001001110111101001101111010010100101010111111111101001110011100111011101000001000010110100010100001001100010010011100010010101000001101111011111011100010001110101101110000110100010110010111001011000101000100011100101111001101111111011000010011101011110111111000010000111001110000010010000001110101101100110101111111011101100111100100010001001001111100000010100000100010010111001011100001101010010010101001001111110001001111101000011111011011011101010110000101101110110000011000001100110001101010110110010111100011011110100001011100000111101111111000110010110111010001111010001111101010010001111011100001011101100001110110011011100111001000101100110000110110110001001010111100110001101100001011110000011111101000111000011010011110100111111001110011100000101010111100101111000110111011000011011000011110101111010100010100000110000100011010000101001001110010011011110010011010100001000000011111010100010011000010000000011010101011001010011010000101011010101000111111110010101110111010110101100011001111111010011111101011100011101100000010011101001101010100101100110001000111000010000101101110101101110000011011101011110011011100100110101010010110001111111101010010010110010110101010010001110111100001110101000100000110110111110011111010011110101100101110001110001010010101000001001000100111001101010010010001110111000000111101110101101001000000111011011000011110010111100011101001000011111100110100000101010011000011101000000000011100110001011111111001011010100101011000010101011111010110110011111001000110100011000010000100100111101100110010000011011001101001011000101110101001100110001111110110010011101000110000001010110011001100011010000011111110111000011011010100000011110101010101000011010110001100100010101010111101011101000100000110001111011010100100100111010000111001001100000000011000111000010000100111000101011110010001001010110100011101000100001001011110001010010101111000101110101001100110100001110111111111011100110011010100011011110111100011101100100011000010110111011110110101011111011101001011110110010000010111011001111001110011010010011001011100100111110101010100111001011011010010011110111001001001011010101011101010010011001100010101100100111110111001011011111011101011001100110010010111110000111110111011011101110000100111011110100001011100100101000000011110100100101010001001001111100100000010010110111010010001110101110110001100000011000100000001110011010111011001110000001110101101101011011100001101100110111110011010011101111000110000110101110010011111000111001101111011010101001011111001010100000110111110111100101010111000101011101100111010001001111111101111111001011001110111000010001000000111101001001001101111010011100011111000100000101000110001001101100101000110000110101000100000110110011000001110111111101101100100010000011111000101100111011100001000101000100101100011110100110011101010110010110101011011011011011001010010011011100010000100010110100010101010010011100110010101100101001000001010000000110100010100100001011111111010011000011001001111000111101000110011010001000010100001001001110110110001101010100111011000110110010001011001111100110001110001111001101001110010101000010111100110000010101110010001011000101110000100110010110110010010000000101011111000101110010010000110001100000010001010111011110101111010111001101111000111100100010000101000011010000011010000001100011001101000110000110101010111110100101100001000011010000100000000101100100001000100001111111100011001110101100110000011001011011110000111101010011001000000111101110000110010000101010101001110001001100101000010100111011100101010100111011000001011111111010100101000010011010100010001011011101001100100000011101100001010010001111100111011101011011111010001110111110010110010101111011100000001011011001000011100100001000011101000001100010101111001001010100001001111011011111011001000111011000110000111101011100010101010101100011101000010111011010110100010010010001000100100101011011101000011111111101011100100000010011100100010111010110111110001110011011000010111101101010100000000100110011010110100111000101100101011000111110100100001101010100010111101110001001000010010100010100001010100010010010011111100001101011110110100011101111110110101111011010001011111111011010000111110101000011111011001010011010001111010011110101110011101100111111101001001000010101111011110100111100110001110001001011010001001000000001100101111100110101001011110010110100111100110001110000001000111000000000111110110001001110111110001001100010100011011100101000000110011111101110101101000100110111011000000001010000011110101111110110000000101011100101010111110100100010000111110011110110001010010010100100000000001001110001001110010100000000011101111000110110111101001100000110110001001101001000010101110010101100101010001100010100110011100001000110111010101100011010110101000001100101011011100011000010101100001110110010011101011000101110110100011100110010010111010010100100010010111100011110010010000010100111101110001011100011001101001110101010101010111111101100001101011101100100010101011101110101101010000001000101000000000101100110111000101000010001001101000000101000010101101010101110000111111001110011101101101010101011101100110011101111000010011010111100110011011101010101101100010110100010111001011010101111001101000001101011011010111101011111011100000001011011110001100100110111001001001101111110001011110011010110111100010110000111101000010000100000010111011111101001010110100000111100011000111101111110111111001000100110011010001100010011000010111000111100000111111101100000101000010000010011100101110001010110100110100000001010010000110110011110010001111101101100111101101001011111011110001000001011000101011001110101001100101110111010010000010011010110110011010010101010101101010101111101110000100100111110011101000001101011000110110010101101001011010001110010110001001010011110100001101101110100100001110010011111001111111001010110010110111101011011000111100000101001011101111111111110010111100011000111100001110000010110111100100101010000001001001011011111110001100011001111101010100011001111011011100010001100101111011010010000001100100011101000111010000010000101110011000000011110000101001111110000100110000000111010000010101000010001001010101010110010001110001010000010001101111101100111111011010100100010010101001001110011101110110000110101100110101001000100111011010000000010110010111110010010111011101000001110111111011111111000001001100111011010010010001001001110110001100111110001100000001110000101001010011000100110111100110000110100000011110010111111010110100000001010010001000101100100101100000111100000011111100001001000100000011010110110101010110001010011100010000101001001011 +000101010010110001011101110011101101101111010000111000011110100101011000110011001111010000110100001101011011101000010011011011100111101100111111011000110001111001111001001110001010101000011110000101000000110110001101100010101100100101111100101111010011110100111001111010100111110100110010010110000000011100100010000000110101011001100111010001110010000110111111100011111001110110101010001011101111010111111011110001000001011000000011100110001000000010100101111011000000011110010111001001101101101001010000110011101000100010010001100100000101001000111111000100010000010001110111001110101011010111101010100001001111101100101011110001101110110111010100010011001110011100101011011101110100100111000010101000100100010010000010111010001100000101001000001111101101100010111001010111100110101001100111101110000111011101110001011000000111000001100010111100010101001011000111111100110010111101001010111111010010100011011010000010111110100001001111100001000001100011111001001110110110110000010011101000110001111111101000101010001000010010001101111001001000000010001011100001010100111101010101000000011111000111011100111010000001110001111001101100001100011010000111010111011110101010100101010010010111110111001101101011011111110111000011110101010001011000101101101110110101001010001100101111010110011001000110000101000010011010010111001111001001111110101101000110110111000000010001010100101001001011100010001000111100010010111001010001100001111111100110110101011010111010101100001110000101100100000001011001100000100110111101100111000010110100011010010100000011000011100101100111111000100010010101101000111001010011100000011110100111010011111001100111001000100110000011111001100110110001101110010001101001001100011011101011000111011111000100110111000000001101111100010101000000100100001011011010101110100100100100000111001010101001110100011011100110111000111001011010100111101001001001010110101110111001111010000100001000110011001000000010000001010101010001010011111101100100010101110010010110010101110100110011100101010011100101110110110110011011011111110100011110101111000010011101000111101011010111011000101000000011010110111101111001110000100111101101111100001101110011111001011010000110010100111110000111111011000101010000010001001011110101101111010111110110111100000001101101100101010000111001101010110011011000110100011000010100011111010111110001110001101111101001111011011110111011111011100001101010001010100010110110000010011111100110110000110111000000001111001101101000110101001000010111100000011100110000100000000101110010101111111010001101111101111111011101011111001110100011110101100101000100111101001000101101000001011000000011100001110100101001100010010001000101111011101001111001011000010001011100010101010100100111101011000010001001110100010100101010001111101100010110001001001010000100110011101010100100001101011010000001011101101011010001000001110100111000001000001100110001110001011100001110000111101100101000110010001000000000110011011100011110101011010010100111101010011001000101110100010001000011101100000011011000101100110101011111111001000100011001000111011111100111000101010001111101000101010111101110101111010011001010011110011010001100110011000110001000100111101001101000101010010000010011000011101101101111011001111110111100000000001101001011101001101000000110111100011011001010001000101011111000010110100001010100010111101010101100001010110100010010101010101000000111111101110001110110101100101110001011100110011111000100110010101101010000101011101000100000101010111010011100110010000000001100110101010110100010111110001011001011111101101000110101110010111010100110000011100100111001111101001011000111011010001101000010111111101111011010101001100001001111001110001011001101010011110100111111100101111001110011000100000100100101000101111101111001000101101100101100000011100110100101001100110100001100010---------------------100110100100111010110100110111110011100111111111110101000000101101011010000010111001001101100100110101001000111111110111000011101101011110111110011110101011100101101101001001110111111000000011110011010011001100100001010101011010010011111100001111111111001110000100010001001001010000010100010100110101011100100000111000011100100000111010011010010110001001011011101100101001011001101100110011111000110011110000110101001110110111010010011111110110100100001001110100011100110101011000010100001101100010001111110010001100110000111100001100000110101010100010101000000100010000011010101001100001001101110011111100111010000100011010101010101101010000000000001010110011010111011001001100100011010010100011111110011000101101100110110010000110100001000011111001111010101110100101000111001011101110001001110011001110100100110101111010110110100111000110011010010000110000011111010110101110001010010001010001101000010001100010110100101010110110101100010011101111100111101111000010010100010111010001111000110001001001110100011011101110010100000010111001010110000110010101110001010111011011100100000111010010101001111100111101101001100010101010100101100000101010101111111111110111000001000101101011001101010011010100010100111111001101010001011011010100010000010000000001001111001000001101110010111110100011100010011101000101100010100100101111011011101110111100101010001100010100100010101100000100010100001110110000010011010011100010010100011000001101101111111010111101111100110110010101001000001110101111000001100010001000111110010001000011100111111111111111111001110100101110110111010110001101011011110101001011100110101011010010110011111011111011001110111111100001100110110100011010001111000011111110100110010111010010101100110111110011101101001010000000101100011001110010001011000001011101010110111101010000001110101101000101001100111011110010100100111001011011000111110110111111100001100001000111001100001100101100011100110000110011110101011111111100110110001010000001011100000000011100100001100011000010000100101010101001000100111001010000010100011001001000111001110111010110000101111010010110011000100001111001100001110111010010011100010011100101011110010000011011010010000111111010000000001011011100110010101010110011010110100000011011101001011101110110010111000001001010010100001110010110110001001110001001111111000001100101110100110011111111001101000001000010011010011111000101000000100100001110110011101111100101001010011111111101011011000110100001101101011111001111000110011000011010011110001111101000001010001101111001111000100001010100111110101010001100101010101101010111001101001100010110110010110101000100011111011011111001100001111100111110110000101100011011110101110101100110000101000010010100100010110011010010010100000010100000101101001011000001010011111001111011000010100110011011011101000001011101001001011011110110010011001000110111010011100110110010111000111110101100011110100111001001111100111000000010011011001010000001100111111100000010011001001111010100101011101110111011011101001011001010010010000001000000011010101111110111001101010000100111111110110001001110110011010000010010110110011001011010000101111110100011001001010001100110101100001011000101101110101001111110010001100000000101111100110100101011111110111011100011100000100111010010110011011011001010011010001001000100000110010010000101111100001101110000011011101100100011101110100010101101001011110010001010110110111101000101100111010100000100110100111111001101100010000110100010111110110001110111100110110010111110100100000110011000110110011010111110010110000111110010111101110110000011011110000100010100000111111101111010101000101010110111111001000111011000110100111101100110111000101100100000100110000000101101100100010001111100110100101011100101011010111100101101111101001100110110100000010000010111000100110101110101001001111101111110100100101011111110100110000100010110110001010011000001010011111001011011000101111100001001011110101011011001010001100001101011011011111010110110010110111100111100000001101100100010110011000111110101000001100110000100100010101011101001111110110000100111111010111110010000100000011100011010100000011111101111111001101010000000101011001011101111011101101011110101100001011101101000111100011100111100000101010111110010111001010010100111010100111111111101100011101011101000010001001101000111101110100100101111000101100100100001001101111010110110100010110101111000100110111010101110010000000011001111010101011010011001110010000110001100111110100101010000000100001111100101101111110100101000110111010111010101001000110011010011111010000111001001100101100101010010100011111101101000100011111000110011101100101010111000111000000110010111001010101000100100001110110111101001110110001011001001010010110101001010011111110000011111101010010110110011001000111010000101011000100001011100001000100101110011001000001010011001100110001001111000100000100000110001010011010010111110000111110101000000110000111110011001100110010011010111010101101000011011001111011000010001001011100001110011100010111010011010011110000111000111100010001011001101011111000001010000101101111110101010010111110001101111110000001111011110111000111011100000001111001100010010001011110011100110100011011110011101101000001010111111001001110001101011110111011000110111100111110000110110100111111100110000101110110000110100011001110110000111000011001010101111011011010111011101010110010111011101011100011001001101001111110010111001011110110101111011001000010000001011010010011101111010100100111101010110111000100100101011110001101110110101100010110100000101100010111010110100010101011000000110010101100110011010100000011011010001101111000010000011000111101001101001101001111001101101101000011111100101110100001000100101010110111111001001010001011111101011100011001011010101000111110100011010010101011100001000100110001101110000001010101000111001100000001101111101101001111011010000011001110100011111111010100101111010110101011000101100100101110110110100100010101011101001010100110011001111001110000101101010011011010000001110011001010110101110101011000111011111010000000000010101011011100101111010101101011110010101100100110111010111000100001001011100101011111011101001100011100010110100011100100000010001000010111001001001010010010101011100110101100010100110101010111110000111000100110110011011100011010010010111011000000111010100101011000111000101001011110010110101000110110100111100001010100001011110111011110010111110000110110110110000101010001101010001011101101100011101011011100011000011111111001101001111111101010100100111011101110010011101011000001101100001010000010000011010100011011110010101001011010110100001010000000010110111100110011000111101000000010001111011000011011111100011001001000110000110111100110000000010110100010110000101111010010011111001111010110101000010110111000110001100000110011010011111100111010111000011010001001110100011110110001001011101100110110100011000111001010000001110011101101000101111101110011011101100101000001001011110001001111001010111000111100000110001111101011011011101100010010110101100111000001111011111101110001001001000101110010011011111101001100101000111100111011111001010110111100100011100110100011011001101100000100110110011110111001001100101101110110010011110011011010100110010011101100000101100111000000000010100010011001010000100001111001111001010110010111101000011111100000101111011101000110011010110100011010100100100000010110001010010111110111011111110111001000111101000100000001000010111101000101110100101101100010100101011100000001101110000010101100111001001011011101001010100110001111100011001011000111100100100001011100100001100101100110111100011110110011011010111010100011100010010101110011011111110000100111110000011111010010110010011111100111010001101110001100100001011110000011000111001100110100001010111011011000100100011101010001100001100011110001011001011010011011000000011111100000111001110011001100010001010110101001000101011100011000111111100001000100011010100001001111000001101101001110100101110001010000011100001001011010001010011100100010101110011100101001101100011111111001011001100111101011111000101101110110110001100001010011010000100101010110110111111101100101001001110010111011010101110100100011110001111011000101011011001001110100101110100101110111001011001101100010100100000000101110001110010001010101100000110010010011001111001101111100101001100110111100011010110010101010110111101010101100111000010111111111010111000110000010010101111111011000000100100110100000011010001001001110000100000000101001011001011001010010101110010000000001111000001111101110101010101101110000011110101110010110100100110111000011111000001110110000001100001001100010100010100101110100010011110011111100101010101110000001011110001111110001101010100111011011000001101101111101001011011001100001111010011110000100100101010011110110000101011110001000000111100000001010010001010101101101010110001111000100110101111 +000000000000001101100001101010000010000000111010000010011010010011011011001011101010011110011101111001101001001110110100001001000111100001011100101100001001100111011110010000001100000001110001101100010101101111011110010000111001111000110111110100011010100101110110011111001001101010001000011100011011010100110000001010101000000110110111010000001000010011111110110010111010110011100100100010100010100011011001010101010100010010111001011011110111011111000111011011000010100000100011011011011110110110111000111010100101101000000101000111101010101010000010011010111100000100101110111100000110011001001110100100110011011100111010010111101001001001110000100111111101111100101001111011101110110101111011001110110111101101111010100100110011111100011001111111000110001100110011000101111010001000100111100100100101000100010011000111100110100110100010010111110110111010000100010001111010100101110010101000010001110000101001100101100011001001001001000011001101100110101000100100010001111011110100100000101101001100110010010010000000110011001110101001110101010101011111101110110101100011010010000100101111100100100111110001010111101001010111001010000011110100011000001011100001000001011001011101011100111000100000100100110101101011101111100010101001010000110011011110000001101001111111011111100110010000011111110100000010010110011000001011001111011110001000110001010000001001011010011111100110111111101011001100111010011101011100011100001010010100001110011110100110111010111111010100011110010111010000110111111101000000101001000010111001000110000110111111101111011111100100100100111101101011110000111000001001000110011001111011010100101010000100001011010011000101001000011001001000110000110110111101111000100011011010010011000000011010001010000100000101000100010101000000111111101101001000101000011110001100000101010001011011001110100010011111111111001010111101010110111011010111000111001011000000100100101111111001101001100001111110101010111100100001001000011010000111010110101010010011000110011110110010111101111011000011011001110101100000101010001001010000110100100011111111100011101011010011000001000001111111011000010100000010100111100011101011010011001100011110001100010011000110111001010111101110010000111010100010010001100010101100100000111001000101001010001101100101110110000111101010100110110011100111001001001111111011000110001011000110001000000110110011010011111111010010010000000111010010010101111001001011110111001001100010000100100011001001011101000001000000011111110001001111111010010111111110010101101001110110011100010101001111000101111100001001010000110000010010111010110100100001010101100010011010011101000001011011111001011011001000100011111001011111111111001111000000001011100011100010011010001000010100111001001110110101000001011010001010011011000000011001010111100001111100000011000001110100101011111111000111111000111001101100110100011010100000000010001010110100010100010010100101110001101000000101100111011011101101000001111100011010111011101110110000111000100001000101011100010001000100100000011001011000100001010010100111010111110101010111101100111101010010000101111011100011000111011101110101110011011000011011100100010101000000101011110001000100110000000001011110000110000111111000001001001000011010101110001010111011100001011101010000011110011011101010010101010000101000101010101001110100100001001110110101100110100100101101111000001000110111010000010010000010111010000101011110001000011111001011111110101100101101110111010001001011100011100011011000100000011000111110101011100011111000110001110100011000000111001000111001110010100100011000010101100101111010010110010000111100100010001010010110111110100000100010011101100100001011000110100011011111001001011001100010110001100101010011010000111101011000000100000110010111001110111010101011110001100101011011110101111110110010101001010101110111101000100---------------------111010111001010100001101000100110111010101111010100011011110111111000110110010100111100001001110001000110101001110010010010001110111101100001010111100110010111011001010000111011110101100001101110111100100010101111001100010011100111101000111111010000010111001001011101101110000101010001010000110110110111010100011111110110010011001111110101011100100000111111100100110001111010101001011100101110010011011101000011101100110010111010011001001010100111001001001100110110111110101111110001000011001101110010000101110001000001001011011100101110110000111110111010001011101010110101111001010010101101000010000111011000110001000000101011100111000010001101001100111001111101100000111100011101101110010011011101100110101101001111100101100000101001100111110101111100101110001000011001000010110101100001011100100100110010101111111001111111101110010100010000000001000100001000111011111011001001001100101110010000000001100101010001010111110011001011001001001010111011110111100000011111111000011110100001101100001100101000000111011001111000110011110110101001001010000110100110111011101001100100001010000110010000111110000111011001000001101101111100010100000101101010111010110000101000001001100001110111000101101001110110010111000010001010111001011010010001000101011100110011100100100100001110110110010001010101000011101110001100010111111110110000101101101111000100000011000111100111101101001010001100110111011100000010111110111111100001111001110100011111000001001110110111011011011011110000011100110100101100111011110100100010101110001110111110100000010100101100101110011010110111011011011100110000110001011000100000111000011011111100110111110001111111010100000000110000110011001101010001011110100101011101111010100011101100001100100111010011111100101111001010011100000010011111011111110110001010100001001111110100010001010001011001000001001010010000001000001011111011010001111110100111011001111010101010100011100001000100001011111011011101011001001110001101110111100010100001001100010111111000110101100101010000100001100100111010010000000111101101011000011010101001111101100000011000111010111001000000011100010111111010101100111101001111001111001010010000011010011010110001110001100111101100000101011100011100110101000001101000100100110010111000010110111101101001010011111000111010111011111100010100010111101000011101000100001101011001110101000000010000010111000110100011010101000011100011000100110010101010011110111101111001100110011101101000001110001111010110101111111010110110110100100001101011101111001110101100010111100001101100111111011100010101001101000110111000101110110110010011101101111010011111001000111110000011010010111011010000100010010100110101101010011001101011010010101001110011001100110101010111000001001101001000101111100111101010001011100110001010100111000110101110010001001010100000100010100111000101001110100111001011111110011110101100001110001101011101011111010001101101110001110000100100110001011011111010000010111110101010011000001101100011011100100100000111101101110100110101001010100011100011010000100100010011000101101010100111110111000010101110011001011000011101001111101011101010000000000100000110001010011110101100101111010111011000111000001010001000100001100101001001010001110101110001101010011111101111111110101101010010000000011011011001000000001011111101010000001110100000100000011111101110100001010011001001001001011010000100010010010010010011110101000011110111010110111001110110100010011011010001000001110011000101101100001110101011001000101011011010110000000100001011001100100011100111111010110001011000101110000110111001000101101100000000001010110011100101011111010000110000111011110000110110000001100001001101000000100001001101010001101100011110000100001111010110110100101100010001010011100011110101000011101111100101110001111000000101101101111010000100010101000110100011110100010011110100001000011111011101000011101111000110111010010001001111001110111100001110011011010100010000111000110001011101000010100010100001101001100110000100000110010111110101110001001111110010010001101010011001000011010110110011111001101100011001100011101101100011111100010010000011101100011011100100010000111000100011000001100000001110101100111100100110111011111011000001011011011001000011111010100011100011010010101010111101111001011000110100011000111101000111001110011001010010011000110101000101110000111101101101101011110000000111000100111110010110100100011001001001100110101001111000000011000101101001111000111001110000001011000000110100000110000011101001110011011010011000011000000001111001100001001001001100110010101101110011010100100011010100101101100101100110100001000001101000110111110010010010001110111100111000100000100010111010101000001100110111001110000000101001001000100111010110010111010001101100011111000101101100010111101000010101110001001011001101001100011101000000000010101011011100100000100110101100111010010101100001110111100001110111001111110001101001000100100010110001111101100111001000000000101010110111100011110010000111001111000000110101010001000101010001110110111000000100100101110111111100100001111101111011100011001000110000110110011101010010101011001101001001001000111010000011101000000111000100101111101010110000111000111001101111100010001111100000010011001000100100010101111101011011100011010011001010110101001010111111010111101000001100010011100011110101110101011111001101011111011111110010001001010001101001100110011001011100001111101010010000010111111110001000011000111111001001011010100111010010100100110111110000010001110000011110110001011101110111100010011001011011110000101000100011001110111010101101101011101101001101100011000000011000101111111010110010000010000111011000100100001011011110101011100001001100001001000100100000101001110111110110010100101100011001011111101100010000000101111100100000101011000100111101011111000100110111000110111101011000000100000111110110000001000010011001110110000100110001101100011001011100111011010001011111110011010000111101101001100011101010010110001000000001101010101111101101010101100110011110101010100110010100101100001111011000001101110000000101101010010111011110101111110011000101000011011001101100011111010011001001011101011111011100011111110101000010101100011011010001010111001101110011110001101111101001111010011110001001100000001011010011110110110101111110110100100010101101001111100000000101101111010101111110101010000001010100111001000011010111100101000001101000110111100001100000011000111110110111001111100011011001100111110111110011110001000011101010001111111100011110111111001111101111110100101110001010010100010110110111100010110101110010101111100010101011101010100111111011101010110100101101010000010001101010010100101000001111101000001001100100110110010001101100000001100101110101011011010010101100110010010011101011110000001110011110001000001111011011110110000110110100111110110000100010010111101101110001010011101001100101000001111100100001010011011001101110100001101100000000011000001111110111010011110111000111001000001001100001111000001010100000010001110000000101111110110110001001100111001101010101000101011001100001011100011111100110111010110010000000111111101111110101011011000011000010001000110101000100111111100110001101110011010111101000101110010001111101010100011011111000000110110011101110101010101001001011010111010000100001001001010110000000000111000000000011100110101011000011000100001100001011010011011000011100111101101001001100010001100010001000100001111010111100010101010100001101010010111100011010010011110100010111011001010001100001100111101010001101011011010011110001010110100000000100101111110101111011010101001101001010110000000101100100101100101010110000010101001111010110000111101001100001110100111011011010010111101000001110000001011000000000100010101000110111001000111110111111111001110110111010010111110000111110100111101011111101111110000110011100011111010000101111101111111110000001101101111110111011001000001010100001111000010001101010110011001101101110001100000000011111101111001001101001111001110010010010100010111001010111011011100001001001011010100001010111011111011011000001001011101000010011100001101101100001100110100111001100010100011001000101010100101110000001101001010100011011000011011110001110101011010000110000110001010010011000101010011100111011000001111101010011101010010101101000110111001010110010110000011111011010011001000110000111010101110110011010110000010010010111101100101111110111100000000100000000011101110100010010011111110000101001111000000011001000011010010110101010000011001101010100001011101100001111001010011000011010001100110010000101111110111011010110010011010100100000101111001001110000000110000011111001000001110011011101000101011000101000111011110010110010011111010100010001111010100001010001110100100000111111000110010110101110010110001010101100110111100111111000111111011010011001110001011111101111110000110100110100110111010010001110010011111111001010100100000001000 +111010101000100010011101110011000010110011001001100001011010010101000100011010001100000111011111010000101100110011010010000001000011111100110101011010100110111011111100011101101100111011100110000110001101110110011000110010110100110110011101010100100000100010110101110000000000000001000110011000100101001010000011110101010100110000101011111011011101001101010011111101000111000110011110110110000100010110110111011101010011110101010000011001100100010001101101011101101111000101101010101101011110110100011000011100100100001001001100001001100000001110111001000110101111110110111100111110001110001100001000111010010001011100001000101101110111111101010011100100111001010110111010010001001111000100010010110111110110011011100010010000111011101000110100000010111010111001111001001001101001011000101001101110101101100010111011010101010111101011111100011111111111010011011011111101100111010000100010101001110111110110010100111000001110110100000000111110100010100110111101101000101001001010001000010100101100011111010111100111110101101100001011001101001010110010110011011011001100000001110001101010000001110011010001100111000010110110011011000111011011011011101110111110010111000101111111101001100011000100101001000000111001110100100111100110000000101111010011101100001001011101101110000001001101101001010111101000011110100101100011001110011110101011110100111010100100010110110001100101010000000001011011010001000000111111111000110000111011001010011000010011111000110011010011110011110000100100000101100101010011001100001001101101011011000111001111111100001000111111000111111001111000011001011101010110111100000000111110110111101101110000011110111101100100110111101001101011110000010110000110100010101011011111101000010011100010100001110001000101100111100001111011011110111011000111011001000010101001011100001000011110111111110110001011111000011001100010111111111000111011110100110101101100101010111000010010100100100110001111010010110000101101001110001010111111110011000011001110111101101010101110101111110111110110010010101110101001111010110101001001010000111100010111001101101111101010111000110100110001110100001110011110001101010100011100111000000010010010101001010101000001110111100010011110011100011000111111001000000110111100000001100101010110100111110000100111110101110011000011001110101010101000010100010001111100011000110011010100110110011111011101110000010010011000000101001010001111101011100110111000001100010100001010011000011010100110010110010001010100100011110101111110110000111011100101001101100010110110000011000100001000001000011011110111001110010010111011110000110110101011110111110101010100111010111101111110000001010100111011100100101010101001001111010100101100101111100100001111111101101100011100001101000110011111011001001011011100111101101000010001010111000010000100111011001100100111111000110110111110101110001001110101111100010011011110010101101010100000100000101100001010001110100100010111010100100100000011110111111011000010101000100011011111100010011101110001011101011100101001110001000011000001010101011100101100000001011100001110001010011111001001111000110111111110011001001011110101100000101111100110100100101001111111110010101110100100101011001010110101000111000101000101011000001000101101111100111011011000010111010011111101101111011111010000011111110001111010111100101100001100011111010100100001010101100111010111001000100010000101110000100000001101010101111000000111000111010011010111001001001111011011011111110101000010111001001101111111011111100110001111100110100011101000100110111010000010111010101001010101111100000001100100100000101100011110100011011100100111101101011000110001000100100111011010100000100101101101001011100011111011111000101001001110110000111011110001010010101101001000100100101100011101010001111001101100011011111001100100110110111011001000010011000111001100110001010000001---------------------111110010111111000011101000111101111111001100010001111110111011101101101111111101111101011110101011110010100101110010100111011101100000000010111000001001110111001101110111100101011010010001111111110111010011001001010001111001101000111011011110001110101111010011100110011111011100011100001100011010010110111001110010000010001010010011011010100110001000000110001011000100000010001001010111100111111011001010110101001000101001010111100100100111011100011111001100101101011001000110100000110101001010111010001100001000101110011111111111000101100111110101010101010000001011011101000011000001001011111111111101100100101011000000100110110111010011011110011001110111100001110101110011110111010111010101011110000100101110110010101001011001101100101000010011110100010110111111101110001010001100110100001100111011100100010111101000000010010101010000001100001000111000100010111010010110100000101011110110011100111101100001001101111111010001100101010110010111110001001111101111100110011011000000100010011111000100010100001110000011100100100101000011111011010111001110000010110101110100111001111011110110110111001101001010001011100000010010000000001110101101000001110110101111000011000000100001000110110111100001111011011111100011111011001000010100011101100000011101110000000001111110100000011000110100110100011110100010100010101101010111011011100000101111011100010110101011110001111010101101010110111001001001011101000000011110101101001110101000000010100111111011100110101111101011001001101111101011001110101000100000000110001011111101101101111100000010101110010111000101001010100101101100100010011100100001001011100011010101000011111010010110011100001100101101110010111111101110100010001101000101001111001011001101010101001101001110110110101101011101001111011111100101100011010110101101010001000111000010000010110110000010111011100110001100110001110011000111111000001001011111101101110001101011010010110011110001111011011101001010101010000100110100011100000000100011100001110110111110110110001110101110011110111100100010000010010001010110010011100001111100101001000100101010000110001101111011011110000111101111101001100010010111110101100001101111010110010110110100110110000110001000101010001011010100000101110001000110111100000001010000010011010110111011111101000100111101100110001000010111111010110100000000010011011110000101111101111000001110001001110111010011100110111000111010001101001010100101100100011011111111110101110010001101001000101010101011110111110110100111111011000110110111100100010010001111001100101010110000000000110011001100000011001010010110111101101101000100010110111110101001100001100101101100010101010000000010101101011001101011001111101001110100100000101111101000110111000000001100010000101101101101100001100100011011010111011110000000010111000100000011011010001100110011010110100011100110110001010110001010100110001101110110100000010111010111011010100010101101110001011010001100001000100010010001011110011100111001001001000000111101110001001010100100010010101010011111101110011100101001111110010000000110001100010111100110001010000010111000000001010101011001110000101000111011011001110000001100011111111101001010110110011101110001011010001110100100011100101111001001010100110010110010111110011011000010011000110110100101101011100110100010101011001001001100111011000001110000001010100000011100010011010010100101100110111011100010100010000100000010101011000101101001101100101011001011111100100100110100100011111101111011010101100111110001111101111110100001011101111011100111010111101110011011110001011100010110000110010011100110111101001001001011110110100111010001000010101111000001110011110000011100100100001000001110111111100011000110010011111001110011011111101101000101111010101010110001110111000011110110111110111010111110011010011011011000000101011101011011011000100001111101111101010001111010010011011011111110000100110101110010101010100000110100110111110100111010101110001000111100011011100000110011111101101010101010000000010011111111111011111111110011100100100101001101110101100011010111110010110101110010100111010101111111111000111000000000110111000000101111010110001111001001100101110101000100101001000010110110101010000001001000110111111111111001001001100011011111001100101110001011110110001001111110101000001111000101001001010011100010100101001000101111111001001100101001110110111000111110101001100101011000011100011101110101110001010101011010010000001000111000011011001000001001001110001001100111101110110100010011001001000111010000110010110010001111000101111001111100000001110100001011100001100000111100100011100100111010100001010100011010110100001010010011000001111100110101110010110101001101010001100101010100001010100100010100101001011001100010110100011111101101111110001101110011000001100111101011001111010010101111000000111011110000101000100000111001111010101111001011100001010100110010111000000011001101010101011011100111100000001010100001110000110001111110000010001101011001000010000010111001101100110110111001011000011110011001011001001010101010101110001110111110001111101111000001110110000010001101011101010011111100101000011000101111101011010110011010101000110001001010010110111100000110111111011010110011010001101111100100100101011101010101011100000100000000011100110101001100010011000111110100111001010101110010101000111110010100111111101100001010110101000010110001110010010000010101111001100111000110011100100100010111100001010101000010000010110101001000100100001011010000110001000100010010000001111010110010000110011010110110010001111010001100010010000010111111111001110011111001000110111110011100111111110110000000110111111101001001001100001101110111001101010001011110011001010101100111011111000011101101100111100010011100000100100001001101110100101011000010101001110110010010000101001101100100011000001000011011110011111110100110000010001101000010000011001000001101010101011010110010111111111111011000001100011010110010100010111100100000010000001110001111000100001111000001100100111000010111111010101110111111110110110000100100000000011111110111101000111111001001011101000100001001100000110101000010100010000000011111000110110101000111010100000110101011011000011011001100110011100111111101010010101111001000110000011011111111011101011110000000000111000011110100001011110100001100000000011001111010111000111011111011111111111100111011011110101101001000101111010100100111100101111001000001000010111001000011110110111111001001101111011101101111000001001111010001110001011110011010110111110111110000010000000011111100001101001000100010010010001111010001110110000100100111101101010100110001011000011101010001101011111101001001100001011101110111000101111000011111001001111010101010011101010110000111100111001110110000010101001110101100010001111011000000111000010010100100111001010100000011111101111110010111010101011101000110100110000101011110100000101110101100100000111010010100010100101110011010111110100010111011010000101101101010001101101111100100001111011011101000100000010110101000100100000000000110111000001001101011011101100011110110001000010110101010001111001111011001111110010101101100011100111110011111000100101001000001010000111100011000011011010010101111010000010101011110001000110101100001101101001101000111001000100101010000110000011011010100100001000100011100001011011001011100001101011110010101111100000100001010000101000111111110000011000100000001101110101001100100110011110101001110111100110111110011111100111110101100010010111010101000100000110111001010100010101110010011010111011111111010110100110101010001100110101000110100101011010000000011101111011101100110110010001000000111100001010100011011101110001100000100101100110011001010000000101011101110110101101100000010110000110110101111101000001010101001101111110010101011011100100101011010011001001110100000110000010011000100110010000001010010100101001001000000101000011110001000000011100011000000111011101000100110101101101010000101111010011000101010001000101101010101001010110001100110110101110011010000111111011111101101111101001000110010101101100101101001101011001000101011100001001001111011110111011101101011100101101000110110010010010111110011001110100100011000011100111101011110101001100101101001011111111101110001110000010001101110110000100101111010001010011000001000101000000111100111010101100111011010010001001101110011011111010010000111101001100001111100100111111101101011111001011011100100101100100111000001100101000010000110010110011000101111101000001101111100111111101000000000111011100111000001111100000101011000011000110010100001101000011001100010101110110100010010110101011101000001010011101101110111101101010001011001001000011101001101000010100000101111010001100100110010000110000100010101110111001001000110100110001111010011011000110111001010100011101100101101010000111111110101101001000110011011001001101111000101011000100000001001001011001111111111100111011011010001001011011101111100010010100100010100100 +010011001000010010000001011101001101111010011110000110101100110000000101001101100000011100010010001000010000111101111000000100010110001010011110101001010100101011001010000000001111100011101110111111110101111000001001110100101101001110010111111000011110101110111011100110001111001001100011001001011111010010000001001111011010100110100011110101111111001101001100011010011000101001111101000001111111011110010010111001100011100101110010110010001111000000111000001100110001110100110010110110100011100011011111000010100001100111101101011001100100101001101101101010010011111110001100110000011100000111000010101101110010010101111010011110111010111011110100001001110010111110101100010000000101111001010110000001010100010100011010000101111100000100101101100110010100101111000000101000011001111110001011010011100000001001011010111100111011011000001110111111110000100111001100011111000101101100111101110101110001000000110011111111011101011101111000100100010110010010011101100101011110101111100011000101110101111001110110101110001110110110110111010110000111101001111100010010001001111101000001010111000010010101101010001000101110010001000001100000001000100110100011011111000001001001011011001001010111111100011100111110110110001111110111001111010110100000001010101010111000101001001111111001011000110100011101111000010110110100100011010000001111010100110100001101000000101101110001010100100101111011101100111010011011110010100110001011001001000011010010011000010011000101111100101110100110001100010001010000110011100000111110000100000011011111010100100101010100011110011110111001110110010001011110100010010000100000011011101100010110011011011000110010011110011111111100000010101011010111010000001011010000010100100010010011100010010111010001101101110101001010111111001111010110111100010111100100011000111110001000011011000110101011001101101110110000101101110110100000001011100111111000101110110010110000011010000100101001110000000110110011101100110000100001001101011111011101101000011001111011111110010100110001011100111111100000011111001111011000110010111111110010101100000011100101101001010110101100110110001110001101100111000011000100011110100110001010011011000011100100011011110110111110011101111011010010110110111011111011010011111010101101001010001011011110110001110100000101011101010001111110101101100110100110110001011001110101010100011111001000100110010011000101111111111001011000100110110100100000101101100100101000110001001110100011100000011010001111111011111100110101010101110100101011101010110100111000011011101010110110101011110101000011100011000101110001101100001111011110110111001001100000110100110111100110111100001101001101101110111110101110010001001001101000011000101011010001110100001001101011000101000101111010010110010101111110101000010000101100010000000010110010111010001011110000011000000000100001010111100101110001110001000111000110000100110001101011000101100101011000000001010010101011100011101011010011111100110111101011101101100001101011011110110101011010100010101000011110101000000000011000101100011101001101001010100001111101001110001101101101100011000100110011111111010010010011110110001101100100010000000101100001011001110111110111111110010101011111100000100101110011101110011110001010100110111111111101110011111000100010000001011010110000101001100000101000110111110111101110101010011000100111000001000000011000011000100010010101101000111111011110110011111001110110011100000001011001010011011110011101110000011111000001010100000101011010011101010100101100011111010011000110101100011000011110000010100111010001111110001111110100111100111010100101001100000011100110010000111010000101111110110100000001010111000101010101010011110100011100000111010001001110110110111011011100001100110110100000011000100110101000111100100100101010011010011001010111001001100000010110000000100100101111010110011100111011011---------------------001001100010101000101101011111001100000010001100011000100001111001100010000101100000101101011110011010001010101101110101101110001101111000111110000111010000101010010010001000010100101111110011100110000000111101000001000100011111011101000011110011110101100010101100001110001110001111111000110001111011101111001110010100110000000100100110101110010011000111000011101111001011111011011010111111001110010110000110001101111010101011101100100001001110100010100000111010010110010111111110101111010000010001010011110110010100100110111110101110010011010010101101110000100100000000011010101000100100101010010110101111011001110011011000110010100111010001100000011111010110100001101001001001001110110010011011111011110100110010111010111000100011001010101110101101001110001001000000110010100101000001100001010001110001101000110101001011001101010101000110100100101100010010101010100001011000111111010000101101011111011011110111001111111001100111010100110000001110100000000011111101101110110100101111101011100011110111111100010111001111111111101000000010101010010100011000001011110011101111001010001011111011000001010011010111100001001000100111100000100101000111100001011111000010110001000110100110000011001110111110111100010010011011011010101011101010110101110010100001011011110110011010111110101100110100110001001010010110000010110111101000100101001010110001100000010100100111010110100001001101101011101111011000010111001100101110111111001001111101011000001111000101101101101111001110000111110011001011001000111111110111111101010001001000101001111011000001001011101001111101101100010100001011010101110110111011011010000100101101100111001001110111011111000111101100111010101010101001011000000100110000111001101000110101000010101010110000000101000010101101101000001010110011000001110010011110101101011101101011110111000000001001000101111001100111110010111011100111001111010100011001001100011110010110101010011001001110100100011100100000100110000110010001110011011111000001001010000110011011011100110111011111001000000110101101001000000011001010000111001000101001110010110001001110010101111101010011000101111110011110001010111101010111101110110110010010011011000111010000111000011011111110111100000010001010101101100001011000001011110110111110001101110001110001011000001101010101011111110000110110011010110111101001111111100011110100010011100100101101111111010001101010110010100111101000001110000100111010010101001110100000110110011001011010100100110100111101100011011110100110011100111111001011011100010101110001011101010010010111100011110001000000000010010111000110111000111110000101111101101000000100110110000110011111011110101101110011110010111000000001101010000111000000011101111111001110010010100111011000101110111111100010101111100100011000101011010001011101000110101010000111110100110010001111101101111010001100111110010001001011111101010101011010000100001000011110111010011000101101100101000100010110011010010000111110110000111001110110000100111011001001101001100001011010111100101100010101100001100000111011011000000000011100000001010011001010001011011001001101001110110001111100011110101110100101110100110110001001110111110000000011010110111011101010010110010000111011110100001101001011011011011011010001011010000111111100010010010111000110001000010100000111111011110011010101101011011000010000010011110101111010001111011000000001010100000100101000101010001111101011110001100010001111101000010001001110000111110000001110000000101100111111101001010011010101011100111011000010000010000001100000001110011001101001101110111000000000100111100101000001001110001001111100110011010111101011101010110000010011001010110001010100001101100011111110010011100001101111101111110011101101111101101101111011001101011100100111111010011100010011000010100000000111101100100101111110101110110001010101110110001100100110110000101001011010110010100001100101101101001001111010011101101001100010011001111001000011001001010111000000101011100011010101110101011100010100110000100111111011100010100000011010000001011100010100000110001101111001101011110011100100110111100011100111100110100110111000101010000100000100101010110010110000010101101111010011011100111010100010011000011010000111110000000000011011000001111010010000111011110110001010111001101110011001000100000111110101110110110001000101000111111001111101111100010101000000101111111111000001110100001110000011100110001101101001110110000010000001010111101100011011110100001110011001000011111110010101000100100011001110111011101101001001110011101111010111111010000100000111001001101110000110010011101111110110111000101010100011110011111011010001111110100001111010010100010000111100100011100000000011001010000101011010011010111110110111101101110111011101110101000000001101101110100111000010101010100100010011111100000000111101111001101000110101101110010000011010010011001101000011110100101111000011000001111100011111110110100110011000000101001011110110010110100100111000100010100001100000100001010011011100010000000111010001110011101010110010111000000111001101000110010100100010100000101010100100101000110111101011010110111010011010011101011000010101011011000110010111001010110101011101011111011000111101111111011011000111001101110110101011001111000110001111001001010010110110110110011011010111110111101100100110001101100001010010000001111000001111111101010010111100101100010100000000001111100010000101111010001101110111100011111111011111010001001000100001101000010001110000101110111110111011110011110110010100001000000111000000001110011000000100001101100101110010111111110111111110000001001011000000101010111010101101100010101111010111000000010010111100110000100111011111011111001100011111010000110110010000111000000011001010111100110000101110101101100100000000010001101010010101010001011111111001010101000010100000010010001100010000101101101100110101110110001111111011111101101000111111100111011101010000110000100111100001101001111101001100110101000011101000000001010010010101110000110110100100001111100001010010001001110110101110011001000000000000110001011110101111100000110000010100000101111011100000001100001101110110110010101110010100101001010011110001100000111100000101101101101010100100000111001010100100110001001110101010010100001001011100001111100110000100100111011100010111010000000011101100111100001000110100010110011011011010100101010110010001000011010111110001010001010010010011111101101011101100110000100011100111111100100011110001111000011100110101011110101010100010100001100100001001100001111100100111001101001110010111101010110011010111111000101110100010110110110101110110011100010100110000010000111001001001000111000111111000110010001001011010001110000000101010011000010011001000110111011110100001110110000111010010011101000001111001101101011000111001010010000001010011111001110110111111010111110011101010001010110011110010011100110011010000100111000001110100101000011001010001101110110101000001110101010000011011010011011101000010001100001000111100011110001101100011111101111000010111101101111010001101101001111111100000100100100000001100100001110110000010101111011011110001001010010001100100100000000100110000111011101001010110100000001000000100001111000101010010110101111000000011011001110000000110100110110010101011110011001111100010111010110101100001000101110000100001111110011110111000100011000000110101000101001101100100101100110100110000110011111010110001010111000100110111101000001110110001110110111110001111110100010100000011100001011101100101110100010011100010101001100010100111001100110111000110100100001011011000100100111010101100001001010110110101011000001100110000010001110001110010111111101000000110111100010111001111001011110010111010000100110001010100100111010101100100000010110001111101111111000100101000110001110101011001111001010100010100111011100010111001011001000001100100100100011000100010000100100010101101011001010010100101101001101100011011110000000010001100001110001010011100110010110001101001001000000101101010110100000011101000110111100001111010000010111101110011110111000001010001000100111001010011010100101001100011000011001110000001011101110010000101111011111101011011111101101010001110000100111110011111010110101001101101110101100000001111110110010011001010101101110011001100110010111100111010000110111011101011101100011101011001011110011001100100011100110111011101010100111001110011100000111111011111100001010110111101101010000110010111010100001011000011111110000100101100001001010000001000101001110101001011010101111011000100101100011000111000001000111010000110111011001001010010101101010111100010111000001100011100011100001100011100110000101111101011000010110001010100111101001111101011001110111111111001100111111000011110111110100000010000011101010000011001011001001100001100100100101011011111001000010110000000000111100111111001010001111001010111010101110111101101101111111000101000000100110110111101000010110001111101000010010100010110001011010101101100 +010110001100011000000111101101001101010101101111011011011001110010100110101011111011011100100011111011111011000101110100000111000101010111100001100100011110011010010001000010111110100000100011100011001011100010101101011111101100011001001001010101001001110111111110000100111001011100000010010001001000010100001101101100001001010111000110000101000111111010101011111111101100001110001101011101001101110100101100010100000111011110001100111000000111010100001000011100001011011100010001100100110010010001000100110000001010000111111100111101001110000100101011001010011010010011010000001111010101111110001100100011010101001010010000011001010100000111110000101100001101001111101000110101100011101100111111111011111101101101101100101100011101011001100111010011000100011110011001010101101101000001101000011000111011010011010010110100101011011001111100000000100100010101000000011111010010011101100000000000111001001110000100111110001001000000100010010010100100000000101110010011011101000111011110011010110100110110010101010100000000001010101011101100111010100010110000100110010100101011111110100101110110010010111001100100010010110001010000010010101011110010000110100111011011100110001110110010110110010101110110110000111000111011100011000100101110101000101111001011000101011000010101110100010100110000001011010100110111101000010101000100000111011110111110011100110011011100010011001011100100100001010111100010111100001100001000000010010110001100000110101011011000000101100101001000111010100110010000010001110111010010000100000101010110010101001101010011111100011010110011011000000011111101101110111101010100000111100111111101101110110101011000001100010110011011110001000101000010011110001101100001111100010010110011110111111101110100011000011110100010011110001001101010110011100010111011110111101010110010001100000000010111110000110010100011101110110011110010111000000001001100011010011010000110001001100011110000000100011110001110100000010100010101101111100001000001010110100001001010101100100011000011010011011101111010000101010110000010000101001110101110110010010000001000001011110111010000010100001101111111100000110010100110010011001011101000100011100111010010000011111011111011010011011001100101111011001101010011100000010001000001101110101111110101100101101011110101010000001011110100100101100011001101101100111010101110110100111000000000110111100110110101001010100100111000000001011111110111011111001101111110111001000001001110011100000011111010100101010011111011110000110001111000000000010110101100100110110101100101111101000001001101111101100110010010000110010010001000011100101011111110110001100001001000111110000001101110011100100001000000110100011010101000100100100111100011001111000100111001000111000001111110001010000111011111101011111010010100100001111100000001001000001000000111110001100110111111011010001111111011011010101011111100100000101000110100000000001000111111111010000110000001010111001001010001110110010110011010000100001001110101000000011011011011110011100100010010010110011101101111010000101101100111110000110100101011110011000010000011110100110001010101100111110001011111111011000110010111101001000011101011000101010110000111001110010100000110010010010001010110000010101111001100010110011100000111110110101101011100000110011011101010010001010011001011010111000100001000001011110110110010110010000101111000110101111001011100100010101101001001011001000110111110000001111111001001001010110010001101001101100011100101110001011111001011000101101101010011001111010101010100111101110100111111010111100010010110111000010010100011001100010011011001000111010100001010100111011101111111010100000110111011010111011000101001101001100100111100011111100111110101000100010100101101110010110100111110000101111111001000100110100111010101101000000101010011100111101100111101101011001010101010011011010000100000000100100---------------------110100001001101110110101001000111100001010010110000011010111100100000100011101011111111101011000111100011010011010111000011000100101101011011111110110001010011001010011110101110101101100110100111110110011111111011001111110000011001001001100011001011101001111111000100011111101000011100010000101011001110110101010111100000001011001111111111011001011101000110111100111001010010011101010011010100011110000011111101111001000010001111000100001110110110101111100011011001000100000010001011111110010101010101111011011100100111000000001000111111011000011010000111100011010111100011110101011110000100111011000011010011111001110010111010001100001100011101010111110111110100011001000101100010010111010001000001000011100011011001101010111011100010010011101100111011001010101001100110001010000111101100111011001111011000111010101011001110101010100111100101001111000100011000110110111011111011000001100000111110111001011110000110111100011110011110100110100001101011110100001111000110011100000101001001011111100011000000111110010000011001000101110000001001011100001001110110110011001110001010111110110000011000000110010000110110011000000111111111000011110111001100110011111001110000010010000111110000000001001010101000011000011011010010010101110000000001000010000100001101011110011111101100010100101110010010010011000000000100010010010101001101000110000100101001000001011101001101000000111001001000101001000101110101010001110101101001111101000111000000011110000110000001011010100011000100110100100110100111001011101011100011101000010101100000001000101111011011100111011000100000101011110100100011000110011000110001001101100101101010000111010000001010111111101011000110101101011101000011001010001111111011000000001100100111101011011001010000010011111010001001111101100111110010000011010101001100001001010100111111100000101010000111111100001000101010101010010010101011011111010111111100010101011010111110100110100011000001110110000111000011001011110100011110000000011110111111000010011110011111011110101011011111011110011111100000010110100010100111111100111011001001001100111011101001111101110001001001100101011111001001100000001000011011010001100101110111011011101111001101000100110010111110101011011111010101110001100010000110000001110010001011110100110011010110011101100100000000010000101110111100010001000101000001101000111110011000110010110011001010000101111011011100100101010011111100101110100111111000100001101010000000100011011001110100100101100111110010000101101101100101000001011101110000000000010000000101110111001001010001001101010010010110111100100001001010111000010110011000001110110101001001100110101011100001101111110100001110111111101100111010110011010001100110011101110110111101011100001011010001110010101000100001101010010111110100011111101110001001000010000101010110101010100110011000111110100111100101010100100011001010101100110110001000011110101010000001001111111011100000100011100000011100000011110011101011100100101011000001001010100101100000001001010011000101100101110110110101010110111000000011110010011000110100101000000001011101001010100111110010100001100101110001110100111001000101011101101111010001100111000011011110101010111011100011100011110010111111101001111010010011100110111001011010000000100000101010001110101101010000100011000000111001011001011001100101111111000000011010010101001000101101110001111111010100111011101101001010110000000101000010000110101001001111100110010001101100010010001001100110010100110001011110010010101100100111101001010101110000110111010100011100011011100100011010100100101100011000011111000011100101100111011100110100000110111010111010011001101111011110010001010000001010000100110110111001001100110111110010010100010001101110110110011101110111001110011010100110000101000011101101010001110110110100111000000101010111110101010101110110000111100100110110011011000011101111101100111111011001100001011011011010001101011010010111000010000001010001101011010011100011010110100011111110001111011000110001000001101000100111011010101000100011101100000100001110000101100111111110010011001001011010110101011010100011111110111101101011011110000011000101000100110001000010100010101110000010101011001100111100001110001010010111100111111110101101110001000101010101000100110100011101001000101111011011110010001000000001001010101010011001100101000011011001001101111111001100000000100000010101110101000001010000110111100101000010001011110010010111101001111010010010101000110110001110011110110001000110011000000101100000100110101010101001100100110011110111101111001110101101010011000111011111000011010110110100101111010111110010011101010100110110000101110110010100110101010111001011101011000100000101010001000011011111000110011011101110110000110011110110100111001110101100100111001110010110011001101100101100110111100001010010011100101111100101110111100101010011101100110010001110010001111001110000001111100011011101111111101000010100101111110011111001000101111111110100101011010010100010111111101101010101001110100111110011000001011011011101011101100001010010001011111101101001100101010110101011010010100010011011101011010000001110000100101110001101000110111010001010100100101111010111010111111010011010000110001110100100010101001001110111100100011101001110100110110111100001000010101111010000101110000011001111011101000010010011011001111000110100001011010111110111011110111110011100010111001111101111001110101110110111011000100111011100011110100011111110010111001111001011001011011010011011010101100010110010011100010011101110111101110110100000111110001100100001010110110000100010100111110101111111100100011101000011111010001111101111011000110000011100000100111110001011110111001010011010001100001100110011100000101101010101100010111010110101111010100100010110101111011101010001000001000101001000101111110101000001101010101010000110001100110100010011100101010110100011110001001111000011001100100001101110001111101001111100110001001101001011110101000010011111110000000011110110010010100111111111001011110100010010001110111010011001011101100110001110100101001101000100000101000101000111011010001001011100101110111101100101110101100000111011010011100011010110100001110101100000001011100011110011110000001111011000100110001100011001101000100101100010001110011000101001000111111100101000111011001111011000110100111011010100000011111010011100011010110100001111101111100011110111111111000111110100011101101010101110100110010100011010111001100101000000010101110010000001010100101100011001100100010000110011010010101010101010111010101001010110011101100001111110011100011000011011101111011111100010110001001100111010111111100111000101000001101101010010100010001101011001111111011000010000111110000110000100011101100010101010110011010110111101010101000000001111001011101101100111000011000010101100110011111111100010100110001011101110011110110011110010100100101110011000010000100111101000111101010100000100101110011110011100101011010000010111000011010111011101110101110010110111011111010011110100011100010100010000100110111110110000001111110000011010101111110001100111001001100100001010011100111100000100100111101011111100100001100111110111111101000011101101100011111101111100000010110110011010001101001101011110010011111100101001001111011100100101011011111100001011110111001101011011010110100011011000111101110111110101000010011010100011011100000000011111111100110110011010011111010111010111000000000000000100001111110001101010100000111010110011110101000111111011110011011000110100100110011110011100101101000010101110011110001111101001011111110101011000010010111101110110100111011111110100111111000111010011101011111110111100111101101010010001100000111100100001110011001011101101011001111111101100101110111010011000010000101011101010000001000001111101100110101110011111100010110100100110101100101011111110001010001010000100111110110010010010001001100101101110001111010111101011011101000001001001010010101000011110000011111111101101011110000010001010101111101001010010111001100110111101011100001110010100000101010100000011000100011011000001100101001101101110010111001100001111000011000101010011110101111111111100110000110111100001111100111000000001011110100010011000010010001101111100110111100001010010111011100010000011101100110100001110000011000001000110011000000001111010100001100100000000010000111100011001010100111111110001001100010010011100111101001101101001111110010100000000011110101100110000010101001111101001011100000001100010010111011100001010000110010001001000011101000011001111110011100001001101000101011010010111011101100011011000101011011110000010011101111001110001110100111000000001100110101000111010101001110101011101110010110100010100000000110011000101010000010111000011000100010110110010110100100100110111101101111011111110011001000101110101000110000100101001000011001011100110010111110110100101100001000111010010101110011110000011101110100110010011100101011000001010011101100110010110000101001010011 +ls384msgs +100000100011101001000001100100011001001111010100101101101110101010011010000111001001101010011100111000001110001001111111001101110101101011111011110110011100000011101000011111000110001000000001000110111100011000100011101101101100000000111111111110010010010101000100101010101110111011000110100010111000110111101110010011101010011010000100110001010100000100011011011111001101000010101110110011101101110100010000000111011110101111001010110100111100001110000101010000001100110100001101001110100011000001101110000100110010011100000100001011101010000001100011000001101100110110010011011011110000010000110000001111001010111001010010111011101101010001111011100111101101101101100000000100110000111001001101001000011100111111101101001001001111111110110110010111100100010111100100010111101111011100011001100110101010110111010001111001010101101001010000110000001111100001101101010110101001001001001010100001000111011000101111010110100111110011111011100100000110101000101110010100000000101011001110111100011101010110000001010001010101000110001010010000001111001001101011101000110010010011001011000011001111011000011010000110001000000010100000100001101101001101010000100000100111101010101100000100001111111000111111001110111100101100111100110010100010100010001111000110101001001010110111110111011111010000010110101100101000100101011011010001110010110000100100010010101101101111100000100111110100001001000111101111110000000110111001010101010110100001101111100000001000110010110101011110010100000010010010010001101010110110000011100110011110111000000110001111000101011010100100001101110011001011001010110000001011111110111100111110101101011001111101010001010111011110110111010111011111101110110010000000011100000110011110100010111010001001101110101110011111001011100011011001101001000010101101001011110100010100111110001010010100111000111110000000101001001001111010010000100110101000101101100011001100011010100110001101011001101110001011110000001010011000100000111010011110101000100101100010011101100101111110011111100110011100101000001010000110100000010010101101010011000010011111100010111001000011100111010100111100011000111010110100111010000101010110111100100010010110001001101101011010001011111110100101001001011011101011000000110011010101001000011010101001111111110100010001011110000111000100100111111110010001100110101101110000100100000001010111000000001001001010101100000011101111101000011000101001010110000101100011000011000111101001101011010110001010011000011011101110100010100101110011011011011001011100011010110101100110001100011101010110011110101111100011110100100100111000011010101010010110011101001001000101010010010010110011110110111010011000000110101000101000010100000000000001011111001001100100011110010101010000000101101110111111101110010101111000100010010101100100101010000100000110001000101010111011001111101011111100001011110101110101000111110001010100101110100001011011010100111000101001011001010001011010110000011101001111011011101000111101101101101010010100001001111000000011101110111101001011000101110111011001000101101001100111100000011011100110011011101000111100101111101010101010011010101001010010001110100000000001101101011011100111011101000001001111100001001011101010011011101110010101000100101000000110110101111101100000110110110101111111010001100000101010110000000111011000100011010100001011001101011111001001111111011111010110001101011100111100000001101110100101000111011100011101010000100000001011000010101111100000111110001101111001101101001000100011100001110000100111100100111010101100001100011101011001010001101011111101110011100100010110100101010000101111000111001010011111011000011010101111010101001100000110111111001101101011100111101011100001011110011011011001010100101100111000011101100001000000100100010110011100001101101100011111011011110011011111111101001011001000010010100110110010111001011111011010110101001100010110110110010010110001011001010001101100101011111100110110000011110110111000011001100101101011000011110101000111100111110101010100010100001001111110010011111001111011011110111100111000110001010001000111001000111000010110101101001111010111100111010110000111000101111100010001000010010100101001011000000101000010110011001111001110001001100011110011100011011101111010000110001001000011100010011111000111000111000111111001010100010111000100001001111101101001101010000010100000001010000111111111101001100110001011111111100001011011011111000000010001001011010100100000000100010011011110001101100111111100101000101100011000011111001010110011110011101100100001011011010010101100010100001010100001100010111010000101110110110011001010010010010111101110110001011010110000101000101110011110101000011001101011100001000000001111001001001001100100101000000001011011100000101110101011101001110010100001010011110010110100001011100110000101000011110011000111110100110111010100011101100101100100001101010110111110011010100001001111111001011100011010011010000011100000011111011111010010010000100010111111100101101001010010010110111101011111000011111000010000000000110110101010000101001001110001011101100011100011111100101111011010010100010010100101000000101110111111110001100001001000000000001100100110011110000001111100101100101001001111000011110010101110100010011100111000111101101100001000110011100111111000011001111011011101100010000111111111001110011110001011000001001010000100101101010100111101100010010101101110100111001111011011110101000111001000001110010001001000010110001100101101100101010101100111111010011110100010101110010111100010101111100000001110000110001100011111100001011001010000101011011011111001111101111001000010011110110001000000110000001010010110110110101011011110100010100110000111001100101100101011011100001100011001100010100100111011101000011110110110110100101011110011010100101101111100100001011100111101000000010011011011100110010010101010011010100100101110110111101110101101100111010010011001011110001101111111011101110011110111000000000000001001001100011101001011000001110111100100011100001010111101001111111000101110000011111101101011000101100110100010111000011101111000000001001111010010111011011111000101111011000010011010001101011101100100011110110101101101011110100110111001100111111101000110101100001001001100010101101000111000011100111000000010100001010110011110110000101101110011000110000011101111000100010000101111011111110010010001001001111001100111010100001010111101111110101000101110111101101111110110010000110001011001111010000111001010111001010100110001011110111100001100000010101001110001011100111111010000101010011100101001111101110010000001101111101011011101011001101010100101100011100101011011000001001110110011111110000000010111110010111011111100100110110011010101101010110011100111110000011000001101001000111001100001110001111010100011101111000111110100010000101101110111100100101110011101101000101101011011111011110100111101011101100001101000110110001110000110100111100100100110110100010010110010111101101111100011111000101001011100100110111011001110101110101010101101001100010000101001111010000010100010101110100001000000101101000111001000111000111011011000000101100101000111100011110011010000001001101010010010001100110000101011110001001001010100001010001000100000000111101001101000010110100000101010011100100000111111010101110101101010010000100000010000111000010110000101110011011110001101100101110011010011110000011011101001001110000100100110000101000111010100101101011111000001111110111001001100110001000100001001111110011000100101011011011100001001001110011011100101100100110100010000001011111111011101111001100101001011100100100010110001000001110101000000101111100101100100000111010010100001011010100101010101101100010011011011110110111100101100010000100011110011110100001101111010100100111101001011011010011001001110101001011000110111100101110101100100010001001010110001000001001110111110011000011000011111111010111000111010100001100000000101101111100000011000010000010111001100110011100010100000001000111101000110011011010101011001110101000001101000101010001100000110101001011000111110101000000001101101111100011001000010111100110110011101111111111000111111001110100101010100010110100000111000010011000100010001100011000010011101100001101101010010000111010111110100011101100100000100011011101111000010001101111110101110011100011111111000000010101011110110001100001100100100001110011110001111110011110100001010110000011100101001110111001100111000000100000101010111001011111101010000100011001010011000110000101010110001011001000000110001010001111--------------------- +000110110111110100000000000010111111010101110101000101111010100100000001001001100101000101101100100000010010010001001000010111111011101001001101010110011111010111011000111110100001111000010001111010011110010000001110000010010000101100101100011000001111101111100110001000011001100110000010010100011000110000101010100000111101100111001001100101010010111010100001111001101100100100000000101001010011001110111010100010100110011001111010010010101100000101010101011000110011000000000110100110111100011001101010000010111101111011010001000001101100111011101001000010101001101011000100000101100110000111001110010001011011101111010111010111010111000010010011010100111000101000100111010011110000110010110110100101011111000101101001010111011001001101101101111000100111000011100111011101110100010010111000111111100100111000111100001101000010111110101011000000101101011110011010100101110000001001111001000101011000110010000011100011101111110000010011110110110000110000111001011101010011101100101010010111100011111000101000010011001000001010001110001001100001011100111011001000010101110101001001101101101111010010110010101110111101000110010111100110001010100011100101010110000110000101010010101100110111010011001000111011010001100101101001110011010101110101000101010101110010101101101010001010111001011110111011111100101111000111001000011100110100010000101101010001001100010111011001001111001000111100011111100110100001110010001101100101101001110010101111110011001000100010101101111100001001011110011001011011001011000101000100010011001111011010001111110010000101100011110111111110100010011110101111111100110011110100100110100011111011101101101101011000001001001111111001110100010100001111100110111110101111110000001101010011001001001001100101100101011100001001010010100110001101000001110010011100011010110000110100100111100111011000101111010110100001010000000110010010010101001100010011011100001010011101110110000110000100000001100010110111100101110101010111000110010101111111111110100011001001111000110101000010111100011010110110101000010001000100000010000111011101001010001111111111111100111110110010111000001110111111001111011101111011011001111101101111000010001011101011111110110001111110011111111111011011010011100010011110110001001110111001110110001011011100101010001101110000011110110110111111010101000110011111111011111000010011101100000111011010001110001100110110111101010011101001001100011100000010110101010001010110010110001111100100100001011001110100011011011001001011100100001100111011011111010110000010001001010101011111001010000101111111001110100110100000010000011110100110010001011010100000100000010000001101111010001101101110101100000101000100101101111111101110011100001000101011000111100101011000010011111000011010011101000001110000111100011010001101111101110110110110110111010011110000111010000110110011111100111110010110000001010010000010101000111010001000011000011011110001010000101100110001010110111100011011100110101111011100101101100100000100110100100111101001110011100101111001101010011000001101010000001001000111001011101001011000011100100001101001111100111001011011101000110010101100000000110110011100011111111001001101011000000001101101010001110111110010011010000010010100001011000110101110001110001011100111100100010110011010110110111111001101110001111010000001011001010101000111111010010110000000101110111011110011010011100010101000110001010110111110110000101001010111100001010000101101000011010101101000100100011010011000000100011010101111110101101000100000110101011010110011111110001100111111001001110101111110111000000010110111101011010101100101110111101101010111110000010010111000110000111010001001100001111010110001000111111111101101011110101111011010010111010001101111110010001101110011111011011101001100101000011000110100000101110011100100110010000001101010100001001011110011100111111010000111001111000100110000110011010011001011110110101010110110101000100110001101000001010100001000100101101011001111001100110011110110000111011000010101011100111011111110110000101001110111111011011001110010100100011001001110101010010000010010001101111101000110110110001100101111110111010101100101101111111101011111000001000001010001000101110010111101100110001000010101110111011101110011111111011110000101111001111000001010101110000000101101001110110001010111100010110000101100000000001110110000100101001001000001101100001011011111010001010011010011001111101000110011011110111010011001101111011110001100010011000110000001110100001001001111011000111000001001011000001101111101001001000101001010011111010010000110011100010011100111111100110101010010110101000010111011110101101011111110011011111101010001101110011000000101101110000001101000100100000011010000011100001010001000010011111100000100110000011110101100001011100101001001010010100100110011100000011011000011101100110001000101011001111111011101101111100101011110100000000011001110000111001101101111110111000010110101011000101100101001101101100111001101010100011111010100101011110000100010101111101100001010110101101000000010000101000110111011011111011100110100100101011101001010110101010011111110010111101010110010000010111100111110001110011010001111101101000110110111111010110111100011111101101111100000011101111011100111111010100011011010010101000100001110110111100100010010000000011011000000001001011101101101001101001101111011100001101000010011100010111001011110001000011001100010000000111100100010100010010000011010010000101110001000100010000101110110011101111001001011110101000000001000001110101111000100111011001100000001110100111110100110100111110111100000101100110010101011000110110100110001010111001011000111111110110100011110011101001011111100010010110001000010111010110011110110011010011111011110001110011011101100011000101100010011010100100110100000000101101110011011010010011111001001101001101100000000010110101101111010010101001101111001101001011001010010000111100001101101001101000101100111101111111010001100110100101110101100101100001011111001010111111011011101010001000100100111101011100011110010000111111101000010110110110011101110000011011010000111101101000100011000100111011100111001001011101000101110111011100100001010001111110011100011100111101000101011111111011101010110010101001010110100010101010100100001011011110010110101100111100000001111111111010101110111011100111100011111011101010001101011100011110111011101011011001000101010110111110001010011101001111000110001111100101111010100011001000000111101111100100001101001110110110101000101110111010001001010001000110011001111011000000000011111000110101110011011000010111011100011111001010100011001101011111111101100000101101100111110101111011001100000101001110111101011011010101011011110011101101110100110101111000110111101111000100000001101101110000110110111110001100001110001000111111101011101011011011000001110001011011010010001110111011110100101100000110010110101111101000110101110110010000011011010101100010010101011101110111001100000010101000100111010100101101010000101011110110100100000011111001011110011101110010101010011111101101110110100000110010010101111010011000010101010110100010101101100100000100111011011011111010110110101110101110000001000111101000101011011011101101000010110101000001101000111000101011110011110000000111101000110000111110001101010110010111110001001011101110011010110110101011101001101010011000010110001000100101011000001110111000101000011001110111101100101010010101100101101100100111101010001000011111110011011001001101000010100000001001100000100110000101001000001100100110101001101000001110000100101001011110011000100001000000100001011110110011001101011111011000001001011111010101110100110011011011110111100010000101011000110001101111011010101111001001110001010000011110010110010001111010101000111111101010111110100100100110001011111100010100011010111110110001010110010010000111010100011000110001010011010101111000100001001111111000011010101011000001000010010111100100111110101101011010101110001011110000000100000110010010011111010011101001011111111000100001001011011001101000110010110111001100011001100111101011101111111101000011101010110000110010011110100101000001011010100011011000100011111010001011011111000100111100010001100101101100000110000100101011110011110111011000101000110011001011000100010101101101110101001101000010101000100110110111010000111110101110010101000101001101111010001000111101111100101000100010011101000100111010010000111011111010010111100001000100011000101111010101011000101101100100001100010010010010001101000111011001001111011100--------------------- +010110011010010011111111101111011101101110111001111000001111010001101110101000101100100010010111001010001111101101101100100011000100001010001110101010101000000101101101101011110001000011111010011011101010100010101111010110001000110111000010111000101100100111001101001110010011110000011000010111100110111001000100110011010001000000111010011110001010010001001100010111000111110000000010011110000111100101101010111001110000111110001101010010111111001101111110111100010100100000110011111001000110100110111101001010010001100110111100001100011100111110010101010101011011010110011001101101100101011101011101110110111101111000001110000000010100110100000101111001001111001011001101111100010010010110000000111100010010001110101100110100101100001010010111110101001111000000010001000110000000000000000101001010001000011000110101011101000101001100000100100100001111001100011011010100010111110101110000010001101000100100011111110010101101101011111100011101100100111100011101101100010010010110011101110110011111001111111001011011110111111010011101000101010101000100011100000010011110001110100101110011001100110001101110100101111100111011101001111000101011111101000111111001111010011011100001111011100100011001100100000011010011101010101110110110011001100110111100001111101000101100011011101100110100100110010011100010010100101010101011100000101111011100011010101110011001010000000011010101110001111110101010110011001101100111101100000110000111101100111010011101101000000011000011100000110010011011000110111110011001010101100111101010110110111111110110010000110000001000001010101001100100011100010100101100010001111001001000010110110101100100000111110010000001000100000111110101001000011111001110111011010110100000100010010100110000110010011001100101000011111100000010000011100011010100010011001011010011000010111010000010000101100000100101000111000011011101010101010100001101000010001111010100000001000001001010100000011110010000000110101000010100111100001111110101000011100010100110011100110110010101001000101100100111000001010100100001011000010101101110100010000111010101110100100011010011011000100111011011100110110001011101010111010010001111001101000100000111001000111111010011101000010101100000001010101011111001101010010000110000001010100101000011110000111100010000010011111000100010000011000111101101001001100001111100011000100010000111011101001110000010011011101101111011010101001011101110000011111101011100101100111010011011011110100011010011010001101010111100010100111111101101100111011011100101011111010011010101011001111110001011001011101110110111011100100100011101100100111010100111001110011001001110000100011011100001110101101000100110111010011000101010101101101100001001101100010010011100010011001101010110011100111110000000111001111100010011111011111100010011100001111001100110111001011111001110010101100100110000001011101011010110011111010101101100000100101001001001100111100001010000111010011111011110001110101101100101010110000000101100000100000101011010101011111011100001001011000001010110100101010001011110011001000110101110110011000101000110111100011100110001111000110011111101110110111111100101001011010000000011100110010100101000111101000011111010111000001000100110111111010110111011110111010000010010111100111000100010010011000010110011010111110001011000001011001000100100111001100101100111100101101101000010111000101100110000111101111001000100101110010010000010110100010110111100111001001000100110001110011000111100011111000010101000000110011101101110000110000110111010110111110101111101110100111000110101010001011100101001000000000110001111011001011010110100011100111110010000001101011110101110111000011011000000000100001101110010000111001111010001111111011011000100100011000100000100110111110111001011011010010010010111010010001001010001111111111110000110001111000011101110100010001101010110001111101110010010010101100110111100111000010001110111010010011000000000001011110010101001100010010110011111000001100111101011011110110110011000010100111001011100011011011011110000011011011100111111000101001011111001101010111010100110110001010111001100010111010001101001010100110101111111000100011101100000010101001101111001001001000111111100110100010100011001011110001000111010111100000100101111101000001001001101110110111111100010101110101010100010101100011000101100000011101111011000010001100101101001110001001100100001001000001101101111011011011011001111111110001101000100100011000000001010000001011111001001100111111000100111110010000000011110001001000000000101111101101111101100000010001010011111011011011010111110010010110100010000111101111101100110001100011011011001010101001110000011110000000101011111110111001110010000010101101100001100111010000101101000101001100111000011000111111100110111110000011010101010100011001101001101001101111000011001001101101110001100100000100010000111111011110000011010001110011010010101111110011101101000010101010001100101100010110111111110111101010000011011110010000011011010100111001001001111110000001111000011111101111100100100001101000101001100100010011101011111111000001010001101100110101000111001001111010010011100000100011100001101001110010010101111100000000000011111011101110101110110100100111010101010000010000010110011111000000100110000111010001000111010111010011000001011101101111000011010001110101001111110011011010100000110011100000100001110100100001111100000000110011100101111001110100101110011001100011001010010110011011100110100000001110011001000100110000011110110101100110100010010010000111101110100110000110111000111000101100110011000010011111011011000010100100011010011100001101100010100011110101110110010011000001111010100011010101001011010010001010001010101100001010001101011001100001010101000110101010110011001101101100111100000010000000111110000111010110110010010111011001011111010000000010100100001110010111011010110111111110011001011000011100011010000000100001100000110011000000010001101000100000111000000110000010111010110110101100111100000000110000111000011110110011001101110000100101000100111011011101100110011000010000110101010010010000110100011100011010100010011101101100001001001100000010000001110110101110000000100110111101100100110010111001001110110110001110010000000000110101110100100100101110011011100001110011010000101100010101110111000111100110000011000011111000110100010011111011000111001010101101001101111001110010011000111001001011111011111101100110000100100011001111101011000101011000011010001110001101011101110100110010100000011111010001111010110100111011000111010100000000011111001111010101000101001110110111010100011110111011101011000011001010000111010110011111011000000010010010000010000111000001110110011011100011001010011001111000100101100100000100000000000111100010111010111110100011110001110110001110100000110001100101011110100111101010011101011000101100001111110010101000000010111010111110001011011100100100010000110010110111101001110100111011101010111111001101111000001100100001110111001111000010100111110101110100110111010001010001001010111001110001001111011011000010111110001001011111001111000000101110111111010000110100001000011100100000110101010111111001011000101101101011000011100101100001110100110101110110011101110000110001010110001001100011011101110001100110111001011011111010001001011001111000010000000010010101111010111011100100010011111010101100011000100110111101011001111001111010001110000101011100010101101111010111111000111110001100111010110110110010100110001010101111000000111110110000110000110111010011010010010111111110111111011000101001100110001010011111101001100011001010011000101010110000101000111111001100010010111000100010110100011011001001000001100111111001100110101001010101100101011000101110010011110011001001001101010010001110010001001111100111111100010110011000010010111110111111100000100101000111000000001100101001001010010111010010000100110011111000110110011101111111111011001101010000011000010001110101010001100011010100011100000100111100111010011111101111110101111101001111100101010000111101000110010010000111111101011000100111011111100110001111001100000100110110000011010010100100100111101001111011100110111001100100110100011111001100010011000111111011011011110010000100110011010100011100000010000110100010001111101101111101010000100010001000011010101100000110001101100000111001011010011010100110010011110100001110010110101111000001001101111111101011101111010100101101100000000110000000110010101011101011011110000101100110011101110100001101001101000110010001010010111010101111010110010111101100110110--------------------- +111110010001000000101101000100100111001000011100010001100110100101100010100010001111001101000101111001101000110111000101001011101110101011110011110101111110101010010010111110000000110100111000110110100100100111000111000010101101110001001001111011000000111010011001001011000101001001001011001001000101110111100001010000111001001100110010010001111011111010001010111000000100111101110101110110111000110111010110101111100111010101010010000101110001100000101101111101110101100100011111000000100011101011011111100101100010101111110011011101000110100000001010000110111110010011010011100001000100111110100000111010011000011010100011110001000001101100110111110110010100111010000111100100110101011110101110001000000100000111000001011100001011110010011101011111001111101100110110001011000101010111101010000000000001110001101111001010100100011101110000011111000111110110100011011111010100100000111110011111000001110011010011011011001101001001010111011010111011000100011000111011101000011110011010111011011010010010111000101000101101100111100001011011111100010011100000100000101010101001001101111010011110001110111000001111111110011100000110010111110100001100111011111101000100110001111100010111001011110011101110000111000011110111110101011101000100000101110111100111001001000001110000100001111011110101101110111101010101101001101100001011110110111110000011001101001111001110110110110010101110110101111010111101111101010100100001001011100001010111111110011001010100111000110001001001001011010001011101010010110011011001101010111101001011001110101101001011101110010101001110000011011110101000011010011101010111111100001111111111010000100011010010010010110000100110010101101000111011000100000000101111011000010000010011011111011010010110101000111010000110111101110110010011110001000111000010111001110101001100110110000000110011001011111111011000110100100111011101001001110110011110111010101010100111100001010111100111010011101000110000010010111000001100111100100010110100110000000110100111101101100001010010011001100000111010110000000000101011011001111010111101110001100110101011011001111001100011010110010111111001110111101000111011010000000000011100110111111100010101010110011100010010100101000110011100001110010110001001001000000001011101011011110111010100001110101111000000111111111001100011100100110010011011111111000000100011110111111000011010010111100101010010010101010001010110011001010100000101101101011001111010001000101011011110110000000100010111001101100100110011010011011100110011110111011001110111111011100100111110011001100010110110100110101100000100000100001101000000011001100000100101010010010011001000010010111000010110100000010110001111010001101011111011111000100111000101101111001110010011001110011100110010000010111101011110101111001001001100111111100011111010011100101111100111010110001001101000001101000011100100111011101011010011001101110111001011010110100100101010000110111100010000111001000000010111101011100111111011100100001000000101111001000010100011000100011101111000011010111110100000010010011100010011000001011000011000101000101110000110101110111111101111010111101011110100000100101111100001100111010101010010111001100001111100000101100110011001101010010001100000010011000011000111001000010110001111101011001001110111101000000010011000111001000110110011100000101001101010000001101100100001011011111100111011001101110001011101100111111110100110100101010011011000101000111111011010100000111100011011101111011100110010100110111100011010010101011000000111000100010001011010111100000111001101110101001001011010011011110011100111000100011001010000010010110100101011010000001110011110111010000001111000011101110000001000111100110110010011001001000101001010101010110001000100101001101111110001001111011000110000110000011010001100110000001101011010101001100101100011010000000101010100001110010011111001011010100110000101100000000111101000111011111010110101100010111101010111110100011000100011001111100011101111101000111101000101111111100101000100111010110110000111010101001000000001010110001100101010001011111010011011010101011011010111111011110110010001000101001011111110010001001010011000100110001111010011011011100001101100111011100100000110010000001100010000100110000111111000110001101010010011101000110100110111000001001101001101000001101011000101101011001010000110001011101000100001010001110110100111101011101101000101010001001111110100111110101010010100101011101110111111111001111111110111101110010100100000000001011100100010010010010111010111000010101101110110110001001100010110110001100010111111100010000101111110010110010011101010101010000001010000111010000110100000110101000010101110111010001100010101001011100100001001010110010110000101001100100111011101110011000111010000101101111011111001000111010001011000001100111011011101111010001100101101101101110011011011001111010000110100101100011111100000100100101101011100000001101100011000011010100010010011110000100010000100001101010001010111111111101110111011011100100101000001110110010100100010100111110100010011010010000101000001101000011100011011001101110001101011011100011011011110001001110000001001010001111101000011011001101101011110011100101100011110001010000111111111100011101000011100100011111000001010000110010001010110111110000100111000011001011011000011100100000111001101000010100010111101110111110111010010001110100011001000001011011111111111011111100101110010110010000111001101100101101000100101111110000000110010001110010011001111001011100101110011110111010011111010100110100010000010011011000011111101011001011010010110100100101101000101100111100000000101111100101100011111111100111001111010101101000101111010010111011010100001011011100010101101110001100110011100110100100001011101000000110011101111011010111001101101101101110110110100101110001101100111111000110000011111011100000010011011001101000110110011010101001100111111010011111111010001111001001101011000011111001101011010011001101001000101010110000010001110001011001110001110110011111011011001100101101000100111101101001011000010011010011100111011011001100000000010100101011110101010010101011010110100010000011011011010110000010010000100000011000001011111010100001110011001100100111001111100101101010101100011110011100010000100111100110100101111010000010111101101101001111100011001000110000000100111000101101100000011011111001001001011001010000110100011110101111101111011011011011001111010010011101100010010101010101100101111000111111010100011001011011101010101011000111010111100100111011010010111010111101100000110001100000000011100000101010111010100000110001011100011011001011011000110101010011011100011111000001001111110000001000011011000001110000101000100111101011101000101000011001010001001101001110000100010000001100001011001110110111011101000011111111100100000011011100111100100111010000101001000110100010010110000011001001101000101001001101111001111111010111101110011100110011011111011001011000110001110011111001011010110001110101011100100001111001011111111111000101011010010001000000001111000110101001010000111111101101111010110001100101100110100100010111010110111111010100011101011010001011011010011110000011110010101001001100010011000001011110111000010000111001110111110110111100100001110110110000100101111101001010100001010110010000000000010101001001111101011100111000001101111100011010011100101011011001011000111000010011110000101101010100010111000000100001111010000001011101111011110110100101101001110011000111001111111010100011000001101111111110001110111110010101100001010010100000101111100001000000110010101101010010000000101110010110010011000100101001101101001111100111101100101001011100001111100100000100110110100011110101101000010001110101001010111100101001110010101110000000111110001011101101010001011101100111110011101111000011011110101100110001001010011001000101101000001010101010000001000101000011101010010111010011100100011101111000100010100111010111010011001000110011011101011011100011010000000001111000100101000110011010111010101000001000010001111100001101000001111010100101110010011000011100110011001100011010000010011000011011110000001100110100001010110111111111010011010100110111101001010100011111001011101100110100010001001101110000110110100001100010011110100111000111001011011001011111011011000010110010111111010011010001111001010110010110001100010000111010000001010101001000011111001111111101100111000111001110111111111011001110011111100010111110010110111010101010010010000001101011111010000001110010111110110010000100010101000000110110010000010001100100--------------------- +001101000100100011011001110110111110111111110000101101000001100100101111011011100111010110000110101111100011011111100100000000100001101101100000000011001011011011011101001000010100011001001011000011110110011011000010111101011111010010101100111111011001111001001100110111111000010110001101011001100110001010100000010100110111110111000000010101111111001010110001001111100010001000010110001001000110001100010110011111101010010010011011011101011011100001000110101011011110010010110010110011011010100101000111100000111111101101000000100111011011000100110110111000111011100011000011101101001111110101110010110001101100111111011100111001101010011110010010000111100011111100000110010001001101100001111110001000001001010101100101110110011101111011101101000101000010111011011011100001110011101101101000001000110010000110001010111000100111101001111111101010011101101101110111101010001000011001110100100111111110011000110100110100110111000110011101000000101011000110110010000111000011011100111111011100100110111101011010001100111101001010110000100001100010011011001010010010000010101110001001100110101000010001000110000101110101111100100111010111101010001111110011010000100000000000000011100001001101101001011000111001000010100111010011001010010110011011000010011011100101010011111101001101101010000100000010001001101110000100111001100101000100000111000111000111010100100111101101101110001011100010010101010010011110110111000110011000110110111110100000010111110100000001100100000010111000001001010111100010111000011001011001111111011010010000000110100111110100110100011100010010001001010100011011110100100000101111000001010011110111111111010101000110101011101110011101001100010001010011110110111000011001111101111111001010001010001110100011011000010101110101010110011110010110000010100011001000010000010011110010110101010100101111001101111100101101001110101011101011001011001100000011101000001001000110100111101100011010011011010111010010000101000000000110110111101111110111010101110001100111001100011100011001011000110011110010101010101111001011011011010011010111010011100011110000101000001001111000000100111011000101011011101000001111111000001101100111001011111111110010011011101100110000110011000000100000101110110011000110010010100111100101100001101000000100111000100101111011000101000000000100001010111111010110100111111010001110111100111001011010011011111111110100101101000001100110110100010110110010010110100101010111101111011110010110110111010010000011001111110000111110111100000111011100111001111100000101010100111100000111010011000010001101101010101011100000111110100011001010010010100110000010010100100010101000101100000000001001101000001111111011111010000001001100111010011011100110110010010100001101001101100010101011100011011101100001000001011011111100101100100100011100000010010111101110000011101110011011111100000101001111001110111100111010011001111011000111100110111000100100010101000100011001101111001101011000000000010000000001010101111010101010101110111100111111011100101111010011011011101000001110111011010001100010111011110101011110101011010101111000000011100100110111101000000101100111001010001101001010011011110100010010110010011011001100011010011011010101001001000111000000000100011000001110100100011111110001000011001010110111011111100110111001110011001011000011000010110011011110010100001101000111001111101001110101100100000001111100000111111111100010111000100001000101001000100011111010001011101001001101001111100101000100001101101011100100101100100000000100110010100111101110100110000101110010100101010000000001110010101011010110111101100111110101000100101011101001000001000011000001100101010100100110111000101011110100100100101010000100100111110011000000000011110011100111111011111000100110000111100011000111001000001010000010000001101100110110011001100101010101011111100010111100111111100001110000100000010000110000100110100110111111001100000011000110011011110100111110001101100100011110000101111111100001111000111110010000101000110100101101010001100110010101000101011010010101010110110110110001111001110100001100011101000110000010101010101110001101011101011110100011101000011111100010001101110001010011011110101011010110011010100001111100100101100011000001110001101010100110001011011110000001010110110110111100010101011001011001101000001101101111111101100100101100010111010001110101000011001000110001111011001100110110001101111000001110100110000101100101110100011100000111000100111100001110000101101010110000101001101000001100111000011101001100110110010101011001110011110010011011100010110110110100000010110100010001110011111001101110101010001000010010100011010111110001000100111011100100100001101110000001011000111001001110001100101000010000110111010011010010100110011111100001011001110000101000101111110011010001000100110000101010101010110001111100011001101111011101010011011010011100100011011110000011010010011101011111001000011110001111100101001011101011101101001110110101111110100000010100000000101001100110001001011001000001110010000000110000111100000111011000100101001110100010001110101110100001101110000010111011101100010100010100110001010110100101001100111101001110010011000100100111010001011010011010110100101000001010001101110011000110000001100100000101000110001111011000110101011010111010010100110000100011000000101100111011011011110100101011001010011110110010100010011110000010100000010100001010111110001110000010101110101111101001011001001101001011010000010101111111101000010001001101001100100110010111000001101101100010001000001101110110100100111101101101001110111011011101001010111010000110001111000011110001000111001011101111001101101111010111011011011011100101011101001111000101101100100001011101000110110111000100000101000011010000111011100011100011100001010011000101100111111110010100011010001010010110011100001011111101010011000110100110101100110010111010111010101101110000101010101111001111110100001001110011100011000011010000001011111000110100010001100000111101010110100011110001000111111111001111110110001001101100001101011000010100011101111010101010011010011110010010001101011111000011000010100000110001000100000011111000110111100011110010100110001010110001100001110101100000101001001010100000000111111100100000111001111101001111011010010010011011111000000110010001101010000010010010011111000101000011001000011011101101011011111001010010011000111101001111110111000010000101000111101100001000100101010111011011110100010010001100101011011010001010100110101100101011000100111010111000001100111000101010011111001110110110101111001110101110010100100011100100000011010101101000011111000011111101000000010111011110111011110000010001010110010010111000011011000101101000100000100101010000111101110110110101111000010110010001101111110111001100110111100011100100101001001010001011111011100010001111001101110101000000100111101000100110110111111110101101010111100010111000001000011100111100000101001010001110110001010011000111011001110101001000001101111111000101011100011010010100000111000011111001101000100010000010110110000101010010000111001011111001100110100111110001011111111000000111100111101011100100000001100011101011110000111111001111000101001011110101000000010011001111111001100110001010011111011110000011010000110110010100111100110010100100000100001000110011111011100101100101100111100010000011110100111100111101100001001001001001110101110011010111000000011110111011111010110000101111101110101101001100100110001110011110100111010111101111001011001001111110011011111101011110011100001001001011100101010010110000001110101000011100010111100011110000111000000100010101110011011111100000010111010100000110101010101110011111110111110000001001011100001001001001011110011011101001000001010111000110110011100101010101100011001001111001111001111010011010101101101001111010000000100011100001101011010111100110100001110110100100101110000000101011111010000101001010100100001010111010111010111010011110101011011101100111101000011000011000101000100100101101101110100111100100010001000001011000111000111001101101001000011100110000010000011110011110101101010010111100101010111111111011001011111000011001101000011110001100010011011100011000110001101111100000100101100001110000101001110110011101101101011011101010100010100001101110010111100101011001111011010111100110010010010101001111000110111110011011100010101111100011001101010000000000011011110010110011111001110100000110011011110001000000110111000000010111010001000111111110101000110010110101011111000001010100001001001101111001011110111100000011011--------------------- +111100110111001110110101000011011110111101100001100000101000011001101010100000110101011100000001110001110001110011111000011010001001000001010111000100011111110111101000011001101101111110110000100111001100100110000100011010000001010110100110101101111011100111100101011110011001111101111100101110101000000111010111010001001110111010000010111110000011000101101010000001100100000111011100000111110011001001010111110000110011101101000111010000010100110000011010111100101010101101100011001100111001010011101001110010010010000111100010010011101011101101111100011000101110101111010110100000000110100100010100100110001011111011101101010101001100111110001101111110010001111100100000000100111111100011010111000100000111000101001010101100001011101011100011010111011000101000000000110111010010111001000010011111111011001011010010101111011010000100010000010010100101101101010110001100010011000011000101100011001011100000011101100110001111011010100011010001000010111101001011001010110010100011101110011001011000100110100010111101011101101011010100001111101000001011001010101011100110011010010000011100001110010010111100110100110011010100011111101101111011001000001111111101010110111001000101000000001111101001010011010010001001100001000000111011101111111111011111111001100000100110110100100011100011101101111110110001011111010010011111001110111101000010011001101111001010100011110001011011101001000001010000010000101010100000100100011111011111100011001001011010010000100011010100000110000100011010001110000011100010101011000110000010100011110100010100100011000110011011100011011001000111001110010101110110100111100100100011110101011111111111010000110001011010101000001101001000100100100011101111111100000110110001101001000001100100000111110000000100010110110111001011001110101011111010100010001001101001000000110110100101101111101101100001110010101001001101111000011110000111101100100110001101101110001010010010010100000001000011110110010110110110000101101011101010011010100110000111100011000111010101110111110010110000011010100001010101011111101010101000101111001101000111100111011001110111001100101001010011100001001000100100011010001101101110010010010001011010000010100011011111100101010110101111101111101010111000111110111001011110011110011000111111110011000001110010011111010100111110000101001001101100001101010111110111001101011111100100011001000011010110101000111010101011011100010101101101111101001111001010101010001100111110010010101100110001111101111011000011100100110101011000010010111010111000110110111111101011011110010101111000101010111010010001011011001101011011001000000001011110110011111101110010101110100101100001011000111011001111100000011101111000000100001011011000000100000001011000010001100000011010110111111001111101100000000011110101101111001011101000110010110011010111100100101111011011001100010000000100000101011100110101101101100110111000001110000000010101001101010100100001111010010101011011111110001000110010010111011111011101110111100111111001010101000010001100100101111011001110010101101110001000110001001010100001101000010110100010011110001011110100111011100010001010100000111100010111000111001110100110111100101101001111100111111101010101011101000110001010110000000101011011011111011100000101010011101100011010100011111100100010001101011100110111111100100100000110001111111110101000000011010000011100000000100000000000111001001110110000011111111100000000110001101101000000110110110100101001011000010111110110011110110001001100000000101101111010001101110011010010100000001100100101110000101100110101010001010100100111000001000110111111100100101001001110000000010100101101000000001100111010100101011011010010000001111100111010100010011010000111110101011000101010010011001001111110000111111011001100111010100110001111010100011000000001010100110101011100011000000011000100111000110101010010100111100011001010110001001101000000100001110101111000010010011101001101100000110011001001100011100100001000101010010111000011100001010001111100110011101100110101001000001101101011001000001101110110000000001111110001100111011101001101011011110100001011010010101001000000001010011110100010110000011011010010111000001011111100001011110110111110100011101011111110111000011001010011111001110101111000000001110111010111011110001110011110001111000111101110101011001010110101100001111010101110011010110000011010101011101100001010100111011100010001000111000000011011110010000111100011000011111100000010000001011110001011110110000000111111110111011001100100110010000101100011011001111100111011000100101101100000110000100011011111011101101110100001101010100110010110010101101111111001100101100100010100001011001110010101100010011010000101010100100000100110111111111000011000110111101001101010000110111011001101110100000011101110110000001010000101101110111110100011100110000010111000001011011001111000100101011011010000001101110110010101100101011110001111011111111000100111010010010011110100000001011010101110010101000110010011001101011101001101111001111010001100101111000111010011111100011110101001100000111101000100101001010011111001100010110111000010101001000101101001010001110110110111111010111011110001101011100001010101101010100011100011011011001010101011011000010101010110111010001111101001110000110001011010111010101100000000000001000010110101001111011000001001101101101010100000101010011100010111101010101100011010111110110011001100001000001101111101010111100000010011101111101000000101011100000111100101111111101101111100000001111101101010111110010001001011010111000100000000110000110100110101100011000000010000111101100110010011000011000000000010000111101010011111101011101101011100000000011110011100010100011000010000010100111101111011010111001110010111110110000001010000111010011010000010010101101000001000111011000101001100111011011101011100010001000001100001010100111110100010110101111110001011011001010110011010101100001100011011011010110001100010001001101101010001001000100111101101011111000010110101110100100001010101110111111100011100001100100100001000110110110001100111001001101011000011110111100000010101101111111011110011000111101111010010001110111000001100111001000010010100101001000010110101010100111001100100010110000010101111011001011010100111101010010101001111100001010000011000010110100110100000101101111101011111101111000101001001101011101111011100100100110101110110000000110011111010011100001110100111001111001010001011110010001011110110101100101111101111110001011001010111101001000001110110101101101111001110010110100100001000101010010010100110110101010101011110111001000110110101101001001001000010101000100101010001011011010001000111011010100010000111100001001000100011001101001111000110001110000011100111001010100111001100010100100010001100111001101101010111010111101001001101101011010010011111011110110000000110110100000111000110010111100100100110100100100001001010110001100101100110000110011111100100011011010100000000011110100101001010000001111010101110001000111010010001010100000001011100010011011111101100000001000111110011110111011001101001101111001001110101001101111111000011111101010110011111010100100100010011110001111111110011001010011001000111111001011110100111001111001011011111100100010110000010000101101101110011011100001110001011010010100010011010100111100110100000101111010001100100101101100111111111001100010011100010001101011111011110100011001010110011011110100101001110110101110110010011110010000011000010100100111100010001010101000011111111010111000111011010001000010101111110100101110000100100001110010000110011100000000111101010001111101111101101111111010000110100011111100010101010111110101011110000010111110101011010101101000011100001100101011010110011111111111010100001100111000001000001001101110100001111010010001001000001000000011000111110001111001111011000000000000100101110010101000111101011011000001011110111111011100001110011011101100110011000011100100111100110010000111010000011010000000100100010101110111010101001100001101000100000010000001000110110000010000110000001011100110101100000101011110000010111110110001001100000000011111001010000010010000111111101011000000011100100001101001110011111000011000101110011111001011101100110001000110100111110101001011101110000100111000001001010011110011011000101001011011111100100010000011011010001000011110010011111001111001110011010010011101111010001111101000100001011010001111101001001001001110111101100000111111110011101011000111010101100010010101100010000001101111001001100001001101101001110100100111010110110101111101101111--------------------- +111001001111000101101101101001100101101100000110010100000100110101000001100110000111000100111111000100110110100010010111000011011000101100100001101110010011001110100101110001100110000111110001101101011100111001011101000010101011010011111100110010010001010011111111111101110110100110010100100111011000011011111011010110011101001010000110111011100010010000100001111011011110000100001111011011001101111111010101100010111011100100001001110111000110110111010010010010000111101001010001010010011011110010101111100101000101111101111100010010101000000010010101010111101001001011010000111000011110011001010001110000000011011011010110110001110000011110001000101101001001101110001010000111100110111100100100001000011101111110001010000011000101111111111110110010111000000001110000010010010101101000110000101010000001011011111010001100110101001101110100110101111111010011100000011001001111010101010101100000000001001110000010111111000101000001110111111000111101011110010111110001101111100011100011101101010000100011100110000001001011000101001001110011110011010011010000010001001100101010101001100000001001101010111101101011101100000011011101000010011111100001100000000110101111011101001011110110100000111101000101110010001110100001110011011001100010100111110110011101011010110111101111000011010110011101101011110010000010101010011101011100011000001001010111101100000111000110101001100010011010111011110100101110101010100111100000111110001100110110001101001100101110001011000000000011010011001101011010110010110011001000001010000101010011001010000110101011110111101111100001010100001101111101111001101000000100110110011010100001100001000000000111100001101100100111001011110011100011010011111100000010100011101001110011101110101011100001000100001000010000111110001011000100100100110101100111010110010000011110011101110101011101111001101000110010011111000111011000100001011001010101010101101111000110011111001100101001010110011010100011100011101000011010011010011100110110111000001110101111010010010101100100011011000001110111001010000010101001101000000111111101000110111110010000001000101111111011111100011011011011011111000110100001110000101011110101010011111010101000111100111010100010001000100000100101000101001101000001001100011011011000110001100111110011000011100010100110110001101000001001000101110111010011101000110000100100000001011001101011000111001100011111011100110001100010010000101101010111000111000011010111000111001001110101000011110011010010001001100000000110001110110110011001111010110011000110010101110110110100001110110011010111111000100101011111011101100010000001100110110001000111111110100101110011110000110010000001010011010000100011100010011100101101011010001111101010001010100110100110001111110111110000110011011110101001101110110001011110111110111101111001101000110111101100110000101001111111011000011101001110001010001101111101101010001001001110011100010100000101001000000100011001101011100111001101000001011000101110101010111011001100010100100111110011000100000000000110001000101011111100011111111111101010011110101100110010011000110010101001111101100011010010011010011110011001111001000101100111111010101011110001010010110010010011110110011011001110101110001011110000001101101111111000110001001000100101010001011000010110010010011110100100000101111000000111000011111001011100101101001111101011101011011011111010011010010111000101001100111110000111111001100100111101110110101000010110001011011011101101110010111010110111110011000110001011101011001110011111010100011110110101111101110111101001100101001110000100000000000100111111000101111011100111100000000110100011000100100111110011010001110001111011001001100010001101101001000001111111101001011000101101101000101010111101010001101001100000011101101101101011101010001010110001001010010101111001000000101010001100001110100011111000101011011101001001111000110100101101011110000001100110000011011000010101000110111011001000001111000110010111011111000110010011110101001000011001011011010000111100010010100101111010101001111111110100001010110001110100100100110010010011001110110000101010110001011110101100011001111110011100110011111001110001001110110011000011011001110000101111010001111010001100010000000100111000101010101000111000000110110010110010110111101110111000011101111011010110111010011011001110111001001011010100001010100000010100001100001100000010000110000000100011100011001111101000110110010010100011010000011001010111100110001010101001101101011100110100000010100111000111110100110011100000001001010111001010111110101100000101101111001010111010101000011001000110010001101000000000010111111000111111111011111000010110010111011010100111011000111100101001100101100001010100011001011010000011110110110011100111101000110111000011000010100110001000110010000111100001110010111110011111101101010100001111110000101110000000001100110000011111011001000111111001000110000100101000011111000010000001110111000010110001110010111001101000010101101100111000001011001101111000011010001001100000101001100110110001110010011011010101011000100110111110010001110000100010111110011011010111110001101100010010000100101001110000110011101000111010110010010000001111110001110101101100001000101100101011111110101101010110000011011010110001111010011001101111100100101000111100011010110110101101100001000101000001010000101011001001100110010001111000001111100110111001010001110101100101110101110010110010001110000110101111111000001101010101010010101010111010111001011111101101000000001010111010101100001001010000101110010000111111111000100001110110111000111010011000010011000000000011000000000111010100010100101100111011001100110011111001011110101110010110001110010000111111100011111010010101111110111001001110111100110111011100101101011111000111000101111000011110110010001101111111111111001101110000000110010011000101001100010110110100011011000011000111101100111010111000011010001010100000110111010101011010101101010010100111011111000111011010001010100000001011001110110000100010011010111110010000111111010001101101111001110101110010011110001101000001110010110111110010001001001000111110111100101111110110111011010111111100111100011111111010011111000000000010101101000011001010111101110001010110111101100000100100001010001100000000110000011011111111100011010111110011011001100110110010110101101111000000100010111011111011001000001011110111111010010001101101100111001001010101010110111011111011000110101111001001101100001111101001010011000100110011111001011100101000001100000101110101111110101001000101101111101110011001110111001110000011011011010000101110101100011011010110111100101100111001100000100111011110011101011010000111110011000101100110101010001010110111010001100000011001110101100010010011111010101001000110101100101101000110110011001011110010101000111000110010110011101110111001010111011010100000001000010001000000010111100100110101110110011111111001101000000101010011001001011110001111100110111001110010110110000001011001110001011001110000010111001100111101100110001000011101011011000001001111010000100101011000000001101101101100111000110100001100011100110011110000001001011110000000100011101110011111010001001111001101100100010011010110001110101000010101011000001001111010110010010110001110011101101111000110111100010010100101110000001101111111011011111111100100100000110001000001010000111001000111010101000000100000111111110001010101100000100110110101001100101110001011101010010000100101000100010000001001110010101011110000111001011111010010010011000011001111000111110110010101010001010011010001111110010111101101001110101110111011100100010010011011110001011011001010110111010000001101111001000011100110011110110101011011011000001010001111101000101100100011100010000001111001111010110001111010000111111101101010110011110010011001111000101000000110001010011111010110111110000011100010101000000111110110101100000110000010101011001110000010001110011011001000010100001001111100110011101010110011010011100110000000100001111001001010001111111010010000010010110101000010000010000111110101010001100010111010111110101010111101001100010000011110001110100111000111100101011100010010111001000110011101011100111101001111001010111101000111011111010111101100111100100010001100011011011000111111100101110001100001010101111111111001000000000101010001011011100000011010011110001110101000110011000001001100101011001100011001011011110000011100110101001001110001100011100000110000101011001011111011000111011101001000111010011111000010110100110000011100001001110100001100010010111110010000000000011--------------------- +010010000110001111101111011011100000000100101010000100110011101110110101010100010001011101000001000101101111001001011110000001011011000100010011001000011111111001110010010000011000110101111101000010011011011111011110010010101001011111000111100010011011010000101001101100110000101110001000000010010110000101111001111011000001100101000111001111010101001100100110011000110101111100100011100001000010000111000001001010111100110010111000111011100001100000100111001001101011101111101100111110001111111110100100111000110001000001011011111001100101100010001110010101011111111111100010110011111100001010001010010011010001111001001100011111010011110011001000001010000011110001101111100010001001101110001111011111101011100010111000100011010101110011001010110101000111111000100101101111111011101001101100100010100011110011110100010100100110100010111111001000100010010111110111001110010111101110000010111111101110111010011111001101001110110000000001110010011011101011100000110010011101111111001100011001001001000010010101010110111101000100111111110001001100111110000001111011010010000101100010001001101011101001011101011111111000101001010001101101111000110000110111110001011011011110110011110011101100111010111110100001000011001100010000101111110000011101001001000101101001001111010111010101111001011010110000010110000000100000101101010101001110001011000101111100111111110100010001110110101111111110010000101110001111011100001011010111101000111100001001000010101011111011000000010100011111100011010100001000010001110011000111001000101011111110000011010100000111000111000111011111111101110010100010110001010001000101111111111011011101000100101011000010101101111101011111111110010100100011111101101100000010110101001000110001010010000000110000110110101101100101000010001000001110101110111101010010110110001011000101000110101110001101101011010110110111000111110101000100111111011000000100110010111010101110001001100110111010100101100010111011001010111001000101101111111010000001000101000100101011100101101111110101010101001010111011101010010100000011100101111011101001001011101111110010001010000010110101110111100111011000110110111010101100100010100111101110000011011010100110100110111111100011001110000001011100000010101000010010100100110110101110100000100001111110110100000000101111001111011001111100111111000000010011101111000011001010000110010011111010101110010010111001110111101100100010111100011011011100000001110000001011111001110101101111010111110111001101010000011001110001011111011010101111110001101011001010100001110110110001100101011110100110000001111010100000110011110110101011100010000000000010101100110000111001011101011111001100110001000001101101100001010111111010001001010101011000001001100000001111100010111000111011101001010011110011000110111011001101001001100001111101110010110100111001000001011000111010010110011010000011100110111111100111100001101101111010000111010000010010000111100001111101011101010101100100011011100010111001001111001011011000010110011111001011101010111001011011101110001010000011100000010010101110011011011111011111001100110010010001000000111100110000101111011111101010011111011000000010001011000100010000111011110001110000011010000011111101100011001100111101110111000011111110000011111100110001100101001001101011000101001110101110010011110011001101110011011001010010001101011101100010011101111101111111100100011010010110001001001000101000110011001100100001101011111100111110010101010111010010101000010101011111100101000010101000000010000110000101101110100001100000000000110000111001000011010100101101011001111110001111001010001000101001101100010001010000110110010011111011010001101011010101101000101110110100010101011111101001010001111011111101110000011001001101100110111010111111110001101101101110001011000011000110011000100011101110101011000110111000011010000110011001001100011010111011000101011011000011011101000011011011100001010101011001101010010011011111000000010011010110100010010101001101101011101010010110000100000100010010101100110111011110111111001111110010001110010110100011110000101110010100111101101101110010010011000010101110010001110101100000000000110010101110010011110010000101001111000111000010010010010001000001000100101011001010001001001101101101001100111011010001111100100111100111111001000001111110110111110010010001111100010100110110001010101110010110011000000011100010100100110000110001111110100000110000000001001100111110111011111100001001101000110000001101101001101110000101001011011110000011111001111010111011100001010100010001001100000010110110000101010111101101101110000010001000100101001011101111101111111011100000110001101000100111000011110001001001010111110010101101000000010110000010111101011111101001000100101111001110010110101110101010110000010011101011010110101001100100000000100111011110110101000101011001101010000010001101001011101001101010100011111111101011111101010111000110010111010100100000111001001101000000000011000101100011010100101111010001100110101100110000110000111111010110000101011101001101000011110110010001110111001000100101010111001110100011110100010010000111100100100101100001111010011110100010110001011011010110010011011001000000101100100001111100110001111101000001001011110110111110010000010010011011011100101000100100100010111100000011011011111010111001110111001010011111011110100000001010001110100111001110111111111010000100010101100010101111001010111011010110111101110100110001111101000001010001111000001001111111001101010001100101100001001111010100111001100110101000111111101100001000111111010100101001100011110111111011100100111110100010101000010100000011101011110101101010101100001001010101110111111010101000011000110011111000001001111001001001101110000111101111110101001001010010011110010011010101111100110100111000100001010111001101101000111001100100001101001110001101000111101100110110000100111111010010000110100111101010000010010110110100010011011010010001100011100111111110000000100011011010111001000000111110100001100011101010111101011100110101010111100111011011000101010111000010001010111010111010000110000010010111111001011101100011111000011010010010010000111100011111110100110010101100011100010111010000100101001000000011101010011010100111110001111100010011010100000110110011101100011101111110100111100100000110001100010000001101000000110011000000011011111111010100010110011110100001111001111100001011110101011011000000110001011010110110000100111101011000100101101101000100101001111001011010001100110110000101010011111110010110010011101001001000000111001001111110011101011000001111101010110111100010100101010100000010011100011011100010100010110101110111010100001011011001010000100010010010101011011101100001111111010100110110111000011001100010000011011001001111100011011100010011100011001101101110010000111001011111110011011111000111111000100011000111011000100000100111100101011111011111111001001011101110110011111100110110000100100101000000001110101010010010100111010101011000001010010110010010000110001100000111101011000100101011101000100000011000111110100101000001100101001100000000100110011111010000001111110010010011101011111001001001011101011011111000101011000010001001110101011111100000101000011101100110000010010000110100001100010000101110010011111101101001110011001001100100000011010010100000010100000010011101110100100101101000011100000110001000111101100110100111110100101000110101111110101100100010010110101100001011101110100000111111111100011110000110001010111001111110110110111011101111010111100011010100010100110110111011111110100000011110000111110101011111011000010110011010110101011000001001010001110110000100111001011100110110111010101110110000011001111010101000111011011110011110001000111101010110101111101011011000100111110000010001111101101001101000110011000101100001010101111000001111100001110100100000001010111100011001010100011110111001001010111100100101100111001011111110111000110101010000000110010011010010110011011110111100101111100111000111101111001011101001110010111110000101100111010010010010010001110010111001110101110110100000000100011001011000000100101011101110101001110101000010111011101011111111011001001010100001010110110101111101111110110000110101100111111001010110010101010101000100101011001011110110010000101100000000110000110110000110111000100011100010111011111011011110010000100111100001011011110101000010100110110101100100000111110011000101010100011110101000101100110001100111110111100110000010001010011101110010100011010001010111011010011010111011111111000110100000000001010100100110001--------------------- +110011000101100001011001001100111110111000110000101101110010111110110100000000101111111001101000100000111111000011110000100100111001101110111111010001100010100111010001010111111000011110110111111001010000101001000101110001010110110011100001000011010111101101100110010011001011110111101011000101011001110111000101101100001111001110111100000011001111011011001100101011000000011011011011100110100110101010010111110111101111100011100110110001011100011111011111010100111000011011101110011100011010100001111010110101110011001010110011100011100010110001101011101111110110110000010101100000011011111010011100100101101001010010101010001010010001110001110110110011001010101110000001111111000111001110100100011011001111001010000100001111001001100000110010010010010100010111111100111100010111010001010001001010001100110000010011000011000010101011001101001001100111100110100111010110001110110111110000100110111010100011000001000101010100110110000001110011000100011110000111011000110100010010101011100100011110011010101010101010011101111001010101011110110111111111001001010000000001100011111111000000101011010010110111011001000111101010001110101001100100100010111010011001000000111111001101001101100010001101011011101101001011010110101110000101001101011101111001001011100111000001111100000100111111001100100110111101111011010011110100000010001010110000000111001011111011111101111110110100110011100101011100110001001011101000000010000001001101011010110111001011011100011110101100000110011111110010010000010100100100011100111001011011000001101100100101101011000110010100100000101011010000110110101100011111001101100111110001110011000001111011111000010011011011101101100100101011001011110000011010000110000010110100000010000011110010101101001100110100100111111001100101110110110010110110100100111011111010101101110011111010100111010000010001000011001010101011011010100110100011111100111111000001111000110011110111011110101100000110111010100110110011110101110010110111001100011101100100001011010110000001111010011111110000110001110010011001010001101001010100010001111110111110110111000100100001100010101100101011101100111001011111000011110011110000001101110010000000101111110011110000111010011111010011011010001000110110000101010111101101010110011100011111000101001101011111101011011110011101111101010011110111100001000111101101111110100011100011110010110000110111000111110000110010011010111111001111110010110101001010100001101011001111000011010001101000011111101011011110110001001001000101010100101001111010110111010000001101111101110001101110100110110011010101111000011011010100010001010101010101111101100111110001011001000100101001101011001001101011011111000010110101010010011011111011110010101110011010101110011001100101000111110111001010001111011111100100011100110110101100001001001000110110011101111101010011000101101000100111011110010000001010010101010010111010011010011111011000100000000110000011000010110110000010111111111111000111011101000011001111101110101101001001000110110010111000001101010010111101001110011101011101001011011001111110111001000110011010010101001010111100001011111011000101000001010100010110000100010101011010111111100100101001100111101101100001111100110011110100010001010000100000001001010110001100000010010001111111010000001111001101001100001011010011111010110110101011101111010111001111111101110001000011101011000001110111101001101100011000010100001100111111000110101110110011100001011111110111100011111010101110010101111000010000100001010110010010011000001000011011110010111100110001101110001111001111101101100010100100110001110000011010001101100011011111010100011001001011101100010000101110001101010111001011011110011111000000000000101100010001000011111010001001001100001101110100111000010011011110110010001011000101010101010101010001111011011110111000010100011001000001001111011100001011101101111100110101100111000101111000001010011010011101111100111000000100111000110100011001100110000011100111100110110101101011111111101111010010010111111001111010110001100110001001111111111101110101111000000100011101000111101001011110000000110111011111011100111111011010111101000101001000010100001010101110000101100001011011010000010000101010010101000100000010100000000100010101101111001010001111111111110100000011100100111000111001101011000000100001001010110110111000000011110010101100101001111001110101101001001110011111100101001101000001101111010000000011000010010011000110100101100110100101100110111010100001111010100111111000000100000011010101011011101000111111110110011011001001011111101110010111100011100000100110010001101100000010001111011001010111001011100010100000000001111001110011110000000001001000111110101110010110011000010000000000001111111110110100001010001111101010111111001110000010101001110100011000000110111001101111101110110100100011101101101001000100011100001001000001010111010100111010100010001111101010010000101101101001101101011101110001000110100111000010001001000110110110100010011111100011100110111000100110101111011110000111011101001101111100111010000111110010101100100010110011111010001000100100110010101010001110111000101101000100000010011100011011001101001111011100001100111101011100110100100100101101111101001001111101011100101111001110011000100100000100111010011001100010111110011010000101101000011101101111010010110101100000110100100001011000011111011101111010001010011110010110111000010101000011010111011101000000110101101011110110101100001101001101000111011111000001101101110001110000111011100011011001011101101110101001111101110110011000101001110000001110101101000011100100010010011000010101101011111000011100001100000010011010000100011110110011000000000011011110101000001111100110001101000101110011111110001100011111101101010101001101110110111011011011001101110101001001000101110110100000110001000011110101100010011001110001000111000010110110101001110101100001011101011111001100111000011000011100110000101001111000001111111010100011000110110011001101110111110110011001011001100110010110010011111110111000010001001011101101001111010001110001111000110001101011101001101010111110101001100110011111101110110010001111001100000101110000110110000000100010010001010000100101110001010100001011111000110011100100101011110101000101010100111011111100110101000101100110111011001001100100010011111011011110101001100110101100101000110110000011100011010001000010011011000100010001000000011000010110001100001101010101111100000110001101000001010101110010101110100000010011111100011000010011000000000001101101110110001111001000001111011011111111001101101111000111110101101101111001111010100000101110000010110010010001100110111000110100010110011001110111101101100000011101111110001101111111110111000011000110100111101100001000100001000110001010001110101011101010000000110110011011111001011000101000101111000100011111001111110111110000000011100010100100010001001001101101000100100111011010100100010111110110000010001100100010110111010011100101101001111000010101110101000101101010100101111011100000011110010100111000000000101010100000010000000000011101100011001110110000011111111100000010100011010000111000000101001001100010110000011101001101101011011111111011010100101001100001111101111010101000100110010101010101010001101111010000111111100001001011010110111000011010001011011010100100101100010010110100010010110111010111010011000100010010000101100100110000100100101001000011000111110100111111100101101010010000000000001110110101000010100001111110110011001110100010101110101111010101000000100001110000011100000110111110101101100110110011001101100110101110110001101001001110101101100001110100000110100010100100011011111010001001101100100001011011010000101111100011000111000111010010010000000000011111001010110100110111101001011101111101101110011000000101001001100100111001101111111101101001000110010000101011100111000000010001101110110001101110010010001001010010101110001011100000011000011010100010011111000111010101000011010010010001111010110101011000100001001100000110100101010100001001101000001000000000000101001111111000011010000101010000110110000100000010000001110000001001000100101011101000101000010110100001010001100000001111100100101100011110100100101101011011110000100101101001100101101100111000100101001001111100010001101100100000010110001110111100001111011001000110101110100110101010010001011000101100001110101000000011110010101111101101111100111110100001011011101111000000111110000111010100010101001001101100010110001101100010110111101010101001111110011001000001100000101101010000100100000110001--------------------- +001001010001000101010100000100011011001111111110000001000100100111000100100111001001001010011110011000101110110101010110110111010010001010011010100011001111010000001011101110011010110101101000101110101100100001111010001100011010111111010000100101000101000011000000001111010110101110101010111100011010001001111011011100110000011001101111101011110110100000011101011100011001100010111111000000001100101010110100001101010110000001101101010110000010010001100001110010001011010101011011011101000110011000100101111101001001110000110101011011110101010111001010111100101010000001110100000010110000100110001111010011001000110011010101100110101000110111100111000010000010001011101110100011100010100010100010100100101000000111110111001001110001001111000110010101101110010011011110000101000111101100100110101100110101001010001011010001011010110101000111111101010011110100011110011000101111001001111010000011100000110001011001100010001000100011011011010011110101111110000010110111110010000010010110011000110110010011110011100011010011110011111110011100010010011001100011101000100111000000100011011010001111100110100110101100100000011110000010000000101011000100001010111101111101110100000001011000001010111111000101100101010110110010111011011001101001000010100000001100101010110110111011000011100100111000010010100101101001011100101110001100100100111001000110011010100001011011101010000111101011000000111000101011110110111111001010001100011001010110011101000101111100100111011011011000111110011110001100110000000000101100000101011101110100110110101001111100010110110011011001000110000001000101110001111100100000001011101100000001101010110101100110101001110100011101000111001011101010000011111101011010100101001001010000010111111001100010101001001110010100001010111001101001001111000010110010110110010000001100111110000000101010111010101100001010001110101010101110111111001010010011011111110111011111011110111010100110010101100000100111110101101010110111100111010110001010110000110101010110011011111101101001001011110111100011101010011000001011011101100000011110000011010101100010001101011011110111111001011010001111010101001011011111011001000100001100011011111101001110101111011000101110011110110000101101111100100110010110001100000101100101111001000101100101110100101111010101000100110011000111000010101100110001101011110000001001101011000110011111110010111010000111110001101110010001010101001111110011001011011100101110111000110100100111110000100001000001001011101101111011010111101101000001010100011011100011000010110101100110111000000011010001101001101011101011011101100001001101010001011011111111111110100001011100011100000001100001110010101011010111111101100000000011010100011000101100001011110001001010110000110100001111100000110101010101111011011100110010010001100110110101101011000110010101001111010100110010011111110100111101101010000100010110111100001101000101011011001011011011100100101010101110001100001101110011110011010011100101011100010000101010001100010111111110010110111010000101010101101101111000000111000000111010011010010011001001111100111000011100110101000110111101010100111001100101010000010111111001010000100100100110010001001000001001001111101101111010111000000010010010110010011100101000000111010000110111001111001110111011010000001110001111111111000000100011001101001101010111100111010010001111001010110110101111100010011010011011111001000111110010111110111010011011110010011111111001011001000101010101101110010101100010100101001010000110110000011100000100101111100111001111100100111010010100111110000011001011101110000111000010111110101001010101110111010011110111000110101000011000000100101001101011100100010100110111001100000100110000100100011101011101010111001001100110100010101100001110001101110110011111111001110100110011001110101001001110110001010100101001011010100100101010001000111011100011110110001010110000000010011101011100010011011000100000010111100000110010110101011001111010000011011010100111000001001101001111000000000011100100001110001001001010000000001000010010110110110101110001011101011000100100001011010011000101000110101110100010101111010000111011100011001101100100100101110111010011101011100011110110101010010011000001100110101100111011110110010000100100101111111111000000000010111110000001101101010001101001010100110101000000010000011100101000111000100101011101011011100011110111111111011000101101101000101101011101111000101010001110110000110110111101111001001110001001011010111001101010011111111111000011000111000001100110010101100001100011000110011110000001101101110011011101110101011101001111101111011111100010101011111100000101011010100111100001001010001000100110101000100000001000011010111110011101101100000101010100010111110000100011111001100110101001001001110000001110011000011111111001010101101000101101010110110010111011011011111001000101001101101001100111000101010100000100011110000101101100110111000010111001011101110100010110000110100001101001110011011011110010001111110001000100001000101100101100111010000000011110001010111000101000100011110001000000111010111111110101101100101110100110110011011101101110001010111001100000100100101111011001010010100011110100010110110110110000100100111000101011110011111101001111100001010101100111111101110111001010000111100111100101011101101001101100011000110011100110110000110011001001001100011100110101010100101100010011111110011000101010000100010111010110101001000101011000001010011100100011110111111010010110000110011110100001100010001111111100011101010101010010100001011111101111010001110000111011111101000111100100000111001001111100011010111010000100100110101001101011010011110010100110111111111110101000001111100110000011001001111001010111110100111101111000000000101000010101000110101100110101000101000011010000010111100100100001011001110100100001110011110000010100111101011010001110101101010110010110110111011010101000110010111011100101111111010110001001111011111101000011010111011010110000011001110001100100101101010010111111011000100011101001111111111000010010011011001101101110110110101000111010001011100100010000100101101001010001111011100101010100101100110011001111011101000010001101111010110101010000110110001111110010001000101111110110111011101100000010010100011100011000100011011001100111100111100010110010110010111111101010010110100111100010111111111011011101001110101011100101101000101000000101110101100110100110101100101111000001110010100011011000110000001110000111001000010010110100110100110101110110111100110100000110010011011101001011111111000001010101010111110010011001000000100101111010001001010101101010011100011110000111011000110101110110011110100100110111100001011111100100010110011010011101100111100101001111000001000010100101011011110001000000000100001111101000001000110000100010111011011100100100010011101001111000110100100100000101111110111011100001100010011100010011011000000011010000110000110010010011000001000011101000011000110000110101101100100111110001000100100100111101000110010110011011000010111110010110110001000011111010000101100010010111100101111011110111101000010011100110011100001010010011011010111101101110100100101111010100010100111101110110111110111001011010001100011111011001000110011011011010001001010010110011001111001010110001001011100010111010000111110010011110001000011111011101001010010000111111010100110111100010100110101011011001001001000000111111111111010011111110011001101010101101011001111001100101001111100011110001000101010101111011011101010001111010001100110101000001010010111001001010101111100011101110100111000001011010000100110010010011110001000011001110101000010000011010100011111010000110110001111100010010001000011010001001010110101110111100101101111110100011011100001101011101000010111100010111110110100011100010001100111111100100011010010011000000001001001000000010011101110011110010111000111111001000000111010000000100001011000110101111000000110100011111110010110100110111101011111111000011001000001001100000010000010110000000000100110100001011100001011010111100101011010010000000000011100110011110011110110101100010110110001001110011110110110011001000011110011010100000001100111101111011101001111011010101010000011001001111011011110000010111101110100110010110110001100100000101000100100100001010111011100100110100000000101110110011100111101000001000011110011000011000011100111110010100110111100001111110101101001000000001111101100100010001010011101100101010100010111110011000011010101101111000011110100101101001000010100000000011010111110001010110011100001001001001010010111--------------------- +ls384cwds +010111101111011100011001100110101010110111010001111001010101101001010000110000001111100001101101010110101001001001001010100001000111011000101111010110100111110011111011100100000110101000101110010100000000101011001110111100011101010110000001010001010101000110001010010000001111001001101011101000110010010011001011000011001111011000011010000110001000000010100000100001101101001101010000100000100111101010101100000100001111111000111111001110111100101100111100110010100010100010001111000110101001001010110111110111011111010000010110101100101000100101011011010001110010110000100100010010101101101111100000100111110100001001000111101111110000000110111001010101010110100001101111100000001000110010110101011110010100000010010010010001101010110110000011100110011110111000000110001111000101011010100100001101110011001011001010110000001011111110111100111110101101011001111101010001010111011110110111010111011111101110110010000000011100000110011110100010111010001001101110101110011111001011100011011001101001000010101101001011110100010100111110001010010100111000111110000000101001001001111010010000100110101000101101100011001100011010100110001101011001101110001011110000001010011000100000111010011110101000100101100010011101100101111110011111100110011100101000001010000110100000010010101101010011000010011111100010111001000011100111010100111100011000111010110100111010000101010110111100100010010110001001101101011010001011111110100101001001011011101011000000110011010101001000011010101001111111110100010001011110000111000100100111111110010001100110101101110000100100000001010111000000001001001010101100000011101111101000011000101001010110000101100011000011000111101001101011010110001010011000011011101110100010100101110011011011011001011100011010110101100110001100011101010110011110101111100011110100100100111000011010101010010110011101001001000101010010010010110011110110111010011000000110101000101000010100000000000001011111001001100100011110010101010000000101101110111111101110010101111000100010010101100100101010000100000110001000101010111011001111101011111100001011110101110101000111110001010100101110100001011011010100111000101001011001010001011010110000011101001111011011101000111101101101101010010100001001111000000011101110111101001011000101110111011001000101101001100111100000011011100110011011101000111100101111101010101010011010101001010010001110100000000001101101011011100111011101000001001111100001001011101010011011101110010101000100101000000110110101111101100000110110110101111111010001100000101010110000000111011000100011010100001011001101011111001001111111011111010110001101011100111100000001101110100101000111011100011101010000100000001011000010101111100000111110001101111001101101001000100011100001110000100111100100111010101100001100011101011001010001101011111101110011100100010110100101010000101111000111001010011111011000011010101111010101001100000110111111001101101011100111101011100001011110011011011001010100101100111000011101100001000000100100010110011100001101101100011111011011110011011111111101001011001000010010100110110010111001011111011010110101001100010110110110010010110001011001010001101100101011111100110110000011110110111000011001100101101011000011110101000111100111110101010100010100001001111110010011111001111011011110111100111000110001010001000111001000111000010110101101001111010111100111010110000111000101111100010001000010010100101001011000000101000010110011001111001110001001100011110011100011011101111010000110001001000011100010011111000111000111000111111001010100010111000100001001111101101001101010000010100000001010000111111111101001100110001011111111100001011011011111000000010001001011010100100000000100010011011110001101100111111100101000101100011000011111001010110011110011101100100001011011010010101100010100001010100001100010111010000101110110110011001010010010010111101110110001011010110000101000101110011110101000011001101011100001000000001111001001001001100100101000000001011011100000101110101011101001110010100001010011110010110100001011100110000101000011110011000111110100110111010100011101100101100100001101010110111110011010100001001111111001011100011010011010000011100000011111011111010010010000100010111111100101101001010010010110111101011111000011111000010000000000110110101010000101001001110001011101100011100011111100101111011010010100010010100101000000101110111111110001100001001000000000001100100110011110000001111100101100101001001111000011110010101110100010011100111000111101101100001000110011100111111000011001111011011101100010000111111111001110011110001011000001001010000100101101010100111101100010010101101110100111001111011011110101000111001000001110010001001000010110001100101101100101010101100111111010011110100010101110010111100010101111100000001110000110001100011111100001011001010000101011011011111001111101111001000010011110110001000000110000001010010110110110101011011110100010100110000111001100101100101011011100001100011001100010100100111011101000011110110110110100101011110011010100101101111100100001011100111101000000010011011011100110010010101010011010100100101110110111101110101101100111010010011001011110001101111111011101110011110111000000000000001001001100011101001011000001110111100100011100001010111101001111111000101110000011111101101011000101100110100010111000011101111000000001001111010010111011011111000101111011000010011010001101011101100100011110110101101101011110100110111001100111111101000110101100001001001100010101101000111000011100111000000010100001010110011110110000101101110011000110000011101111000100010000101111011111110010010001001001111001100111010100001010111101111110101000101110111101101111110110010000110001011001111010000111001010111001010100110001011110111100001100000010101001110001011100111111010000101010011100101001111101110010000001101111101011011101011001101010100101100011100101011011000001001110110011111110000000010111110010111011111100100110110011010101101010110011100111110000011000001101001000111001100001110001111010100011101111000111110100010000101101110111100100101110011101101000101101011011111011110100111101011101100001101000110110001110000110100111100100100110110100010010110010111101101111100011111000101001011100100110111011001110101110101010101101001100010000101001111010000010100010101110100001000000101101000111001000111000111011011000000101100101000111100011110011010000001001101010010010001100110000101011110001001001010100001010001000100000000111101001101000010110100000101010011100100000111111010101110101101010010000100000010000111000010110000101110011011110001101100101110011010011110000011011101001001110000100100110000101000111010100101101011111000001111110111001001100110001000100001001111110011000100101011011011100001001001110011011100101100100110100010000001011111111011101111001100101001011100100100010110001000001110101000000101111100101100100000111010010100001011010100101010101101100010011011011110110111100101100010000100011110011110100001101111010100100111101001011011010011001001110101001011000110111100101110101100100010001001010110001000001001110111110011000011000011111111010111000111010100001100000000101101111100000011000010000010111001100110011100010100000001000111101000110011011010101011001110101000001101000101010001100000110101001011000111110101000000001101101111100011001000010111100110110011101111111111000111111001110100101010100010110100000111000010011000100010001100011000010011101100001101101010010000111010111110100011101100100000100011011101111000010001101111110101110011100011111111000000010101011110110001100001100100100001110011110001111110011110100001010110000011100101001110111001100111000000100000101010111001011111101010000100011001010011000110000101010110001011001000000110001010001111---------------------110011110100101100001001010100001001000010011010001011101011001000000010010101111011101111100001101000100111111110000111000110001100011011011010100101010101001100101110110100101011011110010011010110101011110110100111001101011011110010100101010101001000000011010001001101001110101101111011111111110111101010101101011001011110110010101110100100011101100100011111100111110101000101101111010101000001011001101011001111110000000101110000100100111101110011000110111100110011011011001001111111110110011011010101101111011100110100011010110010101111001110100000100111010111001010010000100000010000101110000110001000110001101100110000100100100011001001110100111101111001010101011111000011011001110110000101010000100100101110000010010001101000101000100110101100111111000111100101000110111011110110011110001110111000000111001111101000001001110000110011101110011011110111110111101111110011001110100111010100110011101010011101101010101000110100010000001010110011110011010010100001101000011011110111011110101000110110110011110110010100011101011001001010101011011101000100100000000101100000100001001001110101010000100110001000100010000101001101110001000000101010001011000110100000101111110100011010001010110001101101010010001111011110100110111010000011111100011011101010011110010101000011001010110110111010011101010010011111010111011011110101000010100010100101010111001001011101000101011011011110001111110010111111101110101000001011011011111001101110101111010001011111101011001011010110100101111101000001111011011001100011110001011010100000011111111111111111100011100111110001001100011100101010011111001000100111111001111110100101100110101011100110001001110110110011001000011010000110110110010000001100111010101010111000000001011011111001100111000000010000010111010101001001011100010110011101011010001110011000011010010010111100010000011010010111100011010100010010010001110110110010001000100010000011110100001010111010001000101010110001011000001001000110101100010000101100100000001001111111011101011010011011101101011001010110000110110110100000001010001001111100100001110111111111111010001100001100000100110101010000000111000111100101100110110110101000011111010010101110101010001001111110001111011100010011110001101000000010000111001010011011000110110011101000110100100110001111110001000100110001010111000010110111100011101001000001101010011010001000110010110001011100001111000101001000101110010001101000110110001011110011001010011001110110111110010011101010101111100111111111100010010111010010011010001101100110111000001110101100011001100001001010010010000010101011001101101111011101011110100000110001010101110000110010000011001000100010110111101011011110100100111100100011101111101100100000110101000101001011011110001110001111010111100101110010111100010000100000101111110100000101001111000001101011110001000010001011010111011101100110110011010001010011010000000101001111010001000101110000010110111011001110001001111100001011010011110100110101010100101100001011100001110010111011111100111101100001100101110000110100000101100011010000111011001010111001010100010101110001010111111111101110101111011100110100110100010100111001010001011101010101111100101101101111110110010101110101100011110100010000001111000000001001110111110001101100011100111010001100000111011101111111100101001110100100111011111011110000011100110001000100100100000100000010111110111001101110100101110101011100101011100000011111010001101010001110100101001110011111000110011111100010110100111110101101101001111110100111011001110110110010101011011100100001001110111110001101110001101101001110011010011001000111011100101111100100100010100110010000010101010111001101010010100011111100011100001111101001100101001110110101101000110100110101000100110100000101010100001000010010101111001110011101111010001101000011101010111110111110100101101111001110111101001011000010100111001101011001111100011011111100000110010101011101001100110000110010101000111110101111111110000010100100000100001000010001100100010111101101100110111110110000100000101001001010011111011011000110000100110110010100101101111011000100000010100100110001000000111111110001000110011000000101010111011110000010100000011101011000010101110001101110010110001000111101110010110111101101001101011001001110101010001010011110111010101111101010001011111101000101100000001101011000001000000100111100010011000100001001010001101000111100011001001110011001011110010101011101011101100011111111100010100000010001011100111011000100001111110011010000011101001100010111010010000000000011001010000111110011000000000100110011001000101010101111011000101101011101011110101110001001111100011011000001001000101010110100000010110101001111000110110111111100101010001101100010111110010100111011101010000100010110100011101101000100110001100110000101111011000010110011110111001111101100010110000101111111011011111000100101100101111000000100110011101001000001000011101110000011010001011010010101111000011000001000000101111111001000110010000100011011101100011011010010000100101010001111010010100110100011010100100101011000001100100111101100011100101010001011101000101001111101001100011101111110011111100111110001011111010101110100010100000000000100100000100101101101110001000110010111111111110110001100110101110100010101111110010110010100011100010110110010001011101010000101000010100010101001101111000010110010101010001011100100100001111110000111101011101101111100001110110011010101000000010111011110100011001110100000110010111100000100101011001111111111110100110000000100100010101001100100001100101001010100010101000011010001011100011101101011010100101111001111111001011101111111101110000110111001000101110011111010001001110011111010100001111110100110110000000000111011111100101100110111111000011100000001110101111101001001110001100101100010110010110010111110000000010001111111110101100111001010111110111001011111001000111000000000000101110010011110010111010000111001110010101110001001101000010110101000110111010010111001100100100101001011001111001111101011111111110001110111001111100100011110101000111011011001000010111100010101000011100001100001101001100100011110100100110110100011010110100100101110010010001010010011011111001101000100101000011010100111001010010000101000100101010010110100111100010110101101110101100111010111110010111001111010111111011001000100100111110000001011000100011000111101010101000111100011001011100001001010001110010001011001110101111101111010010011101011101111010111001000011111011111011000111101100010110010101010100111001011110011010101111011100101100010000010011101000110100011000111000010011011011001111010110110010011110100001001000101100001011100010101111110111110000111101110001101111111001000001101000110011111101000101100111000110111110011100111111010011100111110010000100000010010111001001101011000000010101000000001110011000010101111110001000010010100110011110011100100111010111010101001111000010101111000011001110111010000000101110110000100011010000011010010101001100000101110011111110101111101110010101110100001110111110001110111110111000111001111011000001110111010101101111110000110100100001001001010110110001000010100001110111111111011000111110100001101010011000001000000110110010011100011001011010001110010001111001010110010010110011111110011111111001011010110011010101010001100011000111010011000111110001000010001101110010111100000011000100011010001101101100001000011100111101100000011011111110101001001100000010000011111000101101001101010011110011001010100110111110101110111100110000100111100001011010100110011011110011011111010110100011000010111101010010110010100100000101010011001000100110001100010011100110101111011001011100100101100111000010010101110110000100101011000000001011100000010011110100110000110110001011001111001010110001110011101110111001010110101010011000110001001010101110010011100110000001011000100111010011101101100001010110110100100111011100011010011010011110011010100011101111001110010101111011110110111011100011011000110000001111101101100100111000100110000101110101111010111101110000111011010111101101001000110000001010111111111100110001001101111010111110100010111011011101010001100110000111001001001000100111011110110010110001010110011101101001110110111101010101011110010100000001101011101101101000101111101111100110000100101001110101100010011010001101000000111010001001100000010000100101100001111100000001110010110110110101110000011110011011100000011110010100111101111111010000001111110110101100000101100011001111110100010100100000110001111111001011000110000000011111111111110101101000100101100111110001000011001101100100000010011010001100001000001001000010101000011111001010000111101011010001011000100001101100011011111110011100101111001100010011101001100011011101001100010011000010111110011011001011010011110110001011101000001111101111100010000011001100011011101000101011101110011011100011011111100100000010011101011100011110010101110001101100111011001111111110011101100100110000000011111111010001110010010001010101110111111110111000000101101100101100101011100000101100101011101001100100110011101110110000111010111100000010100000001010010110100110100001001011101111000101001110000110101100101110100011000010001100001110100000100101100110101010001100101100001001100001110100001101110001100100001001100001011101010101111000000100100001100101100011011010111111111011001110101000110111110101101000010111111100100111011101011000010110101100010010010000111100110010011110101011000100100000000010110100010001100110001100111100011101010001010001101011101101100100111001101111000011111001001100101001100111100111110000000101100100001101000101101110111011010100010011101000000000001110101010000011000101111101111100001010000001110100000011110111011100101100010011100011110101010001010011010010110110010010010011011011110100100100101110101011111101010010101111101100001100101100100000101111001111100111001001001000111001110111011100010111110100000101110100010010110110011010111010101000010110100000101000000100111101010100001110010010001010010110101101001100001101100111110111011010010000000001010010010110001010011110001000001100011111001100001000111111000010010011111011101000000111010000000000101010111011101100010100010101111100000001101001101101100000011001100011111110101010000110000101000100001010000011001011010011011110100010110010000010011100010011110011110111110110011010011000100001000100000010010001111010010001001001010011011111010111010110010000011010000110111000001011011011011101101010000000100110010111100000001110001011010101100111011101011100110011100101111011111010111001111010101001011110111011111100001101111010101000001101110000100101101110001111011011010100010110101100010011000111010111100110101001110100111100010101011001111010010001000000100000010101001110110101011100100101010111110010101000011010101010101001010010111010110001001110001110110111111111111110101101011111001001100011001001000110000100111001000100111010001011100001110000110101110111100111100100001001010011010100110111000001001110000111100011101111010110101110001010011000001001011001001111011100001000001011001101000111010101001111101000011011100010011101110111000010000100100000000110000110001110110000100011011001110110001000010011011001110010011110001110100101100110000101011001001010101111000010010000000100010111010010011110100100001101000010111111011110010100101001000101111001011111000000111111001100011110001101111001010010010100100001101101010110001001111011111100111101111010111101001110100011111011000101000100100010111010111111001111110000000100110001001000010000011110011001110100011110101011111010001000101100011010010101010110111010000000111001000110100111010000001001110111100011100111001101010010001111011111000000011001111101011000100010010010100100110011101100011011011111000101110010111001011111001011111011011011001110100101010101101011110110011111010001111110100111000000111011111001100010110000101011110100101100000011111011110111111101001110101010011001100001010110100100110110111101100100111111001000001010000001011001100011100100111101000111011010110010011100101110000110001011000111111100100010000000110101011100001100100000000010001101111111101001110111101100011010110011111111000000100111100001011000001001001101000001011011010010110100101000010010111110101101010100001101010000011110110011110001110010011000000100001010110010010010110101010111010001101110111001011010011100110101110001000100000101111000110100011011100010010110110010111000111101011000010010001110111110111000101001100111100100101101100110010110110101111110101011001111100011011001111100001111110010011100000000000110100010111110000101011110001101000000011110111000100000000101010010010100100101111110110111111101010010011100000100011100111001000010010001100011001000001111100110110001011111011111111001100101101000011111101110110101010000100011101001010110010000011100101001011100001100110010010110000101100101001101101111001101100010101010110111010101110101111000011011100100011011110101011010001001011010111101110101100000110110101100001110111100101100100001100100100100001000010011000000011111011000110100001011001001010011000010101001011110110101110100101011010110100100110001000100001010111000110011111011011101010101110111101000101100111001010111111100000011000111000011001111011000011000000011111111010001111001101101001110111111001100111010000001000100101001110011000111001000101110111010011011010111110111011111010111110000010101000101110100000011111100101111111101100101111011000011111100000111110110011001001110100010001000001101011001000000001011100100111101010110000100100101001101101011110110100111101101010110110100111101110100001011100110011100110111011011001010100001000101001010111111100011101001110000000011101111100110101011110001001001010000001010001101010001000010010000000000111100101111111101111001111101000001101110010110000011001010111100010101010110010110010111100101101110101111011100010110100011100101011011010000101111100001110011111000000101111111111100111110011100100110001110100000011111101101011111110001111011111110000100101100100101111111000000101011011101011010110011101011110000001111010011110110001100000001101010100001011111011000100001010101011000001111100010011010011001110010001001010111101100011101001001111010001010010100010100001011111010101101100010101110011000001001111000000100001010011010010000000110001100001000001100101000101010110000111110101110010111111111001111011110000101000110001000111111011001100101100001010101011010101110010110110001110011000101000001100011100111111010010010001101110010111011001010000111011111111011100101101001011000111100010101101000110011011001111011001010001010110011001000101101110110001110110100011000111001011011101110100111001010000011010000100011101000000010011111000010101111110010001101110011100111000011101001110001110110100011101010000110101001101100101100101110001010010100101001110001110011011011011100000010101101100101001101111110110100000101100001100001010011100101011101111111100100100000110111001000010110001110010011101001011110001001010000100100000010110110010011001000010000001011000001100011111010001010001001110101010110001011101011110011001011001001111000011101010000001010010000111100010000011011000110110011011111111010101100001101101101100000011100000001001111011101001000101001110001100111101101101000001001010000010011010100001000001101111011010101011111001111010010001110101001100111111110011011111100100000100100111010010000100111010011101001110111111001100001010010000001010001010100100010111001001101010001001110100110101110110110101000101111101000010010010111010111111101010110100001110001010011100000110111111101000100000100111110000000011111100110111001110000101001110100000100100010101101100011010100101101011101111111011011111110001010101001110100011110001000101000101000001100011001010100001000011010110111010110010011101101110001001111001110100100101010001001001010001011010111100000100111101110011001100100110010111001101010011110011000011010101011010100001011100000001011100101001000000001000100001101110100100001100111011101011010100010111010100011000100110101111110101101000100000111110110100101001011110111110100010111111100101100000000100011111101010111110111010111100001110100101111110100111000011101101110010011110100111001110111100101000110100110101100110010010010011101111010101010110110110001000000001111011001010100101010001101101100011100111000000011001010101001101111110101001100110000110111111011100001101111111101101110100011001011110000100111100011111100010100100001111010111101000001011000110011101100111111000010000101100001011100100101001001101010100010101100111001011100010000011101010100100001100010100011100011001110000010001010100001100000101110111001111100101001111011000101100000110111101010010011101110111100000011101101111000111111000101111010001110011011011010011011111110010011111110110100111001010110111011111001101000010001100111110110101011111001000000101010111101001001111101111010110111010110010100001110011011010100000110001100111011110000111101000010111010110001011001100111010101001111100110100101110101111111111111110110100001110111111111000110010001001111010111001000001000010110111001000110111101101101001101000000000100110001000100001110100011001110110000111101000001110000011001100010111111011100110100011001101101011101010010011000100101011111001001000110110001100111100100010100001100010111011010001001000101011100101110101101111100011101000100101111101001111110010001010110000000001000001111011000101100100000100101011000101011011110110011111011011000000000000010110110000001110001100111011101011000101111011011000000001010110000001110010011000111001110100111110000111011101101110111111110110010110001100100001100010100100111100011011111111001101010000100001010101100011010000110111001010010100010101001101011101001011011011100101010000011100101110101111011100101100 +011101110100010010111000111111100100111000111100001101000010111110101011000000101101011110011010100101110000001001111001000101011000110010000011100011101111110000010011110110110000110000111001011101010011101100101010010111100011111000101000010011001000001010001110001001100001011100111011001000010101110101001001101101101111010010110010101110111101000110010111100110001010100011100101010110000110000101010010101100110111010011001000111011010001100101101001110011010101110101000101010101110010101101101010001010111001011110111011111100101111000111001000011100110100010000101101010001001100010111011001001111001000111100011111100110100001110010001101100101101001110010101111110011001000100010101101111100001001011110011001011011001011000101000100010011001111011010001111110010000101100011110111111110100010011110101111111100110011110100100110100011111011101101101101011000001001001111111001110100010100001111100110111110101111110000001101010011001001001001100101100101011100001001010010100110001101000001110010011100011010110000110100100111100111011000101111010110100001010000000110010010010101001100010011011100001010011101110110000110000100000001100010110111100101110101010111000110010101111111111110100011001001111000110101000010111100011010110110101000010001000100000010000111011101001010001111111111111100111110110010111000001110111111001111011101111011011001111101101111000010001011101011111110110001111110011111111111011011010011100010011110110001001110111001110110001011011100101010001101110000011110110110111111010101000110011111111011111000010011101100000111011010001110001100110110111101010011101001001100011100000010110101010001010110010110001111100100100001011001110100011011011001001011100100001100111011011111010110000010001001010101011111001010000101111111001110100110100000010000011110100110010001011010100000100000010000001101111010001101101110101100000101000100101101111111101110011100001000101011000111100101011000010011111000011010011101000001110000111100011010001101111101110110110110110111010011110000111010000110110011111100111110010110000001010010000010101000111010001000011000011011110001010000101100110001010110111100011011100110101111011100101101100100000100110100100111101001110011100101111001101010011000001101010000001001000111001011101001011000011100100001101001111100111001011011101000110010101100000000110110011100011111111001001101011000000001101101010001110111110010011010000010010100001011000110101110001110001011100111100100010110011010110110111111001101110001111010000001011001010101000111111010010110000000101110111011110011010011100010101000110001010110111110110000101001010111100001010000101101000011010101101000100100011010011000000100011010101111110101101000100000110101011010110011111110001100111111001001110101111110111000000010110111101011010101100101110111101101010111110000010010111000110000111010001001100001111010110001000111111111101101011110101111011010010111010001101111110010001101110011111011011101001100101000011000110100000101110011100100110010000001101010100001001011110011100111111010000111001111000100110000110011010011001011110110101010110110101000100110001101000001010100001000100101101011001111001100110011110110000111011000010101011100111011111110110000101001110111111011011001110010100100011001001110101010010000010010001101111101000110110110001100101111110111010101100101101111111101011111000001000001010001000101110010111101100110001000010101110111011101110011111111011110000101111001111000001010101110000000101101001110110001010111100010110000101100000000001110110000100101001001000001101100001011011111010001010011010011001111101000110011011110111010011001101111011110001100010011000110000001110100001001001111011000111000001001011000001101111101001001000101001010011111010010000110011100010011100111111100110101010010110101000010111011110101101011111110011011111101010001101110011000000101101110000001101000100100000011010000011100001010001000010011111100000100110000011110101100001011100101001001010010100100110011100000011011000011101100110001000101011001111111011101101111100101011110100000000011001110000111001101101111110111000010110101011000101100101001101101100111001101010100011111010100101011110000100010101111101100001010110101101000000010000101000110111011011111011100110100100101011101001010110101010011111110010111101010110010000010111100111110001110011010001111101101000110110111111010110111100011111101101111100000011101111011100111111010100011011010010101000100001110110111100100010010000000011011000000001001011101101101001101001101111011100001101000010011100010111001011110001000011001100010000000111100100010100010010000011010010000101110001000100010000101110110011101111001001011110101000000001000001110101111000100111011001100000001110100111110100110100111110111100000101100110010101011000110110100110001010111001011000111111110110100011110011101001011111100010010110001000010111010110011110110011010011111011110001110011011101100011000101100010011010100100110100000000101101110011011010010011111001001101001101100000000010110101101111010010101001101111001101001011001010010000111100001101101001101000101100111101111111010001100110100101110101100101100001011111001010111111011011101010001000100100111101011100011110010000111111101000010110110110011101110000011011010000111101101000100011000100111011100111001001011101000101110111011100100001010001111110011100011100111101000101011111111011101010110010101001010110100010101010100100001011011110010110101100111100000001111111111010101110111011100111100011111011101010001101011100011110111011101011011001000101010110111110001010011101001111000110001111100101111010100011001000000111101111100100001101001110110110101000101110111010001001010001000110011001111011000000000011111000110101110011011000010111011100011111001010100011001101011111111101100000101101100111110101111011001100000101001110111101011011010101011011110011101101110100110101111000110111101111000100000001101101110000110110111110001100001110001000111111101011101011011011000001110001011011010010001110111011110100101100000110010110101111101000110101110110010000011011010101100010010101011101110111001100000010101000100111010100101101010000101011110110100100000011111001011110011101110010101010011111101101110110100000110010010101111010011000010101010110100010101101100100000100111011011011111010110110101110101110000001000111101000101011011011101101000010110101000001101000111000101011110011110000000111101000110000111110001101010110010111110001001011101110011010110110101011101001101010011000010110001000100101011000001110111000101000011001110111101100101010010101100101101100100111101010001000011111110011011001001101000010100000001001100000100110000101001000001100100110101001101000001110000100101001011110011000100001000000100001011110110011001101011111011000001001011111010101110100110011011011110111100010000101011000110001101111011010101111001001110001010000011110010110010001111010101000111111101010111110100100100110001011111100010100011010111110110001010110010010000111010100011000110001010011010101111000100001001111111000011010101011000001000010010111100100111110101101011010101110001011110000000100000110010010011111010011101001011111111000100001001011011001101000110010110111001100011001100111101011101111111101000011101010110000110010011110100101000001011010100011011000100011111010001011011111000100111100010001100101101100000110000100101011110011110111011000101000110011001011000100010101101101110101001101000010101000100110110111010000111110101110010101000101001101111010001000111101111100101000100010011101000100111010010000111011111010010111100001000100011000101111010101011000101101100100001100010010010010001101000111011001001111011100---------------------010111010110011000010100010010000000001000100000010000110101010110011010000110000000011001111011110001011011001001110110111101010010000110111100010110111000010100100010000110011001111100111100110011000111010110000011111111100100101111000101001111000111100111000100110101101010111000011110011101000011011101110000111001110010011001111100011110010011111001101001010001000011111100000000111101100110110100001011101111001100001010010000010011101100101111101101100000001010110000011010000001100110010001010011001110011000000011111111101000101100101010110101110001100001000011010110011010101110111011101111011111110101101000011000101001001001101110101101011001110101110010111010011000010111100100101011000110000101101110100111011101010010010010011000010001011010000111011010001011011111100001101010111000000110011110100111001110100011101110110110000010101001011111001110001000001101010001100011000100000100111100001010110001000010001000000101011101111110111011110000000010011111001011000000101011000110010010100110000000000010101100011110110011011010111101110010111100001110001110011111111111000001101010010010001000001110100100000110011110110111101101001011000010000010100111000111111110010111000100110110110110010001110000110000111111011001101110100010111101011101111101101100110100010101101010010011111101110100001100001001111010111001101001001100110010110000110110010001010001010111000110011010010010001110101000110101110100011110111111010000110011111001111100110111110111100111101101011110110001000000101000011101011100111010001111010000110000011101000000100110001001111010010000100111011110110101110001111110000100101101010100100110000101011001001101110001100001001011011110101000111001010011100111110110111010000100011111101010110010010110101111111011111110001111000010101101110100011101011100011000110010100011110011010100110001101101110011000110101011110101100011100011111111110011100000011011011101010001110011001111100110001010010011011100111001110101010110100001100110010111000111100111100111010111111000101010101110100011110111101111011100000010001010011010010001111101100010101001001111110110001101000000001000101001000100101100011010101100101100001101000101101100010101000101100011101111001000101111101101111001000110011001011001111101110101101111001111111100000110011100001010001001000001010100010010111111010000001000001111010001000001111101001000000000011001000111010011011100111111010011000000001001000001010010111100000011101111010001001011110001101010101011010000111010110101011110001110110111010100000000100110110111010010010010100100001010100000100111000000010000111110001001000011101101001100111100000010001011111111110111101101111010101011111111101000101100011000000101111000000111101111010110101110111100111001100111100010000111111101010000010000111000011010000011001001010100100101110010101100011001000011000100011000111000011111100110000101110010001111110000110000001110110011100111010011011001110100100011111110111011010000011000101000010010100000110010001000100000100110111110000000111111001010010110110010000000000000010011100100101111000011110000000101010100000111010011101110001110001111100010000111111000011101011000111011111100011010001010111000101010111001010110101111001100011110101110101100110010001111010010001010010111101011010111011111000011111110001011110111111100011101110000100111000111000011110101010010001111000100000000111011110111000010001001101110010100100010110001111110001011111100000100010010100000101111111100100111100011111011010111111100001010100101010100101110010001001110111101110101011000100101011100011011000111110010001001101100110001110000110001000000110100001000110011101110100101001110100100011010010000001111010111101100101011011001111000111100010010010011001001101000011011111110101010000100011100110011010010011100100001111001000000110100100100001100100010000010101010010001101110101010011111011110101110000010100011011110011010111000101110111110010001111010010100110001101000011100110010011001000111100010110110001001111111000101100001110000111001101000111000001110001100011011111011111101010100110110010101111111010000100101100101010101101000111001110111100000101111011000010111100100101110111100100010001000011000101101110010101100001111111010101101110110111101101000110000111100010101011001011001001110110001110100110001111110110100000011001110100100110000110110000000110010101000011000110010000101100100010101101000011101111111001101010001110100001111011010110001010010000000010001101010111000000101100101111101000110001001110011001110110100011001101000110011110111001100000111110000110110111110110101100010001010001000100110101000100111100001011100101101011001110000100100111001111010011011010010001111101111010001011011010101110100110000111001001100010101011000011110010110000011000011011001100010000100010111010101101100011010101001000110010001001011111100010000101110000001101110100110101001010100010100100111011110011100011000110110111110110111011100011001100011010111111001000101000111000010001011111100011011001001001000101110010000000110111101000010011111010111100110101000001000111111110001011010100001111100111001000110111110111100011011000000011101001001010010101011111110010000111011100101010000010001011101100000011000101001100010111101100000111110110101111000001101010011100110010100011001010010010001101000000011111100011001110010011110011110000000000100000101110010011100110011000110111110100101100100010011101010011111010001101011100010111111110000010010010111010001110110010011011000001010110011001011000111110011010001110001101011111010111101111111110101110110001110101111001110111100001100101111010001111001010110011000111100000110110011101010110011100101101110111010110110101110100110111110111101011010100111010101101001010011001000001000100010110110010010000111110110100110001110010101111100001101010110000111100001111010000011010010011101011000111001110011111011101000110110011000111100110111101110001110000110010100110110110010001001101000101011100111010001000010100001011010101101111000011001000101101110010011010011001111110001110011111011010101011100111100000010100111111110010111010110010101110111100001101111100100001100100001110011111110011111011010100010010001001100010110000101110100110010000011110111101111001001001010010010101100101101001000000010101100101100101011000000110110000110001000000001101101000100001001011001011000000110101111110001111001000011101100101111101100111111010000011100011100000011010110000010011111111111000110111111001011110011010100101001000101111000011100011100101100000110000101110000111111001100000110110100010011011100111111100110110000000010110110100111110001111001110100110001101000001110001100000001010101010001010011111111010101010111011101010010001011010010010101110101001000001001101110010011001101001110000111011110000100100001110010110011011100000110101000101011011000111010100010011110010001011101101011101100101010010101001110111100110010111010111101010101110011110110011101100011101101110100011111001011011011001100011111000010000010001010111111000001000011000001011000011101001000110101001001011110011111101101001001010010100000100111100011010011110011011000111011111111100001010110100001100011110011001011010110101101001011100100110001111001000110011000011010010000110001111001011100110100011110101001000100010000101000001101111111110100110010111000100010001000110010001010111101001001110010101101101000001111111100010011011000110001010101001000010010010010000011111000001101010010000000101010101100101111110100100011100101000100001100011111011010010101011100011011110000100001110111110100000001010111100001101001101000100010001101010100000000110000001111100111001111000011100011001101000000111101100000000110010000000010011010000001011010000100001111101110001000101001001010001111100100100010010111100000111101101110111101111111101101011101001010110101100011110101110110001110000010110011000110000000011111101010000010100111010100110001111010111101011100101010001010100011000010000101011110110010111001000110011110011111000101101111010011000100111011011101010001001000011100010011011111011000110011100000000010101110100111110110111111111001010100011000111011111000111111101000011001110110001011110001101010010101011000001001101110111110000110101010011000110010111100100001010101111111111000011101011110000100100010011101000100011010001011111000110000010100001101101011100000111011110001011111111000000110000110011100000011010111111011111111001110101111010100101111001110110000000101100000101111000001000100001110110000111010010111111110111001001101101100111100010001110010011001000011011011011111110110100000110000111011000110001110001011011000001111110100010101001000100110100011100010100100101101000100111011100011000010111110101110110000100110110000110101000000100100100010111110011111111110001101010010011101001010011110101010111011000010100111110101010001111110101010001110001111101110100000100010000101001010101000000100110011100010011011111101110100010001000111110000110000110000001100100100001100110100011100001100110000011011110011111100011101100111110101010110101010111011100110011100000010111100111110010011110000110000110110110100000000011110011111011001010010110010101010111001101000000010010010101110001111101110101110101100000001010010000110001101011001000100100110000010000100000111000101100010010011100101100110001100100110101100110010101001111111111101101010110000010000111100111110010110011110001110000111011111000101101001001001001000011101011011010100011101001000110001111110011110011000100101110001110011010100101010101100110101001000110011000010100000100011001111001110101101100000110110001001001010101010011000100010010110111111111110000100110000110111101001001011001001100010010101110011000100101100100111111010001111100101000011011111000011001110101100111000111111010101101011000010010010001001100001000011010110001010110101101101101101010101000100001010000010100011000010000010101110001110010001010110011101001111100110101001000000001010000001111111101000011110011100000011101010101011111110111111101011011100101100011010110001101111110000000110101011001001000110011001100111101011101100000010010000001001011110000110101001010101011011000001001001110101000011111011010100111111100110011001000000000000011000001111011111000010001010110100001000101110010110110000100001111001100100011101010111100010100101011010110100111011010100010100110101111000011000011101101110111001010110000111010110001110100110011111110111001100100110111010111110000100010100110101010110000101101100010101000001110000100010001110101111010110010001011110001101100110100110010010101010100001111111000110100110001001011110010010111001011110101010111111100111111110110000100101010111010110111101010000110001011100100010101010110001101000010110000010111100000101101001001101111011000000000010010001110000101000000101001001001011011111101001010110100010001101110011000001100110110001110100101110001101100010011111110010100011000110011001110000110001010011001011101101101001110001000101111111110010011101111000000100101011101001110001010011110101000100110111001001001000101110110011100111010001001111010000101110000110001111010110010000101010101100000011110110111111010000111110110110111110011010010101101001011100011100111010110110100110011001010011011001001011010100010011110111011010000100010101100001110100001001100010010000111100001110100100011000010100100110111001010111111100100111010100010010001101000100000111010010000111100001111001010000000010000010101100011110101001100001110101011001000110010010000111001101111111010010010011010101011110110010001101110011101100111000011110011001110011010000000100111110110111100110110010010100001101011001001010010011111010100010000010011111101010111000110101010111011100110100100010100011110110110110100011100001111111010010000010110100000010001001001001011101001100011000100010010101011011101110001111110011000010101110111000101000100010110111001000101110000101101100101101001000000001110011001101001010111011100001000100111000100011000100100000101011011001111011010000111100011001000101001011110011010100000111111110110001001111111010011000000111011000101111001010000000101001111111010000010001011011010001000010100111001011111011010011011010100010010000111101100000111000010111101011101001000100011111110100001010110100010010001110101111011000100001100010001000100110101001110000000111001101111101001111011001011111010101001110010010000100101001001110011111111111100100110011001001000011011111010100101110100001100011110001110101000110111111101111001101111001101110110011011000101001011100110110111000100101100000101000111010011001011100100111100000100110011100010110110101010111011110011011001010111001000101011110100110010011001001101000101111110111011110001111001110000010011111111001011010100101000111111101100010100001101011001010100111010101011001111011110110110001000001010001010000101100010111100010100100110000100110100101000010011110010100110101101101010011111111001101110101001011110101000010001100000111100101001101010010110100010110000111110110001111011100010101110101101111001111101000110101010110000001101100110010010011100101010010011110010001100111001011000110110101100100001101010001010011100100001101001001010110001111110010001100111110011110011010011100000001010000100010010100100100010001011111011001111000101111111000010011010011000110111011101011111010000011011100100010100110110000100000100111000011101111110000000101111111001001100000010111100011111111111100001100111011100000011001100011000110000110110111110101111110100011110110110001001011101101101011011000011101000101001111000111001011011000000011111001101001011000101000111100000110011110101011101110001000100110100110101101000111111101101110000100110110111010100100010100111110010011100001110000010011010100100110100100011111111101000011110011011101100110001100010010010110010011110000111110001110010111001110000110000110010111001101101111000010011000010010100001001101110110110010111100011011001000010100001110000010101110110011101011111111101111001110100011001101100000001000110010100001100001011001010100101111100101111001010000101100110001110011110101110001001001100100111010011010001010010100111011011010000110111101000110110000111010001111000110101001001010000101101001001000110100101001000111101100011101110101111110110011001001110000011010100111101100001101100001101011111001010110101001111111011011010101111111001000010011001100010011100111100110001100101110010000011111001111100100000110010010001100100100000010000111110010010100111111011011010000101000101100010101011101000000001000111110101000011011000110110110000001101011001111111011111000100100010011110011011110100001100101010011011111100000000111111111100100101010100000001010100111111010101101110111110111011000011111111010101101001011001101100101110011100011101110001011011111101100001100111001100110011111001001100110101011100010010100010111010110101010010001111100111101001001110111001011111111110010000011101101010100101100101000110101000110100110011001011110110011001000111101001011101000110111000011110100111000010101110010011000111111011110010010111111110000100000111011110010001101111011101111011011110011000101000111001100100110111101011001110100111111010110000001000100000100001101110010001000110100101010010010110100010000001000101111110011010110100111110111000101001000000101000000001110111100010100101011000001100001101011101101100111000101110100100111101100011111000110011001100111001101101100111110001110001000010111011101111010000000110101000011010011100011110100011000000110110001101110100010111110100000101010110111110101001111000100110100010001001000001011110111001100010110001010110001101010101000110011110100100101011010000100100001000011100011101101100111100110101101011010111010011011101010011110000110101000000000011011001000000101000111110000111001010000111011110101000100110011001011011000111011010001111101010000111111000010101010010001110010001101110010000111000011000011110010010010111100110001011010110110110110011001000010101111000000101110001100100011100000111001001100001011011000100100111011011110001000111011101111110111100000001011101000001001111101011101001000001000010011010001011101000110001010110011100110001010100001101111000101111001101100000101011100000111001101001101100101011100011110001101011111110011101110101000011001001110110000010110010011000100100000110000001110001000101101101101010001001000101111110100111011001010100010011111000011010000000011111100011011011001110101100011101110011001001011010100110111000010001011000111110011010000001011100110010101001111100111101101101110000000000111000101110010111001100111101101011100110001110111100000001011011010000111111100001110100001010101110011101010000100101011101001001010011100111110100010011100111100100101111111100011000110111100100111110001000000101000100001010101011010000100110000101001110000100110100011000000000000111011100001000000100111110001011001100010101001100010010101110010100000100000110110001111010101101010010110000000010001111010100101100000001111010011100100101110111011000100100001100001000010000011010000110000100101110100101010010100011010100011100011111101011011111111001101011100111111011111001111110011010001011011110010000001001001110001001111000011001111011110001100011011101101001111000011001100111110000100101001001010111001010011110000100000100100001000001100000111110001001000010111111111111000001101000000011001000011111011001010100101110001001111110100101101011000100111011010101100011101010011011100110101101000011001010010110100101100110010111001101010010111110010110111100011101000010111111011011000101010011010100100110001011000011111011001111111001100011001000011110001100010011011011000100000111111101100001101110111100110000100100111011110110100000100000000111110010010111110110100111100 +000110000000000000000101001010001000011000110101011101000101001100000100100100001111001100011011010100010111110101110000010001101000100100011111110010101101101011111100011101100100111100011101101100010010010110011101110110011111001111111001011011110111111010011101000101010101000100011100000010011110001110100101110011001100110001101110100101111100111011101001111000101011111101000111111001111010011011100001111011100100011001100100000011010011101010101110110110011001100110111100001111101000101100011011101100110100100110010011100010010100101010101011100000101111011100011010101110011001010000000011010101110001111110101010110011001101100111101100000110000111101100111010011101101000000011000011100000110010011011000110111110011001010101100111101010110110111111110110010000110000001000001010101001100100011100010100101100010001111001001000010110110101100100000111110010000001000100000111110101001000011111001110111011010110100000100010010100110000110010011001100101000011111100000010000011100011010100010011001011010011000010111010000010000101100000100101000111000011011101010101010100001101000010001111010100000001000001001010100000011110010000000110101000010100111100001111110101000011100010100110011100110110010101001000101100100111000001010100100001011000010101101110100010000111010101110100100011010011011000100111011011100110110001011101010111010010001111001101000100000111001000111111010011101000010101100000001010101011111001101010010000110000001010100101000011110000111100010000010011111000100010000011000111101101001001100001111100011000100010000111011101001110000010011011101101111011010101001011101110000011111101011100101100111010011011011110100011010011010001101010111100010100111111101101100111011011100101011111010011010101011001111110001011001011101110110111011100100100011101100100111010100111001110011001001110000100011011100001110101101000100110111010011000101010101101101100001001101100010010011100010011001101010110011100111110000000111001111100010011111011111100010011100001111001100110111001011111001110010101100100110000001011101011010110011111010101101100000100101001001001100111100001010000111010011111011110001110101101100101010110000000101100000100000101011010101011111011100001001011000001010110100101010001011110011001000110101110110011000101000110111100011100110001111000110011111101110110111111100101001011010000000011100110010100101000111101000011111010111000001000100110111111010110111011110111010000010010111100111000100010010011000010110011010111110001011000001011001000100100111001100101100111100101101101000010111000101100110000111101111001000100101110010010000010110100010110111100111001001000100110001110011000111100011111000010101000000110011101101110000110000110111010110111110101111101110100111000110101010001011100101001000000000110001111011001011010110100011100111110010000001101011110101110111000011011000000000100001101110010000111001111010001111111011011000100100011000100000100110111110111001011011010010010010111010010001001010001111111111110000110001111000011101110100010001101010110001111101110010010010101100110111100111000010001110111010010011000000000001011110010101001100010010110011111000001100111101011011110110110011000010100111001011100011011011011110000011011011100111111000101001011111001101010111010100110110001010111001100010111010001101001010100110101111111000100011101100000010101001101111001001001000111111100110100010100011001011110001000111010111100000100101111101000001001001101110110111111100010101110101010100010101100011000101100000011101111011000010001100101101001110001001100100001001000001101101111011011011011001111111110001101000100100011000000001010000001011111001001100111111000100111110010000000011110001001000000000101111101101111101100000010001010011111011011011010111110010010110100010000111101111101100110001100011011011001010101001110000011110000000101011111110111001110010000010101101100001100111010000101101000101001100111000011000111111100110111110000011010101010100011001101001101001101111000011001001101101110001100100000100010000111111011110000011010001110011010010101111110011101101000010101010001100101100010110111111110111101010000011011110010000011011010100111001001001111110000001111000011111101111100100100001101000101001100100010011101011111111000001010001101100110101000111001001111010010011100000100011100001101001110010010101111100000000000011111011101110101110110100100111010101010000010000010110011111000000100110000111010001000111010111010011000001011101101111000011010001110101001111110011011010100000110011100000100001110100100001111100000000110011100101111001110100101110011001100011001010010110011011100110100000001110011001000100110000011110110101100110100010010010000111101110100110000110111000111000101100110011000010011111011011000010100100011010011100001101100010100011110101110110010011000001111010100011010101001011010010001010001010101100001010001101011001100001010101000110101010110011001101101100111100000010000000111110000111010110110010010111011001011111010000000010100100001110010111011010110111111110011001011000011100011010000000100001100000110011000000010001101000100000111000000110000010111010110110101100111100000000110000111000011110110011001101110000100101000100111011011101100110011000010000110101010010010000110100011100011010100010011101101100001001001100000010000001110110101110000000100110111101100100110010111001001110110110001110010000000000110101110100100100101110011011100001110011010000101100010101110111000111100110000011000011111000110100010011111011000111001010101101001101111001110010011000111001001011111011111101100110000100100011001111101011000101011000011010001110001101011101110100110010100000011111010001111010110100111011000111010100000000011111001111010101000101001110110111010100011110111011101011000011001010000111010110011111011000000010010010000010000111000001110110011011100011001010011001111000100101100100000100000000000111100010111010111110100011110001110110001110100000110001100101011110100111101010011101011000101100001111110010101000000010111010111110001011011100100100010000110010110111101001110100111011101010111111001101111000001100100001110111001111000010100111110101110100110111010001010001001010111001110001001111011011000010111110001001011111001111000000101110111111010000110100001000011100100000110101010111111001011000101101101011000011100101100001110100110101110110011101110000110001010110001001100011011101110001100110111001011011111010001001011001111000010000000010010101111010111011100100010011111010101100011000100110111101011001111001111010001110000101011100010101101111010111111000111110001100111010110110110010100110001010101111000000111110110000110000110111010011010010010111111110111111011000101001100110001010011111101001100011001010011000101010110000101000111111001100010010111000100010110100011011001001000001100111111001100110101001010101100101011000101110010011110011001001001101010010001110010001001111100111111100010110011000010010111110111111100000100101000111000000001100101001001010010111010010000100110011111000110110011101111111111011001101010000011000010001110101010001100011010100011100000100111100111010011111101111110101111101001111100101010000111101000110010010000111111101011000100111011111100110001111001100000100110110000011010010100100100111101001111011100110111001100100110100011111001100010011000111111011011011110010000100110011010100011100000010000110100010001111101101111101010000100010001000011010101100000110001101100000111001011010011010100110010011110100001110010110101111000001001101111111101011101111010100101101100000000110000000110010101011101011011110000101100110011101110100001101001101000110010001010010111010101111010110010111101100110110---------------------110100010000100100001001101011111111011100001010110100000100101100000011111011111101001110100000001100001000110011111110000011101000010010000110111001100101101100111001100100101001111111010101010100101110001110111001111111010000101011011111111001101100011110110001110000111010010011011000100111010010000000110111011011010001100010000101000000100101000001111110000010011010101100000001111010100110111110101000000111011111010111011101001001101010011000000010001101101110000101011110101000000001110110100101111001011111110111101000100011100010111001001110101010000101111111101000111001000111111111100101110000000010001100110111101101010101110011111011100100111110011101001010101100111100010011110110010000000011111111001001100000001111101010011000011010101100101100001111110110001001010111100101011101001000011010101000111110001100100100100101010010101110101110110010000101011000111000110001010110100101110010100100101011111101001110000000010010000111010100000111000101100111100010111111110101100100111000101111111111100011101010001010110011000110111010001011110010010011000000010111010011100000001100110010011100100000010110100110010101010101110000111011001100111100111001110001100001110110100001101011001100010101111011100011111010000111110000000111111100011110110101011010100010000110001011100001101000100000001010001001001011111011110010100101001110001010011100111011001100101010110100011110101101101010010000011111011110001001001110100001011110011000100010100001000100111101011001111010101000000000000001011010111110001110010001101011000101001011110010001110001011100111110010111011111001000101101001100110010110110110000100100101110001111011000101100010010110100011001010101101000001110001010111101110100110100011111010110110111010001000011100011001111101111010110111101110010101110100001111110100100110100101011011110101001010000101000000010001111001000011011011100010101100100110000011011101101111100111101110110101111000000110011101111111000110010010011110001011011011011001010110111110011101110101110011110011111000111111101010001110010100111111011100001110111000110101010100101101100000001100100100100110000000101100000011000000101110110010001001010001101010111001100011110001111110010110011100100110101000001110111110001100110101101101001111001011111010010100111111010001010111111001101001000010010101111000101011101011001010100001000000011111100111110100111010000111110111101010100111100011111000100011101001000110101011101011000111110001110000111100010100000101110100011010110001100111001011110001110101111101100101100111000000100111001100010001110111101001110101100000010111101101110100011001000101001011110111001011001101100010100010001110100111111110100100101111001000000000000011011010011101110111111110001100101110000101110001110011011000000110101100101000011011100100101010111110101010110011100101011110111100101101100001100100101100100101010100001010110111100110011001100010001011101011010111010101011111110100100011110011011011010011011100111001001101100111001001001101100011010001110110010101111000110101110111111101000001101101011100101010101000001101011011011100010101110001100100101100101000111111010101110001011011000000000110000000000111110111101100100010001011011010000011110100001111010100011111001100100000111110011000010101111110011011110010100111111001110100001101010111011001110010111111110110111111010001000110000110111111100100111100110110001010111100110000101011101111000010011010110000010010111001110010111000011011011010101001011010101001111110100100101011111000010100000110001101111110010100001011101100011111100100100100101000001110010000100100110000100110000000011001111000110100010001111110010111000111001100000111000001110100001101110101100000011001100000110101110101011111011111111101010010010000011111101111100010110001100111011010000000000011100001011000110111100101001101101000011010000011100001111010101110010010011000000110110011000101010000001110011011000100010010000111100001001101011111000110010101000000010010011011011000000111011011001011001000000000011100100101110010110011101010011000111101100100011100111100111111000011011111100000100110111001001110111100111010001000000100000000000001011111000000001001011111100111010000111011100011111000000000000101111101111000000111011011111100101010101011010001101010000010000000010100010110110000110001000101101001000010011011101010001101111110110100111111111100001011010100001000001010010000001011101010011110000001000001110100101110111100110001010111011110100011011001000101101001000001011001000001101111010100111101111010001000111000101100011101110011010001111010100101010101100010001111000111100100111011101001100010111101011101011101011011100011011111110000011011001111010100011101101000111001011101101001011010100011100010010111100010110101101001110101110111110111110000010100001101110110101110000011111111101111000000001111110100101100110111100111110100101000000101101110110000000111011100000111001000001110011000011100000001011000011001001000001010101011011100010001000101010000011011101111001111111001000010101110101000101111111011100001010110110101001111010011111010111110001101010000100000000001110111110000110000111110011001000000010001110001101011101101011100111100111100101101001001011110011111101111111111010010110111111010001110000000110110010001001111101100010101011111011011011011101011000010110000100100011000100001001001110000111101000111111111101001100111001100010111001101000010110001100001011110011111011111110110101000000101011111100001100111001110111101100000101001001001001001011010100110100000100011110011001111010111100101101111011110111011110101010000000110111110101010010111000010101001101010111011110111000001000100010011110111001000001001010100101100111001010010100010110000100001110111111111110010111011000111000010110010111010011000000011100110110110101000100110001010110000100010111100101000010110000100100110011000000110011001111100000100000100110101000011110000111110100011001001111110111001110001000000000100111000011001100100001000011101011001011011101001101101010011011111101110110110011000010010110001110101100111110001011000100001000010010111010010110100010100111010110010110010111101100000111011000101011000011111010011111011101101000100010101110110110111100101011111110011110001111001011110100001111101001101100100011100010101011001001100010101010000111101010011100001010101001010111110000011101011011010111101010111110000100111000111101010110011100111100110011110001001100011101111010101001111101000001111100000100100110111110011110100111110010111111010000000001100010010111000011111001010011110001010011001100111110011011110100010010001001101000001000100100011011111101110000101010101010100010101100100111000111111001001001111010101000000101011111010011011000001111101000111111110110110111000011110101011111101100011001010101001001000100010010011110001010101110011011101000100100001101100010010000000110101010101010000111110111110100011011111000010101101001010101000101001000110101001011101001001111000100110101100110000101101001101101011110000000011000101110100011101001101010100010000111011110111010110110110110110110001111101001010000010011110101110000111101111000011110011001110000011110101010011011010011000110100000000101001011011101011010101010000101010010000111011110011011001111110001110010110001101100110101110000110010111111111011110000101011101100100111010101010100011001011110111111000111011011010101100010000010100111001010110010011000110000011010111111010011110011010010110111001110100111001000111010101000001010011110100011111110110101100000011111101110101101101101000000101011110011000011101101111001100011001010010010101101110000111011111101010100101011111100110011010011101111001010011100101101100011000101011101110101010111101000000000111010010010011010000100111100101111100101010111011010111111011101100010100011101101111000100010010100001000000101001010001011001110110001101001010001000100111001000111010100101101110100010000100100001001001010111110101010101011011010011011110110011010110011111111100110110000101111111101001000010011100010110101001111000111110010101111001000101101101110001111001111100100101000111100101001011111010111110001010110111000011001100000101110111110101011111111101110110001000100010110011010111101000101110100100110101111111110011010111000101111010100110100100011101011101001010100110000010010110001100100110101010001000110111110101000100101100111001011100101010111001110010001110010010111111000111010110010101100011110011000000001101000111000010010000000000111100011110011010001101010011110000001101000001111101001011000111011111101000111001101100101101010000001001111010100011110000111100000001111001011110010111101110011000011010001110101011011001000011111001001010111110101001100100110101110110111111000000110101111101010111001101001110000111111110000001101111011111110101101011111100010100111110011001100110111101000001100110010000101111101001101011101101111010000010000011001010010011011010110001110001100000000100100000111110111010001111111010000001011100111010111001111111110101100110011010110110110001101100011110101101010111111001100100101010010010101111100110011011101000111110101100100101110010110110101010001100111101110010111101100100010010110101000010000011100001111000111111011100110000011010100001111011110001011110001011001110111011010100001110101111111010001010100010110011011000001110111011100111010110111100011100000110100110101110001011000111001011111100000001110100001101100011011111000011010011100110001101011100110101111110100101100010001001111111110000000000000110000100110110011011011000110110110010011001001001111010011110100011101001001001110001011111100010011111011111110110011001010110001100101011001100010001000110010101010010101101100001011001011111001110000010010001110111011101001011110110110101101100001010110000111001110010010000010011001001111100011100001011000001111101101100111001000001000011111001010111001001011010000111110001111011001101010001100001110000001001001111001110000001111110000101101101110100010100100111000010010010010100110110110100110100011001010100001011110100001011000101010011011101100110001100000001001010110110101111011001011110110100110011001011101110110111001100111011111111110010011100001100001001010100011000001001101101100011001001011000101011111000101101001011110010011100111101101011101001011101100111101001111001100011010111110101010100000100001110000100000100001110111110011000001111011101111100101011111110100100101011001111110100011111010000000101111001100010001011000111011101100101011000111001010110101101001010101010110110010100011000010111111011101100001100000111110001001110101111011111111111001000100110010101101000001111011111100010011100110000001111101100110100011101011110111000000100101001001000101001111100000001100011011100101000001010110100011001000010110101011111001000001000111110011110100011101011010000010110101111001100001101100010011100101111100001100010111000100001111010110110001110110000101110101000101001100101011101011010000101011001010101100001111110111001001110101101110111010101000010011110111001010111111000111010001110011010100110111001111100110100010000110000000010001010011010111100100101110001101010100010011011000100011011110001101000111111000100011110000100110010100111001101101000010000010111110010100100110010011101011101111011110101110101101111000111110010111110111000010111001010100100111011101011101100111111011001101110000001011011111100101101000111101100100011111110101111111010011101001111100110010010100110010111001011000010111011010010101000100010001101011011001001000100111101011100110100100101100010010000111000101010111000000000011110111111001110101000110110111010011101011110011110110011010001010000010101001110001100000101001111111011100001111101100010011100011100111111011011000000100000111010100001100101100100001000001110000010110101101110010001111010100001000000011100100010111011000110010100001001101000110101101010011010101101100110110111111011000110111001001001101101011110111101110111100000111000000101111001010100111111011001001001110101010000000110010001101000111111101000001000011001010101100010110110100011000000111110101001001110110000111011010110001010010011011001100011100000100000100000000011101100101101011010011010010011010101011111010001000010110100100011001011100010001010111000000110101111100010011001111111001100011011110110011001110101000111110101101011011010001010111010110111000000111111111111001011011110011011010010101100001110100000010111000000010100101100111010110001011100110110000001010100001100000001011010001000111110101011011010100111101001100111110010111111110011110110110101110000010110100100111110010110011001110001110111101101000100010101111001010111000101111111010110000001101011100001010110101111000010111101001100100100000001111101101000111000111011010100101000011100010111110011111000000101011111110101000000000111110100101001100101010100101011011110111100011110100010101011111001110111011111000000001000001101100011001000001001010101111110111110101111110000100011110101100110100111110001000100010111001000111011110010011011110100101111101100111111011010110001010001101101001010000001010010010010110011001000010010000000001001001011001001011100000010110011000000110010011010100100101000111001000111001100111001000100110011010111001100101100011000001100111101100010010101101000011000000100000001000101110100001001011010101101001000110101110110111101000110100101100011101011001100101001010000000111110111111110101101110010100001001000001001111001011110001100010110101110101000000000010000111000011010010001000111111111100111100110101111011001101001111010110011111110111010011110001101111101000101000101100101101110000000100010011000001111010101001010010010011001101000110011111100110110001101101100101110100111001110011110100011011111010100010100011001101001111101000110100111100100011101000110001100000000011111110100001111011010100011100000001100000101101001111111011010010100000110111110100011110101001100111101101010100111000011110011010001111111011011101001001101100010010000110110101010100010000011011001101001010010111110110010011000111010010001001110110010110110010110001100100000111000010101001001010010001100100100110110001101111010100110010111100110111110101110010011001010011001000101111111111110011000011011000000000101001100010101101001101011101111000100111101111010100000001100000010011011001001001110110100101011101101010111100100101001010010000001000000111000001110100110110000011101001101101101100100010101101001010101011000011111010011110001111001000011110011111010000010001001111001100001001100101101111000110110110100010001101001001001001010111111011111000011111000101000000011001101010101011001000011101101000000010110100100001101010010011001110101110110111001110110100001111011010110100110001001010010100000110001101111001011000100001011101110011001110001100010011010111100101001001111010011000100110100110011000100010111000010000101010110101100000101110000110101011010100001101001110110101010001100000100110101100101000001111011001000000010001100111101100101001000001000110000001001000001000000010100110000001101001011111100101111001101111111000101000111011000110111011100000010111000001110001011101000101101101010100110101100010010100101010101101011011111011010101110010111101001010101101111000001000011001100111101001000111000011001011001001011000100100111001000111011000101010011100001010011110011100001101100111010110001110110010101110011001100110101011101100111000100011010111010010101111001010111011111100000110001100000100001110101000001100110101001100100000011000111000111000010001011010001111011010011111001011100010101011001100010101101101001110001110001110011100001111000101101010110101001110011001000110101011000110100001101111100000001001011011101001111100110101001110110100111100101110000110010101101001101100000001101111100111000000000111010110110011100010001110101101100010101100000000111011110010001010111101000000100011100111010110110010110111100011010111011100100000100100001010110011001011100000101100011111000101000100101100111000010101001110100100100110111101011000000101110001101110111111010101001000101110100100100100111100110010101000110011010110011111110010111011000000001000101101011100010010111110000000010011000000000000010000000101000100110101011001000001001001101101110011110001111001011011000100100011110111100001000001001110100100011110011101111100110100001010000110001111001011001010100011101001000111001000110100110110000001100001110110100110001111010010001100111011001010000100110010110111100110010000001010000110101110100010001111011110101101111101101111011100011000111110100011101100010001111001001011000110111011110111010011100000000100000100011110110011100110011001010110010110111100111110100101011110010110111101000010001000000011100001010010110000110010010001000110110011110011001000111010011100100010011000101110101100110011100011110011001011010001111110100010000100101000001000100010110001111000100000001001100011000100111000111111100111111000010100100010100000010110001001100101111010001110111100111011110110000000011110110110101101011111010110100101100001010111100110110010010001100111011011110001011110100000110010101110101100101110111111110010001000010100011000011101011110110101000011010101111010001011010101011101011010100101010110100101000111110000100001000100101010110100100001101011001000101001000011111000101001001000101110010111100001011000101111011000111101101010101010101000001001101001000100001101010011001011111010011010101101111011111000011110100110101010011100000101101001011011110111001100011001011001101100101010011000000001001010111011001010010101001101000101110010001001000011110101101110110110001111011100101011111001011001110101010100010010001000101011111001110011011010010111110101111100110101100110000110110100101011100 +001011000101010111101010000000000001110001101111001010100100011101110000011111000111110110100011011111010100100000111110011111000001110011010011011011001101001001010111011010111011000100011000111011101000011110011010111011011010010010111000101000101101100111100001011011111100010011100000100000101010101001001101111010011110001110111000001111111110011100000110010111110100001100111011111101000100110001111100010111001011110011101110000111000011110111110101011101000100000101110111100111001001000001110000100001111011110101101110111101010101101001101100001011110110111110000011001101001111001110110110110010101110110101111010111101111101010100100001001011100001010111111110011001010100111000110001001001001011010001011101010010110011011001101010111101001011001110101101001011101110010101001110000011011110101000011010011101010111111100001111111111010000100011010010010010110000100110010101101000111011000100000000101111011000010000010011011111011010010110101000111010000110111101110110010011110001000111000010111001110101001100110110000000110011001011111111011000110100100111011101001001110110011110111010101010100111100001010111100111010011101000110000010010111000001100111100100010110100110000000110100111101101100001010010011001100000111010110000000000101011011001111010111101110001100110101011011001111001100011010110010111111001110111101000111011010000000000011100110111111100010101010110011100010010100101000110011100001110010110001001001000000001011101011011110111010100001110101111000000111111111001100011100100110010011011111111000000100011110111111000011010010111100101010010010101010001010110011001010100000101101101011001111010001000101011011110110000000100010111001101100100110011010011011100110011110111011001110111111011100100111110011001100010110110100110101100000100000100001101000000011001100000100101010010010011001000010010111000010110100000010110001111010001101011111011111000100111000101101111001110010011001110011100110010000010111101011110101111001001001100111111100011111010011100101111100111010110001001101000001101000011100100111011101011010011001101110111001011010110100100101010000110111100010000111001000000010111101011100111111011100100001000000101111001000010100011000100011101111000011010111110100000010010011100010011000001011000011000101000101110000110101110111111101111010111101011110100000100101111100001100111010101010010111001100001111100000101100110011001101010010001100000010011000011000111001000010110001111101011001001110111101000000010011000111001000110110011100000101001101010000001101100100001011011111100111011001101110001011101100111111110100110100101010011011000101000111111011010100000111100011011101111011100110010100110111100011010010101011000000111000100010001011010111100000111001101110101001001011010011011110011100111000100011001010000010010110100101011010000001110011110111010000001111000011101110000001000111100110110010011001001000101001010101010110001000100101001101111110001001111011000110000110000011010001100110000001101011010101001100101100011010000000101010100001110010011111001011010100110000101100000000111101000111011111010110101100010111101010111110100011000100011001111100011101111101000111101000101111111100101000100111010110110000111010101001000000001010110001100101010001011111010011011010101011011010111111011110110010001000101001011111110010001001010011000100110001111010011011011100001101100111011100100000110010000001100010000100110000111111000110001101010010011101000110100110111000001001101001101000001101011000101101011001010000110001011101000100001010001110110100111101011101101000101010001001111110100111110101010010100101011101110111111111001111111110111101110010100100000000001011100100010010010010111010111000010101101110110110001001100010110110001100010111111100010000101111110010110010011101010101010000001010000111010000110100000110101000010101110111010001100010101001011100100001001010110010110000101001100100111011101110011000111010000101101111011111001000111010001011000001100111011011101111010001100101101101101110011011011001111010000110100101100011111100000100100101101011100000001101100011000011010100010010011110000100010000100001101010001010111111111101110111011011100100101000001110110010100100010100111110100010011010010000101000001101000011100011011001101110001101011011100011011011110001001110000001001010001111101000011011001101101011110011100101100011110001010000111111111100011101000011100100011111000001010000110010001010110111110000100111000011001011011000011100100000111001101000010100010111101110111110111010010001110100011001000001011011111111111011111100101110010110010000111001101100101101000100101111110000000110010001110010011001111001011100101110011110111010011111010100110100010000010011011000011111101011001011010010110100100101101000101100111100000000101111100101100011111111100111001111010101101000101111010010111011010100001011011100010101101110001100110011100110100100001011101000000110011101111011010111001101101101101110110110100101110001101100111111000110000011111011100000010011011001101000110110011010101001100111111010011111111010001111001001101011000011111001101011010011001101001000101010110000010001110001011001110001110110011111011011001100101101000100111101101001011000010011010011100111011011001100000000010100101011110101010010101011010110100010000011011011010110000010010000100000011000001011111010100001110011001100100111001111100101101010101100011110011100010000100111100110100101111010000010111101101101001111100011001000110000000100111000101101100000011011111001001001011001010000110100011110101111101111011011011011001111010010011101100010010101010101100101111000111111010100011001011011101010101011000111010111100100111011010010111010111101100000110001100000000011100000101010111010100000110001011100011011001011011000110101010011011100011111000001001111110000001000011011000001110000101000100111101011101000101000011001010001001101001110000100010000001100001011001110110111011101000011111111100100000011011100111100100111010000101001000110100010010110000011001001101000101001001101111001111111010111101110011100110011011111011001011000110001110011111001011010110001110101011100100001111001011111111111000101011010010001000000001111000110101001010000111111101101111010110001100101100110100100010111010110111111010100011101011010001011011010011110000011110010101001001100010011000001011110111000010000111001110111110110111100100001110110110000100101111101001010100001010110010000000000010101001001111101011100111000001101111100011010011100101011011001011000111000010011110000101101010100010111000000100001111010000001011101111011110110100101101001110011000111001111111010100011000001101111111110001110111110010101100001010010100000101111100001000000110010101101010010000000101110010110010011000100101001101101001111100111101100101001011100001111100100000100110110100011110101101000010001110101001010111100101001110010101110000000111110001011101101010001011101100111110011101111000011011110101100110001001010011001000101101000001010101010000001000101000011101010010111010011100100011101111000100010100111010111010011001000110011011101011011100011010000000001111000100101000110011010111010101000001000010001111100001101000001111010100101110010011000011100110011001100011010000010011000011011110000001100110100001010110111111111010011010100110111101001010100011111001011101100110100010001001101110000110110100001100010011110100111000111001011011001011111011011000010110010111111010011010001111001010110010110001100010000111010000001010101001000011111001111111101100111000111001110111111111011001110011111100010111110010110111010101010010010000001101011111010000001110010111110110010000100010101000000110110010000010001100100---------------------101111111101100010001001010000101000001110010101011010010111100011001001010001010010011000111010000100101110100101011000111111101010010000100010000011000011000111101111010000100100011000001000111101110000100101110101101101001000100111110101001111111011011100010110000000101001000001011011111110001001101011010001011100111101111110010100001000111101100011011100111101000100101000010010010111000000011010011100011100111111111111011011011100111001100000000100001000100000101101111100110010100011011010101111011000010101000111000000100110111101001111111101011000100011110100110000101000011011001100010000100100100010001110100000000101101010001110100001101111010001000100100110110001010010100001011111001100001100100001001101101010010110000000110100111111011010100111101010100001011011001011011100001100000111110000111101011100100001111000101010110011100010000110001101011011110101011101001000100000101100110010100110100000010000111001001101110000111110100011011101001011011110010111011101110111001101100011010101101101011111010001111010101111011101110100101001000001010000010101011111100100011010011100110100000110111011101000001001100001101011001110001101110100010010001101000011010101101111001001111110001110111011011011110101011110010101101001101111010000110111000100111001010000001001011011110011011000110111001100001001000011110000110001111001010001110001010100100001011111011000100011001101010100110100110100101110111000011111111101101111000011011001111011000110011010110001111011001011111111101100100100011001110011011110000011101100101111100000101101100001010110100001100111000111100010111110100110000001101101111101110000001000000101001001010011111100110111010100101100111100011001100100011011001011110000010100000100110000010110111010010111011000100101010101011100011101001001111110011001111111011101010001001100101111101111010010000010101110110010010011011111100001110011000010101101010011000101010111101001001111000101110100101001111101011000101010100111011101101110000110110100110110001111011010001100000100101110101001100001101100001000100111000010001011001111110101111011101101010110000100001010100000011100000001110001000001101111101101101100110000011101001111010011101011001101101100110000100111001001001101001100110110100100101000100000110101010110001100001111100000111101100011110000011011101111101101011011111100110001101000101000111101001111111110101010001011011101110100110011011110011001101100001000111001010111111010110001111000010100000010101000110101101110110111110011111101001000111101001011001110100100000010111010100001001011000010101010101010000011111000001010001010111111101010101100101111110011111101101110000101001101001111111001111111010000111011100111010011010011001101110010010011001001111111100001110010000101100000010001001001001111011100100111010010101100001011011001001100010111011000001100011011101100010010110100100101100011100100010101110011011111110111101110010101000000110010001011011001110111110011101010110001000011000011001100010101000111101000101111011011001100111011101110010011101000110000010100011000010000100000101010111101010110110011100000111110000000101101110110100011011101100011000111110111101110000101000001110011110000000000100100101101111001111010101101011110011011001010011001101000010000110011010100000001101000001000000111101011101100100111111111101010111011101111000101110010011110100001010000111110001110010001001110110000000000100000110010110100001100101111000110000110100101111101011001000101010111110001110011010010111111010110110101011010011000010000101010000011000001110100110011110011110110000001011111010001110000101010011100110011101011000010000001010001111001100101001110111001010101100010001001111111100111010101100110110001110010101100100100101100010011010100001110101010010011011000110001101110000010010001100100000010100101100001000100110110001010110001000000111011010001011100101111110111010000010101100110011100000010000001011001101010010000100101000100011100110110100100101010011010010110011011010010001010110000101110110000011100101010010100011001101100011010101100100001111000111101111001100111001010101000000000111111100000110000001011110000111001101110111000010110100011110100000001111011101100000111000100100001011101100011011110001010100111010110010100011111000110111100011000100111000101011110110110110000110001111011100000001110001000111111101110101000110000101101000111110010101011110101111000001011011100001100101111011000000111001000111111110010101011000101100001111000000011010101000110100000111110111101011100100100100101011011111110000101101001100011110010011010110111110000110111010000110001001100010001101001011010000000011101000010011110101010110010011010010110011101001111010001101011101111110011001111010110101010010000111011110010111100101001100010011010100000110100111010011010001010101001100100100101010110011011110110101111110010100011111100101101111111111000001111010001100001100001111101001010111111110100000101010010010111000000110001010011100111010001011001001101100110000111110101111111111101011101000001111110001111000001001000011000001000010101010111010001100110110100001110011000111000010111010101111000111101001001011001101000011000110110000100000010101100010110110001000010011100101010001111011001100100111101100000010100111010101010001100101011011011011000010101010100100010111100111100110100111101011001001101011111001111001010011010010010111011010010010001010000110010000011011010110101001100110000110110000100000111110100010000100111111001000110011110001011100000010101001110101100110100110111011100100010001100111111010101000110011011011100011100111100110111111110010111101010001001101100010000101011011010111000011000000110010010010111100101001100100100110110110011000000010111001001100010000111010001010111100110000011110001111111101011000000010101011110011101111110100001001100011100101001101011010000101000110010011111100001000100110100010011010000111011001010000000100101101001111010011001001111111010010000001000000000001001010000010100101010101001100010100001101000000001011111111111010001001001001010000000001110010000010010110101010011010010111000100000100010110100100011000010011011101111101001010010010011010110011111000010011101011111100111000101110001110001011011000110010101110001110101111110111101101111111101010101000101001010100110100111100011011111100111010001010000010101010100001111110100001101010111011100111011011110111011110111110101001101011100000011001100111000110000110000010110101011001000100111100000001101100110010010110110111101011011010100001110110011011010110111101100011111010100101100001010010101110110011100111110111110101000000100010010010100100000001100001011101110111101100101001100000100001110010011110011110100100101001010100100100101101100101111011010101101100101000101100110100001110101111100101010110000010101111011110000111101010010001101000010001011010011011101100111011001000100111111001110101100100010010001100000000010111111100101001100001100000101100010001101100000001111000001001101011100010001111110110011010101101111111101011010000101101001100010000000110001011101010001110011111101011111100100111001011101010100001011000101101100010100101011000010100010100000001001111001111101010001000000011101011010100011100101100010001000100101011011010011111101111110001011011110100111011100000111001010101010011000000110100010111011011011010110011101100011100110001101001101011100001001011010001001010000110001011000000000000110000101000111110000101011100001110010101100101011001011111101100101000011110001001110110111110100110011110111001100111110100100111010111101110000111010000111001110010001011100110111101010011001110010100001110011111001001010011001101110011001110000101101011000101110110100000001100110011010110000010110001011110111110110111001111110011010100101010110101000010101100101001001011000110010111001110101010000110111111111101000000100010110001011101000100110010101001011010110100001001010011011000110111110000110011100011111111001010011100000000010111110011000110110100111000011111010000110001110111011011000111011011001010001101010100100000011100100011000111101011110100000000000000110001111101001000101000100011111000110010000001100000000111000010100010101110101111111101001110001111101110000001010100010001000011000110011011111010011110110101111111001010101101110001000111101000001110010111100001100100100110111111101101100010010111110110010101011000010001010010010010010010110011101011010100101100110110111000011010000100000100111000010010111010000001110111111000010100001010111111011001100111010110101111011011011010101001010110000010000101000101101001100001011100001010101010100100111001110011111011100011011011011100101100111100110111000010101001000101010111110101010011100010111101011011001101111100011000110010010101010101011110000000001111000001100110100100111111001111001010010101000100111001110010101010100011011010110110000111000111111011101100111100110110000101100001101001111001110111011111011001001111001100011111110001010101001001011111011110001010010001011010100011000110111111111101100011000011111111010111111100010010100000001011010110010100001110100011101110101011011010001110010011111110000011000111011101110010011010100001010101111011110010000011001111100011011000001101101101100101111010111111011001110100101100100001100100100011110010110111001010100101000100100101001011111101100010010101011010100100000000010010010001111001001100111010000111001111111101110010000001110100100111000000100000111010010101100010111001101100001000011111000011001001000110110110011111111011000110100100010100010110101101011011011001111111110111110110100101110000101011101000000000010011010110010000000110110111101100100010001110010001100000010011100011001100001000100110101011110101101101000110010110101000001100010010001101101101110111011010101110011101001000110011011000101011000110001100010010011010010110001110010001001010000110001011110100010101010101001110110010011001001010110101110111110110001100000101000010011000010110110011010110011111010101101100011001100000010101111100001010101000001111011111001001000101010010000001010001100010100011010101100100111011100011011000011010110100100011111101001000110011110011000010011101011001111110001001011010110111011100011001000101110011011000011011100111001011100110000100101101100111100111010010001011100101111111111000011001001101111010001000110101011110100010100110000000011110101110001101000100010111101100111101111110111110010010101011010001001100010000110000110110000110111001010110000101101110011011111110011001101011110001110101111100000000100011001001100000001101001000110101011100110011110111001010011010111011100110001110000000000010110100100111010010011011110001100110101101101000010000001111001001101101110110000011111010110000010010010100110101000001001010010111011100111110011011001100111101000011111011001101101101011101011010110011010100010100000000111110001110111111110011010010010010100010100011101101110001010010000101100011000000011111111011101000010101101110110010101000110001101000011100010101010110111000110000101110011101110101101000111101101111101110011011101110101010111101111110000000110000111100101101001100001110000011100101111111111101111110011111000100111010010110111101110001011101110010010011110101011111000010111001100010101101011110000110011000000111010101000001100000001001010101010000011011111110100100000011101100010101011100100101000010010000010101011011111110000101010010111101110100000011001111111011101010110001101011101011100011111101110111010101010001010000100110110110011010001001100001110011101111001111011101010110000110010101101110100000011000010111011010000010000000011100010111100111100001001110110100011011101110010100100001101110100110011111000011111101101100011111100000011101101101100111111001111000010011000111011101111110110010111011011100110000000100011101010000010111100111001010100011000110011011100001000000101010101111001101010101000110110110100110010000110111010100000111110101111001110001101010001110011001101011110100001101010111010101010100001000001111110010000000011110001001111110101011110101101000010000010100000010010100110100011101000000101101010001010101001100001110110000110010000010110110101111000001111110011110111000100010111001100110010101001011001011000100010000110001010110111011111100010111111110000001010000110111010000011110100001010110000100000110011000101001011101101000001001011100010011001111010100110100000101010000010011100100111001111111011111011000011111001000011000010110101101111110110101000000100001010100100010001100101110110010101011010110011101110011100100001101111010111000010011010001110011110000000001110001011000101000011010111101010001110010101001010100000010001001010111101110011001000110011110100111110011010001001100010101110100011010110001110000100001000100000000101000100011111000010100001011101001101100001000000111001000100110001111100000000111010101100010110011111001110101011010001000001010011111001011100100010000101010110001000011101100111010101111101011001011000001111001011001000111111001000110101110011111010011101100110100010011011111011111010011101000110111011011101000001111000001100000111001111111110101101000001010010100110110011100000111000100110110110111000000011101110111100100011100011011000010011010100110010111001111100101000000011010111001010101010111100011010011100100100101100011011011100110110101011000000010111011000010001101111101000001111001110100010110010010000001010010110100110010010000011001010111101100000100111111011111010010010111101010010101000011001000000110000011010001011011001010011110011100001010100110111001010111111001000101110111011010000100010010010001011000111110010000111110001100000011011111110010110011011000011100111110101010011001100111010000111001100010001000101100000100100110001010111110010011011111100011010001111101100100101011110110111100100100110010111111100010000110011001110100001110111111100000010000100110000001010001010101011101101011101001111101100000111000001011011100101111110000001111000101000000100011101011101100101000100101101000010000011111111101010001111011100101110110010010111011000100001000100111111010001110001100100100001000011100111011101111110001100011010010010101101100111010100011010000010010010111110010001100101100111000110111011000101001010010011010010111101110001111010101001101000001001001011111101011111100111001100000101100110011100011010010011011000111111011110101110110000001001000100011110111011010011110011110001110001001100100110000100110010001010000110000010011011010011011001010111100010000001100010010011000001000100100111011110110101111101011011011111110110101110111101111001000110010100010011100000010000000001011110101011010110010100111011001111011111011010101000001001000011001100101100101010001001011000110010001001011100000011000100100111110010110011001011000010011111101011111101111011010111111101010101100000110111101001010110000011111110011100101011100000011111110100010001000111000101111111011101101001001111110001010011100111011011000110101111111110111110101011110101000001100001110100011110101010101010011011011111010000001110010111110100001110000001110110011110111110011111111110110101000011011000111000010000011010100001010001101010110100001001100000110000101100011110010011101000000100010010110010110110100010100000010010001101111011110010101010001110001000111001000101111011010001010001001010011101100100110000000100100000011001100101111011100111110011101101111001110000001110000110110101101111011100011111010101001001001101001011010101011100111000101110101101100111111101001111001110001101101001011111111110101111110011000001000010111100110001000011010100111101001001000110100001101110101001111111011001101001001101110011010011001111011000001001011001001111111101101001100010011000100000111110111001101011110000001100110100100101001110001110000000100110000111110101001111110011000110000001110100000011011101011001010000011001100110001011010010000001001111000000011001100111011111011000110111111001110111011010101001101010111110010101110011111000101010011100001111011101010000101101001110001000010010011111011111110100001111011111111001110010101001010100000100001111000011000100000000010100100011011100111111010111100111100111100101011101000001011011110001111000000110101001110001101010101011110111111001101101101110001101100000000100010111101111111100010100010011001100101111101011011110000110000100101111010001111101011010001011000100100111111011111010101011100111010000110111101110010000010111110111000100111000000010111000001100011001100111111010010111011111010000001001100101111110100111110100100001111101111011110111110101010111011100101100000101000111010101001101010101111000001000100101111010111001100001000010010000011011100001010101101111110111001000100101000101110100001001000011010110001000011000101100100010100110000011111001010111011001010001111001110000110101101000110111101100100000100100000010011000001000010001010101001111101001010010011011101010111000100010010111110100001010011001001010111100010000001111101110111111101110010100010000011100110110111110010110010010000100110111010100010011101111011000110000001011010001001110001100011101111010000000111010011101111101000100010100000000101010100111011011000010101110001000100100100010011011010111101010000110100100100011111110011101010000100001011101010001100011011011001100101101111001111110110001100011111000101011111110100010010001001100010101101111111001000011110001011110010001000111000100011111001000010110010100011110111001010001000111111011111001101001110001001110011000111011111111101100010001011111010001100100100101110011111111010001011101110111010011000100010101100100101110101110010111101110110011111100110001010000101101001010110010101100100010001001100011000100000011101001111101010111101010111111110110000011111111001010001101111000 +100001110011101101101000001000110010000110001010111000100111101001111111101010011101101101110111101010001000011001110100100111111110011000110100110100110111000110011101000000101011000110110010000111000011011100111111011100100110111101011010001100111101001010110000100001100010011011001010010010000010101110001001100110101000010001000110000101110101111100100111010111101010001111110011010000100000000000000011100001001101101001011000111001000010100111010011001010010110011011000010011011100101010011111101001101101010000100000010001001101110000100111001100101000100000111000111000111010100100111101101101110001011100010010101010010011110110111000110011000110110111110100000010111110100000001100100000010111000001001010111100010111000011001011001111111011010010000000110100111110100110100011100010010001001010100011011110100100000101111000001010011110111111111010101000110101011101110011101001100010001010011110110111000011001111101111111001010001010001110100011011000010101110101010110011110010110000010100011001000010000010011110010110101010100101111001101111100101101001110101011101011001011001100000011101000001001000110100111101100011010011011010111010010000101000000000110110111101111110111010101110001100111001100011100011001011000110011110010101010101111001011011011010011010111010011100011110000101000001001111000000100111011000101011011101000001111111000001101100111001011111111110010011011101100110000110011000000100000101110110011000110010010100111100101100001101000000100111000100101111011000101000000000100001010111111010110100111111010001110111100111001011010011011111111110100101101000001100110110100010110110010010110100101010111101111011110010110110111010010000011001111110000111110111100000111011100111001111100000101010100111100000111010011000010001101101010101011100000111110100011001010010010100110000010010100100010101000101100000000001001101000001111111011111010000001001100111010011011100110110010010100001101001101100010101011100011011101100001000001011011111100101100100100011100000010010111101110000011101110011011111100000101001111001110111100111010011001111011000111100110111000100100010101000100011001101111001101011000000000010000000001010101111010101010101110111100111111011100101111010011011011101000001110111011010001100010111011110101011110101011010101111000000011100100110111101000000101100111001010001101001010011011110100010010110010011011001100011010011011010101001001000111000000000100011000001110100100011111110001000011001010110111011111100110111001110011001011000011000010110011011110010100001101000111001111101001110101100100000001111100000111111111100010111000100001000101001000100011111010001011101001001101001111100101000100001101101011100100101100100000000100110010100111101110100110000101110010100101010000000001110010101011010110111101100111110101000100101011101001000001000011000001100101010100100110111000101011110100100100101010000100100111110011000000000011110011100111111011111000100110000111100011000111001000001010000010000001101100110110011001100101010101011111100010111100111111100001110000100000010000110000100110100110111111001100000011000110011011110100111110001101100100011110000101111111100001111000111110010000101000110100101101010001100110010101000101011010010101010110110110110001111001110100001100011101000110000010101010101110001101011101011110100011101000011111100010001101110001010011011110101011010110011010100001111100100101100011000001110001101010100110001011011110000001010110110110111100010101011001011001101000001101101111111101100100101100010111010001110101000011001000110001111011001100110110001101111000001110100110000101100101110100011100000111000100111100001110000101101010110000101001101000001100111000011101001100110110010101011001110011110010011011100010110110110100000010110100010001110011111001101110101010001000010010100011010111110001000100111011100100100001101110000001011000111001001110001100101000010000110111010011010010100110011111100001011001110000101000101111110011010001000100110000101010101010110001111100011001101111011101010011011010011100100011011110000011010010011101011111001000011110001111100101001011101011101101001110110101111110100000010100000000101001100110001001011001000001110010000000110000111100000111011000100101001110100010001110101110100001101110000010111011101100010100010100110001010110100101001100111101001110010011000100100111010001011010011010110100101000001010001101110011000110000001100100000101000110001111011000110101011010111010010100110000100011000000101100111011011011110100101011001010011110110010100010011110000010100000010100001010111110001110000010101110101111101001011001001101001011010000010101111111101000010001001101001100100110010111000001101101100010001000001101110110100100111101101101001110111011011101001010111010000110001111000011110001000111001011101111001101101111010111011011011011100101011101001111000101101100100001011101000110110111000100000101000011010000111011100011100011100001010011000101100111111110010100011010001010010110011100001011111101010011000110100110101100110010111010111010101101110000101010101111001111110100001001110011100011000011010000001011111000110100010001100000111101010110100011110001000111111111001111110110001001101100001101011000010100011101111010101010011010011110010010001101011111000011000010100000110001000100000011111000110111100011110010100110001010110001100001110101100000101001001010100000000111111100100000111001111101001111011010010010011011111000000110010001101010000010010010011111000101000011001000011011101101011011111001010010011000111101001111110111000010000101000111101100001000100101010111011011110100010010001100101011011010001010100110101100101011000100111010111000001100111000101010011111001110110110101111001110101110010100100011100100000011010101101000011111000011111101000000010111011110111011110000010001010110010010111000011011000101101000100000100101010000111101110110110101111000010110010001101111110111001100110111100011100100101001001010001011111011100010001111001101110101000000100111101000100110110111111110101101010111100010111000001000011100111100000101001010001110110001010011000111011001110101001000001101111111000101011100011010010100000111000011111001101000100010000010110110000101010010000111001011111001100110100111110001011111111000000111100111101011100100000001100011101011110000111111001111000101001011110101000000010011001111111001100110001010011111011110000011010000110110010100111100110010100100000100001000110011111011100101100101100111100010000011110100111100111101100001001001001001110101110011010111000000011110111011111010110000101111101110101101001100100110001110011110100111010111101111001011001001111110011011111101011110011100001001001011100101010010110000001110101000011100010111100011110000111000000100010101110011011111100000010111010100000110101010101110011111110111110000001001011100001001001001011110011011101001000001010111000110110011100101010101100011001001111001111001111010011010101101101001111010000000100011100001101011010111100110100001110110100100101110000000101011111010000101001010100100001010111010111010111010011110101011011101100111101000011000011000101000100100101101101110100111100100010001000001011000111000111001101101001000011100110000010000011110011110101101010010111100101010111111111011001011111000011001101000011110001100010011011100011000110001101111100000100101100001110000101001110110011101101101011011101010100010100001101110010111100101011001111011010111100110010010010101001111000110111110011011100010101111100011001101010000000000011011110010110011111001110100000110011011110001000000110111000000010111010001000111111110101000110010110101011111000001010100001001001101111001011110111100000011011---------------------111010100000101000010001100001100110011101011010001111011001110100111110011100110100110010011001111001101110101010011100110110001000011101110011001000110001011000101000001100000111111111010000100001110111011111001111100010111101001110101001111110001011111010001010010001010000000110001110101000111010101011011101001001011010001100000000110101011000101010111001100000000001100101010100010010100010110011011110010101110010011000110001011000000100110111000010100010001110110010010001000110001011010000101010110100011010011100100110000001011110010110010100101110111100011010110111101000101011111000010001111111101001010101011001011110111001111010110111101100100110100110110110111101001000101001100100111110111001011110000010010010111000001011100101101001010011001010100101010001100100000010001010111000010101100011110101000111101010111110111011111001111100010101011001100101010100100000010001101101010001100011001010011100001111110111000101000001000111100000111101011010011100000110010001011010000001010011011001000110010011111110111001100110000000101110101010001111010101111011011000101110010101100011110100111010100000001110100101010101111011101101111000101001100001100011111001011010000101111011001011100000110110000101001001000110110011111011100010000000111110001010001100010011110010000001010111110111001110101111110011000111000110111100101111010001110101101011110100101011101111000010100110110100010110011110000010110010001000101000111011011000000101011100101110111001101111011111011101010011000111100110000000011000010000110111000000000111010000100110110100101111011011101011111000100110001101100001011001011011111111110100111000111010111000100100001001111110010010001101001010110001110101100001000101100111011000001100110011110110111010111111100001101100001101101110110000001000111001100011011011001001111000101011110110010110011000000001010001111001010000100000100111101111100111010110011100001000111110101110101011000111110000111010001101100010010101001010101011011100111100011010111000111111111011100100101111010011101000100101100110111100100100011000110010010110101111001101011101101000111001000011011001010101010010000000110011001001011111111100110110111100001100110011110000100011101000110011011010001101010010001000110111010001011110010000001111110110000001110000001010010000101110110001000100010000101111110011111001111110011100011100010000100111011100110000111011011011010010011001100110000111000001010001011001110110000110001000101110010110000010110110010100001111011011100000111000111000010110001000010111001111100110011111101101010001110011000000110010100001101000110101100001100001011011001101110101110111010100011001101001110111101010101000010100100001010001000100010010000000110101010001011111111100000010000110001000101001001111010001001100111011111010001101110000100111111100010001100001000000010010101100010010011011100011001010111010011001011000100110101010111110011110110100010001010011101011001110011110000110100000111010110111101011000000010000000111101001101110001011001010110111010001011110111100101011111011000001001010100011011111010110100011001111111100001110000010101001010000001010010111101001100101110110011000100010010010010110010011010101000001011111101110101111001110101111100010100100011001100011101110100111111001110000001111110111011001011001100110010100111111011110110101010010101001110000111000011110001100001010011001010100101010101111000001010110010010101011010011010110101111100100101000101101101011011010011111111001000011000011111100000111000010110001100000001101001000010100101101011111000000011100110001001110001111101101100110010111111011000110011111011111011011110001001101011001001111110101010110010101100100001000010101000010111000000010010110010000101110010110001001101010111010001111100011111100111010011111011100101011011010011011010010010010100011010110001000010111101110010001000000101010110011100110010000010000110111110110110110011010000110111000101000100100000001011001101111000001001010001100010111010000010110100001001110010010000101110101011001101011101101111000110010110110011010000000101010010100100111011000111100101011010000110111100010000011000101110111011100111100111001100011110010101111000110111110100000101111101110110111001010001001110010101101001001101011011101011001000010000110010100001101100000000000111111011111011110011110101110010100111010001010001100011011111001011100111111110110101010111010010101011110011000001111010000111110101101000010100100000110101100111000101111000011000001111100100101100010100100100001100000001100010001100101101110010001110111001111011100111001110100110011100111110100000001101000000111101011011100110001110001110011010011100011101010111111110011000101110101011000100011011101111100000110001000011000010000000100000011000001000011010000000100110011110110100001010101001111111111001100101101000101011111101101100001101111001111010011011011100100001001101100100000000010001011110100101111101100100011100100001110101110011110110011010010101010110100101000101101010111111011110000110000001000011000001010010101101010000100100101010100010001100111011010000100011111011101111100100110101110000101000000101110101111000000000001011111101111111001100110101001000000111010010011001011111101001011100101100110010111101100111111110110100100111001111000110011001110100111101000100001001010010001111100000101011100001011111111100101110000011001000100111000010011110001100011000011100100110110101110110010010111010000001001110111101001000000111010011000111010000010100010001010111000011101101101001010000010010011101100100101011010100101110111001101001001000111011110111100011000010111110000010001111001010100110111110111000100110111000000010001101010110011011111001000011000010011001010110101010111101010010010111111000011011001010001010100011111000011110000010100011010010010101010000010001100110100001011101011110101010110010100100110011000000111001010011101011111101111110101110000010011101110100101101100011000000110011000111110001100110101101110111101000111100100100101000001010010101001100111011000001111111111000110000001001110111010110110101111110100101001100011110111101001100000110000010111101100010011101001000101011110101001011011001000000010001010000010000100110011110101001100101101100011011100001111111110001110101011001110001110110011111011110110000000101100010101001000110001110110000001000000011110010011101111100010000011001101001000101001101110100011111011011001011011011111011001001101101010001100000111001101110110010010010001100011001100101011000100010100111101110111110000010111001000011010100010101010110000001101101010001000000000010001111000001010100100111010011101000010101010011001111100100100111101111110010110101100011001011111101111011101101000100011110000010111100100110110111101111101111000100011001010000000010100110000101011110111001110010100101000111111000000110000111100011100100110101011011110100001111000110111010100001100011110010100101011100000101011010100100011110011110101110111111100000011001100010110111010011000001011011111001111000100000001011011110011100100000110101110011100011101010111011001010001100111100000110100011001111100100110000110010110110001011101001110001011010110110001101101000000011011000110001111100101001100010101101010111111011100000101100100101001011111011111011101001010000010000110000110001100110101101001001011000111011100011011011000000111111111010001010110110101000000011011011100001011010110011001011111100111001010101000101111111001100100001110110011001101010011010100111110101110111110011000001100000100010110101101111111001001100011100000100011011110101111100010101000100111001010111110001011100001100101111011100001111000100011111000001101011001000011110111000011001000010011111110110100000110011100010011111100110111111011111000110110010010001111101110111111010000111000111011010111011111010100100110000110101100011001101010010111011011101000111011001011011110010010011011110000100100101011100110011001110100010000000111101100111011001011110110011000101101111001111010001101100100111010110110110110101111011101000100100011110101010000101001000101000001011101010111101100110000100000101011011001011010001110010111100010111100101101010100101010001000001010001011110000101001111111100000001111011010000110101111010110111111111011110011111001011001111110100000000000111001111101101100101101100101111111111011100100000111110101111100111101011001001011001101111101001110111010111000111011100101111000111111101111010011011101101001101011110110010011011001101100111111110010011101001000111110001000001001111110110011011011100100110001111000000101100101010011101111100001000000110110101111010100011101110111010100000100000101000110100000001111010100110000000101001000110000111101101100110101110010000011001001111010000011101100111010110011001010011101111001100000101010001011110111100000010110011111010111010010011011010001100100001001000111111101001100110001111100001000000010011001111110000110001101100000010111101100100000100001100010010111001100111001010010110100011101110010000011010111010100010101001101001110000000100011100101110000101110110010111100010000010001111111101111101001000011111010100010110001000011111001101100011000001001011011010000101101110001110111110110000011111101100110011110110110000010011100011000100111010000010100101100011100110100100000111110000110110000111101110010011011100000000000101101100000100010011001010010110110101000001110011101001011011100100111011100111101001000000101110110111000001110100100000000010001011011000101110011000000011011101001010011010011001000100010000100100010011100010111101011010111101111001010110011011101100110100100110111100111100000000101101101101001111000010100111011011110010111011100101001100111000101000111011101100101010100010011110010110101010111111011110101001000100000000010101011110100111101101011100111010011111010010000001011000000100110000101010000110101110101011011001101000100111011010010011000011110001101001110101110001111011110101110001100100001110110011101011110100101000111000100100001010011001001110101111110111110001111111110010000110010110111001011111111101111111011011111100011010101011001101110101110111010001110000100110011111000111000010000001000101000110001010011001010000000110101010000111101111111000110111000101110111111000010110010010100101010011011110001110111111011010100111010011101001100000110011000110000011011110101100111010111010101111111010101110010110001001011111010000011011101101001111011001000000010001100100101011010001101101001000100100001101001001111011000101011000100011001010001110101110111011101111100100111101010000101010101001111000010100101011000000111000011100110001001010111100111100000101000001110001010111101100011100110000001111101110000100011111010010111110000001010101100110110011010000010011110000110110001110100101011110110100101001101110011010000000001011010011100100010110011100110111111000101101010111110101010110101011010001010110011010010110000100100110100111010110110011011110100101101000100001111111000111111001001000000101111000010001001111101101010000001001100001011100010110011000100000111000001010000001001111001011100001100101100110001101001101100011100011010110101011111001101010110011011100010011111010010101100100001011011100000000010011010100010111110010100000010111001010100100111010011011000011100100100111100100100001110010001000000101011011010000000110100100110110001111000011001101101000001110001101100011110111001101110001010110100111010010111010011000111010101100010101001010011110011011000110010110110000001011001001001010110101110011111111100101100010101111010111000000010011011100111010000010011010111010101011110000011111111001110001010011110111011001100111100110011110001001110011101111101101110001000000001100101110101011000011101111001011010011010101111000000110101110111010011110010110011010000100000100110010001010010101101001110010110000011001101011111000011100000101010011000011010111011111000001010000010000011111000110111101000110100010100111101101100010000100000111011100111111010111000100011111100001111001111010110100000110111001000010011111011101110110000110100011100001101000110110001110101100010000101100000101011011111101100100010010000011010001110110011000000101010100100101001011110000011100001000110000011001010100010001110100111000001011010000011001100111011011100010100010000111111101100000000001111000111100011001011000110111101010101101110000110101000011011011000100001110011101000100101000010010000111100001100011110010101101000011111100101110100000011000000010101000101010100010010001001001100000001011011110110010111011000111111010100011100111100001101000011010000010001001100100110101001001101000111010010010000100011110011010010111100001000101101111111001110100000010001100001010111011011101001110000100000001010100000010000001001010111010000010110011111101101000011000111100000001101010000001101100000001110111111111101011100111010110010011111011111101010110100101111100011100101100011011110111101101111110101001011100100000000001010011110001101000110001000110101101011011010010101111000011111111111000100010100001101100101010011001100000011000110000000101000100101011111011100111000000101010111110000000111100011000011100011010001000010110011111100111111101111111000010111001111101001001101010001000001001100100010010100111101111111010001111110011110100000010110100001010011110110100100000010011100111101101111111101101010101110100001101000110110011001110000010000011110111000010000100111010111100010100110100010000110000101000101111100010101011010111110011110001001101100111111010111011111011011010011001010100110101101110001011000011000111110100101010110110011001000000000111010000000010001111011100111011000011010011110100000001010000110111110111000101100100001011101101001010010011000010010101100101001000000110010010010001111001100111001110011010101011011000111010100000100101100010011000001110111101101110101000010000101001001011101110100110110111110110001000110011000011011001101111110110011101110110110000010111110100010010111010100101110110000111001001011010000011000100011000111100100000101101001101011101100001001111000101111000110001000010101001010010101111101101000011101110011110110000110001011010100101011100100100111110010111001101100110100100101111001101000000010101110001011111110101011101101101100000101111100111111111110001010100110110001110111011001100100010101011011111011110111111110001011011010000000001100000010110000010000110010011011100011101110101101100111110110101110010100111111011100001000010011001011000100000100111011101100000110001100001001000001010000110011001111010001100110101001100101000111101100110101000000110111001001010110101111100110100001011000101101010011110101001000111101010010001111001010001011100011001111001001011000100001101110010000100110010011001110101100000011110101001101001100011111000000011011011001011000101010010010011110100001011111111111100010000000000011110001100100101100100010000000011101100101001011011100010101011100010001101011011011011101000010010100011110011010010111111101010100001110101100010011101000000101100100111110000010110101110110111001011110001111011101000010100001110101100101111101101110011110010110110001001010000101010001001001111110100010110101100010101010111100000011110100000101001111110100011110011001010110000010110001001100101000111101100000111100000110110101110001110100101000111100011001001100010010110011000110001110010001111000111000001011110000010010101001001001111111010110110000000101010101110000111000010110110010001101010110111001111011111101001000010000110001001101010011010001100100001110111010111110101100000011100011101001100011001011000011100100100001110100101000110011111101000110000101101011001111001000001111011100111110101110111001010011110001011011001010101111010000100011001100000010000101111010011100110111100011101110001011101101001101110110101010100111001010100001111101100100000100100101110111111000011110101111010001010100111110100010101000010111001110111000001111100000001000000010110101011101101010001110111110001011100110101100100000100010110000100000110111100011011010010001110001101100000001011011000110010000001000111010101110001100110010110001111101011010110100011011101100011110101110000101101110111111010110111111100011101001011101010110100010101010010010001011110100010101110111111000100001001100001001001010100011111111111011100101100010001100000001100001111100010001111111110011000100110111001110000110001001100011000010111010110001011010111001100100000101101101110111110100101101100101001011110000011101110001110000100010100011010001100011100011010011111111011010111000100111011100000010001001101101000001110111000111111001110111111001011101001010011111110101101101010100111100011110011001110000001111000000011101011011010010010010101010010101001010000001001010000100111001100111111010000100010010000001111100111010010011111010001110011000100100111101000011100100011001100101111010010001010101100001110100101000101010101100110111000101110100011011011001101000100010100101010110000100001010100111101010000010011110111111110001101110001110010111110000101110010110001110100000111110100100101001101010101011011011101001101000000111010110100110010011110010100101001101110001010110101010110101101010101000000001111111110000000001010110110011101100001111100100110110000110011110001100101100010100011010100110001010001100110011100010010000010011111100010111010110011100011010111110010001100000000110011100010011110000000011010110000101101111011010010101111101000010101100010110011000001000100010111101110100101110010010010000000100010011101000101111111111000111010000010000100010101010100110101110000111000100111011100100011001111011101111101100000111011010001111111000100111010100001011011000011011010001110100111100101010011011100010011101110100001100111010000100010101000101100001110001100011 +110111010010111001000010011111111011001011010010101111011010000100010000010010100101101101010110001100010011000011000101100011001011100000011101100110001111011010100011010001000010111101001011001010110010100011101110011001011000100110100010111101011101101011010100001111101000001011001010101011100110011010010000011100001110010010111100110100110011010100011111101101111011001000001111111101010110111001000101000000001111101001010011010010001001100001000000111011101111111111011111111001100000100110110100100011100011101101111110110001011111010010011111001110111101000010011001101111001010100011110001011011101001000001010000010000101010100000100100011111011111100011001001011010010000100011010100000110000100011010001110000011100010101011000110000010100011110100010100100011000110011011100011011001000111001110010101110110100111100100100011110101011111111111010000110001011010101000001101001000100100100011101111111100000110110001101001000001100100000111110000000100010110110111001011001110101011111010100010001001101001000000110110100101101111101101100001110010101001001101111000011110000111101100100110001101101110001010010010010100000001000011110110010110110110000101101011101010011010100110000111100011000111010101110111110010110000011010100001010101011111101010101000101111001101000111100111011001110111001100101001010011100001001000100100011010001101101110010010010001011010000010100011011111100101010110101111101111101010111000111110111001011110011110011000111111110011000001110010011111010100111110000101001001101100001101010111110111001101011111100100011001000011010110101000111010101011011100010101101101111101001111001010101010001100111110010010101100110001111101111011000011100100110101011000010010111010111000110110111111101011011110010101111000101010111010010001011011001101011011001000000001011110110011111101110010101110100101100001011000111011001111100000011101111000000100001011011000000100000001011000010001100000011010110111111001111101100000000011110101101111001011101000110010110011010111100100101111011011001100010000000100000101011100110101101101100110111000001110000000010101001101010100100001111010010101011011111110001000110010010111011111011101110111100111111001010101000010001100100101111011001110010101101110001000110001001010100001101000010110100010011110001011110100111011100010001010100000111100010111000111001110100110111100101101001111100111111101010101011101000110001010110000000101011011011111011100000101010011101100011010100011111100100010001101011100110111111100100100000110001111111110101000000011010000011100000000100000000000111001001110110000011111111100000000110001101101000000110110110100101001011000010111110110011110110001001100000000101101111010001101110011010010100000001100100101110000101100110101010001010100100111000001000110111111100100101001001110000000010100101101000000001100111010100101011011010010000001111100111010100010011010000111110101011000101010010011001001111110000111111011001100111010100110001111010100011000000001010100110101011100011000000011000100111000110101010010100111100011001010110001001101000000100001110101111000010010011101001101100000110011001001100011100100001000101010010111000011100001010001111100110011101100110101001000001101101011001000001101110110000000001111110001100111011101001101011011110100001011010010101001000000001010011110100010110000011011010010111000001011111100001011110110111110100011101011111110111000011001010011111001110101111000000001110111010111011110001110011110001111000111101110101011001010110101100001111010101110011010110000011010101011101100001010100111011100010001000111000000011011110010000111100011000011111100000010000001011110001011110110000000111111110111011001100100110010000101100011011001111100111011000100101101100000110000100011011111011101101110100001101010100110010110010101101111111001100101100100010100001011001110010101100010011010000101010100100000100110111111111000011000110111101001101010000110111011001101110100000011101110110000001010000101101110111110100011100110000010111000001011011001111000100101011011010000001101110110010101100101011110001111011111111000100111010010010011110100000001011010101110010101000110010011001101011101001101111001111010001100101111000111010011111100011110101001100000111101000100101001010011111001100010110111000010101001000101101001010001110110110111111010111011110001101011100001010101101010100011100011011011001010101011011000010101010110111010001111101001110000110001011010111010101100000000000001000010110101001111011000001001101101101010100000101010011100010111101010101100011010111110110011001100001000001101111101010111100000010011101111101000000101011100000111100101111111101101111100000001111101101010111110010001001011010111000100000000110000110100110101100011000000010000111101100110010011000011000000000010000111101010011111101011101101011100000000011110011100010100011000010000010100111101111011010111001110010111110110000001010000111010011010000010010101101000001000111011000101001100111011011101011100010001000001100001010100111110100010110101111110001011011001010110011010101100001100011011011010110001100010001001101101010001001000100111101101011111000010110101110100100001010101110111111100011100001100100100001000110110110001100111001001101011000011110111100000010101101111111011110011000111101111010010001110111000001100111001000010010100101001000010110101010100111001100100010110000010101111011001011010100111101010010101001111100001010000011000010110100110100000101101111101011111101111000101001001101011101111011100100100110101110110000000110011111010011100001110100111001111001010001011110010001011110110101100101111101111110001011001010111101001000001110110101101101111001110010110100100001000101010010010100110110101010101011110111001000110110101101001001001000010101000100101010001011011010001000111011010100010000111100001001000100011001101001111000110001110000011100111001010100111001100010100100010001100111001101101010111010111101001001101101011010010011111011110110000000110110100000111000110010111100100100110100100100001001010110001100101100110000110011111100100011011010100000000011110100101001010000001111010101110001000111010010001010100000001011100010011011111101100000001000111110011110111011001101001101111001001110101001101111111000011111101010110011111010100100100010011110001111111110011001010011001000111111001011110100111001111001011011111100100010110000010000101101101110011011100001110001011010010100010011010100111100110100000101111010001100100101101100111111111001100010011100010001101011111011110100011001010110011011110100101001110110101110110010011110010000011000010100100111100010001010101000011111111010111000111011010001000010101111110100101110000100100001110010000110011100000000111101010001111101111101101111111010000110100011111100010101010111110101011110000010111110101011010101101000011100001100101011010110011111111111010100001100111000001000001001101110100001111010010001001000001000000011000111110001111001111011000000000000100101110010101000111101011011000001011110111111011100001110011011101100110011000011100100111100110010000111010000011010000000100100010101110111010101001100001101000100000010000001000110110000010000110000001011100110101100000101011110000010111110110001001100000000011111001010000010010000111111101011000000011100100001101001110011111000011000101110011111001011101100110001000110100111110101001011101110000100111000001001010011110011011000101001011011111100100010000011011010001000011110010011111001111001110011010010011101111010001111101000100001011010001111101001001001001110111101100000111111110011101011000111010101100010010101100010000001101111001001100001001101101001110100100111010110110101111101101111---------------------100100000111011011011100000110001010010110100110110010111000000111110000000100011111111001110100001110001100100110101000011101010110000101000010010010000001001101111100010100111001000101100100011000001111000010000010011110110101111101000111001000011011001101110010001010100110101110000001111001011110100000111010011000001000110111000001010111010100010110101011110110111111010101011110011001101110010101111001001001110000111100111001000111000101000111010111110110010011000111100110110101101001011111001000011010110000011100010110100100001001011001001111110110101011010101010110101110000000001101101010101111000100110010101010100001111011110011100010011010110011110110101100011000011000101110111110100101011010011111110011010101110101111101101111101110100000111110110011110000000000000010000110101010011110100011111001110010011001100111111100011011111000100000110001100010100001101010111110101110010110001010100100100001011111100010111011110001001011011111001110000100010010000111000011010101100010101110011111101000010001000001001000110000000010100011001011011010110001000000100110001000111110010011100100100100000101100100111011111111111110101010101001100111111100111010100010111100100100100111011000000011010010111101111000010000100001001111000111001100111110100000000101100000110101001110101010011111100111101111100110001111110100100100100111111011011001111000000001101011100000001100100110011110011101011000010011110010001001000001011110110100110010011011011010101110001001101000100101000011001101001000010000001000111111010000110111010101010101001100011011100000101111011100001010000100101001110110100010101000010110000111010101111111000010101000011001101100101101011101111110001101010010011111011000110110101110001010110100001100010001110000111000110011001001010110011100011000010010010010110001110001011101111100001111000001110001110111101100110010101010000011010011111101111110000111001010000110111100001010110101110000011001101001000111111010100001111110110100000111000011101101011010000100101000100100111100100010000010001010010010001111010001100010011001101110011011010011011110110000111110000000100010001001010001101010100001011000111000111001111010011001111101101000111111111010111010101001000011001011000001111111010110010000100000010000110011001011011010100101000000101111011001000110000000101001011110010101100001011000100001011000001001000011010010001110000000001100000111110110000101101110011101011010000110000000000101111101110001111011010001011000100001101001011111110100000110101101110010011001101010000110001001110100010011100000100010111000011110110000100010101111001111101110110000010110101110000101010101101011010000100011001000000001001010011010110100011000000111001000001011010111000010110111001110000100000100110110101011111101100001100000011011111011111100111110000100100010001110011110110011000100011110010100001000000110000100010100011101011100011100001001100001010110101100111100010001000101101001100110011001000110100110001000000100010111111001001010000111000110100111110100101011011101101111001100110101011001111000110011111111001111110000100001100111111101011101001100001111111110000101010111111110110011000010111000000110011111100010101110000100101110000011111110001111000100101000010001000001110101101011001011100100110011000000110101011110111111011011010111011100111001011111010000011001111100010110100110110010001001101101111110111001101101011010010111010000011010100011100010010001000011001000000010001001110000010010001010001110110110001000100011010000100000100001101111001011000010001110000010101011101011011011000110111100110110100100111010000001101111100010101101001110111000011001100100010100011011010001111110111011010011100101100001100001111001110000110001101100011111101000000101111001100110101011010000110110100110001100110110100110111010100000110000001101011100011011010001110010010000100110101001110011100111001010011001100010111001101110101100101011001111110011100010100101001000011110111000101001111000011100001110111101100011111001001000110011011000111100010101101110111100111000011101000011000110000101001000011101111111110000100001010111101110010011101000100111100100111100000000011101101001010001011111000001101110000000000011001100000101111010001000010001110001011000101101001000111110001111000010010100101110111111011101010101000101010111001110001100101110100100000100101001100001010101100111011100110011001110100010111101111010010101010010001101000100111010100100100001011111000001001100110100010100010000110000100101011010011011010101000111110000000000100010110111010001000001100011010000100011010001101110010001101000001011010000001001101001011010000010100010000111100100001011011000010101000101110010110100110011001111100001011110001110011001000010000101110001011000100110010101011010000111101000001001010100101011001100100010010101111010010100001000101110101110110100101100100000100010001001000001101101001010000011001000101001110000110000000001010010010100011110101010110100001010100000010110001101100010110001010100110101000111010000001111001000011001111011011110101101100011110101101010000100010010101001111101001000111100010011100011100010100010011000111011000111111101000011011111000001111101011010000111000100101010100110001000110100111001111011110001011010101000001000110010000010111110000010000011110001011111101001110110100001011100001111101101011000111001001110010100011110000101000110001001101001100010001111000000111111101100011111100010110110011001101010010001110001000001101110100101111110101000101000101010010001001011101110000100111000110111010000111011100001110001000111001110010100011100000101011101110000100000101100101101000110011010100010101011111100110110010100111100001101101101010001001111010111101101000001001111111101000001100111100100000000011100110101111010010110101110000010101001001100101001111111011101111010101110001111001000100011000111010000111111101010000110011110110000011000001000111001000101001111011100010100101101100111110010101001001000001000000100110101000101001010011110001010111000100010110110101101000100011011111001100000111100111101000111100101111100000110000011010111101001011010111001000101101011111000000101101001110001011011011111011010101000011100101101011010110110111110100101111010111110011110001001110100110000111000011001001111111001111100001110010010100110101110000101101000011011010100000101001110110100010101101101111101100110000000101010101100010111100100001110111011011101110100100011000000110011000001111010011010101100111000101010111101110101010101101101110110011110010101100100010100010011010010101010100011110110000111111000001011000101010011000011111000001100100110101001011100111101110110001001111010011011010110100010010110111100010101001000100101011010100011010001101011101101000001010101111101100100101010111011011001101011101111100000110011010011000101000101100101110100010010001100110000001011011111011100011011111011101001001010110110011000000000001101001101000010001010010100100001001000101110011001110110111001111001010001100101101101101111110100011100000110110111011100111010110101101011010001010010100101100000101001010111001000001001101011111010010010100011101110100001100011110001000000100101110011011010100011001110101001010011011110001111011100100001010011101110100100000011101000000110010000000110001010100111000010101011100010100010111011111111101111010000101100111100011111000110111010110011100110000001011011010111010110011101111011110010100001000101111001011100100110011111100000111010000111011111001010110100001111010000100111101110110010010001101000011001101100111110011010010111000001011101101100110110000110001010000010001001000101110111101111000101100100101011001100010001000000011000110100011100001010100001000101111111101101111100000000010011001101111010011110010101011010001011011010100011010101100100001111101110101010100101010101000010011011010011110000011010101110111011000111101110001101110111001011110001001111101101110100010011001110111100001101000010001001000011101101001001101000111011100010111110110011111110100110110001110110100001010111101000110101001111100111111001110000100000101110111001111011010101101101110010011001010001101110111110011000011010010001011101010011110100111111011101111000011101010010101100110011000001001111010111100110101111101110010001101101011111010000101100110011001010001010000111011011101111111110011011010111110010011010100000111001110100111011101001101101001001010110011101001010010011000110101100111101110000111100010110111010111100100010111010111101000010101000111001110110101111010000101000101010101101001100011001011001100000110001100110110111100010110111110101001110001101010110111100011001001000001000011111001110010011110001010100101110011101111101011101000100101001100001111001101011011011010000010100000000111111111001110011111111011100011001101000010111101001101101010111111000111010110100011000011010001100010011011111000110011011011010101110110011111000101010001111011101111100101111111000000001101100110100011000001000011001101001001110101110110011001110010011100111101010010010011101001000010001101001001111100100110011000101000011001011101011001011110100111101001110011000001110000011111110000001110101100101000100110011010110011010111111101000111110010110111010110010101001000010101100000111110101000110100110101101001010000111011010100110110011001110001111110010111010111011111011001011011100100101110011100101010110011101101111110110010001111011101100010011011001111000011101001111001000001100000001100001100100000011100110100011010101000101111100000101000001101000000100001011001110111011001011000111000011101001100011101101111010010010111101000000010110110000110001110011011110101101100100000011101001011011011111011111111010111101011111001111001101110000000111100010011100010110100011101010111100011100011110011000010010101010101101111010101101110010001110101001011001111101000111010000110011101101010101000101011111110001001101101110111011111111000101110101000001110111101011010101000110110101010000101101010000001011110010100101110011100000110010011010010110110010011010100010110110100110100011010111101001110000011011000110110101101000110100101110001001110110110010100011100010001010011001101000101110001011011000111110110111110100100010111001001111000011111111111110011110101011000000001100011011101101010000110011100111001011110110101101100100011101101111110110100110010111111011110011111010111111110001100100110101000010011011000110111101001011100110110101000101101010010100000110101110000110110101010111101010000110111010010010100110001001001011000111011100100110100111110001000010100101000111011110111110111100011010101010101010011101000011100001101101101110111100011001111010010010100000000101111111100101100011011110011100010111011110000110101001100110011001101000111010111011010110011010010001101110000011111111111101000100111111001010010001100100100101001001010000010101011011010010110010000011001010000111001100010001000111110110000100110011101001110100010101101000010000111101101110110010111010001010101010111010000111011110100000110111000101110001001011100100111110001001111100000110101000101100000111111001101001101110110001011110011101010000011101100100001011011001111110011000111110011100101001101100000100111111110010010000110110000010000110100110110011010000010011100000010111100011000110011111100110101100110000000110000010100100100100011111100101000000111010001001011111010101110101110001010011100100001001101010100101101011001100000100110010000100010111011010100101011111100110011000110111111100011011000110110000110111111110111000001000100110011001000010100101000110000010010110101100010011100111101010101010110101111011000000101001001011110011111110111110110011010011001001110111000011000111110101111001000011100000010010101110100000111101010110110100001001101100110110000010101011110101111000111110010001001010101010010000011000010111100100111101000110111011010100011110100111001101011010110100000011001100001011000011100001100010011000011010111110101010110001000111100110100111101001011101011011010001010001001010100010010100101101010001010001110101100110011001011001101101001101100001010111001000010001101000100011011010011101011100011101001001110010011101000110010010011010111110111011110100010001110010100110001000010001001001010010011110111111111011000111111111101010010111101110110100101111000111000010101101111011010100111001101110000101010010010001010101110010111100010111100101110101110001100111111000111010011011110001000110101111000000111011110000110000011100000010001100000100001100000011111101001001111101101101010000100000110010100101001011111010010111111110110111100100101010001100101110001111010000101110100001011001111110011111111111110011111000010010101001110101101100100111110000010011000100011111111011001010011101001011001010111100001101111110101100100111011000110100000101000101001011100100010100111100000000010101000000010111101101111111110000010000010110110000011011101001001111010011110000011011100010110100101101001010010001010001011111011010100111110010001011110110110100010101000110000010100110101000011011110001000111000110111100101000110100101100111001010111000101001100000111001110001110000110001000110110000000001100111111011111010110011101000110100010101011111011001110111110110110001111101101100101000111111010010110111001011001001000000001000001011110111001000000001010110111001001001011100000001011110110001111101110001110101001111110010000100010010001001100110110001101111010110101101100000011000000010011101011110100000001100011001010000001100001110111001000101110111011111000100111110101010100010101100111111000000110101101001110110101001110000010001111011000010010011101110001011101110100011010011101101001000001000010000001010101010001100100100001010101010011000011101011001001001101001111100101101111110010111100001010100001010000111101001011101000111000010111101101100110011111010001101001101101000000011010100010111100001101110110001101010111111000001000010001111001001111100111111110111011101000011000100100000011011011011111111000011111111000011101100010001110000111001111000010100010111101011101101101110010001010110011001010101001011010010110010101011101011111001001101101011110110110011011100000000001001111010111011110100111111000010010110001011000101001101011010110111111011100100100011010110001011001011001111110110101110101011110000110101000000001101100001010110100110111000101001110000010011111110100100101010111101001110011111010100000110001110010110100011101000011010100101000000001011110111110011000110010110100001111111110111111111000110100000100111001110010000011110110010000011010110111011111100001111111110010100110100000010110010100100011110010111100100000001111111010101110000000011100001101110011011111100111011100100101111100111111001001010111100110101010000011000011100111010110110100001000110111110011101001111011001110001010111110000000001000110011100000001010001010110110010001000111110010000000100000101101101101110011011110100100010011011001011101111001001011000000010000011001110111100101111000010110100110111111111100010000010110010000101100010010110010010101100001000101001101111100110101101110011110011101001001000011111001011000100011010011011101010111110101100010101110101000100000110011101000100001000001010011101100000000101100011100001011001011101110101111100001000110111110101101110011101110111010100100111000000000001111011111111111010111111100001101000100001110111011010101000111101110111111101100110111000100001110000110010111110100000110101110111101011110000111111001011100010110000010110000001100111010011000101000101111010101111110000110000011101111110110111111001001110101101011011101110010110111101101011110001110011111011010001100001101000001000011001011001111110010010000101111101001011111101101011001010010011000000100101100100100101000101001111110110011100110100010111100001100011011100001110011100101101001100100000111110101000101001101000101110010010010010011001101101001111010111110001101110000010000011010011001010011111110110111000110011100110100000110111101111110010101001001000001011001001101010001111101101110111111000011100100010010011000000110110010111110110110100001000101100011101010000110011000110011000000011111101011101101101110100010001011000000010111000111001010100001000010000100001010011001000010110011110001010001000110100110001001101111101101001110010100100001100001000001000000101100101011001101111111011110000111001011110001100000001001100001010111001101000010011110111110010010010101100010110001111000110111011001111000100111111011010010011111111010111001010100011000111101010010000111010110101001011011011000110100110110010010011110101010101000101101011010011111111110100110001111111111001001001001011101011111001110100100110001110000101000001010000001101001011000011001011000000101000101100011010101011010101100011000111101000101101010010110110010100101101010010011001000001100110100010011010000111001110001011100010111100111000010001100110110001000001001010100111110101111101110001111111011110001010011001010000110010011111001110100101001000100000100001010110000111001011000000100011101111101011010011010100000000011100100010000100010101101100001010100001110111000100010011110010000110001100111001111000011111111010110001000001010111101011111100110010011001101010100011001110111001001111100110010010110000110100101110100100011111110001100101100110011001000010110000101011001101110101101110001100100000100101010101110001100011011011000111000110100100110010010110110101110011110011000110000101011110011110110010100100110100001100100100110110011101111001101011000000011010011101001011100111100110110111011101000110100001101110001111001011111001001100011001000100101110101011011010100110100110100001100110111001001001001010111100111111110111010011111001110000101000110100000100110111110000100100001011110 +010010010101101000110000101010000001011011111010001100110101001101110100110101111111010011100000011001001111010101010101100000000001001110000010111111000101000001110111111000111101011110010111110001101111100011100011101101010000100011100110000001001011000101001001110011110011010011010000010001001100101010101001100000001001101010111101101011101100000011011101000010011111100001100000000110101111011101001011110110100000111101000101110010001110100001110011011001100010100111110110011101011010110111101111000011010110011101101011110010000010101010011101011100011000001001010111101100000111000110101001100010011010111011110100101110101010100111100000111110001100110110001101001100101110001011000000000011010011001101011010110010110011001000001010000101010011001010000110101011110111101111100001010100001101111101111001101000000100110110011010100001100001000000000111100001101100100111001011110011100011010011111100000010100011101001110011101110101011100001000100001000010000111110001011000100100100110101100111010110010000011110011101110101011101111001101000110010011111000111011000100001011001010101010101101111000110011111001100101001010110011010100011100011101000011010011010011100110110111000001110101111010010010101100100011011000001110111001010000010101001101000000111111101000110111110010000001000101111111011111100011011011011011111000110100001110000101011110101010011111010101000111100111010100010001000100000100101000101001101000001001100011011011000110001100111110011000011100010100110110001101000001001000101110111010011101000110000100100000001011001101011000111001100011111011100110001100010010000101101010111000111000011010111000111001001110101000011110011010010001001100000000110001110110110011001111010110011000110010101110110110100001110110011010111111000100101011111011101100010000001100110110001000111111110100101110011110000110010000001010011010000100011100010011100101101011010001111101010001010100110100110001111110111110000110011011110101001101110110001011110111110111101111001101000110111101100110000101001111111011000011101001110001010001101111101101010001001001110011100010100000101001000000100011001101011100111001101000001011000101110101010111011001100010100100111110011000100000000000110001000101011111100011111111111101010011110101100110010011000110010101001111101100011010010011010011110011001111001000101100111111010101011110001010010110010010011110110011011001110101110001011110000001101101111111000110001001000100101010001011000010110010010011110100100000101111000000111000011111001011100101101001111101011101011011011111010011010010111000101001100111110000111111001100100111101110110101000010110001011011011101101110010111010110111110011000110001011101011001110011111010100011110110101111101110111101001100101001110000100000000000100111111000101111011100111100000000110100011000100100111110011010001110001111011001001100010001101101001000001111111101001011000101101101000101010111101010001101001100000011101101101101011101010001010110001001010010101111001000000101010001100001110100011111000101011011101001001111000110100101101011110000001100110000011011000010101000110111011001000001111000110010111011111000110010011110101001000011001011011010000111100010010100101111010101001111111110100001010110001110100100100110010010011001110110000101010110001011110101100011001111110011100110011111001110001001110110011000011011001110000101111010001111010001100010000000100111000101010101000111000000110110010110010110111101110111000011101111011010110111010011011001110111001001011010100001010100000010100001100001100000010000110000000100011100011001111101000110110010010100011010000011001010111100110001010101001101101011100110100000010100111000111110100110011100000001001010111001010111110101100000101101111001010111010101000011001000110010001101000000000010111111000111111111011111000010110010111011010100111011000111100101001100101100001010100011001011010000011110110110011100111101000110111000011000010100110001000110010000111100001110010111110011111101101010100001111110000101110000000001100110000011111011001000111111001000110000100101000011111000010000001110111000010110001110010111001101000010101101100111000001011001101111000011010001001100000101001100110110001110010011011010101011000100110111110010001110000100010111110011011010111110001101100010010000100101001110000110011101000111010110010010000001111110001110101101100001000101100101011111110101101010110000011011010110001111010011001101111100100101000111100011010110110101101100001000101000001010000101011001001100110010001111000001111100110111001010001110101100101110101110010110010001110000110101111111000001101010101010010101010111010111001011111101101000000001010111010101100001001010000101110010000111111111000100001110110111000111010011000010011000000000011000000000111010100010100101100111011001100110011111001011110101110010110001110010000111111100011111010010101111110111001001110111100110111011100101101011111000111000101111000011110110010001101111111111111001101110000000110010011000101001100010110110100011011000011000111101100111010111000011010001010100000110111010101011010101101010010100111011111000111011010001010100000001011001110110000100010011010111110010000111111010001101101111001110101110010011110001101000001110010110111110010001001001000111110111100101111110110111011010111111100111100011111111010011111000000000010101101000011001010111101110001010110111101100000100100001010001100000000110000011011111111100011010111110011011001100110110010110101101111000000100010111011111011001000001011110111111010010001101101100111001001010101010110111011111011000110101111001001101100001111101001010011000100110011111001011100101000001100000101110101111110101001000101101111101110011001110111001110000011011011010000101110101100011011010110111100101100111001100000100111011110011101011010000111110011000101100110101010001010110111010001100000011001110101100010010011111010101001000110101100101101000110110011001011110010101000111000110010110011101110111001010111011010100000001000010001000000010111100100110101110110011111111001101000000101010011001001011110001111100110111001110010110110000001011001110001011001110000010111001100111101100110001000011101011011000001001111010000100101011000000001101101101100111000110100001100011100110011110000001001011110000000100011101110011111010001001111001101100100010011010110001110101000010101011000001001111010110010010110001110011101101111000110111100010010100101110000001101111111011011111111100100100000110001000001010000111001000111010101000000100000111111110001010101100000100110110101001100101110001011101010010000100101000100010000001001110010101011110000111001011111010010010011000011001111000111110110010101010001010011010001111110010111101101001110101110111011100100010010011011110001011011001010110111010000001101111001000011100110011110110101011011011000001010001111101000101100100011100010000001111001111010110001111010000111111101101010110011110010011001111000101000000110001010011111010110111110000011100010101000000111110110101100000110000010101011001110000010001110011011001000010100001001111100110011101010110011010011100110000000100001111001001010001111111010010000010010110101000010000010000111110101010001100010111010111110101010111101001100010000011110001110100111000111100101011100010010111001000110011101011100111101001111001010111101000111011111010111101100111100100010001100011011011000111111100101110001100001010101111111111001000000000101010001011011100000011010011110001110101000110011000001001100101011001100011001011011110000011100110101001001110001100011100000110000101011001011111011000111011101001000111010011111000010110100110000011100001001110100001100010010111110010000000000011---------------------001111101001010111100110001100111000000101100001100101110001100111111001110100011011011000110101100100110100111011010011100010001111110110100111110011010110111111100000110101111001100000100100111011001110101110110101110101011011111110000001111001101100011110000101100011101011010100101111000010010100011010101101100100000000000011000100000100101100110011101001001110010011100101001101101110111010011000101100111101110101011110111000110101001111011010110000011000110100110101001000110000011100101111110000111010011101110100000100001111001111101100010110011011111101110100100110111001100100110001011111101101111110101011010101010010010110001001110011010100100101101000011100000110000101010110000111000010000001000111011010100100011000001110111110001011001000011110100011101100111111111001110010111000110100001100010011100101010000101111011010000010101110111110011001110101111000000101010100000000011100011111101101111000001010011111111100011011101100000110111111001111001010111111100010000111111001011011011000100010010001010111111101100100001101110100110100001000001111001111101011010101110010011000111010110101111011100111001010101001001000001111011001100111000011101100101110111001111010110010111111100000101111001000010000001000001100010111001010111101111101110111111011110001100010110001001111000110011000111000101011111100010001110000111001100001010100001000101111111100000010111111011111011110010011101000101111110100111111000001111001101001010100000110110101100110110001100000100110110010011001100000110001111100001000000110010010001101001111111001111110110101001110011000010110001001001001011111110110001010110111001100100011000101000100011100011001111111010000001100101000000000000111011100000010100011110000000111000010000101011001111010100001101001101101011101101000001110100110011101101000011010101110001001000000100001101011100001111000011010101000010000010010101001100101000100111111101001110011011011111010111110001011100111111111100010100000011100001000001010000101111100001100001010101000100011110101010110000111100011010110010111110101110011111011101001110001010111110111001110000000011010010101000111100001101101000001101111000001011110111011001011100101100101111101000100010011000000000001001101110110111000000011010110011001101011000010110111110001111011000111101010000101100101110111111001111100111101001000011001110111000111101101101010100111001100110100111001001000110111001011101111110110010100111111011111101011101111100010011101010101101111001001110111011000010100110111010001100110000000011010100010110110101001101001100000010110010101001010010011010101110100101001001101101111010001001000001100001001000000001011100011011000101011011111111001001110100011000000011010011100000111010101001110010101001110100101001110100110011110110000001011010111001111011101110111100100111000001001110011000010110011001111111110100011010101111010000000000100101100111000100010001000011010110111010111010100011001000011100111110011001000001011000111111111111100000010100101101110011001110110010000101100100110110010000111111010100010000101001000011010100110101110100101110001011001001101110111111001010011000111010101110100001100101111001101100101011011101100001011110100001000001110011101100001010100100110111000100101101000000100101100101101001110110101011111001101011001110101000100100000000001011110111000000010011111010111001101011000010010001111111010000010001110111110001111011001100101011001111101011110001101000010000101001001010101011111000010010101110100011000101010000000010111100000011101100100110101001101000011110110100110000001010000110010011011001111111101000010100011111101010100110001010010110111001100101110101000111101011101100111100011000001010110000111110101100001110101000001010101001100101001010001110110111010000101111010100011111100110101101010000010000110111100010100011101111101100101011000110010011110101000001001110110110101111111111010000000100011011011111100000001110110011011101010010101001011000110100010000010100000010100100011100111101011011110111011010010101010000101001010101001100001010011011001011100111111110110001101000110001111100110011010110001110100010111010000100100010100101100001100111000000010001001011010111110101101100011001001000111001110001100100100011101100100000111001001000101100111010000010101100000010011001111111000101011000111100001000010100101101011000001011100010011001111010110001100100100111101111011001011000011010011001101100010110001000011000110100010001011101000100101101011000001011000011111010011001101100000111110010111100011000101000110100010001001100110101111111100110011010101111110010100010100011111101111110001001100001000000010100101011100001100001000111010010110001101001010001010111000001000110110100111100110011111110011010010000100010110110011000111100101000110010011010010101011100100001010100001010110000010101010110000000101001111101101000000001010001010111000000111111101101100010100101011001000001011101101110010111001000010111111001100010010100100100111000101000011111110010011011010011101000001000011000100101010010000001000111111011000011010101110111110001000000000010001010011110110011001111111111011011010100000001110011101010001011110000000101011000111110101010100001010101001110000111001000101010110010110010001011010110111001101000000010000100111111110101111110010101000001010101110000001101100101111110001011101010001010110000000101011010101000000100101111100001011101001110011001001011111001000111101001010011000010001010101011010101100001001110001111100000001001000101111000111001110010000100100110001110011101111100101100010111100011000000011001010101010110000010000110011000100101110111010101001011001111111001101000101111000011110100111011110101011000010010101000011010101111011000111110111011010010011100001100010100010000001010100010110011000000010100111100101111011111001101100000100011110000011101110011001101110000110010101110101111000101100110110100111110001010110100110100001010011110100010111001000110100001110101110011001010001101011001110010000110110011001011000101101101111111110101010010111110110111100101001000110000010111111000011010111011011000001111001001011110110111111010000000101000011011011100111011110010100100001110101111010110110000000101000000110010000001111101010101000111101001101111101111011101010101100100001110101110110101000100010110000000111110111010101011111101110001110000000000101000110110001010010101000011001110101110100010111111000010110000000111111000111110010011011011001000100110111101110100010000001010001101001011111110000101001010010100100001000001011001100110100000000000101101111010100111010011010001110011111001111001011111011001001101100101010101110000010011000000101010100011001111110011100000001111101110110010100100110011111000101101011110111101110100100111110000011111001100100011110001001000100101100101110010000110001001010110010110011010000111011110110111001011001011111111011111111011110100101111110010011000001111010000101000101111111001110111101101011011011110011000100010000011001000000011011101001101000000000101111110111011001101110101100101101010011001100010001010011100101111001001000011100110111010101111100101111011001111011001010101010000011101101110001100011010000010110101100111001100001100100011100000000001111000100111110101001011001001001011000100111001100101100100011010000111011110110011010000000110101010001011010100001110100001010111100111011000011110000001100111010100100101100000101101111111000111110100001100001101100010010111111000110101111101011101101101010100000101000110001011010100011111010111101110111010000000111111111101100011000100011101111100010001111111111010011000101011010010010001010010101101111000111101000100101001111100001101110011000101000100011101011010010101100011001001111011101110110110000010101000001100111110010110011001011101011010101100110010000011101001010001101101011000011110011000000111011001011111011100001011110001001111011011101101010101001001111101011101100001011000011000011110110000101001010010001000011000111001101001011110101111100110100111101010001110111010000101001110100110010101110011011100111000100001000111100001100011011011111011111011101101001001110100010010001011000000010010011010111110101110111111110110111110011010100010000110010001110011100011111101110100100011000011000100111001100010101100100101101010000011011101100101100010111110011110010001010000011001010110011111110111011001111000100001111111011001001010111100010110111011000111101110001100101100100100010010110101111101011110110011011011000011101110011010111001101110010001001011000001011111100100001001000010100100101001011010011111101010111000010110000001110001010100111110011011101001111011010111010100011010101101000111011111100001010100010101101000010100111100001110011000111111011010101110100111101100100101000100110111100011000110111100000100101101000000000011011111101001110001100111110000010111010111000011111000001001001000001010110111111001111001001000000101001100110010010001010011110100110011010111011010011110100010001010000100111111001100000111100101111101001001011110111100001110100101010100001010001010001011001001011100101110110111101100001000011010000110000000110001011000011011101100100110110100100101100111111110110011001101011101110100101110100101011110101111000010010010001110010100010010100011011011111000001001010010111110010100010110101000000101111010010001010011011001011000000111111001010100001010110000000000110010010001001111000011001101111010100001011011000100110110010001101100101011001110010100001000000111010101010110011100111011101110101010011010001110111110010011011110110101111111011010010101100000001110111000000111000100101100000101111011011111100110100101100101110010101101011000011000010111011100101110011011001110011101111001100001101011101011101000000111110101010110001001101011111001000100101010110000000111011101010011101010000111101000110011111001100110000001111110000000110110011101110101010010110110001001000001100010000010110110000001010010000100110101100000010000101111111010110111010110101010111011001101010001001011101111111010011111110100010100011101000001000101100011100000000000011001011110110100011110100010000011110010100110010010100000101001110100101000001010010101000001000000010110001111111001101100010011000100111001100110011010100011011111101111110010100100010011011101000001001110000000011111100111100101000000111111010000011001010000111100001101111001001011000101000011011001110001110010100000011110010100101001110100100000010000000010101110110011101100110010110111100111001101011111101100000011011010001101000101000011111001110000011001111001111001011111000101000000001110001010011010111101110100110011100111001000011100100101100110111001100101100010110000000001111110010011110000111001100100101011010111111010001001000101000100111101010101111100011100001111011110111110100101000110110011111101011001100100111010100011001111001110011110000100100101101011010110000010011000110111010110100010100001100110000010111000001011100111011111010100010110001111100110111101100100101000001001001100100100110011011010011000101011010000011000110001010111010010110100000001110100010101110110011000101001101111110101011010100110011000010010111000001010001000111100000000100100100000000110100111110101110011001000001010100101000111011100001001001011110111001011110011111011110111001010001100010110000000010111011011101110111001110001110000010100100110001111011100000000000001001110100001111000000100111010111111111100100010010110001001010011011000111011001000000000011100110000010101000011101000000110100100110000110110110000110011101001110000111100100100000001111111101111000010011001110110101011111001111110000101111100101110000110110010111110001000000101110010110111101001011011010010101001110001010111111100000110101010001110000000011100111011011001000010100000010000111011010010110110010011111101111011100110101000000111100110001001001100000010001011001101001111010010010001100010011011111001111100101001110000100110001000001100101101010110110010000010001001110000010100011001010110101011010111000010101111001000100101011001110110100111110101011011011101101001000110000110111111111001001100000011001100101011011110101001011001111000001100011001100011101110110000101101000011000111011010110011000100000110101110011000000000010010110010011011011010111110010001101100010111010101111011101010110000001101101101101010001010101111000101001000011111011110100100111100001001100110001010001100001010000011010011111110111010100011100101001111011010010010001110111100010011000001011110100000111101000010001100000110101100010101110011100000010001000000001101011111010000011100001100101000100011000101000111101001000010011110100011100111100011001100011001101001100111000011100110101101001001101111000011100011001011101101001010111001111000111111001000110100110000010110101101101101110100100001010100101000010110011010010111011001111010100101111000000100001010010001010000010100101101000011100001011010011000101011011010001010000000011000101011110111001100101100000011111101000010010011011111000010010101111110000000011110101101111100101010110101010011101001100001111110010010000110100110110000111010101001100001010100011110000000100001111110011001111100010000000001001011010001011110110111111100010110010111001111100010011101000100110100010101000011100001100011110010001111010011110011011100100000111111110111001111100100011000000000100110110111011011000111111100000111110101001101110101100110101100101011001011100001110110100101101000110011100100111000011001010011110100010101000001011010011111000001001111010111101111010011000001000111110111100100001110011011011010011110011001100100001110100111000011010001110011100100111111000101010001010000100010110011001110101001101011001000110001001001010010010000110110001011111101101000110011101111011100001110101001000111110100110110011100100000111000110000101000100100011111111110010011100011110000111110101101111001001010000111111100010111101000011100110110100110000111011000001110010111100101100101101110001010010011000011111100100101111100011001001110110011000011101001101011111000010110011101101101110011100110010111111100101011100110111000101000111010011111111110100111000001100100101000110000011011111101000001000100001000110101101111011010001001011100001111011010100101010001111000101010011011111100100100111100011010101111111001101010010001111111000111100010000000111100000000011110100010111000100011001010110001101001111000101100011000000110101010001001001100100010110110000010111111010001011000011101001010111010100010100110100100100000001011111110011110010000111110101110010011000110000111101010101100100101110001011011101000101100010101110011001101011010100100000011001110110001000100101100001000101001111010000100000111111101011011000010001000111011001001010010011001010101100110010111001000000001110011010101100010000110010000001100011000110011101011001011100010110110001010010100000001101001111101011000000010100111010001110101110011100001000010010011101110011111011111011000100100000011010110111000010101011000110100101110100000000101001011101101001110010011011100011101111011110011000101110101001011100100101100110101010111101010111011011101001001100010101101000100110001011001001001100000011111100110101011011110100101010100001110100110110001100100111011111101101000100000000011100101111000110111010010000011001010000010001110111000110011001001101101111111001101111001000101100000010001000000101001101110111011011101001101101000110000001101100011011011110010001000000101010110111111110000100100100001111000011011100110111010011100010011001011111010000000100100110000001111000111011111010111001000001010011100000000100011010000101010100001011100011000000101101110010000101000000011001101110100011100010001111100101001100001111001011010000001001000000010000101111100101111011111100011110111110010101011111100111110010110011011100110001001111001010100000100110010111101101101111111101011111111000011001100010010010000101101011100010110001101110101011011110110001011000101010101100000011111001110100101010010101111100010101001001101010100100010000000001110000110111001000010110001110111001000101011110110110100111011100100110101011111100110011110111110110000100000010101101100001100001111010011111111111000100101010000101011110100000101010000001010001000011101110010100110110000010011011100101100110010111011000010100010110000011100101000111111000001111100110000111011110001101111100010000111100011011111101111100101010000101100110010111101101111000000000000010010101100001100011110001000011010010110110111111111011001110101010100111001001100100110110110101000001110010110010110001111101000111001001000111001010000111010001010001010001111111000111000111000111110001011110111001101010011011001111011000000111001010101010100010110111010101000101000110000111011101111001111110001100000001000010111100000000000001011100010110001000111010001001001100011000001101010101101011011111010101110010101010000011101111011100010001001101101110111000100001001011111001001111011111011100011100100110001001110111111011000101110100110010000101001010001111101100001011111101011100110000101100111001001001110001100101100010011101001000101001101011011100000010001000111001010111011001111000010110101011001100000101101110111001010001101010100101101100010111001101001011000000000010011000000111101000100100010010011101110011011101111010101111000011011011001110110001110000100110011100101001101000010101001000101110001101111001010101101110001011101100111000011001101111011010000011100010111001001000110011010110010011100001100101100110011000110111001001000110001100000011100101010100111111010111001000110100110011010110100111111001010101011011010110010101110101101101000001010111001111100010111101101000011101110000000111010100100100110110010110011111111000111111000010011011010001011100000100 +101111111011101001101100100010100011110011110100010100100110100010111111001000100010010111110111001110010111101110000010111111101110111010011111001101001110110000000001110010011011101011100000110010011101111111001100011001001001000010010101010110111101000100111111110001001100111110000001111011010010000101100010001001101011101001011101011111111000101001010001101101111000110000110111110001011011011110110011110011101100111010111110100001000011001100010000101111110000011101001001000101101001001111010111010101111001011010110000010110000000100000101101010101001110001011000101111100111111110100010001110110101111111110010000101110001111011100001011010111101000111100001001000010101011111011000000010100011111100011010100001000010001110011000111001000101011111110000011010100000111000111000111011111111101110010100010110001010001000101111111111011011101000100101011000010101101111101011111111110010100100011111101101100000010110101001000110001010010000000110000110110101101100101000010001000001110101110111101010010110110001011000101000110101110001101101011010110110111000111110101000100111111011000000100110010111010101110001001100110111010100101100010111011001010111001000101101111111010000001000101000100101011100101101111110101010101001010111011101010010100000011100101111011101001001011101111110010001010000010110101110111100111011000110110111010101100100010100111101110000011011010100110100110111111100011001110000001011100000010101000010010100100110110101110100000100001111110110100000000101111001111011001111100111111000000010011101111000011001010000110010011111010101110010010111001110111101100100010111100011011011100000001110000001011111001110101101111010111110111001101010000011001110001011111011010101111110001101011001010100001110110110001100101011110100110000001111010100000110011110110101011100010000000000010101100110000111001011101011111001100110001000001101101100001010111111010001001010101011000001001100000001111100010111000111011101001010011110011000110111011001101001001100001111101110010110100111001000001011000111010010110011010000011100110111111100111100001101101111010000111010000010010000111100001111101011101010101100100011011100010111001001111001011011000010110011111001011101010111001011011101110001010000011100000010010101110011011011111011111001100110010010001000000111100110000101111011111101010011111011000000010001011000100010000111011110001110000011010000011111101100011001100111101110111000011111110000011111100110001100101001001101011000101001110101110010011110011001101110011011001010010001101011101100010011101111101111111100100011010010110001001001000101000110011001100100001101011111100111110010101010111010010101000010101011111100101000010101000000010000110000101101110100001100000000000110000111001000011010100101101011001111110001111001010001000101001101100010001010000110110010011111011010001101011010101101000101110110100010101011111101001010001111011111101110000011001001101100110111010111111110001101101101110001011000011000110011000100011101110101011000110111000011010000110011001001100011010111011000101011011000011011101000011011011100001010101011001101010010011011111000000010011010110100010010101001101101011101010010110000100000100010010101100110111011110111111001111110010001110010110100011110000101110010100111101101101110010010011000010101110010001110101100000000000110010101110010011110010000101001111000111000010010010010001000001000100101011001010001001001101101101001100111011010001111100100111100111111001000001111110110111110010010001111100010100110110001010101110010110011000000011100010100100110000110001111110100000110000000001001100111110111011111100001001101000110000001101101001101110000101001011011110000011111001111010111011100001010100010001001100000010110110000101010111101101101110000010001000100101001011101111101111111011100000110001101000100111000011110001001001010111110010101101000000010110000010111101011111101001000100101111001110010110101110101010110000010011101011010110101001100100000000100111011110110101000101011001101010000010001101001011101001101010100011111111101011111101010111000110010111010100100000111001001101000000000011000101100011010100101111010001100110101100110000110000111111010110000101011101001101000011110110010001110111001000100101010111001110100011110100010010000111100100100101100001111010011110100010110001011011010110010011011001000000101100100001111100110001111101000001001011110110111110010000010010011011011100101000100100100010111100000011011011111010111001110111001010011111011110100000001010001110100111001110111111111010000100010101100010101111001010111011010110111101110100110001111101000001010001111000001001111111001101010001100101100001001111010100111001100110101000111111101100001000111111010100101001100011110111111011100100111110100010101000010100000011101011110101101010101100001001010101110111111010101000011000110011111000001001111001001001101110000111101111110101001001010010011110010011010101111100110100111000100001010111001101101000111001100100001101001110001101000111101100110110000100111111010010000110100111101010000010010110110100010011011010010001100011100111111110000000100011011010111001000000111110100001100011101010111101011100110101010111100111011011000101010111000010001010111010111010000110000010010111111001011101100011111000011010010010010000111100011111110100110010101100011100010111010000100101001000000011101010011010100111110001111100010011010100000110110011101100011101111110100111100100000110001100010000001101000000110011000000011011111111010100010110011110100001111001111100001011110101011011000000110001011010110110000100111101011000100101101101000100101001111001011010001100110110000101010011111110010110010011101001001000000111001001111110011101011000001111101010110111100010100101010100000010011100011011100010100010110101110111010100001011011001010000100010010010101011011101100001111111010100110110111000011001100010000011011001001111100011011100010011100011001101101110010000111001011111110011011111000111111000100011000111011000100000100111100101011111011111111001001011101110110011111100110110000100100101000000001110101010010010100111010101011000001010010110010010000110001100000111101011000100101011101000100000011000111110100101000001100101001100000000100110011111010000001111110010010011101011111001001001011101011011111000101011000010001001110101011111100000101000011101100110000010010000110100001100010000101110010011111101101001110011001001100100000011010010100000010100000010011101110100100101101000011100000110001000111101100110100111110100101000110101111110101100100010010110101100001011101110100000111111111100011110000110001010111001111110110110111011101111010111100011010100010100110110111011111110100000011110000111110101011111011000010110011010110101011000001001010001110110000100111001011100110110111010101110110000011001111010101000111011011110011110001000111101010110101111101011011000100111110000010001111101101001101000110011000101100001010101111000001111100001110100100000001010111100011001010100011110111001001010111100100101100111001011111110111000110101010000000110010011010010110011011110111100101111100111000111101111001011101001110010111110000101100111010010010010010001110010111001110101110110100000000100011001011000000100101011101110101001110101000010111011101011111111011001001010100001010110110101111101111110110000110101100111111001010110010101010101000100101011001011110110010000101100000000110000110110000110111000100011100010111011111011011110010000100111100001011011110101000010100110110101100100000111110011000101010100011110101000101100110001100111110111100110000010001010011101110010100011010001010111011010011010111011111111000110100000000001010100100110001---------------------000011001000011111010001010010111011101011001000100000111110100101101101001110110111110000001000110101110001010101010111111000111110001100010111110101101100001010011100110000110001110111110101011001001100010010100011010111100100101101001100101100101111000011111001101001100010111111110110111001111011001001101111000111001110001111101010110011000011001100100100001101100100100000000101101100000010100000101010100101000110010100111001011001010100000110001010000100111001001000110000001111011000010000100000001100010110111100110110110010100110101100100110010111011001111111110100101000010011000000100100001111010110001010011001001101100111110000110010111100101100000101111111000100011101111001001101000010011001011111001010101000101111100001011110010110101111011101111010000010001000110000110001110010110110110110101111001001100010111011011010011100001001001010101010110100011011110101100000100000001000111011101111011011110111011111110011001000110010111010011011101110110001100100100011001110101111111011101000111001011111111011010001101010100011100110100111000101110101010011001110011111100110000010010100101011111010001010010010011001100010110000010101100000101110001010010001010010000011011111011110101011101010110010110101001100011111100100001110111001111000010101001100001100101110111011110000001010011011011000010110100101100111001010110101110000110111000000111100111100011100100000010011100010100101001010110010111110110100110011101011100000011001011111011110010001010100000101001011101110001110001100101110110100010100110011110010100011111000110011001010001101110111110001010001111111010000100110011001011011111110010100010101001011001100001010101000001001001111111010100011000001100111111010001110011110010000000110011110111101101010111101100011000111000011110110101110010001111000011010111110111000000100110110101011000001010000010001011101011011111010110011011010100010111110101011011100100011110000101100101011000100101110100011010101101001011010110000111000110011011000101011010110010111111011001010110111001101101110111111111110110110001001011001100011000100110101010010000000000100111000110011010010110010110011000000000110010100011110111001001011000101010011000110000010110100110101100111011010100100001111010101101111011000110001000010110101100010011000011111001000010110011110111101100110001000011111010010100101111011101101001101101110111000010010000101110001100011001110101111000101011110110011011111001011101111101101001010110100000010001000001100101001000001110011111011010110000011100110000110111001010101110011101011010001010110100111000000111000111111010001101001100010010100010100101010100011111000111110010110100111010111101110011100100100010001001110110011101111001111110111101110100101100111111110010011000110110011101100111001101011011010110110001010000110101110001100110010101011111011011110010110111110111000111010011110000001010011001000000011011010011100100000011010101000001100010100011110100000011001010100011011001100010110001101111111111101011011011100010001001000101000010101010111001110011000010111011110001100111000001101111011011001100011111111100011011111001001110111110110110000010000010100011101000111101110011000110011010111000111010111001111100001111001110100111000010011010001110011001010010010010110000101101001000111111000100011110010110011011110000001110101110010001000010000011010010001010110111010110101111000100011011011111011111011110101101100111100100111001011100100101010001101101111111001010000010000001010111000110111111110011101010110010111100111111000011100000110011100011101011111101011000100000000001101010110100101110010011100000000000001011000100011010100000110101010110010100110001001100011010001001111110110100100000100011100011110010001110110001100010111011011011100111100011100110000101000111100000111011100001011110010101101101110010011001100111101011010011110110101010101111101000001111100010111011000010001111111111110101011000111011010100111001011010001011111011101001111001101111010000101101000001000110011100111100111101011010100101110101100000010101110111111110111010110100111001110101001000111011111001111111100011001110010110000110101000000110000011111011011111110011110011111101100011010111000010001010110010110000100000100000010011001001000101000101000110011001001101111011101001110100111111111111101100110101010101110001010110110000010010110101101010110101111001110101011111001110011110010110100110101011011000010001011110011011010000100101101101001011000001110110100001100011011011010011110001001001110010100010110000010011111100010011000010110000001111000101011100100011111010001011011001110101000100101001110000111100010110100111111100000011010000111110000000000101010010011100110101111111111110111111011000010010010000011100000000101001110101001111011100011101111101011111001011110101001011111010011110111000000011100000100011110001111011011010000000101101100111110000000101001011110111011110011110001000110010101010001101010010110110011011110110100000010100101100101001000001000010011011011001001010101110100011000010011000000001110001011001001100000111101011100001001101110010100101101100101001011111011010111100010001111100001110110101010110010011100111110111101111000101101000111010011110011111110011000011111111101111111101000010010110011010111101001101010101111011011100100000100111001001110010000111010101111101101011000100000001100000111101110100110001111011001010111001100111110101101000111111111000110000011001111100011100000001100110011111110110000111100000111010100001000010110011000011100000111010001101111001001000100001111101111101110100001110111111010101110100011000110110110100111000000110110111110111001000011111101101101011010001001100111101001110001000011101101010010000111100100001000011110000010010001111111010110000011011111110100100010111001100010001010010110011111001000110000001110101011011010011001111000010001101101000111000111001100011110000000001101001100110011111111101011010010111000111111101001011110011010000000000010100000010001001111101110100110111010111001000001000001011101110101010111110000011001100101110101011111101111100011000001000110010011101111011100010001101110000000111000001111010100101111001000010111011000110011011010110100010101111101101010101001011000110011011111111000010001001100100010101100100101000100000101011100011011111111110001001100100001000011100001000101010101111100110000001011001100011101011000010111110100111101101011010100010100110100011001010101000100101001001010101110011011001011101100011001001111010010101010010101110110001101000100101010001001001100000010100011100001000111110000111100101001011011101111101110100100100110001011000101111011010001100101101010101100100010000011010101001000100011100000011111000000001110111001110101110000110101100000000010000101001110111001011111010000100011001100000000111011101001000111001001001011011101100000110011111001000100011001011000001001000110000111011010001010100110101100001011001000011101000110010101011110010100110100100110010111100001000111001010110111101111101100001100101000101010001100001111001011110010001111101010000000000110110111010100111010101100000101111010111001001110010000011001010110101001111110011000011100000000100101111111100011110001101001101111001010111010010110001111010001011010101111110011010111010100010111111011110100010111111010010110111110010110010100000001010100111011111110010111111000010100111001011000011001110001011000111000100110010000101010111101100001010011101111111100110010110110110110110001001110001010110011101100000101011010100111011011011010000101110101001000001101011000011111010111011101001010011111101100010001100011101000010010000111111100010110011010011011000010000100010101011011011110100010111101000011111010100101000001101100001101100111100110111100001111000100111000111010100011101111011010110001000000000101110010110101110100100111010101110001111011001011011011111010010111110010101011011100100100000011011011001010110001011000010111111101100011111010011001000000011110010011101111000111000001110100101111100101100111011101111000111100011011110101010010011111100101101100010101001011100010100010011011010100011011011111001100100101110101100101111111110000000000100101010110100111010001100100101110100001011000010010010100101111100101010000001101001001001101100010000011111011010010110000010010011001011010001110000111110011010001110000101011111011111011110100101011111011010101010101111011100001011000010010101101111100111101110001011000111000110111100111101001111000011010000000010101110100110010111110111010101100110100101010001010111011000100011001110110011000000000101001010101000101100101010001100110000100010100010110010100000011010111110000101010111001010011101110001011101111000010100100101110100011110000111100000011100101011010010011011000001101010000011001000011001010000010110010000010010101011011000011011010000111110110110010010101110101111010100111000010101000010010011111011000100111111100100001000011011011110110111101010010010000100100010001010101110011111100011111101110010111000000011011010001110011011111000111010111100111110000111111111101101010110101010100110101000101110101001001000111010001110100100000010100011011110000111100111000101110101000110011000110001001011110101011100110010000111010101000100001110111010101000000111101001011101000001001100100000100011001111110111100110111100010011101010010100110000010011101010110110011000001010110110001001011111001110101101110100110011100110000000001001101011111000011101101111001110101000100010110111111011010011101110010010111011110101011001010011011101010010001101110010100111101100000111010111011101011111000110111010001001001110000010011001010110101101110111001011100101000100110010001011011000110111101101010000100010010101110111111100100011100011000011011010111010111111110011001011101100101010001001101111110100111001011110000110010001010101000100001100010011001100110111010000100101100101010101110100111100100010011101100011100111000100000011001111001011001101111011101011010000000001001111101110111010011111101111000000010111011110100000000110010001001000000001111000101011000011011001111101001111000101011000000010101101110100010000000001110001000100000010000110101011110110010110101100010000010100110001001100101000111001001000100001100001011111111111111001011111001111100101100001000001001010011001100100011011101101101000100111101000100001101001111111011101110011000111011100100110000010100001011110111111101101010101001111111110000000011101001001000001110100111111100000010101110100101101000110110011000100001010000001111001101011101011100110001100001000100110011111110101010000101101101100001001110111010001110100110100100100001100010100100101000011010000110111000000011100000001100111010111000100101100010011010101100101111111111101000001010110010011010011100111000101111101100110101111100110010000001000110010110101110010111111000110101010101101110100011111110010111001011010101011110111110110011110110001000000010011101111110111110111001000001101100111100001001101110111101011011101110110111011111100101100011111001011000010110111000101110001111010111010000011111001100010010001100011100110010110110011111000001001001101110011100101000110100100110110111110001010000001101000011000000100111110011001000111001110101110111011101001101011101001110011010111010011010010100000100010011000011110000010011011010101000000000010010001101010110101101101111111000110110001111000000000100111111101010111001000011101011100001011111101100110011101111001110100000011001011000111011101010000111010000110101011101101101000101111000001110110011111011111101111100001110000001011110110010110011110010111010110111011000011010010000001000000111111011110110100110111010011010010011111101001110110010111111100100000010001110001100110101011110110100000100110111010000001000100101101011111100011100001100110010111000011111101010011000010001001100111100110110001101110001111000011000011001101100000101101111110100010110101000100101111110111100110011100000011111010111110111000100010011000000011100001011101011001100011100110110001110001100001010110100011101011110110011011010101111000110010001010010001010011111000000011010111111011100011000110010001001000000001111110001101110101101111111110010111010000111010010111110100111111100000001011001111110010101100110101001101111111001000010110101011001100100101000111010011111011010101001000011000010011110010001011111000011110000111001011011110000011110000111101010011101110110111100101010101111001010111110111011100011100010011111111101100001001000101010100101001101111100111101111001011110110001010111110101100100100001000011111100011011011000110110011001011001101010111110000101111001001010001101000000110001010011010100111010000000010100101010111011100110110111110011000101100101101000011101111001111000010101100110111001011101100100100110000011111010001000110101110110110001010011110111100101000000011011010101001100111011101000110111011110011101110000110011101010101010000110111111100101110011011000001100001010000101010010010110111100111101001000000110110101100010001101110100010101101011101011110111110000110010101010111110110111011100001010001001011011011010101001000011000011010100101011011110111100100010111010011000101011011101010000101100101110001010110100101010100111000101010000010100011000011110101010110000111100000110101101010111001001000100101000010111011100110110011110110001110001001100101010101101001111101001000011000010101000100011110111100100110011111000000001011000101111100101101110001101000101011011001100110110100011100011111001111000100100100000111011100001111010000010101010101100000001010100010010010000101001110001010101010111010111001010110011010111001111001111001101000100101100010010011000001001000000000101001000000011011111010000010111111101011001101001000101011001000110001101100010101011010101100101111100010100111011000101110011101011001110110001001001001101001111101001011001011111011001100010100000110100111011101101100101000000000110111001111100100010010111011001000111001100000101001011100110000001011110010000011001001100100011000110000010001100001010001010011111001110101101001010110101100011000111011011110001010001001010110111011100111000111110100001111100110011001000110101110111111011110010101000001010000000100101101110000011100110101101010000000011111100100001011000010111101111110100001010101110101101110110101111101100011111000010000001111110100110010011110000111110010001010100101100111111101111000100001001101110011010010000000000000100001101011110101010001011111100011111011111111110101101010000101101010010111101010000101100011011111100100110000001101001110010000110011111000111100101100101101111111001011001000100000101111000111000010100101101010111010001111001110011001100101101011011100101100010010111010111100010101011101000000110010001111110101001010011111000110001110001100010110110100011100111111101001001101000110000101100010000110110101111111100111110010001100000011010001100100101100100111111110010000011101111001011101000111110000011010100001010100010110011000000001011110000001010101111010010010101011011011001100010010111011110101001111100001000000110010011101100011010111000011001001110000101110111001110001100010000000000101110111000100001000100110101000000011000000011111110001100000110100010000100110101111010110100001000010100000010101011011101001000110000101101000110100110011111101010010011000001111011100110110111000010101010100011100010001111011110101001011111010011111100010000001111101011101100011000001101101101011110111011010111100000000010010100000101010110000111000111000011000101011010101111101101100001010010110010101110101010011110011101001111010010110110111110010010111100110011110100110010001010101000001001110010011110000011100000110100100111110101000010100001011010011100100001011001000101110010011001001000001100001001101011100111011100110001111000110111110100110010110110100011111111010000001011000111001111111101001111001001000011111111110110111111010100010001000110110101101010010100110001011010011100010100101000110111100001001101001101010111011101011101010010101000001110100001011101111000101010001111000111101001110100110011100111100101001010011110001011100100010111010011101000010011011101110010111111100000101011111000100111111010100000100111100011000001111100001000001001100010111100110110100110010000100111111110000100111001111011110010111011011000001011100001100100101110100100101111000011101111010100101010100110011110011100001011001111100001010010110011100011101110011010110100111110011001001100010111001111111100101010101101110110101011001110011001101000011010001101000010011010001100101101010001000001000111111010101010001101101101110101110100101111001011110011000101010000111011110000110101010100111111101011111001010110111111011011100011100110001000010001110101100011101110001100101010101010100110101110101001111110100010110100011001011111010001000100101000011000010010001001001100001100110110101000000100010011110111100100110001011001100100000101001101000110101000010000111101011111011111010001001100001100100010011010011100000110100110110110011011110000110100010000010111101110001000110100110101100110111010011000000001110111011010100000111010000111000101110111101100101101011000000100001011000111100000110101111101010111111011110001101010101100101000011111101011011000000000001111111100101000111000011111110100000001111100011011100101000111100101100011110100000000110011111100111001110011101011010000000011001101001100101110010011011101110010011100000000011000111111101110111110100011010011101010010010111011101111100111110000011111111000101111011001100111010100100001100111100101000100110000000100110101110111110010011000111101010110101100001110110000111011010101001001101100100110100110101000111110111001000101110111010000000110000100001000010001111100010001000111111011100100111011111100 +111100010111010001010001001010001100110000010011000011000010101011001101001001100111100110100111010110001110110111110000100110111010100011000001000101010100110110000001110011000100011110000111011000110100010010101011100100011110011010101010101010011101111001010101011110110111111111001001010000000001100011111111000000101011010010110111011001000111101010001110101001100100100010111010011001000000111111001101001101100010001101011011101101001011010110101110000101001101011101111001001011100111000001111100000100111111001100100110111101111011010011110100000010001010110000000111001011111011111101111110110100110011100101011100110001001011101000000010000001001101011010110111001011011100011110101100000110011111110010010000010100100100011100111001011011000001101100100101101011000110010100100000101011010000110110101100011111001101100111110001110011000001111011111000010011011011101101100100101011001011110000011010000110000010110100000010000011110010101101001100110100100111111001100101110110110010110110100100111011111010101101110011111010100111010000010001000011001010101011011010100110100011111100111111000001111000110011110111011110101100000110111010100110110011110101110010110111001100011101100100001011010110000001111010011111110000110001110010011001010001101001010100010001111110111110110111000100100001100010101100101011101100111001011111000011110011110000001101110010000000101111110011110000111010011111010011011010001000110110000101010111101101010110011100011111000101001101011111101011011110011101111101010011110111100001000111101101111110100011100011110010110000110111000111110000110010011010111111001111110010110101001010100001101011001111000011010001101000011111101011011110110001001001000101010100101001111010110111010000001101111101110001101110100110110011010101111000011011010100010001010101010101111101100111110001011001000100101001101011001001101011011111000010110101010010011011111011110010101110011010101110011001100101000111110111001010001111011111100100011100110110101100001001001000110110011101111101010011000101101000100111011110010000001010010101010010111010011010011111011000100000000110000011000010110110000010111111111111000111011101000011001111101110101101001001000110110010111000001101010010111101001110011101011101001011011001111110111001000110011010010101001010111100001011111011000101000001010100010110000100010101011010111111100100101001100111101101100001111100110011110100010001010000100000001001010110001100000010010001111111010000001111001101001100001011010011111010110110101011101111010111001111111101110001000011101011000001110111101001101100011000010100001100111111000110101110110011100001011111110111100011111010101110010101111000010000100001010110010010011000001000011011110010111100110001101110001111001111101101100010100100110001110000011010001101100011011111010100011001001011101100010000101110001101010111001011011110011111000000000000101100010001000011111010001001001100001101110100111000010011011110110010001011000101010101010101010001111011011110111000010100011001000001001111011100001011101101111100110101100111000101111000001010011010011101111100111000000100111000110100011001100110000011100111100110110101101011111111101111010010010111111001111010110001100110001001111111111101110101111000000100011101000111101001011110000000110111011111011100111111011010111101000101001000010100001010101110000101100001011011010000010000101010010101000100000010100000000100010101101111001010001111111111110100000011100100111000111001101011000000100001001010110110111000000011110010101100101001111001110101101001001110011111100101001101000001101111010000000011000010010011000110100101100110100101100110111010100001111010100111111000000100000011010101011011101000111111110110011011001001011111101110010111100011100000100110010001101100000010001111011001010111001011100010100000000001111001110011110000000001001000111110101110010110011000010000000000001111111110110100001010001111101010111111001110000010101001110100011000000110111001101111101110110100100011101101101001000100011100001001000001010111010100111010100010001111101010010000101101101001101101011101110001000110100111000010001001000110110110100010011111100011100110111000100110101111011110000111011101001101111100111010000111110010101100100010110011111010001000100100110010101010001110111000101101000100000010011100011011001101001111011100001100111101011100110100100100101101111101001001111101011100101111001110011000100100000100111010011001100010111110011010000101101000011101101111010010110101100000110100100001011000011111011101111010001010011110010110111000010101000011010111011101000000110101101011110110101100001101001101000111011111000001101101110001110000111011100011011001011101101110101001111101110110011000101001110000001110101101000011100100010010011000010101101011111000011100001100000010011010000100011110110011000000000011011110101000001111100110001101000101110011111110001100011111101101010101001101110110111011011011001101110101001001000101110110100000110001000011110101100010011001110001000111000010110110101001110101100001011101011111001100111000011000011100110000101001111000001111111010100011000110110011001101110111110110011001011001100110010110010011111110111000010001001011101101001111010001110001111000110001101011101001101010111110101001100110011111101110110010001111001100000101110000110110000000100010010001010000100101110001010100001011111000110011100100101011110101000101010100111011111100110101000101100110111011001001100100010011111011011110101001100110101100101000110110000011100011010001000010011011000100010001000000011000010110001100001101010101111100000110001101000001010101110010101110100000010011111100011000010011000000000001101101110110001111001000001111011011111111001101101111000111110101101101111001111010100000101110000010110010010001100110111000110100010110011001110111101101100000011101111110001101111111110111000011000110100111101100001000100001000110001010001110101011101010000000110110011011111001011000101000101111000100011111001111110111110000000011100010100100010001001001101101000100100111011010100100010111110110000010001100100010110111010011100101101001111000010101110101000101101010100101111011100000011110010100111000000000101010100000010000000000011101100011001110110000011111111100000010100011010000111000000101001001100010110000011101001101101011011111111011010100101001100001111101111010101000100110010101010101010001101111010000111111100001001011010110111000011010001011011010100100101100010010110100010010110111010111010011000100010010000101100100110000100100101001000011000111110100111111100101101010010000000000001110110101000010100001111110110011001110100010101110101111010101000000100001110000011100000110111110101101100110110011001101100110101110110001101001001110101101100001110100000110100010100100011011111010001001101100100001011011010000101111100011000111000111010010010000000000011111001010110100110111101001011101111101101110011000000101001001100100111001101111111101101001000110010000101011100111000000010001101110110001101110010010001001010010101110001011100000011000011010100010011111000111010101000011010010010001111010110101011000100001001100000110100101010100001001101000001000000000000101001111111000011010000101010000110110000100000010000001110000001001000100101011101000101000010110100001010001100000001111100100101100011110100100101101011011110000100101101001100101101100111000100101001001111100010001101100100000010110001110111100001111011001000110101110100110101010010001011000101100001110101000000011110010101111101101111100111110100001011011101111000000111110000111010100010101001001101100010110001101100010110111101010101001111110011001000001100000101101010000100100000110001---------------------110000000101001001111110011010011110011110111110001110100100100111101101101101100011001010000101110111111000101110100001000100001110001101011110100011111010010101000111010011000010001001001010101010111010111001010000101101110111011100110101110101101011100101001111111000000001011111101111111110111001000010101000010110111110001010010101000000011101000100010100011010010001000011000010001110101100001011011100001100001101110110111100100100100010100000111001001100000001101110001100010000000100100100011011011110011000110000011111101010010000101101010011110001100110100100110010100010000101001110100110100100010001101110010000010111010010101001011111111000111001010100001100010001100101001111101100101100101101000001000001011110011001010101010110000001001011010100110110100100110000110111101010000000011100011010100001001111100001101011011011110011001000000111011101111101111111001111111110101101110011010101100011101110010000110011101001111111111110101101011110001010000011100101011010011100111010111011001000100101110111110111000110010001011110100010011010001010110110000010101111000000000111101000001111000010011111101011010110011100001010001011110111110010000010011100000011011001001100001110011011001000101110111111100101100110011101001001100000010100010010000001000111000110111000010101000000001011010010111010001010110010101111110000101000010100110111011011000010100110101101001101111011000100110110001010111111100110000110010111000100000001010001111111011010001011010101000011001111000010100110101110000000110010110110101011111000010000100111111101011011000110010101001010111111001010011000000010100110000111011110011101110110011110110100110101110101001101001010001001111000110110001011100010011100000011110111000010010011010010111111000111010000010001110000001110100100011000101000100000011100101001111011110010111110110011010001100110000011011010111001000100111000111001110010100000011001110101100111100011010110010001111100001111100111101010000000110101010001011010101000001011100010100100000111100011100100101111000011000100101010100001100011110110100001001101101100110101000001101000101100000111101001000011111000000110110111000011101000100000101011110101100110001001001111000001010101000001001101001110001010011100110101110110111101101100011000111111010011111101010101000110100110010110110011010000011011011001100011100110101100001001110110010011010110101011010110111110100010000100100000000000010100010001011110011101101011010111111011101110111011100110000001011101101001000000111111010100100001011001101111010010101110000110101100111000010000001111011101010101010101101100011111110011000000101011110111101001001011001010010111110100110010110110010111011101101100010111100010001011101111000100011010001001000111110100100111010001011001100000011110100000011001001000010101011010001001101101110111001001000110011001100010101111010000010000110010100000001100000011111111001000011011111100100111010001010000110110001111111101110000101110000110000101010001100101100011111101011110110011000111011101100010000100110111101001011010000110111100011100101000001100111011100011000111000010110111101000101101110110100111011001111000111001101001111000001000101000100110001010111111000001110100100011111000010000100100010011101101110000010111110001001001111000100110110100100110100011010011111011000101010001010101110100010011100101011101100111101100101000011101011101110101111101000010101100001100111010111111100000001000110111101001010000110110110000010001010001100101011010110010010111001001100101101100101100111001101110010011100000111001010010111000110100001100101100001101000110010110011010101001010000101010111000001100110111110001101100011111101010000101111110100010000111000110000001101011010000010000001101101110111001110001101001111001100110010011001001100011001001111100000000010101101100111100010110101110000011101111100000001111110000001100010010100111001100101010001010110011111111001101001101100110100000111000111010010101000011110111000011011111010100000110011101000111000111011110100001111011101000000000111110010010111011001011010100101001101110110011101111001101001100110000111010110001011110110101111001111001110110110110011010000000110000001110010110010101111100101101101101010101110100101001010011001111010010110010101110000100111001101101000101110010101001101010000000101000111000000101000101110011001110110000011100111111010000010101010011000000010100000001110110010000101110010111111111010010001110000101100100111110001110011001010011111001010000100101100001100101011101110010100110011110101011111011101101010010100001000100011111010011110000001011111101000000101100110001001111001111011111001001111111001000110101010110111001011001101010100100001000111001010001001011100110000111001011100010001101001111001010100000011111001111101011000111101000000110000001001010000001110110010100001011101101010101111010101100100010000111000000100011111010110001100110110010111010101111000100010001101001010011000100101101110110101010000101100110010100001110001101100000100111110001011111111000111001101000010000000011011101000011000110010011000001111011011001100011000000011111110111001011101111000101011000110000110100111101011111010110111100001110010100110110101110010011101001101010001110110111010011001001110101101010011011000110111010010010001110000001000110011010011010110001100110111110110110011110101000001000101101111100001110001111011011100011001000101011001011000010011011011111110110001010000111110011001000010111110110111111010110100000000110100000001100101111011000001111001011111001011001010101101011010000110101100111101001100100010110011101010010101101110001100011011000110100100110001011110011011000101000110011011101100001100110011010011100011101111110101001101110101111100011101100011001110011110111111011110011011010001100010110101101011100100111101010000101110110000001101111100101001011010111001001100100101011100011100001001011101000010011101100101111111001001100101000001100101111011010011110101010100001000100111010011110100100100000100101010111001000010101111111000101101000011001110101000111011100110110000001001111010101110000100011110111011110111011111001101000101101011001111001010001011101001101101010111111100010111101111000001101011011011010111111100110001100010010111100110000111000100010000101011000101111100000010001110101000011001011110101101011000001011110110100000000110000111111101101001001111000100111111111100100001011110011110010111000110000110101101100100110100000010000010011100111011100110111000000101110110110111100011000001000001000110110110010100111001100010100001010100100111011100111111110110111100001100100110111001011011000110000010110010011011010110010010100111111101000101010101011010001101000010001100011111101101111001010000110011100111100011001100000101001010001010010101110010101010100001001010011100001000110001111100111001000010100111001000110111000001010001111000100100110000001000111111000011011011010011000100111011010000100010000011010100001000001101001010101011011101111111100010011000111010100101001101110101000001101010110111111101000101111011001100111100011000101110110110000010100111000010111000010000101001101100111101011100110000000011001101101011110000111100010101010101001001000010011111110000010100000011110010010111111001001111000110000111110110111100110001101010111011010011111100100110010000101100000110101101101000110000101010011101100001110100010101010110101011010000111001011001001011101110010010001010001010011100001001101000100100101010011110100001111000110101100000111100111111010100110010001000000010110111011111010110110010000100100000011110101110000111011100011101001101110011110011100011101000111101100011011101010001011101100011001000010010100011010101001000011000001100110111101110001101010010001000100010011010000001100110001111101110010101000110110011000000101011010011110101010101000010010110100101110010000110110000101010111010001110101010010100010010111010010101011111110010110000010000010010110111110111001101001010000000000010100000110011110001111110010110101010001101001000100011100101001101001101110111000001111001000111011011111010010010011101101010111111000011101010111000111110111111001111111011110110101010111101100110001001000000100001001101011100001110010001001111110001010010110111001011111100001101101001000110111011101010000010001001010000001111000100101010010110010001100111001111100001111011010110001111111111001111000011011010011100101100010010011001010000110001111101000011111100101110101011010111000101111000110110100101001010000111000101101010001010011010001010110010101100101101110001110110010101100100100010100000000110111011101101010101011011111011101010101010111111100010100111110101110000110110111111010000110101111001111001000100101001010011100001100101011000100111010100000001011000110000111100100001100011110101100011111011000101000000101000001111001101101100101010001111100001011100011001001111111100110011111101011010110011101011100000101011100011000010110100100000010001010110111111100100111010001111001011011101001010100011001111101111101110001010001001000111000101010001010011001011001000011011001110100010111001011001110011110001001111111011101011110100101011101111001000001001001000100110100000100011100000010110100011110111000100100101001001110111100110010011000001101101000110010110111001101011001010101100000100000101100001011111101101101101110000111001000110110101100001101001000011110010110110001011010100110010000011110010010111000011001110010010111111101111111111101011101110110010100001011000110100100101001110100101110101100100011000000111010001110010011000100110101101110010110100101111010100101100110101011011000001111100100000101011010011110110011001001000000000100011111000001110001011111101001011011101111001010100110001111011011011000011101110001011010010111011110111101111000110011100000100011000011100110101100000110111100010111000101100111011111000010001011010010010001001011011000101110001110010101110110011100001100100110001100000011010110000101100001100001100100010000100001111011000010100110010001100011100010001000110000110001011011101110011000110101111110000011101011110000101010000010000111011010110000000011011100101110011101111101111111111101011010110110100111001011110000010110101100101100000111100001110011111011111100111100111001001001011011001011000010111101100010000010010110001111010000111000000101001101100001000111101011110100001010111101111101101010010011010001101111000001010101111001010111001001110000001110110000000111111000000110110111110111000010010001111000111111111000100111100101100010101101011111011100100111100100111101001101000010010011110001010010010000010111101100011110110010000011110000001001100101010010101001110101111011101111011100111101100100111010010001001110010101100110010001101101010011100111111000111100000111011011010001001101011101000010110011110001110000011101010000010101000001110010011010001011001001111101000111100110100111100010111101111010111100001111110011010001010110000000100111011011100011001010011100111101110001011010001010010110111110110101001111001111100111100010011100100001010110110101000100111000001100001111001001110011010101110011100000001010101000000111010010110101000110001011111101010100111000010011011101111101100111000111000011100100101111110100001111110011010010011001000111011001100110001101000100110000100111110011100111100001000010000100110110011000101000001101100110000111000101010111111001100000110100000001011100011110100001100000001001111110110001101001100100001110101111000110010111111010100010010111010011011111010111001100100111110100010111000101100110101001001010110010100000111000000100001110011000011001000001111010010010110011000000001111100001000101110101010000110001100001110001100110011110111111000001101001100101010010011111100010010001110000100010110011010101100100100010001110101100100001000111101100100010011100100110000111110100101010001000011110110110001010111111101011110011010001011100100111111010111110111011100000010010110001100011000001000000100110111001010110011101111001100011101011110110110011000010111011001000111101011101110101101111010000111100000110111110001100011001110100101100000001010000010101001110110100011101011011111101110100011110100010101010110001011100001110000110011011000110001001110111100010010101001101010011000110011111111010000100001101110001111110010011101110111000101111111011111001100100100011000110100001110110001101111000101001100001100110000110111011010000110000001111001000111101011000100011001010101001110010011000011001001001100101100001010101010000011110101110010010001111101100011011101011111001111110100011001011000011111000010111000111000010100001001001111111000000100110100011001111110000011011110000011101011110110011010100001110001010000101001000110010000100001011110011110010111100000001011000000111000111011111100110010101001000000010101011110000001100101010101010000001010110100000111100100010000111010001110011111010111010101101100110001000000101111001100000000001000010001011100101010000011100011100101000110000101101100101100011100111011101011110000010010010110101101101001000001001111001110000001010111110001001011111111000001001101111111000100100100100101011101001100100000010100101110011100010100000000100000001001001010100101010011010000010100111111101000001110011111000011000011010001011110101101000101010101010001100011000101000100101111101011100111000110001111101011010000010010111000001010101000100001101100101011000111011111000101110100011110001000010011001110110100100010111000101110010101100000001010000101010000001010111001001011110001101111110010111000001011110010100011010100111001000100010000001001001111001101101100110001000000010111010001010110000101110111011011101010110010100000001111001001000000101111111001001000110010101001010000101010111110010011111000110010110001000011001011001001011011011011011111010001111000110011000000101011101100100011010000000011101010100100010001000001100011000101111110100010011000001101110010011101110111111110000010010111001110001010001111010100011011001110110000001010111101101001111100010001110100011001101100110101100011110110100011110000000111010100000110001111101111001001101111111101001000100011111011111110111101001001000001001000011111010110010001000111101110101011101000100101101100100100100100001011100111110101110111111111100010111011110000001010101011000100010101000011111111100100100011010001001001101010000011100011110100011011000100111100001001010011100000001010101100011000001001111101001011010000110101011000010000001111101111000001101000010101010111011010001001110101000010101111011100010011111101101101010010101100000111011111110101011011010010101011000001010101001011010001010011011110101110111011011001001110010110110111001111001110010000110111001110101100110001001010011100001111010111010111010111111010100010011110010010010110100100110111110101001000011111111111010001010111010111111010100011110111010111011101101110110001111010011100111101011001111111011111011001111010000110110000101001011001010001001101000001001011011011110010010101101010000010101001111011000001100100010101011010111001101101001010100011011010111110000110111001100100011110001000001001010000101010101000111000000101110011001100001011010100100111000000111100110010011111101010100101011001101001101100110101111100111100111100000101101110010011011100110011001110001101111100011101000010011100111111111000001110110010011010111000010000011101100000100000001010110010100100011111011011111101010001101101001111101001000111000111111000011011110011011100101000101010100010001101010001111011111111100001010111000110010111011111101101100000011111110010000001100111110000101000101111010101000001111001111011011000001011010010010111010111110100011000111100001110111010110100000100000001101000111100100010000001100010111101100010101010110000110111101011000000101110101010111010010001101010000010000001100101011001011001000110110101110011000011100100001010001101111100100001011011011111100000111100001010100000111001010011101010000101101111101110101011010111000110101000101011110110100111111100011010010001010001000000000101001110101001111010001011001000100010111000110110001111111010001001110100110000111100000100000011001110001110011010011110001100110100101000011001001000110100001011111011110011001111011011101010110010010000110010001111100110010010110111001100000011111000101101111000110010100110100100111001010111000110111011110100100010011101001000101101111010010010010100000001100000101010000110110101000111010010100100101101000011101111010010111100111011011000001010001100000110110000001010011011101010010101001110000011011101010100111011000110100000111110100100110010001011011111110110000111001000001001011011001010011100100000011001010111110110101110001101110110001001111101111010010010001111000110011000101101001100111011001001010011100010000110010111010001010011001000110111100111111001110111000010000010110001010110111001011001100110000001001001001011000100000100011110010001010111110101110100001010000111001001011110000011101010110001001100100000001110110010111111110010000111110111000001101011100101110011100111111001111100000010010111111011001001101111101111111001101111000101110000101100000110011001110001000100101000110011011111000000110100010100110000111101101001110101101111001111110110101000010111000101111111101100101000011010010101100001010101101101100010101101111101110100111101110010011010111010001001111000010011000100101100001011111111110011011011111000011101001101110011000101110001101000101011111000000111101100100100111110100001100101000010101000111010101000011110011101101001111100100101101011101000110011110110001110011010011001010101000101101110110110110100001100000110101100000000001111111011100000001010111010011110100010000000010000010101111101010111001101011111100011100100111111000001000100101 +000101000111101100100110101100110101001010001011010001011010110101000111111101010011110100011110011000101111001001111010000011100000110001011001100010001000100011011011010011110101111110000010110111110010000010010110011000110110010011110011100011010011110011111110011100010010011001100011101000100111000000100011011010001111100110100110101100100000011110000010000000101011000100001010111101111101110100000001011000001010111111000101100101010110110010111011011001101001000010100000001100101010110110111011000011100100111000010010100101101001011100101110001100100100111001000110011010100001011011101010000111101011000000111000101011110110111111001010001100011001010110011101000101111100100111011011011000111110011110001100110000000000101100000101011101110100110110101001111100010110110011011001000110000001000101110001111100100000001011101100000001101010110101100110101001110100011101000111001011101010000011111101011010100101001001010000010111111001100010101001001110010100001010111001101001001111000010110010110110010000001100111110000000101010111010101100001010001110101010101110111111001010010011011111110111011111011110111010100110010101100000100111110101101010110111100111010110001010110000110101010110011011111101101001001011110111100011101010011000001011011101100000011110000011010101100010001101011011110111111001011010001111010101001011011111011001000100001100011011111101001110101111011000101110011110110000101101111100100110010110001100000101100101111001000101100101110100101111010101000100110011000111000010101100110001101011110000001001101011000110011111110010111010000111110001101110010001010101001111110011001011011100101110111000110100100111110000100001000001001011101101111011010111101101000001010100011011100011000010110101100110111000000011010001101001101011101011011101100001001101010001011011111111111110100001011100011100000001100001110010101011010111111101100000000011010100011000101100001011110001001010110000110100001111100000110101010101111011011100110010010001100110110101101011000110010101001111010100110010011111110100111101101010000100010110111100001101000101011011001011011011100100101010101110001100001101110011110011010011100101011100010000101010001100010111111110010110111010000101010101101101111000000111000000111010011010010011001001111100111000011100110101000110111101010100111001100101010000010111111001010000100100100110010001001000001001001111101101111010111000000010010010110010011100101000000111010000110111001111001110111011010000001110001111111111000000100011001101001101010111100111010010001111001010110110101111100010011010011011111001000111110010111110111010011011110010011111111001011001000101010101101110010101100010100101001010000110110000011100000100101111100111001111100100111010010100111110000011001011101110000111000010111110101001010101110111010011110111000110101000011000000100101001101011100100010100110111001100000100110000100100011101011101010111001001100110100010101100001110001101110110011111111001110100110011001110101001001110110001010100101001011010100100101010001000111011100011110110001010110000000010011101011100010011011000100000010111100000110010110101011001111010000011011010100111000001001101001111000000000011100100001110001001001010000000001000010010110110110101110001011101011000100100001011010011000101000110101110100010101111010000111011100011001101100100100101110111010011101011100011110110101010010011000001100110101100111011110110010000100100101111111111000000000010111110000001101101010001101001010100110101000000010000011100101000111000100101011101011011100011110111111111011000101101101000101101011101111000101010001110110000110110111101111001001110001001011010111001101010011111111111000011000111000001100110010101100001100011000110011110000001101101110011011101110101011101001111101111011111100010101011111100000101011010100111100001001010001000100110101000100000001000011010111110011101101100000101010100010111110000100011111001100110101001001001110000001110011000011111111001010101101000101101010110110010111011011011111001000101001101101001100111000101010100000100011110000101101100110111000010111001011101110100010110000110100001101001110011011011110010001111110001000100001000101100101100111010000000011110001010111000101000100011110001000000111010111111110101101100101110100110110011011101101110001010111001100000100100101111011001010010100011110100010110110110110000100100111000101011110011111101001111100001010101100111111101110111001010000111100111100101011101101001101100011000110011100110110000110011001001001100011100110101010100101100010011111110011000101010000100010111010110101001000101011000001010011100100011110111111010010110000110011110100001100010001111111100011101010101010010100001011111101111010001110000111011111101000111100100000111001001111100011010111010000100100110101001101011010011110010100110111111111110101000001111100110000011001001111001010111110100111101111000000000101000010101000110101100110101000101000011010000010111100100100001011001110100100001110011110000010100111101011010001110101101010110010110110111011010101000110010111011100101111111010110001001111011111101000011010111011010110000011001110001100100101101010010111111011000100011101001111111111000010010011011001101101110110110101000111010001011100100010000100101101001010001111011100101010100101100110011001111011101000010001101111010110101010000110110001111110010001000101111110110111011101100000010010100011100011000100011011001100111100111100010110010110010111111101010010110100111100010111111111011011101001110101011100101101000101000000101110101100110100110101100101111000001110010100011011000110000001110000111001000010010110100110100110101110110111100110100000110010011011101001011111111000001010101010111110010011001000000100101111010001001010101101010011100011110000111011000110101110110011110100100110111100001011111100100010110011010011101100111100101001111000001000010100101011011110001000000000100001111101000001000110000100010111011011100100100010011101001111000110100100100000101111110111011100001100010011100010011011000000011010000110000110010010011000001000011101000011000110000110101101100100111110001000100100100111101000110010110011011000010111110010110110001000011111010000101100010010111100101111011110111101000010011100110011100001010010011011010111101101110100100101111010100010100111101110110111110111001011010001100011111011001000110011011011010001001010010110011001111001010110001001011100010111010000111110010011110001000011111011101001010010000111111010100110111100010100110101011011001001001000000111111111111010011111110011001101010101101011001111001100101001111100011110001000101010101111011011101010001111010001100110101000001010010111001001010101111100011101110100111000001011010000100110010010011110001000011001110101000010000011010100011111010000110110001111100010010001000011010001001010110101110111100101101111110100011011100001101011101000010111100010111110110100011100010001100111111100100011010010011000000001001001000000010011101110011110010111000111111001000000111010000000100001011000110101111000000110100011111110010110100110111101011111111000011001000001001100000010000010110000000000100110100001011100001011010111100101011010010000000000011100110011110011110110101100010110110001001110011110110110011001000011110011010100000001100111101111011101001111011010101010000011001001111011011110000010111101110100110010110110001100100000101000100100100001010111011100100110100000000101110110011100111101000001000011110011000011000011100111110010100110111100001111110101101001000000001111101100100010001010011101100101010100010111110011000011010101101111000011110100101101001000010100000000011010111110001010110011100001001001001010010111---------------------100101000001000011011010000111010010110101001010000000001010000001011011010010110110101000111010101111111111001010100110101100010011010111100111010000001001101011001010110010010100001010101011010111101000010100001111100010110111000000111100011001011001000000101001001011001101100100111101101101010011010101001111011001000001011001011010011100100010101101101010110111001101001110000100011100110000011011101111110000010000101011111000100111000111110000110001111011101101101110001100000101011100010000011000011110001010101001010110100101110110100100100011000011010101101011001100010001000010110001110111110000011011100010010111000100011100111011111111111010011000101010010110000001011101010010010001011000110001110110001111101101001110010011111111011101000000101110100011100110000101101111011110010111010100001100111001001001110010010001101111011000111000001001110010001001010000010001110101110100111011010000011111100111101011110010100010111100001000011110101111100000000010001001011001100001111111110010011100100101101000100010101101010100000111000010000000011011111001000000111110010011100001100011001001000111111100010010111111000101110001000100010111000101101000000101111101110110010011101000110011111001100100101100100100001001100101000011100011111000100110010000110010001111001101110111011000000110010101010110000101100111110011001101101110101110110001110111111001111111011001000101001011101001011000000010100100110100111000111110000001101011111101001100100101001000010100011100100101101001000001001100111011010101111100110110001101111101000111011111100000111001101111000000011010011010001110001001000100111111011111101000111011101111011001010101011001010111011001101101111001110110001100101000110111000101010001100011110101001100110000111101011001111011010001110001111010100001100000011110000011001011110010001111101011101000100010101110000000110001110110100000101001001010011011011111001101000011100110111000110010001010111110001000010101101101110001100100111111001100001001100101110110011110100111011101111100111101000100010100100011011001000010000101110111000000110011001101111011000110111010001001111000000000101001101010100101110010100110100100010111101111010010111000101100100110010101110101011000111100110010011101000011100101001010000010010011011100001101101000001100001110110011111001101000011001111111001101010001101010111101011010111000110011111101100110001010000100101011000100001111011001101101111000100100011011000100111100011000000010011111110001010001110100011001011011001010010111001111010111101011110101101100011111100000011000001000011101011101000011111010011001111000110001001010000000001101001011100000010110111010110011001110010101101000110110001001100100011101010010011101111000010100111011111100011100011110111010110001100010011001010101100010100100010001101010011111111001000011111110110000101001001111110101010111001110100101010011101010100100100001101110001100011110110000111111110111011111010011100100010111010101111100100100111101000010110101011111101110110000011111011010111101100001000101001101001000001110010000010111100100101001001001001100101010110001111100000101011110010110101011100011111010000001101101000110101000110110000011011011101011010011101001000011010001110010000101100100111111011011001111111011111101001010110010111010001101000110010010011101110010110001000010100010101111011100001100000000111010110011100101010111101001111101001100011110101110011100100111101011110001100100001101101100111111100110110110010001101001100001011100100110100010001110101111111011010111000010110100000111101101101101000110100001010110000001010110010010111110011101110111110111101000101001101000001101000110001001010100111110101111010101100000010100001101110000110110100010100000101000001100011101010101100111011101101000111101000111000111011011010010110010101011100111011100101011101101101101110110100101001110010001110101000101011100101101100010110001101010001011011100100000100001110000101000110111000110111001001010001000101000111011101001101001000011110001011111000110101010010011110101010011001110010101000011010101101010011111100000011000011100110010010011010110110110010000000011010110101001000111111000011101101011111110011100000110100000010110011110101110111000010011110100011001011011111010101110111100011111011101001110000110001101001101110111000111001110110100111010010101100101000101011000111010000101001000100011010111000000110111100011011101110011110111110101001011100001011010111011100110011101111100101111111111111100001111111101100011010100110011111001111101110110110111111000100111001100110000000111000101001101101010110000001110110100101011100100010001100001010101111010110111000111110101010110011101001001111100011100001001011110011010100000110010100110001000101101101010110000111010001110000001111100101011000010011001100010000100001110001100001001001100100100110101000011001100010111101011110101000010011111100100100010001000111001001101100011101011101000000010001001001001011010111001101110110111011011010011110010001011111110001100111010100010000110001001000110100000001010100101100101100110011010100000011000111001110000111111111001111101110000011000001001011111010011000010010101011000011111110001100111101011010000100100001010101001101000010110100010001100110000000111010100010111001101101000000111011110110101110100001010100100111001110101111010000101000100001001011001111011001111011100110110110000100001100011110010110001111010111010111111100000010111010000000011100000010000100110011011000010111101010000110010100000001101010001100100100001111010000010000011110011101000010010001000011110001111000000000111101110101100111100000111000111000101001100111111101001101110101011100001101010100010010110110110110100100111010001010110100100110001011010010100000110010100000111101101101111000010111011001111010111000000010110000101110100100001010101011110110000100011101010100111010110001010001101011100011111010010001001011101111000110010010111010011011001011000000110110110001100111110011010100100111100011100001011011110110011100001100101110001111000010001000101110110000000101111011001110000110100100000101001010011010010100100101001001000000011001100011001111100110110110110011000110000101101011001111100011110111001100001100100101100000000111100010001101001000110000110100000111101101010000000101110001111111101001000010001100011000100010110111000000110110111101110100011111010000111010011101100010101101001100001000011100110100001100001101100001000000100100101010111000100101011000110000010000111010001111011010010000010101000101111000111101111101101010010100110101001001101001111111000001100110100110011110110100110111111000011101011111101100100010100010111000110111000010011110101101001001101101110111100111011101011100001000001011101001001000011011101110001110000000111000000110101011111101010101101110000101110101011101101010011110001010101000100000011001111110000001110011000111100000110011100011010000101011100101101101110100000101101010101110111011011000100001110000101111111100111101000111100011110011011111111101101110000011010000001101101101010010010110001110011100110000100100000011111011011111100101011111111011001110000100011111001100110010000101001001011000100101011111000110100110110010001011000100110100010101100100110100001000101000011111000011110001001000010111000001110000101001100010001010000111001000001000110010110100011101001011001000110011100010111011011111100111011000010010001011000101111101110010010101000010100011001101011010001001001001111100000011001011000100001110100011111100001110011000101101110010110011011010101110100110001000011110100010100010000001001000011101101011110101011011101110101010010000001011011010100000001101000101110011011100111100001010111001111111100000001000000001010101011111111101101011111001110111010101000011000111001011111100011011010011010101010111111001001101011010010100010010000100110100000011011001110111100010101000111110010000010010111000100101000010010011111100101001001110111011010011010101111010100011111111010101101100110111011000000001010110111000111000011101111111001000010010011111100000001010010111010011001010110111000010111110110100011000000010010101111100101100100011000111011010110001010010111001001100001011110110111100000001001110000101001101111000001111001011001100101000000110111000011011100111111111001000111110011011000011110101000011110010111111101101101110100000011110000000111011100101101010011011011111011100111010001110001011110010110010101110111101100100000111110100111100100011001001011000010110111001001010001010001010011100111010001001101011110001111010101010100101010010011011011001011010010001111111100011000111001111001011011011111010011010001100000010011101101111100101001000110110100011110110000011101001110100101010110111000110110110100000000110100110010010101111011110100110001100111111001101111011000111011010111100011100000111001111001100000101110010101000010010111010011010100000011001010110111011110000011011100111100001010010101100010001100101011101000101010000011110010001010010001100010110110011000011101000010011001100101010110011011101111010010111000010010111101101110110111000100101001011110001010010000001001000100100111111011101110100111000100001110000100110010011000010000010011111110100100001101100110111001101011011010110100101110111000100101100010000111000000001111100110001100111101101100001001011011001101001100100001101000001011010101001111001011000111011000101001101110101110010111011010101100000011000101101101011010100111000001110010001110111111111000001010011011101011001010000000000100110100100101000001111011101011001100010010001110110101101011000010000111000111011011011001111110110000011100001010000101001111000110110111001100100001100101001111111101110001110001001010000111010101011110011000101101111110011100010110011001101010010100100001000101111011110100001111101001110000101011001010010111111101100001101111010011101100100000110101010100100001000110000101100011101100111100011011100001010100111101011000010010011111111110010001000101110011000101010110111110000001100001100110001100000011001111011100111110100000010110100000100101000100111011100011100100000101010001010001000100101000111100011111100001101111000011110110011000110100110100101100101111011100101000111000011101000011001111001010000100000010101111100111101000001001101101011011001110101101000101010100011001000011010100111001111001000110110001000011010101000011000011110100011101010100011101110010001110001011010001001001001101001101001001000010001101110000011111010000001000110010101110001010011000110001010001101101011101010001111111111100101101010111011000000110110101111100000101001000101010011011100000011101011001111110000110110110111111001100000000101001111010110010000001010010100010100000010101010011001000011000000011001010001011010101101000010000011100000110111000000001000100110101011101101001110000011001110010010100000111101011000010111001100111110000100010000110011001101101001001111011110011010101000111011001100110101011111010110110110010001011000011011100010001100110101011111010110101111000011010011101110011000011100111111010011100111001000101100011000101010110010100011110011011110011110110111100000101010000000111001000101000001101000001100100000001110000101101000001011000010101111110101100101100101101011011010010100100000100110100101011001111011101111000101000101001001111100010011111011110110110111101010101011010000111101100010110100000110111110001000011111011101110101111011100101001100110101101010101110101001110000011100001000001111000111111010010111000101110001100011101001001101100000100000010001010011101111100001010001001111110111101010001101111000001101101100010101111110010100010001000001000000111011001101111100110110111001011010101101101110000000111111111001011110111011001111001001110001100011100011100011111001110011100000000011000111011000101001010010101101010111000100010100010011101011111101010000110100100000000010001010111001111010100010001011010000011010101000101111100011000101100000000110010101010110110101000011001100011000110100001100011110100010110110000100001111101101100011011001100011001000010001011101011101100111010011100011100010000000111100001001101101100100001000011000100110010100101011010100010101101101100100110001001000011101111101100101001110010100101101101011111000010010001010010111111110000111000101110000010011001111110111100111100110100111111011001000001011111110001010101001101100011001000000010111111101100010011001110001010100001110111011010101010101010001011001111001101101111001111001101011010111011101111000010100100010110111111001101000101100001100011111101011111111011100100011110000010101001100111000010001110110111000000110100000010010100101111011101100101111001100100011001100000111110010000000011011111100101101101111010001100001010100001001100101110101111100111101000101011000110011000001011011100001101101100110111110101000000011010001011011001000000010011110000110011101011000011100100100010010100100100010101000100111010100100100100010101000001110000011000011111011101111111001000111100100011000010011001100111101000110011111101101101011010111010111011100001010010100001011011100010101010101010100000101000010011100010111001011001000011101011101101001011100100100100001101001010110111001111010110100111110000111011110001010011001110011110110111010010001000111001000101100000111111111001001001000000101010011010100110110110100000010000101111011001011101100011100000001111000111001000111110000101110111001111101101011001110010101110011111000111010000010100000101010110010101000011110111110101011110000101110010111000100101000010001011010111011101000010111010001110100111101100010101111100011100011101000101100100111010000101101100011001011010010101101100101111001100101011110101101100010100100000001111110100001100001011011100111001010000010010011101100111101100010010011001010000000010011111110000111011110011010101000101110000000001111010111011011101001111010100111101110101010010011011011000010100001000001011111000010011110100001100011011100010001001001010100000001110000010111001000111010000111100010010001011101010101101100101001000011101011110001011011001010010011000000001101101001010010010000000010001011001111011101010111100001011100000010001101111011110101001101110100011110111000111100010101101100101011111100110011110100010111010111001010000100000010110111010111010001111110110101011100001011111010001110111011011001011011010001110011111010110011110111100000001010110000101110110001001100100011010100110001110101111000001110011010100100110000110101111110100011100000011010111110111010010110001111111010000100011011110000101010110000011010011101011101101101000101011011000000110100000010011000011101110000010000110110100101110111111010011001000011000111110111001000000110101100010011110111010011100100110000110110010111000001101001011100111011010100011000010000110101010000101011111001111111110101110100100011110000100110000100001010110111000101011001010001011011000010110111100110101100100010101111100011101000010011001011011110101101011101001011011111100111000110101000110111001011001011001010001110111000110100111111101100011010110011101001000010000001100111000000000101110000101111110000111111110110100001111000110111000011100001101100011011011110011110001111011000110110101011110110011101100001100011011011100101011100010000110101110010101100011011111100010110110011000110101000000001010111000010010001100111111111010110010000010001010000101111101110000000100011010110110111100000101001010111000110011110100100100010111110001011000111000010101001111111110000110011000111110101101110110001010100110001110101000000100101010111010100110100101110000111011111001010111010110001100110101001010101111101101101101010100011100100101101110001110111101000001100101011110010010011111000110011110010010111001011110100101110110001111101010111100111111111001111001000100101110100110010101000011010000110110010101010011111101110111110100001101001001001001100001010110110000001011001011000111101111000101111011110100100100010110011010001101011101011100110010000100000011111110111010010011000111110110100011010101010010010011111110111101111101000000001101110101111011010110110100010111000101110111101101011000101110011001111010000010000001111111010001001111111000101010101011101101001000000000100001000000111000110011001100110100011111011101111011011011000011110000001101101001110010111000000111011100101111010011111000010110000011001001010010000010100101101111000111101100001001101101001011011000001111010100011011110111100100101101011110110110101001010010010000010101000111001111010011010100110000110000101100010000110101100101101001011000000111001101001101011011000011100111110011000001000011110111000110000111010111000011100010101111111111001100111010010001000110100101101000110111011101100010111101000011100111011010010010101111100100000001010111011010110111010010001101010001010011000011010101111111111100011111000010011110100010010001011001000010011111011001110111111110001111110011101011010111000000011011110000000101101011010101111100100110000100010001111111001110101111110000111011111100001000000011001101000110000100010111110010001011011101111101001100011111100110100110010001101111011001010100011100101110110010000011110000100001001111000000100010110111011010001111110101011011110111101111111010111010011001001010100000110011100111011111001101101001110001101000100011001001001001111011000111101000010101111110111001010100110001010010111111000010010100001100000101110001011011100001001111000111110010001100110000110110101100101111010101101101011010111110010000000101111001110111011101110001110111100000001100011011010110010110111011001100110001111111101001101011001100100110111011101011011000110111110011100010011100011010100010101110101111010010101011011001111011101000001000111001111011011100100100000100101110100011 +ls5msgs +00011010101100001010000011110101011011100010101100010101011001001111101010101110101001101--------------------- +01110000101010111000110100101101111110001000100001000011110010110011001101011011101111100--------------------- +10100101011000010101110011001001101001101101011010001001000010011100110111100011111000110--------------------- +10101101100011001101010010100011100000100000000000011001110010010110000011110110100001110--------------------- +00011100011000110010010001100110110010110011110001111111100011100101111111001110101011100--------------------- +01010111110100011110110000011001001101010010110001001110100110010011111010111010110111010--------------------- +10000110100101010111000001001110000000101000000101111011110111011001110111111110000011000--------------------- +10100100110011010011011101000101000101100100011100110001000010101011110000010100111101001--------------------- +00010000100111110000111000101011110111000101110101111100101011011110010001100001000011001--------------------- +00010111001101101010101110000100101110110010111001001001001101101001101011101100000100001--------------------- +ls5cwds +1100001010000011110101011011100010101100010101011001001111101010101110101001101---------------------01110100100010011100100101111110000110100110011011100000110110101000010111110110101110101000011010001101101010011100111111100101010101001101011100101001110101011110100100100111010011000111101011111001000100101001111010110000011010 +1010111000110100101101111110001000100001000011110010110011001101011011101111100---------------------01110010001001010010100011111000100111100001100110011110001011110000110011001101010111111010001000010110010100100101110001010000110001001101010101011101010110000101101011111110101110100101001000101000010111001000011000011101011101 +1000010101110011001001101001101101011010001001000010011100110111100011111000110---------------------00000100010100100101100000001101010110100011001111101001001101010010111001000010111111000001011111111010111011010100101100100010010011001110001111111110010100110000110101110110111000101011110000111000110010000100010101111111101000 +0011001101010010100011100000100000000000011001110010010110000011110110100001110---------------------10111100101011001101110111010010111010101010110010100110010010101101010000000010011011011101110010111010100001001010111000010011000001111000000011010100110100000101101100010101100011100111110100000111001011111001111010000010110010 +1000110010010001100110110010110011110001111111100011100101111111001110101011100---------------------11111000100110111000010011111111000100000011001011000011101101110010011011011001011010101110000111001101010111101101011010111110110100101001001001110100011000001100011000110001000001101110011100000001010000101010100101011101101001 +0100011110110000011001001101010010110001001110100110010011111010111010110111010---------------------00000010010010101111011011000001011011100101101010100100110101100101100101101100010000100001000110101011110110111010111000110101100111111001100100010100111011111111111110100100011101001110011101010010111101110000110111110101111011 +0101010111000001001110000000101000000101111011110111011001110111111110000011000---------------------00101110111110100110111101011010111110001111101001110101001100100010011110000100000101011001001100100001011010111110100000010000010000111010000011001110100010011011001101100001000101000010101101011101100000000111010111101011101010 +0011010011011101000101000101100100011100110001000010101011110000010100111101001---------------------10000111110111010101101100000001111010011101010111001010011011110011100000100101010100000010111110011101110011011011100110100010111001110011110101010001110011001101100101000100100101111011000000011010100001100111011001010111010100 +0111110000111000101011110111000101110101111100101011011110010001100001000011001---------------------01101000000100001110100100001010100110101111010000110110110000111001001011011000101100100101100010101010001111011111100111110010010111011000000111011100010011000101000111110010100111000010010011011001010011100101000110010010101110 +1101101010101110000100101110110010111001001001001101101001101011101100000100001---------------------11101000111100111001011001100000110000001000000100001001011100101110100010101100010100001000110000101101000111001111010001001011101010111100110011001011010100011111110100100100101011001000100000010101001011101100000000010111111000 +ls10msgs +1011100110100001110010111000010111110010100101001011110011001111011010111011110100001101101110011000001011110111101100111010010000011111000110110000010111100110100000001000000011001111100011111110010--------------------- +0111001011110010101010111111110100001010110001111001010111011000101010110111110101010111101110110011010011111001011110011001111011100101111110001011110111101000001111111110101101111111101000000011111--------------------- +1111101010101001100000011010001101101000011100111111010110111000011000101000101101100111011110111100110111100111011000011101111001111011010100111001100000100010001110110100001011011100001111010100011--------------------- +0111010000101100101010010001000010011101111011000111000010001101010101000000010100001110010111011000010011110100101111001100111011011100111111100000100101100100010100110011000110010110010110110001100--------------------- +0110111010111101110101011000101111111001001010010010111110110110110000100011000110011011010100000101001101010011000001001011011100001010010101011000100101100010011001100101000110010110111010001000011--------------------- +1001111011010101110001001011011000011010000100011001011111101011011101011101110111110001011001001001000100101111101100101111100011001110011010111000010111110100111110010011011110110100100110000101000--------------------- +1101001011010001011010111011111001011100010101111010010100010010111011010101101100101010001111100101000100111100010101000100001100100111100001100001010001000101010101011110000110011010011100001101000--------------------- +1110000000111010110101010110010100010101001010001111111110101100100011110101011101001011100101110011101100011011110010100110000100010010001010010111000101101110010000000000000000101100000011001100101--------------------- +1101111111010000100100010000100001101011100010100111011011001000010101000000111001000011001111101101111111101100100110100000011101010111111011011011110011110001010010010111011000011010010011000011000--------------------- +0111100010001110011101001100010001110100101100010001110110001000010010110000101100101100100100011101100101110101101001100110100001100011111011110101011111100000011011101110111010110101001100011111011--------------------- +ls10cwds +10111000010111110010100101001011110011001111011010111011110100001101101110011000001011110111101100111010010000011111000110110000010111100110100000001000000011001111100011111110010---------------------1000011001100000110101000110101001010100001010010101000110001010111101110100011101001100001010010111011101111010101111011011110001011001010001100101010010110101001001100001000111001110101100000110010100001101100010011010001110001110011110011100010110000011101101101011110010010001001011110111001001010101000011101010111000000001001101001110000010100001100100011110001001110001100010111100101101000010011010110100100001000101101101000010101011010010010110000100 +10111111110100001010110001111001010111011000101010110111110101010111101110110011010011111001011110011001111011100101111110001011110111101000001111111110101101111111101000000011111---------------------0100011011101010111101010011101011010011110000001011000101111111010010011101000101101110011111111011110011011001110010001000101100101111011100011011010110000110101010111100001011000000111100110011101100011011100111000011011101101111100001111001101000010110111101110011101111011010110101111001111110100001011100001110101111010100110010101100001011101111111101001001100000001100110111010111001001110010011010010100110011101010010000011100010100100110101101001100 +00011010001101101000011100111111010110111000011000101000101101100111011110111100110111100111011000011101111001111011010100111001100000100010001110110100001011011100001111010100011---------------------1010011101101010011100110000001101001000000100001101000101110010100100000001110101101111101001101000011111111001101010001000000111111101111100101010100111001100001000001011000000000010111011011110011100001101100110000010111111101111000100101010000101100001010001111101011001000010001110100000001011111010100000111000101011110110010110010001010000010000010110100010000001101110111011011001011001110000001011001101110010001101011100000000001100001111011111000000 +10010001000010011101111011000111000010001101010101000000010100001110010111011000010011110100101111001100111011011100111111100000100101100100010100110011000110010110010110110001100---------------------1111001100101010101010000000010000010011111101010101100001001101110111101001100111001110110110101010100101101110000101000010111000111110000100101110001110010000011011000111001010101011011100101101101111011111000101001100001001111000000001111001001010000110100000010101001011110000010011011110100000101110010100010101101110111110100000110010000110110110011010110011100110100000100110111011110101101011111001101100100011011001000000111100000100101001111100010011 +01011000101111111001001010010010111110110110110000100011000110011011010100000101001101010011000001001011011100001010010101011000100101100010011001100101000110010110111010001000011---------------------0110101111111110011010110110001101010101100110110100000011110110100101100001111001010110111110011011011101101110111011010110000100011100101000100110111001111100010010000011010011110011101100111011101111001111011011111100010001111111011000001010111110011000111101110111010111011100101101001110001111101001100110000111011000010101110110111011001000101100111011001110001110011000110101000011000101101111000010011100010000110000110011001111011100010011011011011010 +01001011011000011010000100011001011111101011011101011101110111110001011001001001000100101111101100101111100011001110011010111000010111110100111110010011011110110100100110000101000---------------------0110111110001011111000100100000001110000000101011000010110010101110111111011110011111011010001101101011000001011100100000000100000101010101111010111000001001000010101011111000111011011100001011110100000110110000011110110000001110011000100101101101011011111010011011110011001101101101001011100100011110001101100100101110100001001011111000011111010000000001011100100010110110101010100101001011101010011111100010011001110111000101100011111011111100110000111001011 +10111011111001011100010101111010010100010010111011010101101100101010001111100101000100111100010101000100001100100111100001100001010001000101010101011110000110011010011100001101000---------------------1101100101001010110100111111111110100100001001011001000001001100101000010100011111110000011110100110000000011101111100101000111110101001100010101001111000000111110011000000001111111000011100000001000111001100011111100100011001011111100010000001100110001011000101011110110111001001001011010101110000100000011011001110101011111011111110101101100000011001001111111011101010001111001111100011001101001011010100010011001000111011110001010101010001100000011011000110 +01010110010100010101001010001111111110101100100011110101011101001011100101110011101100011011110010100110000100010010001010010111000101101110010000000000000000101100000011001100101---------------------0000111000010101001101110010001001101101011011101001110110000010100100111100011100001100101100110010101101111011010110101110101010101000000100110001100101101110111010010110011111111011101110010101100101110101010010001000010011110100110000100101111111000001111010110111001011011000101101001000101101000001110011101101011101000100010100111110000110111010101100000110110110111100100010110110111101111000100010110110101010011001000001000010110101011001010100111111 +00010000100001101011100010100111011011001000010101000000111001000011001111101101111111101100100110100000011101010111111011011011110011110001010010010111011000011010010011000011000---------------------0010011101000001111011010000001111001111101101011010101100111101000000100000100001001010111100111001011000001001001011101011001001010110000011001110001010010110010011011011100010000100000011110000100000101110011110001010000100111111011011010111010100101110001110001010011011000111111000001101010011111011110001100101000001101111000111010001000101010101001000001110100111010100100110100011000110011100000001111110000101001011110010000000011011100101110101101000 +01001100010001110100101100010001110110001000010010110000101100101100100100011101100101110101101001100110100001100011111011110101011111100000011011101110111010110101001100011111011---------------------0111101111100000010001110011010111001100111111010000000100100000001100101101101110010101010001010111010111110001000000011110110001110011111110101001001100101000110010010101011111111011011011011111011111010000001110010000011010001000001001001010101011100100000100000111101011001100000001011100101001101101010111001011000110011101010001110000010110100000110110101010101111000111100011110100011111000000101110011011100000001101010100011100000100101001110000101111 +ls20msgs +01100000111001011101000000110001110100101000100100111010101100011111010011010000001011001001001010000001101101000001010010110101001011111000010000110100110010000011101000000111101101111100011100100011011001011110000011100110100111100100111100001000001110101100101010100101101010111111011011000100101100000000100101100010001111010011100000000111010101001110001001111111111101000110110110110100111010001001010100011011101--------------------- +11100111111001110010010110100111000111011101100101010101101101100000110010111010110110111101100001101111011111011110010011101010000001100101100111010010101001101011000010110010000111010010010110010011010011100111011110011010110101110000001000100001111010000010111000110110111111000111010100110101101110011011001101111011100100001001000100010001011100100000100110001110001100100111000111001011000001100000100001110000100--------------------- +11110110111101010110100001000110100110110110001100001100101001000101000100011001110010000010101111011101100110111010011111110001100000101100100100101011011110011010011000110101101101100110111100101110001010111101100111111001111001111101001111001011010111111101110010010111001001110010101001101011011111100101110001011100101010100010000111111011100101010111110100101110101101101011010100111000000111010111110111101011011--------------------- +10101000011000100001101100111101010011010101110010111011000110011111101111011001010101010100011100011110011101101110001001011000000001001101010000011011000111110000011011010111011111001110110011010010111000101000111011001010101011001101000011111110110101010111100101011110100111100110101101100011100111001101100011010110101101010010000001111100111100010100100001110000110111001000000110110011100011010110100011010010011--------------------- +01101101110111010100110000000110100111100101100110110010001010100000010010110011011100111011100010000101111101001011110001101111010001111011011110111011011100000001110100110001110011000001110111101100100011000111111101100100010110110100011110000110111000010101111101101010000110110011000010001100101100101000011111111011110101100010111011010010010100101001011010011001000110101100010110110010011001011101101101010110101--------------------- +01011101000000110010001101111101010110110111011110111000100110011111101010011001101000000001011101001101010000100001011001100001000000110100101110000100000101110100110000101101011010000000100100101001011010011000011011101000001010111100011010000000011101011011110010111110001001001111101111010111010010101101010110011100000010100000111100001111000111101000101110000100101000110100001101001100101101110101011110101110000--------------------- +00110000101010101011101110101001111111101110110001100111100110011101000110001101011100100011110111000011101100101101100101111010001111101011001110100100000111001111101101000110101010101010100000111010011011110001110010110000010110000011011101111101111011010100010110101110101101111111100100101011001110001011110110100110111010010101000011111000110010101100101110010010110111110010101010011001000000000011011011011000100--------------------- +10001100010111101011001001101110010101100001011101010101100110100101010111111001101000100101011000010111011010010000011111001100010000110010101100010100100100000110110001001110001011010010110010101001011011111001011101001000111011101010000000000101111011100000110110001110010001011010110000111100000010001011100001011110001001111111000101111110110111101101011000100010011111111101110011110011011011111110001100000000110--------------------- +00110101010000110001010100111100111100001000101011101010111111111000110011010001101101010111101011110100001011011111001111110111110100110011101110000101101001100011011101000101111000011000010010101010011110000101100100110000010100010011100111110100101011101110100111001010001001001011011011001111111001010111110110011111011110110101000110000000100110101101110101101010010001011110001100100010110000100100100110101001001--------------------- +10000100100011000000001111010111010110000011100001011101111001100111011010010110111111000111100000101010001110111011011111010111010001111101000000101110010001101000110010011001010010101000111000010000111100111101111001100011111001011001101100101011111011001010010000110011110001101000110001010010010101000010111000011111111001101000111010011011100100011101011000010100110000111101001110001000000111000010011001001101100--------------------- +ls20cwds +1000100100111010101100011111010011010000001011001001001010000001101101000001010010110101001011111000010000110100110010000011101000000111101101111100011100100011011001011110000011100110100111100100111100001000001110101100101010100101101010111111011011000100101100000000100101100010001111010011100000000111010101001110001001111111111101000110110110110100111010001001010100011011101---------------------00010101010100100111111001111001100110010111010001011000011000100101110101100011110110010110010111000001001111111101111100010110001011000000110001001000101101010010011101111000110000010011011101100011010001101100111011101000111010010001111101110011101001100111011111101100101001011001010011110001010111111110111100100011110110000110100100011000011101111010011111011111110110100101010110111111000101100001101010010010101110001001101101001110110111100010000001000011001011100101000101000110001101011001001000101011000101110011110110001110110110001011111011010101010001001101111110000010100110110101010001111001010000101101100000110011010000100101110011000011010110010100010111101000101100001111100110110110100111010100000010110100110000010101000100101010100101011101111011110010100010001001010100111101001010011100111010011101001110011100000010111101001111000000100111011000000000010111100010101010111001010001100010001000 +1101100101010101101101100000110010111010110110111101100001101111011111011110010011101010000001100101100111010010101001101011000010110010000111010010010110010011010011100111011110011010110101110000001000100001111010000010111000110110111111000111010100110101101110011011001101111011100100001001000100010001011100100000100110001110001100100111000111001011000001100000100001110000100---------------------11011110001110011101110101000100111100101111110010010011100001001000010110110010101010111111010101110100101010111111111011101110001110000111111001111011001111100011111001000100110110010010111001011111100101110110011001101011000110101111000011110001111110111001010010110111011100101110110111010011011111000010010001101000101100110001111111100101001110110101110100000000000001101011101001000100011010011011100101100101001011011000100100101000000010110111110110111000000110001110111011001011010001110111000101101011010100111110011101100101011011000000110010100110111101010100001101100100101011010010110011100000110100100000111011001011010101101010100100110001100110110011011100110000100011101011101110111001010001011111101110100001100101101101001001110010010101110111010011110110011000110011001000101100111000001011000111100010110000010101011010100110001001011101000010100110100000000110100110111110001100101111010110000011 +0110001100001100101001000101000100011001110010000010101111011101100110111010011111110001100000101100100100101011011110011010011000110101101101100110111100101110001010111101100111111001111001111101001111001011010111111101110010010111001001110010101001101011011111100101110001011100101010100010000111111011100101010111110100101110101101101011010100111000000111010111110111101011011---------------------11110111000110010100110101000011011100010101010000000000010001111010111110011010001000001101101011100011011101100110111100101010011001001110010000001101010110100011011110000100100001110110000001011100100010001001001011100000101111001001100010111101010000000010101111011110110110101010001101101101101110001000010000100011000111010011000000110111010001000001111101010111010100010001110000111011000011010000111010000100001100001100000010000001111100000101111110010000100101101001101011010000000100110010111111111111111110100111011111001000101011000000001001001000110101111011111111001100100100110111000011111001010110110111100010111000101010000010100111010111111101011011100100001000110011100101100010110000010111001111100011111001100010001100010100011111000001001011001100100010100111000001010000110101010001111110100110111101001010101100100110111000001100010001011100110100000011111100010001110111011101111100011000001100 +0101110010111011000110011111101111011001010101010100011100011110011101101110001001011000000001001101010000011011000111110000011011010111011111001110110011010010111000101000111011001010101011001101000011111110110101010111100101011110100111100110101101100011100111001101100011010110101101010010000001111100111100010100100001110000110111001000000110110011100011010110100011010010011---------------------10110011001010111010000000110110100000001110010010000010111001100011011101110011001110011100101110100011010010100100100110000001000110100100110111010111000110101000110101001111100110100110010101011000101110011100100000110111111111010111111100001100011100001010110011111111011110101100001110001110101101100110000010111000111011111100011110000000000011011011110000101010000001011011111110100011011111010111101001111001000010001111111101110000101100111000011100111000011110110100101001000111000011111100000010111000110101001111011111011010100100110111101100001111000100010011100001110110100110001100110111001110101110110111001110011001000101101011001100011010000010100101000110101110100001011111001100000110011011101111011010100010001111110001100110000100000100111010001011110100101111011011001101001101001111101001110110000110101010010010111010010000110111111001100111101111110010001000101000010110101111000000110011111011 +0101100110110010001010100000010010110011011100111011100010000101111101001011110001101111010001111011011110111011011100000001110100110001110011000001110111101100100011000111111101100100010110110100011110000110111000010101111101101010000110110011000010001100101100101000011111111011110101100010111011010010010100101001011010011001000110101100010110110010011001011101101101010110101---------------------11011001100100111100101110100110010100111101011101100010110110010001011011100011101001011110011000110111110111101110010011111000010111100110101010001110110001010111100111010101010011101001000100000101001110101010110000101101110000001011111101111110100001011101110001100110000001111000101001101111000011110111110110110100010010100101010011001010111000101101110110000011011001011001011101011001000000100000010110101111101010110101101011011110101101101011110101101101010100001111101010010001110001111101011000010010110111101001111010111010011111111011110000011110011000111000011101011111011100010100011100110011010000010101100101111110101110001011000111101010000010111011101101100100101101000111100001100111000101101001010111111101101011011101111100100111110001010100000011101101101100100011100000001101000011011111100100111100111000010100101011011000111101100000101110000111111110000011001101001000000011011000101111110001 +0111011110111000100110011111101010011001101000000001011101001101010000100001011001100001000000110100101110000100000101110100110000101101011010000000100100101001011010011000011011101000001010111100011010000000011101011011110010111110001001001111101111010111010010101101010110011100000010100000111100001111000111101000101110000100101000110100001101001100101101110101011110101110000---------------------10011000000101001010010001101010011100101110100000001110000000000110000111110100100111100000110001101010110101000000001001010101011001111110001000111011010010001000001101111000101000101100100001110110001111101101001011101000000111101010101100100110100111010010100011010101011011001100100100100101001000000000000001011100111110011110101110111110101011111111111011111011010100010101101010011000010100001110011100110100000101100000001100011111010100101001010001000000000110000001000110101010110101110111011101100110100000110110101000101010000110010010100101111001110111011010001110011001001110000010101000101110000100000101100000110111101000101010101000111101100010100011110010010000010011111010010001010010110000001111111111111100100111110000011110011001111101000100000111100010110100110000011010001111000000000100110101111110000010011110000001000001101000111001100110111000010100001011000110010100001000001101010101001101 +1110110001100111100110011101000110001101011100100011110111000011101100101101100101111010001111101011001110100100000111001111101101000110101010101010100000111010011011110001110010110000010110000011011101111101111011010100010110101110101101111111100100101011001110001011110110100110111010010101000011111000110010101100101110010010110111110010101010011001000000000011011011011000100---------------------01110011010000011101010011110101011001000001011100111011111100101111111100101100000001011001110000100110110011110010000000111001001001110100011110100111000101001000011101110000101100000010110101000100101101100001011100110011110101000101110110110101010100110011100000010000101001100111110000000100110001010011111001111101001000000101011010011100011010110010010110010000001101111111110011111001000011011011010100101000000100101101101110111101000110011110010110000110110010010111010100011000010110011100001011000000000010011100010100001100000110110110101010110001101011010101011001001101001100010100010110001000101010101000110001000000001011001110011001100010110110010110010010100100001001110111101100000101101010101111111101010100111010010111001101100000101000010000101011001000011011010101111011000110001000011110001110011011000100101000101010100011111010000111101010001111000001111010101000100011011110001100101001011100 +0001011101010101100110100101010111111001101000100101011000010111011010010000011111001100010000110010101100010100100100000110110001001110001011010010110010101001011011111001011101001000111011101010000000000101111011100000110110001110010001011010110000111100000010001011100001011110001001111111000101111110110111101101011000100010011111111101110011110011011011111110001100000000110---------------------11010001001110101111100100001001110100001111101100111000101110001010100111110110000010111011010011111110110010111110011001010001110111111000100000101100100001100101111101111011000000010011100010000110010000100101111100111000100111011011101100101001011010100111001010000000101000001010001011011010111000001010101000010010000001001111100010101111010110001010001110111110100110001011000011010000011011000001110011011110011100100111111001111011001101000111110000100011101110100100011010010111001101110000110001000101001011011000011011000111000111010111001100100101111011010111000101001101010000100101010111001010001011100110101101100101110001111111001001101010000100001100001101100010100010100010001100001110011011010001001000010000101011111111001000111111101010011110111000001011000000001001011100111100010110100111111111011110010000010110011110010011010000101001111111111101110011000011001011101011010011101011001101111011 +1000101011101010111111111000110011010001101101010111101011110100001011011111001111110111110100110011101110000101101001100011011101000101111000011000010010101010011110000101100100110000010100010011100111110100101011101110100111001010001001001011011011001111111001010111110110011111011110110101000110000000100110101101110101101010010001011110001100100010110000100100100110101001001---------------------00001010110001011110101001010010111100111011101011011111100000101111000000001010000110111000101000100010000011011111001000110111100011011001001010010011001101011010011101100111000110101100000010100111101110000110110100000001111101100100110101101111011001001111100001100100101001100011100000101101001111101010000001011010010111000011110111000111111001011110101100111111010010010100011001000010010001011100100000111011000011100110110000110000001001100111100101000101101110100100101000001001010001010000101101111001001000101010011000001011111011101110001101000011111101110111110011011110010001100100101010001011110011001101000110000010110100111011011011110110011110110011111011011001101010111110111110100011010101101111001101111110011101011110101011010011111110100111100001110001010111111010101111101100101001110100010100010000000110011001101101001000011110010101001101101010110010001110111100000000011101100010111011001001 +0011100001011101111001100111011010010110111111000111100000101010001110111011011111010111010001111101000000101110010001101000110010011001010010101000111000010000111100111101111001100011111001011001101100101011111011001010010000110011110001101000110001010010010101000010111000011111111001101000111010011011100100011101011000010100110000111101001110001000000111000010011001001101100---------------------01110100011001001110100110011111010010110011011011101011111000000110110000000100001011111011100101101010010000010000100011101011001100000010110100110111110000111001100111110011001000101000001011110011001000100011010110010010011111101100100001100110000011101110100111011011001110001101100001001101010110000010011011110001111100100000111000110101110001111111000000111110101110000000101101010111110010111100100100001110000001111000001011011000011000101111010100011100100100010100001001011011110101101101110000100011111100111000100001001011001010010000001000010011011000101011010010011100101010000001100001101000100010101110000100111000111011111100101110001000111111010000000010110000111010111100001001010001001011010011100101000000000101001000011000011000101100100101111000001101011111111110111110100100100110110011111001100011101110111110111000010110111111110011101000101111001000110101000000110110010011001010101011011011 +ls40msgs +1000111011101010001000101001110100100101101011100011000101000100110111011011011110010110010010010111001001101010101001011110101100001111010111001110110000010100100011110101100000111100110100011011000010101100010011100011001011011001001011010100011010001011011110111101101010111101001110101101101001001111001011010100110100100101010101011111111000000110111000010100001000011100000011000001011011101101000110001101111011000011101001010000010110001101100111010010011111110010010100001111011111001110010110111110000110100001110000001100001100001100100101101111111011111000100100010011011111100111101110001111111111010110111000101011001010100100011101010101010100000110010110101010011100111001001010100110101010000001001101111000010001110000110110111000001101111111011111101111101000001010001101101101000000110011011101011010011010000010000010100110111000010111000--------------------- +1101101010001101011011010101010000100001110101111010010101011101111110110001110011110010111000011010100000010101100101111011000010001111011101011010111101001000001101010111110001011000111101010000000001110001011000011111000000011001010100110111101101001101111110011110100011011010000100011010101111101100101101111011000000000100011101001111111011100110101100100000001010010000100000111011000111000001101100001101001011011000111011001000010011111001101101011100011000100111011001010111011100101010011000000001011011110001000011001010001010000000000110101011110000111111111001010110001011000001100100001111010111010011111011101000110011000111100010111011000011010111001011101011000000010100010101110110001001001111101101010001010011011011111101000001011011000101001010101001000010101100011001010100111010011111110000000010010111000110011110011001111001101000101--------------------- +0101000001100010100111101011111101001110110010000000000100111110101000000000110101101000101001110001011010100110011000010101111111010101101110000010010011000110011101000100001001001011110000101010101010001110011000110001110111000110100001000010100011001000101010100101010101111110011100001101110110101101111001110100000101111001000000111110100101100011011101100011101100001011110111001000111100010100101001100101101110010001101001110110001000001001111000001010000100010101100010010010001010010010000100011010001101101001100001110011001010101010000011001110110000111000110001110110111100011110011001000000111100101010011010001110001100100011000111010011111100000110100110011000110100010011010010011100110100001011111110000011000011000000110101001111010000000000100111000011010000110100111000000001010011110000011001000101111000101001100010111001101111001001100--------------------- +1011101011010110110001000111100010000101100110011001110110001110000010000000010010101001101110101101010111111010010011000110110111001101011011101110101111100000011111101110100010011000100000110100011010010001110011010010001111001101001101100101001101111010110011011010010000110100010000001000000000111000111100000110100000101111010101111111110100111100010101001101110000001010111001010010100001101100001100101011110000010000101100100011001101110110101100001010011101100111111101011010001100001000000111010010101110111001101100100000110110111011100110110000000000010111000001111110011011110110001110111011111111111110000000001011001001001111101000010000010000100001010010101011101111110011000000101010000101101011010110101100011100101100111001000111001101001000010010011001101000001011100000100000011100101011111101101000110100101011110101001010111110100101000--------------------- +1110000010101110001000011110000110101101111111001001111100001101010111110101111111011010010110111000000011101100011010100011110010111101111011110011111111101111001100110101111010011100100101100111111111011100100101000011100101001011010000100100101000010110000111100000101100111010001011101011001010100111110000101000111000100011100000111100100111111111001100010000100101000110100011110110000011101000011111001111111101010011010001100000011001111101011111011011010000111000010111101000010111001001101110001100011111000110001001111100001111100000110011111100011100001101110011011110100001000000111100011001010111011011000011110101110101000100010000011110000111001011000100011101110101010000110110001001001001111001001000010100101101000000011010000011011101101101001011100111010110101100000111110000100000010100010010011110010011001110101011111001100011111000010--------------------- +1001111101101001100110110110110000111110010101101100001011001110110010010110111110101010110000100011010111001110011000011011000001001111001010011110000011000001111100010000000100000111010101010110110101001101111011101010110010101101100110001101000011011000111110101101001000110111101101101100001111010001010011010100101010000111011100101011001101110101110011010100110101101111011001000010000011110000110001101010111101010010001011111011110001001000011101010110110110010110101100111110010001111101111010101011011000110000110110000101000100000010111111101111111101010000110111001001001101010000001001011011011101000101010110000111010111000010011000110110010101011110101010011010001010100101110100111111011001110110011101010001010010100100110100010011111100001110100001100100101100100111010110111111010101000001011001110101011011110100101110111000010011101111101--------------------- +0011101000111100011110000101100001101001001101011100101111011101011001011011011111101000001010001101001111111100100001000010100001001000110000010000111111001100010000001000100010100110001100011100000001110011011001001101000010010001110010111111111111100101011001001010000101010010011010110001111110101000011111111110010000001101110011110110100110110111110001000000110111000101101010100100011000101010100101110011011110011000000101001000111100001011101100100101101010010100000000111001110111001100011100111001101101111101001100011100001000011111100100001111111100100010100100011011000010010001100011010110111111101000100111111101101110011011100011100001011110111000010100110000100100100101101011101010011110010001001000010110011010001010110100100111111000101110101111011000000101011010110101110001011100010101101110100100101000111011010110110100000110010101001--------------------- +1001111111000100000100010011111100110000011000100000101100111100110111111101100011010111101111100011010111100111100111111001100110100010000110000100101000110000101011001101001001101001000100110010111000100011100011000000110100000001100110100010001100100111110000110110010010101110101001010111111010111110100111111010010100110110000010010000010000100100101000001010011010011001000010010000101000100110001110111100111100101001001010001001000101111011000100000001011000001111010111000111100100010111011100001111000101111100001010100111011111110010100110101101110110111010101110110001101110100101010011100011100101001001110000011001001111100010100111101000101011101000100000111010000000111000101101000010001010111000001010001001110110010101001101000101000101100110011011000011011011001101000101110000111011100101000010011001000011001101011111010101000100000111010--------------------- +1110000100010110010010010001111110001110100110000011000101000000110001101000100101001001010000111001110011000101110000110000000101011110100000110110100100100111110110001110100000111101100100010010000011100110100101110100100110101011110011010000011100101011101001011001010100010010110100101011011000110101110101110100101101111010111110101010111101101000011110101101100000011111110100000100110001011010101100010011100001001010001110100101111101001101010000000101010010111001010000111111010110011101101110000110101000001100011110100001100111111010000100111000110000111001011011110111110011011100111000101010101110010101011011100000101110110110001010101101101011000110010000110000010110010100110011001011110101101001111001110101011011111110101101110011011100000001111001010100111110110001100010001110001000100001101111100100011110101000111101000110110110101010111--------------------- +1011100100000010100100110110001111001110110111110111101011010100001001000100010111110000001101110101111001011011010101000000100100110111111010001110111111010101011011101010101111000010011100011011000110011001110000111000001011101110110011010001111011010010001001111011101010011100010100010000001110001011101111110001110100110101111000101111001110101101011110110101011110000001110011100100001100110001101011110101111001011000001000111011001011100111111011101101001001100011010101010100001101111000110110011011011000011011111110000001101000100000101000010110111000101011001111001000001000000001010001010100001110100010101011101110000100001001111000100111100101000101111111011100001000100110111110001110100100000000110110010000110110100101100011010010011001011011111000110100111001000111111010110110101000111111111110010000000001011000100110001010100001100011001--------------------- +ls40cwds +10010110010010010111001001101010101001011110101100001111010111001110110000010100100011110101100000111100110100011011000010101100010011100011001011011001001011010100011010001011011110111101101010111101001110101101101001001111001011010100110100100101010101011111111000000110111000010100001000011100000011000001011011101101000110001101111011000011101001010000010110001101100111010010011111110010010100001111011111001110010110111110000110100001110000001100001100001100100101101111111011111000100100010011011111100111101110001111111111010110111000101011001010100100011101010101010100000110010110101010011100111001001010100110101010000001001101111000010001110000110110111000001101111111011111101111101000001010001101101101000000110011011101011010011010000010000010100110111000010111000---------------------1100100011110111001010010110101010010110001000001000001001111110000011000010000100001010110100100100110001010000100001111101010111110110111101110000100101110101100011010011010101001111111100111100111110101101010011100000000110000000000011101011001010000011001001100100101100000101110101000000010010001011110101100110101101100100110110111100110000111000101011001000000100110100100100110011001000011011111110011001100111110100111010100000100000111011011110000101001001001001010000000001100100100101010110010100011001011100011111011011001101011111101000111110110010011011010001100111100011111101011000010110001100000111011011100011001001110000000011001010001010110111011010010001110101111110101010010011110111111010110101111011011000110011001111011101100110000111011010101100111000001110010000101100100000010101101111111010110101100010111011110000010110111100100111011101010001111000000011101111100110001101101010010100001110011001110010111011100110111011101010010101000000000011100011101001010000101111110000101100000000110001000011010100001001010110111101111101100101010111010001001001010001011010100000101110010000111101101111110001111001011000011111000110011101001000000001100101110100110111110101101000100001000011101001110100000001100110000111100011111010111001110100011101000100010100001111110100111111101011111110101001110001000000000010010110001111111101110011100111101111000100001011000010001001111010000101010100110110000100010001101010010101101110101000111100111111111100100111000011100110110010001010001100010100101011010000010011100100100110101001100001110100111100111011001000111010000000111001111111111001011001011101000101101001000000101110111011001111001000000101010110001101100100001100010011100100110001100101100100101001000011010011010100101100001010010011000111100011000111100111110000011111010010011101000011000011010011 +11110010111000011010100000010101100101111011000010001111011101011010111101001000001101010111110001011000111101010000000001110001011000011111000000011001010100110111101101001101111110011110100011011010000100011010101111101100101101111011000000000100011101001111111011100110101100100000001010010000100000111011000111000001101100001101001011011000111011001000010011111001101101011100011000100111011001010111011100101010011000000001011011110001000011001010001010000000000110101011110000111111111001010110001011000001100100001111010111010011111011101000110011000111100010111011000011010111001011101011000000010100010101110110001001001111101101010001010011011011111101000001011011000101001010101001000010101100011001010100111010011111110000000010010111000110011110011001111001101000101---------------------1110000110100110010001101101100011001010110010100011011001001111101010011110011011011011100011001111001111100001000110001101101111100001001101100010001110010111101101110001111010100101101110010011001010000110000111101000000000111111000011101111011101011100011010011110101110111000101011001000110001000011100001001100011110001011011010010110101000000111000010101000000111111100001101111100100110011100000001110010001110010111001110000110110011111010100110001110001000000111110010011111100011001000111100000011101010100111100110111100101001111110011011110111111011111010000111000101101010111100001011000000101011110000100101000100011011000000101011101010010000010100011110111010000011011101111001010000100100001100001001011000011101011110101000010100100111001100101100001001000011101110101010100000101100100100001010101001000011100001001011100110000010101101100011010100101000011001110010101000111101111100111001010001011010111010100011000001100101000111100101100001001000111011110000101110010101100100101111001100010011011100100001010111100000000110111010101010001110010011011001000110100010001010100000011011100010011101101000001011110000110110101100001101000100010001100001010100000111011000110111110101000110100000011011000100111101111110000010010110100101110001010000001101100000011111110101001100111001001011100010110111011101100100000111011000011000011000101100101011001010010001000110010110111001001000101111100010000001010110100101001101001001000101011001001110101011001010000000011011000010011111001001011000101111100011001110011101000010010101101110100100100001101011000101011111111000100011100001110010010010011111110000100001000001110000000101100111001010101101001011100101100110111011111110001000101100110010000110110010111100111111101000111010110001001010111010000001111011100100110101010000011001110010000101010000101000011001 +01101000101001110001011010100110011000010101111111010101101110000010010011000110011101000100001001001011110000101010101010001110011000110001110111000110100001000010100011001000101010100101010101111110011100001101110110101101111001110100000101111001000000111110100101100011011101100011101100001011110111001000111100010100101001100101101110010001101001110110001000001001111000001010000100010101100010010010001010010010000100011010001101101001100001110011001010101010000011001110110000111000110001110110111100011110011001000000111100101010011010001110001100100011000111010011111100000110100110011000110100010011010010011100110100001011111110000011000011000000110101001111010000000000100111000011010000110100111000000001010011110000011001000101111000101001100010111001101111001001100---------------------0000101010101110110101100110010011000001111010101000011011000110010000100110111001101011001010000111011111110011011111011010100010001001101101100000000110101100100111001000011100010001001111001100011100110001100101110101101000011010001011010100101110101110111100101011101001110010111110100010011110101100010011100000001100101001001000011110100011100111011101001011000011010001010010100011111111010001111111101100110001011100100110011001101000010111011010101100010010110100110100101100010010011110000100001000110011001010111111111001010011100110001001011101100100111000010101010100011100101010000000011000010001011110101010000001011011000010100001100010111001110101001100000000111110111111001110000010000001001110001110100111111111001000011011011111101010001110010001101000111010100100110011011001000110101010011010010011001100110000010100110001100110101000111110010110111001111011111100110111101011100100000110101100001000000100000100110101010001001011010100001000100101100000001101011110011000011100110110101111110000111001001000010011011111001111110001101101101011000001111010111100100001001001111000000010000110000011100011110011000100001001011011100111101111010101101000001100011111010111010001001110010101100100000110011000111110001011111011010011011010001101011001110111101000111111010110100010110011111100000110100111111011110011100101010010001101011011100001100100010000001110101111111100100011010111101001100000001010011010110100110001111001000101000010111000110110000110110110001101001001110111010100011000111011010000010111110001001010011110110100100001011010111101111110001011110110101100001101010011101010110010010111001011011000001101001010111010010001101000111101001011001001110000010101011101000110110111011001011110000000001101111000011001010010000001011111101011110111100101001000010001010100000111010111000101001000101011 +10101001101110101101010111111010010011000110110111001101011011101110101111100000011111101110100010011000100000110100011010010001110011010010001111001101001101100101001101111010110011011010010000110100010000001000000000111000111100000110100000101111010101111111110100111100010101001101110000001010111001010010100001101100001100101011110000010000101100100011001101110110101100001010011101100111111101011010001100001000000111010010101110111001101100100000110110111011100110110000000000010111000001111110011011110110001110111011111111111110000000001011001001001111101000010000010000100001010010101011101111110011000000101010000101101011010110101100011100101100111001000111001101001000010010011001101000001011100000100000011100101011111101101000110100101011110101001010111110100101000---------------------1000110001000000001001011111101101100101001010110101100011100100001001110101000000111100100100011110100000001111100111101110101111001110101011111101010101001111001110001100010001101100100010000110001011010111000000100010011000000110001010001110010100000010111001011010001001110011010011001011111000100000100111011001000001101010111011001011100010001110000100010101001111000000110011111010110110111111100011111101110010110110101000111000110011100101001100111011100001100100010111100000010010111011111001011010110011011001001100010011101011001000101000000011101100100101110010010100111011101111100110110101110101110100010010001011000001011010110001101101000000110101001111101110010100101000000010010101100101110110101000110000000110111110011001001011010111011011110101111111101111010101011011100101101100100110001001011001101110011110110111101100000010001000110010010111101011010101001010001011011100111011000010101001111110110100110011000011000100000100000010100011011011110001110110111011010101000101010001110011101101001111101011100110000110111111100000110000001011010100101101001100110011100110011000000001110000101111110011111010001100110000111111110010110110010010100011010101100111001001100011000010110100111100111101100111011011100001110001100010100110100000001100010100010011011100011010110011010101011110101101000101111010111100111101111110001011000001001100110011011110111110000010101111101101011100100010001101010011010110011101001101000110010000001011111110001000111001011001001011011101010101000111100100101001111100110110100000101101011111011110000111110111110011100010011000010110100110111101001000110101111111110101010100011110100010000011010110100011101010101110001100000011100000000101010110110110101111110001100001110100001011011010000100111011100011010111000110000100110100011100000010110101000001100010000001001110100111 +11011010010110111000000011101100011010100011110010111101111011110011111111101111001100110101111010011100100101100111111111011100100101000011100101001011010000100100101000010110000111100000101100111010001011101011001010100111110000101000111000100011100000111100100111111111001100010000100101000110100011110110000011101000011111001111111101010011010001100000011001111101011111011011010000111000010111101000010111001001101110001100011111000110001001111100001111100000110011111100011100001101110011011110100001000000111100011001010111011011000011110101110101000100010000011110000111001011000100011101110101010000110110001001001001111001001000010100101101000000011010000011011101101101001011100111010110101100000111110000100000010100010010011110010011001110101011111001100011111000010---------------------1100110000101100001010111000001100111110000101100100011101110001000110110010100111110011001101011111001011001111100010001011101100011111011111100101111010001100110010000010000011110111101010000011110001000110101110110010111101011111100000000100000011011011001011001100010010101101111101100111110010011101000001010100100101001010111001011101111011100001010101000100100110100101011101111101110101000000101000110001110000000100110111101000000111001001010011010101100110001011011111111101000001000111011000001010111100110111111010000110101011000010011010110011010010001100001100000100110110101010010011001011111011110101100011110100110100010100011101110010011001000100110001010000110101100001000110100110001011111101110110010111010000100000010111010010111010001011100001111010000110011100100101011110011110000001111110100110001000001000010101010101110000010100010100000001110010100011001010101101010101011001001010011011010011010100101010110101100101011011110111111010010110011001010001110010100011010111001010110110100011110110110010000011001101010111001111011011010010010101101001101110010001001101000111000011111111111010011101100100111001011111101010011101011110001101000100000101011011001111110010001011010011100101101110001110111011110111100111111011001111011101110001110010001100010100011011111101000011010111101001110011000001000111110001111000110110010001000111000100010101000111011001010011101010000100111001011011101100001000000011010011101100111111100111010000101100011111100011011010100010100111111010010100010011110011000010011011101100011100101000000100101111000010111011110110111111010010101001000111100001110101100100011111010000010101010110010000111001111010110001100110011100110101010101111110011110000010001100011100001110110110010001010010100001100000110001110110000110011010010011100010011110011011100011110111001110011110 +10101010110000100011010111001110011000011011000001001111001010011110000011000001111100010000000100000111010101010110110101001101111011101010110010101101100110001101000011011000111110101101001000110111101101101100001111010001010011010100101010000111011100101011001101110101110011010100110101101111011001000010000011110000110001101010111101010010001011111011110001001000011101010110110110010110101100111110010001111101111010101011011000110000110110000101000100000010111111101111111101010000110111001001001101010000001001011011011101000101010110000111010111000010011000110110010101011110101010011010001010100101110100111111011001110110011101010001010010100100110100010011111100001110100001100100101100100111010110111111010101000001011001110101011011110100101110111000010011101111101---------------------1000011000101011101010010100000001010011000101101101101001000010011110111100100110100110011100010000101011011000001001110101100001000100011000101111110101111110101001010110011100001010000110110011001011010111110000111111101010110001101110000011001000110101001110010000010011001111011010100010100001010010110010101110011101001000100011101100111000101001010101010101000010111101111110010100100110101101010110001011000111010011010111000000000010001010100001100000101001111110110000100110011001000000011100101100110010101100111100101001110111100100011111111111111101000010111100010111001000000100101110111111011000000001000000000100110110110001111100110100010101110011010111100101110101001101000101111010111100101111000001001010101001100000101101101111110001001110011000101000010101011011100110100001110010011010110001110100101111001101111111001010001111100111110001001011011001111100010001101001100100110011111100100100001000011001000100110111010110001001011100011000000111001000101000001111011111100001101101111110110000010011101000101001011101000101100110001001000100010100001100000011100000001100101110011101000010110010010000101011111100011101000111001100001000100100011100000010100101110100111111010010001110010110101000011101001001101111000001101010111100101010110101101111101100001100111110011010100011100000010011011000111110111111110101001101011000101110000001010010110111011000001001010001010010100101011111110110101001111011011010000011010010010011000001011001111110110011111100101110110000010000101001001111110101000111001100101110110010000110001000101000010111000011101010001010100001100000000011010101011110100100001000000110111100011110010100010010011011010011111100111000011001100011001010011010110110001010110011001101100110011000100000101000010100100101001010101010101001111010111110110101000110000100011011001011100011000101 +11101000001010001101001111111100100001000010100001001000110000010000111111001100010000001000100010100110001100011100000001110011011001001101000010010001110010111111111111100101011001001010000101010010011010110001111110101000011111111110010000001101110011110110100110110111110001000000110111000101101010100100011000101010100101110011011110011000000101001000111100001011101100100101101010010100000000111001110111001100011100111001101101111101001100011100001000011111100100001111111100100010100100011011000010010001100011010110111111101000100111111101101110011011100011100001011110111000010100110000100100100101101011101010011110010001001000010110011010001010110100100111111000101110101111011000000101011010110101110001011100010101101110100100101000111011010110110100000110010101001---------------------0110010001111101110101001010110111011011011111001101110110011001110111011101000000010010000010111101101000111101111000100100111000000110111010111001100101011101011010110000111111010100010001100101011010000110010100010010110000111111100101011101111010100110000111100000001010000000100010110000101100000100110000101101000110100000000011001011101011011101111100101010111101000101111000001010101001101000101001000001011101010110110001111100110101010100011011000011000010110001100111011110010100111010001001010001101001010100111110110011111011111010101100010011000101000011010010100010110111001010010101011110001000010110110001111011110011000000010000100010000101001101011010010100011000011110010110010000010110101011010111110011100011101111011011001100110111011010001001000100111100010010000101011000010010011001110100110110111001011111001010100010010011111010010010101000001111000000110101001001010110011110010010010100110000111011101010110110010110011010100010010100100001001011101001110011110101010110000000111001010100110010000001001111100111110111100011011101001111100010011001111011001011101110011001111011111100101010111100110110100111110011100111110011011011010010000100110001110111010111010101000010010101100101100110100101111100100111001010000101110101000011000110100101011101100101110101001000101000101011101010111011100101111110110000101010010101111111110011001100111110110111111010011010001011101100011000001100000010000110010001000101111110101011100111110000010011100010111110011011100001001111100000010010000000000001010011000110101011011100000101111011100101010101000111011110110011001100010000000100000010000001001111011011100001100001100001000011001111100110000100011000000011010010111001101001100000101001000011100110101111100011101011011110110001000011001001110100111100110101110100100111010001111111000111011100110011010100 +11010111101111100011010111100111100111111001100110100010000110000100101000110000101011001101001001101001000100110010111000100011100011000000110100000001100110100010001100100111110000110110010010101110101001010111111010111110100111111010010100110110000010010000010000100100101000001010011010011001000010010000101000100110001110111100111100101001001010001001000101111011000100000001011000001111010111000111100100010111011100001111000101111100001010100111011111110010100110101101110110111010101110110001101110100101010011100011100101001001110000011001001111100010100111101000101011101000100000111010000000111000101101000010001010111000001010001001110110010101001101000101000101100110011011000011011011001101000101110000111011100101000010011001000011001101011111010101000100000111010---------------------1010100001001010111001111011010010111010011001000001011011011101001000000110100111000100110010011101000110000000100100000010100000000011000101011000000100001000001000000101100000010011110110010111001010110010111110111010101001100110100000010100111000011110111011001000001001110001011110110000101000000110011110000000000100111000000001001001110000101101001001010011011111000100100100111101011101101110011011011010010111111010101110100001010000000001101011110000001001010001010010011100110110111000101111011001110011101001110110110011011110110111001000010011000111010101101010110100110001011001110001001100111001101001011010101111111110000000100010011100111001101111000101001111000000100011111100111110011001110010000011100100001011110010010110110101001100011000001010001010110011110111001110101000101010001100001100011001010001000001001010111011000101000001110001111001111110001101010101111010111110001010000100000100011010101001010001100000100011000010100010111111000001011101010001010101100010001110010000100010011011100110011000010110001100011111111101110100111010000011111100011001110110010111001011011001000011100000101101111101101111011101011010001101010001011000100111110001110100000000110000000110100110111011011110001110111011101011101111110100101010111000010001101001100000101000010001111001111010000011111000100001001011011101010010110010101101101010111001010110000101000010011110110011001100111100011100111101011110011110110001001100111100001001010011011001111110111001010000010001001010111001111101000001010011100110101000000110001111010001100100001011011110101010001100100011101101111010000000011000000001000100011000101001101000010011100011101011000111111010000101111110100011101011010001101001000010100111110111011000011010011101011100111000110100001100010010001010010000000001011011100010001011010011011101000001100100011111 +01001001010000111001110011000101110000110000000101011110100000110110100100100111110110001110100000111101100100010010000011100110100101110100100110101011110011010000011100101011101001011001010100010010110100101011011000110101110101110100101101111010111110101010111101101000011110101101100000011111110100000100110001011010101100010011100001001010001110100101111101001101010000000101010010111001010000111111010110011101101110000110101000001100011110100001100111111010000100111000110000111001011011110111110011011100111000101010101110010101011011100000101110110110001010101101101011000110010000110000010110010100110011001011110101101001111001110101011011111110101101110011011100000001111001010100111110110001100010001110001000100001101111100100011110101000111101000110110110101010111---------------------1100101011110111100100000011010000011001101001100000000100011000000010001101000000110011101110010011001101000101011111100011110010110101101000110000100011110001000110111110101000110100010000110000110011101011000110011100001100101000011101000011011000110010000101111100100010111000000010100111101010101001111000000011111100101000001010110111110111010111001010010111011111011011111111111000100100010010100000101110001011101111011001010010100010001111100000111111100000100001110110000100000110110110111000010001010110100011011101000001100101101001001010101001001110000011101110001000000000001010011111010110101010001011100111001011101001111101111011011110011110001111100001111010011111001010000001010000000000101110010001101001001110000110110111010111000011010010110000010101100010000010100110011100001000100001100001100011010010100000000100011100100101011011011111010101000001110011100100001101101011011111011100000110010100001011101101110111110000010101010111000011101000001111110011000001000100010111101010001100111010011101011100000010111011111000111001010100011010111010010011100000111100111001100001011010100001111101100010101000101001010000011001111000000011001110100101110001011100101111010010100001000111011101011011111100000100000101011001111010111011101010100100101000100101010100001100010000100010000101111101100100001000010000010011111010011001011100111101111100011001010100100010000101001000011011101011011000101011011000011111110100000011001011000010110101101010011101011110110010001111101000100111011000111101110010000011000111001001101111100011001101010111101010100010001011011001000110000001101000001000101110100011000101100101110111100001111110111011010101100111001011001000110110111001001101011011010011011111010011011110010110001101110101001000000000111110011000011011111010010101110000011111100011110011110010101110011101 +11110000001101110101111001011011010101000000100100110111111010001110111111010101011011101010101111000010011100011011000110011001110000111000001011101110110011010001111011010010001001111011101010011100010100010000001110001011101111110001110100110101111000101111001110101101011110110101011110000001110011100100001100110001101011110101111001011000001000111011001011100111111011101101001001100011010101010100001101111000110110011011011000011011111110000001101000100000101000010110111000101011001111001000001000000001010001010100001110100010101011101110000100001001111000100111100101000101111111011100001000100110111110001110100100000000110110010000110110100101100011010010011001011011111000110100111001000111111010110110101000111111111110010000000001011000100110001010100001100011001---------------------0010111010111111100100101000011001101101000101110101110111010110100010010010100000111111100100111000010101110110010111100101000011111011100011100100101010001011011100100010100010000001101011100111110000111001100000110101011111011011100100110011100010010101101011110000010011101001000000000110100001111111111001100100111111110001011010110110111100010000011011101101101000011101101110010010000011000110001110001111010110100111111000011111000110000010000000010101010101101101111011010001111101000001010001110100011101101100100001011110100000011001111101000110010110111111111101101010101101001010101111101000001000010111010001111111010000011110000100100000010111101001010010100111101110010010111010011011100110101111110000000010001000010010000001001001010110100101100100001101010001100000001101100011011001011010001001000010111000111111000100100100010101011101100001100000010110110101001111111001100100010000101010011000100010101111011000110100100011000110100011110010011110011010100111111111100001110010111110100000000010010111010100101101011101110101011100101010000011111010010101010001010110101000011111101011000101111001010101110110101100001001011100111001000000000110101000101110011011001011100000111000010100100100100101101111000101101100101000101001111011100100001100100110100111001111101100100111110111011010111101010010100110000000010001100010101011100101100011100001000110011001011010010010001000000001111101111100011010100000010100010011110100110101111101001011100100100001000000000111101101001110101101011010111110000000001101001100110011000100111111001111101100100001011000100010001000010011110111111000010011101100000111100000001100100110010100111110101110100100100001101000100010111001011001001100101001000110111000111000010100110111101101101011101110011000011100011101101000000110001001011111101011011111010111100010000110001010 +ls80msgs +00111101101110111001111011011110101000001001100010101010001011100101101000111011011000100001101100000010010010010101110110111000000001010010001001111000110010111111001000110010000111010110110010010100001110001001010011101100011001110011111010010111111001001101111001011111000010010000101101111001100100101101110001100011100000001001111100111000010111000110010100011111101000110011100010011000111010000000110011100000011100111011110001001010111111110001110011100001001110110011111110110001110110100011101101110111111110101110101100010000010111011111111101010101110010111111100000010011100101010000000111011100111010101000101011101001100110111110111011111001100001110001000010001011011110001010100101011011100011001011110111010001001110100100001101000010101011100010100000010010110010000101101001111011100111001000111000000001001110100010111010110100101111111000110101100110100000110111101011111101011010001111011010111000101101101010111001011100110000010000100111011111000001100010011001111011100000101110101101001110001010100111010101000101001001111000001011111000100000001101100000101100011101100010100000010010100011011100001111010100001010111110101000110001000010101101110001101101110011001011001100000000100101011011111001100010100101011101011111011010000100101001010000101000000110011000010011010110001101100111101011101010010100101011010111110011011010010010011101000110010100110100000110111110110101101110100111100101111001010000001000010111010110001110110110111110010011100111000111110000001101111011100110011000011100011100100011011100100010100100100111111010001101100000001010000010010101111010100110111010010101001010000011110000110011011101000110101101000110100000100101010010011100110001011110110110110111001000010111011000000--------------------- +10101001101001100101111011001110100001000100100111001000111001000001101101001011111101111100111111011011011001001011110100011000001110011101100101011111111011011010101110011000001100100010101101100101111100110010000111100101110011000101100110100011110001100111010110000101011110011010110110001011111100010101001000101110100010100001100110101101100010111111111100110010011110011010010011011101010000000101010100001110101000000011010011101011101110110010111101010010011111101101001111100001111011111011011111010100011111111000000110011011000000001100010000101111001000001000000100101000011010000010000110101100111100010000100110010111110111001110001010110011000101111011011011100111100011001011101011001110111110110101110100100001000010101000110110100000010011001100110011010001111111010000010010111111101010010110001000100110111000100000000111011010000101110111010000001101001011010011001001111001000010110010001110001111100001001000011110100011010010101100111010111110100101011111100100110110110011111111010011100110110110010100011000110110000111011100001001100101000011001011011111011101110100011011010100001011110111110010000011000101110110111110110001101001011111001100111001100000001111110101010001101100111111110000001001110011001010101101100100000101001011011110001010100111110101010101111011010111111111001001010001010000010011111110101001000100010010100011011100100101101010010000011010111101011010001010011000100101011010110100110011101011110101010101001000011110001101000111010000000001010011000110001101111100000011001011001001010100101011101001001000110100010100000011110000011101001101101110111100110001100110110001111001100100011010110010100101000001010101101111111111101100011101101010111111011011100010101010011100001001100--------------------- +00111101111111001100010100111101001011101000110110011100011110000110100000111011011100001111011101010101100000010000110001100100011010001100101110011001110001111001100111011100100101001011011111110010001010101100011011110011111100110001100001100110101110100101100100110111010101100011010101011011100111010101101010010110010101001101001110001011110100110011101110101000001011011111110011010010000011000100101010011111001100000111111111100101101001010111010110111111010101000111110011111011001010010011100011110111011110011011001000001001011001101101000000011011010000011011001111111110100001111110011001010100100110011001000000001011100110110100001110001010110010111011111011011001010110011110000111100000101101110111010011011001010001110011010011011101111011101011000110001101000011110000101011000110100010010101011000011100101110111100010010011000111101110100011111000011001000111011101001111011001101101010111001110110111001010011010001000011101000110110110101010001101101101001110000100010100110111101001100001000100101010101111011010111001110110100001010101010000000001111011111111000111000111111011010101101100010110001000000101110101010001111111111000101001101011111110101011111111000000111101000000010010011001001010011100010101001011001101001000010010100101001101010101010101010001011111011101001000101011011100000000100100001111100101000000110010111011110010010001000100101000110100010000101111010011100011000011001100011011101111001110111010111100111000000101011100010010101101001000010101100000001111101000010000000100110010100010001000111010010010000010100011001110111011100011001101101001111100000111000110011000001010010110011100100011010010011011110011011111001000000010100111000111011111111000101000000101010010110001101001--------------------- +00101111110001010101000010110011110000110010101001111111000100100011011011010011010111000001111110001000001100110100110110110001011010100000011100100001101000001000100111000001100100001011000000101000001010010100100010100100011111000011101010100001010001110011111011010101110100000110110010100111000111101110001101100100110010111010110000001001001010110010011000001101010011101010010110110101110110010110100111000101101100110111000000010000101000111100101101001011101110110011101001111100110001011001010010010000011110100100001100010000111101010100101111110001011100111100100000110100001010101000110011101000111101000010001000101001111010101000101111000001000100000001001101010101100100111111000111100111100011010001000100100010011011101110101010000111010000001001100100011001100001010000111000000101001010001100110010100010111010000011100001000100111100011110110110110000011000100110101011001011101000010000010011110000111100000110111000110001100110000100101111110100110011110010100010010001100001100111101000101001001111110000101111111101010010100110100011101001110110100111001110101111101000010011000111001100010101100110000010000000011110110000010011011111001110001000010011001000100011001111001110100111101111101111111001000011101001010001010101000101011100001010001100001101011010110000101010110000001111110011100111011000101010110010001010101000110101001111111100110111010010000011011001110011100010111111011010110101000011000100100001101110101001110100011000011000010111001010111000111011110011101000101000111101011101000111111001110000111010011100101010001010010101110011101101011100100111111101110100101010011011101000011110111101110011101101110011101111101001001000101011011110010011000111001001111011010111010001110101001011111--------------------- +01000001110101100011101011000011100101111111000001000010010010110010100110110110011101100001111111011001100011010111100111111101101110100111101011000010011101011010010101011001111100100111111000111110110001000100110101101111000010001011111000111101100000100010001101100101100111101010010111011010000011011110101110111100100000101100000101110111111001001011001001010111011110000001001001101011011101101010000000000100100000000000000011000010100010100101001101101001100100101101111011100110011111110010001001101010101000001111011100000000011010100111001100110100101111000111101001100111110000110001010000000001000111110100100101011011100011111101111100010101100100101111010011010011101010011100010010100001010010100010011110001100001000000100101100110010010011011001111011110111000011001000011100000110000001011101001011110001001001010000111011111100011110000111010011000000010101101001100001100110010100100011000100010000010011011100000011000001011010011111100101000100110111011000000111010111010001100110101110110110100010101100001010101110000110010010100000001100011111111001101010010111110010100110000100001111110101011001001000111011101110011000000001010000000111001001000011111110110010000111100101110011110111111101110011010000100101101111111100101011010011101100100110011010000001011000100011000001101110011101000011101011100011000000100011101000111010111010101101101110110111000100010100110111001101001011100010000011000110101100011101101001111000010011000011110010011011101010000111111111111111100011011101011110110110100010110011100010001011011111111100111000000100111010011101000010001001000100101000010101011010100000111110001010111111110001101010110000000100011000101010101110010110101010001001111001010010001011110111010000010--------------------- +00101111110011111101011000110010111110010000000111100100000000000000111001100101000101000101110000010111111010101100101100110111100100000000100110101001110011100111010110111100011111010101101001001011101001011011010101001000000100011110100110111111101100101111111101010110100100000110000010101011001010010100001110011001100000001010101001011101111111001111001000100101101101000011000111010011100111101000001001110111101010001110101101011001100011001000111001000110011000110001110101110100110011100001000111001011100000101010100100100001000010010010100010101110110011001000011110110000101100101000011011011111011110011010111111010011111010001110000100001110111010011001000101111001010011001111110011000001001001111101011010100001011101000000011110110110101011001000111111100000111101010101100001000110100000001001011011100110001001000100011110011010011010110110010000111000001011100001000101111011001100011101110110111100011101101000110000000001000011010100110101100110010100100101101001011110000110000110010100100010111001110011101011000011000010000100101101111101011011010110110010011110000110101010100111001101011111000110110111000101010001101010100111011100011101001011101001000011001100011010110010011101110000111001010110111110101001100001101000010101111110110000010110010011011001011110000110011100101011011011101110100011100010011010100001011111000010011001001100100010001111111010111010011010001101000100110001001011101100001101101001011101110001101001000101000101010100100011100100110101110111101111010000111010000110001111000111100100101000100010111100010011100011011011000011110101000000111110010010110100010101101001100100001110010001000110100101011011110001001001001110100101100011001110101100101100010011000011111100111010111--------------------- +01110001010010110000100000011100110101010000010011010000000110101010001000110001100010101000010011110101110110100011110101000110010010101000001100011100011010000101010010111111100111011101010110100110010110101010011111111100111010001001100100110100001011101011110110001010101101101110111011111101000011111010010000011101001101110101111101101000001000001100000110100100000101001011100101001000010101101010010010000110010100010110000000000110000000000111110111111001010101110000101001101111101100001001011100100100001011010110101101010000010110100001110111100000001010111101000100010110000100111010011110100000100111101001100110001111001111010011010100000110000100111000111000100111001011101111111011100000101111101100010100011010100010011100101101000000100011101110101111000011111101000101001101100110111101111101110001100100000110111100010100101111100001100001110110000010000110010001010100101111011101110001001001100110000010111100101001010000101111110111011000010000101101100000010101011110000100000000001111110110000010100001111111111111100100000011110100110011111110111100000110111111001111100110000000111000110100011000100011000010101000111000010011010110011100010001110001110110001101001010101000100001010001100111011101010101011111001000101001100100101101010010011001000000110110011100111000010001111101011010101111100001101000100111101111001011010010110110111000101001111100000010101010111100111110111001111010000110000001001011001010101110001110010011110110001101101100001011010100000111000011101111001101110011010101111011000010110011011101010011001000010000000111110000101111001001111110101000010010101101100010100011111000001100010000100010101000011101111001111110111111001101010110000101111011010011111010110111101100100111110--------------------- +11010100110001001100101100111101011000010010101111001010101000000001000010100100000101011010110111101111111011101110110000001111110010110000111001110001010110100110101010010110100000111111000101101101101110011011000100101000001000011011000000100001110100011111000000001101011000001111101001101000000001101000111011100100111001010001010011110011011101010111000000010011000100010010000100000011001011000001010110101110001011011100011110110111110010111011101011100100000000101111111100101001111010011001011001110101010111010100110101100011000101111100111100000111100010010111011110001110111111110000101111101110000100000011001010101101101100110111010111010011111000101110001001101001111001011000100111001110101011010011101010010011111100110010000111001111010111100001101111001000000110110010100100111010110111110010001100101111010011001000010000111111110010001110100110110101011111101001111000101110011010011110101111110001011000010101110111100011011111001010001111001110001110000100001101001101011011001010101011000001011000000010110001101111101001011111100100110111110101000010101001010001101001001100000110110110101011101101001111110101010000100001100010010000110001001110011010101100111100011110010001000100010100001111011110110010011001000010000100101010111001100001110111110000101010011011010011000110010111111110010011110111001111110110111001111111001001000011101100001001000100001001000010001100110100010101010000100000000110011001001010000101111001011101101010010011110011111100110100011111100100010100001011110110101011011000011110111111100011111110000001001000111011111101000000010100100011011100101001101101000001100100110101100111100011010110110001111011010101011110010110000010110101111100110111010010000100111010010001010011111--------------------- +01000000011100101010100001111010011000010101110001100101110111000010110100110100101000111111111110000110110111110010011010010111011110110010101111011100001111111010001111010100100100001100000000000011110010110001010001101010000110000000110001110010111010100100011110111000110001011000111101011100100001111010100011000011000001100101010100000010001011111011110101100011011011101001101100100001011111110110110011110010110001001110001111011010001001100011010010111101000100011100000001101001111100010010100011001011010000110000010100001011111001110100011010010011000110000101111100101111011001101011010100001100101111010000110001100000010111010110111110101010001010110000011000001011101001011001010000101001111101001001010111111110111101000100101010100111111101110010111001010110111101110111000101100100100011000010010010010001100010000010110010001110111000111110100011110000010110000010011111101000000100001001000100001100011110111010101001001110101100101000111000111111101000010001110100110011010110001111011111001110000001000010100011111100100000110000100001101010110000110101111111011111110111111011101101011000011001111011100001110000011100010010111111000111000110010001100010010111001010100111111011011100001010101000111000110111111011010110001010000101110011000001101110110101111100010100011111101100001111110010100001001101110010110010011011111011101110100100111101011011110011100010110010011010101100010111001110000100011010111101000010111000111110001111010001110111000101100101010011000110110000000110000010000010001111011010111010100110100111001001011010000101001000000001010000001001000101001110011010110000101101110110101000011010001000111100001101111110001001110001001011110001010001100011110000000001110100111000100101011111010--------------------- +11100101101100111100000010100000101101011000111100101011000011010101101110000111000011011010011001101001100100000010001010000011011110010110000000101110111000010101101000010110110000110100000001110110000100000000001000001000010100011000111000101101000110010100000000100101110001111000100111000011001001000110001000010101011010001111101000110110110011011111100111001100100010111000111011010001100001101111001011101110000111010001010001111101110100010101011010011100001111001011101110011110101001000000111011110011101000110001110011001100101011000011001110110101100101000111100011100001010111110011011010111001001001111110000100101010010111110110101011001110101010010001101000011001101000100100001101011001000000111001110110110100001100101001100101000000110010101111110100000110010011100000000100010101110110110110000100001000111011101111001111110100001000110010001101000001110011100000011011001011011100000001001111001110100010100111010010111010100101100001111011111111000010100100110001111101111100110010001110001101011010011111100001111101001101001000001001011100011010000011110111111100110011011101111001100100011001111001110111111100000100101110101000000110100001100110110010100000000101000111011011001100011111001100111000101110001001011110000000100000011100001110111111100010101101111010110010100111011101111110010110100101111101011111001111100110110011000100000010001110100000010001100111101100110011100001010001101101010001001011101110000100000110110010101110101000100011001001101010011011011001100011110001110000000001110101010001010011101101000001010110101000011000001111110011000000110110100101011010110100110001011000010011010101110110010100100001011110100001111110000100011110100110110011001001000001100111000000101110101100000--------------------- +ls80cwds +1111001000110010000111010110110010010100001110001001010011101100011001110011111010010111111001001101111001011111000010010000101101111001100100101101110001100011100000001001111100111000010111000110010100011111101000110011100010011000111010000000110011100000011100111011110001001010111111110001110011100001001110110011111110110001110110100011101101110111111110101110101100010000010111011111111101010101110010111111100000010011100101010000000111011100111010101000101011101001100110111110111011111001100001110001000010001011011110001010100101011011100011001011110111010001001110100100001101000010101011100010100000010010110010000101101001111011100111001000111000000001001110100010111010110100101111111000110101100110100000110111101011111101011010001111011010111000101101101010111001011100110000010000100111011111000001100010011001111011100000101110101101001110001010100111010101000101001001111000001011111000100000001101100000101100011101100010100000010010100011011100001111010100001010111110101000110001000010101101110001101101110011001011001100000000100101011011111001100010100101011101011111011010000100101001010000101000000110011000010011010110001101100111101011101010010100101011010111110011011010010010011101000110010100110100000110111110110101101110100111100101111001010000001000010111010110001110110110111110010011100111000111110000001101111011100110011000011100011100100011011100100010100100100111111010001101100000001010000010010101111010100110111010010101001010000011110000110011011101000110101101000110100000100101010010011100110001011110110110110111001000010111011000000---------------------11000110011001101111110101000011000010011000001011111100000011000101100011110100010110010001001111000100111110111100101010110001011110100110111000110010111011101101101010000010001111111010100000111110101110110111111100101011101011011010100100011100111100011001010101011001001100101010010001011001110101110111001011110110011101101101111100111000001001001101000100000010010100010001110101110111000000111000110101001110110000010101100100110010000011001110011101010000111001101110100100000001110111010101011110100000010001001111101110111100000110001011111011000101110001000111001111111010101000110100100100000001110000111011101001100010100000000110000001101110000010010110100101001000000110111010011010010001110001011110101001000110100111000111011101101111101101100000011111010110001010101011110100010010011100010010100110101001111011101101101001101110111110001011000011101111100101000100110010110000001101100111101100001111000111111010011001010111101011011011000110101100111000100001101101011000101001110001000001100000101011000000101101101100011100000001010100001110010011101000111011000101011011001011011001000001000000010110001011011010011001001101111100001001100100111000100101110100100000001010000100101101110100111100000111100010111111011001010101101000000001101101010110101101101000101000000000100011001100011001010000001000100101111100010001001110000001110100010110111100101000111101100101010011110101101011100001000110100101000100010011101001001110100011011111001101010101100110000001011010101110101001100100011101001010100001000110000001101111011000111111011010111011010011000110000011110101011001111001000000110111101001001011001100001000101001101010100010000101111010011000010110011011111011100011110110111101011010110000101110111001010010101010111101011011000111100001001100001000100110110001101010110011101101100111000011011111101110100010000101001111011101001101000110011100010010011000101000101000010110101011110110010111110110001110100111001100010101111001111111011010011011110101111011001110100101010101001101111100110111011100110000011111110001000010000100000100110000110001001111110001010000101001100101000100100011010110010010100101100100001001100111011010010110111111011111101100001001011000110100011001101001100011010101011000101010011000101101000101111100101011100111000111000001010001011101111100010110100110111011011100001010011001110000001110010110001100111110100110111010110011010101100001110010001101011010000100101101100011111101010011111100011010100011000101111001101100101011111110001100011001011111000010111111011010010010000011110111100110000111111011111011110010011110010101011001101110011010001000001110000011001111110110110100000101010000011110000101110100110101011000010100101100100001000000111100010011001100100110000001001001001101011010111000101010011110111100010010010001011100100110110100100101010100011010001010011101011010110001011001111001000111011101100011011001110010100101000010011100010100110100000100100010110011101000000010100010010010111011111100000001101111111001001010111001010100000010111010111001111000011011010110100000111101011001100001100110000100110000011011011011010111011101011001110100010111001100011110110001001010100110001000011100100011100101001011110000010001100000100111000100000111011111000010101001111010010101001110100001110110010110110101001101011000001110110101110111010000000000001011110010000110111101110001110010111010011111010110001011000111101101111110000101100110010110100110011111110110010011010110011110110001100000101101010100101111101001000110111000001101010110001101010010110000101011010011000011011101000000101000001010010011100100111111001100000011111101000001001100110111100100111100110100010010 +1010101110011000001100100010101101100101111100110010000111100101110011000101100110100011110001100111010110000101011110011010110110001011111100010101001000101110100010100001100110101101100010111111111100110010011110011010010011011101010000000101010100001110101000000011010011101011101110110010111101010010011111101101001111100001111011111011011111010100011111111000000110011011000000001100010000101111001000001000000100101000011010000010000110101100111100010000100110010111110111001110001010110011000101111011011011100111100011001011101011001110111110110101110100100001000010101000110110100000010011001100110011010001111111010000010010111111101010010110001000100110111000100000000111011010000101110111010000001101001011010011001001111001000010110010001110001111100001001000011110100011010010101100111010111110100101011111100100110110110011111111010011100110110110010100011000110110000111011100001001100101000011001011011111011101110100011011010100001011110111110010000011000101110110111110110001101001011111001100111001100000001111110101010001101100111111110000001001110011001010101101100100000101001011011110001010100111110101010101111011010111111111001001010001010000010011111110101001000100010010100011011100100101101010010000011010111101011010001010011000100101011010110100110011101011110101010101001000011110001101000111010000000001010011000110001101111100000011001011001001010100101011101001001000110100010100000011110000011101001101101110111100110001100110110001111001100100011010110010100101000001010101101111111111101100011101101010111111011011100010101010011100001001100---------------------10111000110110100011100100000100111110100010100000101000110100101111100001010110100110010011011101011101100101101111100110000101010100100010111001110011101011101110001000001110100011101110111000001100000011111010100100000001001011100010101001110111100111111011101000111110101100101100110101001101010110000100110100000110100100000110100001100111010000000010001111110001011010001111110101011111100101010011100000011001101110111110010011011100101000011100100100011000011100101100111011101111100110001010001000111010010011110111100111011110011010001000111001011000011111010000000011111001111000100001100011011110100110001010110101001011100111011111001011101110111111110110001010011010000001010110000101111110000100110000011010111110111010111001110100101101100101010110010110001010001111001011110111011100000111100001010110110011101010100100001101101000101101100011001111000010001000110011111010110011000001101000011101001011011101000101111000111100000110011101101001001000100011000100100010110000101011010010110100110100000101101100000100100000011001000001101000010100011011001011110100111001100100100011100010011001000110101101010011110010000100001110111011111100110011111001000001100100000101101010111111111100111000001010001010100100101000110001011011111101100110101101010111011011011101001011010001011011000110011101100111101111111000111101011111001000000110100011100111110011110101111111110011011111011000000100100011001000110001110101100000011111110100110000010010101000001001011001000100001010110011101010010100101011011101110001010111111001100101101010000101010010001111101001001000100000110101001011011011001000011001101111010111111011000010011001001010101110101101010001101111100001110101101000010111110001101000111011000111010000111000101000100000000001001101110000011001000010110000110111011010111000010110011100010100000010010011111100101011001000101101011010101100101010100100010101111110000101110111011100010110001111101000101101100001100001111111011001100010011100100011110010011100100101011001100010010001110010010110001000110101111110100111101110011000100101011011110100111111010011101101101101101010011001100100010100100000101110100001010000011010010011110010001010111001100100110100000000110001110110001000111011100001010100010001010010110001110010010101000101000110010001010111110011100111110011110100111000100001110011010011011011010000010010000001000100110000101011001011000101100111011010000011100011011111111011100110010001000101111111001100110110111101000000000101010001110101111110011100110101111101111101111010000100100010001001101111010101100011000001101000101110001100010010011111110011101011101111010001101111110100111100001110010011110111100001111011100000100001000000111100000001100110010001011010000011011110001010101101100011100110100000110010100100000010100001001111001000110100101110000001100101011001111001111000000101011100110101000010101011000111001011000011101001000011010010000101001110001010101011001011011001101110011100100110111101001101111101010000100100101011000011110111101010000100000010101100011110001100100010111000101011011100010101011000001100011000010000101111111001001001111100110001110110010010000001010000100000110000111110001011000110001111101111110010111110111000011011111111111001010101000001111101111101110110000101010001001011111110011110011101111000111101000100111011010101101111110000110001110101111100111101111011111111100100100000100110001010111001001100111110000101001111011010101010100011011101010000000000000001111010000110011110010110101101101100111001100110110100001010010110011001011001111011100101111000101011010110100111011101011010101011101101001011111010110111001011000011010010001100000111111100100110000001 +1001100111011100100101001011011111110010001010101100011011110011111100110001100001100110101110100101100100110111010101100011010101011011100111010101101010010110010101001101001110001011110100110011101110101000001011011111110011010010000011000100101010011111001100000111111111100101101001010111010110111111010101000111110011111011001010010011100011110111011110011011001000001001011001101101000000011011010000011011001111111110100001111110011001010100100110011001000000001011100110110100001110001010110010111011111011011001010110011110000111100000101101110111010011011001010001110011010011011101111011101011000110001101000011110000101011000110100010010101011000011100101110111100010010011000111101110100011111000011001000111011101001111011001101101010111001110110111001010011010001000011101000110110110101010001101101101001110000100010100110111101001100001000100101010101111011010111001110110100001010101010000000001111011111111000111000111111011010101101100010110001000000101110101010001111111111000101001101011111110101011111111000000111101000000010010011001001010011100010101001011001101001000010010100101001101010101010101010001011111011101001000101011011100000000100100001111100101000000110010111011110010010001000100101000110100010000101111010011100011000011001100011011101111001110111010111100111000000101011100010010101101001000010101100000001111101000010000000100110010100010001000111010010010000010100011001110111011100011001101101001111100000111000110011000001010010110011100100011010010011011110011011111001000000010100111000111011111111000101000000101010010110001101001---------------------01000100011011001100101000010010100111100010101100001000011111100110110100100010011000110111010000011001110101010011010101100100110000100111111101101000111010000101011100111011001001100101000011111100110100101001011011100000001101000000010100011100010000101100101001101100110000010100111000100010111110100001010011110110111110110110001010001010101100101001010001000011111100011000100011010001010111001110110111011001111111111001110001101101011101110101011000111011101101110011111000000111110000100111100010101111001000101101100110010000100010100000000100110000100101110000100001001101110000111010110000110100110001011011111010011011101110011001101100001000110011110111110010010101001110101111000111000100110010111001100100111110001110101110011001000111000001001011101100110101011101000010011100100010010000110100101001011000000100011011110011100111100000111110100010110011001000000110010111001100010101111001101111000111110101111011101111110000000011001110011010001110011101001101010000110000101111001110111101011111000100111111001011000100010000010000011010000110101110101101101000001101000100101001100011010001100011101110110110110100101100011000110110110101000010011001001010011110000000111110100101101011111110001010101111001110101110101011000010000010111011001011101000001010001100011001000000001110010110010001001011011011011101110001111101010010001101000011111010101101111110101111111100001111101001001001100111010000110101000100110011011010100101101000101100100001110001111000011000111011011011110000011000010101100011110101111010001100000111001000010010000000110110011101000001110001100010110100010001000101110010111010011001000011011001101010111110011101010101101011110100110011010000111001110001110010101000001100001011001001011010101011110110100111010111010100110110101100111100001001100010101110101000010001100100000100001111000100101010001110000111101000111011100101010111101101011001111010011010011011010011100110111001101001001100101011100000001000111110010001010100000111010000110000010001111110000000000011011100011100111110001011011000111000010000011110111101010111011101001101001001100011001010001111001101111100111010100101001100100111010111111011011011000110010110111011110100100110000011110000001110001111011101101111110001000011110001000000110100011110101100001100011010110110011010111100101110111011110010100011101100111111000001111001111000100100000010011110001100110110111011001010001111100101011001100011101111111100101001101100100011011001111011111110100110100100011111111111000000100001000001101100110101010001010011110001000100110101101110110101101000000010111101010100110101010000100011001110001001101100001110101001010101001110011101111010010011011111011011010001010001111010110011000100101011001000110011110011001010110010110110111111100111010001110001101111101011101110000100001111001001001101001011110101110101001010000010010110100010000111010101001010110000111011101110000001100010010010110001101010000100010111100011100011110100000100000101110101110001001110101111101110010010010101010011000010101010111111110000000001011110001101100111111000111111110000111010001010001101111001100100101101101101111101001000011000110100011101111010001010000000010100110000010100110100000011111110010100111101110000101010111110010011010000111011111111010110011000100110000101100011110001000001100001010101111111011001100000100111110011101110100001010011000101001101010101010101101001110000000100111100100001010100101100101111001101100111000010011110101000011010010010111001000001001100010010000101011011011111101011011010011011011111101111000110111000000011000111101000011101010110001100010011111100111011010110011101000101000100100100111000000111100110100001 +1000100111000001100100001011000000101000001010010100100010100100011111000011101010100001010001110011111011010101110100000110110010100111000111101110001101100100110010111010110000001001001010110010011000001101010011101010010110110101110110010110100111000101101100110111000000010000101000111100101101001011101110110011101001111100110001011001010010010000011110100100001100010000111101010100101111110001011100111100100000110100001010101000110011101000111101000010001000101001111010101000101111000001000100000001001101010101100100111111000111100111100011010001000100100010011011101110101010000111010000001001100100011001100001010000111000000101001010001100110010100010111010000011100001000100111100011110110110110000011000100110101011001011101000010000010011110000111100000110111000110001100110000100101111110100110011110010100010010001100001100111101000101001001111110000101111111101010010100110100011101001110110100111001110101111101000010011000111001100010101100110000010000000011110110000010011011111001110001000010011001000100011001111001110100111101111101111111001000011101001010001010101000101011100001010001100001101011010110000101010110000001111110011100111011000101010110010001010101000110101001111111100110111010010000011011001110011100010111111011010110101000011000100100001101110101001110100011000011000010111001010111000111011110011101000101000111101011101000111111001110000111010011100101010001010010101110011101101011100100111111101110100101010011011101000011110111101110011101101110011101111101001001000101011011110010011000111001001111011010111010001110101001011111---------------------10100100001011101001011101011110110011001011111000111100011111001100100101010101101111111110001000100101110010000111011111110110000011111010010111110111100000110101110011100001011110100100101111110111110000100101111110100101111011010011110001110011100000111101001011010101011011100111000001011101100010010100111011010001100010110001111101101110100101010110110000000101101001011111100001001101110110110000101110110000010010010100011100111110001011010000111001100100010111000100010001011100001001000100011001110101111111011111100110010101100100000111001010001011001011011111101001010010011010011011111010000100010110110010100000111000111010101110010001110110001100010111001111001001000010011110011011000011100010101111101111100000011111011000100001111100111011011111000011100000000010011010110010001011001000110100110011001100101010000101001011100111111100011011100100110100011111010100110000010010101001000000111010000010111111110000111111111110100101110010111100100111111111101011000001000100111001101101000101011001011010101111010011011010000110101111100000000010100101111111000110001110111100000110110000010111101100111011001011000010000111011010100010101010000111100000011001100001100011000100001111011001101011101011010101001110110101110001111111001010101010101000000111100111111101010001100001000111110100111101010111111110100110101001001110000011011100011101100001111011101011000000001110010011000001111011010000111010011000100100100110001001100100011010010010110111000101110000010000001111110001110100000001011101111010010110110000100011111011111011001100000111001100011101101000010001100100010101100001000100000000011011111010111101010110011111110111000010110100000110000100001110110101001011001010001111010101010011111100111000011101100010001001101111001111110110101010111110010100000011111010011000100000000010101110010100011011000001000010001110110001100100001111000001010100100110101101011001101001100000111100000000111111110101101000001111011100011101011110010010110010101011000101011111100101110011111001100011101100010101100001101000000011010000110001100000010011111001000001000110111100100101000010101001001001000001001010000010011101101111001100101010010001010110111101011110110010010001001101011010110001100111010110110000101000011010011101100110100101000001101011110100000000100101101011110010111111100110110101010010111100010011011111100111001101110000101111110000000010011001100000111000100010000111110100001101101101100000010100101001110011011100111111010011101111011001011011110000011010110100010000011110010110010011111011010010000101011111110001101111011111110001101101110100010110101001101000011101100001100101111011010110100111000110111011001110111101011111111000101100101110011111111101111100111101001000010000100001001110110111010011011001011010010110010111000100111111011011001000111000100100100010010011100011100011101001101000001100000100001010011111001010000100010011001011011010100101111011100101100110111110100110111011101111110101111101101111000101100010000001001010100101110101000000110011001110110111111001111111111111000000011110100100010000110000001010001011101100111100100110010001000011001010000010001100111101011001100101000111111111110101010010010100101110001110011001010110111001101000001110101001011111001110001100101111011011011011000101111010000000000110100110110001111000111000000001011101100110101011101110111000100111000101100101001100000010010001111010000100011110001000011001110011110011111100111100101101100000000101111101110101001110110111100110001001001010011101000010001000111010010001000010100001100101101111000010101111001000101110000101010010000101000001010001011001101100100000111101000010111000100000001000001010110100 +1010010101011001111100100111111000111110110001000100110101101111000010001011111000111101100000100010001101100101100111101010010111011010000011011110101110111100100000101100000101110111111001001011001001010111011110000001001001101011011101101010000000000100100000000000000011000010100010100101001101101001100100101101111011100110011111110010001001101010101000001111011100000000011010100111001100110100101111000111101001100111110000110001010000000001000111110100100101011011100011111101111100010101100100101111010011010011101010011100010010100001010010100010011110001100001000000100101100110010010011011001111011110111000011001000011100000110000001011101001011110001001001010000111011111100011110000111010011000000010101101001100001100110010100100011000100010000010011011100000011000001011010011111100101000100110111011000000111010111010001100110101110110110100010101100001010101110000110010010100000001100011111111001101010010111110010100110000100001111110101011001001000111011101110011000000001010000000111001001000011111110110010000111100101110011110111111101110011010000100101101111111100101011010011101100100110011010000001011000100011000001101110011101000011101011100011000000100011101000111010111010101101101110110111000100010100110111001101001011100010000011000110101100011101101001111000010011000011110010011011101010000111111111111111100011011101011110110110100010110011100010001011011111111100111000000100111010011101000010001001000100101000010101011010100000111110001010111111110001101010110000000100011000101010101110010110101010001001111001010010001011110111010000010---------------------11010001000011001010010001100100111000010101010110110100001100001100000101100000111010001101001100011000011110100000011001000111001101001111111011111000001001111001011010000010001111101100001100000100111111011110110000100110101011101011010101100111010100111111001111011010111100100001100011101000000010000011011010110101110110111100110011110100001110110010100111101100000110111011010100111001011011001110011110011010110110001111110110011111100011100111100000011001100011001001011110110100001110010111010101100101101111001011101111110001111011010100010011011011110011011101110100000111100100100000111010000010011010100001011011011111111001101111110000100110100001000011110101001011101000000000001100010001110010011000100010000101101110101111000001001110110110100011110101111101101000111011010100101000011011001010100000011100101111100011100110001010110011010010011101100110011101010100010100110101000101011110100100010111101001111101010001001111001010111100000011111000100011011011110110011101000011110010011100001101011111101001100100110111101011011111101000000001000110011110111000011010000001100110011110000110001001100110001100000011011000011110100101100011001010100111001010100110101110111000111000001000100011010111100001001111000011110001011100111001100100100111001010111100011100111110001111110101100011000110011010000001101100101010010100111011110011100111111001010001011001010100000100110001111111100111101111000101011010010001010001111100001001011001010110110011011010011110001101101010010100011000110001011000001011000110000101100110111010100110001000110010111110101000111000100000010111000011110001011101011111010100100010001100000010101011000101000011010101101000011111111111111100001101110101010111101111111001011010100100110010000110111010000110001000101100001001001110000100110010101101001111000011011100110110110100001111011110000001001010011100010011011000101000001000111010010000001110000011000001001100101110001100111000111100000111011011111010000110000010100111111110110011010100100010110101110111101011111100111001111111110001001011001001100010000100100111001000011000101110110000001100111011000010010100110101000011011110001100101000010011110111110100100011011011001101000001001110110100101001010100111100011100011010111111111011111100010000011101010101011110101101110110100010110100000100000000010110011000101010001011001010111110100011000011010011101010110101100100010001011011001111001100110001011111011100001110110111001010111001111111110111010110011000100100001010101000010001011110001101001110100010001110110001100010010000000111010001100110101110000111110110011011000101101010010000111110001011010011111011100111011111011000011110000010100101010001010011101100101101010100100001100010111001011001011001011110100110000100001000011001111001111101010000011111010000111101000001011101000101111001101010111001100111110100110101001111110011100010011100001000000000101111010101010001101000010101100011010111010111111010010110011101001101110111110000111110111111011001000101101101101001111101001001010110111001101011010111100000001100010011110100111011111001110100101001101100100001101001110101001011100011010010000110011001101111101011001100011101111000010010111010001001111010101011100111001011000000110111001010001011101010111010001010110011111000010000100010100001010001010110010110011101110111000101000111101110010001001101111101001000001011001111011010100101110111011000010110011110110100110111110011100000110111111111000111100100111000011111100101001000011110000110001010110110011011101011000001101010100110110000101001010011001011001011110100111100111000101001110010010000011100111111000110100001010000111010001000011011111101100101111000011011100011 +0111010110111100011111010101101001001011101001011011010101001000000100011110100110111111101100101111111101010110100100000110000010101011001010010100001110011001100000001010101001011101111111001111001000100101101101000011000111010011100111101000001001110111101010001110101101011001100011001000111001000110011000110001110101110100110011100001000111001011100000101010100100100001000010010010100010101110110011001000011110110000101100101000011011011111011110011010111111010011111010001110000100001110111010011001000101111001010011001111110011000001001001111101011010100001011101000000011110110110101011001000111111100000111101010101100001000110100000001001011011100110001001000100011110011010011010110110010000111000001011100001000101111011001100011101110110111100011101101000110000000001000011010100110101100110010100100101101001011110000110000110010100100010111001110011101011000011000010000100101101111101011011010110110010011110000110101010100111001101011111000110110111000101010001101010100111011100011101001011101001000011001100011010110010011101110000111001010110111110101001100001101000010101111110110000010110010011011001011110000110011100101011011011101110100011100010011010100001011111000010011001001100100010001111111010111010011010001101000100110001001011101100001101101001011101110001101001000101000101010100100011100100110101110111101111010000111010000110001111000111100100101000100010111100010011100011011011000011110101000000111110010010110100010101101001100100001110010001000110100101011011110001001001001110100101100011001110101100101100010011000011111100111010111---------------------01010110001111010010000001010100110111111101101001101010010111010101111110011001110111101000001111111110010011100001111111101101101110000000101100101101011010001101101110100110001010011000001011011111010010011111111111011110100000101001011100001100110010111110111001010001000101011111110101111011101100111110101000011011001110000101111010101010100101011010011101111001100000010011010101011001011110101100001110010010001100100100000100101011011111000011001111001010010110010010001110001111000001110101111111000110100011010101011001010010000111111011101010001111011110011111110110101110101001000100010000010011000000110001110111010000010011101111111011110010101100110111011010010001010000100011100010001100000110101111101100110111010111111010010011101001101101010001001111110100011101010010111001110111100000111000011101011111011001111001100010110100000010001100111000010101011110011110100000111100011101110101000111011110011100110110110100000111000110101010100110011010111111000010001100010111001110100101100010001001010101001001100101010001001000001110001101011110010101001111011001000100101110011011100010000010001100010101011011000000010001111011101111100110001111111101011111001000110100100001110000111101011010111110101011010110011000001100101110000110100011101101000101101011110110111010000111101110011011011000011000011001000000011001000010101110011001001100101011111001000111010011101010110011011110100101110101000101010010011000011100010100110100011010001001110100011111001000110100011011010111001001011100000100100011111110100101100101100100101111011000001001001010000101010100001101100111111011010001100010110010111011000011010001101000000011010110001010000100001100100011110001101100101001011000011100100100111000010010010001101101111010000111100011111101000101000011101001101011110010101001101110010000101000111011001110101110101000101100101100111001011000100000010110111001010101011000001001110011001101000111001101000101010101011001011010100010000000000110101100011110110100001111011101110110111100100010110001001111010111110011010110111111010001111100001110010011111010000000011111011011010011000110010110100111110100101101000000001100011110010100010111101001010110001000010111100111011111010011101000011111100001001000100110110011001101111000000011101110001100100010011100110100011000111001010001100001100010100100000110011101000111110011011101110110110110111010100010000100011110110001011001000010100010110100100101001111011011001000101110010011000101000000001000000110011011010110101100110111001101100001110100010011101001110001111111111001100101010010111001010100100100101011010010011101001101101101001110010000000011101000101101010100011011010110100000001110011101110110101000111011101101110100001110110001001010110111101011001101011110110110110011000001110110001011111010000110000110101111100001100110101101010111101001011011101100100010110001100001101101101010001111111001010010001010000111111101111100110011011101110110101001001101100000011001110111110001001110010001110001011001001101101110011000110100101000000101010111110011001111000011111010011010100100000101010101110100110001101010101000100011000110001010110001111010100010000110110111111101001110110001011010000011010111010111101000011010000100111001110110110001111011101101110100100100000100001101110000100100100101111111100000101000110000000000011010100100110010101011010100001111100001010111100001111011001110000101011101101110001010001011000100111110110001011110001100110111010100100101010011001000111111101101011111000101011010101011000011001100000001110000101011110011101100000011110000101011001011101001010011010111101101011001110010010000011000101111011010100010101010110110011000101011110110 +0101010010111111100111011101010110100110010110101010011111111100111010001001100100110100001011101011110110001010101101101110111011111101000011111010010000011101001101110101111101101000001000001100000110100100000101001011100101001000010101101010010010000110010100010110000000000110000000000111110111111001010101110000101001101111101100001001011100100100001011010110101101010000010110100001110111100000001010111101000100010110000100111010011110100000100111101001100110001111001111010011010100000110000100111000111000100111001011101111111011100000101111101100010100011010100010011100101101000000100011101110101111000011111101000101001101100110111101111101110001100100000110111100010100101111100001100001110110000010000110010001010100101111011101110001001001100110000010111100101001010000101111110111011000010000101101100000010101011110000100000000001111110110000010100001111111111111100100000011110100110011111110111100000110111111001111100110000000111000110100011000100011000010101000111000010011010110011100010001110001110110001101001010101000100001010001100111011101010101011111001000101001100100101101010010011001000000110110011100111000010001111101011010101111100001101000100111101111001011010010110110111000101001111100000010101010111100111110111001111010000110000001001011001010101110001110010011110110001101101100001011010100000111000011101111001101110011010101111011000010110011011101010011001000010000000111110000101111001001111110101000010010101101100010100011111000001100010000100010101000011101111001111110111111001101010110000101111011010011111010110111101100100111110---------------------10001100110100110010000100111010011001101001011010001011000100011011110100010110100100110010111111000110100101100111101010100000101011110101000101011011001001001111010101000001011101110101001011101101000101000010010110001011101010111110111101111001011101011101110110001010001011110000100000101110000001111110011000111010101010111011001011110101100111010010100011111010100101110001101101110010111011000000010100100000001100010011101101001000001001100010010100000111001011010011100101111110101101101110001010100111111110000100110000001111001100001000011111110100111100001000110011111000011101110011001110111010010111101100110011101110101000110011100100010101010101001010110100101111101000100000100110110001101111101100111001111100111011100011110111000000111111001111011010111000010100000100001000101111000110100001010110011110110010001001111100001010111000000101101101001101111100011101111011010111011000100000110101010000111110101100100001011110111011010110000111110111100011101100111101110101101110111011000110100101001000110011111101100100011111000100100110110101101001110101010000000011100101000000101011001011010001011010001010010111100110111000001101111101111110001000000100110101111001011100010010110000000011001010000000101100011010100110000110011011101100000100100110101100011101111101101010101100000100001001111101010101011011100100000011001010001100111110001100101010110101110100000111111001101011001101000011111000001100010001101001110111101011110110010111000000111110111011000100000010010111010000110110100101000011011100010110101001001011011001011100010000010010100011100101001001110011110000101011111001001110000001001011010010001100110111110111101000100010001110010100110010111010111001111111111100001000001001101111111101101010010011111000100000010100110010011001011101111111000111010111000010111111111001101101010110001000100100111011001001001111110010111100111000000000010001010101001010100111111111010011000000100001110011001111000000000001010101010110100101101110001111010111000010001100110101110101111001011010011000000001001010100001000000110000100011010011011110001100000001010011011100001000011000011010001110100000000000010100101100111000010001011001000010111010101111011110100010000111111101101100000001100100011101101100000111001110101010111111001101110000000010111100000100001001110111010010001100100000000011010110100110000010110010000111001010101101001100111010101100101001100111111101001111100011101101010010001000101111010011101111001001010111001101001001010100010111011010110101000110010010000101110101110001110111001111100101110110101110000001110110011110100111011111000100000011111000001100000000000001101100010011100011000010001110001101100100011001010000111001001101001110100011010001111011100000000110010001010011111011001110101001100100011000101110011011000101011110101011000000011000111101011111000100100000000110010111010100110101001111001000101111101011001101010000001010010000010000010100101010110100011011101000100111010000001000100100111000011111110101010111000011111011011110001111100101100001110110101101100111001001010111100010110100100100000010001110010101010010011100001001101000101000011101000101000000001011101001011101011101001001110111000110111101011111110111000100010011010101000001001101010010010010101001010110110011100011101110001100010101111111010101011001000100010101100100010110011101100001111011001000010001000010110100000101101001000011010110001010001010100011111101001001011101111100001111010111100011001100111110010111100001110101011011110100010100000001101111010110001110011011001001111001101101011100000110010000011100100001110011100010000100110001100011001101000110010111111101011001000010101000101010010001110100 +0110101010010110100000111111000101101101101110011011000100101000001000011011000000100001110100011111000000001101011000001111101001101000000001101000111011100100111001010001010011110011011101010111000000010011000100010010000100000011001011000001010110101110001011011100011110110111110010111011101011100100000000101111111100101001111010011001011001110101010111010100110101100011000101111100111100000111100010010111011110001110111111110000101111101110000100000011001010101101101100110111010111010011111000101110001001101001111001011000100111001110101011010011101010010011111100110010000111001111010111100001101111001000000110110010100100111010110111110010001100101111010011001000010000111111110010001110100110110101011111101001111000101110011010011110101111110001011000010101110111100011011111001010001111001110001110000100001101001101011011001010101011000001011000000010110001101111101001011111100100110111110101000010101001010001101001001100000110110110101011101101001111110101010000100001100010010000110001001110011010101100111100011110010001000100010100001111011110110010011001000010000100101010111001100001110111110000101010011011010011000110010111111110010011110111001111110110111001111111001001000011101100001001000100001001000010001100110100010101010000100000000110011001001010000101111001011101101010010011110011111100110100011111100100010100001011110110101011011000011110111111100011111110000001001000111011111101000000010100100011011100101001101101000001100100110101100111100011010110110001111011010101011110010110000010110101111100110111010010000100111010010001010011111---------------------01010010010011101101001111101011100100100000110010001010011001011101010111111101000110010000101010110010010010110001001001101010011001001001011000110011000010101101011011000011101001010101010101000101111011001100111010000000111100001000100100111101101011101010001111010011101000111100111001001010011111111011100000010100101100001100100001000111101111010011100001110111111010100110100010011101101000000011110111110011101010111000001000111000000101111001000101110000001110010100011001001000011110011001110011000010011010001111000110100110010101110111000100110110101000001110101010010000100101001111000001100011011101111011110011101000001100110001110010100011101110000101111101010011010010100010110101100111011110101110110100100001000111000111000010111010111111100110000010111110010000001000010110011100000111011110000010100010100001111001000000000001101101111011101010111101001000101010111100100010000111000110011010011001000101001000110101111100111001011101111110001110110010101001111001101100001011000100001100010101110101110010010111101001111001111010010000001000010011001110111111011000111100101000000100010000001011111111000111111101100011011000001011111000001001100100010101011001011011101001001011110000110000000110011100000111111010000011110001100101110010010100101001011101000010010010010000101110110010101101001100001000011100001000001101000011101011111000011100111010110000110011010000101001010110011101111111110000001000001001001101000000101111001111100000010000011010011011001111000110010100101010010101100110110101110111000010011001111001101111101001010110001001110011001000110000010111001101001001011001000111010100001001101010100011011100111111100110101111010101011001101000101110001101011011011110111011100110101011101001011101011111110111010011111000011100011111001110101000000111011100010100000110001110001001100011010001101010010111010110011011101111110101110011001011000001011110111100010011101000000101110101101100110010001011001011111011000010001011111111100110010101011110000001111000100100110101011010110000110010110010110100001000001000111010101010101011011101010111100011100000001011100011101101110100101100101011010101100001011100100000101010101010100001110011011001010011011011010100110011011000110000101100111111101111110011001010000011100101000000001010011011000000010101101100100101111001111110010011110111011110100110101111111011110100011110011111101101100000111011001101101000001101110001001101001111110010000011000001001000000000111011001100111001111001100010000111010100011001100101010010011100011001000010111000111000001011101011000001011000000010001101100011110100101000001111010001110111011100100010111010011000001010111111111000001001110010110011000110011000011110100100111101000100010001101111100000011010000010011101000010011110000101000110011101111110100011000000111010100111110100000110100011101011111011011101001111111001101000101110011100010010000000111100010101101110000001000011001001100010010100000110101000111001001100010111110001011001110011111111110110001111101010001011001011111111100010001000000011000011110110001100000011011101001000001101010111110111110000000111000010011011101111110011100101001100011011111011011100101101011111011101010000010000100011101101001010101100010000010100101100000110001111000010100001110100000101100110111100011100111000110010010101000000100101010001100001111111100110111011111101110111011010101010010100011000101111111010111110001101110111000101100110111001110111110100111101010000000110011011010101101101000110011110001010110011011001011100111000001100100010001000011001100100111110001110011001011011101110101010001111111111100101010111001000111111101100010101001100110100010001111010010111001110 +1010001111010100100100001100000000000011110010110001010001101010000110000000110001110010111010100100011110111000110001011000111101011100100001111010100011000011000001100101010100000010001011111011110101100011011011101001101100100001011111110110110011110010110001001110001111011010001001100011010010111101000100011100000001101001111100010010100011001011010000110000010100001011111001110100011010010011000110000101111100101111011001101011010100001100101111010000110001100000010111010110111110101010001010110000011000001011101001011001010000101001111101001001010111111110111101000100101010100111111101110010111001010110111101110111000101100100100011000010010010010001100010000010110010001110111000111110100011110000010110000010011111101000000100001001000100001100011110111010101001001110101100101000111000111111101000010001110100110011010110001111011111001110000001000010100011111100100000110000100001101010110000110101111111011111110111111011101101011000011001111011100001110000011100010010111111000111000110010001100010010111001010100111111011011100001010101000111000110111111011010110001010000101110011000001101110110101111100010100011111101100001111110010100001001101110010110010011011111011101110100100111101011011110011100010110010011010101100010111001110000100011010111101000010111000111110001111010001110111000101100101010011000110110000000110000010000010001111011010111010100110100111001001011010000101001000000001010000001001000101001110011010110000101101110110101000011010001000111100001101111110001001110001001011110001010001100011110000000001110100111000100101011111010---------------------10010100100101011110100101011010100011001011000010010111101010010001110110110101011010101101101010011011000100001010000101100000010011011010000000111110101110001000011001110001100101000110000000101110010010100101011110011010111101000110110110110001011111010000111111000000010111101000100000100100010100000101101010001111100001111110010110011110110101110000000010111101010010000001000001011100100010000000000110011111101101111110101110000111101001110110110011010111111111100010000101000110000111001000010010110011100011100000001001011110111111001110110000100110011100011110110100100100110000100001110011101000011011101101010001010111110101101001101011100011010110100100101101000111101000110111000111000110100101100111101111100000011101100111001110110101100100110100100111000100000101001101000010010000001111100111000011000101110100100101101010101001001100110010111111011010010101010111101100101001011001011110010011100101011000001100000011101100100011000010000001010010010000111110011100100000001101010110100011011001010100110010110110011110101111101001010110111101111011100101000101010011110010101001110011110001100100010001110001001001011000110001001010000110101110011011010111000011111010110011111011101110010110110001011101001100100011100000001111100101100011111011110000101100110010001111010011011100001101111101110101100000110000011110101100000011000101100101010000001011101100000110000000001001010000101100011101101110010011011001101000010111001101100100100001000101100010110110010001110101101101110010011010111101100001010010100010000111111000001010000010110000111111111100001010001011010100011001111011000110110000011001011001111010001100100010110001001101011011111111110100011111000100111010000001000100101010100101111001110011010001001010111101110101010110101001100011000010111001110110011001100100101000110011110011010011101001100011110110010111011111001110001110100101111101110010000011001100000100000101111101000010111100001000100100001111100101010111010100100001110010111100111101101011011000101000110111000100010011101001110000110110101001000111010010010001001000111000010010011110011111011011001000010011101010011000100001011011011010000001000101110000010110101011111000101000010011000010101001111101111001110010101101101101110001011011001011000000010010101101100001111010000110111001000101010100011110101001111110010110111000000101100001010111000110110110010110111111010110100101111000011010100100000001110100000111010110010010110000110010001111101000010110110101010000011111110000000000010110111100100010010110001110101110110100111010100101100000110111000010110111100110010111110110110101110000001010000010110000010000111010111110001000010001110011010101100110100100010111011101111100010000000101100001010011010000001100111110011101100001011011100011110000011101011100100110111011100111011100001000111110011000010001100011001000101010010100010001011010001001111001001010100010100111001111010110111010110011110010010010010000001101000000111110100100010001001100111100011000011110010000000101100001100111110101000100111011011001100100101100000100101111101111011011100001100001011000011100000011100111111101001100100011000101100100110001100011111011010101011010101110111011001100011010010110001101100000111110010101110101110010011000001111110010001010011001011111001101011011000011011011010010110111010110011111000100000010100001001110011110111101100011110010011011000001111011110001000010101010011010101011110100000111010100101100001100010010100011010110000011100011000001101000111010000000110001110110010001001101111110011110100010001101011111100110101000100110001100001001100010101100001010001010000111000111101011110010101100011010010011110001101100101010100111 +0101101000010110110000110100000001110110000100000000001000001000010100011000111000101101000110010100000000100101110001111000100111000011001001000110001000010101011010001111101000110110110011011111100111001100100010111000111011010001100001101111001011101110000111010001010001111101110100010101011010011100001111001011101110011110101001000000111011110011101000110001110011001100101011000011001110110101100101000111100011100001010111110011011010111001001001111110000100101010010111110110101011001110101010010001101000011001101000100100001101011001000000111001110110110100001100101001100101000000110010101111110100000110010011100000000100010101110110110110000100001000111011101111001111110100001000110010001101000001110011100000011011001011011100000001001111001110100010100111010010111010100101100001111011111111000010100100110001111101111100110010001110001101011010011111100001111101001101001000001001011100011010000011110111111100110011011101111001100100011001111001110111111100000100101110101000000110100001100110110010100000000101000111011011001100011111001100111000101110001001011110000000100000011100001110111111100010101101111010110010100111011101111110010110100101111101011111001111100110110011000100000010001110100000010001100111101100110011100001010001101101010001001011101110000100000110110010101110101000100011001001101010011011011001100011110001110000000001110101010001010011101101000001010110101000011000001111110011000000110110100101011010110100110001011000010011010101110110010100100001011110100001111110000100011110100110110011001001000001100111000000101110101100000---------------------10010000100101010101101001001101000001110100001000111100110101000000110010010110000000010011001000010111101000010100001100001101100001001101011010110111101001110001110011101010100111010100111011100101100101011111010000101101011010000010010011001010100101010001101111001010011111011001010001011100111110111000111000011111011000001110011101100010010111010110000011011111110100110110010000011110111001110010111011011010001000001111010101101100100101010011000110110010100001001110101000100110010110101010001011011111111111100010110001010111011000011100010011101111000111011100110011011111011011110000011000111000011101111001001100100101010000011101111100010011010100000111110010101000111100011100101110111101110011010000001110110001111001001110110111011101111000001101111101111011100011011001011010001100100011100111010000101100111001000101000001101011101100110110010010000010111000010001000100001001101110100001011010111111011110011010100001000001110111010011100010101000001000101111000001011110100001101111010111101000010111111111111011110001011111010011101101011000100001011100001001101101010111010100001011000000101010100001011110000100011001111100100011100111101101110111011110111101111100100010010011011001010010011001101110110011110100101001110000100111111011011010100111101110001110101001010010011111001000100000110001110001000001111100011111000110000011010111010001101101101011100101101101010110100010111110110000111110111011011011001000010100011000010110100111110001001111111101111111011001101101000111101000111111001011000100101110110100101011011100110111010001101110101111111001100111011111010110010110010000110111100100010101100000010110011011100011000100010011011001010000111101111010111001011100000010110010100111000001110011101100001101111101101111000111011010010010000010101011010101111101100111111001011000100000010001111011100111000110000011011010101001000111001110111100000011000110001010010100101000100010111011101001110100101000110010100100111011101011011000101111010000001011100100010010101111011111101011010000111110010100001111010101011101101010001011011001011101010111001111001001000001010001001101100000000110001000001011111101110001111010010010011111100100100011011111000110011111010100001100001101100100100010001010011011000101011001011010110000000111110100111111110100110000001101010000000111010001101010011100001000110101001011010000000001000001101000111100001011110010010100101111101100110001010000101000001000010111111011100100101010100100000111101011101101100100111100101001100110110001000011110010000011011101010001101011011001011110101011011010110110001001010100010011101100001100111011001000001101100011001000111100110101111001100111100110100110100110000110011001100000001110011010010010100010100101100100110111010000110001101000110001100001100001011101000101101101110010100001111111101010111010000100111001001000001001001001010011001011001000001000101110111101100010010001100010001100000011001101011011011001101100111111111101101101101110001110111100011111010100001001110001011110110010100100101010101011101100011110000100001100010001100011000111111110110011001101110011111001010101001110010111111011100110111111100001110011011111000101000111111010110001000100101111010001101000001100001111101111111101010101001101101101110011101011100000000000001111100001110011010101101000010111001111010010000001000110110111001010011001110110110000000110000001110100110010011010000010001110000010111101100000001001001101111011101011000111000110011111111101001001111011001001110000101100001001001000110010001110111100010011110000111001110111000111110100100010100001101000101010011000000001100101010110101001011100011101011110011110101111110101101100001011110011 +ls160msgs +0000110001001010000101100001001011101010110110111010100111111010100101100011111001011011011000110101101000010000100110001011100000011000111110000000001111010000000000000000110110010100001011100010010111010001000101001100010011111010000001011010001010000000110111110000011100111011001010000010101001111100010100010011110111100000011010110011001000001010000101100010000001111010101011110011110001000010100100111110000011001010001111111100011100100110111000010110000100100100011100001100111100110101000111100001110000000100011111000011101011101110011110000010101011011000000011110000111100010100111110100100011110111011110110100100010110000001000101111010001000101101110000110001101000100101001010101011111101001001110101001110001011011011001001011001011110111011101111000111101111100101100100110110011101001000101110000111100100001111001011111010101010110011101111111110010100010100100010111001001001110011011011110110001100001100010101000000101110101000001001111010111000101001000111110010110010101000101111100000000101101001110111000101101110111100110000001010001010000000110011010011110110010110101100001000011000000111000011111110110100111001100010111100101100001100000100011100001000101010010010100101100000110110000101001011100010100001000011001001110010011011101101111010111100111001001011111101110111011111010110000101111010111111111110010010111001100110110001000010011111111100111011000010101010000100001101000110001111010000100110101111111001101000001010111010110000010110111001111001111110101010110000100101010010011110011101000010100110110001110000010111000011110011010101110010001000111000111011001110101001011110011111011111101111111010111010101011110010011100011110001101011000010101010111111010000001100111110100101010000001111101100101110010011010110001010111100010010100111111110011111000101110000111110011100010111001000110010100010110111010110000000101011110001111011001100010010101001010100100000010100110100110001100101111110011101101010101011011010110011000001011010111101011101100100100110001110011111100000101101011001111001000100010010001110101111001101111111100001100000001111101011101110011010101110010010010010111100011111000001100100101011000111110000110110110100010100100101001110011011100101101011000110110001010100100000000100111100010101101110001110011010011100100001000101110111010111110001111101000010000011010111100011010000111101100010011111011011111011101110010111100101011000010011100011011110111101110011000010111101100101011000010101100000101110000001010000010011001101111011010100011100101110000101011011101011011000100000110000110111110001111010111011010001101111110101010011010001101100011011010010110100000010101110011001111101111011101010100100001000101001111001101001000011011111011101101000110111110111001100110011111110100111101100010000000110000001111001101110110101001000110111001001100101110010111010001100001010001111011000010111100010001111001100111010011000000101010110010001110111010010111101101001011011011111001001110100100111101111101100111101000110111111100100110100111000001100100110000110010010001010111011011110001111001110100110111011001000111101101110000111010011000001010111110010101000110011100001100011010010100001010101000000100011110001000100011101001101010100000110111110010101100110001000100000001110001111010100100110011010100110111101111010111100010001101000000001111010110101110010100001100011000000111010101110100100100110101101101101000011011100011110100110011011101000110001011011101111111001001101110101001100100111101000--------------------- +0111101000001101101101011101010000110110100011000100100100010110101110001011010111100011011101100101011001000001101001111110100010110000110101101011011101101001000011111100000000000001001111001111110110100000100000110110001011001010001001110010100010100010100011101011100111001110010100110000101100110011111010001000100111110001101111001011001111001110000111100011100111000010000100010101111000101101101100000101110010010111110111010110000000010010111101000000101110110001111011010101100100011110001100000100010010101001111010000010100010010101001101000011100111011101110001010010111010000001100111110110111111100001010110101010001100010000001001111010110110101011000001111101011110011101111010011111101101101011011010000010010001100001111100010000111100001111010110001111110110100101011110000100111010110001011100110011011011101100000101011101011000000011100111001100111110000010110011110010010111011010000100100110010001101100010100111100010010111011100001101110001011000110101100011011001000000010010101011000011110011110011111111111101100111001010001111101101110001111000010110111100010000101010111001011000100100111111110111100000111111101000101111111110111010001101010110111001000101010001110000011000010010010000110011011011111011100010000100001101011001101011010010101101000011010001000111111000011001110000011010001111100101100011101000100010000000100011010101000111101101101101011110110110011000110001001111100010100100110100111100110000010000010101111110001011010101101000010001110000000101000001101101101110001111001000000111001011101010111001110000101100011001011001011111001100100011010100111110000101110110101001100000111000101000101001001100110110011101111001110101111110001111110100010100011100101101011001001100010111011101111000101011100000011111110100011110011110011101011110000010001000110001110110011111010111000011001010011011111010100000100110010011011000110001010110001101010101000011100101100011011111001001011110110010100011000111000101111000111011011000100010111010101101101111110111001010011110010110000100111110110010001010111000000011111110011001110101100011100011101100010010110101001100110100010100001001001000110101011010000111110110010000111101001111110010100000110100001010101100110101100111001011101100110111111101101111011110001111101001010111101111011100101010111101011010111010010110111011011010101101011010000010001001001011110101110101111111110010011000110100000101100100101000010101110111011000000011010010101000010010011111000011000001110001001110010111101010111010110001100001001100110000100100011001110011010111111001001110100011001010001010010000101100011010010100111100011001011011011111110000110011111010001110001111010000011000001001111100001011000111001000101000010110010011101011111010100001100001011110100110000000100000100110001111011001000101100110100101001100011001000100101010001110111100000110110000001001011110000011110001101111010001000001100101011110000100001101011111100011001100001011101101100001110001110100100000101001000011000100000001111001001100110001111000110010011100001101111111010011101101110001100010000100011100011000110101110001000110000111101000100100001010101000110110100011110100110010101011011111000100101001110000010011110110010100001100111001101000100101000111101011001000000110011000100000100100110011111000111100100100010011011100101001101110001000111101010101111011001100010110111101100010100110101101001101101011001111101100111011101000110011110010011001000100110010000001011101101100101011011010110010000011000111--------------------- +0100100001011001111101010011111111101101111101000110011110010000111100111100010010001100000010000000110111001001001001110010100010110110110111011011100111100101010100101111010001010100001110110110110110110100111010010000001101100101111010010111000110101000110011101000100011010011101110100101010101011100000001000011100000010011110011011110000110111001111010110111111011101011010110111100011011000001000111111000000011101001100000100101001010111010010101101010111100011111011000110010111110100000010000100010000010110011000100000010010010001000010110001101111000001010011001100110100011010111001110010010111010011011110111000010000011110000010010110001000100000000011100100110110110110000110000000010010011010100110110101111100101001101110001000110000111010001100111100011110110101000101000010100000101101000010011110001101101001101111001100110011100000001101100010001011111111001011010111010001000110111110000110010000101100010110100101101000100100010101000101010101000100100010000001101001110111110100111001100111100011100110100000110111011010010011101010011101101011100011101101100000111011100011101010010001110101000111000001101001010010110101111010010001010110101001010110110111001011010000011111100111110100010011110101110111101100110110110110001001110000010001010101110001100010011011000101000000110110011011001100000010111101111000010010101001000010100000110100110001010101100011110111101110110000100101000101010000101011011001110101111101001111010011010010100011011100101010011101111100011000100000010101111111110000010010110010000010001010010101011001011001100010001001011000011010010010010001001110111010110000000001010110110000101100011010001101011001000111010001110000111001011000010111001010100010001000011100011101110100000010010001010101001101011010100110000001101001001111110111100100101000000011000001001001111111001100000001010001011000101000010100011101010000100111101101011000001000011010011000100011011011111010011111111001010110110000011100010000110011110110101000011010011110110011100010111110111111001110111011110011111001110110000100101001101101000001000110011111100101110000110001011001001101100010010100100100000011111001100110111100111000101111000110000010111010011101110101111111100001100110001001011000011011110010000011010101011010001000101000000100110111010001101110000001100011110110000100011111100101000011110000000011110111011001001000011100110011001100111111101001001011011011010100100011011100000100110110100001101111110101100000001000011100111011010110001000010010000000100011100010100101100101100001101010110100100100111011001000111110110011000100100000010101010000100110011010011111110101001001100110001000101010011000101011001110110101011010000111101100101110101101011001011111011000000000111100000111101110100001011001110111010110000011011001010101100011011110000101011010010011100010100001110011100101011010011100010101111100001100111111001011100011001101110101001101001101100110000000101100101001110110100010001111010010100001111111100001111010001111000000111001111010111100101010110010111001001000110110011100000110110110101100001010000100011000001001100101011111101010000100001111111110100101011100000000001111010010010011100000000110011111011000101101000111100010000111100100011000100001100110111100110010010110100001111000100111111011111100111110010111001101110100011001111001100011000110000111001000001000111000001001000111001110110010001010110111101111010100011000011100011000111001111011100010000000011101100101100000101000010010011111100001111001--------------------- +0100011101100100000010001011111111101110100000010111001000000111110000010001100000100011011000101001101101010111001110000000001001110010000101000110010111100011011001101110110001000001100001001101010011010001101001111000101010111000000110111110000011010100001001001001101000011111100100010000110101101100011110011110110000101110101010000110110000000010010101010001010101011011111000111100100000110100110110110011011010011101001110100100110110111100110011100001011100111101110101001110111100101000111000000110111111000011101000000001101101010111000100000101010111010010001101101100101001000110010101100110001001000110101100110110010111010000101111101101110111010011001000111110001111011010001010011111000100101111101001101001010010101101111001111100011011101010010111101011001111111100100011111011001110111101010101111111110010101111101011111000110100101111001000111100001100101100011110101101000110111000000111100100111101010011111110111101111010101001101101000100100010011100000100001011111011011100000100011001001100110011000011000010010000001011010110011010110101101000001000011001010100010010100100101111111010010101001001110010011110101010000001100000011110000100101101111011010001111011011000010001001110000011110101010000101101010000010000111001011111111110110001011011111011001011011100100111101110010100000101111000001001101111001111000001011010100111010111011000001010100001100000010100010001000110001010111101110011100110111111101110101000111001001010010101101101101001001101000100101000010101000100100011010100010101000000110100011001100101011001101010000111111111110010110011001001010000001001101000011010110111001110110100011001100110011000011101101000010011101011110110011101000001111011011100110101001010010100111010000111000110010110010000001000111111110100110001100010011010000110110011010111111010000100000001111001100000011111110111000100111111101011100101011110010001000101000100110000110110011000111001000101000100010101100110110101111100010011100011100001010110010011110101011101101101001011110001010110010000001100001100011100110010001100010010110101100011111010010000001000011111101010000000110001010100001100010010100010111101100011001100101111101101001010001101100110111001011110010110111011010000001110000111111100100000111100011110000000100011010000001100100000000000001001110000011100010011101001000001101000010111110000011110000110010100010110111111101111100111111001110000101110110111001000001100000101000100010101011010010100011110100110000101001101111100001111111100010010110011100001100100000110001001100010101010111100110001011101000101000101001100110110110110000101101101000000101110010110010001001000011110101000001100111011001110001100100010001011001111101011111110000000001000110111100001011001000011010101000101100111110001010100111110000001010101000111000100110110011110001100011111101001000001100010101110000000111100011000111100110010101111010001011011101010001110010111111011000101000111001001110001111000101110011101010011101101111100011111010000011110000101110010001000101101010101001001000010110001000000100101110001100011011011111010001111111000110110000101111010000101011010100100101101000101011110110000001010100000111110010111111010110011000101110010101101111101100100111000101010101001011011000011010101001101111010011010101110110010111111111011001001100110000001101111111101011010100000010111111000111011101001000111101100000100100000110000001000010101001111010011011000010110000001001110011011010100100100011001000001000100000111100011000001110--------------------- +1100110000000110011101001101000110110011110001011111110001001111101111011000100011111011001010111000101111101010011110011100000101011001100111001000111010111111110111000100011111111011101011100100010110110000111001110000101011001100110101001101111110111000011000101011000101111111111000001000110101101000011110110011001111011101011000010100111110111001010001111011111010101001100011000011000101111000001000000010001111100001010010000000011011111011111011111011101101101000111010100011111011001111101110010110011011111110110110011010110100100111011001100101111110001110111011011110100010000010101111101000110000101110111010111111100000110001111011001000100100110001000000110100011011100110010011011000110010101001110111110001111011111010000111010101110100001110000011000001000100011010001110010110010110010110101000110111001101011001100001100001010101100000000010110110100111011111111001001011111000101011111100110000100100110000100011000001000010111111000110000010000011010111111000100111010000000010100001011111111011111001000001101110001001111010010001100110110011101110110000101010000010101111111100000011111111111011010011011001111010000010001111011011000111101000011010101010001110001010100001101100010111101101000011011100100011010010011010110110111100010001011010011001010011011110010110101110110010010110100011101100001000000000001101110110001011000000111100000111111000111100100111001011111011010101001100010110100110011010101110101011101101010100011011101001100011011000110110110111011110110101000011011011100010000111100000001111001101010000000100011010101100011000000110010110010110001001010010100010101110000001101101101100010101111001011000011101101100000100001011001010001111000000111011010011110111101101101111101011110000000000100000011110011000101111001011100111101111101010101000110011100000011000001000011100010001010011100010000101100111011100101110111101011010111010111100001000011111000100011001011111110110010111000100011000001100100110000010100001000111100100101011111010010000000011100011011110001111111010001001000001001010101000111001111001000010010011101001101111101110001101011010100101111101000000011101011011001110100101000100111101110000110111110001001110110011001011010001010111100001001101000001001100101011100011000101000000111110000001001010100100100010010111010110001111011011011001001011001011011111100011010111101101011011011010100111101110010001001000101100000001000110011111100010100101101101101001111000001101000110000101000010111001100010001111000111000010000110100110101011000110001001101111010100001100110110001100000001010100100111000000100000010011010010101011011001101001001110110100001100110011011111001011101010011001101110000111001100001000010001101101101101100100011001011011111001001111000111101001000011001111000011100100100110001111010011000011010110000100110101000111100011000101101111010110010011010100011001011011000111001100110010101101001000011000101010000010110011111101101001001010101010101110001110110011110111111011010001100101111001001110011001010000010011000111010010001011110111010001110010100111000111101110101000000001100001110110001001001101011000110100010101111000110011100101000110000110010000111100101100010110110001100000101101001100110101110111110000111111101101010000010000000111011100110101101000101101001111000110100010101110000111000111001110111101110111100001000101001011001000110010001101011011111110100100101010100100100001110110001001101111010100111101011111001000011011011111011010001011100010001010100011011011010--------------------- +0010011101111100101011111000100110011111000111111100110000001011010011010001011001010110111001100000111011000000000100011111100110010101111100010111001000111110011111011100001111011100111000010101111010010010110110100001010010001110100010000011111101100011110010100100011111111100010111011100111011110011001001011000100110000101011110100011101111000111101100010100100100100010001101100110011011111100100101100000011111111101001101100111101110111101000011010111010001110001111001000011100111110100111100110111111110000100110100110101011101100110101011001010011001111011001101011010101110100001101011110010001110110010000100000000101101000101100101110100010110110001000110101001100110000100101001000000001001001110011100101000111100110011011011000001000010000110011100001000011110010001110010010001000100110110001011111110011001100110111001101111011000000011101010111111111101100010010110101100110101101011111100001111101110101110001111011100011010001011011001110011101011100000010111111001111111101111010101101010011010111011000010000100111011011101100010111100111001011100100001010101010001000100110101111101111111111111011010011011101010001001001101010111001110100010100110110011001011101110010101100110001000010001101101100110100010000100000100110101010100001000100001001100100001111001110001110111001100010000111110100010000100101101100100110011111001101100101011111110110111111000110100010001010010111110110110011101010000011001010000001111001101100110000011100111000010011011001011001110000000111001100010100110101100101011110000011000011001111001011101010011010110101110101100111111100011001110110100000000010011111010110001010001101001011000111101110011101000111000110111010010101011110000111101100111100101000001101110001111001111110110001100101010001011100110010011101000111001111000101011011001110010101111001110001100100001011011101010110100001001100010000011110000000111101101101110010101010010010111000001000111010101101011101101010001000110111100110000001100111001101110101001110110011100100011100111010001101010100101000000011011110110110000101110001000101010001111001001101100101101011001010111011111111110000110001010110100111101101001011110111001011110000000011100010010101110001100101111001111010111111010000011001000011110100111010010000111011110001100111000110011100101101101110000111100110101001001011101010111100100011111000010110000000001000110101110010010111100000010101110001111001001110000011111100101001110000100011010111101010110000010101100101000110000000000011001111001011111000011100010110111010100010111001010011010001010010010011100001000000001110001110001011000001011111101111101100110010100000110110101100001001100001110101001010000010100110010111100001010100000111101110101010010101001010101010100000011001100010010111011110101111111011001100111100000110011000000110011000000011110001100101000001010101111010101011111100111101010111110001110001110000100000001101100000000001011110100110001010010010110100110101111010000100100111101010101001011100110111010011010110100010000011111011100010101011100001011101110111010010101111111010101010000011101011110010110001000001000111100011110000111010100010111011110011111011001100111001011101111001001000001000100101000000011101011110111110110010000110011001010011110011101010101111011110111111010001010110000101000001011101101110011011010010110011111111111000000100111010001001111111111110110101111011010110111100010111011110100011000110001001110110110010100101010110100111111100101110011000011010011010011101101001100100--------------------- +1000101101101000010011011000110100101101111011001110101011010111010001111000000101000000001010101010010011110000110000011001011000011001100111100101101110001111010110010010010001101001100010110110110100110011010110100100000011001110110010001011110000011011011110011100010001100001110000001001000010101001010110101001110110111001100011000001111110100100100001000001011011001100110110010011100011101100001100000001101110110101000100011111110110101101101011101010100000101011110101011111111100001110110010000100010000110010111010001010001010011000110001110110110011100101111010110110100110011001000011011101101110000110100111011110000110100100100100011000111110101010000000110111010001000011101111101000101111011010000011101110101100101000100111111110010110111101100010010111100110100001100111001001100111000001011110000001001100110110011100101101111100111000001001010010010100110101111000010111100011100001000001000111111111111101101000101011111111101110000101100111010010010001111010111011010000100000101001011101000000001101011011100110101110000111000101001010110110101101001011100000011000110010100011001101010000111100111011000000000001110010000011100111110110101101010100111100101101000011000011011101011101000000010001100100011100100001010111100001100111010111011010001101110101110101101110100100101101100001000111100000100100001101110101100110100100011010011100111000010100110001111111000001111000101110000000011001011111101010111110000011100000100011111111110101110100111101100101000011111000011010101010001011011100011100010110000111011100010100111101100010100010100000100100010010001110010100111010000011001100100101101110111001011010111000111111100001001000000100100010000100111001101011100011001101010011001000001110111100001110010100011001101111010011001001010001111110001101110100101101000011111001011100011011101110001110011101101011000111111110110010100011111111110011000100010010101001001111011001011000111011111110000110000010111000010101000111010101110101000001100001110100000100011101111010100100101000101000101101111100001000111000100011001110010110110100001010101001010010010000001011001101100100101010010111010110011001010111000100111001000011110010110011101010011001100001010100101011101001110110001010110100011101000000111001010001100111100001110100001011011100001110011011100011110001111110011101011101001110000010010000001100010010100100011000110101010000111011101111100010001111011001111001000100010001001010010010110110001101010010011000000110001010111100110001110000101111100000100011010001110100111000101001010001001110100110000110101111010110000101100011011101011011000110010110100011001100001101000010011100100110000110111110110010010110010101110111001111000001011001110101101001101100101000101111101111111101111111111101001001111110100111011111011001001001111010110101010101100100001101001100010000001101011011010111110101000011011100110101101110010111101110111101101101101110111001001011001010010101110010101111000011100000000101100110101001110101110011110000010101110000011111110010011001100010000000110110010110110011011110011100101111001011110011010000000011011111110111100101100110100110100110011001010101000010011101111010001001100110001111110110001011110101010100001110000110000011101100110110001010010000111001000100011000110001010001011101010101111001101110111100110011110110001011101001010111110111010000001001111001111101101000001001000111100010101111010010011000000111111010010100011010000101011000000111011010000001010111100011100100011100101001001010011--------------------- +1001010001011101001001010000010010100111010101010101101100110111110000111111110110101110011111101010111000011010000011110111111001001000001011001010110110100000001011011111110011111010101001111010111100100110110100101001001101011001111110101101100110111001110010010010111100110000000000101110000001100010011010110111001110111111101000000111110101001001010000010101001010101010101010010101110001100101010011000011000111110000010010010110010011011110010001110011010001100011100001011110101011001010111010101101111110111000100010010101000111001010101001110100011111000000000110101011100101101010100000011010011000001001100101000010101111010001001101101101111111100100001011000010010110100101001000011111111011010111010010110111001010000010101100110000100100100100111101101100110111110101010010011010111100000111111001100111000110111100111110111011100111111001101101111110100010111111010010000101010000001111100010011000100011110111010001011101010010110100101011100010001111001111100001100001001011010100001110111100110000000110101101011011011010010001011011011010010111111001010001101010100011110010111001010111010000011001001110110010110010000001111101110001110011000010110011111110111110010010100010000111111101000010010100011101111011110000000110011101110101101010111111101000000101011000111110011101101111000011111010100111011100011011001100110100101011110000101001011011101111110101010000011000101000010111101111011001100111101111110110110111000001110111111100010110000010000000000010000010110001100011001101101000010001100111111001100011111111111000101111000011111110000000100101010010101000101110011011011000011100011011001111100110010001100101101000000011011010100100001101100010001110000111111111001010101001111000100101000110000001011000010111111110011011101000001100011000100011010101110000011010010100010010110100101010100110110000001101000101111000000010000000100000101001011011101001100000011110010101110011110010011011011100010111000110001011110101110011111010111111011111001000111101011100101001001010000100111001001001001000101100010101110000001111001111111100100001000001111111010100011000101111111010010000011010111000001101010000110110101001001110110110000111000101011011110000000010010011100001101011101010001011100010001001010100011001110111111110100100000011110111101010010111111000110110011010100010110100100101011010101100110001110010111101110011000001000001000000111010100111010000000101101000001110110010100001101111001110110011111101110011000110110011001010001101010110000011101010111101100100111101100100011110011000011110100101010011010011000101001010000011001011000000100110111100011101101101010011110100001011000000011011010010111001111111011000110110101001110101000111110011001111000100100101100111001000001110101011011000100111100111000111011011111101111001000100100000011100100100001001100100010010000110001101001000110001110010001010111010000101110110111001101000111111010011011110010000111010100011010101000011011100101010000001010111000000111001000110110001100000001010110000001001111011001111011001011111010101111101010001000010001101100100110101111111000011000001010101011000010011010001111011010110111010011010011110010010101101011111001011011000100000101101111011010000111001111110011101001101101011100101011010000111000110100000001000010101010111010111100001011001101000001000110100110000111001100111001101000111100111010001000011100011101011100101101111011001010100111100011111110101101010110010000101000010111100000010000010110100000011110100101100100101100--------------------- +1010010101000000111111101110010111011111011001101110011100110011101000111110011010011011011101001111011010011010111110000000010000010011000110001111000001011100011100000110111000001100010010001011011111110101001110101000011100101100011011001100010010001001110100001001111111011010101110000010101000001010010010001101000110000110010011110011101011100110100101010101110101110101010001101100100110110101100001010100100010110111110111111011001000011110100110111000100110110010011100010110001001100000001101001011111000100000111010110000110100101010001111110010000111011001100100011110110011000100111111111011100001101010111011101001001110100100001100001011001110001111001111010110000001011100101101000111100011011101111000101000011010000001000001011101000100011100111100010100011111001100000111111100010010000001001110010101010101001000111000100111111010110100110101001111010000110011111110000001000110001111110010011010100010111100111110101110000100000011101100110101010000100011101101011001100011111010110011100001101111010101100110101011111010010011110100010100100011001101011011011001010000000111001110110011010100001000100100001010010010110010111000110001111001110100010110110110011101001010001101111110110110100110000101011000101101011110111000011010011111100011111111100010111101110101011100110000010000000010000110111101101000010100000001001111011000001101110011011010111101100110001011010011101110100101101111000101110001100101111000010010010010000101011010100101110100111010101001010000110001010000000011000111110110001101010010000111010001000000011010010110100000001000101010010110101111110100001001011000101000101011000001101000010101100001011000100000110010111100111000000011010000011110010100100110000111011010001011001001010100000101100010000001110010101111110010101010010110111011110101100100100001100011110100000110100010110011011011110010000011111011010010101111000101110100000110001000000001000110000001111011110100010001011010111100010111010010001010110000101011011111001000101111101000100010010010110010000100110001000101011001110100010110010010001111110010111001011111010011011111011000111101100100110111010101110110111101100111110000001000100001000100010010110001111010101000110001101101111000010011011000000110101000010001110100010101011100111111000011101101000101000011001100111110100010011011001010001100101010000101001010000110100011010001010101001001100011001111100001011010101010001011111101010100010011110100101010110111111000001110110011111110101111111011111111001010011010111110010111001011110011111001111110100110101100101001000010110010110000111011101010011001111100111100000111101001110110111010111111010110001000000010101010001011110010100001011010110101010011101010101100101101010000100011110000100011110011111110001010100010101010001000101100001000101001110111101101111000001010101000111111011101101101000011011001000110111111110001010100011110011100101000101101000010001000001011100110111000001000100010100001010110110110011000100111011100010010111001110010100011001101000000011000000111101001001110011111010011000110010100011001000000111000101100001010101011101111100010001001111110011111001101101110001110001010001111100000001110011101110000100000100000011000001111111010011001010110000000000101100111011011101001001111001001111110000000111011111100010110011110001000110110111101110110011110010011100010110010110001111101011000011100001001100010110110110101000111000010101001111000100011100010111111011100000011011111111001101100001101010100101011011111110001010--------------------- +1111011100000100000100101100100100000101000000000010110100001100111000001010101010001011101101101011010001110010111001101010111010000010100101100111111001010110101010110001100011110010110011110001110101001110100100010001010100011100000000100000111001101001110001110001111001001001001101100001111001110110011011100111100000000010101010110101000000001000000010110011100010011111011101011111110111100100000100010100011011000010100111000000101000100111001111100001011111100010010000111100000010011000110100101001110101010100111111111010001110110000000110011101101111111011011011111111110101011111111111111010000100111111011101000110001100111100010010111010001100111010011001000100101100000111100100110000110011110000010000111101111000011101110100000111111010000101100100001100101100000010110011100100101101001011011010001110111000111000111111011110011100011111101111011110100000001000011100100011100101001000110101111100101110000011101001011110011101101010111100000000000100111011011000011111110110101110111111110001101011001101101111111001000110001001011110010000000001111110101110100011011010001001100001111000010101111011010111101000110101000100110100101011001110101000000100001101100010010001010010111001000000100100001101001110010001010001011001011010011000100001000100100111011101100100100011111101011111011110011011000110011010101110011100010111110010010011111010001010111110110000100001001111100010101100010101111000001110000110111000110010000000010100001101010101001000001111110011010010000000111101000100001100101001100100000000100001110100110011000111101010010000110011100100111011101101110111010110110000011101010101100101110000111110000010110000000101100110100100101100011110110101011010100001010010011111111111001100111110000001110011011101000000001011100110111000000000101110001111100111001011000000111100110001110111010101110010011011010111101101101100000101101000000111100011100001100010100001101010110010110100000101011010011111100110011111011100100011001001000101011011110001100100111011000100110010111111110000010111000100000011110010011010110100110001101110001110000000010001001101000101101101100001110001001010101011111111001001110100100101110010000010100111111111111011011110101011110101011001001100100111111101111100111111101101011100110001010001001011010111010100110100001011001010110011100010100010010011001100011101110101101001011111011001111110010010000010100100011110101011101111001100100101011000111001110011011100111101000010110001110001000001101111011111001110001100010111111110101110100100011011011111000111100011110110110010010010010101010001100110101111111110000101111111100111100011110111011001000000101010010010110011010101001101010111110011111101011001100010101111010010011101000000000110000001101010110011100101000000101110011010101001011111101110100110011100011101110100110000101001000100111101000010001100010111110111011110001000101010011001010100111011001111100100001110000010001101010001110110101001001010111011010001011111010010011100100001000100001000111000010001001100100001100111001101111100101111001111110000101110111100111111000010111010000101011100110001001110000011000001011011000101101001100110100010100011000010110101001001001010101011111011000010100011110101110111101100111010011000000111011010010110010100000111000101000100001000111110110010000100010101010100110001000111110010011111101010111111011000110001000101100000010000110000001001100100000011111000000001111111000011001010101000010010111000011100001011100101010001100010001111110100100100000--------------------- +ls160cwds +11100000011010110011001000001010000101100010000001111010101011110011110001000010100100111110000011001010001111111100011100100110111000010110000100100100011100001100111100110101000111100001110000000100011111000011101011101110011110000010101011011000000011110000111100010100111110100100011110111011110110100100010110000001000101111010001000101101110000110001101000100101001010101011111101001001110101001110001011011011001001011001011110111011101111000111101111100101100100110110011101001000101110000111100100001111001011111010101010110011101111111110010100010100100010111001001001110011011011110110001100001100010101000000101110101000001001111010111000101001000111110010110010101000101111100000000101101001110111000101101110111100110000001010001010000000110011010011110110010110101100001000011000000111000011111110110100111001100010111100101100001100000100011100001000101010010010100101100000110110000101001011100010100001000011001001110010011011101101111010111100111001001011111101110111011111010110000101111010111111111110010010111001100110110001000010011111111100111011000010101010000100001101000110001111010000100110101111111001101000001010111010110000010110111001111001111110101010110000100101010010011110011101000010100110110001110000010111000011110011010101110010001000111000111011001110101001011110011111011111101111111010111010101011110010011100011110001101011000010101010111111010000001100111110100101010000001111101100101110010011010110001010111100010010100111111110011111000101110000111110011100010111001000110010100010110111010110000000101011110001111011001100010010101001010100100000010100110100110001100101111110011101101010101011011010110011000001011010111101011101100100100110001110011111100000101101011001111001000100010010001110101111001101111111100001100000001111101011101110011010101110010010010010111100011111000001100100101011000111110000110110110100010100100101001110011011100101101011000110110001010100100000000100111100010101101110001110011010011100100001000101110111010111110001111101000010000011010111100011010000111101100010011111011011111011101110010111100101011000010011100011011110111101110011000010111101100101011000010101100000101110000001010000010011001101111011010100011100101110000101011011101011011000100000110000110111110001111010111011010001101111110101010011010001101100011011010010110100000010101110011001111101111011101010100100001000101001111001101001000011011111011101101000110111110111001100110011111110100111101100010000000110000001111001101110110101001000110111001001100101110010111010001100001010001111011000010111100010001111001100111010011000000101010110010001110111010010111101101001011011011111001001110100100111101111101100111101000110111111100100110100111000001100100110000110010010001010111011011110001111001110100110111011001000111101101110000111010011000001010111110010101000110011100001100011010010100001010101000000100011110001000100011101001101010100000110111110010101100110001000100000001110001111010100100110011010100110111101111010111100010001101000000001111010110101110010100001100011000000111010101110100100100110101101101101000011011100011110100110011011101000110001011011101111111001001101110101001100100111101000---------------------1111001110010101001100101101001101010100100011001011000101100001110111111011111010010000001111000100100101101101010001100110011111001001111010111111000110111101110101110000000101001011111000001011110010101100011100100101000010100011111001001011000000100000001111111100100100011001010100010001001010111111110001101100111001011111010011101110010100011101000010011101000100111100101110011000101111100100111011001010100100101001010111001010000001101111110000100110111001010100111110011001100110000100110110100000100000111001011010100111111110100101111000000110111110011001100100110110000100110011001101010100011111101001100001001011000000111011010111100010111001011001111101001001010101100001011010111101000100010111011000101010010101010111000111100000101110000101110101000000010111010110001100011001011011001110011001100111011011100111011111000101011100000111110000111101100110001011101000111001000001010011101110101110010011011001001101000100110110100110000000001000111010111100111101110001011010100110111001111100010011000001000101000001101000111001000110000001101000111001100110100001111100111011000001110100011001000000101011101011000111011000100001010110101101000010000111000110100010110011011111110001010110111100000111110100001111111111001011001100111000111001110101010001010001111100111011110110010011111000111001011111101101000001111101101011010110100011000110101000010100001001011100101110101111101101000010111110001111001100100001010001000010010000010101110001111010001001011110011001010100100101111110110001101000010000110000100011110010001001110000110101011010001110110010000100000110011111011001100101110100000111110010111011011110011000011100100011100100000001001101001010011110101001101101011110000111010010001011101111111010010110110001101110000010101110011100100010000001010000101010011111011100011111100011101110100011011000011011001111100001001010100111001101001011011010001101101101100010001001011101111000000110011111101110100010001100010110000100111010110101000101100001111101100100010110001000011110001111111000000100010000010010111010011011000100101001101000001110100110001111011001110001000110011111010010011000000010001111101011010011110110111000110100100001100101110010000000110010001010101111000000011110111000100100001000011011100001010100011011111010000000000101011100100111110000010011111110111111100000000010100100111111011110100100010101100010001000111110111100111000111011011001001101111000111110011110001111111100010000101101111010111001111111101011100100001110001110001101110011111000110001011100100001111100010101110100001011111011110110011001010001101101000101101010000010000000100111110000101110010011110001010110101010100110010011000000000100010111000111110011101110110110111010011010010100000001110010011101000001101010110011100000101111111011110001011001000111110000001101100011111010110101000100010101011101110010010100000110110111111111100001001110010011100010010010000111100011011001001000010001101010110101111010111010110101100100100000110010111110100000001110001110100001011010111001011011111101011110111001101010110100111100100101010001110011100010010001100100000010111111001010000100011001010111000001110101100111100111011110000110000101101010100100011010101010101100000000111001000011111100000001000111010001010010101110000000111011101011000001010110101100000111010110000000111111111110111100010011000001101001100111010111101110010100011101101101000110111101110110011011011000010111111110111111011110100101010001011010100111000111001100000110100011110100101111000101010100110111000101011111011100101100011011010111010010101000000100010000101001111011100010000110111100111010110100010000111001000000100010111010101101011111101100101100011111100011010000000001011000101101100111110011010110011010101110101011111100101010010110101011010011010011111100111001000111110110000010001011011101000011101010100101001011010010001100000111110111000101111100010000111101100100011110101001011111001110101000011101011110101001100110101110101110100000001100011101001010101011001011000111111011001010010001011011111001011010001110011101100010101111101001001101111000011000100001001000011010001101000011000100010100011001110011000001000100000001001011010001010111101111000001101000100000011011000001111000011101101100011010111001101011101000110000100110011111010111111101001001011001100010100001011010011110000100010001010001101100010101110101001111011010010001110000100110011110001100000011001000000101111011000001101010001111111110011000000011000010100001110101110111111011110001011001011111001011111011010110000011000110101110001101101000001011001000100001101110110011111001001111010101001110000000010111001001111011000001100001010000111011000111011001100100100010010110111000111011110101111011011000111110000110110101000100110101001011101000101011110111100011001011101100001001001110010010110111000101100011001111011011011100010000111000101010100100110010001011000110100011100010010001101110000010001101001110111100110000100011010111001001100010111110101000100110111101100001100110010000001110110000101011000001000001010000100010011111101000110000110100110110110110011101100010011110001111001010110111101110110110100010010100111110110110101101110010101011000011111101100111011011100010110011011001110100101001101010111001101100000001100111010000000101011111011100011111000100001010101010100111011010011101100010001011110110100100110111010101100111000110010100010111011011101101100100011110011100010010110100100001110111011111000101001111010000011011010001101110000001111100000010010101100011011110001010000000001100001000001110100111110110101110000010000111010010101010011101011110100001100101101100001001101000001011001011010101011111100100000010010011111000110100001100011111011010011100010001101110110011110000101101000101100001011101100100110110001101001000100000101100111010111011100011111000100110011000000111100111011011111000100111011011100101000011111000001001101010000001100100000001010111011111111011010001110010010010011010011111001000010000110000010010011111101100111111110101100101110010000111110011110010110001011100001001101000000111001110011101001110100110001110011010101110100011001111110001100011011001110000001001010011000011001000100001001000010001100011011110111101110001010100011010111000110001010010110101111110100110001100000111000001100101011100110000110101110000110110011010011110101101011010110001010011101001011110101101110100100011001101000100010101101111100100000101110011110101011100100000100100100001010110000100111101001101111111000001111010100000111010111100011100010100111110110011110100011110010001000010011010001000111101001001111110101101100110110111010110000011100011010011001101000010110101101010111101000010101101101000111010010011111010000010010011101111001011001111010000010101110100101111101010110011011111110101100101111101100110101000000111110010010101001110001110011111010101011100111101101010001111000111001000101001010001100001101110000010110011101000101001000000010110001011110100111001100000110010010011101010111100101101000101100101000110110110001000001001110000011001010010000100100011111000111010000111100010000111111100111011000000100011010001110010101000110001100110110010111110110111111000101010010100001011001000110101000011110011001100011011011100101111000110001111100110000101000100010001011111000100010111111110101101010111111101000010011100101111000101111101110010 +11110001101111001011001111001110000111100011100111000010000100010101111000101101101100000101110010010111110111010110000000010010111101000000101110110001111011010101100100011110001100000100010010101001111010000010100010010101001101000011100111011101110001010010111010000001100111110110111111100001010110101010001100010000001001111010110110101011000001111101011110011101111010011111101101101011011010000010010001100001111100010000111100001111010110001111110110100101011110000100111010110001011100110011011011101100000101011101011000000011100111001100111110000010110011110010010111011010000100100110010001101100010100111100010010111011100001101110001011000110101100011011001000000010010101011000011110011110011111111111101100111001010001111101101110001111000010110111100010000101010111001011000100100111111110111100000111111101000101111111110111010001101010110111001000101010001110000011000010010010000110011011011111011100010000100001101011001101011010010101101000011010001000111111000011001110000011010001111100101100011101000100010000000100011010101000111101101101101011110110110011000110001001111100010100100110100111100110000010000010101111110001011010101101000010001110000000101000001101101101110001111001000000111001011101010111001110000101100011001011001011111001100100011010100111110000101110110101001100000111000101000101001001100110110011101111001110101111110001111110100010100011100101101011001001100010111011101111000101011100000011111110100011110011110011101011110000010001000110001110110011111010111000011001010011011111010100000100110010011011000110001010110001101010101000011100101100011011111001001011110110010100011000111000101111000111011011000100010111010101101101111110111001010011110010110000100111110110010001010111000000011111110011001110101100011100011101100010010110101001100110100010100001001001000110101011010000111110110010000111101001111110010100000110100001010101100110101100111001011101100110111111101101111011110001111101001010111101111011100101010111101011010111010010110111011011010101101011010000010001001001011110101110101111111110010011000110100000101100100101000010101110111011000000011010010101000010010011111000011000001110001001110010111101010111010110001100001001100110000100100011001110011010111111001001110100011001010001010010000101100011010010100111100011001011011011111110000110011111010001110001111010000011000001001111100001011000111001000101000010110010011101011111010100001100001011110100110000000100000100110001111011001000101100110100101001100011001000100101010001110111100000110110000001001011110000011110001101111010001000001100101011110000100001101011111100011001100001011101101100001110001110100100000101001000011000100000001111001001100110001111000110010011100001101111111010011101101110001100010000100011100011000110101110001000110000111101000100100001010101000110110100011110100110010101011011111000100101001110000010011110110010100001100111001101000100101000111101011001000000110011000100000100100110011111000111100100100010011011100101001101110001000111101010101111011001100010110111101100010100110101101001101101011001111101100111011101000110011110010011001000100110010000001011101101100101011011010110010000011000111---------------------1000111001101111001110100001111010011011011110101101010101110011111101111000011111000011000111011011011100001100100101000110100111000110010100010011000011010111000110010010010100110001101101011101110000010111010100101010111101101101010011101000111010000001101001110110010101100000100010011001000111111010010001110111110100010101100100011010011111001101000000001110111000011011100000011011011010000100011000101010000111010001011001001010010101100100001001111001111110110001001011001101010010010000001111010001100101110000010000001010000000001110011101101000110111111001111000111010100000001101010011100011110011110000111101011110010010111011011110111010101010110101111010000110011001011011100000001011011010010100101001001011001110010010011001100111101010001001100101010001100010110101101100101100010100011111111111100111000111000011101000010111011010100101000001111110001111010001101001110001101110110111110101111101010110001101111001001011000011101011001011000101000000010000000010101100001000110000111011101100111011101000010010001111100001100011101111010000000101110001101101101001010010111001001111010100000000101101100100010010011110001111000111101011111001001111001001010100000111000110011101100100010110100000110010000100011110001111101011111111101000000001000000001011110010001011001111100011110011111100011100111000111001100100001001100101101010000000111001011011111011011111101111100001010001100001110110110010101111000000001111110111001010011100100101001000111010111000000011100000100011100111110000100100011011101011101011101001100110000111111000011010011001100110000101010000010100000100100001110101010001011001011110111111100110001100011010011011011001001101000110100101010010010111000011000010100000100111011100111000110110000001000000101001011001110011111001010100010111111001010110101101111110101000110101000011011011001010110011111010011011011100010000100011001000010010010000000000010110111011111011010001101001000110110100101100111101110001001100010010101010110011110000000000001001001000000110100010010011001100001001000110110010011011010010010110000100011010011010100010000111000110010100100010001001101100111111110100000101010010110001011100000100000001000110010100010101001111000101001011010100101101111100000001101111111101011101111010000111100010001110001000110011100001001111001101001001011111011000110001000000010101011101110011101010100011010000010001100010110111111011110010111001100001111011111110011001110110111000010110010111011001000010011000010110011100100100010001101001101101100010011010010001111010111110110101100111011111010101111000100001101001101110110010001001111111010111011110001011100101101101110011101101111101010111000001100110011000111001010110000011110100011001010111100110010111011100000101001100101101100001111001001011110011100001001110011100111010100110111001110001101001110000100010110110101011101000110000011100111100010000010111100010000100110100000101110001111010000100110101011101111011100101110100100011011001100101011101110100111110110010111001000000000010101100000000000100001111111110001010110010001111000010100101111111101010101100111100111001010010010111010000110110110101000111110110111100101101110100110110110101100010000110001101110000011100001101011100111011001111110111000000101000011011011000110001010110110111101101010010101110100011110001010011110111011010011001001100110100010100111001000101011011110101111000111011010110111111000101101100010101111010101100011000101001110110011011100001010000011100101110101111000100110110011111100111110010001101001111101100100110010011000110010000000010001011010001100001001100010001001100010111110011010001110110011100010110100011110111011000001011110100111011101110001110100001101110110101011111110101111111101101101101011101000101111010101010010101111001011111001000000110100111111100101011001000110010101001110001110010110101110100000000011110001001010000111101101000001111011110100001101000110101100110000000110111110001000010111111111011011110101000100011010100001011111101001011000010000011101010101100101101000111011100011011001110110001100010100111100111000111111011010001111100011110000110111010010111110000010011110000101010010101101101101110110100000010011011010110101000000110101111011111011100010111101011111100111011101101101100110101000111101010100110110100000110001010001110100101101010111010110110101101011111100000100100110010011101101110110101000011010000111011100100100110001001101001001101100000000000110001001000101110010100011011010000011101110001011110100001000001101001010011000010001100011100001010000100001001000101111100000111010010100111110100111111111101011010010000101111010101000011100110101010011111100110000000100010110011101101100000110110100111101010100100010110001100011011000011110110000000010001001111110100111110110011110001010000110111101011010000110010111101011111001100110001010111100010111010010111110100100110100011010101110000000100111100110011010110011011011001100111110001100000000000011001011110011101101010110111100110001110001001000110111111100001011111110001000010110110100111010111110101110001110100110101100001001011101110110101010101110101010010110010111011111111100101101001100001110000101101101110000110011001010010000011000010011100010001011111000000101110001101000101000111101111000100000010010000100001010100000010111011000010111000010000111010100010101100101001100101100011111101110100110111010111110001010100001100001001010111001101101110111100010011000011111010101000000110000011000000011110010010011011010000111011001001100001001100000010101101100100101111101110111010000111011110111101010001011011100110100000010001010110010111100011111001000100001011011010100101111001011110011001101101110001100110010011100100011001100000011011000010001001100010110001001101000011010010011110001011111010010011010111010100101010101111001111101000000101010110110010011011000010101000101101011000011011011011101001000011011000100010100001101110101010111001111010011110101100001111100111001111000111100110100100111011110111111011111001111000001011100001100000100010101001101101001100100110001110000111011000101011111110010010001011111101011000010101101101101110011110100000110000100011101011000100001000011000111001101100001010011011000010110010100000110101000001100110000000010110010111001011111000101010101001010010011101011110101111010110111101000110111000000000100110011110111000110011000010100110110111001000011001001010000111101111010000001111000010001110111100010011111001000111101001100101111010101001100010011111000000000111010000010000100100011010110101011001011111100111010001100100001010101001011111111101111101100011101000011111000101010000010111101100000110111000110110110100010001001101101010101011111110001101100010011101000010010111111000000001000011110111100000001010010101000110111110011111001110100011100000011110000010101110101011110110011100101011001100100110011111011100000001010100111101111011110101111011001001000111011110100000111110010010011100100110101100010011011110100000110001100101010000100001000001000001011111011001010000011111000100010101100001010101001100001111001101100110010011111101110100111010000101011110000110111001010000101101100110001100110111001100101110111000011011000100010011011011111000101101001010001100110001100110110110110011111001010011110100101111100101101100011001101001111100011110101010001110110101110010000110011011000011001100110011011101111111 +00010011110011011110000110111001111010110111111011101011010110111100011011000001000111111000000011101001100000100101001010111010010101101010111100011111011000110010111110100000010000100010000010110011000100000010010010001000010110001101111000001010011001100110100011010111001110010010111010011011110111000010000011110000010010110001000100000000011100100110110110110000110000000010010011010100110110101111100101001101110001000110000111010001100111100011110110101000101000010100000101101000010011110001101101001101111001100110011100000001101100010001011111111001011010111010001000110111110000110010000101100010110100101101000100100010101000101010101000100100010000001101001110111110100111001100111100011100110100000110111011010010011101010011101101011100011101101100000111011100011101010010001110101000111000001101001010010110101111010010001010110101001010110110111001011010000011111100111110100010011110101110111101100110110110110001001110000010001010101110001100010011011000101000000110110011011001100000010111101111000010010101001000010100000110100110001010101100011110111101110110000100101000101010000101011011001110101111101001111010011010010100011011100101010011101111100011000100000010101111111110000010010110010000010001010010101011001011001100010001001011000011010010010010001001110111010110000000001010110110000101100011010001101011001000111010001110000111001011000010111001010100010001000011100011101110100000010010001010101001101011010100110000001101001001111110111100100101000000011000001001001111111001100000001010001011000101000010100011101010000100111101101011000001000011010011000100011011011111010011111111001010110110000011100010000110011110110101000011010011110110011100010111110111111001110111011110011111001110110000100101001101101000001000110011111100101110000110001011001001101100010010100100100000011111001100110111100111000101111000110000010111010011101110101111111100001100110001001011000011011110010000011010101011010001000101000000100110111010001101110000001100011110110000100011111100101000011110000000011110111011001001000011100110011001100111111101001001011011011010100100011011100000100110110100001101111110101100000001000011100111011010110001000010010000000100011100010100101100101100001101010110100100100111011001000111110110011000100100000010101010000100110011010011111110101001001100110001000101010011000101011001110110101011010000111101100101110101101011001011111011000000000111100000111101110100001011001110111010110000011011001010101100011011110000101011010010011100010100001110011100101011010011100010101111100001100111111001011100011001101110101001101001101100110000000101100101001110110100010001111010010100001111111100001111010001111000000111001111010111100101010110010111001001000110110011100000110110110101100001010000100011000001001100101011111101010000100001111111110100101011100000000001111010010010011100000000110011111011000101101000111100010000111100100011000100001100110111100110010010110100001111000100111111011111100111110010111001101110100011001111001100011000110000111001000001000111000001001000111001110110010001010110111101111010100011000011100011000111001111011100010000000011101100101100000101000010010011111100001111001---------------------1000011011011011011011000101010000011110101110100000000101000100011100100000101100101111110000001001110001010010000010001011011100110110100011100110101001111110110100011001111111110100110111000010001010101011110110100110101011101010101111010101011110001011100101010111000010000010100111000101011000111101010110010111100101110111011100111001010001000111000110011011101110011100010010011010101100001001111111110110111111010110000101000010011011000101001011001001010111010110011011010111111111001011010111011010001010010000001110010100001111101100001101101011011100011111001011010001001010110001111010001000000000110101110100100101010000011111000101000011100001111100101001101011110001111011010010001011110010100001000001001000000000111011001100110110110101110101100001010110001001001000010011000101000111110000000111010111000110000001000001100001101010000100111001100110110000000000101011011100001110110011110100100111010001101010100100110101001000100000010010101110011110110100011001100000101011011110110110101100001101010110010100100110101110011101000101101111001110100110101011100111000101111100001000101101110100001101100101000000011011011110011000001011001001001011111000100110011110100000000101101001101011101001111100000011000100001011110101101001111011001100110010001000000010110011001101011011001001001101011110110100001111000010110111100001000110100101100011111110001101010100000010100100011001000111100101101000110101111010001010001110100111001111100000101001111111001010000011111001010111111011010111101100010110011010011011000010111101000110011101111011010111100110010010101010100110100101101010010101100010110001110100110011011100101000100111010001001110011010111001000011111010101110111101100001000001110100010010100110000101011000010010000110110101011010001100100010111000010101100100001001011011111111000011011111001101000001101000100100110111000111001110011100011001100001101001100010011010100111111101001011110100001000000000011011100000110000001000010100001111000111011110100111111111110111100001001000101110110100110010111000001011111010101010110001001010101000100011100100011010110110011000011101110101000011110110100011101000100111001010011000001010011101011101011000010101001001000100000000000100101100011010100101100011001100010000000110100100011001101110100111000010101101000000010101100111100010110001000110001111011010001101011011011111101011101101100101000011001100001011101000011110001011110100111111001001010100001101100110001001101010100101000110110110001101011000001101111010111001100101111000000000010011111010011010101000010011000001001110000101011000001100000110111000001010111101111101111110011011110110100110101111101001100000000011010101011011010001100000110000101110101010010010001010110001010101110011100110001000000011100001101010001001010110010001111101101011011010111001101000100011111010001011111111010110001000010101111010101001001001000110000101111101110001111101100001110100001010110111111100010011000011110110001110000001100101101000000101010010000011100000001011110100110111010100110110001100000110001010100110101101001010110111101111001011110001110110100010110001011111010111101100001010001101100010000101010011101111111100011010011111001100001000100110011010101101110111100110111110101101100110001101101110101010000101100011011001111001100001001010101111010010110000100111100110000000100110111110101101000100110100001110110100101100100001111011011111001111100011011000011111001000101111011010100111001010010101101100001100010000001111111000100010010011111110010000010101110111110100000001101100101000010100101011011111011001010010000101001000101101111101100001011000100000110100100010001111010001110111000111101110110110101101110001011101011101111011111001001000110011101101001010001000010000110010010101010001010100001000101011001100111010111110001100011011000101011000110001110001010000101010111010111000101111001001010110010010001100101010111101100100100110010110111001000101011000100011101001011100011000111110101111001100001101110100101011110010101001100100110100110101101110010110110011000000111100101110001001000010000111011101011110100100000000010001101010010000101111001001100101100110011010101111100010101110011011100010111000100001000100101110111000101100101101010101000110111100011101101100110101100100111111100011010011100111110111010000111011101100001000101000100011100100000111010010010011011101000111011000011001101000000001101000101110001001101111000011000100001101010000111101111110011000001011011001110001101000101101011101011000011001011000101010101011101010110011011110111011111011010111110100010001110011100001000110101001010110000110010001001001101110110001010111101011111000010110010111101100110010011000001001101101101101101101110110101101100011100110001000111000000001011010110110100101101110010001100000011001010101010011111111011011101000101100011010011111000111001110011011110111100101000000011111001000010000011010111001100111000000000100100101101101111100011111000000110110110100010000000100010110011000110010110110100111011101001100101101000000100011010101110111010010111100101111110011000010101000101010000001101101111101010101110000111011010001000100011011100111000110001100010011010100011000001110110101101100000110111011000011001100000111011101111000000010100001100111110000010000111011000101101011110000101011001001101101001001010010110100011010111010111110110010100100000001100110100001110001010000100000100101111000110001001000010000011011010101111111010011010001000110111101011010010011001100111000001001010000011101111100000011001100101100000101011101001110111010011010110100011010001101111110011100101000011001100010010111111111000101000001101010000001011100000010101101010010011111001001100101000111011011000110110100011011100011001100000110000100101101111011000101010001110110011000000010111110100011001010100110111011101100000111100001101001000101011101110111100001111100010110000111110001001011010010100010111101110110110110101001111110010000011101001010000101001110011101100001110010011001001101111110010111100001110011000000011100111000010111010010000000100100001001101001010011010000010111000110110000010101000011010010100011001101001001111100101011100101001100001001001010011001111000100111011111111101000010000100001011100100000001110000100100010100000111111101011010001111110101110111111011110011001101001110011010110110101101110001111001101010100110011001110110000010101000110010011110001110110110011010100100000011000110011111100100110100111000011110000011101011011100111011111101000100100011111100100001001011101100000110001010010010010001010010011010111011101110101110100101011011111001100011010011110110100000101100110000111101101101111011000110111001000001000010010000011100110111100001010100110100110101001100110010110110000010101101110010000011100010001110111101101010001111011001100100100101000010000001011101110110000111101010111100000010011001001101010001011110111011011011100001010101111100001000110111011011100011100001010001111100011101100111010111111100111100010011101101010101111101001010110100001111011001011010111001111000100101111110111011001111001111000100100110000010010111011111000101010010010011010011010100100010100000100101111001100000111001101100110111100111110110011111000110110111110011110110101011111110010111100110101000101100011101010000011000000001101100010010111001101001010111001100011110011111101101101100111101010000110111 +00101110101010000110110000000010010101010001010101011011111000111100100000110100110110110011011010011101001110100100110110111100110011100001011100111101110101001110111100101000111000000110111111000011101000000001101101010111000100000101010111010010001101101100101001000110010101100110001001000110101100110110010111010000101111101101110111010011001000111110001111011010001010011111000100101111101001101001010010101101111001111100011011101010010111101011001111111100100011111011001110111101010101111111110010101111101011111000110100101111001000111100001100101100011110101101000110111000000111100100111101010011111110111101111010101001101101000100100010011100000100001011111011011100000100011001001100110011000011000010010000001011010110011010110101101000001000011001010100010010100100101111111010010101001001110010011110101010000001100000011110000100101101111011010001111011011000010001001110000011110101010000101101010000010000111001011111111110110001011011111011001011011100100111101110010100000101111000001001101111001111000001011010100111010111011000001010100001100000010100010001000110001010111101110011100110111111101110101000111001001010010101101101101001001101000100101000010101000100100011010100010101000000110100011001100101011001101010000111111111110010110011001001010000001001101000011010110111001110110100011001100110011000011101101000010011101011110110011101000001111011011100110101001010010100111010000111000110010110010000001000111111110100110001100010011010000110110011010111111010000100000001111001100000011111110111000100111111101011100101011110010001000101000100110000110110011000111001000101000100010101100110110101111100010011100011100001010110010011110101011101101101001011110001010110010000001100001100011100110010001100010010110101100011111010010000001000011111101010000000110001010100001100010010100010111101100011001100101111101101001010001101100110111001011110010110111011010000001110000111111100100000111100011110000000100011010000001100100000000000001001110000011100010011101001000001101000010111110000011110000110010100010110111111101111100111111001110000101110110111001000001100000101000100010101011010010100011110100110000101001101111100001111111100010010110011100001100100000110001001100010101010111100110001011101000101000101001100110110110110000101101101000000101110010110010001001000011110101000001100111011001110001100100010001011001111101011111110000000001000110111100001011001000011010101000101100111110001010100111110000001010101000111000100110110011110001100011111101001000001100010101110000000111100011000111100110010101111010001011011101010001110010111111011000101000111001001110001111000101110011101010011101101111100011111010000011110000101110010001000101101010101001001000010110001000000100101110001100011011011111010001111111000110110000101111010000101011010100100101101000101011110110000001010100000111110010111111010110011000101110010101101111101100100111000101010101001011011000011010101001101111010011010101110110010111111111011001001100110000001101111111101011010100000010111111000111011101001000111101100000100100000110000001000010101001111010011011000010110000001001110011011010100100100011001000001000100000111100011000001110---------------------1011000000110101001111001000011000111110101000100000100010010011001001000110011001110011100000110111111001000011011000110001010111010111000001100010100000010111010111100110010110000011011011100010010101111010010000011110101001100100010010110111010101100110100111010100101010111111010111101101101101100101001100110001010010000110110110010010101010100101001000100011110111100101101010111000111000110011000010110010110011011001110111110010011000000110101000111000100100001011011110110101010001110000110001000011011000010010100011110011101111011111000101111111000010011111010111000011100110010101001001000000101011110011100110011111111000011010000001001011011110010010001101011101001001101010100000000111011101101011001110011110011100100011010001110010110011110011000000001000101011010100100101010001100000011100101100111001111010001011111100010001001100101000001010100100110110010111111010101011111010000100010100110010001011001010011010110101000010110001010010000000100011000100100000100011101011111101101010010001001101001101100101001010001011001100110000000001010011010100001110111111100101001110001100000010100101010011010011001110100010111011000000101110010001000000101111001010001011100001010011001011001101110110001101000010000000111000101101111111000011111011010101001110111101010110000111010000110000010010000011110101111001100010010001101101001101110101111011111001000000001000000110000010010000011110110001000011001100001000000111000011110000010000111010101110111010101011111110001111110001001101100111111000001001010100000111011001000011100010100010000000010111011001110101101111001100111101111010010011011001000100010010101110010100010111111110001110000101011111111101000111101110000100111001010010001010111000111000000110010010101110010111001000101110010000011000111000000111001110000111011110000001101001110000000110111101001100111001110110000111011010011010000100001100010101110110011001010111110011110100001001111100010000011110010011001110010010101001011000000101111001101010011110101110010011100001011010111000110111101111010000101001011110111100100110000101010110111110011010110001011000110111110100110111010111001110111000001111111001011010101101100010111001010100100100000011010000110000010010100100001000100100001000111011000111000110010010101010001011100010011111010000110001111001111110111100101111011101000000100100111111101011011000101000001111000001110110001000011010100010100011011111001100001101111001111111000000100000011000011110100010100011010001011011001111110001110111010011101111110001101011111000110110000000100111001010010101001101110000100100111100100101101000011000010110001001011011011000110111000101000111000111000000110010001110001000111001010101101111010110000110100001111110101010000010011110100100110000000100001110100110101001111011111100010011011111101101001101010011111110010100011001011001101111101101010011010001001000001110000110101110010001000101000100101110001010111110011001101000000101100100110101100101010000001000011110101001010000000101000000100111011101011010011100010010011110100001110011010011101010001111111101001111001010101001101111011011110110001000000101000001010011000011010100101010111001010010010110110110010100100001000000010001100110000001100101110011110100110111110011011110110010111101001100111111111101101000111101001011111010010010010010101111000010010001001000101111110110000010111011000110101000000101110111101111101101001000001000100001100010101111101101000110101001000001100011011000001000111010001011010011101010110110101011000100100110010101010011011110000010011100110100001100111000001110010010000111101001111101100111110100101000101111011100100111100100000111101111110010100111000101110100110101100101011111111111011000110110111001111101001011001011001110100110101001010110100011000100000110101110100011111100010001001000010110110100100111011101000110011011111100011110001110011101111101110011010010010110001011111110101010010000111000100110001010010011111111000110110110111101011010101010111010010011010101000110100001010110000110010110010110011011100010101010001000101101001010000111101001100001100110011100110111010011011000000111000011100010000111000011100111110011110101011001110000010000110011101000110110000010110110011101100010000000110001111010010011101100100100011000101110001100011011111011010110101100000100011100001010100000111010001101010110000110010111101110011001010000000000010010000001001001001101010100100111001001000001100001100001011001011110001011101011010001101111101010001101100111000011110010101000010011000111000011011111111011101100001110010000010100011011111101010011110011000010100110100110001010001100111000010111110010101011001010010001000101000111001111110011111111010101010001001011000110000011100011011001011001111100100111011001100001010111110011111000010001100000010000111111001110111111111010001110110001011110111000110010011111001101100111011111101000000000000001000011001111110110011101000011001011111010101101001001000111110101101101000000001101011011111001010100100110100001101001110111100111001000010000111011110001100111010101000100000001110000011000100010111001110000010111100010110011000010101111110100100101100101110000000101001100100101100110010110101100110101011010011010000111100010111101010001010111111010000000000111111000100101001010011011001110111010001011101100100110000100101101111001000011000011111010111010000011111100100110100010001000010011011111000101101101101011110110101010000001000110111001000001001001001011010111111000100000111101111010001000010101010011010111011011100010000110101001111111100001110011111101000110110111010110001101101010110111000000001000010000001001010011011010010110001001101110001000011001000010010110100010001100110111011110010010000010111010000101011101001000001111010001000010011110101100111010110011111101011111111110000011111110111101010000010010111011000010011110100010111010100010011010011001111111000100011001011100000011100010010110000000000101010001001100010101101100100110000011000100110000101111101011100100111000000110011001010101011110101111000110110011000101101000011101111101110101010110101110000101100101011110000001010100100000111010000101101101110001101011111010111111011110010101000011111010111010001000101010010011011011011110011010101000010010101010110111100000100100111100001010101001000011100111100011010110100000000010000010001011001001011010010111001111000110000110110110110101010011001110001100001110001010010100011010010000010011001011001011110111000101001101001101110110001001001010101110011010110000011100010100011111101011001111010000010011011110101101101010101110011010111101000111101101111010010111010011000001010010110000001000101101101100010011000010000100011010011110000011010010010111110101000001011011111011110101111111001111001111111001100000111101000011011001110111111000011101111001110010011111110001100000001000001110100111010001100111001101001011110001100101001001111100011010000010111110110101011101110100000111001011110110001111110111000110100000010100010100111100001111110111111111111100010100011100111011011111000001110100110001101100100110000001001000100001011110101000000110011000001010001011110011111011001000100101010000001010100111010111011000010000111011100010001000110010100010101011100101110010110100011111101111110010101011001000100100010011001001010011111001000001101110001001011100011110001000110110101010111001000101100111101100100000 +11011101011000010100111110111001010001111011111010101001100011000011000101111000001000000010001111100001010010000000011011111011111011111011101101101000111010100011111011001111101110010110011011111110110110011010110100100111011001100101111110001110111011011110100010000010101111101000110000101110111010111111100000110001111011001000100100110001000000110100011011100110010011011000110010101001110111110001111011111010000111010101110100001110000011000001000100011010001110010110010110010110101000110111001101011001100001100001010101100000000010110110100111011111111001001011111000101011111100110000100100110000100011000001000010111111000110000010000011010111111000100111010000000010100001011111111011111001000001101110001001111010010001100110110011101110110000101010000010101111111100000011111111111011010011011001111010000010001111011011000111101000011010101010001110001010100001101100010111101101000011011100100011010010011010110110111100010001011010011001010011011110010110101110110010010110100011101100001000000000001101110110001011000000111100000111111000111100100111001011111011010101001100010110100110011010101110101011101101010100011011101001100011011000110110110111011110110101000011011011100010000111100000001111001101010000000100011010101100011000000110010110010110001001010010100010101110000001101101101100010101111001011000011101101100000100001011001010001111000000111011010011110111101101101111101011110000000000100000011110011000101111001011100111101111101010101000110011100000011000001000011100010001010011100010000101100111011100101110111101011010111010111100001000011111000100011001011111110110010111000100011000001100100110000010100001000111100100101011111010010000000011100011011110001111111010001001000001001010101000111001111001000010010011101001101111101110001101011010100101111101000000011101011011001110100101000100111101110000110111110001001110110011001011010001010111100001001101000001001100101011100011000101000000111110000001001010100100100010010111010110001111011011011001001011001011011111100011010111101101011011011010100111101110010001001000101100000001000110011111100010100101101101101001111000001101000110000101000010111001100010001111000111000010000110100110101011000110001001101111010100001100110110001100000001010100100111000000100000010011010010101011011001101001001110110100001100110011011111001011101010011001101110000111001100001000010001101101101101100100011001011011111001001111000111101001000011001111000011100100100110001111010011000011010110000100110101000111100011000101101111010110010011010100011001011011000111001100110010101101001000011000101010000010110011111101101001001010101010101110001110110011110111111011010001100101111001001110011001010000010011000111010010001011110111010001110010100111000111101110101000000001100001110110001001001101011000110100010101111000110011100101000110000110010000111100101100010110110001100000101101001100110101110111110000111111101101010000010000000111011100110101101000101101001111000110100010101110000111000111001110111101110111100001000101001011001000110010001101011011111110100100101010100100100001110110001001101111010100111101011111001000011011011111011010001011100010001010100011011011010---------------------0101100000101001011010110011100011101011101110100101110010011111111101100000111010000111110000110100010111001010010010010001100101100111101000110010101100010101010001011010000100111110110101111011000000111110111011101101110110110101000111011010100100110000011001100101110111110111110001011010010001000001011111001000000100000001001001101011110010110101011010011011010011111011011100100101111011010111100111001000010010001001011001011110000110001101000001111111111001110011001110101011101001011011111000101110100110000001101100001100110100000100100000100111101000001101011001010110100011111011000111000001011001001011110001111010011000100010000011010001011100001110100011010100111100000100100011101110010100010110111000010110111000110101000000111000111111011000111011110111010010001101010101111100110111000010000110000000000101010111000101001000001111010010100011111000101110000000010000101101000101011100011111101110011001000100010010101010100010000101111101000110111111111110011011100001000110000110111100101111100100000001001100000111001110100010111010111100100011110111100101101001100001010110101010011101100000101000111011001011000100101110100000101010010000101000100000100010000011001010001101110111110011000001010110011010000010100100110100011010111010011001011101100111100101100111101110011001001110111011100000110010000110100100010011101000101001110100000111010001111111000111100010101100101010101011000100000010010010010001000001110000100100011000010001100010011110101001000011101011000010001010110001111001101100001110010110100101101110010010111100010001110000101110010010011011100010001011011000000100011000000101100110000101001101101011110010010011101111001101110100100110001100011010000011011011011100111111111000110111001110010011101010100101111011100101110111111000100011111011111011000101011101001011101111100010011100100000011111110011110110000111010010000010110001011111110101100101101111100101011100110010010111111100001010110111011000101011110110001000010111100000010001101100101011101000001111111100100011111010000101111101010110111010011111101111001101001001111000110011001011101001001010110111110110001011110100111111100000111010101101110011100010100100011010010011100101000000101101111010111110011010010001010011111001000000111011001011100011101000110111010000000011110000000000000011010000110011011000011100111101010010001010101011111110010011100010011100000110010000010100110011011101101110100011001010001010111000111011001001100110001011100011001001010110101110110110111001010000110101101100101011100000010001000111100110110111011010100010010100001101111001011000100001001100011011010000000110101100001001001111100001100101001110010110110111101111101011100100000001010101011101100100010100100111001111100001010111110110100001011000001010101100111001010101010111110011010010010100111100100101011011010110101010111000101111101000110110000011000111001101111101010101101001100000001101100110101110111111010110011110001010010001110111001010001010001010000101110101001001001110001000000110000000111111010100111011101011101011000010110011111010000010001011011101110111111001111001111111011101101111100100000111101110100011000001010010011001100010111110111001111010001010111011110011010110001011010101101100101100110110001011000010010010011001001100000000011001000010101000111010011100011000000100011000001111010111101011101001011100101001000011101110011111010010000000011011100001000011110100000110111000110101010010010110010111100010001110001100011100010001100010000000011011001001011000101101010101111011011111110111000001110110100110110111111000111110010111110111100011011110010011101101110000000000111000001110000101001110111100010110111011100001001111011010011101001011000101011101110110100111000000110001110100100101111000100100111000000111110111111111100101000000001111100100000011010010111010011010111111111110100001101101000010011101000101011000000011111110011001001110101100111100100000011101011010100001110010011101111100101000001000001010010010011100000001000100100110101011111011101111110110000101100100000110111101000001111000111111110111001011001101111100101100110001010000011101111001100001100111100110110100111000101110110010111000001010001001100100101000001001010001100110110100001010011001111000101011100101101100000011011110110110111111001001100100011111011000001000011000110110011000011011000001010100101101011010110010101010110100101101001111001100100010100010001111001101010000100101001111010010100111110000110100011101101101101111100100010100100100100100100011011101001000010100000101110001111010111110000010000111111100000100011100000111111110101110001011011011111100111000100110001010101010101101010101110111111010011001010110101011110100001011010110011111000010101011010101110111000001010001001111001110001101111010000110110111111111011000100001011110001010000110010010111110001000111011101110000110010011110111011101001100110111000111000000110000011011100111100101000010101010110000011011100000011111101100010011000110110010010001111010101011010010101010011101010100010000100100011110000001100010111101100000011010101000100011111110110111000011011000101101001000100010000100011110001001111001010011101100101110001100111101111100111000000001100110110010111100010011100100000001111110110011111111101000000010110011000100110010100010101101000100110010010101001101000000011011010011100000011001011001001111011101010111111000000111100010010001000100111001000100100011010100100111010100001011111000101000010100111101111111100011101110101011110000100111101011000100000010100110010111011100010100110111010110110101000000100010111001001110110101011110011000010001100101000100110010100110010100000000101000100110011110100100111110101001101011111000000111111000010001100111010100010111111011011111110000000101100001000011011100011010011010000110100100011110110010111110000011011100011111100100110001111110001001001111100010110100010111010011001111101011001111101111001111001100001001110110010111010011000010110110101100000100111101010001101001011011011011001110100100100010110010010000000011000111110101010000010000111000011001111000111010011100011111011010001010011101100011000001001101100110010110000001001101011001100101101000000101111111010000111000111010100010110011000110111110011111000111110111010110101100001000011000101111001111000010001100010100001010010110111001010111001111010101001101010011001000001111101010011110000011101010000100110110101011101111110111011010011101010011110011011001101100110110110000111110101011100000110110111101110101010010000111011100000101100011111101101011000010101111001010110011000001000101010001100110111111101000001111000011101010101011000001100000101110001011110110110101011001110111000011000011010010110110110000010111011010011110111111011110010001100010010011011001010010010101010110100101010000110000000111100010101101110110111010000111111010111110010101100110000101100000100000100001001001000100010101000110011010000101101011100011001111000100001110100101010101111110000101100111010111111000111001011001001010111011101011100010010001101010001101110010110110110001111111101001110110001001011111010101100000001011001001010101001010000100011101001101101000001000010110010010001101110101100101011001111000101011110110011001011100001000011110000000111011110001011010011010110000011100110001101010001011010010000011000111101001101001111011101110100110001001100010110110001111110011 +10000101011110100011101111000111101100010100100100100010001101100110011011111100100101100000011111111101001101100111101110111101000011010111010001110001111001000011100111110100111100110111111110000100110100110101011101100110101011001010011001111011001101011010101110100001101011110010001110110010000100000000101101000101100101110100010110110001000110101001100110000100101001000000001001001110011100101000111100110011011011000001000010000110011100001000011110010001110010010001000100110110001011111110011001100110111001101111011000000011101010111111111101100010010110101100110101101011111100001111101110101110001111011100011010001011011001110011101011100000010111111001111111101111010101101010011010111011000010000100111011011101100010111100111001011100100001010101010001000100110101111101111111111111011010011011101010001001001101010111001110100010100110110011001011101110010101100110001000010001101101100110100010000100000100110101010100001000100001001100100001111001110001110111001100010000111110100010000100101101100100110011111001101100101011111110110111111000110100010001010010111110110110011101010000011001010000001111001101100110000011100111000010011011001011001110000000111001100010100110101100101011110000011000011001111001011101010011010110101110101100111111100011001110110100000000010011111010110001010001101001011000111101110011101000111000110111010010101011110000111101100111100101000001101110001111001111110110001100101010001011100110010011101000111001111000101011011001110010101111001110001100100001011011101010110100001001100010000011110000000111101101101110010101010010010111000001000111010101101011101101010001000110111100110000001100111001101110101001110110011100100011100111010001101010100101000000011011110110110000101110001000101010001111001001101100101101011001010111011111111110000110001010110100111101101001011110111001011110000000011100010010101110001100101111001111010111111010000011001000011110100111010010000111011110001100111000110011100101101101110000111100110101001001011101010111100100011111000010110000000001000110101110010010111100000010101110001111001001110000011111100101001110000100011010111101010110000010101100101000110000000000011001111001011111000011100010110111010100010111001010011010001010010010011100001000000001110001110001011000001011111101111101100110010100000110110101100001001100001110101001010000010100110010111100001010100000111101110101010010101001010101010100000011001100010010111011110101111111011001100111100000110011000000110011000000011110001100101000001010101111010101011111100111101010111110001110001110000100000001101100000000001011110100110001010010010110100110101111010000100100111101010101001011100110111010011010110100010000011111011100010101011100001011101110111010010101111111010101010000011101011110010110001000001000111100011110000111010100010111011110011111011001100111001011101111001001000001000100101000000011101011110111110110010000110011001010011110011101010101111011110111111010001010110000101000001011101101110011011010010110011111111111000000100111010001001111111111110110101111011010110111100010111011110100011000110001001110110110010100101010110100111111100101110011000011010011010011101101001100100---------------------1001101011101111111110100101011101111101001101110010111000100010111001111101000101110110111011101111001011000000111010110010101111010000110110011100010000011100100111001101111101010010011001010101111001000000101001101110011011010101001110001111111001001100011010111011011000100011000101110010010011011100011010101011101110101100110011101110111010111001001100110101111011101010010111110111011000011000100011010000111001001111010101001001010000001011001100001110001000000001100111100000001001011111000100000110101100001001000011010110001100010111001011010100000001101110001010111110001101011110000110101000000100010101000001001000111100010011011101111110111101011101110011001000011111001111100010100110001100011101011011111100010110010000100111011110111000111100100001100100010000000100001111010100100010101100101011110000110111000001011100100111110010010001110110010011011100001011001001010001001100011001110010010110001111101110010001111100100010000101000101100011000001000111111000101000111001000000010001001110010001110001111001110100010010011001001111001110110010110000101010110111110111000000011100111010111101010001001000010101101110010011110001101111100010101001100110101001001110010100101111001001110010000111111011010010001100000000110011001110100111011010010110100011001000110111110110001101000101110010111101100001100111011111100011011010001110110010010100010111011101011111000001110101010101010001010000000110000101101011110010110101101110111101101111010010011001100110111011001111001000100001110110100011110111101111101111111110100111001011000111111101010110110000001000100010000111111010010111011110000000010110101011111100001010110000000100110110101010010100101000011111001101001001000101010011100001111111101110001110011110101101110001111101101001101001111111110100110110011111001101110001100110010100000111000111101101000001000010000101011111001000010101000010101010001110100000111111011011000101011001100100100010001110001010011000010011011100000111100101001011010000101111100100100100011000011110001110100000011101111000101010011111100000001101001000000110010001111011001001100011000111111011110111110110010110101101111000000011110000000001101000000010101110001000010011110001011100001000111111000001110101000111110101101101111010000000011101011101101001011010100110001111011000001000110000010000111111010001001100111001001001101111111101111111011011011010110101100111100011100000011111011100101110000001010111000101101100101001011010111000010110001101011111001111110011110011100110000111011100011111101011111011010111010101001000010001000101111101001110101010001111000011010000010011111010000101101001110101011000010101000000110110001000111101010011110101000001001000100000001111000011101111110110001111111000001000111110010101111001010010110000110100111010110000110011010010110001001100001110011110111000000101010110111001001010000110001001001111101000010101110010111111100101001111100100010101100111001110100010001000001100000110111010011110011001011110000110000010101001111001101000011001111110110001001110100000100000111010001110110011000100110100110101000101000100101001100110111001100000100111100101001100000000011111111001011110011101100010111100011011110010110000100100011010111111110011110011000101111100101010000001010100011101100000101100000111000100101101111111001011110101011000001011000111101111010000110101110100011010111011001111000100011001000101111101000001001000101000101111111111001111110111101000011111101011101110110110110111110100111100000011100011001010110111101110000101011011001011001110100101001100110010011001000000110001100001000000000100101010101010110100011000010110000000110111000101001111011110111011010110010011011100001011010001000101010111011100100001101110000000011011001101011101111100111011010001110001010100001100011010010100110000010010001100111000000110110101000101001011001101111011101100000001100000110110001010000110111100111100110010011111100100000001011111111011011100111111110110000101100111100111111001110001001100001010110011111101101110110011100110011101001101010101010111011000010001000001010110000001000011100100011001011110111010111010011110101011111010001110111110101111011001110010000101101011001000000100100101011011010110001000101111011010001010011000111111000010001111001100111011110011000010001001100111111010101100101000001010100010101011001000110011111000100101110011000011101111100101100000100010001111101001010010111110010101000010101011000101010010111101000010000110000000011001111010100001101100010111111001111001100110010110001100111110111111011100111101000000011110100110000111101011001101001110010111000100100110101110001011001011100100000110010011011100101000110111001010000000011111110110000110111001011111100111101011111001011011101100001000000100101111100100010101100101011001100001010101100101011001010101110111010011100010100110100100100111000010110111011011011111010000101100001000011101001101100110001001000010010001000111001000110001010110011001011011010110110000111110010001110100001110011001111000111011110000111001011100110100110110111101001000010011011001100110001010110000010010111010011011011001011111011000101100101001001010100011010110100111100111010111011111001100011000010001001000110100000111010010110001101000101100001011001100100010101001110101010010000100010100110000111000110111011011110001110001000100110010011111001101111011010110001100111111011101001010101111011000011110010101100001100101110111011001100111100111111100110000111101111110101000011100101101010110000101011011010011110101100011001001110100000110100101110100110010010101111101110001110100000111111110111010100010101000001011101110111110101101101110110001101110011011010011100001010001110000110101000011111010011001101001111010000100110000010010110011101010011100001100100101101101001101001000101000001101111010101001100011010110100001010000101100001011001011101011100110010011100110111010100101100111101100000011101000010011010001001110111001011110001000000111111100110101110100111100001000110101110011110100010011100000101001100010101010110100011001010101011100000100111110101111010001101110011110111111110110011111011101010111011001111111101010111001110001111000111101101111111111110111101110001000111101000110001111100001000011011100010000101100111001110001010111010110111001000001010100110100010010011011000000111111111010101000001101100111101001001110110111110101010001010010101101010011011110000011001000001100001101110110110000100100000111000110111100000110110001000011111100001110000011100101010001001010010001001010011011011001001111000101011010000011101001111100111011100001000110011111000011100000101000110010010111110010100010100000101011100110111011001110000100111010111001101010001100000100110111110011101110001011100011110011100110010010000100110001011001100101001000000100101111000010101001000101000011000111100000010011000110111011111111111111110101000011011100101000110101110100101011010101011100010111000011011010000110000001011100111000100000000001000010000110000101111010100001111001000010111100101100000111111011000110000011000001100001000100110100001011011001001110100110110010110000000001000001011100110101100001000011000010000010110110110101011111111000110000110101110011000110101011000100010000001111000011101111110111111010110110001111101011011101101011011010101100111001000001011110000101101111001001101001111100011101001100011001111100111101011110100111 +10111001100011000001111110100100100001000001011011001100110110010011100011101100001100000001101110110101000100011111110110101101101011101010100000101011110101011111111100001110110010000100010000110010111010001010001010011000110001110110110011100101111010110110100110011001000011011101101110000110100111011110000110100100100100011000111110101010000000110111010001000011101111101000101111011010000011101110101100101000100111111110010110111101100010010111100110100001100111001001100111000001011110000001001100110110011100101101111100111000001001010010010100110101111000010111100011100001000001000111111111111101101000101011111111101110000101100111010010010001111010111011010000100000101001011101000000001101011011100110101110000111000101001010110110101101001011100000011000110010100011001101010000111100111011000000000001110010000011100111110110101101010100111100101101000011000011011101011101000000010001100100011100100001010111100001100111010111011010001101110101110101101110100100101101100001000111100000100100001101110101100110100100011010011100111000010100110001111111000001111000101110000000011001011111101010111110000011100000100011111111110101110100111101100101000011111000011010101010001011011100011100010110000111011100010100111101100010100010100000100100010010001110010100111010000011001100100101101110111001011010111000111111100001001000000100100010000100111001101011100011001101010011001000001110111100001110010100011001101111010011001001010001111110001101110100101101000011111001011100011011101110001110011101101011000111111110110010100011111111110011000100010010101001001111011001011000111011111110000110000010111000010101000111010101110101000001100001110100000100011101111010100100101000101000101101111100001000111000100011001110010110110100001010101001010010010000001011001101100100101010010111010110011001010111000100111001000011110010110011101010011001100001010100101011101001110110001010110100011101000000111001010001100111100001110100001011011100001110011011100011110001111110011101011101001110000010010000001100010010100100011000110101010000111011101111100010001111011001111001000100010001001010010010110110001101010010011000000110001010111100110001110000101111100000100011010001110100111000101001010001001110100110000110101111010110000101100011011101011011000110010110100011001100001101000010011100100110000110111110110010010110010101110111001111000001011001110101101001101100101000101111101111111101111111111101001001111110100111011111011001001001111010110101010101100100001101001100010000001101011011010111110101000011011100110101101110010111101110111101101101101110111001001011001010010101110010101111000011100000000101100110101001110101110011110000010101110000011111110010011001100010000000110110010110110011011110011100101111001011110011010000000011011111110111100101100110100110100110011001010101000010011101111010001001100110001111110110001011110101010100001110000110000011101100110110001010010000111001000100011000110001010001011101010101111001101110111100110011110110001011101001010111110111010000001001111001111101101000001001000111100010101111010010011000000111111010010100011010000101011000000111011010000001010111100011100100011100101001001010011---------------------1010011100011000101011001111010100110100001110100100101100101000110101001010101010111101011001001100010101110100010100010011101001100000111001011110000010100011010011001001100110110001011101011001000001010011000111010101000111011011110100101010011110011000100011010001101001100110011010101100101011101110111110001000011010010101001001010110100011000100010111001100011010000111011000100010101111101001001000010001111111100011001110100101000001001010001110110011101010011011100111010011010000010110101101111101011111111011101001010100110011001111101111110111110001111101111000000001101110000000001010011001101000100001100001101000010001001011011010011100100001001100100100001111011000000000010000110000101110110000100011110000110100000011111110111100100010110001011111110101010011100100110000110010100110000010111001011011011100100110111011011001111011010001001011001011010010110011000000000000011111011000001010010100110110101110101000111011110110100001000001111001000000110100000101111111000100111000111100110010100111011011001000111110100100100111010110101001010010001101010111001000110100111110010010010000100011100011000110101011101111101100100101111001100011101011001100100111101100110110011111000010111000000011110100011100101101000111000011000111000100011101111110011111000111100000000101100111101110011101101001101110000110101111011001101100100110110111111111010010110101011000111001111110011110011110001111110010101011100000000000100100100000010011000010010100011100011101010010001011000010011111011110000110100111101100100111011101111001110110101110110101010011001001010010110100111101011101100111111111010110001001111001100100110101110111011010001001100001000110011001010110110000100001111100110011100001111011011001000010111110111110110001000010011110111101101011010001000111101101000011001101100110101001110100110011010110010101001000010110100110111001111111101010010111010101101100100001110100100101101101110111010110110100111101110000011100011111010000111100111010001111101011010010111001001100010001010001001101100010110001000101111001001010011010111101010010110110001111100000100100110011011011010001100011101100100100000100110001001110001100101100000110010011111111001110011101001100101000001010101110111101000011001000111101111101010011011110001101011100011110110000111111111111110000101010011100011010000100110001001011100001100110010011011011101000101010110011011010100111000010100110110011011000011111100011101010010110110110100010100111010011111110101110111111000100101010010010111010010011010001111100100011001101010000100110000000101101100001011100000011010001001111011010010001110000101011101110111100011101100110011001001110110111000110010011000100010000011000010011001100010110001001101000001001011101100100010110110011111110101000011101111111000100110101000110101110000000010010101000011010110011111101111010101011011010110101110100111110001001000101101000000101011010101101011111100111101111001001001000011000001101010100001011101101010011010111100000010000101010110000100000011100110010011010001010101000110110110010000111111101101001111011100011110000100110110010010100101100100001101101110001001011001001011011010110100001010010010110001110010101010111000111010000000011101011100010000111101110001010101110010011110001011001001010011110111000010011101101010101001101000000011100001010111110110101011111000000011101100101000100001000101111111111101011000100110001110010100101000010110000100001111100010101110101110111111011100000010010000000110111001010001000111010100110011011101100000100011110110101011110100001010011010101100000011001110110101010100100110111110110000111101100110010010101110101100010011111110000101000000111010010110101100100011110010111101101011011101000001010100010110110101101011101011101110110000001110110111011001010010101111010001111000001001111101001011001110101101111001000111000100101011010111000010011011011010011100101010110110010110110001011111000101001011111101011011011001000101110011010110100011000001011001111100000101110101001100001101000000101011001001110010100000011100110111110100110100010110101111111011011111111011001100110101101011001000011011110110001101001111000101110000010101011101111101110000101001000100101011010100000000001110001011001011010101010100000101110100111001000001100011101101100100111100000101101100101001010001010000111100111100000011111101111111101001001100100010110110000011000100111111010000111110110000110001110011111111101111110100001110011111110101000110110100100011000100000101100000110011011010111001100011000110111111010000001100000111110011011101010111011110000100011101100010111101111110000010110010010001111110101100011011011111001010110111100011000001110101111101000011100000001010001100001110100111011110110000110101110101100000110011011010111010101100101100011110010010010110100111011010100100010010100001000010010011000001000111110110110010111010110011111011000101100100011110101100010001010111010101101000010010001110110010101000110010101000111011101001111001001110011000101110011010000010111010010101101010111001001100110111110000001001101110100110100000010111101101011101011001001100001011110011101100110100100011010110101110111001100010100010100001101110011101010000111100000101010110110100011101101001110111011010110110010011011100101010001100101001010010011001001111111001010111000101011010110010010101110011000011100100001101011111011010100101011110001010101011000010101011010000100111110100101010011111011111001010101011011111011001101001111010001000000111011010000110000101000111011101111100000111111110000100001010011110010100010100011001001101001001110111000011000111111101101010111001100111100001000001000100000011010111000001011001011100001111000101011101100011111000100001000011001111011110111001110111010111000100110101110100010000110011101101111010000100111110010000100001001110000110001111010000100001101010100110001101011110010100110011001101001000011001101100100010100001101100011001010110100100100111010011100000111010110001111100101011110101010110000101101011000100111000101010101101111111000100010100111111101101101110100010110101011001110000000001101001001000011001111110000000110101101101010110101110011000110010001100010100101010110110100110101011101111000000011111001111111111000000100001000000000111000011001110111110101101010110100011000100001011110010101010011100010110010010100111110111111100100101010001101011100001001011000010011010110110000001101000011101101101000110101001000110111101110001000111100000101100010011101010011000110000100100110111011010110110101000001100111110010101000110111000101000101110110110011001100000000011101100110011100101001101011111001000011101000001010000111110110001100010110110110110000100111101001010010001000011011001110100110011011010110111010000010010011010110011100000001110011001001010000010010011101111011100000100000101111110110110101011000010001000100001010100111010110100111111110100100001001011000111101000010001111011011110011111000110111100110111001110100011110100111001010111101100110001100100000000011111000110111100010010001111011001101001111111101111111110010100011001011001001110010111110111110100001000100000011010000011101000000010011010111100001101110001100001110011010011100010100011101001011110111110010110010111011010001010100001110010111110101111101010111101010100110111010011110111001001101001011100110111001010111111000001100000100110000011111111011000110110111 +10111111101000000111110101001001010000010101001010101010101010010101110001100101010011000011000111110000010010010110010011011110010001110011010001100011100001011110101011001010111010101101111110111000100010010101000111001010101001110100011111000000000110101011100101101010100000011010011000001001100101000010101111010001001101101101111111100100001011000010010110100101001000011111111011010111010010110111001010000010101100110000100100100100111101101100110111110101010010011010111100000111111001100111000110111100111110111011100111111001101101111110100010111111010010000101010000001111100010011000100011110111010001011101010010110100101011100010001111001111100001100001001011010100001110111100110000000110101101011011011010010001011011011010010111111001010001101010100011110010111001010111010000011001001110110010110010000001111101110001110011000010110011111110111110010010100010000111111101000010010100011101111011110000000110011101110101101010111111101000000101011000111110011101101111000011111010100111011100011011001100110100101011110000101001011011101111110101010000011000101000010111101111011001100111101111110110110111000001110111111100010110000010000000000010000010110001100011001101101000010001100111111001100011111111111000101111000011111110000000100101010010101000101110011011011000011100011011001111100110010001100101101000000011011010100100001101100010001110000111111111001010101001111000100101000110000001011000010111111110011011101000001100011000100011010101110000011010010100010010110100101010100110110000001101000101111000000010000000100000101001011011101001100000011110010101110011110010011011011100010111000110001011110101110011111010111111011111001000111101011100101001001010000100111001001001001000101100010101110000001111001111111100100001000001111111010100011000101111111010010000011010111000001101010000110110101001001110110110000111000101011011110000000010010011100001101011101010001011100010001001010100011001110111111110100100000011110111101010010111111000110110011010100010110100100101011010101100110001110010111101110011000001000001000000111010100111010000000101101000001110110010100001101111001110110011111101110011000110110011001010001101010110000011101010111101100100111101100100011110011000011110100101010011010011000101001010000011001011000000100110111100011101101101010011110100001011000000011011010010111001111111011000110110101001110101000111110011001111000100100101100111001000001110101011011000100111100111000111011011111101111001000100100000011100100100001001100100010010000110001101001000110001110010001010111010000101110110111001101000111111010011011110010000111010100011010101000011011100101010000001010111000000111001000110110001100000001010110000001001111011001111011001011111010101111101010001000010001101100100110101111111000011000001010101011000010011010001111011010110111010011010011110010010101101011111001011011000100000101101111011010000111001111110011101001101101011100101011010000111000110100000001000010101010111010111100001011001101000001000110100110000111001100111001101000111100111010001000011100011101011100101101111011001010100111100011111110101101010110010000101000010111100000010000010110100000011110100101100100101100---------------------1011011000001100110010110100110110000101100010101010110000101111101101001110001001011000110100100010001001000100100010100110001100111110100111000000110000100001000010100000000010110110011010100111000100110000001001001100111001110100111001011111001010111010111101101000001010011111010010101010000001011110101111000111111010001101001101110101110000001001101110001101110111110110111010000000011111001101001100111111001100110100001110100111001000001100001110110000011111000100100100110010101001111101000110111111001010010110011111010101010101110101011100111001000101110001100001010000100010101001111000011101101110001110100110101000111111011000001000010000111010010110011000110110111100101001110001011011010110111111010110110001110100100100111101110010010001101100111100010011010111100010100110100110001110010010010001101111001100100111010100011111001001000110011011110000011011011001001100101111100101100100110000000000110001000001011110100011110000111001011111010111101101001000011110010110100010011011111111001111111011010111010001110001101111101010110100011100001010000100010000011110111011001000111011100000110101001111011011100010100111000000001110110000011101111001110100011010000110001111100101010101001100011000000000010000101011000110101001011011001110000110010101111001100000010101110101110100000111100100000001100000011100000000110110100100111100110100110101111110010000000000001000000101000001110011000001100101101111001100000001100000101011111011010010001010010010000101101100110111011101100011110110100000100110101000000010000101111011010011110101100010011101010001100010110110011011100001110000011100110100110111011011011011010100000110010011001100010111000001111110111011000110000110010110011110101010000000111010111100010111011010000100010000110001011110111111101101110100011000011011101111100100001010111111100011010101100000010110111010000110010101001101110000101100010011000001111101001110111110011000011001100110101111011000101101010011100001101110101100100010010111100100000010001101100101000001001111110101111000000100111111111001111110111101111111000111000001001010011111101000000010010001100011011001110011100011110101000011101100110001000110101110011101100010111000011001010100000011100101000010010010011001000101000000011010001100010010000001101011001000100111000001100101000101101001101111110010101110001101011011110010010010110100011100001111001010001100100110101001101011000110001111101100110011100001011111011011111101100010010100111000011000100010110100111101101001011000001011001100101111101100001011111110010110110010111011011111011101101111100101010100010110010111110110011010011001001111001101001000101101010011100100101011001011000111101000110000111010111101111010111110011101000010101110110100100001010010011110001111101110000111100001110101010010001101110001011011001100001101111111110110101100100000101000111110110110000110110111000110000011111011100000010111001110111001000101111011000111101000001101001001011101011101110100111111111010111001111011101111000101100101110001000011110110011110001101110100000001010001001111001011101100010100011010011111001110011100010100111000100001000110010011111000011110100010101111001010110111001011111101100111100011010111101010011101100000001011101111101010010010001001010010101000011110110100000100110010110001000101011001110001101001101010000010101001011010000111011010101001011101001001011000000101011000100111000110001111011101011000100110011100000101101111000101100101101000011000001000011011010010000110100100011110000100011011100100000010100100000100111101001110100010110000000111110000011110010011011110010000011001101100101010010101000001011110110011101111001011100111101011110011011000111010111010110001001111011000101100101011010111000000100011011100111000110010100001101100100011001101000110010011111001100100010100111110000001100111011111100101010101100001011100011101011011001001100101111101000110101101010101100000000000110000001000110011010111011000011101111010010101101111000001000001001010001101110111101101010010010011011001011111110100101110001100010101011010010100010101000000100011011101111100111011001110100010110100000010001000101001011101110101000110100011101011001110110010111001000000001100111011110000110010011100010010000001000011001110111011111011100101011011111001000011011110011000111100100011011101111110011001111111111100010001010001101001001001101011100100100001110011100110011011111000011111100011101011000001011000101011111011000011000101000100111100001111000111000000111000101101111110110001011010101101101001000011101100011001001100010011000000000000000110001011101111001101010110010010001000110100001110001111011110010010101111010011111000101110011111010011000001010001000011000010010010111011011110011000001100101101000011101011110101001101101011011000100010110110001000110011100110001001000110100100001101110101100010100110111000010011111010101111010000111001011010110111010111111011110001010010110101110000000100011001110010110010011011001000010001000001000000001000001001001011110111011101011111000111010101110010110101000100010011001001110001011100111010001001000111101100011000010100111011011101010100110011110101000110010001110010101101010001010010010011011101011101000001001110101110101100111001101011001101011000001110100010001001100000000111000111110011001110110010000101111110101111111001111111000100000101001011001001001110000011110011010111101111111011100101100001100110001110011110110000100101001101000001100111011111110111110000110111111111010111001011011101110100100100100011010111110110100001100010011100000001100010110100101010011011010001100011000010010100110111001010101001111110000010011101101001011110110011010010101010011011101110011101100101100111111001000000111010110010001110001001100000001101001101100011111100000011100000111100111001010000011111110110010011010110000000000110011011011101111001110011110011111010011001111111100111000000000001010001100111101001110010001100110001111111111010011100011100010011110110000001110000110101011110101101011110110110100100111000111000110011000011001001001101011111100011111000000110101111000110111101110011001001101011010010100001111001100000010000011100111111111110000110000001100101111101000011101011100000100001010100001111011011100001011011101110010101001010001100011000110000000011011111000100111100001000101100011100001110010010111110010110011100111100101101011011111110101001001000101101100101011111011000010010110011001101010111010000100001000110110111100100010110111010101111001000110011010011111010011111011101111011100000000101001110110110101101110011001101001110011110000110111110100100101110111011101100100011011101110000001100011100010111100010011010011001110010111010100010111011100011101111011000111000101000010110010111111010111110100001101011011101101100111101001101111010001100010110110101010110111101011000011001100011110100111000000100001011011000011011000100011011001110100001110011010110001010100111110010011111111111010101010100000110111011110000000001000101001100001111010010100110011010011011010010111101011111100000111111001000000110111001011101110100011101100101000010111010001111101010100001101011101010010010010010011000010011110101000110111011110011000111010010010111110000010010011000000110011010011001000000010111111111001000101110001100001000100101000010001101000101111101011010100111000100101111101110111010011110000011110011010110100101110111 +10000110010011110011101011100110100101010101110101110101010001101100100110110101100001010100100010110111110111111011001000011110100110111000100110110010011100010110001001100000001101001011111000100000111010110000110100101010001111110010000111011001100100011110110011000100111111111011100001101010111011101001001110100100001100001011001110001111001111010110000001011100101101000111100011011101111000101000011010000001000001011101000100011100111100010100011111001100000111111100010010000001001110010101010101001000111000100111111010110100110101001111010000110011111110000001000110001111110010011010100010111100111110101110000100000011101100110101010000100011101101011001100011111010110011100001101111010101100110101011111010010011110100010100100011001101011011011001010000000111001110110011010100001000100100001010010010110010111000110001111001110100010110110110011101001010001101111110110110100110000101011000101101011110111000011010011111100011111111100010111101110101011100110000010000000010000110111101101000010100000001001111011000001101110011011010111101100110001011010011101110100101101111000101110001100101111000010010010010000101011010100101110100111010101001010000110001010000000011000111110110001101010010000111010001000000011010010110100000001000101010010110101111110100001001011000101000101011000001101000010101100001011000100000110010111100111000000011010000011110010100100110000111011010001011001001010100000101100010000001110010101111110010101010010110111011110101100100100001100011110100000110100010110011011011110010000011111011010010101111000101110100000110001000000001000110000001111011110100010001011010111100010111010010001010110000101011011111001000101111101000100010010010110010000100110001000101011001110100010110010010001111110010111001011111010011011111011000111101100100110111010101110110111101100111110000001000100001000100010010110001111010101000110001101101111000010011011000000110101000010001110100010101011100111111000011101101000101000011001100111110100010011011001010001100101010000101001010000110100011010001010101001001100011001111100001011010101010001011111101010100010011110100101010110111111000001110110011111110101111111011111111001010011010111110010111001011110011111001111110100110101100101001000010110010110000111011101010011001111100111100000111101001110110111010111111010110001000000010101010001011110010100001011010110101010011101010101100101101010000100011110000100011110011111110001010100010101010001000101100001000101001110111101101111000001010101000111111011101101101000011011001000110111111110001010100011110011100101000101101000010001000001011100110111000001000100010100001010110110110011000100111011100010010111001110010100011001101000000011000000111101001001110011111010011000110010100011001000000111000101100001010101011101111100010001001111110011111001101101110001110001010001111100000001110011101110000100000100000011000001111111010011001010110000000000101100111011011101001001111001001111110000000111011111100010110011110001000110110111101110110011110010011100010110010110001111101011000011100001001100010110110110101000111000010101001111000100011100010111111011100000011011111111001101100001101010100101011011111110001010---------------------1010101111100110100001111100101111110011000111100101101000101001100101010011010111101101011100101100011010111000011111100100000110000111101110100000000010110011111111101110101100000101011101110110111100101010111001111001101110010010111111000111001111110111000100101001111100100100010011111101011000011110101011010110000100110110101011000110100101011110000000001110001010010100011100101101101001011110101101111011100110011110000101100101101101100110100010111011001100000101000000011101111001101111001010110010110100001000010100011101011010100100101001111100010100111011000111011100011101110011011101111010010010011000110111001111010100001001011010100110011000001100011000001010110101100001001100100011010111001010101101111011110000001011110010001110011111100101101100110000110001000111011100011011100101100101111101110010000001000010001111001101100110001110110011010011001011111110111011100011110110101110011011101110100001110010101110111010011001100111010011011111001111100010111011011011110110000010000100000010101100011001101100011001001110000000100011001100101100001010010000001001000101110001011000110010010001111011000101101000001000100100100010111000100100101000101011010100101100101101111000111110000000111110000001111110111101101101010011101100101000011110001010110000101101001111111101011011100000111100001000100000110100111110101011000100011110010000100000111101000010110101000110110110110001100110100100111110001100000110101001101100011011111001101110001111000010010111110000011110111011101100100111100011011101101010011101000100010001100110101101101111100000010111001000001011101110101011010001010010110101100111011110010100010000101110011100110100101011101010001000000100111011001010100010110000000101111000111000010110111001101001011111110010100000111111110010010001100011110000000101011111110000001101010010010010101110001100111000001001110111000111111010111001110000110010001111000010010011011000011000111011001100000111100111001100100001000111010010011100110000110011101000101111010011001001010000011100111110000101011111101101010000100111101011110111101010010011111101111011010011011010011011000110010100100111100011001011111000010000010110100101000001000111010001111100000100101110000001111010001110101101101001001011110101001010010011000100000000101010000111101100010100101011101010110001010111111100001101100101011111111101100000001110101110100100000010111101100111001010110000010011101110010111111110100010101001111010101010110001001001100111100011101100011101100010000001010110001100101010110001011000110100011110111111110011001111101100001001000010000110010001110100011001101010000111110001100111100001001010001110110100111001001101001111110111000001001111100101111110100100110011111100100010011100000010101011100011111100111000001001101010011001111000100100010111000010011111101100110001111001000111110010000010110010110001010001101011000111101010100010100111111100110001011010010010110110011110110111000110011011001000011101101100111111111010101001000111100011011100001000001111111010110111101100101011110110001001000101111011011011001111100010011000001100010000110100011001011010010100000000000110000000011000101100101101111111010110100011011110010010001000100010101011000111001010100110010010000110001110001001111011111111110111100010111110111010011100001111100110100010001010001000100010111010001011011101001111100110011010101101110001011011110011111101111000101100001000000010111110001000100011100000000011001001101101111000101001110110111100111000100110011000101001110110001001101011011000001100100110011001111110100011010100001001011100100111111011010111100000010001110100110000100011010010000001000010110100010111111100000110111011101101000011110110000011000100101011101011010111111010010001010010010100101010111001110010100111111101100110010000000101101111100011001000110101011001011011011100101011001100101000010011011010011010001100011000001101000000001100011110100101011100110001111000010110010000101011001100000010010010011010001000000101100010100101000001010010010110111110101111011000000001100110100100111001000100100001001010110110111101001000110010101011010001001100110010101100011101101111101111111100110111011011011110001001010111011011100010100110011101000010010100011100001011100011001010101110001000010011101110110010000000111001010001000001110000001000000000001010001111111001000010100100000001111011101010100101011100101000101111011111010101111111110111110011100101100110111000001101110000010011010000000000000000110001010100111011100110011001101100001111111101101101100110111010010001111111100110111111101010100101101000110001010010111011000001110100001100000011001111010111110110010000011101101000000100011101010110001110001000100101100111000001111010100010100110010100001000001001001101101100011101000000000110000000000110110011100100111000011010001010100100010111100010001110001111000000110001110001000001100010111101001111100011100010111011001011110001011101110110101101001011011100000000100110011100000100000001001000100100100010000101100110000110110000101100100111111100111101000010101101111111110011001101000010110100011010000110100110110011101101100011000001111110010010001001000010101100101110010110011001001001110010011111110101100000101110101111000000010011000010001001110100110010001011011100001010100101011001111001001001110000101101001100011011001100111101001100110011110001110010010101111011111011111001010111011000101011110001010101111000011010101111001111110111011001100000101100000110110100010110110100101011110001010111000000100100110111100001001111011100010000000000001000001101011100011001010100000100111011010101000001101010111011010111001011010100011001010111000011000001101100100110110010010011101100011011010111101100101000011000001000111101011001001001101111011101010010001100111101010100010000010011110000010101101000010111001110011101011111101110000110001100110100111110110100101100101100010101011111101011100100100101011100110110000101100011111001110010011011010011110111100011111011010010001011011001011011110111110110000000011000110011100101110001010101110010110011011110110110010000010010101100101010111000111000010000010000101000000110011110101001010101111101110010111111110011111111110111000001100111000100111110101000101110010011111111111001101000011100101010110001001000010000010000110010100100001111001110110000000100001111000100010100011100101000001101110110111001110101111001110011110011001100110101110001111001010001101000110000000101010011010010010111111111001100100110111101111101101000011001011001010100011010001001000001100100101110001010000010100011111110011011100100000111100011101001110010101101100111111110011111100011000101001111011010101111110110101010111100100111100110000111001110011000111110011111001001001100101100001001011010110011101000011001000110011100011000101100001110100101010000111100001101011011111001100100001011110011010010000000001111011010101001110110001011100110111110011000001101010010000111100101001101101010111010000011010001001001100010011100100100111110111111111001100000111001010001011111110101110110010010001111100100000010010101100001000110110010111110010101000110110011110110101100011010011101101011011011111101100010000100111100000001111100010110001000110010101000110110101001110101010011000010000001011011000100111111010100100110101111110111110010101010000001000100001001001110100100000001000110110110110101111000010101101011101000 +00000010101010110101000000001000000010110011100010011111011101011111110111100100000100010100011011000010100111000000101000100111001111100001011111100010010000111100000010011000110100101001110101010100111111111010001110110000000110011101101111111011011011111111110101011111111111111010000100111111011101000110001100111100010010111010001100111010011001000100101100000111100100110000110011110000010000111101111000011101110100000111111010000101100100001100101100000010110011100100101101001011011010001110111000111000111111011110011100011111101111011110100000001000011100100011100101001000110101111100101110000011101001011110011101101010111100000000000100111011011000011111110110101110111111110001101011001101101111111001000110001001011110010000000001111110101110100011011010001001100001111000010101111011010111101000110101000100110100101011001110101000000100001101100010010001010010111001000000100100001101001110010001010001011001011010011000100001000100100111011101100100100011111101011111011110011011000110011010101110011100010111110010010011111010001010111110110000100001001111100010101100010101111000001110000110111000110010000000010100001101010101001000001111110011010010000000111101000100001100101001100100000000100001110100110011000111101010010000110011100100111011101101110111010110110000011101010101100101110000111110000010110000000101100110100100101100011110110101011010100001010010011111111111001100111110000001110011011101000000001011100110111000000000101110001111100111001011000000111100110001110111010101110010011011010111101101101100000101101000000111100011100001100010100001101010110010110100000101011010011111100110011111011100100011001001000101011011110001100100111011000100110010111111110000010111000100000011110010011010110100110001101110001110000000010001001101000101101101100001110001001010101011111111001001110100100101110010000010100111111111111011011110101011110101011001001100100111111101111100111111101101011100110001010001001011010111010100110100001011001010110011100010100010010011001100011101110101101001011111011001111110010010000010100100011110101011101111001100100101011000111001110011011100111101000010110001110001000001101111011111001110001100010111111110101110100100011011011111000111100011110110110010010010010101010001100110101111111110000101111111100111100011110111011001000000101010010010110011010101001101010111110011111101011001100010101111010010011101000000000110000001101010110011100101000000101110011010101001011111101110100110011100011101110100110000101001000100111101000010001100010111110111011110001000101010011001010100111011001111100100001110000010001101010001110110101001001010111011010001011111010010011100100001000100001000111000010001001100100001100111001101111100101111001111110000101110111100111111000010111010000101011100110001001110000011000001011011000101101001100110100010100011000010110101001001001010101011111011000010100011110101110111101100111010011000000111011010010110010100000111000101000100001000111110110010000100010101010100110001000111110010011111101010111111011000110001000101100000010000110000001001100100000011111000000001111111000011001010101000010010111000011100001011100101010001100010001111110100100100000---------------------1001100000101100100110100010011010000001100010111100110100011110010110011100001110110110010010001100000000001100010101001110100000001001101100111110110010100000000000001100101000101111011101111100110001011101001101011110011001101011101010001010110010000001001101111011000000101011001101000100111001010110110001010001011110001001110111101010111001000001101000100100010010110001001111011011000000010110101011111100100001101100000001001010011110111100010011110011001000100011000111001011100110110100011000100001111101000001001110101011110110011000110111100101100001001011000000001111111000001011111010001010100101000110101110011011011000011101100001110011010111001110111010001010010000000000011001011110011011100101110110100110111000100000110001011110101010000111011010010001111000000011111110100110100010010011000110000110000010111100100111000111001001010111100011000100010111110111001001000011110000001110101001001111001011010100010001111011111001110000011101110001110010011010001000101001011100001111111110100110000111010101010010111010000101101001101001000000111100111111110100111000000000100011011011011101101110010011001110100001101100001001000100000010011011001110010000001001100100011001110001010110100110010110101001100110010011001011100001011110101011111010001010100111100000110111101000001111011100101111100100011101000110110001011111110110000111000111111011111000001010001100001001001011101101110000101111001101001111000101100101000111111101010101011010011001011011100110000001010011001011100001101001001111011010000111001000010001110110101010000110100000000010111001110100001100100001110110011101110111101010110000010000001000000101100100001011011011010100101001011101110001000111110111110110001000101001100111100000100000011101101100010100101101110110110110111100000111100000110111001000010001101001110101100101111010101101101001011000000011101001100101011111010001010010001100010010001010010110001010100011111111110010110111000110011101100001111100001000000011010011110000001101000011110001001001010100010110010110001010101010001111101000011001101000110000101011110011011011111001101001101011010001011010101100111011110100111000101101111110111111101000010000111010101000100111110101111101010011000011001010111001110011100111001011000001001001101010100111011001001011010111101111010010101001101010101110000101111010110110110101101011101101010111001000011010101001100011011111111100100000101011011000010111101110110111010110011100110010101001000001001010010111111000001100111011001011111100010010101010110001100011110100001101111011101100000001010010011100001011001100010011011000110010110011001010010110001110000000101100110110111011011011111101010010100111011111011110101011010100101100011111111010001100000111100011110110000110110100100001111111110010010100010001010011101011000000001000100000001110001011111110101100101101111100101010101100111101111110011010001000111001001000001110001100110100111111001110101000010011110001110010110111110000111011010001111100001001101101110111110100000111110100110000000110101011100101101100000111100110100010101000011110011101000010010001010001000010110100100100000011111111101100010000111010011011000110011100100001000001011111100111100010001010101010101010010000001001100010101100101011110111011111111011001001000010110111001001000001011000010011010011001010000100101011100001110010101101100110001011010000001111011000111110110111010011110111011101011100011111001011100010001110001101010101100110101000101000010010110011001101110100101111100000110010111101110100000100011000101100111100111010110011010001011111000000110110111001011100010111011010101110011101011111100011010101101101100011100011101110001010011001111111000101111010110001111101010110110100001010011100000111001100001010110100001011011010110011000000111001010000001111110111111010100100000101111000010100001100101010101000001010100110000001010111000011000100011011110000011010010111110111110011111010111000010100111011101011010100001101001101001011110000111110001010001111111001001000001110101100000011010011000110010100000110110001011000000000100101111100011110010010110001110110110110000101010001110110111000110000110111100011110101101000001001011110011101001101000000110010100010001011000000010100000101101101000011011011110100001001111011000001101010101111101011010001011100111101110111001101101000010111011101101000111101111101111001011001100010110100000100110000101010101010011011010010000011001000000001111101111011000100100001010011101101110100111010000110100111100110000001001111101100101111011010001010101101111011111100111111111111011001111111110010011011001110110000101111100011111100111110101101101100110001111001011000010001111100011110010001000100100111011100010100001100011111111101011011101011011001010100011101000011100111110100010101010110111100100011101000010110001000100001100010011100110011011111111000011111100101010111010111000111100010100101000001100010010100111111010000001110000000110101001010001110100100011000101111111000011010101000111010000100000011100000110111000011010000111111010101101110100001000110100110101100000001100010111000110010011100110111000000001010100101101110101101100110111010100011000101011001111010010000111101100011000101101011111110110001010111110101001010111110110100100111011011000011011001001101110001001011111110001000100111000011100001010010011000101010100000001100011011011011010011101011101000011100011011010110000000100011111100011000100101101101100111000101001001101010000110110110100011110111001010100111110100101011001000000110000001011110111111010001010101111010001111000011111001001001000001000110010000110111001111010000100100000100010000110010001000000110100111000010111101111100001000010100000011011111010100101101111011001110110010000011110111111100001110100110100011001011001100000101110001001111000010110001110001011010010100011000110000000010111100100100010111101011111100110000100100110101100000000101100011111101000010010110010111001000101100000010011110001111110001110010001010000000000110111111010001101010011100100101000010011100101110000000110011110010101110011011001010111001010111000111101001101000011000000010101000110010110011010100110000101011101101111101101100010010100011110101110010111011111010101000011010111100101011001010100000100010000111100001000100001000011111000101000010010011011011001111001000101111000110101111101000000110100000001111111110110000101010010000010110100001001111001100011101110110001110010001101010110001001111101110111100101111010111110110101100000101011110000011011010111010010000110101011110100000000110110000010010010001100100110111000101011010000010001000011010010110101111101010001111001110101111101111010101110101010100111000101000000110010001100001001111010110001001010000000100100011110111000111100001000110100010011001010011010000010011101000001011111101001100110101001001100000100010011101010011100101000001111010011001000011101011101111000101110001110001111111011011001011000001101001011100010101011101110100100010010000101111000101111000101111010000011010010100010100010110000100100101011100010110100111001001001011111110000001010001011010110001101100100000100101111110101010011001110000001001111010000010111101001101001010001100100001111001110011110001110110101110001011001101011011000101001101011111111001111011100100011000001110001000011010111110010001011101001101001000010001100010111111001110111110011001111000101111 +ls320msgs +11011110111100100001111011110100010101101110100110011111111001111010001000001011010011100001000100101000110001000000101101011111111100010000011011000111010101011010111110011101100010110110000000010011010110101110000001101011110000001010111111110100100100000110011110000010011101001000100011011111101011101100101000100100011011001101101101000111100010101000010010000101111000101000010101100001010000011110100101100001110011111100001111111101010110101110100111011110100001100010100101111010111111110101110110100001101010001011011111001101000100011001111001101000111010011101101100001100110111010111110100100010000111111101111110010001101000111011111101011000011010001110110000010110101100110111100101111000101101001111110011000000100001001000001000010111100001101100011101101101001111010110010110100100100110110111101001111110010110111011010001010010110101000101110101000110110100010101010001100101001100000011000011100000100001101000000111111001100000111010000001110011001011000111000101000000110101101000101111111100000101001100010111010001000001100000010010011010100111000111101010011111011011000100001111010100101011110110111100100010110111110110000001001101100111101110010110010100001101011100111100111001111001111011110010001100010101110011011010010011010101111000011110000100001111001010100100100011011011111110101101110101100011110111110110100101101100110000000000111111111011000100011010010111000000000011010101010110110001010101111100111000100110001100000001001011010101011001100100101110011111100010101010001000111111010011011111010111010111000011111101000011000101000111001011100110011100111001111011000011110110100011010101010110011100101000011101011100001000000000011111010110101001011100101010011010100100010110100000111001001100100000010010001001100100111111110111010011000111010011000101001001011000111100101110100111111101100010001100011100101011000010000001111000000111010110001101101010001101111011111110111010001101101000000010110101101111010001110101110010010001001000110110000110000111101100001100100100011000001110000010010100111111010101110101011000111001001011110011001000101011001101010010110110100111101010101001111110011110001101101100011111110100100011011000100001001000010101001100001010111100001010001011011001110000000000000001101111001100011000111111111110111011111001101001110111101010101000100010110010100000000000001100111001101101010111001110100101110010110010000001000111100011011001111101110000100001111000111010110001101011100100111101100100101111111110010010010110100011001111001100000011010011111000001110101101110000011000101011100010000010010000100110010111100000011100000001101000101110100101111111011011010100001110000001011011100110001100010010101010001001100001100111100101000101010000011000100101010100111010010110010111111010101000011100111101000001011100111111001001101111000111110101000100010001101101010000001111100011100110011010000101000111111010100000010100110101001000010100100010011110001000010111000101110111100110000100000010111101101011101001111011111001000111101001011110000001100101100001010011101000001001101011001110111111111101000111101101000101101110100010101011110000110110010101010010000101111010011101110001011111101110000010111000000111101101000000110101110100111110000011001010101000110011000110100010101110100100101100000110101100010100000011001111110010100011000101010101111010010101111111110100100011010000010011111011101000000101011110101100001110000011101100011010110000001001000010100101101111100011000101101011001100111011101001001000111010110011001110111000000111100000111111111100011101011010010100001111111100001000111111000101001000101010000010011000001001111001101101110110000010100101100010000010000001010011011101111101011111111101110111100101100010111001110011100000001101011101011000110100011010110011110100000001000000100000011000100101111000001111101100011110101110011100101101101101010011000100011010011001011110111110110000111010100010100111010011000010111101010110010100011110101001001001010000011110101101110111110011101101101110100011100011101111010010101001111010000010111111110000000110111001011001001011110000010011101101000000110111011011011000110100011011101111111110100100101011100100000101001010100110000111111100100001111000010011001001011010000011010011001110111000111010001001011100000001111101110010000100110000000110101000011101000101101010001011001001001100000100111101100110001110111000011010001110001111000100111101001100011111111011010010100011011101011110110111001011010001110111010111101111011101100101101100100001101011000100111010011001101010111111001100000011101011110100101010010000101010101100011000100101001011111011100100110011001001000110101100011010000101001100001011100111001100101010010111011010011111001011100100001011000011111011101000001010111100011111110101101001101101110001000001100010100110110110111010011110110110110000000100111010110000011100011100110100100110000111010001110100010010101011011000010001000000110100111111101100110010110100000111001101100101110101011100111100000100001101111000110101001000010000100111100101111000001001011100110000100101100110001001011110111011110001111101111100100111110001111101010001000000110111001001000010100011111111101001000000111010001011100001110110011111010111011111110000010011101010100110010110111011100111110010101011001111100010001110110111110011001110101011100100100100001000101010101000010000101011100000001011101111101110110111101000010010110011110011001011011101101001000011101101011111010001101101001110001101100110010001010100000110001010110100101010110011110000010001101010101000000011110100011111101110100000000110010100010100111001000100110101000110011100101011110100101000100011011011010000101000101001000010011110110101100010101010101110011111111011000101011010110011100010111011111111001110100100111000001011111110100110100001100011010010100010111010000001110001000011011011010011000100101011100101101101100010110000111101000001110110110011110111101110110101100111110011000001111111110010001010010111111010000011101100110011010101110100011000110100100000010011011001011011011101010101111100001100111100001011110100101100101111010001110110101101111111011111101111011000100101110111011100100100101110111001100011111011011001100011001010000110001100101101101110111100011101111001110101110001101010111000101101100101110010011011000010101011111101110110000000101000010000011110001100011110100111010100000100101001110011111000011111001011001010111110011100001011100100001100000101000101100010110010110000010100001010001010111111111101110111000011010110100101001011010101011001110001100100010011000110001111000111001110000100010100010111001010001101100000011001011111010001101111100011101001010111110010000011110100011111101101101100001111111110100011101111101001010010011101111000111111010011110010011010101101101000010100111110110001001010100101011111101010111010110111000110101000110000111010111110110101110101010010111100000011110101001101100010111011010110010101001011100001001111001111101100110110110001101010001111000011100010001--------------------- +01111011111011100011101000101111010000111101111010000000111110101101111111000111000010101100111111101110000011101011100010100111001000101101000111100111011000011001010010000011110110100101100000110010001000100100011011010111110000001111110010001110000111110001111101010100001111001010011100000010001110111111010100001000001010011111100100000100111100000111110111010111001111001011101100011001011101111001010110011010100101010111110110001101000110010110110100101101110000001110011110110011001010010011010011000101010100100000010100011000101111010100111111000100000011100111101010111100111000000010101000011101111110100100110011001111000001011001001101000001000001111110001000011111001010100101000101101111000100000100101010001110000000010101000111011110010100000110110101100110111001010111100110011001001110111001000000101101111101100000100001110011000000000010101110101100011011111010011100011110111011111110110101101001101001000110111010011110000001110101000100100101010110111010001001111100100000111101011001101010110001010101110000100100110010001001101111111110000011000011010000001010000110011001000000011100100100111111001110000111111000101010001000101111101000010100000010110110011101110000110010111011010100000000010001101000101001100100111011100111110010110110110101111100110001111010101100010011001111101110100111110001110010001010000101001110011001110001011000111000111011101000001111011101001100011011111011010001110100111110110111001001111100000000000010101001000000110101101001101111001000101000000111111101000000001110101010000110111100100011110000010001000101010110100011011111000111000110001001000110101101011100000100111100010010000010110100001111111111111100010010111001111001110110000011111110111110110100011000111010011110010111110001010000010010101101000011010111001010001001010000110011001111101001001110101010100111101010111001101000011111100110111101000111111001111011011110011111010000101110100001010101110001011101011100111001000001010100100100011000111101110010001100100000111011000000010100000010011101001110111100001110011111010111110100010101101011011001100001110011000111111001101100001010110001101000110110000011110111101111110101010011100110100000001101000000000000101100111110111111110110111010010010001101001110000110000001010000011000011011111010100111111000101000010101010001101010100000010111101011001011101011000100111011011100010000011010110101101100111010101011101101001000001101100000001001111100100000010110111110101001000101010000010010001111000011110000101010000001010011111110010100110110000100001001010101001111010110110001000010101010000110001011111010110100110111011111001000011110000001101010110010011110001000010010101001011100101001011001010010010001111100100111001111100110000000001011001011110100111111110100000010100010001000011100011010110010110010011100000111010011010100111100110100111100011100110001001011111101110010010010101001010011011001111111010100010011011011001101010010110110010011010100000000110110111110101000000111100000101111001011011111100110110010100100000010111100000010010010000111110110000001001101100011101001110000011100111110110111010100001100010001100110111100010111000110010001000011100100111001001010111111010111111010001000001011001111010101101101011001000110100101000101000000101111011101100001001101111111101100110010110100011010000100100110100001001010110001000011001011000010011010001001100100001010100010111011000000001001110111101000100101010111011010001011010000101111111101011011111110011100001011001110100011011101101001011011000011000100110110100000010110111010000110100001010010010100100100110001100011011100011110010011000011001110001101011000011001111110001010010101110100110000110100011111001100000111001101101001001011110001001100111110001001010110111101010110111101000111001100111010100111000100111111111111001111110000110000100101010010110110011111010010010101101000001101100010011011101101111100110011101101111010000011011100101001101100101110100010111100011010011010111100010101000000000001100110110011001110110001100001101011100101001010001111100011100010110100100000001000000001101110011101111101011010111001001001011111101101100001110011101000100010101100000011111000010000100000100001111101110001101001010100101010101101000011101010001010110110000001110110101010011111000010010001011110011001101101110101010011010100101100110011100010011111000110001110101101101000010011011011101010000110011110100110000010100011111101100011111000001110000111001100100111000100011101010001011110011100010110110110010010001101010100010010010011010001101000110111001111100011111100010000111100100110110000110011000111100011001000110011100101000110101111111000100001111100001100011101100001011101100000001110100111111110001111011011011011111010111110101001010000101100000110000001100011010100000010100111000010111101110001100111011100001000101110000010000100001011000011001010010001101010110001010111000110011100011001111110101100110010000100101011000001001000001010100101110001011001110000111010101111001110111000100111111011001000101010111011011101110000010101101011111011111111100100011010000110101111110101001001100101011100011111011101001111000110110001111110000100110010100011110111001101111001010111000101111000010011100001111001011010000000110010000011100011101111000011011001100010011011010110111110101111101101110001110000001111001100100111111101001110110000101101111010000010111111100101111010100111111011111100000000100111000000100110111011110100110011111111101100010001000101100101100101101101011100111010001111010100101110001101110100000111110110110111011100110011100110110100011001101001010100001010011101101111111100010100011110001011110110100101101001100110100000110111001111011100010011111100101110100110001110000011110101000111000000010100010010111110001100001001001011111001100101011011100011100100100100001000110110101111110100010101001110110011101000001010111010001101100101001011100001111000110101001000010111001000100010010011110100011001010000000011001010000001001100100001000001011010101010111110011001100111010101101011011010001001100000010101011010010011111010000000110111101100011111000100000111000110100111010111001111101000000101110011001010110001000111001000110110101001010001000010000110111110111001101001011110001011000111110101010000101000011010111110100000010101010001101010010101001111001110111111100101101110110110010011010011000110101111010101000011101001000001101100110010010100100000100001101000011110001110011101001111110100100101000011000100000001110001101110001000111010010110110001010101011111010100001001110010001001000101100001101001111000001101001111110001010001000010011010010010101001001111010000101011001101111110001000001010001001010001000001100001111011111011010101011110011000100111010110001100001000101111011000011101101101110101010011110011000010100110100010101010110110000001000110000111100100011111100101001010111011111110101110010000110101011110010111010101010001011000011000001010010101000011110100000100001011010000011001100000101110010000001111001100101111100101001111111--------------------- +11001110000001100001010111011111110100110110100100000100101001000011000111100101010010010011101011011001110100001110110010000100000000100110111011011110010110011011110100000110000111111010111001101101110101010010010101100100101010001100110000000011011111100111100111101100101010011110101101010011001001010011111001100010010110111000101110010001100100110110001110101100000000110010011100010011001000000011101000100001101011111110000101110001001010111111111000000000000000110111011010101010101100100010011101000110110111011110011001001110011000110000111001111110101101000010100101110111011000100010011000010101000110100001100110011100001111001101101000011011111001100010010011001000101110000001000011011110110010100111100000010000001110100011011000111000101100110101100011010111110101111001011011111011010110001011011101011100000100011110001000110010100001110001001001110001000010010010111000000100000100000101101111011101011111101110010001001110100110001010001100011011010000001111011011101100001010110000111101110010100101011111100010000010010110101101010101011101000000100111101000100010011100111110100011000000011001011101101111010011001110111001011101100111000000100000011101001110111110110011101000010000111010011001100010010110110101011000001111111011001100111111100001111010010110100010101101100100101000000111110101100001000111001001010001000000011010010001101110111011101110100110100001100010000101001111000100011100011111110100000001110101000001100110010110110100110000111011100100101100110111000100101111010000101001010110010011001010011010000111001100110101010001110010100001111001001000001010010111110101111000110010011010000011110000111111111010000111010000011011100100101100000110000100010011001111111000011110011011101000011101011101000000011000010010000100010010111001011101000010011100011010110100101110111001001000111110110010000001110110011111011000101101100101100001000111001001100111100101001101000010000101010001111000011000010100111000011011111110101010001111001111001111010111000010011111111101101011010101100111000010011101100011110001111010010010111111100110111011000011101001100001011000101101010011111011001001001010111101111001110100100111100110100010001100010010100110101110111000010000111010111101100100111111010111110100101101101111011010010100010011010100100100111001001000011111001001011010100001001100001000011100101101100011010011101000101101101111110011000101000001001101010110110010000011111001100110111100101110110100010111101110110111011010111111100101100001000011100111110000111101011010001100010110001011101100110001100000011001100101010001010110010001110111111101010111010111010101000100100111110001011101110100110111100011011111100010010101000001000001011010101000110000101000110011011010101001111010100100111000100101111001001010000010110100001001000001010100001000000010011011100000011000110110111001100011111111111111011110100010000000011000000111110011101011100011001010111100010101010100100000001001001110101011011000010000111000001001001011101101000011111111000001000001011001100000011101111100100110010010111110100100010010100101010100001011110010111101111100100010001110111111001000000101011000111111110000101101100011110011001010111110011001101000011111111110111110011000000110101000011001100101000101111101000111101100001110110001010001000110010000000100111101011010011111111011001000110111111000110000111010111110100011111100011001011100011101100011010101110000101110110011111001111101011101101110101011010010111001101101001111011110111111101111010000010001100100101100011001111100010011001100001101111011101000101101001110001110011110001111110111101100111100111100010011010010011000011100011011000101111111000001001111101011000101001110101111011001111000010010100110010100000101010001010000110000111100101110101000111010001010000011111101011000011000111001001111001100111000101000110000101100010101101111101011000100010110111111010100101000001111101010101001111011111001011110111001010011011000100101010111110110011110101111100001010110010000011111000010101001101111010000111101111001101000010100110011001110100011111100110010000110010110100001001111011110110101001001010010010011011010010010111111010100000100110110111110101000100100111000010001011101010001111000010101001111010101000111111010010000001001100111000111100111111011000010000111010111110110110011011111100101000001000111101011110111100100001011010111101101100000110111110000000000001001010010000111100000101111101110001110111010010100011010010000001100011110111100000011011111101110100111010111000111001000011010101101101110011100000011010111110000111100011010011011000101101010110110111110111110101000001011110100111111011101101100011100111101010101110011010011101100000011010111000011011010110010110100111101000000000111111000101010110011101010110010011010101001101011111010000010001011011111100010110111010110110011100110011011011010111101011010100110010100100011110110111100010100001101111000011111101100111000000011011011111010100000010000110001100001001011110110001000101011101110101111100001111010101011010101110001110111100110010000110110101111001100011110001001101100101110001100111011011010111100010111110100111011011100000111011000110011000111101110101100110000111011000100001011001110111111111000010111101001100101111011100110110111001110000001001101011010011000010101111110001001000100000111110110001101101000001110011110011111111000011101100010011110011110101010010000000011100110111000010000011000110100111011000000000000010011110111111000010110000010110111110100010101100101100110011111101001110000011110100101011011010011100001010001010010110110101100010100101001110010000001110100011110101101000100111100111000010001001001000010110111010010111000111001100001110001001101110101011000100011101100001100010011110100110001000101111001111011010010011101100101111101000111010011100100010010101111100110011101000010011111100111001001110110000001111010100010111000100000000100111001111101110001010010101011011011101001000101110011001000111110100010000010111111011111110111001010100010110011010011101000111000000001011101110010111011110001101000110100110011100110110111011101100111001101001100001010010110100000110010101000010101010111000100101000110001001011000111101111010100000100101110011100001010001000000010011101111100000110101101100001101101101100111111110111001000100011101110010011000110111101100110001101110110111111000111000000000100001000101001001000110110000001011100111000010101011000111011001101000111110010100001000001000110010011011101011111100101001001000101101100100100001111101111011101100010110001110011000001110111001110101110011110001000001111100001110100101000111011111011110100111011101100000000010010000001010000001000001101111100110111000101101100011001110111110011100000101010110101110100111000000010010111101001000111000110011101100001001000011011100111011000000010111001100000101011101000111010101000100111001011001000111111011101111000101101111000010001101001010101111111011000110101111010011100001011010001011001100100010111110000001001111001110110110111011--------------------- +00110111000110001111100000010001011101111011100111111011001001011100100000111011001100001011110000101000100001100001001011001110010101001110111011101000010100011111000101100100001110100000011011101101011010101000101011111011000111010100000100110101100100011100101101111010011110100111100010000101001001110011111101011110111000100011000111001001110010010110010111001101111100110010111011101010010110110100001001111000010010110111001001010101110100111010100110110010101110100001001111010001010100110100010010000110011101001001000001000111011011101101111111100001011101110110111111001111111000110001010001111100000110100110011010111011100010011001111101101001010011001011101110100011100001011000111001110111001000110111010101100001111001010110101101010100110111001010100001101101101000000111110101001100010000110101010011000101000111100001000001100000110100110111101110100101001110001001010100000100100010000001000100110011000011000111110010011110011000010110000110011010101111100101000101101101100010111100111011011000110010110011101010011010011100011001110000111110101000000001100010100001101001011101011010001000101111110110011100010110011100101001101011001101101100001100001011100010110101000110101001110000101100111110111100010101000011000011111101001000100110100001000110110110101001011100111111010010100000001000010000011001011010111101111011100010011110001001111010011010001001011100000100000100110011000111000011111011110111100100111000100010011100101011011100110110001010101101101101010111000101001110011101011001001011100000101100010101001011111010000010001101100001010111000000000010100011101010101000001010101110010101100101010111111000001010111101011011111101010010010101100100111100001110010010000011100111101111100010010010011001110111101001001010100011011010111110110011000101011001001011001000101001111001100011001010100100000111110100011000011100010101001011101100001000100101101010110011010000101000110001101010100111000101101000100001011100110111000000000100011100100000100110100010000001000110100011101101011101110010100001110010111011011000011101111101010100111001101001001000101010000011000010111100000011100110101010010101000010001010100010111001101011101111010101001000001110000000111000001010001001100011111110101000011110110001100110000101100110110111011000010000101100010000010111010011110011010111111100100110001110100110100111000111001000000101011110001010010011110011000011010101110000011011101100011011110000001101111010110000000011001101011111101110100101000010001000100001110001111111100111111111010001110110011000110000110111001101011011010111101111001101110110101011000111000010111010000111110110101010100011010010011011100000011011010000000000000011000001110100011010010100011011111001100010111011101010001110000010010111011011100100010110010110000000001101011110010010100100011000100011100001001111110100110100100111100000010111100010101010010001000100111000110100001100100110010001111011101010101001000000110111110111010010010011010010100100011011000000111101001101110000101001000100001001110010001010100101100001011110110101100100000010001111100100001100111111100100111000101000101011101110100111100011111000110011010100100111111000110110100000101010101100011001101110010101001001111011100011110010111010010001000010011111111111010111111000000100100000101111110100111001101011101101100111011101000101110001110011000100000000100111001011000001001001111111111010001001100001001101011010011100100101010011010110111000110101001001100011000001000001011110100000000110001110011010101110101010001011010000000000100001010111001101000011010000011101110011000100101000100110001000000111110111011101011100100000110110010101011011110100111100110110011100101100101111100100100100000110101111110001001101000111010110001000110101010011100001000001001010010100010100000000100010101001110001111000111001110010101110101011011100101101100110010010101110000011101111110010001000011111100100111100011101010101010010101110000111010111100011101101001110001010011010000100010100010100101111011010111000010010110100100010101010001110010001010110000101011001010100011001101101111111101010000101011010101010010001100001101011010110001010011001100011101011111000011011001010011101000110010100101100001100110010001100011110000000001001001111010101111110000000001001101101100010011010011010011010101110010011110010100011110110101000001110110111110111100001101001000011011010011011010011000101011010000010101111000101110101101000101011111000111010101001110100110111000111000100110111100010101000001101111100001010011101100011011001011111111000101111111101101101001011011110011111001110011110101011111101001010001011111110100011011100111000010000101010100100100111111010101000010010001100111001111010010010111010010101111100010101000001111010100111000001111101101110110111001001101001111101011101010011101011000001000001101011101100000100001111001100111000110100101000011001010001100101000110100010001100101101001001111001001001100001010101011111101000001111001000000010001111101111110110110110010000011111100100101001110011010000010111101101010101100111010001011001111000010100011011001101111100010110101010010001010111101010101100101001010111110110100101000010110010101111011000011011011110100001000011100011000001101001101110010010110111110101011101111101000001101011101011001010011010101001010111010100000111100100111111001100100010000010000010010110111110010011110010001110110100101010101100000100010000000110000010111001011011001000111010010010001001011101000001000111011000101001101011101001101110111001010011011010110100010111110111011110010011110011101100111101001111011000001100111001010110101101001111111001010011100001111110010111101001111111101101011100011001100110100001010111110011011101010101100011010010101110010111100111010110101100001010111000011011100000101001011001001101001111000110101101101011100000100010000011110100011011011000101000100000010100011010000000100110111100001011101011011010111011111100011010011111001111101100010101011001111001011010100111001011001010010000011001000010000001110100101001000110001010010111000010011011010000101110111010000101000011001010110011111010001110101111000001111100100101100101011110111110000001101010111001010111101101111010110100010010010111111110001001111000111001101000110110000001111110110101011011000110010101110110011001111010011011111010011000100000000100101011000001011010011110011001001101101010110010100000101010011111110001001001001111011111011001001100001010111001110111010110001110010010101110010100101010010111110101110110001000011110110011000001101111000101100110101100000111110000001110001111001011111100000011001111001001011010111111100001011101010110111010101110000010000010000010111110010111001010100100110011110110011011100101100010101111011110111111111001100000100111100110010011000001110000001001010111010001110010010000010110100111111001010111100010110100101001110100010010100010111000010101101101100000001000000000001111001101000110000011010000001000111100110101000000110010101000000001011011000100111100110100001110110111011--------------------- +00111011000110100010010111100000111000100111111101111110111001000010000101010110000001000100010001001011100111100011001100101011101101001010101100010011101111000110011111001010010000001101110011000011110011000100011011110100101010110001010110011111111011110100000001110101001000110100110111011111101010110111111111110111101110111001000011011001111111010001001001010110001101011000011101011011001110111110100011010010111110111000000101010001001000100001111100001110100001100010010100111000011110110110101110100000100100001101001001000100011110110100000010011101111100110111100101000001100111111111101101101101000111110010110010101011110000011000110000110010001111100001110001111111010010101110111111110100000101011111000000110110010001010001111110011010110010111001001100111110110010101011010001001101000010000011111100110001000101101000111000110111001111000100010101100010011100010101011111001111111011001110011110010101000001010010011101010000101001101111001111110101000000100100000011100001011011010110110111010010001011100110111100011110100101000101110011101100101100100011000110110111011000000101101100110111000101010110100101100100011010111110010011011110001010111110110111110011001111011110010100000011011001000110101101111011011100110011011100010100011100010101000101010010011000000101011010000001101000101010101011110001100010111101010110101010000100110011011000000100110000101000111110010111011110111011011011111110110111110010100011100010010101011001110101100000101010111111001111000110000011110011101010001000110011001110111000010001000111111101111000110001110100011001001100001101010001000010101010010010010010001000110100110110000111101100000000010101000011000011011110100000110101100110000101101110001111001000000110001110101111001011011101010110001100111011111001001010010110110100010111111111100010011100100100011110100110010111010001010010011001110000110110100010010101010101100001110000011110000001010110110010100011000100001101000100100001101001111100001000001011001001100111101010001000111001010000000100011000010110000101010010001101111101101001011011001111000001110110000101101000000010011001010001000101001011110010010010111000101111010001100001000001001111011001100101010001010101001100101010111000010001100010111011101011010010100101100111010001010101101101010010100101011011110010000001101111101110011011001110010111111110110011011100010001010110111101110111110111110100101011101010000000101111010001000010000000100110010100111100110000011011001101011111001101110101011010110101000011000110011011100011110011011101000000011101110010111001011011100010111011000111000010000110100100101001000010100001011001111010111010000110011111101001110101011110010100100101111001111101000110111000001010110001110000111010010110100100110100101111010111001000111010101010111000100001110101111111011101111101110111000011101100011111001001011000001100101101101110100100000100100110111000011001001011000001000001110111100001111001010010000111001101000011001011101010111100011000010001110001000110101010110101101000001011111111101111101000001001100101000100000100011101101001111100010001111111001000010111110110100001000001010000011111110010000100010010000000000100001100001111100011010101000110110101110100000111000101100010000011111001011001001001100001001011000111010000100001001010110000001001111011011001101111111010001111111010010001001110001111110011111101000100001100101111010010101000000100111111011000001101100010001001101100000001100100100101011000010111010100111110110101001000111101111110000111000110001111001010011111001010101100111111101101100111101000110110100010001111100100100001101100011011011111101100001100111001011101010100100111010001110100101001001000100101001000100001101000010110011000101010001110110000100111010000011111001101001111000010011000010001001011111011001001101001101001010100111110101001100111100100110011001010100011101100110010010010000001100100101000110001100010001001010111101110000110111111111010011111100110010001010100000111111001100110001100100111100110101100010000100011011101001100011001011110010000101110011010000110111011000010000011001101100010100000001011100011111101110010100100101000101100101110100111110110011010101001101110100000001111001011101010110110101011111101011101110111001110100110111100100010001000011010000111110011110010100010011011111111000000100111100011100011110100100010110010101000010001101101110001100001111110011010100001111111001111100011101110001110100011110101110101001100110111100100101101010001111101110010011011111101000100110110111110110011011001000010111010110000110110000011100101100011001011111011100010101101101010000110000110110001010101111101110001111011111001110111100110101100000101011001000110001100110001010011001100010110100111001001000100101101011010001110011010000111110110111010011100001110111101101111110110111100101110011101100101001101001011000101101110011110010011110011111010011100000000101101000001101000111111011111100111000101101001011001110100010000000010101110110110101101111110011000001111000000110000101000010101001000110011000111110110110100110010101110000110010111111010011111001011000001100101101010000101000111101110110101100011101110100010110010101001110010010011010010111101101111110100011101011001010100111100010110110111101010101110010000001100101000101101011101111001000000001100101100010100011101001110000011010011100011001111111001011010110011010101011101101101111100011011001100100111110100010000110001111110110000101110010100001101110000100110001101001110101101000010111001001000100001100100011000100010110000010100100110000001011111001111001001101100110011111011001001000111111011100010010010101111010110110000111111100111100111011111101010011011000110100101100001010010000000010011101001000000111101100000110101000100101110011101011001110000000011011111110011001111011000000010011011001011010100110100100100011111000011110001001001100011001111101001110001000001011001110011101111000100110100110001100101010000001111100000001010000110000011100100100000110101010001110011000011100010101001011100000110110100101101100101110011000101111001100100000110010100101001011110000011001000010111100100001110110101001111000001111001001100010001110110111011010110001011000000101000111111000011000011100000110110010101011001001011011001111101111101111001010101111111000000101000010101110111011111000000110100101000101011000001100011011000110000110100010111000011110111001010100111110110111000010000110110011100010110000110110010101111101000110001101110110000101101011111011011110001011111000100001001101111111001100001011010010100110111110101011000000011101100010000111101010110001001010111111110000100110000011011011000110001110101010010010000011001101100111101000100010011000010110110010110011000010011111010100001010000111001000011001111001110010010110101011011111001101101101111110000001011100011001001010000100000111111000001111001111101010101111111010010111001001010110100000111011011010000011111111111000001111010010111010101000100101001001111011010010011100000000111101111111101111111111001010011011--------------------- +01100011101111001011110101100110100101100011100010100110001111001001001011000100111011111000011100001000001111110010111111010010011101001111100111001011000000101110010101110101111111100101010000000101000000011010000111100110011110010101010100100101111011010101101100010110100000110011110000111000001011101111111100100001101010100000101000010001101110101001000001100111010001111000111100110010011101101100111011101010011001101111101111011110000100101011010010100001110111111011001111100000010010111011011101100010000000110001011100010111111100110010100011110010001010101111011000111011001001101101110010101110111110101111010110101111011110000001101111101101110110010010100111111011101100110010001010011010111101000100110100101010000100010010101101000001000110101001011101001001100010101001011100011100001001010110111000101001110011110111000110101000101011101110110101101001101110001100000110001111110010010110001001101001011001001000011011110110001011010001111010011111100000100100101100110101001111010111111001101010110101110010011110100111100111000100111000010110110001111110101010011001101010010110100100101110010001000110001110001111001101110011010111111000101000101100101100111111111011111011100010100100011100101000111010010010100001100010010011110010001100000100100101000010000110011000110001000101111110000011101111110001110100111111101011110111101000110000100001111111011010101110011000100111001101000011000001101001110100110101100010100111001010100100101010101001010000100000100100000101000000100101001110101011110011111000001111100011011011000010101101101011110110001010010000110001011101110100010101000101000011010011110101001010010100011111101101101110101011000011011010100011010000010100000110111000011011000011011101100110010011000101111011000110001010011001010011011001010110110011110101000101110011111110100000011001101100110100101001010101101011000110010111100100111001101111011101000101100100011000101000001000110111100011000011001111000111100001101111100111110111100110110010010100010111110110101000000111111000010110100101111011101101001011100000011010101010111100100100000111011110100001010111001100001011000100110010100101101001110011101011011000111101001110111110010001001111001000111010010110111011100010001110010101010100011110101001101110110010010001100011001111010101101001000000110001011001001010001111010010100001111011101011011111011100001001010011110101000000011001001011000111011001101111001111101101011110001011111010110010001110000000110010001110111000111100101101111000010111010101000000101010101111010010100010000111100001100110111110010100010011000001001100011000110000110111001001110110010111101101011001111111100000000010000100111111110111010000010010110101110101010101000100010001101010001011011000001011100100000011011100110011010001010011000101101010110001110010111010111001101100000000000100100110110110111101110111111101100111111010000010110110000010000100011100000001000111101111000011110110011110010100001010111100100011000010000101001110011101111101010011011000010110011100100111110110100000111001101100001011000100000010111110001000101111100001000101101110000001010101111100100011000110111001111010011010110101010101001110111010101011011111100011110111001101010000010011100010000100011000001000010000001111101001100111001011010100110111011110000000100100011101101101101110110010001101000111010101100100111100101110000000100001001001110101011000100101111001111101101100111100010100110011100110000101100110001011101011011001110010001010000011111101100110001001110010010011110100101010110010111010101011110111011000101011100000111110111000010100001101110011011101111011101010100110001011000011110001001101100000110011000110011101100001110101111110100011111011100100000000101101000111001101001001011011100100100110011011100001000010110010100101111100100011011011110101010001101000011001010001101001011101010010110110100111100000111010111101001101011001111101111001001011111111000010001011100011100011111010100000100100101111001101001010100110010001011000111000000001100111010111100111011101101001000101101101001110000010110101000011010101010110001011111011100011000011111000111110111010001110001100101000001101110110010010001001000010011001111101100000110010001101001011111111110001010101000111101100100100010001010111001011101010010001010101100001100001001000000010110111010010111101110100110001010101100101010100100111000011011011110100111001110011101000010011000111000100101010010101000110100110000111110010101111011100001000110110001010100011101001101110110010111110101011100010100100000011101000011011010010011100110100000010001011101100010100011001000010101001011010101011001100110100110001011000101010001001100011000000010010001100101110100011011010110011010100101010110110111110010101101000001001110101010011011111101100000001000001101001001111101101001110100110100100100011111111010110001000100101100110100100101101111001110111000001000001000000111011111100100001000010011011101000001001101100001000101100110001110001001101000001110010011011011100010010110101100110101111000100100110001010100010011000110110110110000101001000000001110001101110010001011010101111011011001101001110010100100110101001001110011011000010011100100110011100101110101111000100001000000111010100011001011100111100110100011101111100100000000001011101011110111000000110110011000111110111101100011000010011111000110000011101101000100010011100101100000100001100100001100100001000101000110001110001001000001011100000000010011101000001010100100110100010101100011011000011011101110100000100110010001011001111110100111110000110101100011111111000010011101110110001101000110111110001110011011110000100001111011100110010100110110110100010110101101111100110110110000100100000111001011111110001000100110001101100111001110111010111111001001011100111100111000101000101001111101011111111010110110100100101100100111100101001110101010001111100000000100011101000011111011111011110111011011110000100010001011011001111110010110100010100101010101111110011010000000000101000011100110000011001000011110010011111000110000011100101010011111101000111101011000001000101001010100011011101111111000110011010101011100010111101100101011001101101110111011010010101101111000111000111000011010000000011100101001110101111010101010001010100000111000010011100000110110000011100000110101101000011111001001111101101101111010011010111101000001000001100100100011011000010000010100100110110100011111100101001110001110110010000010111010101111001100000001100000001110111100101000011001101111110111100011100010101000101111000000011001101011100111011111000100101000100011000110000011011011010010001010000010110111101100100000111000001100001111001110101000111110100100100011010100010101101100000011101001011001101000000000001000011000110100101111000010001001010110011111000010100010011111001000000010011001010111111111111100110110011110010001001001100010010111001000001001011000001100110011001101011011000000101110011110101001010101111010110101111101101000100001001010001001010010100111111100100000110110000111101010011000010101111111000111--------------------- +00100001010011001011100110101000000001110000101010101001111010101110001000100101001010100001101111101011001100111010101011001100000000010111000111101010111010110100100011011110001010101000010011111100101000100100001011100001111110001110001111001000100100011101011001111010000000101110100010001101001100000001001100011001011001110011000010000100111001011101000001101001011001001110010111100001010110010010000001101001100000011101110100101000101011011010011000110110111101000111000011101110101101110111001111100001011110100000100010001001101000001101000110110110000100110100001011001110101000001111100011000101100011001100101100001010100000001000001000011101000110001111010011010100001101101110011000000110011100001010100100101111011000011001001111110001011100001111011110111011011000100101011110101001011010001010000111100110011011010011100010101010110011011011100111011010000001111010010100011000101000011010101000011001010100000000011011101110110011111100100011000011001000000001110110101110000000100010011100011010100001101011111011101001010001111110100100101011101000010001001111000101111010010110011000110100100110001111011011110101100101001110000101000100000100110101001111000010100110100111000100110001011111001000001110001010101001001101001010111100001011111100101001001010010000110100000110111101110000101011010010101011001010011100100001010000000000101110101011000001111111111110101101000011001100101110110001110111010101100110010101101010101011100011111110100101110010101111111101011100100101101000010000010011100111001110100000110000111101110011000110111101110100011111110111000101101101001011111100100010011100110000011010010101000001110101110111101011011100000010010000001010101000000011011110001011110011001010000000000010110010110001100101110010010101110100111101011101011011010011010100001010100110111000100101101101110010011000000000101011110110101101100011101001110110001010111111001000000111000110011011100100101010000000001000100100011010101000011111010010010111100110110011110101100101001110100000101101010011110111110110111011011111111001110010000011111000010011010101111110000111000110101011101010001001010111010001000010001101000110110000110011101010100110010110000000101111110110001010111011101110000101100101000001111010110010100100000101011110000100010100111011010001000001101000010110110000100110011010111110001010001111110110111000010111011101000000110101000110001111011000111101000001001010110000111010100010111111100011010011010011110011100000000110101001001001101001001100100011011111011001100111101001110101001100111010101100011100010110100010011000000000110010001010010011111000100010010011111111010100110111010100111011000001110101001011000011111101000111010000010011101010111110110101110001010000111101010111011110111110000011111000111000010011101111101100110100000001111000101111100110001111110001101100001001101011011000001000011011101111011110111110101000001001001010001110111010111111011100110110111001000100111000100000000010001101000100010101010101111100010101001011001001110101001101101100011001101011100001100001110110111011000111000000111101111010100110011000110101101100111110000010110010101001111100010101101110111000011101011101101001111100100111000111111000111101111010110010000110111011110110011100110100101000010111010010001001000000001001100110011111100111101101110000101110101101101011011100010001000100001001100111011101001001011100100101000001011001011011001101010000101000100000000000011111011110100001111111100110001100001011011101010000001101101001001000100010110010001000110100001010101100110010110000001101110110100001010111000011000001010001000101000010111001101010001101001011110110111001110001001100011011100010001100110011001110100101111011001101010010011001010001111010000100100110001011001011110110010010100011010100101010000110110000111110010110110110000001100010101110100110011101000111111001111100110101011010111000011001101100001010101000001001001111011111110110010111000101111101100010010010000011111110001010110010011101000111110100100100110011011010101011101100010000001110111001010100010001101001001011110100110010000011000101000010010111111010111100001111001011001000100101110011001111000000011000101010001101010001100000110101011100000010111110100111100010011000111101000010011110100010010001111101001010000000011110111100100010010111001110001001011010001010101011000100111010011110010100111100010010000110101010010000100101000011100010100111100101111001010000110101101011101111101111101011101101000100110110111111010100101101101011011011010111010010001111100001101000010011110101010011000111011000100101110010011101100110111100111110001100001101110010111110111110011100010101000100101010010010111000000000101011010111001111001001111001010010101101011100011110000100100111110110000100001101000000111011011011011010000001010110000110100011110100011101000111011000011000010001000011101110100001101010011111001011010101111011001111100000000000010000111001000010100100100110011001000111100110011001110110010001110101100001110000100011101000111100010110111001100100111000100011111111000011100010000100101001011111100010001000010110110111000000111111110000001000110010100001100110000101011011001100010101101100001110110101111100100111101100110110101011001010101100001110100000100010001101011010110001101000010000010011011110111110110001001011111100001101100100011110001011001001111111010101001110110010100000010100111010000101111100111011110101001001101010110110000101000000111111001010111001000100011011000101111010111000011001000110101000000001001011010100101111011001111000101100101000000011000011110111111101011101110100011110100100000000010111111111010111001111010110110011010110000100100111000100101101000011111101010010010100011111011010000010101010100011001011011010011101000010100110001110110011001111010111010010100101111000100110101111110010011011101010010110101111100100111111010101111001101100000110111000100011000001011101000110001011101001000010111100101110011000010010011010100101010101101001010000111010101010111111010101001000111110000000000100010011000110101110100101111011111000011100010111101001101100000000110101100110011011111100111100111000100101000111000000000011110100101110110001000001100110100001010010010000111110011100111010100011010010110100011010111010011001100101111000100011010000001101101101110000100011101001001100000110101101110011101110011110000111011101001010100111110000000000001101011100000011001100000000100100110000001000011001111010101010101100111001101111101000010111001010101010011010001010000100001010000010011100111000100011110000011111110011100010001010011011001100110010010110111010101001100011111100100110101000111110111111000010010101101110011010011010011010010001001001000111100101001110011110001110101101100110101011111110011100101111110000110110011000000010101110000011111011011101100110110100001001111110000011010110110011101101001011111101010000101100101010011110001011110011110101111111010000010110010101100101101101001101111101001100000001101110111100110101110000001111001101101001110010001--------------------- +11001111100001110101001111000011000000111001110011100101101010000110010001100100100111110000101000111010101100001010100100100110001010111110100111001110111000101011110000010111001111011000111110101101010011100101100011101111111011101101111110001110111010001010101010101111010101100101100001110011101100110000110110100000011111100101011001100011101010010010011000111101101010010011000011110010000001110100000001001111110010100111001011001110111011000110101111111011110101000110011011001101010001010110001110101010111001010101110011100100111101100011011110001010000010000010011110000111110000010100110110000000111101011110111100111101000010111101010000100101100110011001011100010101110101111110011101101100000110001101011001010010001111001011110010101110100111010010111001111000110101000000000111101100011011010011100011111100110111101010001011110111110001110000111011101111011001101000100011000101010101111111010110001101010101111000110101100000101111010010011100011100011000101101111101001101101111110111101000001101000110100000111111101110000011000001001000111001011101011010011011100011001001100011010011100101010010101111010101001110011100101010001111100011111000101000011001000011101011010111011011010100011100101100101100111100000110111100111001010100100011000001000001101100001101110100100011011111011100010001111010000011111111001000100010010001110110110001011011110001001011100111000100111101000010110100011010111011011101100001110000011001001111111011000000010101000011110000001100000101111001110100110110111001100111100110100101000000010110001100100100001011100100111101110100000110010110100011101001111101110100011000111010100111010010010101011110111111100011110100101010011000011100110100111010000101011101100000010111010000011000000001111111101100001111000000001100111101100111010101110010110011001011101110110110111010011001101000011110000101011011010010110111000001011110101111101011101000101011110110110101010001101111111100111010110010001110010101101110001101011101001000000111101001000001110011110000100110101110000010111000011010001100111000010110100111010001011110001000111101110111001000011111111100000011000110000110010000011111010100100011011000101001010111010000100011110101100001100011010001011001010011000110011100110100100111011111000011101001001111011010101000110110100010010101101000111101111001101110011100011010000111001100010110010101001100111001111010111000000110111000111110000011100101111100000100100000000111001110111000001111001101100000101100000011000100000001001111110111000000101110101001101011010111101001000111100100111100110101000010111101000000101110000010100000010011110000111010110111010111111111101101011011011011001010110111001001101010100100100110111011000001000011011101010110101111100101110101111011110001110001010011111111011011100111001101011101111101000010101011100100101011001111001001110010101010101100100010010101001011111011010001111100110001010011101000100000111100000010011001111111011011101101000111011010011100100001011101110100100101100100110111110111110000100011111101110110010011110011001010111101110100110011110101001110010101010010010111101011000000010100010101111000000110001110010110011011110110000010110000100111111010110000101010001001011111011111001110001011000111001110101111000100100111100101110010101101100011000011111001100111011111101001011100110110110101111111101011011011011000111010100000011001100101000010110000010011101000000011100100010110100110111111000110111101111010000011100001000110010011101111011110110011111010000000000000101001001010011010000000001010111100101100000011000011011000001100011111010010010010100111100011111001101001001110100011100011001101111000100001100000010000101101011001010001110000110011110010001100110100001011111010010010100111001010111011011101011010011110001100000000100101111010001000100111110110110001011101001110101101010100001001011011111101011000100110011111001011100010010101001001001110000000111111000101110100100101111010100010011110011110010111000010111101111001011111000001001000111011110001101100100110011111000101000011110101100011000100100101011000110111011000011111100100010011111000110010011011000100010000010110101000011000110011011011101100110000100101010111000000000110101001110010100101111010101011000111001100111100111011010110010000100000000111001000001100101011001010000110000111110011001100101001110101100111110111110110100000111000010100101100111111101000100000110001000101010000100111000111111111110010100001100011001111001001110010101101111010000010011100101011100110010110110101110110100100001110000010110110111111110011100101010100111111100010010010101010011110011011010110111000111000100001101101010101000010011110000111101011111001100010001110110100100001001111101111110001001111111001100110110101100100001101100100001110010110001010111111110010000011000100100111111101010011111001000010011001100110100100010111111110111100011100010100110100110000001011010110110110000100001010001000011110011101001101011010110001000000001011001001110101101100100111010110001010000100010101100101001100111100001011010111100110011101111010111010000010110101001011010001000100011010001110000110010111011110101000101100010000010010000001110101000111100101101011001101100100001000011000001100110011111111100110101010000101000000110000100011001001100011001101001111101110111100110000001001100100011100101010010011101110001000100011010100100100011010001010001100010010110010100100000001001011010110111100000010010001101101101000100010101000110110011101111111010110110110110100011000011011011011101100011001001100011110111000000110010101100101011111110100111100011000001011010111101001101001010110110110101110010000010101011111010110100100001110010011100110111010110010010010111001011010000000100011101100100011100000110111110010101001101011101011100100011111010011111100010001000010011001001001110100100100111001100111110010101101110000110010111001000001111100110001111111100101000011001101101000001110111000101100000100101100011101100011110010111000101101000101000000100001010100111011100110011010101100110000001101101101100111110110111011011111110110101100110100001111110101100001000101011011010011010100100010111010101011011110110000111100001101001000011100010100101101110110101111010010101000010011101000111100111110110110000001100100101111010001101011010111110101110111010001011101010101011000010000010110001000000110010001010011000000001110100101110000011111111101101010111100001011111010011101100011011001111110110001010000001001101100100101110101101100000100101101010111011111111111110100001100000010001010110001111000111110000111000011010001111000001010111111101110101100101110100110011111000101011110110111101010010010000101001000011001111101100101111111001001111011100011001000011000011111100110111011010001011110111100000101101001010010010000000100101010110011011111100000011011100101100011011111011110000111111111011011011001010110111000101010000010101111101111010010001010010111110010111111011000011000100011010000111110010101000101000100101111001110100010111001001101011111011101110--------------------- +10111110010000110000110100111110000001011011111100101001011001110110001010101101010011101011001001110100110111101011011111010101100011100100101101101101100011110111100011111100011011111111010101011111001000100101000101110101010000110100000001110000011100011011001001100110111100100010110110011000100001001010110000010011111000000100101010111010101111010011111100011010100010011111100110000111011011111010001110111001011101101100001011011001111100110100001000011010110101000100010110011111100000000100100011001111000110010010110000110100011100001111000010011110101000011011000000011101000101110111011100000110010010010011100110010010100100111011011001010010000000101100100011100001100111110101000010100011000111001011111010000010110011111010100011001001110111000000000100011101000111011010110110101111001000110011101111001000100011000011000100111000101101100110101100010000001101100100011011100011000110010000000111011110101100100101101111111011000100101010001101010010000110100110010111000010101010110011010111000010100000010101100011010111010110100101010000110011001111000010111101100001110010000001001101101011010111110010010010111100010000011100111011101111110111000000000101000010110110011000001100101001000011010110001011110010010100111110101011110001011011100011001110100011001011110001001101101111100001111010100010101000111111000111000010011101001101101101100100100000000001011001000100100001101010101011110010001111110001100000110110111000110101000000010100011111011000010001100001110001100001111000110000111111111101000111010011001100001010001111000110010000111011011110011010000100100111110101101111000100111110100000110001001100001010100100000010011010110111001100110000101011110101001000101110101011110000111100000011001100001100010001110000010110101101101011111001000001100010000101110001000101110000000010100111101111110001000001101111011010010111000010011011100111101101100011110001000010001011011010111111110110010010001000101010000110011001110001101100101110000010011010110111010010010110101010100010110111000111010001001111111100110011000001101000000101010010011100000011100101001100011100000011100000111010100000111000001110000011011111101111010101100010110111100000101111101001111100000001110010001010010111111000100000010000001010000001001010110100010010110111011011111010101000101110110011100011000110000011101000000110111000001000101101010011000010010011001001001100111000110011110111010011101001100110100100001010010100100101000111101011000001100010010100101101011100011010111111110110110110100101111000110011010100000110010011001010100111011000111110100010011001011000101111001010110111111010010011110000110011000000010000101110011011010001110111111000111001010110101000000000100001110001100110001011110111110101011001011100000011100010001100010111010011000001100000001000001110011000011011100100110000000111001101100001010010001111110001011101011111010011111111110000010111100011000110101001100111001000100100111001001110110111101100110001000110010001010100000110010010111010100001000001110110100010001100010000101011001101110010010110101100011011101100111101110011001111010111100010110101000111100001010101000000001111011110001101110100101110010110111011101011010010011101011011010010100110001011000001111110100101011101110001111110100101011010101100010111101101111001101111101100100000011100111000001011110010011110011001111011101000101100011000101100110000110010010000100110111011000110101010000101110001100101010010000100101101101110111110111100011110001001111001001011110011011110110010111110111110000100100101010000010011011011001100110111010101111010010100110010110001011011101111111110001000011001000101101110110110111110111111011110010101011011011001011010011110011110111100110011011001010000110011100101010011110110111011000011101100110011001110111101101000101001101100011100111001111110101001100000010100011000101111110011010010100011010000000010100110010101110111111100101101001001011101001101010100010100011011011011111111111100011100110110101111010111100011011110110100110010100001001100010100001000010011110100011011010111111100001101111001100010101000110011000001100011111010011101100011101000001001100001101011000011110000111110111110111001001100011010111011110000101000010111100100001010101100110000101110011010011000100001100001010010100110000011111110001000110100000000111010111100110110010101010100110011011010110110100011000100000010110001011000001011101110011101101110000111111000000100111010011010011101000011010110011000001101001000000011001110101001000110001101010011000101001010001110110000010100010000101011000010001000000000010001100000001101010011011010001000101100010111000000100010010000011000010101010110011011110111101100000100100011111110010111000011011001110101110001100000111011111100110100101110111010001110100001010011000001110011000110001001101011100110101101101011110101100101000000110101110101101110101110010111001000101001110111111000111010110110110000000011110001010111000001101011001000101001110001011011001011010111010010101100010010111010101001111111010011000001011100011001011111010000011001100000000011000011000110100011001110001111001001010101011110010010010010010110100011010000001100111111111001110101110011101000001110110100010101101111000001101100111100001111100111010110011111011101100101001100111100110110111001001001110110100100010011010000000110111110011101001000001101010110110001100100011101000110001111101101001010101001110000110010001001111001011111010100100011000011101000111011111000101011011000111101111111000000100001001001001010000011010100101011001101101111111001100110011000100100011100011011101001111100011110100101000111001110011010101011010000111011001101011111001110010101100000101110101101110110101011000011011011000000011110001001000000001111100100001100110111111100000000011000111010101110010101010001010101110101111000010011111101001100100010100010011100011110001100011010010100111101111101011010010011101011010000001110000100001100101110010100000010000000011011111111101111110001110001101001110101100110001000100001000100111011000100011010111001010111110111111010011001001111111010001010110101010101010000011110011011000001000010010001000110001100111101111101010000010100110000001000110110000011101101111010100100000000000000010000111001110010111000100111101100000001010111101111110100100111111001001011011110100101001110100100100111010101010010011000010011101000001111000000001111000000010001011010100111100100110101011010000110101001101011001110101001010001101101000111011011000011000110101100100101010000111001100000110111111001101010000011110011001111101100110011000110010101101101001000110001100101111111100011010011110110010011101101100001001110001000100101000011101001101001110111000101100110111101011010111111110000111010101101011101010010101101011111110000101010011011101011000101110100110101110100111001111111111000000111010101000001011001011101101111101110101011100100101011011100101010111101011100000011010100010010010100101011100000011110101010101000000010110110000001011100111011011011010110001000000--------------------- +01001001010011110001010110101100101111100100110101011110011011111011110100011011001111010111001110101101110111110010111001101011010011101010100101100110011011011001001110000101001010011100001011000011010101010010100110110000101111011110000101001110110100101011100111101111101100111100110011001010110011111100101101000100111001100010010001011110011110001000000001000111100111000010000110111011110001100100101100000011000100001001110111001011010000000111000001010110001100111000001101100011100011001100110100001101001000011100100111101111101011100111011111010111110111011111011110010100110111011010010001110110110101100100101011101111110011101111100011110000011100000000111111001000000100111000101111000110100001110010110010001010100011101111110000111110000111110101000001111100111011010010011111000110111010010010110011111100000111100001011111100111010100110101110000110110010001111010110001011001000100001000011100100001010010011000110010001101110010001110010000111101001100100101100101000111110101011101000010001111001000001011011010110001001001101101110011111000100011111001101011011011101100110000011001101111001001110011001000100001001110011100110101111100101010000101011100000000010110111101111010001000011101011110001010100011101000000111100110011101010101101011000100110100101011100001100111001101110110101101101111111010111010101100001110101110100101010111100001000111110000001011000110100111111110000000111101000101101011101111110000011011000111100110111100111110111011110101111100100001001100000111011111011100000111011111000000001010011100101111110000001110110110010001111101000010001001101000001100010010111010101011101100110000010001001000010001101001001111101000010010111100110110010110100001100101111100010101001011010011000000011000110100111100100100000100111000011100100011010010101101011010100111010000100100110110001111001001111110100111010001011111011101101101010110011001011100001001100100011110111100110110111111101000100001000110101101101011011011011100000000101100100101110111101111001101100110001001101101001111011110001111011000110110010110011110100001011110001000110010010000111000111111100000111110101001100000001011110100111010111110110100000001000011001100000001000100010000000101110110001110100000100010001001000101010010011010011000101011010101011000000111000110011010111111110011001001110101101000010010001111110110100001000011111011001101100010100100010100011111100110100101001110111010100100111100110100000100110100010110010111101100011111001011011011011100000111110001110101111110000110100010011100100010011000001001101000000100101010101011110111011000001011100101110000111010000111110101110000111011110101110011101011100101010111011111100011100001010000111100000011010100110110010101001011011001110001110011011011011001100111110000011110110010111101010000101100011110001110011011010010010101010110001001011100100011101101101000010110101101100111100101111000001000110001100000101101110001011001000000110111110000010110110011011000000110010000111110100111001011000011001001010010000000100110110111000000011001110101001001110111110010101100100011111111011010110000000000000010001101000111110101111111001001110011111111100100011110000111011101011000110010010110010001000101100010111000001110011101011000001001111111111011010101110000111111011010110100110010011011011101101111011000010100010100010011110000111011111010011010011111111110010010010101011111111101000101101101110011101011000010011101101101010000011011011111100100010101000101110000011001110110110101000011011111010111010110111011011000100110100111000110010000100110101100101010110100110111010111100101001001000110111111100010101101010011101001110010001100111100101111110110100010111111100011011001000001011000001001000000011001010100101000010110001100001101001001001110001011011110101101100011011001100000010011101111110011010110111001111111011001011000111110000110101111001100100111010101111101100011111111111001001100110111011010001111110011000110001000010100010110101010100010101111100101011011100011010100000100100100111100110100110101101101010011110101010000011001000100101101100111110100101100001110000000001100001110110011100000111111011101001111111110110100111110100110001100001101001110110000010010110101111111001010100010011111010010010001001000001101101100000100011010000001011011111111001000010110101010011111001001011000001010000000101111101001111010011110111110010100010001101101000110001011100000100010101011001011011101100000000101111110111110000101101110110101000111010111111100101100011000000001011100110000111000001111011100010110111001011101011001010101001000000111100101100010101101111011111111110100100000110100011110010110010110110110010100100101101101100111110101010011110111111111101011011000000010111101100011110110011111100010111101001111001100010101100000111011001101101110001011010001011111110110101101010010011000001000111011010010110111001100000101001110000100010101001110100011010011010011111011011101000111101000111001110001010100100011010011110010000101100001000100111000110010110010011100000111001110011000001111001001001111001011000110101101000111010101111010001101100010011101010011111000101101110010100011011101100100000111001010000110010011101001001011110011110111101101100110000101110010010011000000000100000011011100110001110010001101000100100111010110010101010111100110000101101111111011001101001010011011111001001001111000110010110101100100101100110011111111011011000111110010100111010000001110010110110010110111111110000100101101000110010100110111010100101111100100011001000001101010011100111010110100011010101111010101100011101101010110110110111100001011100000100011011001000110001100001011000001101011100110010101110101000001000001010001001001011111110000010001111011111010010001011111011101110000011011011100001101111111110001100110100100110001011001001001100011100111101011111010111110110100110110010010000010000101101100111111011110110001110010101010111001001010011001101110011101011000001011101010111111000111101011111101101000011101110110011100100010010101100010010110011010000000111001001111001000110110010010111111000101110011110000111011001100010011000111010010100101000000001110001111011011010101100101100101101100111111110011000011111101111100111001100001010100000000100110000110011111000101110010000000101101010101110011100011000011010110000101110011011010010000000010011000010010010010010010100011000001101100001001101010110010011111110101110000100001101101011111010101100000111110001011011110110010011110111010100011111001001000011100001110110011011011101101111001000000101001010010111011110000101001110101101001000110111000111101110111110000011110001101011011010001111001001010101011000011001001010000110010100001001001011011100100001011100111011101010001100011101100010011000101011100101000100110010101010110010000011001000101001000111011110100011100001000011011110101100101010100001100010000011110001011000100100100010110000111101011011110110000010001010110100101101011000110110110010100011000101110001100111000010111000111110111001100100100000011101001010001101--------------------- +ls320cwds +1011111101011000011010001110110000010110101100110111100101111000101101001111110011000000100001001000001000010111100001101100011101101101001111010110010110100100100110110111101001111110010110111011010001010010110101000101110101000110110100010101010001100101001100000011000011100000100001101000000111111001100000111010000001110011001011000111000101000000110101101000101111111100000101001100010111010001000001100000010010011010100111000111101010011111011011000100001111010100101011110110111100100010110111110110000001001101100111101110010110010100001101011100111100111001111001111011110010001100010101110011011010010011010101111000011110000100001111001010100100100011011011111110101101110101100011110111110110100101101100110000000000111111111011000100011010010111000000000011010101010110110001010101111100111000100110001100000001001011010101011001100100101110011111100010101010001000111111010011011111010111010111000011111101000011000101000111001011100110011100111001111011000011110110100011010101010110011100101000011101011100001000000000011111010110101001011100101010011010100100010110100000111001001100100000010010001001100100111111110111010011000111010011000101001001011000111100101110100111111101100010001100011100101011000010000001111000000111010110001101101010001101111011111110111010001101101000000010110101101111010001110101110010010001001000110110000110000111101100001100100100011000001110000010010100111111010101110101011000111001001011110011001000101011001101010010110110100111101010101001111110011110001101101100011111110100100011011000100001001000010101001100001010111100001010001011011001110000000000000001101111001100011000111111111110111011111001101001110111101010101000100010110010100000000000001100111001101101010111001110100101110010110010000001000111100011011001111101110000100001111000111010110001101011100100111101100100101111111110010010010110100011001111001100000011010011111000001110101101110000011000101011100010000010010000100110010111100000011100000001101000101110100101111111011011010100001110000001011011100110001100010010101010001001100001100111100101000101010000011000100101010100111010010110010111111010101000011100111101000001011100111111001001101111000111110101000100010001101101010000001111100011100110011010000101000111111010100000010100110101001000010100100010011110001000010111000101110111100110000100000010111101101011101001111011111001000111101001011110000001100101100001010011101000001001101011001110111111111101000111101101000101101110100010101011110000110110010101010010000101111010011101110001011111101110000010111000000111101101000000110101110100111110000011001010101000110011000110100010101110100100101100000110101100010100000011001111110010100011000101010101111010010101111111110100100011010000010011111011101000000101011110101100001110000011101100011010110000001001000010100101101111100011000101101011001100111011101001001000111010110011001110111000000111100000111111111100011101011010010100001111111100001000111111000101001000101010000010011000001001111001101101110110000010100101100010000010000001010011011101111101011111111101110111100101100010111001110011100000001101011101011000110100011010110011110100000001000000100000011000100101111000001111101100011110101110011100101101101101010011000100011010011001011110111110110000111010100010100111010011000010111101010110010100011110101001001001010000011110101101110111110011101101101110100011100011101111010010101001111010000010111111110000000110111001011001001011110000010011101101000000110111011011011000110100011011101111111110100100101011100100000101001010100110000111111100100001111000010011001001011010000011010011001110111000111010001001011100000001111101110010000100110000000110101000011101000101101010001011001001001100000100111101100110001110111000011010001110001111000100111101001100011111111011010010100011011101011110110111001011010001110111010111101111011101100101101100100001101011000100111010011001101010111111001100000011101011110100101010010000101010101100011000100101001011111011100100110011001001000110101100011010000101001100001011100111001100101010010111011010011111001011100100001011000011111011101000001010111100011111110101101001101101110001000001100010100110110110111010011110110110110000000100111010110000011100011100110100100110000111010001110100010010101011011000010001000000110100111111101100110010110100000111001101100101110101011100111100000100001101111000110101001000010000100111100101111000001001011100110000100101100110001001011110111011110001111101111100100111110001111101010001000000110111001001000010100011111111101001000000111010001011100001110110011111010111011111110000010011101010100110010110111011100111110010101011001111100010001110110111110011001110101011100100100100001000101010101000010000101011100000001011101111101110110111101000010010110011110011001011011101101001000011101101011111010001101101001110001101100110010001010100000110001010110100101010110011110000010001101010101000000011110100011111101110100000000110010100010100111001000100110101000110011100101011110100101000100011011011010000101000101001000010011110110101100010101010101110011111111011000101011010110011100010111011111111001110100100111000001011111110100110100001100011010010100010111010000001110001000011011011010011000100101011100101101101100010110000111101000001110110110011110111101110110101100111110011000001111111110010001010010111111010000011101100110011010101110100011000110100100000010011011001011011011101010101111100001100111100001011110100101100101111010001110110101101111111011111101111011000100101110111011100100100101110111001100011111011011001100011001010000110001100101101101110111100011101111001110101110001101010111000101101100101110010011011000010101011111101110110000000101000010000011110001100011110100111010100000100101001110011111000011111001011001010111110011100001011100100001100000101000101100010110010110000010100001010001010111111111101110111000011010110100101001011010101011001110001100100010011000110001111000111001110000100010100010111001010001101100000011001011111010001101111100011101001010111110010000011110100011111101101101100001111111110100011101111101001010010011101111000111111010011110010011010101101101000010100111110110001001010100101011111101010111010110111000110101000110000111010111110110101110101010010111100000011110101001101100010111011010110010101001011100001001111001111101100110110110001101010001111000011100010001---------------------11110111100110001001001101110100011010011111000111100100111000011011101000111011000110111001011100010001000100111001110010111010101111010101110011111000101110000011100010111100010110000100111110101011010101101010011111010111100011111001010001011010001101011100011011001011000000001101011001011011011111101001111101101110111011010111011111111010000100111111101100010010001101000001100011110000111011110011000110011101011111111000110000011010011001111110100000011100010110100000111001000001101010101000101111110110111000011001110100110111001000111011101111100011000001110011100100000000100001111010111100111111001011000111110101110010010111000011010011110101101000101011010000110111011101100100000101010010010011011111001111110100101110100111011111010100000001000101010111011000111000000111010100101001011011110110010001000000111110001000000011100001111111011010001010111001011110001110010100111101011100001100100011001011111001000111111000110011000011011010011000000101100001001010000101001111110000101011110000101011111010111000001101011100001000111010110101101011110100001010111100001000110111011011110100010000000110000101111100011001010000100001000001001011011110110001011110001000011001001111011111100010100000111110111110110110001101110111010011111101101010000010110000001000101001100100101100010011000000100001100111010010011100000010010011110010001100000000101001000110000101100000100110000101001101101011101111001110100111111101010010101010110011001000111001111001101101010011101010000110000110100111001000100101111101100110010011101011110100111110111101111001010111100111010011100010100101110011101110110000001001010101001100111110011100011110001011001100111100111001000101000011001001000111101010111011111000100011010101011010001010001000001010000110000100001001111111100000011110111101110100100001101100000000100101011111011101000010101100000001001101100011111100000000001000110000000001011010110001111011110000100001110111101000001011100101010010110000001000100110101000011001011111010000110010001001100010011000001010111010101110100110110100100001010000101110100100101111000011111111101111011010111000100011100001000000000100001111111010010101110111000011011110110111000010100001010100001110011101100111110110010000000100111011100001101001100110100101001011111110101000011000010000010011101110001110110000010101001010000111001011010011011100000001101111001110001001111000011111001010110000111010110110000101111000010101000100110110110001111000011010110001001010111101110000101100111110001110000100010001110110000001000100110010011011111011010010011011111101110101001010000100010010010001001100101101110100110111111000110000100010100000000010001010101010010011011000101101101001110001010011010100100110000010100110100101010010110010110100010000111111101000010001100001001101010100001000110010011100000001101111001111001001100001000001011110101110000010011111011100001111100011100000101011011110010000011101111100101111000010010000100000000001100001100001111010000010001001100000101111110101000001111110101010101110011001100101111110111101110000001010101011010101110010110011110000101001100100100011000000101100000000100111100010011100101010001011011101000000010101001001100111010110011100011100101101000001000010000010001010100110001100101100100100011100101100100001011000000101010100101000011100101101110010111111001110011010110110011001110010101110111010101111010000100111110100011011101000111110011011001101000000110101001101110110101000000110101100100001011111011100000000001010011001100111011001101001110010011111100001111001100011101100110101011010000101011010001010000111010111011011110110101011101000100110111110000100010100100111101001110001110111011011000100110001110001010111110111000101111100000111010011101011110001001111101010110010011111101001100101011001011110000000101010010110011000110010101100010010010101010011101000011101100010011000111011111001001111011011100110100111110101110110100000011111000011011001110010100100101010011101011001011110100010011100001110001000111100111010001101110101001011101000100111101000100011111010110001000101001111100000010101101010110011000000010111010001010111010110111000001010101001101011111010111001111100110001001010001110000100000000001101100110000001010010010110110011110111111001110101001110110000101011011010011100010100010011110110000110101101010010110000011100100000010100110110110011111101010010111100101101100010011001010001001110010001101101101011111111110000101011100111011011010010100010001110000110010001111000110111000110110011000101110011000000001000001110000110101111000111001101001111001100101110111111100101110001010001000010101011111001001101000111000001010011100101010101010100000000101111010000110100111110000110110110010100101101100010111101000000101010111011011011000101110001110000011110101101110010101001011000001011110011000010000100101010000111101101001000010111100010000110001011000100100100110100001010011000011111111101110110011001110000001100011100101111001001111101011010010000011001000010000010001001001110111010100110001010001111000101111100010011000011101111001010011111010010110110011110000101000011011001010001011001111100111010011001111111000001100000111011010100100011110010111011111110110101110110111100110011110111010100100010010010010001101011101101100011011010101011110101110101110111001000101100100011100101011110000000101110000000001110101100010010101000010111111101101010100111000011001110000111011001100101110000101001101011101000010110001010101001101101110001010000111100001001101100011000111100101000010010001110110011011101000000000101110100000110011110111011001110000101110111111100111001001000011111101111111111110000010111110110111001101011001001001000010011011101000100010100001000010101000111100101011101101011000100110011011101101110011111000110100110010110111010001110100101111100110110000110110110100101010011100111000001101010000001110011011001101111011000010101000110000100001011110111110101001111110100001011000100101011010000000000111011000000011111101011001110000111110011111000111001100001101001110110101110100001011011010010001100110001100010101010110100100000111010111000000000000110100101000001000011011001000000111000000010010100001101101000001000011100000011010100001001010010011101111101010010001100011110101001000010000101111010111010011101001010001110000000100001110000011010101100111010110110100000000100010000101100111100010110101101010000111000011110100000100101101010001001001011010111010101100011001101010000111010011000100010011000001000011010000011000010111100001000110011011011111001000000100000111001111000010101000000100111110000100000101001111001011110010111000101110101110010111001111000001000010001010010000001000011111100010011111011111001100000101011011110000010111110111100010011100110010000000010010010010110111110100011011010100110011111100100110000000010100100000011110100100111101111101000001001101000101011011011111100101101010101011000110000100101001100000100110010101110110111100010010110111111001011111011011011100010100011001110100110001010110101010101100000111010000111010110001000101011100101001011010100110111100000100111000010000010101011100011011001010111001000010001100010111110111011010110100110010011010111101011111111010010000100110111000001011011000000101011111010010000110010010001110110101110111010011011010100111100110011100111001010101111101111100000011101011110001000100001111011011110000111010011100010011001101110001111111101110010011011010000101110000100011100110110100110111110111100111010011000001000011100000101101100111110010101000101110101000000011110001000011011101110010111101011001111101100010000110000011010011110111100110110110010011101100111101000011111001101110010011011010100111110111001111110010101110001111111111001101100100010111001000000001010001001011010011101011010101001010011001000000010011001111010110110100111011110000010011000110110110111100000101000000111001011101001000110001111011111110110101100100001000111000111001000100111000000001000011010001101010000010110010011000100111011001110111101101000011100011011010110010010001110011100110111001001110101001011010111000000111100101111011110101111001110101011000010111001011110110100010100110101111001010101101011011010101000110011001111000010010100010010011010100000010010101111001001101111010000110010110100000100111010111101101001011000000010111011101101101110011000101101011111001101110111000110011111101101000010010001111111010100010010111011000101001110000100000111000110101011100001110001101100010010101010110010101100010100001111000101010000100100010001011010111101000111010110001010111001100111001101110111011101100111111100000010111111000101111101001101111001101001111010000100001101100000110101110100001001001111111101010101100111001011000101000001101100110110010011001100000010011101101111100000101010000100010111011110101101101010110000010100100011010001010100111001001111110011111111100101100010010110010010100010111110010101011011011000110010010000111101101100000101100001101010011011000110001000000100100000101010011011110110100000001010110110001101110000111011011101110000011000100000110011101111111000001010011011001111100001110000011100010110111101010001100100001000000101011101001011001000011110111110100110100111101001110011000010101001100010000101000010000010110011011000100101111010011001000110000111011001110100000100101100101001010100100110000110101101110110100010110110111001110000000000000010001001110101011001011100001000101111110011001011101111100011111110101010101111110100111000001110011110100101111111111101000011101001001110001111001010011010101100100100001010110000101101101000100111101101110001010110001100011000001101100111100011000110000010001100010101111100010100000011111011011001101111100010110010100111011011100010111101001010010011101000011110101100101001011000111000010010010111010011100111001110001111010111111111101011011110010000000100110111001111100110101110000100110000111100001100011011101001110111001011111011110001001011110000111101011100011011010101100110001101100011000110110100011000111111001111011000101111000011000011011101101101001111000110000110001100011011011000001111000010000101111110111101101001100101010010010000101011010010101100000000011001101001001100111111010001110101100100111001010101100010110010101011011000100110010110101110011011000000010010100100100101001101010000111111010111010110010000001100010011101110100111101111001110100001101101110101011000011001111101001011011111011101000110101100110001001010011011001101100110101011010011111000001001110101010010100110011001100000101001101111100101100100101001111000110100001101101111110100111001001000000110101001010101011010011011100001010011101100110110011001111101011101100011110111111100001101010111110011001101001011101111010110001101111101110011110011000110100000011010100001111010110011100001100100101010100000001100010100101010110110000011111110001111010111100011011100111111011101110001001110101001001111111110001110110100100010100001100010100000011000001000101010000100111000011100101010101110001110001101000011111010110011010100000000100100100101011001001100011010101100100010101010100111000001100010001101100010010110000001110111011000111000110000100110000110000111000001010000111001001101011010011100100110011011111011111100100011001010101010100110111101110110000100010000101101001000101100101110111110100010000010100110100000111010111001011010011111001011001011110000101100100010010001101100001111010001100010111010111110001110011010001100101110010010111001011000000110000011000111000101010010111110011001111111111000110000010011010011101010110100111111010010000010111001011100011001000100111100111010000101001111011100111110101110100010011011000011011101111010000011100010001001001101011000011010010111111110001110100100001000111101101000001011001000101101011111011010010011110010000001101111111110100010100111010010101010111010101110010100100100010101110111110111001110011001100100100100010001100011001011101101010010011000010101001000010010101011111110100000000001010111100111100011111110111101101110111010000000101110101001000101010001100000111100010101110110011010000100000001001111010011000000000111000011111100000010011010110110100001001000101000100110001001001110100100101110100110000110110110111001011110011111100011010111001000011101100011100100010110010000111000000000111110001000100101111000111100000111111000010010011001000001000111101010010101011001011110001100101100111011001101101101111101111110110000010001010101011001100100111111100110100001110110100111101111011111110111100001111010001001100101001010000101000110000100101101011000100100110101010001000010000011001111100000111101001110111101001111010111011100100011101001101011001111011110100001101010101111111110111001010111011101001010000011101101001001011100111111001101101110111100010000111110000111100101100010110110000000001001100100010111011010001100001100101110101001110101001010011110101011000111100001011010001101000100100101100110000011001111100000000101110110010000110101101100000010001110100001111011100010000110111000111100100010001011111110110101111110000110101111010001101011100111010001011001011110100101110101101111001101110101001000111110001001110001101111100011000101011010111000010110010000110000011011111111101111101101101110000100001011101011110110110100000101010010011110100101000001100110111000000111010110001010100000001101101011110011110100111000010111101110101101010110001001001100011100111111110100100010001011011101111111101001111010000100100000110111100100111111111000011100111101110100000111010101110111101100000111010011010000101110110111010100010110100100101001111100001000001000101011001010011000010001100110111100001010110000000000010100001010000000100101010011101101010100111000010010001101000001111001000101010001011000100101100111000100000110011101011001111001000001100010011000100011110000101110110110000010100010011100111011000110000011101011111011010000000010100101001110101001010010000001110100011010101111010000010001100101010101111111110100010110010110001100100110011010001001111000011101111001001110100011111001010100000101100101010011111001010111110110000101001000010001010010011000001011010111000011101110010010000001101010110100100001001111100101100100000110001010100101011111001101001111111101010000100001010100000101111010100000100010100101101110000000011001010000111110011000101001110010011101111011001111011010111000111110010000100010001101010110001001110110010001100111110100110111110011011111111001100110110010110000101001101001001110000110010001001000010001100011110100011100101010000010111011010101110001100101001100001101011010010110010011011100111000111100100000110110100100101101111010010010000011000001010110101101101000111111010111110101110011010010011000000011110010011011101101100001111011100000101100 +1001001101000001000001111110001000011111001010100101000101101111000100000100101010001110000000010101000111011110010100000110110101100110111001010111100110011001001110111001000000101101111101100000100001110011000000000010101110101100011011111010011100011110111011111110110101101001101001000110111010011110000001110101000100100101010110111010001001111100100000111101011001101010110001010101110000100100110010001001101111111110000011000011010000001010000110011001000000011100100100111111001110000111111000101010001000101111101000010100000010110110011101110000110010111011010100000000010001101000101001100100111011100111110010110110110101111100110001111010101100010011001111101110100111110001110010001010000101001110011001110001011000111000111011101000001111011101001100011011111011010001110100111110110111001001111100000000000010101001000000110101101001101111001000101000000111111101000000001110101010000110111100100011110000010001000101010110100011011111000111000110001001000110101101011100000100111100010010000010110100001111111111111100010010111001111001110110000011111110111110110100011000111010011110010111110001010000010010101101000011010111001010001001010000110011001111101001001110101010100111101010111001101000011111100110111101000111111001111011011110011111010000101110100001010101110001011101011100111001000001010100100100011000111101110010001100100000111011000000010100000010011101001110111100001110011111010111110100010101101011011001100001110011000111111001101100001010110001101000110110000011110111101111110101010011100110100000001101000000000000101100111110111111110110111010010010001101001110000110000001010000011000011011111010100111111000101000010101010001101010100000010111101011001011101011000100111011011100010000011010110101101100111010101011101101001000001101100000001001111100100000010110111110101001000101010000010010001111000011110000101010000001010011111110010100110110000100001001010101001111010110110001000010101010000110001011111010110100110111011111001000011110000001101010110010011110001000010010101001011100101001011001010010010001111100100111001111100110000000001011001011110100111111110100000010100010001000011100011010110010110010011100000111010011010100111100110100111100011100110001001011111101110010010010101001010011011001111111010100010011011011001101010010110110010011010100000000110110111110101000000111100000101111001011011111100110110010100100000010111100000010010010000111110110000001001101100011101001110000011100111110110111010100001100010001100110111100010111000110010001000011100100111001001010111111010111111010001000001011001111010101101101011001000110100101000101000000101111011101100001001101111111101100110010110100011010000100100110100001001010110001000011001011000010011010001001100100001010100010111011000000001001110111101000100101010111011010001011010000101111111101011011111110011100001011001110100011011101101001011011000011000100110110100000010110111010000110100001010010010100100100110001100011011100011110010011000011001110001101011000011001111110001010010101110100110000110100011111001100000111001101101001001011110001001100111110001001010110111101010110111101000111001100111010100111000100111111111111001111110000110000100101010010110110011111010010010101101000001101100010011011101101111100110011101101111010000011011100101001101100101110100010111100011010011010111100010101000000000001100110110011001110110001100001101011100101001010001111100011100010110100100000001000000001101110011101111101011010111001001001011111101101100001110011101000100010101100000011111000010000100000100001111101110001101001010100101010101101000011101010001010110110000001110110101010011111000010010001011110011001101101110101010011010100101100110011100010011111000110001110101101101000010011011011101010000110011110100110000010100011111101100011111000001110000111001100100111000100011101010001011110011100010110110110010010001101010100010010010011010001101000110111001111100011111100010000111100100110110000110011000111100011001000110011100101000110101111111000100001111100001100011101100001011101100000001110100111111110001111011011011011111010111110101001010000101100000110000001100011010100000010100111000010111101110001100111011100001000101110000010000100001011000011001010010001101010110001010111000110011100011001111110101100110010000100101011000001001000001010100101110001011001110000111010101111001110111000100111111011001000101010111011011101110000010101101011111011111111100100011010000110101111110101001001100101011100011111011101001111000110110001111110000100110010100011110111001101111001010111000101111000010011100001111001011010000000110010000011100011101111000011011001100010011011010110111110101111101101110001110000001111001100100111111101001110110000101101111010000010111111100101111010100111111011111100000000100111000000100110111011110100110011111111101100010001000101100101100101101101011100111010001111010100101110001101110100000111110110110111011100110011100110110100011001101001010100001010011101101111111100010100011110001011110110100101101001100110100000110111001111011100010011111100101110100110001110000011110101000111000000010100010010111110001100001001001011111001100101011011100011100100100100001000110110101111110100010101001110110011101000001010111010001101100101001011100001111000110101001000010111001000100010010011110100011001010000000011001010000001001100100001000001011010101010111110011001100111010101101011011010001001100000010101011010010011111010000000110111101100011111000100000111000110100111010111001111101000000101110011001010110001000111001000110110101001010001000010000110111110111001101001011110001011000111110101010000101000011010111110100000010101010001101010010101001111001110111111100101101110110110010011010011000110101111010101000011101001000001101100110010010100100000100001101000011110001110011101001111110100100101000011000100000001110001101110001000111010010110110001010101011111010100001001110010001001000101100001101001111000001101001111110001010001000010011010010010101001001111010000101011001101111110001000001010001001010001000001100001111011111011010101011110011000100111010110001100001000101111011000011101101101110101010011110011000010100110100010101010110110000001000110000111100100011111100101001010111011111110101110010000110101011110010111010101010001011000011000001010010101000011110100000100001011010000011001100000101110010000001111001100101111100101001111111---------------------00001110100101111000101101000101010001010001111001110001101000011101111010101010001011011100011111000000000001001011111110011101111001110001000001001100110000000000100000101001100001010101110011110001111011000011101001010011111011100111010101010010001101000110010010111100111001110101101111001010110001110111001001101101000011011001000111111111010101111010101100110011111101000011110111011111010100010001110100001110101111000110010010110010111001110001010011100000100101111101101101110011110100101011101011010110010111000110000110001000011100011110111000100001000111000101001111101110011000001011100010010011010110011011000001011010000111001001011100001101100111110100111101001111001011100101111101001110010001110010011010000110110110010100111000111000000001000011100000010011111001001101111101010110001100110100001101011101010111110101011100000111101101000110110110100110000000110101110100011000000000110100110000010011100100000100110110111001111001001100111110110110011111001101011110111000011001011001001001010100010111101001000101010100101001011000101100010010111101011101101100111100001011110111110011000111111000101000001000011101110100000100010011000010000000000001111000010101000001000100010010001001010100100111101110100011001111011000010010110001011100001101000010011101010110100000101110010111110001100010100110110110000110011001100001110010101010011010111110111110010001011001010011111011101110001001110110011111111110100000010101101001100000101111110011110010111011111100001000011100111010100001001001101101111011101000110010111111101010000100011000000001011000100001010100000101110000010100110001001001111001100010100101110111111111110110110000110100011100111111011001100001110000110010011001101001000111011011000001000010011000101001100001100111000101110110010001010100100100111101101000011011000011111011000001100101101111011000101010111110100010001101100011110010110011101101011101011101010110000100011110101010001010100111011011000011110101010110101110001101100110100001111100100101010011000110100010000010010010111010101101100011000010101000110011011101011110001001001100110011100101101110010000010100101100000010010000010100100010011001010011010010100000001011010100111110111100011011111001011011100011000100010010001010100011101000001000010101100100101111101010001100110000000110100101110000110000001110101101110010010100111001111001001110100001101101011000010110100111001100100100100101110010010111101100110010111111000010111000011010100010111111101001011011110101101000100010000000101111110000000011001100100111100000010110000011100001100000011010001011011101101001010000111001000011100010000111010110000111100001001110010001000011001100110001010110100010001001101000110010101011011011111010000111011010000011010101011110111001110111010011000001010000010110101101000101000000100010100010111000111111100001010111101110101110011110010110001101101100010011010100010001101110011010100010100000011110100111101010000111110111110101101110101111101100011010010000110001010101110001101000011010000000111100111111101111011000101010110001100111010000010110000011110100001100010001000111101000001010000011101111000100010001010010000110101111101111100101011110101111110101111100010001100011110000011111000000000100111111010111101001100011001010101000100011010000000100100101000010010000000010111110110010010000011101010110000011100011101001001110101100110001101100000111011001000111011110010001110110110000001111100011000000011001111100010001101011000110100010000100001101100011111111110110011101111000101110110111010000110000001110110000011001011110100111011100101010111110001100011101110111001110011110111100010100011011110010001110001110000100011101100001011111001110100000011100000100100101100101011101010000011101111000001001100110100101011111110100101000110001100011111001111011011110010000001011111111000001100111010010101110010100011010001100111101110100100110010111111011001000110000001111110000110100111000010100110000010111111101001111100011001101010001010011001111000000111001111111011001100100000011111110000110110010000001101111111011101110100000111011100010101101001001101111101101011100101000001111101101001011000110010011000000010010110111110111110000100000011101111101100110010011011100110001010100110000100101010010111100100111111011001010011001100010111110000001010111010101000010100110010100001011110000100100111001001111101100111111011110111110010110111111100101101010100110000000001110111110100010101000011001010001111110101011001110111001111001101000010110101011111001010111101011001101010010100110010111100110001110110100101010000111111011110101011111001110110110010011101010110010111000011010111011011011001001000100011111100111011010100000001101100001111011110100101110100110111010100100111001010100010111011101001011011111111010010000000110000100110101100010011111100100001110100100010001101011001111111011001001001101011000000100010111110101000111100001110000110000110000000110111011011011111101001111011100111101110000010000101111101001111001101000101100011100110110110111001110111100000001100000000111010001101000111010110010101000110001110001111001100101000001101001010110011011010100110001000110001010000000011100000111101011011011111110110110000100101100100001001111110100101100010101011111101110000100100100010011001011111101001000111111011001101101010100110010000000000010000000010010011000110111111100010001110011111111011111110001111110001101110100000101100001000101101110001001110111000011000011101010000100011111011110001010011111010011010110100001001111100000110001111010001011111111100101010100111110110010111111110110100100010001010001001010011000100101100111100101100000111111011011111001001001011100000011110001100011101110111110101100111110111101110010001001110010010101000000110110000001010010111011010111001111000101011001010100101101000100110110101111111001010111111111101111111110100010011110011010100010101011100010101110110100110001111000010011100010011000000010001111011010010001110010110000001010101001001011000010010001111000001110001110001111110110110111010000010010111000001111001000000011011010010001111100111100000101100101111001000000111001011101101101100111111101111111110101101110100011001111000011001011001010000110000000111000011110011011000011011011100110101000000001000110000111100001011001011001110001100101010001000100000010001101000001011001101111111011101011000000110011001101000111001110110001000000001011100000110010010111010010011100011110010000010111110011110110101011000101001101110101110101101110010100011101010011111001101000101001000111000100100111000101101011110100011010010110000101001010100010110011000100001100110000011111001001011100110001010100011010011001001000101010010100011111011111011100000111111110110111011101000000000100101111101110100011101110010011101000111111110011111000011000010110111100110110111010001010101111110111011001110110100101001010001101001010110000110010110111001101010100001000100101101000111110110001101011100000011101010101110000011000110111010111000010010111111010001111111011010010000111101010011001111001101100011111011101010000011011010000101101001001011111110110010101110101110010110100101010110101100000100011100011011010110000000001010101111000101111111000110010001001110100001111111101010001101001010101000101010001100100101010001011111011001000001000010100110100111001000111110110011010001101100110010000001110010110101101100001010011011101010110100000000110001001011101101010010011001110101011111011000000101110110101110100001110110111111100101000110100110100111001011010101110001101101010101001011011100001010111000010100110101010100110010100101001010000000010011001111101111001110110101101010110100000001111010101100010011110110001000100111110001000101111101010111010011111101001100010001111010110101100000110000001011011001101001000100101010101000101010001100100000111011010111000011101000001100001101100101000111101000100000100100011010100101011000100101110100101000000110110101101101100100101111010110001111000101000000100111101100101100000000011010101110111101011000111010011010100011111110001011000101011000101000010011011100000111010010101010011101001100101111101001011100110011011000001100110000110001000011011000100010100001010010111110000110101011110111111011010100110000000011011011110001111111110101101011001100110111111110101000100000010010011100110111110110111001100000101000111111101010010101111101100000011010110100011100100011000010010101101101111111111000011110111011110100000010011111111000011101110000000001111011010010111010100111010001101110001111110010001000100011111111001110110010110011110111110001000110111001110000011001010001011110010101010010110011000011101001011101111010010110110110101011110000111000001001100011101011110110000010100110100110111111111110001000011001100100001000001110000111000000111111000110100100101100111000110111010000101101001111011001011000110110011100110011001100000001010000111111111001000101010101110001001011101001101100010111101010111101001001101010111000011111010111000111101101010100101011110101110100111101010001101001111100100110110001110000000001101000110100100100110011100111101001010110110100011000011110101100111110110010011100111000101101111001111001110000011101001111101110010101110001101111011010000001010111011010101110000001101100000011000111110101101001101110110110110111000110110010011010010011100111010101010010011010001010111111011110100110000101111100011111101100000101110111010011010110110001010000001100110100110001101001000100110101110110010110010100111110100000101110110010110111000101010100100010110000110100101100100011010100010010100100110001110011111001001100010100010010111111110001000011000010100111000011110011010010001101111110010001000101001101110010101010100000001110011011000111001000100000001101111110010011111010111001101101110100011000110101001111001110010010111000110001101110011100001111100000110010110010100111101101110101110011011111001100101110101011001001100101101101101110111111000000000011100101111110101110011100101111010000100110001011001101101101011011011100101010011111100101000110110101110011001001001010011101010101000010110000011110100110010011100110101010010000101011011001000010111101010001111000010001101111101000001011011101000001001011110100000011010110010000111000001000100011000011011000001111100000001110010011100010001011001110101110110101011011000100000000110000101110101110011111100110111011110000111110011101111101001101110110011100101101101111101010101110000101111011001111110001001110001010100000110010010011010001001011101011110011100000000010100100000011101100000101000010010001110110110010001110011001001000011100010110000011110111001010011010000110011101100100100111011001110011001001000110000100101101100000111011000101110011111000101100111111011001000010010100000001001110011001101000011110000010111001101101111000111110010001101011111010010111101000100101000001001010110010011110110110110111000011000100100010111001001110111010000111111001001000110110110111011010010111001110011011001111110000000000011001100010001110001000001110100000011011111001000000111100010110110011110111101011011110101101000001111101110001110011001111110111111010111111111100101110001001000110110011110010011000110011000101010100000010101100100000001111111101111011111010001110101110011111111000000101001110010010100100110011011000001110110101011001111111101000001000100011110000010010011010011001001001010110101111100100111001011011000111010110000110110101011000101110001011000001011101001101101110010011110110110011001100010110110111111101100101111001000111101101110101011010011110010111010010011000110110111010011000010011010000001110111011111110111100110010000101110001101010111111010000000010001001111000011010101100101001110010110001111101011100011111000110111110010000000110111001001001011111011010100110010101000100111000011100101101100101000101110000110011100111100100111010010100111000110011111101101000100011101011101100101111111001110011101111111101011011011011100100000001110001000111010011111001111101111101000011010111111111000110001100000001101011001100000011110100100111000100011011111011000010000101001000010001010001011001011110100100110011101110000000101001000100101000011111001100111111100010011000011100111101011111100110001001111111011001000001110010110111110101100001110110111010110001011111000010000101100001100000110000011001000000101110001011100100100011111011011101111010010000000111000111110010111011100011100000010001111001011011011010110011110000110000000101110011000100001101000011110011011010011001011101111011001011110001000010111010010000001000011110000111011010101101011101000100000001111011111100010000011001001100110011110000101011101001001010110100101101001111110000010111101000110000101100101110111000111100110001100001011001100011111110100010001101101101011000111111110000100111110000101010011111011001000111001010001111100010001010001001011001001010101010100101011101001110001110001111101101011101100010101101000101011111010111000101101100110000010101000001111110010111000101011111110100111111111111110110011011111010111010111110011111000010110110101111010011110001101111101001100100110100010111010111010010101110100111100010011001101001000100101101110001100000110000011101100101100011111101010110001010000011011010100110001100110001101101001011000101110010011001110010111110110010010011000011110001011101000110000001100011110010000001010101101010110100000100100111110010111001111000101101101011000111010111001010110101101011011101111110000111000110110000101000110011011110001010010001111011000001011001000011110011111101010001010000010001101100111101110000100010101110110000011111010101001000010010001110111011001010010100110111110001000010100111101100101010000000111011111110101101101011100100101110110110100011011000100110010010000111011101010101101001000111001001000101100010011011100100101001010110111101101001011011000010100000111010001001011100101101100100101000011010011101010000101000010110001000101111110110010110101011010001001110101100011010100001011001100110000101111100111100111010100011011100011100011010111001101110110010000010001011110111110001101110101101010010101111111111010010010010011011101010101110010011110100101100101111100111110100110101011100011101101001011000010111100000100011110010111101100101101011011001101100110001111110001111001101011010010011101111111110000111110011100100111100111001000001011010100100101101000111001010001011001011001010000111100010011110001010001111011000001011011100111000100110010001101100110100001101101110011000110100000101001010010001110011100010011011001011110001001100010001110111101111011010100110100101110111001111001110110000010000110010110011011010001100110111110111110010100101111100011001001100010000001110101001100101010110111010110010010100010110000010010111100101001001001 +1101101000011011111001100010010011001000101110000001000011011110110010100111100000010000001110100011011000111000101100110101100011010111110101111001011011111011010110001011011101011100000100011110001000110010100001110001001001110001000010010010111000000100000100000101101111011101011111101110010001001110100110001010001100011011010000001111011011101100001010110000111101110010100101011111100010000010010110101101010101011101000000100111101000100010011100111110100011000000011001011101101111010011001110111001011101100111000000100000011101001110111110110011101000010000111010011001100010010110110101011000001111111011001100111111100001111010010110100010101101100100101000000111110101100001000111001001010001000000011010010001101110111011101110100110100001100010000101001111000100011100011111110100000001110101000001100110010110110100110000111011100100101100110111000100101111010000101001010110010011001010011010000111001100110101010001110010100001111001001000001010010111110101111000110010011010000011110000111111111010000111010000011011100100101100000110000100010011001111111000011110011011101000011101011101000000011000010010000100010010111001011101000010011100011010110100101110111001001000111110110010000001110110011111011000101101100101100001000111001001100111100101001101000010000101010001111000011000010100111000011011111110101010001111001111001111010111000010011111111101101011010101100111000010011101100011110001111010010010111111100110111011000011101001100001011000101101010011111011001001001010111101111001110100100111100110100010001100010010100110101110111000010000111010111101100100111111010111110100101101101111011010010100010011010100100100111001001000011111001001011010100001001100001000011100101101100011010011101000101101101111110011000101000001001101010110110010000011111001100110111100101110110100010111101110110111011010111111100101100001000011100111110000111101011010001100010110001011101100110001100000011001100101010001010110010001110111111101010111010111010101000100100111110001011101110100110111100011011111100010010101000001000001011010101000110000101000110011011010101001111010100100111000100101111001001010000010110100001001000001010100001000000010011011100000011000110110111001100011111111111111011110100010000000011000000111110011101011100011001010111100010101010100100000001001001110101011011000010000111000001001001011101101000011111111000001000001011001100000011101111100100110010010111110100100010010100101010100001011110010111101111100100010001110111111001000000101011000111111110000101101100011110011001010111110011001101000011111111110111110011000000110101000011001100101000101111101000111101100001110110001010001000110010000000100111101011010011111111011001000110111111000110000111010111110100011111100011001011100011101100011010101110000101110110011111001111101011101101110101011010010111001101101001111011110111111101111010000010001100100101100011001111100010011001100001101111011101000101101001110001110011110001111110111101100111100111100010011010010011000011100011011000101111111000001001111101011000101001110101111011001111000010010100110010100000101010001010000110000111100101110101000111010001010000011111101011000011000111001001111001100111000101000110000101100010101101111101011000100010110111111010100101000001111101010101001111011111001011110111001010011011000100101010111110110011110101111100001010110010000011111000010101001101111010000111101111001101000010100110011001110100011111100110010000110010110100001001111011110110101001001010010010011011010010010111111010100000100110110111110101000100100111000010001011101010001111000010101001111010101000111111010010000001001100111000111100111111011000010000111010111110110110011011111100101000001000111101011110111100100001011010111101101100000110111110000000000001001010010000111100000101111101110001110111010010100011010010000001100011110111100000011011111101110100111010111000111001000011010101101101110011100000011010111110000111100011010011011000101101010110110111110111110101000001011110100111111011101101100011100111101010101110011010011101100000011010111000011011010110010110100111101000000000111111000101010110011101010110010011010101001101011111010000010001011011111100010110111010110110011100110011011011010111101011010100110010100100011110110111100010100001101111000011111101100111000000011011011111010100000010000110001100001001011110110001000101011101110101111100001111010101011010101110001110111100110010000110110101111001100011110001001101100101110001100111011011010111100010111110100111011011100000111011000110011000111101110101100110000111011000100001011001110111111111000010111101001100101111011100110110111001110000001001101011010011000010101111110001001000100000111110110001101101000001110011110011111111000011101100010011110011110101010010000000011100110111000010000011000110100111011000000000000010011110111111000010110000010110111110100010101100101100110011111101001110000011110100101011011010011100001010001010010110110101100010100101001110010000001110100011110101101000100111100111000010001001001000010110111010010111000111001100001110001001101110101011000100011101100001100010011110100110001000101111001111011010010011101100101111101000111010011100100010010101111100110011101000010011111100111001001110110000001111010100010111000100000000100111001111101110001010010101011011011101001000101110011001000111110100010000010111111011111110111001010100010110011010011101000111000000001011101110010111011110001101000110100110011100110110111011101100111001101001100001010010110100000110010101000010101010111000100101000110001001011000111101111010100000100101110011100001010001000000010011101111100000110101101100001101101101100111111110111001000100011101110010011000110111101100110001101110110111111000111000000000100001000101001001000110110000001011100111000010101011000111011001101000111110010100001000001000110010011011101011111100101001001000101101100100100001111101111011101100010110001110011000001110111001110101110011110001000001111100001110100101000111011111011110100111011101100000000010010000001010000001000001101111100110111000101101100011001110111110011100000101010110101110100111000000010010111101001000111000110011101100001001000011011100111011000000010111001100000101011101000111010101000100111001011001000111111011101111000101101111000010001101001010101111111011000110101111010011100001011010001011001100100010111110000001001111001110110110111011---------------------11001111110100110101101000111001010001100001101001001001101011010100111101100011111001010101110100100001011100001000011010010010000001010000000100100011011101001000000110101011100111000011100111010000111110000110011110000000001101101010100000111110111000001001110110001111011100100101110011001101001011000011100010011010001010011110100101001101010000011011000010000001111001001110110101111110011000101011110110111000010100000110011000000000101010101010100001100110011110001010100111111101010111110100111100101110000100011101000000000011111011010000010101100011110101010110100111001110110010101111011111101110101000000001110110001011110010110011100111101110100100001100010100010011000000011111001011000101000111110110011011110010010000110101110101010101000001000110110010110001000001101110001111001110010001001011101101011101100100110111101011000110110010011100101001101110100101111111101010011110110101100010011100000111010010001010111011111000010011001110101110001011101000101010010110101001011110111011001000111100110100101010100011110100011100010011101011101010011010001101111010000000001001001011101010011010001000011000110111110111000101111000010011001010001011110010000110000000100010010011001110001011001011101110001101110001011111001110000100111101101011101111001000110111010100011100101010011101001111000000111111010110111110000100101000001110101111100110011011011111001111111010110000110100110101111010000000111011001001000001011001001010111101101001011111010111101001101001110100111101111110001111001110011001110011001011101000001100010100011000100110001101111011101010001000010010111011010111110101001100011010111001001011010011100101010110101111010010001110010001100000100110110000010101011010010001111011100101000010110010010001000011010111111111100001011000101001101010000000000101010100101010100010111010011000001010000010010010101101010011001111011101000011011100000111000000100000010011111011100000010110110101110010100001011110010001011011001111100101111100100001010111111111010011000101001110010100011011011111111001001010111001101100111111101011101000111011000001100001111000110001101110110110000110010110000011011110111010111111101000111101000101110011001110011111001100110100101110011100110010000010110101011110100001000011110011010010110101101111101011100010100100101000100101010100111011101110111101100111101111100101101001001100011000010001110010111000010001111011011010001110000100010110101110000000001100110000101101100000111000101101100110111000101000110100010110101011100010100111001111110000011001101000010011000001010011110111010110010101000001010110000100111010100100000000010101011010011001010110000101011001001011011110011001111111111110000111011000111111000101001111101111000000100100001010000011011100100011111011100010001001010101101001100101110000101001111100111000101110101100110010010011101000010011010011101001000011010101011010111001100100111011010110000111000101000001001101101010010111100011011010011001111100110010011011011001100000110101000101100100111011110011010011110111001001000001110001010100101010101001111011001101101001100000001111110010000100110010001110011000111100011000001101000110101001101101010111100111110011011111010010110011011111111101111101001100101001001011101000101110101110111100111101001000100011011010100010010001011010011010101101001000000100001111001011100011011101001111011000111101110100000111111101001000111100100000001011110011000110111000101101011010111011111101111000111101101110011111011010011011101111010010101010011010110100011101001011000010011100100011101011010101000001010101010110111001000011100101110111101101100010101101001001010010111010100110000000110010101110111000110000111000000011101101101101010010011111101101100100011011100110100010000101011011000001010101010101111111101100110000000100011111101110010110010011111010000111101011110010100110010110000111010000111010010111110110100110101001110111010101010111111101000110110110111100011110111010110110101010001100010110111111110101011010011011010000100010110000001010110100100001001010010111110001001010101111110000111111101111011010110101101000110101110101010000001001011011100111011001110101011100001011010100111011111100000010100011111000111000100100110010001000001000010111000110000101001101001110011011110100011111000011000101110011101101110111011010100101100011001100010100010001100110111100101000100011010110011111110100101110011000010110110111000001100111111100101011111011010101001001111100010011110100010110010110111101011000110010001000100101000111011101100001110001110001110010100011001000111000110111101000100010101001000111001001010100110111101010110101011000110111111111111100110100101100000101110110100001001000001101000010010101000011111111100011011101111110001111111000011101111111000011010100010010101000000100001010111101010101111111100010011111100111001010011011101110101010001000010011001011110100100010110011010110110001011100110001010001110101001011101100111100000111110110001000110101100101010101100000101110111100010111101101100011110010110100010001101010110110100001100010011000110111101011000011001000011110101000010110001100110100101000110011110011111101100010011110010110001100101010000110100100010110001010100011111001110100010100111010001010010101101001010101100110101011101010001001010100110111101010000000001111010111110110000111111101001111000100111001100001110110010111010100011000110000011110100100001001011010000011111100010001110100000011101101101011000111101101011100010100011110001010011100000111100111111011011100101101111000010101010111100110100111010001100010110110100001111010110100000010111011110000101101100100111101010010000010011010000110100111101101100000001101101010101000111011101001100000101010111001100000111100110111000110011011100001101111101111110010010110101101000011010100110111100101110000011101000110011011010110010000101001111100100100011100110101110101001101011100110100111110011011100111011110110010100110100111010110001111101110100101000000111110111110100101011010110101011101101111011010110011100101111110111010010111110110100011000100011011111011100001011100011000101001101001111100010010110000000001011101000011101000001001000100001011100011110010011100111110110111001101000110000010001110101000100101100111111001111110011100010101100001111101001111101110011110011010001011010010110011111010001010110101111110011100001100011111010011110000111100000100100010110101101011100111110101111010010101011101001100100111011011101011001111010110110011101111100110110010110110100100011010010010111101110011001101100110100000000011000111110101011001011010001000000001110011011100111100100100101011010000011000000101000110110000110111000101111110101011110000000000011011111010001111010101111110011000001111011001001111110000110010010101110101001000000110110100111010101101110000101110110101110001101011100010101110010001111011101011011110101001000001010011110001000001000010010110010011010100111001111000010101001001000101011111011100011001010110011010010100111011011000000010000111110001111010000100111110111110100101110111100001111110100111010010101011111011001010001100000110000001010000011110010000010011110111011011110101000010001101100010011101011000111111000100110010011000111111011000000011001110100110011101111110110100111111000100011010001101000100001110100010000110001000111001001010110010110001100001010101000000010011111001000000001010101100111100011110011101010100110010011011111110111001010101111100111001111101001001011010011101111101111111001111010101010101111000100111101010011001001011101010010100001000010100000101010000011010011011001100110000101011001010101100101010001110010000101100010010100001100000011001111010111001110010000110110101110111011000111110110110001101111000101000101110100011011011011101111101000111111011010111000001011001111110001000010011111011000001011010001000000101100100111101010011101010100000110000010110110100000100010110001110011011010110110100001010110010011110000110001000110100010101110110111000000100100111000001010011000101001100110110101110110010000111001000100000001101010111110011000001110110100111110111011000010011000101110100011001011110011111010110000111000111111110110001000001110100101110000001110001110110100100110111000011100101010000110101001110010001000000000101011111011010100110010100011011110110101111011101000101010100011110001100001011000100001001110101110010000010010000110110110000010100110000100001110111101110010000111101111000011110101100000110110101111110111100111010111101111000010111110110111001100111101110111101110010011100001011010100110000101001010111011110001100001001010100001111011011010110001001000000010111101010110101100010011000101101110110100001000011011111100110111100101011011000000010111011101101001011010000100000000011101011101101000000100110011100110000011100010010101110000000101100010110111011000110000100010100011101011101110110001111001100111001101001001000001111101010001110000010100010010110001000110111000101101111111110100101011011010101011011100010100100101101101101011011100010110100100000100101110100110100011001101010111011001010110110100110110100100001010011000111000000100000000111111101100100001100110010100011101110010000111010110100100111111111101010101000000111000110111111011100010010101001011011001011011110111001101101111000010010010011010101011011101011010101101001101000111011011010100101111111110100001110010110100010000001001101001111101101110111011110110100010000100010100000001011110001100011011101100000010011011101011111101011001111100111110100111001101010101001111101111010000010101100011001100001110010000100111100100011101111011001101011010001011000100011010110011010000010111011001100111000101010001110001110101111110111001101000011111000010101011001000111010100011001101100100100011111101101001001101100011101000011000000011011101101110000010101011111101100100010111000010101101000001111100111001111001011000100000110010000000001100000010010000110010001110111101010110011111100101110010001000001011010100110010010110110110000011000110010010110001000011001001111011011010011010000111100000110010100101101111011101100010101100101011001111000001110101111110101111001101011011000011101111111001001010011011010110010000010110100001111111110111111001011011001110001101010001011000100110010000101100111001011100001011110100110001100111000101101101111101000001011110101011100101010100100000101111010000111000010001000011111010001011000110011011010110101010111011011011101001100000011101100011110111101011100101100111101101101100001010000100101100011010111010110100110111111110001100111001100110101100011010000101011100111001000001011110001111001000110111010111110001011100110011101101111100101110011011011110111101110100100001000100001000110101001010001110111010101000100101011001000101100001011111111001111011111010011101010101011010110011000100001100110101000110001100111000100101011101101101110001000100101110101110101110101101101011110101010110100111011110010011001011010001100110010111101110001101110010010010111111110100001001011000101111110011111010101011001001100000100110011110000101000100111011010101111011110011001001110111111111101011001101101010001011011000000110010100110001101111100110001101001100101110010001110100000100111111100110000010000100101010000111111010011101001110001110101000101101101111111100101001000110101001110011111010001001111110001111101001100111111001110101000110000101101101111011000011000011111101101110001110010010110101010001110001001100001000011101000011001001011110100001101101000010100011000001101111010110111100101110111110000000111111000110111101001001110001100111111110010100001000000011000000110011001111000101111110010100110101001101011101001110011110101011100000100001010011000101110111010100101111000111001111101001110011111010000111101001111010111101001110011000101111010101010111001110010010010011110011110001110111111010000000101100110100111100111101010010110111001101101110110110001110000011100110100100011001011000000001101111011110110001101000000000111110100011011000111011010111101010010101100001100010001001010110010110110000010000000110001001000011100011000000000010111101010001111011110000110100100111110000110100110101100011001100111111000011010011000110110011101011110111011111011001100101111100010011110010111101011010001111101100001100000001100100010001101001111001010111000010111100110110001000111001001001010010110011010100000000010100000001000100001010101011011111001111011011110101101010111101100011001010101101100011000001010110110111011010000001111110101010000111111100100011110010001111011011111111011110110111010010010001110010100011111100000010101000000011011011010011101010001110101100111010110110101011010001000010111011001001101101001010110011000010001001100100011011001001100110010110110100001110010001101010100110111000000001111011000100101011000110010000111010000010100000000011001101010000101001101011010011011001011101110011011010101000111000100110001000110100011001110010100110011000011110110000110101000011100110101000101101001010100100010111110010110100111101110101110001110100111010000010100101101011100000100101111000010100010100101011011010000010001001101000110011110110010101110101110000111000011010001001010100110011111100000001011000010010110101111110000011000001001101000100010110111011001110001100110001001011111010111011000100111010101011111011100101101001111100110000011111101111010010001011100110100000010000111011010110000010111001011011000000101100100111001111011110100001110110100001000011000001101010100010000010001010000001111101000111000001001111101000000100100110010110100111000000111000000011101101101010111100101001001101100010110001010110001011111110101111110001010111110100111101110001010011111010001100000111101111010001111000001001011110000110010101111110111100101110000011110010111000010110110100110011010110000111110110110100001000011101100010111001000011000100100000010111011001001100011100000100000001100000001010001110100100111110100110111111010110110010110001110100111001101000011100000111010110001010101010100110010101111101011010111100110101100110111000111010011100011101001001001110110101010001100110011001000000111001110110001100001010001110011011111010011001110000010111011100101110000110110110101110001001000100010001010011001100001111101110110000010001110101101011111101001110100110101000111110101001100100111011101000111110111100011110101001000001111101000101110110110001010010001010111001110010101111010010000100011100101110111000101010110001001110101111101101001011100011010010000011110010111101000101000110001101000110100010101110100001001110000110100100111001011101111000010010101011000001001010110010010000101100110111010001001010110010011000101101001101011110110100001010101001000010000001001011000011111101110001010110100110000001001000100100000111011111011011000000101 +1001111101101001010011001011101110100011100001011000111001110111001000110111010101100001111001010110101101010100110111001010100001101101101000000111110101001100010000110101010011000101000111100001000001100000110100110111101110100101001110001001010100000100100010000001000100110011000011000111110010011110011000010110000110011010101111100101000101101101100010111100111011011000110010110011101010011010011100011001110000111110101000000001100010100001101001011101011010001000101111110110011100010110011100101001101011001101101100001100001011100010110101000110101001110000101100111110111100010101000011000011111101001000100110100001000110110110101001011100111111010010100000001000010000011001011010111101111011100010011110001001111010011010001001011100000100000100110011000111000011111011110111100100111000100010011100101011011100110110001010101101101101010111000101001110011101011001001011100000101100010101001011111010000010001101100001010111000000000010100011101010101000001010101110010101100101010111111000001010111101011011111101010010010101100100111100001110010010000011100111101111100010010010011001110111101001001010100011011010111110110011000101011001001011001000101001111001100011001010100100000111110100011000011100010101001011101100001000100101101010110011010000101000110001101010100111000101101000100001011100110111000000000100011100100000100110100010000001000110100011101101011101110010100001110010111011011000011101111101010100111001101001001000101010000011000010111100000011100110101010010101000010001010100010111001101011101111010101001000001110000000111000001010001001100011111110101000011110110001100110000101100110110111011000010000101100010000010111010011110011010111111100100110001110100110100111000111001000000101011110001010010011110011000011010101110000011011101100011011110000001101111010110000000011001101011111101110100101000010001000100001110001111111100111111111010001110110011000110000110111001101011011010111101111001101110110101011000111000010111010000111110110101010100011010010011011100000011011010000000000000011000001110100011010010100011011111001100010111011101010001110000010010111011011100100010110010110000000001101011110010010100100011000100011100001001111110100110100100111100000010111100010101010010001000100111000110100001100100110010001111011101010101001000000110111110111010010010011010010100100011011000000111101001101110000101001000100001001110010001010100101100001011110110101100100000010001111100100001100111111100100111000101000101011101110100111100011111000110011010100100111111000110110100000101010101100011001101110010101001001111011100011110010111010010001000010011111111111010111111000000100100000101111110100111001101011101101100111011101000101110001110011000100000000100111001011000001001001111111111010001001100001001101011010011100100101010011010110111000110101001001100011000001000001011110100000000110001110011010101110101010001011010000000000100001010111001101000011010000011101110011000100101000100110001000000111110111011101011100100000110110010101011011110100111100110110011100101100101111100100100100000110101111110001001101000111010110001000110101010011100001000001001010010100010100000000100010101001110001111000111001110010101110101011011100101101100110010010101110000011101111110010001000011111100100111100011101010101010010101110000111010111100011101101001110001010011010000100010100010100101111011010111000010010110100100010101010001110010001010110000101011001010100011001101101111111101010000101011010101010010001100001101011010110001010011001100011101011111000011011001010011101000110010100101100001100110010001100011110000000001001001111010101111110000000001001101101100010011010011010011010101110010011110010100011110110101000001110110111110111100001101001000011011010011011010011000101011010000010101111000101110101101000101011111000111010101001110100110111000111000100110111100010101000001101111100001010011101100011011001011111111000101111111101101101001011011110011111001110011110101011111101001010001011111110100011011100111000010000101010100100100111111010101000010010001100111001111010010010111010010101111100010101000001111010100111000001111101101110110111001001101001111101011101010011101011000001000001101011101100000100001111001100111000110100101000011001010001100101000110100010001100101101001001111001001001100001010101011111101000001111001000000010001111101111110110110110010000011111100100101001110011010000010111101101010101100111010001011001111000010100011011001101111100010110101010010001010111101010101100101001010111110110100101000010110010101111011000011011011110100001000011100011000001101001101110010010110111110101011101111101000001101011101011001010011010101001010111010100000111100100111111001100100010000010000010010110111110010011110010001110110100101010101100000100010000000110000010111001011011001000111010010010001001011101000001000111011000101001101011101001101110111001010011011010110100010111110111011110010011110011101100111101001111011000001100111001010110101101001111111001010011100001111110010111101001111111101101011100011001100110100001010111110011011101010101100011010010101110010111100111010110101100001010111000011011100000101001011001001101001111000110101101101011100000100010000011110100011011011000101000100000010100011010000000100110111100001011101011011010111011111100011010011111001111101100010101011001111001011010100111001011001010010000011001000010000001110100101001000110001010010111000010011011010000101110111010000101000011001010110011111010001110101111000001111100100101100101011110111110000001101010111001010111101101111010110100010010010111111110001001111000111001101000110110000001111110110101011011000110010101110110011001111010011011111010011000100000000100101011000001011010011110011001001101101010110010100000101010011111110001001001001111011111011001001100001010111001110111010110001110010010101110010100101010010111110101110110001000011110110011000001101111000101100110101100000111110000001110001111001011111100000011001111001001011010111111100001011101010110111010101110000010000010000010111110010111001010100100110011110110011011100101100010101111011110111111111001100000100111100110010011000001110000001001010111010001110010010000010110100111111001010111100010110100101001110100010010100010111000010101101101100000001000000000001111001101000110000011010000001000111100110101000000110010101000000001011011000100111100110100001110110111011---------------------11001110001101101011100101000101000010001111110110101100001010011011011110011111010100001000000000000111100101101101111001000011111100110110000000001111000010001111011001101100100110001100100001001000110101010100100101101101010000010101111111011111000001000110001110100110100111101001101110111001111100101000111110001110011000110000100100101111001101111010101001111101100000010110001100011001011110100100100111110100011000000111100000000000101101010101110000101111000010010111001000000010101000110011100000001000011111010011011010101110100101110110111111110110011010101000100000000011010001001110110101000010000101101010100111000011110011110000000001110101111110110111111100000010101001111100000111100000011111010100010001001011111001010011011110110010111110100100001111110100010010000000110100111001101101010010111010010000111000000011100011010100000010010011011110111111100011111001111011110000011111111001001101100011011110100101101011001001010001100101100011011010000111100100110101100010110011100101100000011111000001111011001011111001100110000100000111010000011110000110000001111101101111101110111000110001010010011110100100111010011110110101101001111100111011110111000101100011100101001001011010100101110111111011110010101100111001000100111100010101001001011000111111110101100010101000011011111000011010101101101000011001000010001111011000101100111100010011111100100010111001101000000100011110101010010100101011001111011001110010100111001000000001001010010100011010011001000110101010010101110001111001011101101010110101101101010010011111001101100111011111110000101111011000010100111000101010000100001001010100011110110101000100011010001101001000010001000100001101110011000000001001011110100100010100001110010011011110000100111000111001111001110001100110000011100010100101000000100111100111101111111100011000101111000110001000010110001011110101011111010111010001110110010110011011011010111011110000011110110111111010000111011110001100100010010110001000000110010110000000110101101001011111101001101001111101010110101001101110001110110000100110110100011010001001000000011000110101100001010001000101011010001011110001100010011000000110100110001110001010001000110110011111110100010011110011101000000001110101100111111100101110100010111000110101011101001110111111100101101100111110011000001010000000111101001110100111010110001101001101000100000111110101011000110001000101010101011011001000110010010111011110101011110011101110001100100101110111010111011110000111100101010001000001010110111010110011001100011010010110011101001100001110100010000100100100010010101100010000111111101110110000110000010111010000100111011101011001001111010001001010011110011101101000011000100000111010100000011110010011100001101110101001110001010011001110001111101011000000111111000111100010000100011000000001110100100101110100010111001011001111001000011101000001110100111100010101010101011111001110001110000110000000011111011100101111110010011101101001110110001000010111001101110111110111101010011111010000000001010001101100111000111011100001001000111111110010110111011110110100111111111010000011101000001001101100011110101011100000110000110011101100010000001100100110110100001110101011000101101001011001000001110111100001001111000001101011010100011111110001110001001111111101010010110011001110110001001101000100100001110000110001001100000100111011011011001111110001000101011010010110101101101011001110101100010110111100000010010001001011010000110101000101000111110110001110010000110000110110101011100110111001000011110000100001001010100111011110101001011100011010000011101101001101011011110100001100001100000001101010010100101100000010110010011011010111000011011010010011001011010110011000111001100110000011011110000111011001000100001000010111111111100111100010001010010110000111111111001000001110010011111111010001010101101001000111000100000111010100101000111000100010111100011011101001101110111000010111100111111010010111100110100111100111001101100000010100111010110100000110010000110111001111101110100010011011001001101010001110000111110001010101100100011010110110101000000110100110011011011111001000011011001100001010101001011111001010101101011101101010010100111000000000110101110011111010110111101110010101000101011110001110110100101001101111111111111000101111110101000011110110010100111010000011000011100100111100110100001011101001000110000100011010000110000111010101000101011001101110111111011010001111011111111011011000001011001011001101000100100100011011100001001111011011111111110100110111000110001111000010111000010011101000100001011101111111100010010010110101011010000000111100100010000011011010011101000111010110110111101110100100111000111101110101101110101011000010100010111100011101001011011100011100000010001101100101110011111010001101100110011011110101001100011111000001001000100011001111111001001110011010100101100000000100110000110100111100001111100111101111111010011001110101011110111010000111011010110100100110000100111010011111010100110100111000010101101100110100010101100101010000110001100010111111111110011100010110110001101001110111101011001010110010000111111110100000111001111001010010000000100101001100000010010110011100100111011001001111011110010000101111001010101011111101010000101111010101101100000101110100010111100001101011010010110001001101011110111100001110001001000101000111001110110010101000101110011000000011000100001011111000010001110100000001101000100111110010001001111111111011111110001111100000110110010110010001111111010110010100100000000011001011100101011110000111010110000100110000111000110101001101000010000001101101100100111000000000101010111100111101001011110100010010000101010011010001000010000000100011001100110101100111010011111010110001010111011010001010100000101111110010001101011001001111110010110001011011100010110100110001100010110101100010010010111110111010101000010000001001010110011001111010011101110010110100110010011010010100101000101011100110101010111111100110011100000100101100011000111000110011000110100111010011101001010100001110010110111011111100001101101000000111101111001000100011000010101010000110101100011010001010100101001010001100110010101110101000100111000101000001011000101101011000101110100011011011110011000010011000101110100011010000100000000001101011110000110100111011001101101110001100101100000001000111110101001111101101010110100001010010111000100001001010111100000000101100001110011110000101101001100011010000101000101101110100001000010100110111010010110001001011011010010011000110110110000011101011010010111000010110100001111110111110100001011001110000110100010101000101111011110110110110010110001101111011011011100010010101111100011111110011110000100111011110110111000011001011001101011110101100100011101100010100001100001101110010110000011010001000101011001110101111101111010110111001010000101111010100111111100111100100011010111100111110001000101100100000100011011100001010100111110010001111010010111010011001011000110000000000010001110010000100011110111001001001100111110001011111010001111111000101010111001010000110110010110011110010001111001111010101101011101110000001100101100001111000101100010111000010010111110010011000111000111100111101100110111100011110001111100110110010011001111110011001111011010101001110101111110100001010011101100101110111110001000111000010010110100000011001010101001010100111011100100001011011001011100001000110100100001000100100000110001000101111001011001010000110111100101011110111110000101100111000011111111101011111100010100111010001101001010110001110000000011000001010111100101010010100010100110000000111001110110011101101111000110011101001101100100110100000001100011001010000011010010111100101101001101101100101100011100101100011110100000100110000001001101110101111100100110001001110010100101001000111010101100111001000110000111011011011000111111111011110101110010010000110100011100101000101110011001000101001110100111010100111101101011000111100100111010101110011110101001011010100011101000101111001111101110111111001001111001010101110110111001011111101100110000001111111101111111011011110110010010000100100001010100110001100111000111100011010011010110010111000010011100100000110101010110001101010110110101010110001111101100111101010111011100101110110011111001101110010000000100110001011010100111010111100010110000111110011011011100001110110111100001101101001101110111001001000111110011100111101000100011110000111101010110101000000001101111111000000110011100000000101000101010000101101100001110111011100000011010101110101001101110110001011011001111001000111010111110001011011111000001010001100001101001101011000100000101000110101110001000111000000001011111100100100110010110011100110010000100001100100111100111111011001011111010011111011001010111001011100011010100111011100001000000101011011010100000111010110001011011001010101100011110001100001111110010110000110111101010101000101110011110110010110001001110111000011111011111000010100100110111111010100110000011000110100001000011110101100101100100000000000010011000011001010101111101011100110000010000100010010111000000110111100100001110100100000111100001011000010111111011000001011100011010110011000000010000111100001010011111011100001011110100100001001011100010010010000011110001010010001001001010010100011101100100011101001000101011101100101111011010001010000101000010001100010100101101010110101001100110111110101101100110000101011111110000010110010100000111011100001100010101010110100110111000000101100100000011101101001010010110010101011101110111001110100101001010110101101001010010010111001010100111100110001000111000011101011000000011100111110001011111011001001010011010010001010010001101110011011101110110001001101110111111001100010110101000000000110000011101111011110000101001011110111011010001110001111010100011101100001000110001100010100001010110010100100011111100111101110111001100001110101000000110111100000011001010000100010000001110000010111100001011010001001011010010110100000011001001111000101111010111110010010101011001110101011010001111111101010110010110000001010101101000011001010100100011110101001000110001001010110001001000111100011100101101000101000011110111000100110111100110101110010110101000111100000110100100100100111011100010100011111000101001001101010011110111011111100011010001101100011110101000111001111010011011010100110111100110110101001111000010010001110011000111111101011101000111111111111111010110000000110101010001011000001111101100111010100101001011000010111011101101011101010111110111100011010111100110010010001110000110001100010000011001010011001110110101000111001101111001011100001001101100100000000000010100011011111100000000111111011000001111100010111101100111111010110000110101110000110100100100100000111111000110110110001111001100000010110010111110110000100111111101001010110101100101010111000111110101100000000100011001000001001000001011000111000011010011011100110111101111101000110110000110000001011111110110111100100010000111111010001011100000011010001001010001100000001000010101101000011010111011100011110111000111000010010111011000110010110111000111001001100011010111111100111100101110011111111000101010010010110010101000000111100100111000000111011110010101001010101111100010000010100000010011011101000011100100101111101001110001101000101100010101000110101010101010011110101000000001010001000110010111000110100111100100110101010011111011000101100010000010101100001110011100001111101000110010101111111111100011110010010010010111011000010110010101111101001001110010111111110111011000001011100100001110001111101000110101110100000101101101011100101000010111101111111111001000110000010011001111100001001010001010010001000101100111011110000100010011010101001010001000000110111001111000010111101100110010010001101011010101000101010010010101001100000000011000101110100101110101111111111101011101100001000000011101001010100010010111101001101000010111111111100111000101110110111001110011101111111001011110110000111001001001001101011111000011110111000111110100111111011110100011001101001010100100110101111111000111010111110011001011010111000011101001011110111011001001101110100111100000110001001000001010110110011100001001000110001010100000110011100101101110111011011111110011000110010110101000010100111100011001011101110010000000110100011010110000111110010100100011010100010010000001001110000011001011000011111011001111110010001000010011001111101101010110110000101010101111100110101011100000100001101000000011010110110111100100000111010101011101100110101101101010000011011100101110000011001101111011110101111111011010011111011000101010000011000101110101101110101001010110111011010110111010011001011100100011111110110101010001110000001111011100101000001010100001001001100100111111010100010000111010110111010011011101111001010001111000011101111001001000011001010011010100011010001100111110001010111010010101010010011010000000110010000011001101001110000110101000001000000111111010001110101010100110101101100000111010101110010001100000010100111100100010011000110010011100010110011010100110100111111000000101000011001100000110011000110111001000111101001000000100011010111011100101000001000010101100111011111100110110000100000010111101010011111101000010111010010111100100010011110010010101111001101101001010000111110000000001011011110101110001000110111011000010010111110001000000111011011110110111101001100111000010010111010111111100011000010010101110011010000010000101111111010110101001101101001011100110100011010000011111000100110000101011011111000000011010011111010100011010010111000110101101010111001111001111111010101111100100111011101101110001000101101001100111001111110100000111101000010110010000001000100010000101111101101011110010000111010100101110111011001010110100110010101100101001011010110011010011000000111100011101100110011110111000010001000010110100111010011111101100110011111001001010100001000101001000101011110010111111110001111110000011101000100001011000001111100111011011001100000100101000000000001101000011000101111010100011110010111011010010001110001010011010011011110111100100111011011101100110101011011000110101110010110000010110010011100100001100010011011110111001000010001111100000100011001111111001000010000010000110101100011100110100100001101000101000010000111010000000111000001010001100111000111011011001100111010111000110111001000011000111011110101110011010111010000100100100011111000111000010111000000000011100111111001000110110100111101101001110110001010011101111100010110011000011000110010100011110011000000000011000011110011110011011100101010100110001010110101110100111010001010010010010000100111010101001110001010011010110001111111000110000001010111001000101101011110010001001001001001100110011001100100101111100110010100110110101110110011101100011001011010001011111010001100110101111100010110100011110001010101011110101010101110011010101110100011001100111101001101110101111111011010000101110100111110 +1000110000110010001111100001110001111111010010101110111111110100000101011111000000110110010001010001111110011010110010111001001100111110110010101011010001001101000010000011111100110001000101101000111000110111001111000100010101100010011100010101011111001111111011001110011110010101000001010010011101010000101001101111001111110101000000100100000011100001011011010110110111010010001011100110111100011110100101000101110011101100101100100011000110110111011000000101101100110111000101010110100101100100011010111110010011011110001010111110110111110011001111011110010100000011011001000110101101111011011100110011011100010100011100010101000101010010011000000101011010000001101000101010101011110001100010111101010110101010000100110011011000000100110000101000111110010111011110111011011011111110110111110010100011100010010101011001110101100000101010111111001111000110000011110011101010001000110011001110111000010001000111111101111000110001110100011001001100001101010001000010101010010010010010001000110100110110000111101100000000010101000011000011011110100000110101100110000101101110001111001000000110001110101111001011011101010110001100111011111001001010010110110100010111111111100010011100100100011110100110010111010001010010011001110000110110100010010101010101100001110000011110000001010110110010100011000100001101000100100001101001111100001000001011001001100111101010001000111001010000000100011000010110000101010010001101111101101001011011001111000001110110000101101000000010011001010001000101001011110010010010111000101111010001100001000001001111011001100101010001010101001100101010111000010001100010111011101011010010100101100111010001010101101101010010100101011011110010000001101111101110011011001110010111111110110011011100010001010110111101110111110111110100101011101010000000101111010001000010000000100110010100111100110000011011001101011111001101110101011010110101000011000110011011100011110011011101000000011101110010111001011011100010111011000111000010000110100100101001000010100001011001111010111010000110011111101001110101011110010100100101111001111101000110111000001010110001110000111010010110100100110100101111010111001000111010101010111000100001110101111111011101111101110111000011101100011111001001011000001100101101101110100100000100100110111000011001001011000001000001110111100001111001010010000111001101000011001011101010111100011000010001110001000110101010110101101000001011111111101111101000001001100101000100000100011101101001111100010001111111001000010111110110100001000001010000011111110010000100010010000000000100001100001111100011010101000110110101110100000111000101100010000011111001011001001001100001001011000111010000100001001010110000001001111011011001101111111010001111111010010001001110001111110011111101000100001100101111010010101000000100111111011000001101100010001001101100000001100100100101011000010111010100111110110101001000111101111110000111000110001111001010011111001010101100111111101101100111101000110110100010001111100100100001101100011011011111101100001100111001011101010100100111010001110100101001001000100101001000100001101000010110011000101010001110110000100111010000011111001101001111000010011000010001001011111011001001101001101001010100111110101001100111100100110011001010100011101100110010010010000001100100101000110001100010001001010111101110000110111111111010011111100110010001010100000111111001100110001100100111100110101100010000100011011101001100011001011110010000101110011010000110111011000010000011001101100010100000001011100011111101110010100100101000101100101110100111110110011010101001101110100000001111001011101010110110101011111101011101110111001110100110111100100010001000011010000111110011110010100010011011111111000000100111100011100011110100100010110010101000010001101101110001100001111110011010100001111111001111100011101110001110100011110101110101001100110111100100101101010001111101110010011011111101000100110110111110110011011001000010111010110000110110000011100101100011001011111011100010101101101010000110000110110001010101111101110001111011111001110111100110101100000101011001000110001100110001010011001100010110100111001001000100101101011010001110011010000111110110111010011100001110111101101111110110111100101110011101100101001101001011000101101110011110010011110011111010011100000000101101000001101000111111011111100111000101101001011001110100010000000010101110110110101101111110011000001111000000110000101000010101001000110011000111110110110100110010101110000110010111111010011111001011000001100101101010000101000111101110110101100011101110100010110010101001110010010011010010111101101111110100011101011001010100111100010110110111101010101110010000001100101000101101011101111001000000001100101100010100011101001110000011010011100011001111111001011010110011010101011101101101111100011011001100100111110100010000110001111110110000101110010100001101110000100110001101001110101101000010111001001000100001100100011000100010110000010100100110000001011111001111001001101100110011111011001001000111111011100010010010101111010110110000111111100111100111011111101010011011000110100101100001010010000000010011101001000000111101100000110101000100101110011101011001110000000011011111110011001111011000000010011011001011010100110100100100011111000011110001001001100011001111101001110001000001011001110011101111000100110100110001100101010000001111100000001010000110000011100100100000110101010001110011000011100010101001011100000110110100101101100101110011000101111001100100000110010100101001011110000011001000010111100100001110110101001111000001111001001100010001110110111011010110001011000000101000111111000011000011100000110110010101011001001011011001111101111101111001010101111111000000101000010101110111011111000000110100101000101011000001100011011000110000110100010111000011110111001010100111110110111000010000110110011100010110000110110010101111101000110001101110110000101101011111011011110001011111000100001001101111111001100001011010010100110111110101011000000011101100010000111101010110001001010111111110000100110000011011011000110001110101010010010000011001101100111101000100010011000010110110010110011000010011111010100001010000111001000011001111001110010010110101011011111001101101101111110000001011100011001001010000100000111111000001111001111101010101111111010010111001001010110100000111011011010000011111111111000001111010010111010101000100101001001111011010010011100000000111101111111101111111111001010011011---------------------01000111101001010111001001100111000001001001101011000111010010110101111011000001001110110000011101000100011011001010010100111011010111110010011111011110001001011101010011001010010100011010111101010111101010000101001011001110010000010000011001000000110111111010010010100001100010101000101100011001010001101000000101101111000101111100011001010011100011100111010010001111010000001100110111000111101000010111001110011111111001111010101101100110110011000100001110011001101101011100111110100010110001101000111010110011111000101111000001111110111101010100100011110111000010010100011001001001010111101100110100010010110110110000011101101011000111110011000001001000011010011110100110000011111001011100011101001101100111111100100100000001110100000100001000111111001010011010010010000101000111111101101000000010100101101010110110010000111110000001010000000101011100100101001001101111010000001110111110110000010111101010100001101101100010010111000111001110111111001110110001101001110101010000110101101111000111011101001000011100101001111001001011000011100000001001111101001100100000001011010101101011110110011111110101110100110110000101111110011011101001011100001000111010000101011110001111001000110101100001100011101111001000101100011001011101010110001011110000000101110001100010110111101010011000111011000010110110100100110101010000101001101100111000110010101001100100100100110110010011101000010011001111110110101101101110010111000010011010100000100001101010101110000110001111110000010000010111110000001000000110010111110000000011001110110010111001000100010001010001111010001000111101011111100111111011010011001010111100001111100110100111101111100001000111001011101100011000001110101010101001110010010110000100000000011111011111011011011011111111110100011000000110001010111100110010010010000000001001001100010011100100010110101011111011011111000000010101000001110100101010101101101010010110110101110011010011100101101100110001110000010011010100011011110001011000001110100101010001001101101000011000100001000001010010111010100001001110110011010100100100101110011111000110011100011000000000101010010100010000000100100110100011110000110000011101010100000100010011001010101101101101011001010010110001110000110001111011110111001001010111111110100000001001001010100000010111111010000001100100000100011010011111101100111101110011101111001100100010011001110110101011101011000011010011110101101100010100000000001110111111101001011011111001000100111101100010101100101010001010011010111111000001110010010000110001011001000011110111101100111011011000001110010010011100011001000001000000000110101110010111000111011011101011000111011110000011000010010001000010110111000010101001111100011011100011000101010111011001111001111011100100110001001100101010111100010001010010100011110010111000000101011000110000001100011000001101011001001110001100010011000001110000111010100000101101111001100101101110100011001010000010001010011111011001011111010101101001010001010110110010111111011001001000010010111000011111000101101011001101110111101001101000111100111010001110100110001001111110111010000011111111111100011001011101111000000101011100000110101101011000100001000101010110000100110101001000011101101001111110110101110111110110010110101011011101000011111001111010011000101000101110111110000001010100011111110000110011001110011110011001101111011001010100010000111110111110100111011000000101010110111111000000100011101111110000100000100000010011111111001111101010010000100101000101110000111001101010010111000111010110000110010011110010110010001011111110010011101010110100010100010010111010001111111101110101010100101110000000010110100000101000011001100100011000001011111111100100110001001011110011011111001111110110000001111110010111110001011110101001110100110110000101001000101101011100001000100001100101101000110101100001110111110010010111000100010100111001101001101011010010011001001001101010001101001101110001000111110010110110001001000111011101101111010100000011001001101110100011100011000010001111100010101100010111001100010001010100001101010111100010010111010111100011100111011000000001000110100111011100000111110100101111110010010001000001010000100001100010010110001100000110101110001000111110100010001000111101001001001110100101001000101101000010110111011100111001111100001111011010100101100000000000110111010100010111001000101000101101101000111000011110011110101111101011000101010001100100100001100101101111111011011010000011110010011010011110011111001010010110011110111111110000000011011111011111000100111110001111010011010111011100110001010111111011110111100110110010111011110111001101010011110010010011000111011011101111100101000100110100111101111100000000101101111000000000100100000010110101000011001011110010010000010111000110100110011001011010100001000001111101000100110001101000001110001100011101101111111000000001000001110111101000000001101110110110010111010001110000011110100111001011100100101100100001100011011110100000111110101111101010010101100010010110011101001101000010000010100000011110011100110110101001001011010110001000100011101001100110000011111011100100010000000010111100001100000110011011101101100110011010010000000011010010100100010110110000101101111000011000011011111111110100001010100010000101000001010100100110001101001111011001010010010010010010001100111010100000010011001111011010000001011001101111001001100001001001010000110010100111001010111110111110100010001111011000010101001000111010100010001111001110010010100000001100000010100001001100010000010000000011100111001011111011001000011011010100100101010010111110000110011100111010010010111010000111111000000101010100010111101010110000111000011111110010000011100011000111101111010001111101111001101111001110001100110100101001100001011111100101000010001000001111000101101101000101001110000010100101101010111001101011010011011011101111011011000000101011001101111011011011100011101110001001110111000110001101100001100010011101110101001111111110111100011110111000111100011100100110110001100100101001100101101100110001111001010111111010000011010100111101010111011010110010111110111000011110011010111100011000111000111000110001110100110111010101101011010011111001001100000010111000110011000011111101001100000111100101100001011010110000001001011110011101011011100101000000010101110111000010111000111110000111001111101001010010011100100011110100011111000111001011001101110011001100000100001111110000101011101100101001111011011011110101000011001111001100001011101011000010101101011011001101000110000000011000100010000110011100011000111000110111101011000010000111011101110101000011000001111111001100111100010101111110001110101101110101100011100110101111111011011010000000110000011100011111100101011000110100000111010000000000101111110101001001110011001010100001100011001110110110110001000110100111110110111011101001111011000111110000010100010011100100010101111000001110100001110100100100100110010101110000101001110100100101101101100001101111100000010100101100110010001000000011000111000001001110010101001010100111000011101001001100000000100100100001111100100010100100000110000100101010110111100110000000110110001100110100010110001110101100100100011100101111011111010110110100010000100011011110000100111011001110010110101001010100100110010100101100011010000000101011111000010100100101100101100010001110000010011101011001010010100011000010000011101001011100011000011000100101001001000010101111011010011011000011110001111110001001001100111101010110011111010110101110101111101101011010000001001011110011011001010100010111101000000000001011110011001010100000100000001111001000101010010001100111111011010001111101100011111110111010001101110111010111001110101110010011011100001101011111110011101101100100110101101100011000100011000111110001010010110111111110101001100000010001111011010111110110011100011101000100111011100111011110010010010100111111010101001010111111111011001110011111011101110000001111010010000001101000101100111111101001000011111101110010101000000111111100100101100100111011001100111111001001011011100001101000101011010010111011010000110100011100111111011111010000111000010010010011010001110010111001101011100011010111000110010001011110100110010111110001111001011100110101100011000011111111100100000110010111011001011110110001101011011110111100001100100101010110001110000111111101111101110110100010101100111010100001101100000100010001101001100110110101110011011011110000010111110001100110000110101011010101010011010101000100000100100110110000101011110100100100100111110110111110000010100010011101000001010001010000111010111101010010001001000101110101001111111001101110011101111101100100001110001001001000001100100000110101100110011001000011100011000111001011101110000101001001110110001100111011011111110111010110010000101100101010100011000100100111111111110110011001001101110011011001101111100000110011100001111010101101100001101010000000010001111001111010001110001110001101100001011011110001111001011111101101001100001110101011110101010001111000101010110101000111101100000111000111111101100100100000001100010111000101111010100110100001011111010110100000010111000011101010010010001000111011101010110101111010111111011111000110000001101100010101010111011001110000111100011010000100100000101010010010101011011000010001100011000101001001100110010000000101001001101001111010110110010111101101000000010001111110101000100101011111000011111010111001110111001111111100010110001110010110100110001011101101011011000011101011111000110011010110100100110100101001110100011100100100001111010100100110011111110100001001101011010011001001100101001100100101111010001100111010011001111001010110110010101001100110001111011001001110110000001101011100101010010111001001100100101000010100001000010000001101011111011010010110010110011010011100000101110001010100010010000100111101011111110101001001110011001110100100010001111111100000000001010111000100101000100010100011100000100001011010001110001110110100101001011000101000101110110010110111100000101010111000001011001001101011101110010011000010011111011111010101010111011101110111010111010100000011110000111000111111111111010100000010010010000101110111101100111111111100100101111010100001101000110010000001001011010110110011011001000111110000111000101010101010010110010111001100100100111011101000010111111000101001011000011101001111111001011010000010010100111011111010010001100111001000110100110011011001010010101010101100011111100000110010100011101010111111101011100110111110110110100000010001110110001101100100100001010011110011100110001010011110111111100010101011010010111100010110111011011101101100010011011000101001010111111110001010100101110010001110110101100101011000101000001010100101110100100001101000100001110011010101110110110011010101111010111100101111011010101001100011011010000111100101010101010000001110101100110110010000010100011001100111110000111011100101001011000010110111000000111100011110000101100001001001100011110111010100010000001000101100011111011001111110100010010000101000101010101011101111001101010110000111100000111110001100100001101110100000000101110011001000111111000111110100000100010111101000001100110100111111101011001011101101111111110001011110010001101101011001100001101010010000100101111000010101010001100010101001101100111001110001001001010010000001010100111011010111010101100111100010010101100101001100111011011010110010111100000001111010010101100011111001011100000011111110000100110010010100001000111011101010100111010001111110011100100111010100001000100110011110110010011111010001000011111100000011100110001010010011001101110001011110010110011011001110011001011011110101010110010110111000110110001111110000111000111010101001010001110010111010011101011001100110001101011010001000110011101010011101111100001010110001100110000101011110111001111101011100101000100001001100000101010000010011101111111001010011001011111001011110100110110000010111111000011011100001011111001100110001111001011100010101000110001110100110011100101100111000110101100011010101101000000001000101010011001001001101011001100101110100111010101100010110111110111010011000000110111011000101110010001100110100110111110110110101110001110001010111000011011001010111001111001000010010101100011110001111100110010101101111000110010100000110110001011101011011000101100101111100100010000100101001100101110011100111000100110101100000010010011001111010000000111001010111011000001011000100101100000001001110101111011000011101110101111111000010001010011011000010110011101111010111101010101011101000001110010000101001010010001010000111101110111100101011000101001101101101111100010110111010000000101010001000100101011001110001100111100100100101000111100000110001011100001100000000100011001011001001100111010011111001100011110100111110001111111011010110011101000111001010000011011110100011111101001101001010001001001101100000100100101011101111110011000101100101111110011101110100010010101100011001000000111010001111000100010101100110001111001001011100111010010001000001000011011100110001111111101110011001111110111001001111101110001110111011011100101010000010110011011100001011010110001011100010001101000101001111011111011111001111010001000100111010111100101000011011001010111110001010101010001011011011000110011000011011110010111010101001001011111111010010000100010101100100001001010001000110011000111010010110110110000110100010110100111011111101101110110000011101110100110101100000001000010010100100101001100001010111110110011010010011101001000000011100010001011101100011111010101000000101000110010010100001100001101011000001100001110100011010001001101111101011001111011001001101111110010100110100001000010110000011000111111111100001011001010001000111010001100110110011000100111001011010101110110010011011000001101100111011001010110000111010001101111111011000000000010101010110101010110111000100010111001100100101101010100011100001110110010000000100001001001010010111011100011000010000101000000001100000000000010001100101011000100001001100101010101001110111000100100101011111001110101010100011000011001010100011000111111011010110100100010101011000010011011111100110100011100101101111001111101101000101010111101010101100110110100000101110100110110010110111001000001110010011111011000010111001011111101000000110001010111100111011110000110110001001011101111011110010100101100011100010010010000010110010010111001110110011000001110101010101010001011001011111100001101101110100010001010011111001101111111100000111000000010100110101000010001000011111011001001100000110010011000001100100000011101110011100100100010100001100110101010001100000110010000111101000110011101110001100000010100011011000010000100101101111000010011010010010111010000101111011101010110010001011000101100110111110000011001110010110101010101101010010010110010110010100110001110001110110000000000010100011000101111001110010001101001100001101100010001001111111110110110100100010001011 +0001101111101101110110010010100111111011101100110010001010011010111101000100110100101010000100010010101101000001000110101001011101001001100010101001011100011100001001010110111000101001110011110111000110101000101011101110110101101001101110001100000110001111110010010110001001101001011001001000011011110110001011010001111010011111100000100100101100110101001111010111111001101010110101110010011110100111100111000100111000010110110001111110101010011001101010010110100100101110010001000110001110001111001101110011010111111000101000101100101100111111111011111011100010100100011100101000111010010010100001100010010011110010001100000100100101000010000110011000110001000101111110000011101111110001110100111111101011110111101000110000100001111111011010101110011000100111001101000011000001101001110100110101100010100111001010100100101010101001010000100000100100000101000000100101001110101011110011111000001111100011011011000010101101101011110110001010010000110001011101110100010101000101000011010011110101001010010100011111101101101110101011000011011010100011010000010100000110111000011011000011011101100110010011000101111011000110001010011001010011011001010110110011110101000101110011111110100000011001101100110100101001010101101011000110010111100100111001101111011101000101100100011000101000001000110111100011000011001111000111100001101111100111110111100110110010010100010111110110101000000111111000010110100101111011101101001011100000011010101010111100100100000111011110100001010111001100001011000100110010100101101001110011101011011000111101001110111110010001001111001000111010010110111011100010001110010101010100011110101001101110110010010001100011001111010101101001000000110001011001001010001111010010100001111011101011011111011100001001010011110101000000011001001011000111011001101111001111101101011110001011111010110010001110000000110010001110111000111100101101111000010111010101000000101010101111010010100010000111100001100110111110010100010011000001001100011000110000110111001001110110010111101101011001111111100000000010000100111111110111010000010010110101110101010101000100010001101010001011011000001011100100000011011100110011010001010011000101101010110001110010111010111001101100000000000100100110110110111101110111111101100111111010000010110110000010000100011100000001000111101111000011110110011110010100001010111100100011000010000101001110011101111101010011011000010110011100100111110110100000111001101100001011000100000010111110001000101111100001000101101110000001010101111100100011000110111001111010011010110101010101001110111010101011011111100011110111001101010000010011100010000100011000001000010000001111101001100111001011010100110111011110000000100100011101101101101110110010001101000111010101100100111100101110000000100001001001110101011000100101111001111101101100111100010100110011100110000101100110001011101011011001110010001010000011111101100110001001110010010011110100101010110010111010101011110111011000101011100000111110111000010100001101110011011101111011101010100110001011000011110001001101100000110011000110011101100001110101111110100011111011100100000000101101000111001101001001011011100100100110011011100001000010110010100101111100100011011011110101010001101000011001010001101001011101010010110110100111100000111010111101001101011001111101111001001011111111000010001011100011100011111010100000100100101111001101001010100110010001011000111000000001100111010111100111011101101001000101101101001110000010110101000011010101010110001011111011100011000011111000111110111010001110001100101000001101110110010010001001000010011001111101100000110010001101001011111111110001010101000111101100100100010001010111001011101010010001010101100001100001001000000010110111010010111101110100110001010101100101010100100111000011011011110100111001110011101000010011000111000100101010010101000110100110000111110010101111011100001000110110001010100011101001101110110010111110101011100010100100000011101000011011010010011100110100000010001011101100010100011001000010101001011010101011001100110100110001011000101010001001100011000000010010001100101110100011011010110011010100101010110110111110010101101000001001110101010011011111101100000001000001101001001111101101001110100110100100100011111111010110001000100101100110100100101101111001110111000001000001000000111011111100100001000010011011101000001001101100001000101100110001110001001101000001110010011011011100010010110101100110101111000100100110001010100010011000110110110110000101001000000001110001101110010001011010101111011011001101001110010100100110101001001110011011000010011100100110011100101110101111000100001000000111010100011001011100111100110100011101111100100000000001011101011110111000000110110011000111110111101100011000010011111000110000011101101000100010011100101100000100001100100001100100001000101000110001110001001000001011100000000010011101000001010100100110100010101100011011000011011101110100000100110010001011001111110100111110000110101100011111111000010011101110110001101000110111110001110011011110000100001111011100110010100110110110100010110101101111100110110110000100100000111001011111110001000100110001101100111001110111010111111001001011100111100111000101000101001111101011111111010110110100100101100100111100101001110101010001111100000000100011101000011111011111011110111011011110000100010001011011001111110010110100010100101010101111110011010000000000101000011100110000011001000011110010011111000110000011100101010011111101000111101011000001000101001010100011011101111111000110011010101011100010111101100101011001101101110111011010010101101111000111000111000011010000000011100101001110101111010101010001010100000111000010011100000110110000011100000110101101000011111001001111101101101111010011010111101000001000001100100100011011000010000010100100110110100011111100101001110001110110010000010111010101111001100000001100000001110111100101000011001101111110111100011100010101000101111000000011001101011100111011111000100101000100011000110000011011011010010001010000010110111101100100000111000001100001111001110101000111110100100100011010100010101101100000011101001011001101000000000001000011000110100101111000010001001010110011111000010100010011111001000000010011001010111111111111100110110011110010001001001100010010111001000001001011000001100110011001101011011000000101110011110101001010101111010110101111101101000100001001010001001010010100111111100100000110110000111101010011000010101111111000111---------------------01010111110000000001111100011111101010111111101000001010011001110111101100001110111001001100101111001011110100110001111110011000111101110111100111110100011101001001101000001010100100110011111011100001100000011010010100011100000110001000100000010101101001010101011111001011101101010100111110111111001010111111000110101110111111110000010101001110010110011011101101010111001000110000111111001011100101100000000110100011001101000110010011010100000100000101000010111011010111100100011101101110100010111000010111001011100000011000010011000100011110000001101000101011000110001111100100000111110100111111110110101100101100011111110101111011111111110001110000101100011010001111001111000010101111011010011001101110000011110101111001000110101000001011110100000001111101001010100011000000011011001000011100010101110010001011101010000010000011010100010010100010010000000111001100000010001000000111001110101111111100101110001001000010001001101011101010110110101100101101000100010000100100101001101111011110010100010101000110010111100101010011111111010101100001101010011100111011011011010111100110011000111001010001101101011011100011010011001101011111101110111100000011111110111001000001001101010011110100111001110110001101010010010101001000010111000101001110100111100001001001111010010111011110010010001011010110111111101010000110100001011000101111110001010010000110011010111001110110011001110011001001010111011000011011010011001101111011001010110010100101100001001011101110100001011110101001111000001011101000001101101000100001010100010100110101111011010000000010101101010000000011011101011010111110001100100100001010101100100011101110110001111000000110001100000101000011010001101101101000110001011010110101001011000110001111001010001011100000100010000000101110100101011010011010000111110000110001001100101101100011010001010111100001110001001010010010001100001001000100100101111010001100111001000010111100000111100101100000000011010010010111110010001001000010010011010011001000111111000101111100011110101000010101010100101111101011011011011010111110101110000010110011101011110100000101010110110101101010010111001001001101110000011001111100100010100000110110001011000000000100110111110001100010110101010001010101000001111000100111100100111011100001100000101011000000000001110011101011110101101010100011100011101111101101011001111111101110110100100010101000010101010100011001100101010100100101011010100000100010001000011110010101000001001111100101000010000001010010100100011001010001000011101011100010111111010100001001000111111011000101111110000110100110000100001100100001100101110100000011100110010000001000010101001110101001010000001100111010101001010111001110001101101101110011111100001001010010111011110010110101001010110101001010010001011111100000011000011010001010111011010001001001011101101010000011011000010001000011011010000011011011011011001001100001100001100100001111011100100101100000010100101111010101111110101111111001111100111001111000010111110100111001110100100000001000001000011100010001111010111011100000111111101010001110110010111111111110001011010011111111001010000110110101000000000000111000100111100001011100010000101010101111110110110110001001111110111101010111011000010001000110101110101110100011111100101111100101110001101001100000100011010101011001001101110110010011000010000100100011000001100011001110111100101000101010110110000111111001110110011010000011000001110110011001101010101101001111010100111101101110001011000111111000100011100101001000101111000111101100000000111010101100100111000011001101111111010010001110100010111001010110001000101011000000001011001011101100100011001011000010000100010111000011011011011000110010000011001111110101010111100000110010010110101011011111111111100010100101101101101011000011000111101001100101111110100101001001110001110111011010111110101110110011010110010011111100010011111000010001110010010001011011111110011011100101010110110001011010001000001001101011000001011111100100001101001101111001010001101100010000101001001110000111101111111101011110001101101010100111011100101101000110001000111111010010100011100111110010000110100111110110010010010001000010100010100010000110011001011010001111000001111001001100010010101000000010100000111111100110110000011001001100101100010011010111111011111111001101110001010101111010110010010010110111110010111010010000101111110011101100011111000001110101000011110111010101111100110101010010101110011010110100000010110010100111011100101110001010101100010100001010110011111111111101011100010101000010010111110110000110000111111111000111110110001011011110111101010101011101101001101000110110101001010101110001010111001010110110011101100000000011110011000110111000101111000101000110010100110010100010110001111000111110111001101101111111011100000110011000110100110111101111101000000111111110100010000100101011011001110000101011101111011010010001000101000111010101000110001001100011010011000000111011000000011111011101111000011001110111000111000101000000010011001100001100011110111100010001101011001111011110000001110011101111111101011111001001111110010101101100001111100011110101101001000001011011101011100110010100011010100011011000011011000011001010011110110000101100011000011111000111110111110111000011111011000100101101101100010110110100010110001011101010000100110010110011011111011010011001100110001010011000100110001000000100101111010001100001010001111000011111101011100100110101100101000101111111011001100111010101101100011101101110000011011011100011101111000101110101011101101010110001101101000001000001100100011101011010011011110001010001011001000110000100111010100110101101111111011010100001001101011001010101010101011001011110010110011000111101011010110010111100000110100001100111011011111001001110010001101101100000111010101001110111110111101011000111110100011001100001010100110011000010110110010111110010111001110001101001011111111000001111101110111011110111000000100100011101110111000111011011000100011011001010001111110000011010010101100101101001101100001000111010101011000011000100111001011010010001110011101010001111010001100001001110110100101011001111100101100100101001011100101111111000000001010010100111100111101010100111111101000110010000100101100011001110011000010111100101000100001100011011100111010101001110110100010010001000001010101110001100001101011110001110111110100101111000100010010010110101001001010010001110111100110101100110101101101010000011111110000000100011101011101010011010000111100010001001100011011010101100101001111110001000011010110011011010110010110111111000100110101111111011000001010100111110001101100111101000100001100001101111001000100000101001010101110001100100000011100101001111111010101111011101110010100110010100011000010110001111111111110010111111111101000111010001101110101110100001100000000111110011111101100001010001110011101010001000100101100011100010101100110110110001000010101111001101001100101010101001111001011110110011011101000101110011111000101110100111101101110111010100101110110111110110001110010001000101101010010110010111101100111011100110001010000001110111111110111110010011000001111001000001000011101111100000101101011101001101111011011101010000110110010100101010011010101000000001110101000100001100111100010100101101100001010000111111100100011011111001101000101010111101100111001101011111100101101000100100010111011100000001111101011000110100011110011010100110010101000110001100011000111011101100100110100000010001111101000000010110000010011000100111000000000011010010110001000000000100000111111011110001100011010110000110101011101110100111110100010110011000001110000000011010011010100110111011011011111000101101101111011000111100100010101000111100101000100001110101110000000101101110010110000111100101001100010100010100111100010011000010010001101010110001010110000110101011101110011100101100001010001011100011011011111001111000000111101110111011001010011001111010000100101001010001111111111010010110101011100010101001011110101001011001110100011000110101001001100000101010110100110010010001101010001100001111011000011001000010101011001001111011110001110110111110011100101110100011000100011110010000011110100101011111110001001100001110100111000010011011000001011110110000001111000011111000001101100111000111101000100110001000001001100111100010100100010000100000010110011000000111111111111101001010100110010101010001011111001110110110010111100010101100101000110000011111111101001110110001111011011001011011001011011000111010000110010111000111000001101011111110011000110011101011100101110011100010010011100101110000101000100111111001111010110111001000111101001100101100010100101100011111100000010111101111000110001101001010010110001011001101011001101110011001100011000110011101001001001101111000100011101011111011000010100111001010100101100101111111101101010100000000110001100110000010111110110100111101011000101001000010111000101100111000011011000010101111011010101000111010001111100110000100110111101111011111000010101000001000100110011111110100011000001010101011111101010101110101011010010010000001011110111000111111101110010000110010101110011100011010010101110000000111000101001101101011011001001110111011010111100110111000001101011000100111011110000111000100111110101101100010011111111110101001000110101011101111001111110011111000100000110011111010000101000110101110101001001011110110000100100001100010111000000011111110111000011010101011001110001110100111011101000001000011000010100010001101111011111010001011001011101100011000101000010101111001101101010000110100010000000001110010100110001001101110111101110000011110011000011101011010111100001001110000111100001010010011001101101010000000001101000000011110101111011100100010101010011100111101001001110011111000011101011110110101000100100001010110001000001110100010000001101001101100010110000000110101110011101001011100000110011101111011001100011010011010000011010100011001000111001011010001100001010000101100110110000010010001011000100010001101011001001100000000110110010111001111110001111110011001001101001111010100100100110001110011101000001101111011011010000100000010001111001001000100001011111001100101100011001101111101110011100000100111110101000110001000100111011011101111110101110110111111110000111001101111010000000111110111000001011000110101010001011000110010011101110110000100001111001000010000101110011110101101010000110111011011000000011000001100010100010101100111110010011100001101101000101100100010101010100010100110010011010100000100110010101101010011010000111110110110011111110011111010110010001110011111011111000111100101001011100111110001000101010100101001111010101110000110101110101110111100000110001001101000100110000100110100100001001011011000010010001010111011011001101001011011011010111110101111000000100010010010010111100011011011110001101100010011110010111100010101111010111011101000010110111001111110011101111101100111001011010100001010010000010111101111111110110100011000100010111001110100010100101110110011110010100000010110111001110001111010100000100110001001000111010101100001111110010001110101100011000111011010101100100101101110100011000011100100111111111110101010110101001011001001010100101100011000011100100000101001010000110101000000100011111000110101101000000101111101100110111100101101001100001011010011101010111001010011011001100101111110100001110100111000000111010110010100010010110100110111110000111110011111100001011101011001010111110011011110110000111011001011111001111101010001000011101111101010000010100001001100001111100111010100110001001011010010010001101110111110010001110001011111010110110110000001101000010101100001111000001101011110110110110000010011100110000010010000100000100100100010001100010011001110011110110100011111110001100010100101010101101010111011011011001010101001111100010100101110111101011001001101010011101111110101110001101101000100110000111111000111101010110110110101100001010100011101111110000010000010110110100010010000101011111110011101101100000011110101101000100001001110101100010001100001001101000100110110000011101101001001001011010111110010101001111010110010101100000101000001110100111001110010110100001010001010101010010011100000101010011110100101010010100111001100101110111110010100100000100010101010100000110011000011100100000101100110000100100111000100100000011100111100100001010000010110110000101010100101010101000000111100110100001001001011111111111100001011010101111100111010000101100101000001010010011010100000111101010110001010100001110110000100001001000101110100001101010100010100011101001101010110011110001111010001111011000111011101011010010010100110111110111111001101000110100101101100111101111010011101100000000010011010011110010010100100011110011100100110111111011100110111101110010010110111110011001011001110101001101011101010100100000001110101011010001100101011111101101010101000101101000011001110111010111110111010010010110000010111011101011001010000110010110110011110101010010000100010010001100110111110110111110110100111101100011111111001010011001001010111010111110110111011000010001011000100010111110001011001010101101011000101010100100001101110110110011000011010100110001111101111111101100101001110111101011100000010011011001111000100111001000111000011010110101100111011000101100111011011101011011110101100001101110101010111101001111000010000101010111000000110101001011101011001001100011001101000110000001000100010111000011011001010101010110000111010110000011011010111100100001111001011100101010011100101001011110110000011111000010011111111011110010101110110111101101110110100100100011010011100010110001000010101001011111010100111010010110000111010000010011010011010001110110010111011100011100010000110111101000101000000110010100010100000000000001011100111110000100011001000000100100000000010011111110100001011101001100011011010111110100001001011111111001110100010100100100000000000100111011111100010010100011000111000110000100001001100101001010101110101000110110100010101111101111010111100001100110001000000011100100000100001101110110010001101110110100111010101010001001000011010101011111000001100101011110101011000100010110101000011000111000110010010100100110000111100011001110000101100101100111010010111110000110100111011101001001010101000010010000011010011001001100110101011011011100010001101010101010101000110111111001101101010110011101101100111101111101101110000010011100011010110000001111110011010110110000001111010000110101101111100010101100001010001011101111110010111100010111001010000010000001000111000011101011011010110010001101100010010010000010101110011100110000100001010010010101010110010011000101000110010100111101010100011010000100100011001110000110100001001110011000011100010110010111100001110000111011100001100010001010010001011101011100000010101000000000110111111111110110011101101111000100100000000101010011010100100011110010010010010001110111001001011100011010101101010101000011010111100110010100100 +1000001000011101000110001111010011010100001101101110011000000110011100001010100100101111011000011001001111110001011100001111011110111011011000100101011110101001011010001010000111100110011011010011100010101010110011011011100111011010000001111010010100011000101000011010101000011001010100000000011011101110110011111100100011000011001000000001110110101110000000100010011100011010100001101011111011101001010001111110100100101011101000010001001111000101111010010110011000110100100110001111011011110101100101001110000101000100000100110101001111000010100110100111000100110001011111001000001110001010101001001101001010111100001011111100101001001010010000110100000110111101110000101011010010101011001010011100100001010000000000101110101011000001111111111110101101000011001100101110110001110111010101100110010101101010101011100011111110100101110010101111111101011100100101101000010000010011100111001110100000110000111101110011000110111101110100011111110111000101101101001011111100100010011100110000011010010101000001110101110111101011011100000010010000001010101000000011011110001011110011001010000000000010110010110001100101110010010101110100111101011101011011010011010100001010100110111000100101101101110010011000000000101011110110101101100011101001110110001010111111001000000111000110011011100100101010000000001000100100011010101000011111010010010111100110110011110101100101001110100000101101010011110111110110111011011111111001110010000011111000010011010101111110000111000110101011101010001001010111010001000010001101000110110000110011101010100110010110000000101111110110001010111011101110000101100101000001111010110010100100000101011110000100010100111011010001000001101000010110110000100110011010111110001010001111110110111000010111011101000000110101000110001111011000111101000001001010110000111010100010111111100011010011010011110011100000000110101001001001101001001100100011011111011001100111101001110101001100111010101100011100010110100010011000000000110010001010010011111000100010010011111111010100110111010100111011000001110101001011000011111101000111010000010011101010111110110101110001010000111101010111011110111110000011111000111000010011101111101100110100000001111000101111100110001111110001101100001001101011011000001000011011101111011110111110101000001001001010001110111010111111011100110110111001000100111000100000000010001101000100010101010101111100010101001011001001110101001101101100011001101011100001100001110110111011000111000000111101111010100110011000110101101100111110000010110010101001111100010101101110111000011101011101101001111100100111000111111000111101111010110010000110111011110110011100110100101000010111010010001001000000001001100110011111100111101101110000101110101101101011011100010001000100001001100111011101001001011100100101000001011001011011001101010000101000100000000000011111011110100001111111100110001100001011011101010000001101101001001000100010110010001000110100001010101100110010110000001101110110100001010111000011000001010001000101000010111001101010001101001011110110111001110001001100011011100010001100110011001110100101111011001101010010011001010001111010000100100110001011001011110110010010100011010100101010000110110000111110010110110110000001100010101110100110011101000111111001111100110101011010111000011001101100001010101000001001001111011111110110010111000101111101100010010010000011111110001010110010011101000111110100100100110011011010101011101100010000001110111001010100010001101001001011110100110010000011000101000010010111111010111100001111001011001000100101110011001111000000011000101010001101010001100000110101011100000010111110100111100010011000111101000010011110100010010001111101001010000000011110111100100010010111001110001001011010001010101011000100111010011110010100111100010010000110101010010000100101000011100010100111100101111001010000110101101011101111101111101011101101000100110110111111010100101101101011011011010111010010001111100001101000010011110101010011000111011000100101110010011101100110111100111110001100001101110010111110111110011100010101000100101010010010111000000000101011010111001111001001111001010010101101011100011110000100100111110110000100001101000000111011011011011010000001010110000110100011110100011101000111011000011000010001000011101110100001101010011111001011010101111011001111100000000000010000111001000010100100100110011001000111100110011001110110010001110101100001110000100011101000111100010110111001100100111000100011111111000011100010000100101001011111100010001000010110110111000000111111110000001000110010100001100110000101011011001100010101101100001110110101111100100111101100110110101011001010101100001110100000100010001101011010110001101000010000010011011110111110110001001011111100001101100100011110001011001001111111010101001110110010100000010100111010000101111100111011110101001001101010110110000101000000111111001010111001000100011011000101111010111000011001000110101000000001001011010100101111011001111000101100101000000011000011110111111101011101110100011110100100000000010111111111010111001111010110110011010110000100100111000100101101000011111101010010010100011111011010000010101010100011001011011010011101000010100110001110110011001111010111010010100101111000100110101111110010011011101010010110101111100100111111010101111001101100000110111000100011000001011101000110001011101001000010111100101110011000010010011010100101010101101001010000111010101010111111010101001000111110000000000100010011000110101110100101111011111000011100010111101001101100000000110101100110011011111100111100111000100101000111000000000011110100101110110001000001100110100001010010010000111110011100111010100011010010110100011010111010011001100101111000100011010000001101101101110000100011101001001100000110101101110011101110011110000111011101001010100111110000000000001101011100000011001100000000100100110000001000011001111010101010101100111001101111101000010111001010101010011010001010000100001010000010011100111000100011110000011111110011100010001010011011001100110010010110111010101001100011111100100110101000111110111111000010010101101110011010011010011010010001001001000111100101001110011110001110101101100110101011111110011100101111110000110110011000000010101110000011111011011101100110110100001001111110000011010110110011101101001011111101010000101100101010011110001011110011110101111111010000010110010101100101101101001101111101001100000001101110111100110101110000001111001101101001110010001---------------------00110010011110011011100000110010000110000010111111010100000111111100001110010111010101100110110101010011001010010101001111010110001100011100011010100110010011100111010010101110001001110010101110110100011110101111111011001111101110001111101000001010101010010011011110010000001100001110100010001101110001101010010011011000011011111101111110101101011011011110010110101000010111000111111101101110111010010010001111010011000100011001011001001011001111001110000000011000010110111111100100011001010011110110111111100111000011100011010010110011101001110010110111001111110001110101011101100101000100011011001100011100101101101100011100110001111100000101001011111010001000001100011001011110010011101000111100100101110000011101110100101001011101000000001110111001111001111001001101001111001100010010101110111000111011011101110010010001100000011001110111000010111011111010010101100100001000101001001000000010111100111111000011001110000011100110100101001100101101001000100011101110110000110100011111110100111111011101100111010101100001011001011101111000111110101011101110111101000100000000101011110011010010101001001101011011001110001010011000001000011000100011010011011110001000001011000111001001010001100101000100010100000000011000101100010000011100100101101111001000000101111111100000110000110101101010010100111001100110100011011001101101100010001100111001111111001111101000001111011011111110000010001101011100111010000000010111001111011011111100100101100110110010001000101111111101010000110101100010101000001110010100011011000000011000100101011101100010110110110001010000101111101010101111100111101100101100000101011010101110100001000000111110100110010000100001100111000101101000100000011011110111010101011011010011100110000001000101000101010011001010101011011010000101000010001011111110111110001010011100010010000110000100111000111101011111100110011110101111101111111100111011010111100110100101000001101001100110100000110100110011111010011001011000110000101010000001011010000010100011001101101100111111110001001110001110011000010110001001101001101110000111011000100101000111000011111000010111111110001110100101000101100110111000011010100100001001010011011110001000101111011110000010010110001001111010101011001011000101111110010011011101011001011010010010010101101011111110100000001010110111110010010000000011000111110001001001111101000011100000111010111101000000111000011100010000111000110001010011100001001000100011000011100011011111001100101010010011000111111001100101110010110101011001011010001011000100000010000011001000010111101101100011101110111011111010100100111001101011111010111101011100110011010100000111010110001001111001101101100100101101011011110001000101010111011010000110000000100111111001111111111010000000000000010110111101011101100110100011001000111110001110110111011101100111110001100001010101000111000100110010110010101010010001110110110111101110100101011111100011100011111000000111011110101011000101001010000110001111000111100000010111110100100111110011011111101001011101110101100110000111100110111111001100010100101100101011001000111001101000010001101101000110011011011001001011000010100000110001011110001010001010011011100100000001101000001110110110010011010001101010101001000100000000011110010111000001110010100111001011100111010111110011000000011111010111000111011010000011101100001001000101001100001001111101011101001111111100111110110100101101010110111110101100010111010111001100111101101111110100011010100100100011111101110100011110010101101000010110100000000100111101101110010011001011011100111101100110001100111010111101000011100100111011100000001101011100010110010000001001000011111000100111000110000111101011000000010100101011000000011000000011000101010000010011101010111100100111110101000111111010101100110011101111011011000100101100011101011110000001010101011001011001011010100100100000011000111010110011111110011011101111100101011110100011100101000000000101001111110100001100101001111100101001011101000101010111011000011101000101001101101000101101111000001111011001010111101011011110011111110011101010011101110101110100100100101111110011101100101100001110101001100000110001010100111101001100111100010111011000110010010010101111000011110101110011001111110011000010010010010011001111010110100100101001100111010010110101010111010010011000001111110111001110010101010100111111000010000101010011111110100101111010101011010000100100111000101101001100011101110001101001110011100101111001111110011011111100011110011001110000011110001101110010000100000010111011100000111101111111001100000111101010011110101000100000111101110010010011110000101000111101010101011101110111001011000001111110011110101011001111101100011001111000110001010101100101000010101010000000011010110100100100110101111111100111000111000100100101110010000100001110100010001110101111101111100110011101110010111101100011100110010010000010010100001001110110011111100001111010001100011101101101001100001011000100101110101000011100000001101010110111001001111100010011111011011000000101001111001000100110100000101100110100110011011110000100001101111110100110100101010110101110110001001110100100110101011001001100100000010110000000100001110001100011100001001100100100100000100100111001010101000101100001000011001101000001011110000011101001111110011100001110111111011001111101010110101010000101010011101001001111001011111001110101101101000101000011101010110001100001001110100100101010001000101000100010111010010101000100110100010001110011110000101011001000110100011011110101011000010100101111011000101001101010001111011111100001011101100101010000011000100011100001100001101111100000101111010111111011001111000101000011100011100011111010111111011110010110000001001011001000000110101000011001011010100101101110010010010101101011100101000010010001101100111010010010110011010001111001011110111101100011001011110101100011011100000010100101010000111000011100110101001000001011100000011101111011010101101011011101011000100111010100010100100011001001110010001001000011010011010100111000010100100101101000111010101110100110111010010100111100111001000101111100101000111111001001110111110101101111110001101101001110101000110001000111000110100101101000101000110011101111110101110110100111010111111110111010000011011101011101100110100001100111110011000001101111011110101110000100011011100010011111100001001010000010111011011111011110010011010000000101111011110001010000101100011111010011110001000011000111111010111011010001111001100001010000110010100101101110011011000100101011100001010000110100100100101011110010001011000110111110110111000111110111010000101101111010110100001000101110001011110010110010001110111000000010000000000110000101100101101010101100000010001110101101011010001001100111000000001100110100000100011111110011010111110000100100000101111011010011101110111100001000111111101010000001110011111100100010110110001010010100100000100100111111010001000101111100000010101111101000001111001000111000010100001111100001010011010110011001100101010110000110000101000111000010011010101111111111000110010001110011000010001110100000001100111100100100000011010011000101111111110000100101001011011110100011100110010001110001111000101111000100001101100010010100111111110011111001010010000101001111111100100110010110000101001010111111011100111100101100110100000011011110110110010110011001001000100110110101110101100110111000011001101001000101001110110001110110101010000110010000010001001001000000101000101110001111011110100000000111110110100000010110000001010001000010001011101000101101111001001011111110111110011011001001010011111110110001000100110010000011111101100011010100010100011110000110101111110110100001110010101010101110111011001000000011001001101010100000100111000110110111011100000001100010101101000000110101100000001110011011000011101110001000011111111010000001101100110101000101011011010101000101111101100001001110100011111010001111010010111100000100001011010001111100001010000111111100011001001101011100101011100100111000101011011111001100110010100111001111000001010111010111100011011100001101011110110011111001101100110111101111011111010100011100110110100011110101110110100100001111111101111001001010100100110011101011001101010101000101100011110000010110010110000010100111110101110001011101101111101100010110101001001110111101010011010101010011100000101010011000101111111100100101111011101011010001000010111110100101000111011101101100110110100001100010101110110010000001001001000000000001101111100111000001000100011011110100111101101010110101010101011100001001000000011110011100101010010111111110001000000001000011110110010001111011110111111111010010000010100101000100101111010000110110110011100011000100010111111000010100010001101100000110100001011111011101111111000101001001000111100100110001111000001001100100000010010100010110111000101100001000011101011010010001000111100001000111110101001110101110100101010010011001100110000101100110111011101110001110010000010100000110000111111001000011110011110101100011111001111001100010011011001010010000100110011111001101100101111001101110100111110011010000011001101110001101001101001111100111110010111001110101001110100111100000001111110000110100000100100001011011100010000110111101001000111001010100100101011011111011011001011111110011000111010110001100010011010110000111000111101010101111110101001000100110110011110100101110001011010111110110110110100111000000011101111111000011100011010000110011010110101011010101001100100011011011101101001111111111000011100001011011010000001110011110001011001100000111010000100010111001101000011111111010100101100110100000001110010010010011000101010010011000100110110000010101110111011011001011010010010111011001010001011011101111011011011101110100100001101000110010010111100010000001001110011001001011001101110101101100011010101010110011110101111001010100100000000100100111001000111111110000111100000111000001110001100010000010010101101101111001111100010110001010000011110110100010110111010101100111100000011011010100011010111000001001101100100011001010111100000010010000111111100111001001101101000000001011111001011111100011111100110011010110011110111001100011001101011111111011001000110000000001110011010000011001010110101111110100001010110100100111100010101111100001100000000100100011011110000111010001001111100001001111101011111101111100100010011100100000101001101011110001100100111000001111010000000101110110011001000010101001110001000001100101010101101010111011100001000000000000001011011111011111111001001110011111111110001110100000100011110000101111111010001110001001001111011110110010001110010110011011100111111000001001111111100001001111110101101110011010011111000101000000001110011000111100110111000100010011101001011101000101000000010000110111011010110010001100100000110001111111100000010011101011000011010001011001000000101010010010000011111001010001110011011100001111010001010001010011000001001111111110001011110110010110111010110101110100110100000110110010011000011101110110101110100110100111101001000001000111010101001100100001000100010011101100000001110010001010000000101100000100010110111010100111001010111101111001010000100100010010001001110100110101001000101010001110011011001101010000110111000000011001100111010100000110001000011001100100000011101100010011010001011110010011101011110110011100101001101011111101010111010000110101110110000111001110010100000111100001011111011001010100111100111000000001100110010000100110101111110110011011110011100000011011011100011100100111010100100001011011001001111010011101010100001000101000101110110110100110011000000000010111100011010110111000011011101001100110101011111101101001010000010110001101011101101100010100010110110110100000001010001101110110010001111101111101011111001010011010011001110101101110000100110101010010001010001101001001001110110011010100000111111111111010100111111110010001010001101011001110100001001001011100100000111000110000100001001111111001101100100111100010100001010010100000110001000111110000001100110110111000000111111100000001100000101111101011000000101100110010111001001010001010101111010111001011100000111111111010000110000001101000101100110000000000011011101010010100100100100100110110110100000110101001000001111100111001011101010111001111011010111101000000111010001100001110111010111111001000011010010001000010110101101100011011011011110011010010111101110000000001000001111111011111111011011111111101101000101111011100001000110101000110100110000111100000001110111100011101100100101011110100110000001001100111101001011111110110011000011111100110110100111001100100010101000000110100000100110001100001101101000000100011110001001110111001100011011110011100011110100011010001111111101011111101010101000010001000100011111110011110011010100111011101110011000111110110010100110000111001101110010010100101111011001001010000011100111011001010111001011101001010010011111101011000111110011101110100010011110100111110110010001100010001011001001110110010000100011001011000110110111101100110010111101101110011000100000001111101111010010101100011101010000101000011010100010010001111001100100101000010111001010011101000110001011111111111010001001011001001100101101001111111101001001010100111110100011001110000010101010000010011100001110011101010000100101010010110000010101111011110110101000110100100110000010010101010100111000010110101101001001111001100001001111010000100100100000101111110010001110001111101001100001111010110111001111001011111000010100100001100101110111111000010101100110010000001111000110101001011100011110000111111110011101001001101011101011101111000011111010111011000111010111101110010010000010001101011110100101010100111010100100110101001101001111000101101011110010110110100011100001001011001100011110101101011001101010010100000101101000001010001101011100000101111001001110111011001100111100100000001111010001100011010111110000011000011001101010110001100100110111100101110011011001100010010000111110011010110001010100001110100101111101000000111101000011110001001101011110000110100110001010110110111110110000011001000010000100111010000111011100111000001010110001111011110111110110110001011100001001010101110111011011011000011011111111010100111101011010100111101001101001011101110000001101111111000010001001001111100001010001100111010111001101100010011100110111101001100000001001010110111001010000100101010100110010111001011011011101010011111010000000001001011000010001010101100000101101110101001000001001101011001111010111110110111111101010011100111001111111011111100010110100111110100001001110111010010000110111110111100010001101000010101110111001011110100010011111000000010000001110000100001011101111111110010110000001110010110110110000110101001100100010000100100100110100000010101100101111101000010000100101101110000110001000001000110110101011000010010011100111101111100001011111110010110000010000010111001000100010110101000101100010110111011011001010100111101 +1101010000100101100110011001011100010101110101111110011101101100000110001101011001010010001111001011110010101110100111010010111001111000110101000000000111101100011011010011100011111100110111101010001011110111110001110000111011101111011001101000100011000101010101111111010110001101010101111000110101100000101111010010011100011100011000101101111101001101101111110111101000001101000110100000111111101110000011000001001000111001011101011010011011100011001001100011010011100101010010101111010101001110011100101010001111100011111000101000011001000011101011010111011011010100011100101100101100111100000110111100111001010100100011000001000001101100001101110100100011011111011100010001111010000011111111001000100010010001110110110001011011110001001011100111000100111101000010110100011010111011011101100001110000011001001111111011000000010101000011110000001100000101111001110100110110111001100111100110100101000000010110001100100100001011100100111101110100000110010110100011101001111101110100011000111010100111010010010101011110111111100011110100101010011000011100110100111010000101011101100000010111010000011000000001111111101100001111000000001100111101100111010101110010110011001011101110110110111010011001101000011110000101011011010010110111000001011110101111101011101000101011110110110101010001101111111100111010110010001110010101101110001101011101001000000111101001000001110011110000100110101110000010111000011010001100111000010110100111010001011110001000111101110111001000011111111100000011000110000110010000011111010100100011011000101001010111010000100011110101100001100011010001011001010011000110011100110100100111011111000011101001001111011010101000110110100010010101101000111101111001101110011100011010000111001100010110010101001100111001111010111000000110111000111110000011100101111100000100100000000111001110111000001111001101100000101100000011000100000001001111110111000000101110101001101011010111101001000111100100111100110101000010111101000000101110000010100000010011110000111010110111010111111111101101011011011011001010110111001001101010100100100110111011000001000011011101010110101111100101110101111011110001110001010011111111011011100111001101011101111101000010101011100100101011001111001001110010101010101100100010010101001011111011010001111100110001010011101000100000111100000010011001111111011011101101000111011010011100100001011101110100100101100100110111110111110000100011111101110110010011110011001010111101110100110011110101001110010101010010010111101011000000010100010101111000000110001110010110011011110110000010110000100111111010110000101010001001011111011111001110001011000111001110101111000100100111100101110010101101100011000011111001100111011111101001011100110110110101111111101011011011011000111010100000011001100101000010110000010011101000000011100100010110100110111111000110111101111010000011100001000110010011101111011110110011111010000000000000101001001010011010000000001010111100101100000011000011011000001100011111010010010010100111100011111001101001001110100011100011001101111000100001100000010000101101011001010001110000110011110010001100110100001011111010010010100111001010111011011101011010011110001100000000100101111010001000100111110110110001011101001110101101010100001001011011111101011000100110011111001011100010010101001001001110000000111111000101110100100101111010100010011110011110010111000010111101111001011111000001001000111011110001101100100110011111000101000011110101100011000100100101011000110111011000011111100100010011111000110010011011000100010000010110101000011000110011011011101100110000100101010111000000000110101001110010100101111010101011000111001100111100111011010110010000100000000111001000001100101011001010000110000111110011001100101001110101100111110111110110100000111000010100101100111111101000100000110001000101010000100111000111111111110010100001100011001111001001110010101101111010000010011100101011100110010110110101110110100100001110000010110110111111110011100101010100111111100010010010101010011110011011010110111000111000100001101101010101000010011110000111101011111001100010001110110100100001001111101111110001001111111001100110110101100100001101100100001110010110001010111111110010000011000100100111111101010011111001000010011001100110100100010111111110111100011100010100110100110000001011010110110110000100001010001000011110011101001101011010110001000000001011001001110101101100100111010110001010000100010101100101001100111100001011010111100110011101111010111010000010110101001011010001000100011010001110000110010111011110101000101100010000010010000001110101000111100101101011001101100100001000011000001100110011111111100110101010000101000000110000100011001001100011001101001111101110111100110000001001100100011100101010010011101110001000100011010100100100011010001010001100010010110010100100000001001011010110111100000010010001101101101000100010101000110110011101111111010110110110110100011000011011011011101100011001001100011110111000000110010101100101011111110100111100011000001011010111101001101001010110110110101110010000010101011111010110100100001110010011100110111010110010010010111001011010000000100011101100100011100000110111110010101001101011101011100100011111010011111100010001000010011001001001110100100100111001100111110010101101110000110010111001000001111100110001111111100101000011001101101000001110111000101100000100101100011101100011110010111000101101000101000000100001010100111011100110011010101100110000001101101101100111110110111011011111110110101100110100001111110101100001000101011011010011010100100010111010101011011110110000111100001101001000011100010100101101110110101111010010101000010011101000111100111110110110000001100100101111010001101011010111110101110111010001011101010101011000010000010110001000000110010001010011000000001110100101110000011111111101101010111100001011111010011101100011011001111110110001010000001001101100100101110101101100000100101101010111011111111111110100001100000010001010110001111000111110000111000011010001111000001010111111101110101100101110100110011111000101011110110111101010010010000101001000011001111101100101111111001001111011100011001000011000011111100110111011010001011110111100000101101001010010010000000100101010110011011111100000011011100101100011011111011110000111111111011011011001010110111000101010000010101111101111010010001010010111110010111111011000011000100011010000111110010101000101000100101111001110100010111001001101011111011101110---------------------10010111100001101010100111100101001101110100111010000001101010011100101011001110111100000011001111001011010010110000101011101110000001000011001000110000010100001001100110110011111100100111111010001010110001110011110011010100001010000100101000001100110010110000110000110110011101110010110000110100100110010110000001101110100011001011101000001011111101010110001011110010100010101101100011101111011001100010101111100100110111011101010011011101100110000110000000100000001110011100000110100010101011111110111101011000110011001110000001110101111100001101111111111001100010001110111011110000001000100001001110011100011000001100101100000000001101010101100111011111001001001000101111010001100110111110100000000001010000100101111011010110011010000100111011100101100111011110001100101111110011011101100100110000010110011001001101110001100010011100010101110111100000100011100010100100011110001100110110010110011001100110111000100001111101100100000011001110010010101010100001010010001010111100110011001011011000111001111101111110101010001111101111001100111110100001111101101100100001111101010011001010011000111101010110000010000000011010011010000011001111100111111001101011000000110010111110110111110011110001100110101100000100101100010010110100100101100111101101101110111011001001011010101101001000111000001100010111101001000001111110101000010000000001111101001111101010110101111100100010111010010000011011101001110011011111010110111110011101000000111101111100000110000000101000110101100010010101101110110101000110011000101001000000010010000000011101010100111101111100011011110010001100001100010010000011011101100100010010001010010011000100110010011101010110010010010000111000101110110011100001101011000110011010100111100001101111001111011101011001100110110110110010101111100000000111101110011101101110110110001010011000110111001100111011000100110001100111001101100111111101100101111110000100111111100101000001000001001110001100101010100100001010000000110011001110110000110100010100110001001011111011011100110110000001110001000010100001111001000110011101111001110101110110101000000110100010111011011110101110000011110010111111010011010110010000011110111000100100110000110011010111110110000001010001101001111000011100000000000000111000100010010010111000000010011100000001111010000001001101110001010000111011101100011011110001000010001010110111000010100010001101010111111100011011100010111011100111111000110101000111011011001101101101100101011011100110101101101111000000000100101110100000010101101101111110011110100110101100101110000000100110000011110001001111111110110011010100111011110011110010101101111000000010000101000111101110000010011011010111100111101010110111011111101101010100101111100100110100100101001110000000011101000100011100001011111101011011111100110111010100011111000101010111010000000110100001101100000100000011110000000001101111001101110101100111111011101011011101010101110010110010110010000111000110001100011111011010110101011011000100011011100001011110000101100000000010100000111100011010011111001111110101000000101001000101000001110001111111000011000111011001111110101100011000001001001011010010111100000101001001010100111001111110000010011011111000110000100101101101111110010110001101110010111101000001001011011110001001111001011011100111111101101011001000010101001000100010111110011001100000111101011111111100100011011111000101110001100101100101000011111000001001101001100111010000001100010111000000000001011111001011011001000000101001100011100110010010000011111010101000000100101111110011111011101010010000101001001001100111000101010101101000101000110111111110110100000011001011011010001110001011001010000111001100000101000111011011100110101100011111100011010001001011011011000001010111000011110110110101000011110110001000001000111100011000110000000011100111011100111010111001101000110100100001101101101101011001101110001110100001001001001001000110111101110110100001000101101100111100000001011011001100010100100001010001000010111100111111100100111011110111010000010001100110101100110110111001100011010110000111101100110001100100101101010110101011111111101100101011000110100011100001111110111011001100111100101010100111000101101001101000011011011010101110101110111101101011111100100110001110100101011101001111110101010010010001011011001100011100100111111011010110010110111100100010001000010010101000111111100010110000101111010001110110001110010111010001100111010011001001101011100100111100110111000100101100000100001001011001001100110111110111010000100001010011001101000010111111110011011110101011011110101000101011101010011010010011011010111010100011101011111001011010100011101101111010101000011110111110111000110100110001111111110011111101100000010001011110110011000101101110011001100001111000101110100001011110000111001000111010010100111000110101000001100101001010011000100010001111001110000010011010100011111000101000100100100000100011110110101111010000110010101001110110100101011111110011100010011101010011100000100111011101100010111011100100110011011110110011010010111111111101100100111110011110111011001101011011011111111011110101100001000011011001110111000100001111011111010011011000011111011010110011101011101101110111110000110011001000001110101001000010100100001110011001011010001011011111100110110001000000100110111011010011110110000011100001111111110110100101110101111010000110110011011010010100100011010100010100110111010000111001011011010110001011011000111110111111111110100001111000110110100111101100001000101010110100110010000000000101110100100001100110000000000010111001110001111100001110010011101101100110110000010010110111101001111000010110111001110010000010100100111011000001100110011111010011101001000010101001011101001011011010000110000000100001111111000110011110010101111011000110101000000011000110100110010011100110000011011010010111011011000000100101011011100011111000111100010101011010111101110100100000010101000111001011110010011010111010100111010101111010010010110110111000011100001011000010001111100101101010101001011011010100010111000001110001001100000111000101000101001100101011001011000101010001010000110011011111000100110011001110110001101100110000110010100110001000101001001001100100000101011100101110100111011010011000000001000100100110111010101100101101111011000011111001011010000101100001101010101000000110001100000100001100101010100010000111110011101101100101101110111110010011011110110001111000011111100101001100000010100010100000000010000010110000101110100010110111100101110111110000000100101011101101111011000110110010110001111010001100011111110111011000010001110101110111001101001100010110001010100000100011000011111011111010101100011001011001100110111111110111100010111101000110110011111000110101101110011101101101110010011011010000001010101000000011111110101111100010100110110111001100111011101110111111110111011110101111111100111111000100001010100100010101011011000110010110001101110001110110101110000110001001100001000101101110111100000000111000111011001100001011110101011000100101100100010101000011111101010111000000011001001101100000111001111001000001100010001110001110000111011100100110111000111100110101010001000000100111001000111011001001110001111111111110000010100101011111111101010100011001101100010010100110111110101011011011110011001010100010011011100001110011000101111111010101111111101010010011101101000000001111111110010001110110111100101100000011011001010010011100110111011001000110100111111110011111101100001100111110101011100100010010000111101100010101111010100111110001001010000111010011101000110101101100011010100110011011110011101100110111010000000101111100001011111111011011101001111011000000001101000010011110101110110011110000100011100011101110110000000001010010111100001111101011101101011000000100000110100100000011101010011001101100011001100110000101100011011110010000110011111111100110111101101010111011010010000111011101000000110010100110000011100000101101110000001010100111010001011010111100101000001101111001000001000100000001110010101110000110111001100011100001101100110100110011000010111110000010011101000001001000000111000011000111000000110101101110011010000110001001000010111010011001001100110010100010000000100000100011001101111100011110001001011000000000010100001001111101011111101100011100000011001010010101101001111010111110110111010111100101001101101011111001001010001100001001100010011000000111111011111100001110010110010101101100011110101001001011010001001100110010011100011100001111001110000000010010101101111011110001101001010101111011010110111100110011100101000111110010110111111111110100010100010100111001011010011110101011100001110000011110001111110010111001010101010110001101000000000101111100111101110100111010000010001010111110111100100010000000010011010110001011000100010001001010100010111101011000111000111011101110000011110000000001011111001100001111111100000110000101000100101000000101100010100100101110011111000111101101011001111011011110010010111010001100011010001000110000011000010110111001101100011100000000011001010111001101010101101100011110000111111110101000000111100011100110111000100010000100001101110101101000101110011100110110101100010010100001010100101111000111001110011111110101010110010010111100111011001101100100110000111000000101101001110011111010011001011101011000101011001111000001010000110010000110000011001101101010001011111000010011101001111001010100110100000001100111110000010100111111001010101011110011110101100111111100110000001010101010010100010001001010111010101001010110111011101111111000100100010011101100110001111010000100011101000101101000011100111011100111110001000011011010000111101110000000100101101101100101011001000011111100101110100110100111101111011111101110110001000011101000101101111001010100000110111000101000000101001001110001011100101101110010010000110000100010100010101110110110110011101011111010011100001100010100010110101110001011011111010111100101110111010101000000100011100000111011001000001110101000011000101110000100101111100101110001011010011000010101100000111010010001011110100010011100010000110101101010011111101011001000101010110011100000110011000100110010000100100100111010001111110011001011110001101101001001000000011111010011111001010011000011110111101111000111000010010010100100111010010001100101000111100001111010011011010100000101000110010111010100011010000111100000001110000010100101110100110101011001111110111010010011101010100101110101001100001000110000101010110011011010001000110011000110100011110111101011001001010111100110000110010110010010011100000100100110010101100110100110111010001001110010111110100000011100011001100000010111100111010000110111111111000001011001000101011010101110100110110001011000110100001010111110100100111100111001100010111001100110100110110111101111001011111101010110100000100011111111100010000111010110010110011001111110001010001000110010110111011100101000000011001111000000111110110101101011100010000001111101010011000011101111111101000011101001111111001000001110110001010000001100010011110101101110101111100000100111010000000100101110010001100101101010011100000100000011001111111101110010001100101111011000110001010001101010101001101000010111001110011000100110100100010000001100101011110110100010100001000101100000001100011010010010100110110110101110111100100111000000110000011110100100010111011100000001111000010111010111110110001010001101010111010100101001001011110101001111111001110011110001000111100010010011111011000111001001001111000001100011100110001000011000100011101100001010010010010000001001100101000001000100111101001110110111001011111011101011011111110001000010011011010101100100111110001100100010011101000011011101000011010011110011010011011110110101100001010111011011111101001101111110011011010111001010111011010101110100101000100010000110100101110010011110110011001011010000110000100010101011101101011000100100011111110101110011110010000100101010111001010101010001110110000001100010000001111110100000110101100001000011111110010000101001100100101100001011000111001010101100111001000110100111101011111111110000100001001111101100010001011110100101100000001000000001110010010101101110110011011111010010010111000001101010000111100111101100110011010101010100111000010010110111001100010110000000101101110010001101010111011000110100101101011010000101111111010101110111001100110100011011100110000000110010101001100100100010001101011110000001111000111001100100010100100010001011011011000101100011101001111110111110110111000010101010111101000111110110101111101001001010000111010110111100111111111000110101000101100110111011010100010101111101001110111011100010110111101111111110101010000001111001000101010000110100110110011101110111011100001011001000100011001010001011111011001001101111001101011010011111000000010010100000001011001111110101011111011111001111011011110001010011000010010110001010011001000010010101101101010101100000101011100100110110101011011011101110110101101011001010000001110110010001010001101000011111011011010011000110111000001010111011101010011110011010011000010110011000010110001111111110000001111010100000010111111010100111000001011110010110100010000110100101010001100100000111011000000011111101110011111011011011010100011110010000011001100010001101010111010101001000010000101101011001100111000010010111101010000111001010111010100011100111000001010111000101110111111001000011010101000001010110100010101100010110110000011111000110110000010000100111100000010000010011100001010010110001001000011011010000101110110000011001001001100010111100000111110000100010100111101111000100100000000101001010110111101001001001101001010011001110110110000000001100111000000011101111111111000101010011001011100111001110100011010100100101011111000001110001000011100010011110111000010101000100101001101011010010110100100101000001111100000001001111111110101101011111000111101111001101001111101100111001011010111111010100011010011011100001111111110111010110111110011000001000010010101100101111110100000100000110001111001001000001110000010010001001110100111001000000110110100000101111100110000101001111000010110011111011100011001111111110101001010000110111001011111000101011110100000101001001110010000011101001101110010001111111011110011011100100011001011111001111101101110011010110000010001111110010010110111000001110110100100101101100111100010100000001011010000110101101111110010000011101110001000101100010110000000001000011110111000100100011111110001010010011010101110011101001011000110000011100100110101001100001000001010000001110101010010011110110101111011011101101111001110110000111011110111001001101001011101000110010111001100101010101111001111001011110001010110101011111010101011000111100101011100100011100100000001101010111001011111110011101010011110101010101010001110000111111010111011111000110001011001101000111111011100111110111000101111001001011100011000101011000100101111111100111010100001000011111001000 +1011011001010010000000101100100011100001100111110101000010100011000111001011111010000010110011111010100011001001110111000000000100011101000111011010110110101111001000110011101111001000100011000011000100111000101101100110101100010000001101100100011011100011000110010000000111011110101100100101101111111011000100101010001101010010000110100110010111000010101010110011010111000010100000010101100011010111010110100101010000110011001111000010111101100001110010000001001101101011010111110010010010111100010000011100111011101111110111000000000101000010110110011000001100101001000011010110001011110010010100111110101011110001011011100011001110100011001011110001001101101111100001111010100010101000111111000111000010011101001101101101100100100000000001011001000100100001101010101011110010001111110001100000110110111000110101000000010100011111011000010001100001110001100001111000110000111111111101000111010011001100001010001111000110010000111011011110011010000100100111110101101111000100111110100000110001001100001010100100000010011010110111001100110000101011110101001000101110101011110000111100000011001100001100010001110000010110101101101011111001000001100010000101110001000101110000000010100111101111110001000001101111011010010111000010011011100111101101100011110001000010001011011010111111110110010010001000101010000110011001110001101100101110000010011010110111010010010110101010100010110111000111010001001111111100110011000001101000000101010010011100000011100101001100011100000011100000111010100000111000001110000011011111101111010101100010110111100000101111101001111100000001110010001010010111111000100000010000001010000001001010110100010010110111011011111010101000101110110011100011000110000011101000000110111000001000101101010011000010010011001001001100111000110011110111010011101001100110100100001010010100100101000111101011000001100010010100101101011100011010111111110110110110100101111000110011010100000110010011001010100111011000111110100010011001011000101111001010110111111010010011110000110011000000010000101110011011010001110111111000111001010110101000000000100001110001100110001011110111110101011001011100000011100010001100010111010011000001100000001000001110011000011011100100110000000111001101100001010010001111110001011101011111010011111111110000010111100011000110101001100111001000100100111001001110110111101100110001000110010001010100000110010010111010100001000001110110100010001100010000101011001101110010010110101100011011101100111101110011001111010111100010110101000111100001010101000000001111011110001101110100101110010110111011101011010010011101011011010010100110001011000001111110100101011101110001111110100101011010101100010111101101111001101111101100100000011100111000001011110010011110011001111011101000101100011000101100110000110010010000100110111011000110101010000101110001100101010010000100101101101110111110111100011110001001111001001011110011011110110010111110111110000100100101010000010011011011001100110111010101111010010100110010110001011011101111111110001000011001000101101110110110111110111111011110010101011011011001011010011110011110111100110011011001010000110011100101010011110110111011000011101100110011001110111101101000101001101100011100111001111110101001100000010100011000101111110011010010100011010000000010100110010101110111111100101101001001011101001101010100010100011011011011111111111100011100110110101111010111100011011110110100110010100001001100010100001000010011110100011011010111111100001101111001100010101000110011000001100011111010011101100011101000001001100001101011000011110000111110111110111001001100011010111011110000101000010111100100001010101100110000101110011010011000100001100001010010100110000011111110001000110100000000111010111100110110010101010100110011011010110110100011000100000010110001011000001011101110011101101110000111111000000100111010011010011101000011010110011000001101001000000011001110101001000110001101010011000101001010001110110000010100010000101011000010001000000000010001100000001101010011011010001000101100010111000000100010010000011000010101010110011011110111101100000100100011111110010111000011011001110101110001100000111011111100110100101110111010001110100001010011000001110011000110001001101011100110101101101011110101100101000000110101110101101110101110010111001000101001110111111000111010110110110000000011110001010111000001101011001000101001110001011011001011010111010010101100010010111010101001111111010011000001011100011001011111010000011001100000000011000011000110100011001110001111001001010101011110010010010010010110100011010000001100111111111001110101110011101000001110110100010101101111000001101100111100001111100111010110011111011101100101001100111100110110111001001001110110100100010011010000000110111110011101001000001101010110110001100100011101000110001111101101001010101001110000110010001001111001011111010100100011000011101000111011111000101011011000111101111111000000100001001001001010000011010100101011001101101111111001100110011000100100011100011011101001111100011110100101000111001110011010101011010000111011001101011111001110010101100000101110101101110110101011000011011011000000011110001001000000001111100100001100110111111100000000011000111010101110010101010001010101110101111000010011111101001100100010100010011100011110001100011010010100111101111101011010010011101011010000001110000100001100101110010100000010000000011011111111101111110001110001101001110101100110001000100001000100111011000100011010111001010111110111111010011001001111111010001010110101010101010000011110011011000001000010010001000110001100111101111101010000010100110000001000110110000011101101111010100100000000000000010000111001110010111000100111101100000001010111101111110100100111111001001011011110100101001110100100100111010101010010011000010011101000001111000000001111000000010001011010100111100100110101011010000110101001101011001110101001010001101101000111011011000011000110101100100101010000111001100000110111111001101010000011110011001111101100110011000110010101101101001000110001100101111111100011010011110110010011101101100001001110001000100101000011101001101001110111000101100110111101011010111111110000111010101101011101010010101101011111110000101010011011101011000101110100110101110100111001111111111000000111010101000001011001011101101111101110101011100100101011011100101010111101011100000011010100010010010100101011100000011110101010101000000010110110000001011100111011011011010110001000000---------------------11011110010111111010111011101100000001011000011001011110000001011110010011000111001001000111100000010110110100100011011010111011110101000110001001101010011111001100101101101110000000010000010011100011011111000001001000001001110111010010000010000011100000010000100011010010111010101011101001111011011010101101011011100000110100100001100010000000111101110111011101000011011001110100100000111111101101111110000100010110001000011101110000001000110011100110101010100100000110000000101111011100011100010011100000000010001100100110101110000100101001101111010110001010001111011011110101110001110001010101100011000010000101101001000101011010110010100010001000010110011000110011101111100101111101010010000101011101011110001011110001000011011110110001110111011110110100001110000101101111011100100100000010001100101010110101111001111001100000000100000010010011111110110111111000111011100000001000100010000100000100010001001111111110011001101111000011010111101011011111101011110111011011001110000001111110101101010001011110011010101101011111001010110010001110100111111101100010011111010110011011111100100101010110001100000110010010001101100001110101110011110010000100001100100110111001010100110000000101010010011101101101010011111111100000110010101111111100000100010011010100101111101111011110000001100110111011111101011101110001100111010010010110001001001111100111101110001110111001011011101101000100100000000000000000100010100100000101011010010010011000001011101000100101010000000100010010010001100010000101110001001100110111100101011101101011001010100010010101110101100101001110010011011011101100001001101000111001001100001100110100011001001111011110101111101101011011010011100011111001101100100000000001010100011001100100110100110110000000101111111110101100111101000110111111011110100110010011100110000001100011010100000010011111001110111000111100101101010011011011010101000110000111010110110001000110101110110000001101011000010001101110000110110000001001101000110010110010010010100011100010011011010010001101000111111011011011010010011010011101111010110000101001110000000101000111010001000101000110001101001110101001110001001111011010001001101110101101100101000000100000000111110101100110101000011100001101010001001110011010110101000001111011110111100110110011010001111100000101110101110010011011011011000100100000111000111001101000100100001101110101100010111011001101111010111001001111011011101111101101101110000011110111010111100000001010001010101111101001011111010010101010011010000100001000010100101010011101101100111100101000110000001110000101101000101011101001111101001111011110001110000000101000000000000100100100000010111111100010010101011111001101000101110100011011010000111100010101111100010010101111010100101111011010101101100000101001011110100000000101100001100010100010111100111010010000101010100011100011110110010010110001111100000100101001000101101000100001011001100010001011001001111001111010100010001010110110110000100100110101100010000011100100011010001001110001001000010011001111111011111110100101001110010001000110011010111001111110110001010001000100110011111011111111101010101011010101111000010111001011110101101010000111101000000000001010111110000110000111011100100000010100100100111110000001010110000100010011100111101000110000000010010011001001011010011000001100110011111101010011000110001100010100010011011111111110100111011100111000010000010111101111101001111101001010000101101010000000111011110010010111111100111110000010100101011011000110110101101010100001110110100011111001111101100010100000101111000010111010000110110110001001010101000110000011001000111110111000110111010011100000110100100100001100011100000001011111101100000011101111101111011100101100111101011110010010000110101011110101110000011010000010100010000101111110111111011110001010100100110010001100001111001001101111111010001011001100100001100111000110100001000011010101110111110111000001110000101000010100111011001110001110000100001001000010011100110111101010111001100011111010110001000001111001111111110001101011011100101001110111101110011111100000000100101101001111001111111000100100010001111110111110101101111010111001001010100110101001001010100000110100000110001111010100110000011011010000111011110101001001000000100110101110011110101000100111011100011010010010110111101101011000010000101110011011101001110000001000011011110010011000110110101011010100100101010110111001000111001011001010011101010001110000100010011101111011111011001001100011011011000111011001101110110111100001100111110110000111100111100001000111111001100010011100011010110000111010101111101000111101100111110010000110101010101000010100010100111101001001101110100100001000110101001011101011110110100101010000111001011111011001000000100100100001100001010100110110011110010100100110001101000110100111010110100001000111101111001100000001011010111110110010010011111110100110011110100001110100000011110100110010010101111101100000110000111100111110110011001001101111111010000000011000011011110111111000011100000000111100000111000011110100000111010111110001100000110000101100010100010100001010000011000101101010001011101011110100010011111000100101111101111100000010101010001010001110111100001111101001001000101110100011011101010000001001101001110101110010111110010111111111011101001010010000011000110001001001111100111010000000001110000010101110001101101001111110110011101011100110101100000100000101001000000001101011101000101111110010100001110001101001011111100001010111101001010101111001100110001010101100110110001001110010101011110011010101110110000000111111011001100010011100101100001011011001100001010011010100010111011000101101000000101001100111101010111100001011001000010100111110001100011010111000001001011010110001001111111101101001111000011011001101111100111111111010010000000100011000101000110101001111100101110101010011111111010001011000101010101101111000100111011110011010110001011001111111110010100001010000111011111001001001010110011010001101000001011001010011111001010111100001001000001111001011001011101001011010001101011000001011110011001100111001110101011011011111111001100011001110111110011101111101001101000010110000111110010101011000111110010101110001101101001110110110110101100011110001111011000101010111010100100111011000111001110100001101111001111110111010010110110011001010111000101000011010000001011010001110110101100111100100110101101001110000001100111000011101010101101001111001000111000000100101100001000000101111011111111111000000011011101100010110010110111101111101011100110110110111010111111101110000110000011011111101100111111001010000000001111000000111110110011110110001000010010100110001010100100100000001000011111010010010100001101000010100011001100001110101101101100100001010110101000110010001001001100001110001001111000000000000010101000111011100000100111010101111011100100001110011111101001000111101010011001100100010100100100001000111111000011101010100011011010011000001110001111101101100010101111001000010001001000110101101110100000111101010111011111111001111100101010101000110100101010110011010101101111011101111111101101101011111100100000101001100111111011101011111011111011000111101000010010001000000111100001011101001111001001100111001001011001101111111010010010101011110001101101100001011000000000110101110010100000000101001011010110000011110010011000110001011110001001100001100110101110110111111100010000010100001110000010100101100011001101111100011111011010101111101001000110000110100001011101011000010001000111101011110001000000000110110111010110101000010001001111110011100010100110001110000110100100010101010111010111011010010101111100101000000101010001110011101110101101011101010101011011001010100111100111011111100101010000111100000101100011010011010101011010101011010010001010101111110110101101100101011101000010010000101110010110000101010001000100101000111011000101011101111011101110110011101001001001001100111111100001011100000010010110001000001001011101011000111001100100100111101000001011010110000010111011001110010100100010100101000010100001000111010101010101000000110110110111000111001001110001000110101110111011000111001110111001101000011011111101010111010011101100011110011111010001111111010110001110011100111000001010101101010101111101010110110010100111010100010110110111010110000110000000101111011010000110111111000010000100110111000001010111100111100011000100111101100100101101000000000001100001101111011000101110011110110111011100110100001101101000111100111100001011100001111011010001001100010011111010000010001111110001111110110100100001111011010101111100100001110110101001101010000111111110000111111010010001101010011100100011101100001100001110000000000011110001111100000110011110000110001010011010101010111100010010011101101101000110101001101000110000101001110101110110000010000001000111011010001101001010001011010100111000011011101010111010111110100001100010111110111110010010100000010011110011101011100110000001000010110001010101001100100110110010101011111100010011100101100111011100101001000110000101100010011110000011100000101011000010001001010100101111101111101100101100011100011000011000111111111011001110001101101001011101001110110111111000000000100001001001011001111010111100100100011111010000100111110010010001000110000100101011000001111100101011001010001110101110010010111111101000100011011000011110101110001110011100101101100011110110110011010111011001110101111111100100111110110111001011100010001000010101010001111001101001110110010100111010000110101010010000100001000111100010010100000110110000001011111010111011011101011010011110000101001000010101000101000001010001101110101010100011110000111100010011011011010100000101010000110101011001110101110000010100010101101111010011001110101110010110101110111111001100100001111011110100010000011110001001111010111101011101011001011011010110000100110011100111010011000000010110110100100100011111111111001110010010000101101011000111010111110001110110001100111011010011110101000011010111000101110111100111010001011111111010111110111001011101011000011111111000100100000001111000011001100001101110001100011100101000000111111111000010100000010101110001110111110000111101101100110100101101110111111010010011011000111110000001001010001001111111001001100001110011111100010110101101000110100100100100011100010010011001011000000001100111111000111000100100101001010111000001100010000011000000110011100100101110000111101100011101111110001011101011000100010001101111111101011001110101011001110001001111011101011000001010110001011001000101111001101001011010110100101101110101100000100011111011110011000000100011110011100110111100011010100100111101010001110110111001101111010000110100010000000110101010010011000000000001100011100010110101000011110011010010101110100111010010101011001111010010000010110010101110010010010011000011111000010111001101000110111011101000100111011101011111100111101100001000110000100111111100011011100001001110101000100001011100111110011010111111001100011001001100100110001110100010000011000010100111000110101101101011101111110001110100001100011010000110100010111011010111110111000110111011010111001100110111010001010101001101010110100110100100110110101110100000001001001001110001001110001110100100100111011101011011101100011010000000101111111110000011000001101110010101100111101101011111111011000101100110011101101011100101010001001110010100101100100011001101000110100111000001010010001100111010010101111110101010110110100101100011001000001100000100001100010101010000101110001011010000001101011000011011010001000000011101111100000010011011101110111100101101010011011101011000111011100110111000100110101010110011111011011010001000101100101110100100100100100000100100110100100101001100110110000000010101011001001110110011010000011101101111011010000111001010011101110101100100110111111110011000100001101010001000001111100011110011111101101100101110011111110010000011000111101100000110101001000011111111010011000011111101101110111000010001111110001010110001011011111001010000111001101110110011011101000001000100100100010110000101111111110110100010001001101101100101111010101010110010011101000111010001011000111010100111000000111110110000001011101000000101101010111000000100111101001010110101110000111101110100010100101100111100010100000011111010001100110010111011101110110001100111101001110011011011010110001111100000000001001011100110010001011010110001111100111010101000011101001010111111010010011001111110110101000001011100110110100010011000001111110011101011111011011100110110100100111000111100101010111101110100011011010010100010010101111101001010110110010011000101001000000110010110111111001110101010101010100010000101010111110001000011000010001001000111010101011011001001010100000100010101011001110001100001011101001000000101100100110000110011011001001110000010000110110000010111011000001100011100000010101101010110000010011001110111101000001010000001010111111011101011010100110100111101111111101110000001000011110100100100110000000100011011000100011000101100101100010000110010111101110011000001001011110111010110101101100100101001100101010100011110110111000011110000001000011010101010000100011101001100100000111001001010100111001110101101010101001101110010010001101011110011111001001011100110010110111100010101110100100000011010110000001101010110000110001101100001000001001011010001000010001111110001100100110101011000110010111011101111001001001001011111001011110111110101010010101100001011010010011001011111000110010110001001111101010010101010000111100101001110111000100010001111010100101110001110111010000011110101010101110011000001000111011000001011001101100101100001110001110100101111010000110111000010101100000110000101100101001110000101000101000000110010001000001110011100111110100001000100010111001000010110010111011111111001110010101111011000011101011101010010010111001000110111001110111110111010101001110001111111000011100000000010011101010101011110000100100001100001010001001101110001001101010111010101110100110110101110110001100010011011110100110100110100000111011110111001100000100100000001011111000001011111111101111011110011110001000110101011000101110000010101010100000000010111111010001010011111101011010100110101000111100010011010000010110001001101100101111000111010010010001100101011010111011011110010000011101100100110010110011011101000110011000110100110111111111010111100110001011000010011010011110011010110001011011101010110101110100111001001011001111010000001001101101101110101100111110011000000100100110100011010110011111111101000110111011001110100110011111000100101110001000110110101101110100101000110000011111111100110001010010101011100001000111101110000100001000000101010010100100011001010110000101110111010001101010101110011101100000100111011110110000011011100100011111011111000010001101101010010000111101110001001100101010000001110010110000011011101110101110011111011110000010001100111001101001000011110110 +1111100011110000011100000000111111001000000100111000101111000110100001110010110010001010100011101111110000111110000111110101000001111100111011010010011111000110111010010010110011111100000111100001011111100111010100110101110000110110010001111010110001011001000100001000011100100001010010011000110010001101110010001110010000111101001100100101100101000111110101011101000010001111001000001011011010110001001001101101110011111000100011111001101011011011101100110000011001101111001001110011001000100001001110011100110101111100101010000101011100000000010110111101111010001000011101011110001010100011101000000111100110011101010101101011000100110100101011100001100111001101110110101101101111111010111010101100001110101110100101010111100001000111110000001011000110100111111110000000111101000101101011101111110000011011000111100110111100111110111011110101111100100001001100000111011111011100000111011111000000001010011100101111110000001110110110010001111101000010001001101000001100010010111010101011101100110000010001001000010001101001001111101000010010111100110110010110100001100101111100010101001011010011000000011000110100111100100100000100111000011100100011010010101101011010100111010000100100110110001111001001111110100111010001011111011101101101010110011001011100001001100100011110111100110110111111101000100001000110101101101011011011011100000000101100100101110111101111001101100110001001101101001111011110001111011000110110010110011110100001011110001000110010010000111000111111100000111110101001100000001011110100111010111110110100000001000011001100000001000100010000000101110110001110100000100010001001000101010010011010011000101011010101011000000111000110011010111111110011001001110101101000010010001111110110100001000011111011001101100010100100010100011111100110100101001110111010100100111100110100000100110100010110010111101100011111001011011011011100000111110001110101111110000110100010011100100010011000001001101000000100101010101011110111011000001011100101110000111010000111110101110000111011110101110011101011100101010111011111100011100001010000111100000011010100110110010101001011011001110001110011011011011001100111110000011110110010111101010000101100011110001110011011010010010101010110001001011100100011101101101000010110101101100111100101111000001000110001100000101101110001011001000000110111110000010110110011011000000110010000111110100111001011000011001001010010000000100110110111000000011001110101001001110111110010101100100011111111011010110000000000000010001101000111110101111111001001110011111111100100011110000111011101011000110010010110010001000101100010111000001110011101011000001001111111111011010101110000111111011010110100110010011011011101101111011000010100010100010011110000111011111010011010011111111110010010010101011111111101000101101101110011101011000010011101101101010000011011011111100100010101000101110000011001110110110101000011011111010111010110111011011000100110100111000110010000100110101100101010110100110111010111100101001001000110111111100010101101010011101001110010001100111100101111110110100010111111100011011001000001011000001001000000011001010100101000010110001100001101001001001110001011011110101101100011011001100000010011101111110011010110111001111111011001011000111110000110101111001100100111010101111101100011111111111001001100110111011010001111110011000110001000010100010110101010100010101111100101011011100011010100000100100100111100110100110101101101010011110101010000011001000100101101100111110100101100001110000000001100001110110011100000111111011101001111111110110100111110100110001100001101001110110000010010110101111111001010100010011111010010010001001000001101101100000100011010000001011011111111001000010110101010011111001001011000001010000000101111101001111010011110111110010100010001101101000110001011100000100010101011001011011101100000000101111110111110000101101110110101000111010111111100101100011000000001011100110000111000001111011100010110111001011101011001010101001000000111100101100010101101111011111111110100100000110100011110010110010110110110010100100101101101100111110101010011110111111111101011011000000010111101100011110110011111100010111101001111001100010101100000111011001101101110001011010001011111110110101101010010011000001000111011010010110111001100000101001110000100010101001110100011010011010011111011011101000111101000111001110001010100100011010011110010000101100001000100111000110010110010011100000111001110011000001111001001001111001011000110101101000111010101111010001101100010011101010011111000101101110010100011011101100100000111001010000110010011101001001011110011110111101101100110000101110010010011000000000100000011011100110001110010001101000100100111010110010101010111100110000101101111111011001101001010011011111001001001111000110010110101100100101100110011111111011011000111110010100111010000001110010110110010110111111110000100101101000110010100110111010100101111100100011001000001101010011100111010110100011010101111010101100011101101010110110110111100001011100000100011011001000110001100001011000001101011100110010101110101000001000001010001001001011111110000010001111011111010010001011111011101110000011011011100001101111111110001100110100100110001011001001001100011100111101011111010111110110100110110010010000010000101101100111111011110110001110010101010111001001010011001101110011101011000001011101010111111000111101011111101101000011101110110011100100010010101100010010110011010000000111001001111001000110110010010111111000101110011110000111011001100010011000111010010100101000000001110001111011011010101100101100101101100111111110011000011111101111100111001100001010100000000100110000110011111000101110010000000101101010101110011100011000011010110000101110011011010010000000010011000010010010010010010100011000001101100001001101010110010011111110101110000100001101101011111010101100000111110001011011110110010011110111010100011111001001000011100001110110011011011101101111001000000101001010010111011110000101001110101101001000110111000111101110111110000011110001101011011010001111001001010101011000011001001010000110010100001001001011011100100001011100111011101010001100011101100010011000101011100101000100110010101010110010000011001000101001000111011110100011100001000011011110101100101010100001100010000011110001011000100100100010110000111101011011110110000010001010110100101101011000110110110010100011000101110001100111000010111000111110111001100100100000011101001010001101---------------------11011010010111000111101001001100010110100101101011001110011101010010011010010001110001100000110000110110000011111101001110101010110101011111010111110110110011110111001000101101010111101100010001101111001001001100001100010110000100011010101010011110101101001101100010111010110000101111101000000110001011011001011100100001101110100001101001101101011110011101010100111111011101000000101000101001101111100011111001100001100000101001001001111000101111110011011101100100001010010110011011111000111010010111001001110101011110111111000001010111111001111010110100111100100110010101001100011011001110101111001110111000001100001110101010100000010111101101111001001000000001001000100100011001100100000010100110010101011100000001011000010100000101100000110010101111010111110001110001101100011011000111010101101001111010101110010100011001100100101001101111001001000101000000111100010010010111011010001110101101101011000110010001100001010011101011011111011111010110000000010101001110011110011110010111001100101001100101100001011101110100100101101111000011101010111100111111100101100000010111100111000011001011001110111000001001000100000001011011111100011110010001110100110010110111110110000111100111110000110001110000100011100011001010101001101011010011011011010000100100001111001000000001100010111111110110100001101011100010010010010011011001011010110000111000101011000110000101001001011011110000111101001010000101101110000001000101110011110011110111001011000101111111101101000000100011011101110011110010110100100011101110101110100100110101010010110111001100001000111110100111110111001100111111001011000101010000101101101010011001010010010100001011001100010000000011010011111110101011110010011111011000010011001000110100100001011010001000110011110101111101101110111111101111000011000101000111111000001110111000111100000110000001111100111101110111110110111001110000111101001000001100011100110010111000000011110100111000011100101110101110110100011111101010111101011011110011000110011001111001011110101101100111101001111000010100001010111001010110010001001011011001111001010110101011111110000101011011100011101111010100110001100001011000111011011110011100110001010111010110101101100100001000000101100011010001101111111101010111001011111101011010100101111010011001001111010000100001100010010011001111011010110100001101010100101001110100100110001010100100011000110001000111000011101010010110110110101011101101110100101011101111101011101011111011100010100001010011101100010000011100100000101010000010010011000001101001010000001101010111000110011110001101011100000110010100100010101001010010011000111101000001000010100011000001000010001110100011000001010110100011000010011011101010011110011000011001110111011010000011001110101001110111010111011110010110101110111000010001110011111111001010010100011110011001011111000111001111010010010100001110100111100011100001000010101010100110000110111001101000111000000001000011110011011110000100010001011110101001000001101011100101001010000010111110111000011000001011000001100111010010011111111111100110100111101111000110000100000000001110010001001100111110100011000000111011010010001111000100011010011100000110010000101000001010011110100001000111010100010001111101000001100000101000100001000100010010000011110111110110110110111111101000010110101101011101111011100000010011000100010000000010010100111110000000010111000011110010001100110101110011001100000100110010101001000111001101110010100011101101011000000100101000000010100001011111001110001010101101111100010001001101100100011011100110111101011101000000110011100100010010001000000100110000000101000001100101011101101001111000000110010011111110001110111101011100100111100101001111000100010010101010100001001001111010011101011110001010101111010111001001101001110100111011110000100111111001010110100000101010100010010111011011001001011110011011000010010001011001110000110100001110111000101100111000001110100000001011100011011100101000001001111001000010101110111101011100001001000101111111110010110100011010101101101010011010101011111111011100100101100011110111011111011010010010111111100011000100110111001010010001000101010110011011100111100101000011011001001010011001110110010101010000011001100011011011001010001110100110110110011111010011010001101000111101011000011010111100010000101110100101101001101001100000000100011010000100100111011010010110011001111100111101000110110010110001010001101010001001010011100010011000000111111010111110000100101001011000101000011100110110111010101011101110011100101101010101100001011110111000010101101101111100011001000010000110111010101010010111111001100001101000000000000100000100001110010000011101100011001110110100011000110101000000111010100011000000010111010000000001110000111011011111011111001100101010101111010000100001010111011001010111010011101100011101000111000000000010010010010010011011110001110101110101111011110110010110101010010101000111111100000111101100100011101010011100001000111010001000110100111111110000010011110111000100100111000010100100100011111100100100111101101010111010100000111101100011000100011000010101001000100000110101000001001000000101000001100000000100110111010111010110010111001111101100101011110101110010010101111101110011110011100111000111101010111001010011010111110001000100000000001001101110011000001111010110011110000010000100010001110010000110001011011010010101001101110001100100111110111001010010011111000111101011000101111110111010011110001001111110011101000111011011110010010010101100110111001111001000001111001011011110101001010101111010100011001101001100011110010010000100010111101101110000111100001001010010000001010100011000010100100000101110000011011100110001110010101001101001011100110000010101100110101011111111101101110001111001011011111001111101110110001000111111010110111100001101000111010000100001111010010010111101011101100100100011100111101011000111111110010001111100011111000010111010011101111001010100110001111010000011000111011111100000110010100001000100111011111110101101111111100100111111000101111111100010100100100011000000111101101011101111110101001110111010001011011110000101111111011110010000001100101100100110011011000011000101001111011100011000110010110100100011111110001101001100011001101100000101001011100010110101001100010100010101000000110110100000001110100101111100010010010111100110111011011010100010101010011101000110010010100011110010101001010001101000001110010000110001110100100010010100100011100011000001010100111000001010010010111000001000101000111011111110000011000001101111111100000001100100110110101010011010001110111101001010110101011110110111010110010010100011101011010101011000111000100001011001000000010110100000011001101100011010001010110000110100110000101010101101001110101000001101011110010101101100000111111110010111101001011110100011100010110011101101110011010011100011101111101101111000111011111000011101111001100010101111110101111011001011010000100010010110111111010011010111000000001000100000111001110100101000110010011111101000010101110010000111011100110011011001010110010011011010101000100001010110100010101001100111111001100000010010111110010010011101110000010110111110000111001100001101101111110100101011100011110100011011001101010001011100000111011111011011011011000110111111000101110010110011010100110100001111100111010101101100001010011000010110001001110111001000101010000001001111111101100001100101110100111011001010001100011101111101110101000101011111111011110010010110011101100101001000101011100011101110100100101001001011000100011100111001111001001110100100011000011110000100110101011011001010111010111010010001101111111101001000010010110011110000110011111100110000010010100011111000100001000011001001100110101001110110111000110100101010100010111010000010010001110000101101010001110000100011110111001101100101101100000110000000001001011100110110000101110100010001100100001111011001110100001010000101001011011110011111111010100101001000110101111100000000100111011111110100101001110001000110110000010000010010010010011001011101111111010011101111000001101111000011001101111100011100001101010001110100110111100101101100000111101010110001010010100010111000011100101110011001010010110000110101011000000011000110000001001001111111101000100001110110110100011011110001000000011001110101010101111001001111100001001010011001111101111100010110111110100100001110010000110100011000001101111000000010001001001000100000101010011100101011010001110101000110001100010111101101111110010001000000111001011011101001111110111010101101010011110000001110111010000011100001110000101111110011010000110010010001000101100010101000110001110100011101011110000110010100100111110010101110001001101011001000011111101001101011001000111100001100100110010101110001101100110010101101100100111001110100111100110111001001000001001011100000000100011000000001000110011100100000111110010111111010011110010010111011000001110101011000101100000100001100100100011000010000100101000101000010110100000111110100000100111010110011110010010000001101010001100001100111011110011011100110010110110101000111001000010111000111000110100010111010010001000110000100001000100111000000101000111100010111001111000110110011000100000011110100111001100010101101111100010111000000000111000011110100001001000110000110110001111001101001111000000100100100100101011111101011010100101010000100100011110111010010100111001001101010110010001000101011000010111011101101111100111001110000111011111000100001011011111010110110011111100010110101111101101011010110101000100011100100101001000010001010011001011000001001111000001001001010100110000100111010100100110111001110101001011101011000101100001100010101110000000010111110000011010011111100100111000110000000100100010000011100100101111010110110010100101010111011010111010011011010001001010110111010100001100001111011001111011111011110111111001100011100110010010011011100000100000110100011101010111011001111010001110001110100111010100100010100110100001100111001001111100111110011111001101011001010110010000000010101111010000101101110111010110001100100001001011001010100000111110010100000110000000101100001110100110010101101110010001001011110011011001010101100110110110011001010111101011000001001110000001110001001100010110010011011101011000110000000001010101000000000111001000001000000111110111011111011100010000010000000000000100010001000011001000100000111111110110001011001101101110000011100000100100001111101110100110000010111010110011010000101101011100011011110000100011110011000100010001101010000011010110011101011110110111101101001110001110100000111110001011000011100100000110100111111100101101101111111101000011010111001000100110101000111011000001101010001100111100111000101101111100010110111111101001111100000111011110001101010011111110101011010100100101010110100000000111100110110011011011001011000110001000110100011000100101100010111010110111111001011000011111010000111101100111101000001000110000011011111011101010001101000011110010010011010001010111010100011001010110110000010010100001110110010110100000000100101010101010001101101100011010010001101001001001110011101110100110101110100100101001000010110111111000111111000001100000101011111111001110100111010100101000101010101100101000101100101101000000001101001110000100100010110010111011110001100010011101101101101001111001100111010110110101000001101011010110011000001010111100000100101100001010011111011011111001110000111011110001101111010100011010001110001100101010101100111011110101001010010110001011001111111011110110101011001100010101101110100010011111000011001100100101000101101000110000001101111010100000000011000111011010110100011110001101100001100000110000000001010101101101100100000010011110000100101110111100100001011111011000001011101101100011100111110001111001001011110101000110011100000001110100111101101010100001011111100110011001010010011001110100011111110100000101101101111001100001101100111010101001001000000000101100011000011011111011111111101010010111101011000101110011111001101011010001101101100000010111000110010010000011010011010101110111000000100110111011000000101001110111001101010011010011100101011011110100101001100111101000000001011000000111110110111111000101100111110111110001010001100100100011000110101100101011101011001111111111111100110011110111110001111010111110001001100110010111110111001100101010110001110000000100001110100101101011010001101110100110111011001110111111111011110110111111100011100101001011010001000101010101111011011110011100101011000111110001011011001001011011011101001000010011010111010111111111111010100000110101000001000100111001110001111111110100001000111111001111100011101110011111101010110001010011111110101010001010000000011100001101001111101011100010000001001111011111000100111010010101001101010000101101100001011010111101110111110001111011000110111010101110111011101100011011010011000001001010111011110010110011101110000011010010011001001101110011010110100010010111110010000001111101111001100011011100100010010100111100001101110000001101110011101111111110111011000010111100110000010110001001100101111101010101011100100011110000101011101101000001000110100000110111011011001110001110001101001101101111100000011101000110100100011011011011100001111100000110111001100001101010111001010010110010110101000101101010011100100101001110100100101110010100000111000001111000100010001011000010111010110001100101110010101010010101100011100110101100010000001001110101000010111001111111111101001111110000011101101111000010101001001110001110101010100011001100110101011100110111110011001000011111010000101111110110100101101111011101101110011100011001101000110110001101101001101011010011111000111000110010011000110101001111001001101000110001101011110101011010111100101111110000000100100010011001001001000100011100011011011011000100011000110000010111111010100000010110100000010010010110011101111111100010111100111100100111000100010101110011011101100111001100010101010010010000010110011010000100101110100111111011101011100101110111100001111010000110111101011111001001010100001001000111011111100111100001100110110100111101000100111010101100100100101111101111001000000100100011101001110100110011001010110111001110110111010111011001001010010100111101100101011110111011000001001010000010000001101010010111101011100110000100001000100011010111001101100000110000010101010001001001101111010011011111001011000100001111100100101100011100111000001110001100001000001101001011000011101011110100010110000011001100011101001011001101010011110101000001000000010110010011100110100001101101100010011100010101000101011101000001101001010100001100110010011001101001000100100110001010100010100110101100001000101011110001110000100111111010100100000000000010110101011011011110101001101001110111111010000111011100111000010101101101001010010010111100110010000001010110111100100100100110111011100000110010010010000001101011011111110111110101010110111010110010111001011 +ls7msgs +0001010111100001000110000111001110111101011101111110111100011101110101010001001000011010000111111111000111111001110110010100100110010--------------------- +0011111100000000000000110010111100011111011101001001000111011111000011000010101011110001110011011011000001101101001001011010000011000--------------------- +1010010101001111010001001000111101001100111100001100010101001001001101001101010010101000100000111011001100110010100001110100111111011--------------------- +0000111111110100001111011010110001101111010110100101011100010110110111000100110101101010111001001101001000011000101011001111110010011--------------------- +1011100110011111101000000111010110101101010001011001000000001000110000010001100101010000111010001111110101100001001101001011100000000--------------------- +0011111000010000000110011001110101001110101111011010111101011111000100100100000001011111001101101000001100100011110011010101010011101--------------------- +1010010000100000111001101010101000110101101011011101001111111010101001111110111010001001111111001011010111110110101110111110011100110--------------------- +1111000011011000111010101011111001000011010101101100111111101010011100111000010110000100100000101010001111100001100100010000110101001--------------------- +0010100010111001010111111111010011000010000001011100010000010010001110010101101110110100100011101110010100100001001110001001001011101--------------------- +0110101100100010011100011101111001101010000100101010111111000000111111111111001011011100110110111101011100100110100101101001111110001--------------------- +ls7cwds +01000110000111001110111101011101111110111100011101110101010001001000011010000111111111000111111001110110010100100110010---------------------0001000011100111101001111110110111111001100001101101000100010010110100010010010101110000101110101110100000110101100001011011010111111010111110111100011100010101100111010011110000100111010011000110100101100000100010000100110001001001100001001010001010100111100101111010011001110110000010110001011011100000010001000100011000 +00000000110010111100011111011101001001000111011111000011000010101011110001110011011011000001101101001001011010000011000---------------------0011010101011001110011000101111100010110111101011101001101001011110001110101100101001000000010100001000010100000101110010011011100000000111111000100101010001111110011001001110111001110001000110100111001101110100111110010111100110000101101000100001110110000000100011010010100110011001011111110101110110101010110001010101111 +11010001001000111101001100111100001100010101001001001101001101010010101000100000111011001100110010100001110100111111011---------------------1110011011011110101111101011101011101101000101010001100100111101111110010010111000001101001001101001100100001111001110111000000110010101100011000101101101011100100101110110110110010100101000100101001010001101001111110111011011100101101100101110110010000101101101000001110011111001111110011110000011111000011010000001111101 +00001111011010110001101111010110100101011100010110110111000100110101101010111001001101001000011000101011001111110010011---------------------1000101100101010000001100110111001101101001110111111010111010011011000010000011110000011100110000110001111110110010100110110110110001011101111000011110101100000010010001001110110110001011010010010011001010000001001001010011110000000100110110011001001100010010100010010111100110010100011100111101111110000001000100010110100 +11101000000111010110101101010001011001000000001000110000010001100101010000111010001111110101100001001101001011100000000---------------------1010110101000100100001101011100110010011100001001000111111101101111000011101011111010000101010111110010011100101100000000011111101011001100011001011000010000101001010110111001100001011011011101101111100011010110111011000001000011011111110101111111010000100001001100111100011101110010000011110001111111110000110010101110101 +00000110011001110101001110101111011010111101011111000100100100000001011111001101101000001100100011110011010101010011101---------------------0110110011111000001111011100101110000011111111001110100101110000000101100010110000011010011010101111011011111101111010011001111011100111101101010001011000111010011000100011110010101100101110100001111101000001001101100000000000000010010110101011101011010111010010001010110100110111011110001100000011000000101101101011101110 +00111001101010101000110101101011011101001111111010101001111110111010001001111111001011010111110110101110111110011100110---------------------1110101100000111001111110010000101001001011000001110010101000100010010001100001100101111111000110111000010100010010000000010100101011101100111110111111000000000110101100010111001010110110011001011100000110011011111000100011110000101010100111110011110001001111000100011011010111011111101110111001010100100010011100000110101 +00111010101011111001000011010101101100111111101010011100111000010110000100100000101010001111100001100100010000110101001---------------------1010010101011111110100001101101000000110101010101000110011011000101110001100010111110110100011010101100111001100100100010000111010001010111100011011010100111110010000010011000000000110100011101101000010111111010010111000011101000000011100100001110001010010111001011001001000101001101000001001001100100111110101001010001101 +01010111111111010011000010000001011100010000010010001110010101101110110100100011101110010100100001001110001001001011101---------------------0111111000001111000100100001010001010011011100011101011001001100011111000110000101100011001010100100100110011011101110001000010100001101110000110100010001111010100010001111111000010110111010011001001100101010000101000001001000100100101001100011111101100011110101100001111011110000000001110010010110011101000000010111000011 +10011100011101111001101010000100101010111111000000111111111111001011011100110110111101011100100110100101101001111110001---------------------0010001001110111010111110011001000101011101011110010100001110001110010011101010001000011110100110001011000100101111001011000001101111101101101000100010010000000001101101001010110000010010111101000010001110000111100111110110000011101000001010101100100000000001101100110010000100000011100100010101110001100001100110011001010 +ls14msgs +11010111100010000100011010100010001110010110010010010000100110100001001000000010100111101111001011001110001101010001101010011000001100001110110000011110001100000111000010000011011001001010010110001110100000101110011110100001011111010101001110000111110011001110010010000110010010011101010--------------------- +01001010101111000011000111111110111111100000111101011101000001111110011011110011010111011101001000101000010111001111101010100000101000100110111001110010010101101100001010101010010101101100111110110000001011010010010100010101000000100101111110101110001001010111001110000110110100111101001--------------------- +10110010101011000111111001100101100111000010011101001000010110111000000110001000100110111110111111010100111110010010110111010001100010101100000101011010010100101111111011100110111010010010111001001011010000010100000111100010000111101101101011110110010011100100110000000110101111111111111--------------------- +11000010111001000010111110101100110010101100100110111011111011111101100000111101110001111111100111110011100010000110011001001011110000001001110110111001001000010111101101110011100100111111111110001110101010111101110111101110010100100110001100001100000001000000100011011010100100010101000--------------------- +01001001000000011101111000001101000010111010010111010010110010000001010100101100000000000010101010011010100001010011100010111010101010111100101101001000010111000000110101011001011101100001110111011111101110110010001111010011010110101111110101111111010001110101010011101111000001100100011--------------------- +01010110101110001010000101000011111010100000100101010101001010110010101011011011011001001111100000011100101001010101001101100100110011001000011111111101111001010111111001000011010111101010101101010001001010000000000100110101001101000011011001000001111101110101100001111000111110010001010--------------------- +01011100100011001000001100110111111110100101001100001110110110011011000101110110000101111011110100110010111011001100010110110010000100100011100000010110000100110100001001011101111111100110000110111101010000110111000111000111110011000110000100001101110100010110001010111110101011110110000--------------------- +11110101010101100110000100001010001010001011001100001101101111000011001100110110111010101111100001001111110110000100110010011111011110100110001010110100000100000111010010011101100001000110000111111010010111100101100111000111110011100100000011010101110001101110100000100001111101000110101--------------------- +00111011001000010110010010100111010011011110101010111111010010000001000100000110011111010110111101100110111110010111001110011110101110010110111001100101001011101010110000110001101100010110101111011110011000111101100001101010101100100111011011001011101001111100001010000110100001110011101--------------------- +11010111101010010000101011110000111011001100110111111001111010100110011010000110011001110101111110011001000111110011000101010110000110000011011000011100000010000110110001011111001011101101001101011101100000110110000000101010001001001001111101100101101010101100111110001001000111010011101--------------------- +ls14cwds +0010001110010110010010010000100110100001001000000010100111101111001011001110001101010001101010011000001100001110110000011110001100000111000010000011011001001010010110001110100000101110011110100001011111010101001110000111110011001110010010000110010010011101010---------------------11000011000101010100100010010001111100101110100101010011111111110011011110110111011110110110101000010100101101001011111101111111010001101110001111010100110100110110010011101111001000000011110000000001110101100101110001110011100000100001100000000101011110011011100011011100101011011011110110010011110001010111011000010001010011110111000100101101001010000011000101101101011101110111111100001011001111011110110110110010000110110110011000000001010111000011000011000101101101011001100100010001000100011011010111111000110101000000100000111100001111010010101011101011101101100100111011110001100001111011011001000111001001110101101001100010011010000111 +1110111111100000111101011101000001111110011011110011010111011101001000101000010111001111101010100000101000100110111001110010010101101100001010101010010101101100111110110000001011010010010100010101000000100101111110101110001001010111001110000110110100111101001---------------------10000000100111110001110100010111001001011000001001001101110110100011001111101000101101010101111011100101001000000011110000010011010111100101011011010001111111101000000110110110000000000101110101001110011000001001100100110001011011001110111010101000011100111010100101010000010110011110001100001100011001011101010101111101100011010001001011111010011010010010101110001010111011010111010001101000100010101000111111100000110110100000100101100111111000111110001110100101000100100110100011100010100010110111111110011110001011010010011010101010110011100110101101000101100001101010101111010011101010000001001100000011111000001000110011110110111001010101 +0101100111000010011101001000010110111000000110001000100110111110111111010100111110010010110111010001100010101100000101011010010100101111111011100110111010010010111001001011010000010100000111100010000111101101101011110110010011100100110000000110101111111111111---------------------01100000110100110000111110001001001101100010110101011000101010110100001011001110111110000001010001110111110001011110010111101010111101000011100110011000001001001111111001100111010001010001100001000101110101101011000110010000000001101100101111101101010101110101101100001001110110101101011101100001000111010111010111101100000000001011011111101110010100101011001001001111110111100110001110001101111110000100011110011010111010101000000010010010000001010101010110001101100010010001000110001100010001110110101101111011011100110101101100001101100101111010001111100010001101111011011100110111001001101000010000110010110111101111011111011010101000110111 +1100110010101100100110111011111011111101100000111101110001111111100111110011100010000110011001001011110000001001110110111001001000010111101101110011100100111111111110001110101010111101110111101110010100100110001100001100000001000000100011011010100100010101000---------------------11000010001001100101001000000010111000010100110110010111101010110010001010110010010101100011010110101011101100110011110110111010111000111011000001111000000111000111011100100010001011101001001100110010000111111000011010111111101000111100001001111111011000011101101010110100110010111100000001000111001010110111101101111101110000011010000010011111011010011100110001000011000100111011101111101001111011001111101111100001101101011010110101011100101110101011011101001010001111001100000000110101010000101100000101110001101111000110111010111010101000001101001100001111001110101101001010111111110111110010111110011000101001100001111111011110100011011110 +1101000010111010010111010010110010000001010100101100000000000010101010011010100001010011100010111010101010111100101101001000010111000000110101011001011101100001110111011111101110110010001111010011010110101111110101111111010001110101010011101111000001100100011---------------------11101100001101110010111010011011011000011010011010001110001000110111111001110011000111111001010011010111010101011011100110101111000000110110011110001101101000100111010010001100001101100100011001111011010100000111111011000101110111111010110011000010000111110110111100110001111101010010100110111110010011111010101110101001101010011001101111111000111010110110111000111000011111001000110110100010101010010011100101000000101001011001100100110011011011001001111010001110011001010001000101010011011000001011010000010011111001101111111010001100010000101001000010011100110110110001001111111101111000110101010011101010101111000111011000000011100111000111 +0011111010100000100101010101001010110010101011011011011001001111100000011100101001010101001101100100110011001000011111111101111001010111111001000011010111101010101101010001001010000000000100110101001101000011011001000001111101110101100001111000111110010001010---------------------01001010010101000010000011101101001110111010101001011010000110000110001101011110010101101001000100000111001010111111111101111100100111111101100100011000000011101000101101110101110010000111011101110110010010110100111111110011000000110111000010111001110110101101011011011011111010001111001101101101001010110011101000010111111011110111110011011110100011011010101000010111011101000101001100010001010010000000011100010000111100100011001010011011010100110100000000101000001100000101000001001100000010100011010001100100000011110100100110111000100000111101100101001001101101011110001000001100011101110101111111010001101101000110110011101001011100100001 +0111111110100101001100001110110110011011000101110110000101111011110100110010111011001100010110110010000100100011100000010110000100110100001001011101111111100110000110111101010000110111000111000111110011000110000100001101110100010110001010111110101011110110000---------------------10111111100011011110101110111010001001110110100011010100010000000011101110010100110011011010001011000110100111001110010000010001011001010010010010101111111111010110001101111010011011111001000100110000000001110010010000110101101000101010100101010100110101001101010000101111001111111011100100101000001111111001100000000001001111111000110100110010010101100000111011010101011111101001010011010101000100000111001110001010011000011001010111001011110110000100001000110011010101010101010010011110000110111010010000111011100100011101101001011011011011011011100111110000000101101101010101110111010111011101000011110100000010000001010001111000100010001010 +1010001010001011001100001101101111000011001100110110111010101111100001001111110110000100110010011111011110100110001010110100000100000111010010011101100001000110000111111010010111100101100111000111110011100100000011010101110001101110100000100001111101000110101---------------------11100100100100101011100011010100111111001100101001000000110111001101100000100001001001010001010010011000011011100000000110010000110001100111111111010001010011100110011110001110101011101110010111001001111110001111000001110111111000110110101100000001110100101011100110110110011000101000010100011110110011101011100100000001101110110011001001001001101111101011100010000001101111010001011110010100111000101110000011101010101010010000011110000100100110100011100100111011001100110011100100011100100000110001000010010101000100111101001011100101101110101010010010101111110101110001111101110011010000000001000110010010110101010000110010001000111010111101 +0111010011011110101010111111010010000001000100000110011111010110111101100110111110010111001110011110101110010110111001100101001011101010110000110001101100010110101111011110011000111101100001101010101100100111011011001011101001111100001010000110100001110011101---------------------01010111000001111110110100001100001011010100001110011000010010010001000011101111101111110100100111111011000100111100101111001111111110011011000110110100000000101001001011000101000111100000011001100001100000010110111001100011011011101011111001000010100100101010111110100010111001011000101011011101001101111111000010111011011011110111101100010100001101111101111111010111111100011111011100110101111000100000010001010101001001001111101011010101001011110000100011001001010011001110100000111110101001011110111101010100111000110110001000110110000001001101110010010110001101110011001101011010100000110011000110110010101011010110010111110101000110101101 +0000111011001100110111111001111010100110011010000110011001110101111110011001000111110011000101010110000110000011011000011100000010000110110001011111001011101101001101011101100000110110000000101010001001001001111101100101101010101100111110001001000111010011101---------------------10111011000111101000100000010010010011101010011010100110101010101000010010101111100001101010111111110010100110011011110010111001111110000100111011011001011000110000011100010011100111111110100001101010111110101100110000101010010010100010000101110111011110101111110100100011110111101001001101001110110101110110110010000000101100011011000001100111110100010110000010000011001001001101101110011011001001011010110011110000010100000110100001001101111111111111000110010010110100101010111111111000111111111100000111001010010101010110101011110110001010001110001101110110011001100000101011000000010010000101111010110111110011110110001010000100111010110110 +ls28msgs +0010010001010011110000101000110110010001101011110001011011101001101000001010101001101110110000110000011110001101110000000011010110010101110100010000110000111100010010001010001011000111010110111100011001101111011001111010101011011001001101111000101101101100101010010011111011110110010000100100111011110011111000111101101000100011010001011100111010001011100111110101100001100011111100010011001000011010010000101111010001011100101001001010100111111011101111011111101001111111101001011100100111000101101000000011001011101010110001111011111100011000110010001001101000100100000110101010001101101111111--------------------- +1100101111001000001011011001110110000101001101001011110011011111000101111111110110110111010100110010110100100101000001100100010100001011000011100110111110110111100011100001011101000101011110001011010010011011111110000111111111100001000100011111000101000101101010011111100010011111101110101111111000011001111000000110101000100000111111101101101101101000001111101011100111110110101000001000111101111100111000000000101001101000110011101001111000000001101110110110101011100011000111111011100101111001101100000011000110011110101000001110010001101110101001010100111100100010111110100011100001101101001--------------------- +1110111101100011111010011111001101000011101111101001100010000101101000110011000011110010101011110100000100101111110011010001010100010011110000111111110111001111011011000010110100110100000001100001010111011110001100001010110100111101011011001000101101100011101100000101010011011010111011000100100011101010011011000011011001011110111001010110011011110010111110001101101111001000100011110011011110010100110101000110111101111101010011011001100101100100010011010000100111110100000001001110100000000100101100011110011011011110001010000101110101010001101011110101111010111110011000010100000101010010110--------------------- +1111110101101011000111111101110001111111001100001101110010101000101000011011110100000000100001001010111010010111011111100110010111111111011011000011101100001010110101101001001011000010001100101010010111111111101110101011101001011101100101110111101001100000011110101001001110110010101101110111101001011010100000001001101000101010011111110000011111100111110110110001101101000011100011001011111011011010100110100110010010011110010111000000000101000011001111101110111100110001100100000001000000101100101000001010010000001010001100100011110010000010011011100101001010011010011010000110101001110111001--------------------- +1101111111011101011100111011001111100011110000001110010010101001101110010101111110111011011011110011110100000111100110010100010001111111100011100011011101010010011010101101010111110101111111000101000010011011110111011101000110001110011011101101101001011011110000011000010101010101010111000100000101011101010100000000100010000111101101110001100111001111011101110111110101101111001110110010110101000101000100001001010011001000100110110001010000001000010010000100100001000110110101001011001101010010011110111011000000110000011011100001011110011000011010001010110000111101101010001111011011001010100--------------------- +1111101011001010011101001011011010010111010110100111001011011100000100001010110010000011100011010111110100111011001100101100100010111011011010000110011001010101011110001010111101100100100011101100101101010101101110110010010010010000110000110001111011111111100101011100110110100110010001101111000110000000100000001100010110001101001011110111001100101000011100001001111010000011111000110101110000011001101111100001010101001110000011010000110100101001011001100000010110000011101111000100111101100111011011100011100000111011100100001011000110001110000011101101111100101101011010010101101101001011010--------------------- +1100000010111000011111100010010110111111100101011111001010100011000010111111110111000101101010101001000011101110110101010010101011110011010000010001010101011110011111001001100110001011011001111101101101101100011100011111101011101101111101110110001011111100110000111101011100111010111100101101110100110001001100111100110000100111100001010001001110111101110111001000010111100110011001010111100001101011111000000110101000111011100111010010010100111111010110100111110110100010001100101001001011111000100100011001001011000010100111010100101101101000001110010111110101101110011111010000101110101101011--------------------- +0111011001110011001000010011000100000111100001100111111011011111011010011010001101001000001000110111001011010101001101011110111000001010000011011100010100011100001110110010011110100011111011100110001100001001010011010110011101000000100100101011001100101001110000111001101101001101011001011001000001111001101111001011001000011101001011000110011001110100111011101011001100101010001010101110111001110100100001010110111001111001101011100011010100110010010010110001000011001110010110110110001110000100111100000010111100011001111101001101010100111110100010011001010010111101110011111010001110101100101--------------------- +1110001010000010011110100100110001101000100110110001001111001110001111110110011101111110111011010011110001011000100011011001000000100000000000101000010101111010101001001100111000001100101101111011000111011110101011101000111110110101100000001111010010000111010001000100110111000000111010101011101001111001100110100100111000100010000011100000000010110011101100101110001110000001010000100010100110110010111001100010110111101110111110100010011000011011011010101010101011011010000011010101001100111110111000010000011100001101011001011000101000100011100111111101111111010001001111100001111001001000111--------------------- +1110010011111011100000101101101100000001101111101000111111001100101010011001111100111110001000111010010110110001101111110101111111001100110010001010101110000100010110100100111001011011111101001001100011000101010000101101011011011100000101111111001011101111001011110011101100000011110011001001111110110110111000001111000110100101001011011001001101011101010001100011110101000111001010011100011010111100011110011101101100001000010011001110000100111100010101101101000000001001011000111101001010001000101100100010010100001100010010010111010110011101110010011001101100101100001011010000110000001001110--------------------- +ls28cwds +11101001101000001010101001101110110000110000011110001101110000000011010110010101110100010000110000111100010010001010001011000111010110111100011001101111011001111010101011011001001101111000101101101100101010010011111011110110010000100100111011110011111000111101101000100011010001011100111010001011100111110101100001100011111100010011001000011010010000101111010001011100101001001010100111111011101111011111101001111111101001011100100111000101101000000011001011101010110001111011111100011000110010001001101000100100000110101010001101101111111---------------------0110110011001011111100000101011111011011110010111101000110110011100110011010010001000100000000000011000001100010111110101000101010111100010001000111011001000100001110111000100010101011101111101111101110111101000011101100100010010000001110010011000011100011001011110000000101101110101001111110010001100110100010101001100000111010101001100010001011010001001010011110101110111010001010101000010100101101101111011010110001000110001110110011111000110001111101000101010000100010110000010011010010011000011100110110100101101110000000001000111010100110000001101011100001000000110001011100000011000011100100101110000000111000011001111010001101111011100010101000101010100001111011001000110011010001110101111100110101010011100100100110011100111011100010101010000110001010011101111010101101011110011010111010100000111001110100101010010110000010001110011101001010001000011100100001010010000111000111110111100101010110110000111110000101011011110000000011110000001000001110110001111010010000010111000100011011100101010001111001000101001100110010111000110001110101001111111000111111110011010110101111001101110010011000110001011100111010010011010110111101101000010001000000011101010101101010101001100101001011100000101001101010010111100111110010101011010011111011111101110101111111101101000111111000100011 +11011111000101111111110110110111010100110010110100100101000001100100010100001011000011100110111110110111100011100001011101000101011110001011010010011011111110000111111111100001000100011111000101000101101010011111100010011111101110101111111000011001111000000110101000100000111111101101101101101000001111101011100111110110101000001000111101111100111000000000101001101000110011101001111000000001101110110110101011100011000111111011100101111001101100000011000110011110101000001110010001101110101001010100111100100010111110100011100001101101001---------------------0011000010011001110001000000000100110011101100010011011000010001101100100010010101110001111100110010111001110101011000100000111110000000011010110111001010010001101010010110001101011101011100010111101111100100100111110100111111100101110000110011010111111111110011110000111010001001100010000110101000111110110010101001110010000011000100101110111101101000000000001010000111111011011001010100001001000101011101010110110101110101100011111000110101001010000001100001001110011110001100001001100100111001100110110001110111000100011000111101100110010000010110011110100011100101100100011000001110000000101010000011000011111101100011101101101001110011011111001110101101111111011110100000111010100110010001110000110001011110010000100001110000100010101011111111111110000101111001001010011110101011100001011110011010111111001110100101001110101100001101001000011010110000001011011101000000111110111101101100111100101110001000111000100001010011000010111110010001001101101011010100110111010110100011110011111010000110000111011000110101111100010011111011110100000111000110101001110101110101101000110011000110011001101101101100100100010010110110100100000000111100010011000101010011111100110000010101000111100011111111101101010110010011101010000010110111110011011000111000100100011011010011000000110101000000 +10000101101000110011000011110010101011110100000100101111110011010001010100010011110000111111110111001111011011000010110100110100000001100001010111011110001100001010110100111101011011001000101101100011101100000101010011011010111011000100100011101010011011000011011001011110111001010110011011110010111110001101101111001000100011110011011110010100110101000110111101111101010011011001100101100100010011010000100111110100000001001110100000000100101100011110011011011110001010000101110101010001101011110101111010111110011000010100000101010010110---------------------0100010100000010111101010000001101101001000010101100010010101000010111111101111000001111010011011111011011111111010100100010100110101010111100000001001111001010100011100101100010011011100001100001011100100001100110100110111100010110000110010001000000110100001001001110010001101101000110101100000111010110001001101001100111001011100011111110001100001111111100100001111001100110101100110001110011000000001110000101110110001001010110011010100000011101001111101001010111101000001101011010111011000011100000111101000110101000110000011101100001101110010100101100111011110010000010111101101000000110011111000101010010101010111111110001001000001010110100000110110011110111011111001001100000010100101011010100000101111011010111110100110110000100101000011001000010001011111111010010111000001110011101110010100111010000011100000110111110011111011010111011001101101111110010111000001011010101101001000010111001010011110000100011011010110000000111100010001010111011010010001100011100000101110011010100010111010100001110000100011001111001111000010010110101010110011100101111100111000001001000100100111111111110111000011101110011011011000011010011100100010100101000010101000011110110101101011011010110100111001111101110000001101110000011101100101000010100100110000100011011000101100100011110101100101100 +10101000101000011011110100000000100001001010111010010111011111100110010111111111011011000011101100001010110101101001001011000010001100101010010111111111101110101011101001011101100101110111101001100000011110101001001110110010101101110111101001011010100000001001101000101010011111110000011111100111110110110001101101000011100011001011111011011010100110100110010010011110010111000000000101000011001111101110111100110001100100000001000000101100101000001010010000001010001100100011110010000010011011100101001010011010011010000110101001110111001---------------------0100001011000010001111001000110100010111100111111011100000110110000101001111110101011001001010111000110001000000001110011001101101001110100001011010111100111111100111010000111000101010000110010100011100010011110011110101110100111101101011111011000100011000001011010000001101111000010100110011000001000011010101100010010000100011101011101111001011111110010110001010101100000011001101000010000011110111111110011010110001000011000011111100101111100100110101100011001101110100110111000100010110111001111110111000100100001110101111100111110001101111010000110011111110010010010100001100100101011010101101010001101110100011000110110100011011100111101010110000010111001110101000001000111000011000101011101011111001110101001010010000010110111011001011101001101000100111000010000110001110111101100010001011101101000110111011100111110100100000100001001010010111111010011000101000110011010100100100110010101110010110100011101101100100000100111011001110001100010000110110111010011011011100100100110001111000011111001000100101000100101101000011100001111101101011110001111010101010011000110010101001100000010100101011101000001100011100100000001001010101001101010100000101001011010001011000001001001110001011100111110111101001110111100111010100011101110011011011111010011110111110011101011101100110000111 +10101001101110010101111110111011011011110011110100000111100110010100010001111111100011100011011101010010011010101101010111110101111111000101000010011011110111011101000110001110011011101101101001011011110000011000010101010101010111000100000101011101010100000000100010000111101101110001100111001111011101110111110101101111001110110010110101000101000100001001010011001000100110110001010000001000010010000100100001000110110101001011001101010010011110111011000000110000011011100001011110011000011010001010110000111101101010001111011011001010100---------------------0000010010111111101000101011011101101010011110101001001100001010000010000101101000000110001011101100010010010011100011110100110011000001011100000011100001110011101111101000000010000110110111101111110011101011010000111111101110100101011110010001001001110000000110111110111101111111000001101001101000101010001101001110110110111111101101011111110110000000010100110100100001011011100100101010100110101011000011100010000100110011011000111001110010001001110110000101110000000111101001010000100011101110000100111111001000110101100100110110110000100001001011001111010010001111100100111101000101000001000001000000010111011100111000001000111011111011010110100010100101100000100000101000100100001100111001101101111110100001110101010000001110111000011011001000100011001111000010111001010100001011100000000101111011010000110010000110000010100100001000100010110001101100101000011110100010100110011100010100000101101111011100001101111110110111010010100010010110110100010000110010001101101000111000101110101011011100100101000101101111010101001110001011101100010001011110110010111001101010111111101111011101001000101110000000100010010011000011010101011101101001000010111011101101111111101100100101110101100010001010110101111001010001110100110111101110001110100000010001000110000101110100111001111000111101 +11011100000100001010110010000011100011010111110100111011001100101100100010111011011010000110011001010101011110001010111101100100100011101100101101010101101110110010010010010000110000110001111011111111100101011100110110100110010001101111000110000000100000001100010110001101001011110111001100101000011100001001111010000011111000110101110000011001101111100001010101001110000011010000110100101001011001100000010110000011101111000100111101100111011011100011100000111011100100001011000110001110000011101101111100101101011010010101101101001011010---------------------0010010100101001101100011011100110011000000110110011000111000101000011100100001111100111000001010111000100111100001111011011010101001000101011010110100110101000010111111011111101101001001111101001110001100001001000111010010110101001011110101101110110110111110100011011101011011000111011111001011100010001111110001001111010100101100010101011101101000001000110110001010110111111100100011100111011001101010010101001100110011111100110111100001100111100101110000000001011001101101010100111110001101011110000011110001010011110110001000101101101111100101100100100010101001001101101111001011111101111111011010001100101011000101110111111011001111100001100110111101111110111101000001000001010111001110100100100110011010110000100111001111110011101010101101111010001100011010001111100110010101010110010111100000010001011100000110000000011011001010011000100111111100000010100011111101100110001110101000101111111000011011111110001101110100111110011110110000011000110111000110110110110011010001000011011010111100000101111010011101000000101010101001001010111110101000111000010110010100100010110011110010001110000011011101010110001100111000010010011100100100001111100000111000001111010100001110111010001100000010110100110011011110000010011001100001110001101110111101010101000001110001111011000000000111011 +10100011000010111111110111000101101010101001000011101110110101010010101011110011010000010001010101011110011111001001100110001011011001111101101101101100011100011111101011101101111101110110001011111100110000111101011100111010111100101101110100110001001100111100110000100111100001010001001110111101110111001000010111100110011001010111100001101011111000000110101000111011100111010010010100111111010110100111110110100010001100101001001011111000100100011001001011000010100111010100101101101000001110010111110101101110011111010000101110101101011---------------------1011010110110100001011110000111000011100011110100110110010101100101101000101000000010001110110101101010111110100111001111001110101101110010011110101000001110001101000001100011001011110000010010101010100000010110010101011101101100111110111001100101101010100111101001011101111101111000111111011000010110000001001111011100101000011010011011101111001000100011001110110110110100100111010001001110101111011000001001010110110110100010001010101111100101000101001001000000001010101100001001010010111101100111001101111010000111001101111001111110100011001111000110010001100001010000101011101111011101100010011110001000100010000100101110001000101111101111111000010110000110000001011000001011111010001100100100011001100101101001100111100001011000111010010001001010111111101101100111100001010111111110100110001101100100110010010100001100000010110110100001101110110000010100100111000001111101101110111010000100010001010110010110100100000101100011000011010111011111001010101011001100001011101110101101000011001101100001111110110110100110110011000100011010111000011110111101001100101011001101000011101010000100110011000100100110110001011111111101001110111110111100101101111010001001110101000011001000100101010100011110101110100100110010100110000101110010100110111100110100010101010110001010000011011101101 +11011111011010011010001101001000001000110111001011010101001101011110111000001010000011011100010100011100001110110010011110100011111011100110001100001001010011010110011101000000100100101011001100101001110000111001101101001101011001011001000001111001101111001011001000011101001011000110011001110100111011101011001100101010001010101110111001110100100001010110111001111001101011100011010100110010010010110001000011001110010110110110001110000100111100000010111100011001111101001101010100111110100010011001010010111101110011111010001110101100101---------------------0101001010010101111101000000101000010100000100111100101000101100100011011111100001011100010111011111000000000101001110000101001100000000110010000111001110001111111111110001110101110001000010110010101110010010100111100000001111100001010110110100110011110011100100100000010001100001001101000111011100001001010100111111010111101100101100100100010100111110111101110010011001010111010011011011100011110100010000010100000111101111101011100000101111111001001101011100110010100111110010100110011110010001101010010110110110101111101101100010010011001001001111111111100000101111111000110000000111000100000110000111100111001111101001011110000011110110111010110001000101001110101010010101010001110010110010110011011011100010010001111111100001010001100001110101110100001110110110010101000001011011010111010010111111110111000010011111000010101100010100011011111001101011011101010000110110011110011010001110100011001010100100111010011001100110100010001001000011110110010100000101111001011010000101101100110011100011101101100101110111101100001111110111011100110000111000010100101010110111101100101110011011011010110010111001001100101001011110111011000100011111010111001110010101010110111101010011101001111011101100101001010010111000010000011110111101010011000101111010011100011110101100011101001100000001 +11001110001111110110011101111110111011010011110001011000100011011001000000100000000000101000010101111010101001001100111000001100101101111011000111011110101011101000111110110101100000001111010010000111010001000100110111000000111010101011101001111001100110100100111000100010000011100000000010110011101100101110001110000001010000100010100110110010111001100010110111101110111110100010011000011011011010101010101011011010000011010101001100111110111000010000011100001101011001011000101000100011100111111101111111010001001111100001111001001000111---------------------0000110100010111101000011001110011100111010110111100110110001111001010111111000011010011101001011111011101101011101011001100110100011000100101100011101100011011001111011011000001110111101011011010101110110101100000000011100110110101001000001000100011111011010011111001110101110100011010011101101000111001110101110111101000100011011010110001011000011111111010010110011001001110100111111110101011111010011011010011111010111010101001110011011000100011011110000101010011011111101010011101011000010101111101111111101010100000111011100001000010111110001010111000110001100010011111111110000100001111100110101010111001010001011011111010110011110100011010101000000001001101010111101111110001111101100111110101011111010001110101101001100100001000101001001100101100100110011100110111100010110010001000111101101111111011011111100000001000010011111000110001000111000110000110101101000000110001001111001111101111001111010000110101001000001111100100110011011111100111011100101100010001111110110001110001010101000000101111100100111110001101110000111111100101110100011001001000010100111111000100111010011111111011110000010010010000110011110001000010010100010100011011110101100010000101011011010111010000100101010000101001000100010000011011010001101111001111100011011111011011000111110100100111111000100110 +11001100101010011001111100111110001000111010010110110001101111110101111111001100110010001010101110000100010110100100111001011011111101001001100011000101010000101101011011011100000101111111001011101111001011110011101100000011110011001001111110110110111000001111000110100101001011011001001101011101010001100011110101000111001010011100011010111100011110011101101100001000010011001110000100111100010101101101000000001001011000111101001010001000101100100010010100001100010010010111010110011101110010011001101100101100001011010000110000001001110---------------------1111101010001010010101110010100100010000001110001110010010001110110001110100011000010000110001001001011111000101111111000100110111100111011110100111110101111110100110111111110110000101010110111010010110000011111110110111011001101111101101110010101010111000101100010110111110000110010001100111110100010001011000111110100000100101010011101100110000101111000100110100011000011101000110111010001001100100101010111000110100011110100101000100110011100011111000110111001000010110010111110010101000001111001100110110110110010101111011000011011110011101011111101101111001001010101110100001001101111011000111101001010101100000101001001101110111110110110110101000110010110110111001111011011010101000110010110110100011000111010011000110001100000011100101110011001101010010011111000100111000100100100000011100101001110000001111010010000111110011011101010111100001111000000001101101110010000001001001001110000110111100011100101110101011010110111001101000110001000111100011111000110111111110001101101101110101010011100010110000100011110101001000001101101110000111101011010000101101111000001110111000101010010001011100100001000010100010101100010111111101001101101000011000110011001110010100101011101000110011011100111001111000000111010000001111111101100011101010111101000010001100011000101101010001011010 +ls56msgs +01010011000111001010110101011001100101101101100110011111001010111011111011010001000110110000000010001001100101000001001001110111000001001000101000110111101110000101111010011101000000111100101110010111001001001100101110111111111100000110100110100001011011100011100011111100001011100000111100011001110010111011001110001001000000100010101111000000110011110101111000000111011110101010000100000100101101110110000011111110001111101100001110100100011010011100011100110100000010110010110001100001100111010111111000000001010001000000101100100001111111110000111101011111110011000010010100111000010010010100001110110101111111011100011000010010010101010000100111011110011010111111100010100111010100010010101011011111101011100101000101111011111101101101000001100100111011101100010110111001100111100010101011100010101110101101001001111111000110100110000010101000010000000101111011001001111101001110111010110101111111111010000010101000110101011100100001011000101111111100110000011011100110110001111110011011001010111100100110110010000110000000111110001000010101011101000010010100011011011000010001111100110001100100001001110000111101001110110011010000011111111001101010000101101010010011000011100100001111011100001000000001101--------------------- +01100110010001100100100011101011010111000111011011101010101111100001000011110000111011011101100011111010011100011011111101010010110000011110100001000000010100101000010110000010100011110100001011010001010111100101000011010100010101110101010010101111101101101001001011010100010001111111100100010111101011001011000010001010111111010101001101100000110000001100010101011110101100000101101010010001010110001001010111000110111101100011110001110110100001010111101001100000000101110110001100111010100011001011101000011011000010111001001011010110010001100111111100110000011001000010001001100010011001100101010100000100010111110111000111111010110101100001100110000110101001100011011010110010000101011101011101001100100111101111111110100001000110100110110011000111011011000110110101111101100100100010100010001101001011011101000110100101101110110001011010101011011110010011001101100111000100000100111001110000001001100011001100110101010101010110100101001001011011111010111010010010011010111110110000011011111101100100100111001101011101100111110011010110111110111101101101111010001100000100011010100001001001001110110011101000101100100010101001111100101111110100100011011001000111001001110111101011000111000100110101001101101--------------------- +10001000010001110000100001101011011100010001010100100100010010111101111001001100011000101010110010100111010000100100000000011110110101001111010011001000111111101011011011110100101110100111110001101101010001111100101110010101100110110110001100010000010011111001011000111111011010100000000001101110011011011101110010101111101001110110010000010101111110010011010010011010110000111011011011001101000111011111100100000000110000000101000111101010111110000000100111000000010011101111111000111100110110011000010110011000100011000000000010110010110100101101110011010101111001010110111101101111011101001010111000011101001001111011101111111101100101010011011111101011000100111110010011000001001000101011101011111110011000011111100110011111100110101000110001110100000100010100110100010010110111010000111110101011101011110100011111010111110011001110001101101110110100110101111011100011000100010011011110011001010101001101011111000101101011100001010101100111000110110000101101100100000010010101001010101011100001011100110011001100100001101000000011111101011111100011001011010011100101101010100010011001011111010010001101101100110011100101011000011000110001010010101110101011011100101110000100000011110100000010111101011010101--------------------- +00111110010011101110110001101011010010001011001000111110100010111001111010010011100010101110111110101010100001010011010001111001010001011100001110011100001001110011110000110011110000111110010111101101100101011010101101101001010001010100111011100100101000001010100111101111000111001111111010101101010000010101000100011100001000010000110010110001001010110000101100001101001110011011010011001010011000110100011110001010011100111001101011111100011000110110001101110001100010100010011011101101010010110000110010101101010100110010000000110101110110000101101011100000000110001110000100111001000101010100110110110011111010000010010111101101111000101100001011111000110000111110010010001011101101100111010101011100111011001111101010100011100110001101011001101010000111000000000110101000100001101110101010111010011011000100000001100010111111010011111010000011100011101101010111100010100000011011001111000111110101111111111001000110100000011001111001111011100010100010100101010000100110001100100110011001001011110101011111111000000101101000000011011101111110110100010110011111111001100000010111010000110101010010001010001011010110100000100100011011110001101111111100001000001101101000110111111111110110011110100010011011010--------------------- +00101110110001001110101101101011001000001111110110110010111010001000000101010000000011010010110110101000111111111011001101001111010111001000011011000110100000000011111101011001111000000101101001110010111101010000110011101000001001101111011010111000110000101101101011010100110011011011001001011001100010111100100000011001001110000110011010001010110001011001011011010000001100001111001110000101011111100101101011010110111010010001001100100001010010010011011110001011001101001100110101001110111010111110011001000011111000000110010111101011000001111001000001110010010001100000010110010110001111010101000111010111111100101100110101010000001011001001011101101011100100110100111001110110010000001111010101000011101101111100010100001011110011101101010100011111001111011110010001010000000100100110000011110101010000011100010111010111100101010010000101001111010110101111100001100100011100011101001100001000011001101010011001111000100000001101010010011100010110011110010111011100100011101001100010111011010001110001011011110110110011011011111101010000111001110011000010010000001110110100000101111100110010001010000110001100010100001110100101010011110101110010010011111011101010101101010000101001011101011111011001000111101--------------------- +10101000100101000000101010100001010110001000111100110101110001000011010010001001101001011001101011110110010100110000010001101100000000110010010000100111101100101111010100010100010000101000011010010011000101001101000110101101001111111101110111101011001110001000010101111000001110000101010000100111101000111000000011000011011001011110000011100001111010001101110010001111100001111101101011110111111011011001000100110010010010010000100011010111110001010010011100010111010010011101110000000100001111101111000010101011001110110101100010001001010000001100001101001101010111110111011011101111100010100110010001100000000100010010001101011110101111011101101110010011110111011111101101001101110000000000001111011110111100110000000101011111101000101110000011010011001010111111110001101100010000110101010000110110110100010101001011100100011111110010011101100000111010000000011101010000010001110101100100011000001110010110111001010001011000011001110011111011111011011011101000110110100010001010110001100111001111011001101001000100011001011100011001010001000010010000010111110100010110110000110100101110000010100101011110001011011101110110010101111110100010111110101100110000100101110000110001001010000010111011001011110000000--------------------- +11010000000111110010010111001001110000111011100011101110111101101110111100100010101010101001101010111000100011110111111100001000110110100000100100101001101011000000110100010110010111110100110000001101001100000010101000101110111000100101111100010101010000111001001111101111100010001000011011001000101001110001010010011000010111001101100000001100001010011100111100000101011010001111010001010001110101100010001011001110100100100010000110011001001000111101101001001110001100101100111111101111010100001001111111011110111011101100110001011111111010100111011110110101110000001110101001101001011101000001100011011101000001100101100110011100010000010010000100110010010110101110110001001111101000011010101101111111001110001010001110111011101000110001000101111001101011011100100101000000100100010011111111010001011011110011110111111010101010110000001011100000110011011100100100010110111110101010100010111111011011110000010010011111000100111011010000101001111110000100100100100100001111110001001000110011110110000000111110011111100101101001100100011100100111110110100111011110100101010110101110100010100000000110010100101101000011000100011010010010110111000100110001010011010010011010111011111111011100001111110000110011010--------------------- +01111111011000111000000011110101101110111110001100111000000010100001110101111101011011111101110001100100100000010000110111101001001001110110010000010100100100000000101111101000010011000010001101001000010110100110100110100011001101100100000011000011011001000011100101001011110011101011000110101011111000011100000100101000000010011001100110001110001010110010110100001001111101010101110000000100010110010010010100111000110111110011001110100100000010110101001111111111111000110110101110111001101001111000101010010000110010101101001011010010110010111010000011000110001110011001001100011111100111011001100100001101111110001001001010100000101010000011010000010110000000111000010000011110110001010010010111000011000110100011010001000010000111011110000100000010001101101101010010110101000101010000010100100110110010001111101001101100011111000101110010100101101001000100100101101110001110000001100111111010000011011111100001101010101000001100011010000110010100001011101110000010000000011100000001111100110101000101000100001010011000000111001110000000101101011111100111101101000000111111010101100000000100000111000011010111010011001110111010111011110011011100111100110011101100110010111000111111011011001010010000111101011--------------------- +00111001011111110110101111000101010010000111000000011100101101000011100000110001010010101010100100011111110010101100111111001101111110111010010010110101010110000100000011001010001001101100011011100000100100011000100000001110111100010110000010111000010110001110110100010001010100111111110001100101001101011111101010011000001101010101010010101111010001011000100111001011000110101000011011000000111010101011110111110001011101001000110011110001111101011001110001101010101111010011000100010100011110110011111000100000001000011000110011010001011101110000010000101101010100101110010110001110101110001011100010110010000000111111100101101101101001000000010110111010111110101001110110101110101000111110000001010011000001100001010000100010010011110100111101101101110011110010101000110101111110000101100010110011110100110101001000000011010101000100101100000100101101111001110101101010110010111101011101101001010001110011101101010010010111011110001101111111010011011010100010110111000000011100110111101000010101110000010011100101001011110110110111001001110011001111000000100101010110111010000001010111101000101000110101101110001111101111010010100010100000010111110111001011100111010110010010100100100001101010011010110110100--------------------- +10000100100000001000111011000100011001111001000001001011100110110111110010001111111110110110010101101101111011011000111001110111101010010000000100010001100100011110100111000111001101100101000111001101001000110011001101100100110101101010010001000001011011011001011100001111001010001001011111100010111010100111111111000011000000001110010110111100001011011001001100101100101110101000000111010110010001010010110011100110011001001001010000110000001010100011011101010100010011010110000100001011101011110011101000011000111000000011011010010000111011011001001010010101100001000110111110001111001101000110101100110111100010001000011100000000110100100010001010010001110001100011100001111111000110111101011100111000010100010111111100111000010010001101110001100111010001010001010010111101111101010000110111011100100111001110011101111111011000000001101000011000001100011111110000011110101011101111101100001010010001110100010011101100111101011011111011111111011001110000000001110001010101101011000011000100001010111000011011110010110100100001110110101110001010111100000101000011001001001110001010000010011011111010100011000111001100100011010111010110000001010100100011101111000010001111111000111111010111010111010100001110011--------------------- +ls56cwds +0001001001110111000001001000101000110111101110000101111010011101000000111100101110010111001001001100101110111111111100000110100110100001011011100011100011111100001011100000111100011001110010111011001110001001000000100010101111000000110011110101111000000111011110101010000100000100101101110110000011111110001111101100001110100100011010011100011100110100000010110010110001100001100111010111111000000001010001000000101100100001111111110000111101011111110011000010010100111000010010010100001110110101111111011100011000010010010101010000100111011110011010111111100010100111010100010010101011011111101011100101000101111011111101101101000001100100111011101100010110111001100111100010101011100010101110101101001001111111000110100110000010101000010000000101111011001001111101001110111010110101111111111010000010101000110101011100100001011000101111111100110000011011100110110001111110011011001010111100100110110010000110000000111110001000010101011101000010010100011011011000010001111100110001100100001001110000111101001110110011010000011111111001101010000101101010010011000011100100001111011100001000000001101---------------------01101110010100110011000011100101101001010100111111000110111100000111000110000100010010100100001010101100010111010100110010100000000011110110110000001100000001100001100111000101011101001011111010110011010100011100100001011010101101110011011011011001011001000111110100110110110100110000001111100100110100100010000100110111001001101010001001011010000010101111101111111101010100011101001101000011110111000011110100110011111001110100011110011101110011001000011101100111001001101100101001011000100110101001101010001110111000011101110111100010001000000111010000111011110001000100000110000100110010101110111101010011010101011010001100110100000000010011000001010010001101100001111100101100101101100111101101111100111101001011000101110101101000110101100110110000111001011010001001010010101101101101001011101101100110010000101010101010001000101011100110010011010010100110001011000110010010010110010000111001100010111101101111011101100100001001111101000000111011001101111111101101000100111100010100111100010100110011101001110101110110000101110111001110001110010010100111101000111110101001110110111001110110111001110001100100100011001111111000001101010110001001100100100010100011111001000101111001010001010111110111111110010000111101010100110000010010010000110100000100110000110000100011110111010001100001000101010000011111011010011000000111000100100111111100000000010001100111101010111110010011011010010110010101000000100100110000111100111100001100001010101101011100100110000000010111100100111011000000111000110111110111000110101011110000101100000000111110101011111010111101110001110110110001011110011101011000000011110011101101111101011110101000011011101011011111101011101000010100011101001001011100010000111100100010111010001001101111010010000001000101001101010011010110111111101111110000000100111101010101001111101010111110100010011111010010110010011010101011100000000100111000111011001110110011011000111001110011010100011011111010000100101001001110011100110010010101001111101101111111001001101110101111010001101010000111101110110110100000011100101111011101101111110011001000011101011010010010011001101110101010000010000000111000100101000010110101101110010010010110000101100010101000001100100011111010100010100001101110011010000111101010011001011011011000010111101111100110001011000011001001101001001100000001111100000010011100001111010000000100010100001011011101010000100100001100001101100011010001010100010100001111010000001000100010000001100110000000000110001011011110010101010001111010011000111011001111101001010101001010100101100111110100011011000111000101010100101000010100110110 +1011111101010010110000011110100001000000010100101000010110000010100011110100001011010001010111100101000011010100010101110101010010101111101101101001001011010100010001111111100100010111101011001011000010001010111111010101001101100000110000001100010101011110101100000101101010010001010110001001010111000110111101100011110001110110100001010111101001100000000101110110001100111010100011001011101000011011000010111001001011010110010001100111111100110000011001000010001001100010011001100101010100000100010111110111000111111010110101100001100110000110101001100011011010110010000101011101011101001100100111101111111110100001000110100110110011000111011011000110110101111101100100100010100010001101001011011101000110100101101110110001011010101011011110010011001101100111000100000100111001110000001001100011001100110101010101010110100101001001011011111010111010010010011010111110110000011011111101100100100111001101011101100111110011010110111110111101101101111010001100000100011010100001001001001110110011101000101100100010101001111100101111110100100011011001000111001001110111101011000111000100110101001101101---------------------11000101110001000101000111111101001011000100001101111101110100010111111000001001101110000001110101101010100001101100111001101111000101001010100110101001000111011100100100010100111100100101111100001101101110100100011101100101110110101101101010010100110011101001100000011101010100010011001101110001011110001011101110011000010011100010010111011011101010000010010001011110111100010000000101011000110101101010110101010111011010100110011101101101001100001000011100011100000111011101000010101010111010110011100101010100111101001011111000100101001110101100001001111010111001011110110111001011100101000110111011001110011010001110101111101110000101001101111100111000000001011001000101101111000001000001111100110001110001011100011000011111110001101001001000110000101011000011001001101001011010110000110010010011010001011001000111000111110110101110001000100100101111001100110010011100010001101110001010010011000101101111111000011000101000011111110001110100010001000111110111011101010011100110111011111101000010011010001100010100111110111101000111010010001100001111111110000011011011000001100111010010000000101010111100110010100011100010010111011001110000101011010000011011000111101110100100001101001110100001110100000110011000101010100010101001100100101101111110111111110110111011100000100011001011010110011110111111011001011100110110111110000100001100010111101100111000011111010101000011100011001111110110000000101011001101011101001010110110001010000111110010101011011101110000110101001001110110101011001011010110101001100110110100011111110011010011110010010010111101101111101101000100010100010010111111010001001000111110010111010110100010101110101100111101101001011101001101101000000001001001110110101011111101100101110011100101110100110011100010110101010110011100011101011111100111001010101111010010111101110001101100110101111111010011000101111101100000011100000100100111101001001110011001010101100101110010110101110110000000110100110000110100111111000110001010110001010100100001010010110011010011101010010011001110111010001100001101101100101000010101000110100010111011100111001110010110001010111110110010011010001110101010111111111111001011100000101010000000101111110011011001010101101110011110011110100011101011100010001011011010001001000000101100010100110100000110111000011100110011000011011000011110001100101010101111001010011001011010101101101110011110110000100101110100010101111001100101101001110011110111011000100101000101000100101111101111110101110110011110101010100110111010100001011111111000110101101010101100001011000110111011110001111110111001110110010000001101000010011101 +0100000000011110110101001111010011001000111111101011011011110100101110100111110001101101010001111100101110010101100110110110001100010000010011111001011000111111011010100000000001101110011011011101110010101111101001110110010000010101111110010011010010011010110000111011011011001101000111011111100100000000110000000101000111101010111110000000100111000000010011101111111000111100110110011000010110011000100011000000000010110010110100101101110011010101111001010110111101101111011101001010111000011101001001111011101111111101100101010011011111101011000100111110010011000001001000101011101011111110011000011111100110011111100110101000110001110100000100010100110100010010110111010000111110101011101011110100011111010111110011001110001101101110110100110101111011100011000100010011011110011001010101001101011111000101101011100001010101100111000110110000101101100100000010010101001010101011100001011100110011001100100001101000000011111101011111100011001011010011100101101010100010011001011111010010001101101100110011100101011000011000110001010010101110101011011100101110000100000011110100000010111101011010101---------------------00100100101010100111110000011101101010010001011110100001000010000000111001110010000101100100101100101101110110000001111100011110110001100010010010001111111000001101100111111100111000111101100010011000110001001110101110111110010110000010110110101011000111110101100101011101101111011101101010100110010000110111110000000011011101111100011001100011000010001010100010110011011011010110010101000100000111010100010000111100010001011110110001110100001101110100111100101011010101001011010001100100111010011000010000000011001110111001011001101011111000110001001111011010000101010000001101101000111001100111110110111001010101001111100110011111100111101011110100110010101001001011010000101100110011111011111010111001111000111010011100010101011001011010011011111101001100101111101000001101000001010101100011011101010110001010100100000111000101111011010000010000001010001111101100001100100101000101011101001010000011000011011010101100010000001110010100111111011010011101000111001100101001000001000110010001110001011011011100110001111001000011011001010101100000100011011010011011001011001100110010011010101101100011000111101000101101011011100001100110000100101011001000000011100101001001010100111100010100111000010110001010010011101010011010000101001111000001010100111011110011110010011111011000111111010001010000111110011010101100011101001101101110011101000110010000101010011010101110010001011010011100100100101000101011110110110011001100100001100010001100000100010100100110001101001110111100100010000101101101011100001110001110001111001001110010110111110011110001010010010101111101001010001110110001001000101111110100011011111000010110000011000010110011111100000001100011100000001010010100001011000100110000010110010000011011010101010011100111011100100100110111110100111100111011100100001010111100010110101000010100011000000111000011100101100101001110011100111000111111110011101111011100001001001100110111101010001101011110100101100000100000111100111011101010101001100000101100010011100000100110101101100000110000101010000101011011110001000000110101011011010011101010010011110011011010000101100001110101101111000010000110001111100110111100000010011100110010101010000101011100110000100100110101001111000011111101110100010001001101110001111010001100011101100011010010111001101000111001010111111110110001011100101001010100101111010001011100110010000001100110001111001100011001110001001000110101000000100110110001000101011111000000001111001110000000001101001000010010000101001011011101011101000001111000010111100101011001011001100111110000101011110010000011110111011100100000100011110000011011 +0011010001111001010001011100001110011100001001110011110000110011110000111110010111101101100101011010101101101001010001010100111011100100101000001010100111101111000111001111111010101101010000010101000100011100001000010000110010110001001010110000101100001101001110011011010011001010011000110100011110001010011100111001101011111100011000110110001101110001100010100010011011101101010010110000110010101101010100110010000000110101110110000101101011100000000110001110000100111001000101010100110110110011111010000010010111101101111000101100001011111000110000111110010010001011101101100111010101011100111011001111101010100011100110001101011001101010000111000000000110101000100001101110101010111010011011000100000001100010111111010011111010000011100011101101010111100010100000011011001111000111110101111111111001000110100000011001111001111011100010100010100101010000100110001100100110011001001011110101011111111000000101101000000011011101111110110100010110011111111001100000010111010000110101010010001010001011010110100000100100011011110001101111111100001000001101101000110111111111110110011110100010011011010---------------------00111011110010100110010100010111111110100111111100101100100010011000010011010000100010111010100100011111011001101100001000011010110111011011101000011001011001101001100000011001100000101101011100110111000111010111000111001000100000110111010110011010000100111000100011011110110101100100101100000011010000100111010010011001111101010110110111101101101011111101111111011000001111001001100101111110001001110111001010100111000101110101000111000100001100001010001001110011011110101011001001011111101101001001111100100100001001000010000001101111010100001001101111100000101010011101010000001100011000001001000011010100110100101010011111100100000001010101100011001101100101100010000001000111011010100001100110111111011100101001111101100011010101111101100101101011001110011101011000100100101011110000011110011110001001111110000000111110001001100000001011000000111110010011110110011000001101110111010101110100000111000110110101000000110101101000001010111010111110010100111101001001000100001101010000111001111000000110101100101010011001100001110011011011010000101100010100001000110000101001001011111100011000110000111011011000101100111011110000011010101111110010000011010010010001011011110100011010110000111010011101011100011001001010110010011011000110000011100110001010101001001000000100100100010010010100110001110001001010101101000000001111011100011001111001111100000111101011110101100010001111010010011111101101101101001010011011111000100111101011110010001010001001110001001110000010101000001100100011010100101100101111110011010001110100011001101101110011111001000010100010010110101101100101101111011011101010000101100010110101111010111110101110110010110000000011110011101110111111001100010110110010011010100111110110100100000001110110010000111111010010100111001001111000111001100000010000110110110010001011001010111111101100100110001111011001101101001010000010101000110110010110011101100100010000111101000000001110001000100110011101000001010001100110111011111100111100011111010010000010111100100101010111110010000000000100001110101110011000000000111011001011000010101111010011101001110110110111011001101100101001011111011110011101001101011011110111110111001100000010010011100111110011101100100100001010010110111101011111010111111000110011100001010110001110011011100000011101001001000100110111100101110000100101100011010111011101111000001101001011000010010101100111011000110001010000101000100001011001010110101101001010111011011000101100101000110011001000000100100010011010011000000011100010100100001100110100001100001010100001011001101100001010101000100011011010111100000011100111011110 +1011001101001111010111001000011011000110100000000011111101011001111000000101101001110010111101010000110011101000001001101111011010111000110000101101101011010100110011011011001001011001100010111100100000011001001110000110011010001010110001011001011011010000001100001111001110000101011111100101101011010110111010010001001100100001010010010011011110001011001101001100110101001110111010111110011001000011111000000110010111101011000001111001000001110010010001100000010110010110001111010101000111010111111100101100110101010000001011001001011101101011100100110100111001110110010000001111010101000011101101111100010100001011110011101101010100011111001111011110010001010000000100100110000011110101010000011100010111010111100101010010000101001111010110101111100001100100011100011101001100001000011001101010011001111000100000001101010010011100010110011110010111011100100011101001100010111011010001110001011011110110110011011011111101010000111001110011000010010000001110110100000101111100110010001010000110001100010100001110100101010011110101110010010011111011101010101101010000101001011101011111011001000111101---------------------00111010100101110111001011101001010110000000011011011101110110101000010110100100010011000010011100000010000101010100101110101100100110001100001001001111011010100010111001001011000111011111001010101100101000100000100010001001101111100101001110011001000110100010000000001001011010101101001010010110111100011100101100100010001100001000001100001000110111011011111101101000011110001011110010110101111111010001010000111000110100111000101011011000110011001100010001010000000100011110110011011000001110010001011011000111111101101110000000011111001100001110010110011111011011011011001000110100111010111011100011010011110000010010111000001001011111111010111111001110111010010100010101101110110101101110000110110100101101101011011010001110111000111001001111010101000111001101111010101101010110000111010110100111111100101100010010001001100110011000000000101011000011000010101000001010111111111000001110001011100000110010111111101010100101111100101111011110010111101101101101111101110010100101101101010000111010110000101000101111101011101001111000100000010111100111010011010100000101100010110010000001110111001101011000111011001100011111110111110000110000000101000011010100001010010000011110010110000001111001111000110001010111010011010011110010111100010100000111111111100111000011100110110011101000000110100101010001110101111101001101101000001000000001001001010110000101111100010000011010101110111010000110001100100011011011000100111101110010101101010000010101011000011110111011001010111101100001111111010001001100100101111001001100001011001010101101100011101100100100011001111010001011111100110111011110101100010111001101101011000000010000000111000010101010010101011001101001011110101110111111111111100011101010011011001011111101110011000001110110000011100001110111000011100000111000001010101000110111101111000100111001100111011011011001110001001100010011000111001111101110010111111011010100110001110001001000110101100010010110010001000100001001111000110111001000000111011100110000001010101001101110001011000110001001101000111111010011101010000000100000101111010011010111001010101011110001011110010111011001001111101100110110111100110010000001011010110101001111010111100010011100101001110000100000100100101001110011010111001000110100001101010110000001000111001000101101001101101111011111101010100000000100000011011111011010101001010100101011000111101001010100001001011101001001100001111000010000101001001101101111111000100011001010010100101010111101110110100101011101101010111110000001000111111101100011110010010011011011010000111101110001000110100111001110000001110110000101000101010011 +0000010001101100000000110010010000100111101100101111010100010100010000101000011010010011000101001101000110101101001111111101110111101011001110001000010101111000001110000101010000100111101000111000000011000011011001011110000011100001111010001101110010001111100001111101101011110111111011011001000100110010010010010000100011010111110001010010011100010111010010011101110000000100001111101111000010101011001110110101100010001001010000001100001101001101010111110111011011101111100010100110010001100000000100010010001101011110101111011101101110010011110111011111101101001101110000000000001111011110111100110000000101011111101000101110000011010011001010111111110001101100010000110101010000110110110100010101001011100100011111110010011101100000111010000000011101010000010001110101100100011000001110010110111001010001011000011001110011111011111011011011101000110110100010001010110001100111001111011001101001000100011001011100011001010001000010010000010111110100010110110000110100101110000010100101011110001011011101110110010101111110100010111110101100110000100101110000110001001010000010111011001011110000000---------------------01010110110010101110101011001011100101010011000100000111110111000000010100000110101001011001110011110110000110010101000101001110000000101001111001110101111101010101001001100000000011000100101111010000110000110000110100101000011100000111011010111100111011101011101101110011110001100101110101111100101011010011011110110000101010101001010110011111110000100101110010010110111100011000101100011011000011010001001100011110111100101100110111001001100010111110100100110000000111011010000111011110100101000000000011010010001010110110001001001010101100000000010000001101101100000110111000110001000111001101000001101001111001101010111010100100001010010100101001110100100010011011010000010010101001000001011100010001110011001010111001010111110101010001011101010000101111100010000101110100010001100100111101110111001001111111010000011111010010010111110101011000000011111000011101100010110001100110111110001011101110100101111011101001111100100010110011011010100110000101101010011101001010101111111100010001000011001100010011011110110011001100111010111000101010011101100010110010000011000011111000110110110010101011001111100110000110100101000011111001011101101010100100101011001010011000100101011010101101111101110010001110101100111001100001010110100111000000110110110000011101100101001111111000011000100110111100001110010100000100100100100111001000011000010010011010100100111001101001100101101111100010001110101100111101111011111101001000001101111101001111111100011000110100000101101100010110100000000010000111100010010101111011000011011110101110110111001001101110110000001000000010010101001101010001111000100001011001001011110100100110000100011100101111110100101101010000101000111101010111100100011101000011110011111100001110111100110110101000100101010011111001101010100100100011101010001101010110111011000110111001000000000001010110101001101101010101011101011011101100100111000100001111101011000000001010011011110100000000110101010110110101011100011000011001001011011110011011010100010001110010110101011000110010110111000010110111110111010101100001011101100000011110100101101101001011100000101010010101010110110111011110111101111011100100000111110001000011100011110110010010110011000011001011101101111101000101110101100111010111000010111000100001100001010000111100101101010010000110111100101010000001101001001001010111000000001100011101011000100011001001100000110000101110000011001001011000101111000110010011011010010010001000010111000110010110000111001101110010101101100110010001010010000110011111000001100010010010110100101100111000010100100100001000011111010010000010001111011000000110 +0111111100001000110110100000100100101001101011000000110100010110010111110100110000001101001100000010101000101110111000100101111100010101010000111001001111101111100010001000011011001000101001110001010010011000010111001101100000001100001010011100111100000101011010001111010001010001110101100010001011001110100100100010000110011001001000111101101001001110001100101100111111101111010100001001111111011110111011101100110001011111111010100111011110110101110000001110101001101001011101000001100011011101000001100101100110011100010000010010000100110010010110101110110001001111101000011010101101111111001110001010001110111011101000110001000101111001101011011100100101000000100100010011111111010001011011110011110111111010101010110000001011100000110011011100100100010110111110101010100010111111011011110000010010011111000100111011010000101001111110000100100100100100001111110001001000110011110110000000111110011111100101101001100100011100100111110110100111011110100101010110101110100010100000000110010100101101000011000100011010010010110111000100110001010011010010011010111011111111011100001111110000110011010---------------------10010010011010010111010000100001111001000111010011011010101001101000101100010110111111001010101101101111001001010100101110111101010110010110001001111100010010110111010010111011100111011100011010001001000000110011110000111001111111001111011000111101010011011110110011011100011000000101011111110110000001101110111000000100001010001001001100001101111001100100011011001111001010000000101110000001011011110100110100010011000010001100101110110010011010110101010010111000010101111101101011110011110100001111000110010111011111001001010000110001011001111010111001010011010110000111110100001111100110111110110000011111101110110000001101000100110011100001011011011110011101001100000111000101010101101001010000110110010011110000001111111101101010001110110111100010001110000100001011000110000100011010111111001100000001111001111101100101010110001111101011101010111110011101011001001110010001000100011010100011110001101110000011000111100001010001110001001111100011111000111011010010110011000100010001010101100010101001011010010010010000011100011101111100010100011101100100110110001001001011101100100001111011000001000101010111100100101010100110000110010011011100100001101001110111011010111010101110001010011011101100011001111101011101011011011110101100001010100101110110001110100000100100100001000010000100110101010110111111110000011100010110010101011001101100010010010100010001110110101110000000110011100000110010100100001011110001000100110100110010001010101001011110010110001001011111101010001010001011101001110110011110000010000110000111011100111100110101011100111011010010001100001101010001101101011000011101100101011011011010010110010010101011000000010100010111111011000000110011011101101001000011101111100100011110010011110110101000000111110110001001000101110001010000001001001010100000001010011100001110111011100010010001100100100010000011000110110000010001111111011100011010001110011101110001000011010000101010001101111101010011011000001111000100101100011110100111000111001001001110111101010110100100000010011100001110010111010001001010111011110101101110101101111000111001110110110010011101001011001001000001000110111101111001110100110000010010110101010101000011111011111111001010110001010101100001100011100110001101110010111110101100001110000111001100101101101001001110111111111010000110011001010110011110001101100001111110101001000100010101001000000011011010000111100111111100001011101000111001001010011011110001010111101001111000010110001111110110011010001000010111111011010011001101110001100101110010111010101000101111101011110010001011110011000010110001011110100001100111011001 +0000110111101001001001110110010000010100100100000000101111101000010011000010001101001000010110100110100110100011001101100100000011000011011001000011100101001011110011101011000110101011111000011100000100101000000010011001100110001110001010110010110100001001111101010101110000000100010110010010010100111000110111110011001110100100000010110101001111111111111000110110101110111001101001111000101010010000110010101101001011010010110010111010000011000110001110011001001100011111100111011001100100001101111110001001001010100000101010000011010000010110000000111000010000011110110001010010010111000011000110100011010001000010000111011110000100000010001101101101010010110101000101010000010100100110110010001111101001101100011111000101110010100101101001000100100101101110001110000001100111111010000011011111100001101010101000001100011010000110010100001011101110000010000000011100000001111100110101000101000100001010011000000111001110000000101101011111100111101101000000111111010101100000000100000111000011010111010011001110111010111011110011011100111100110011101100110010111000111111011011001010010000111101011---------------------10011100101010010001000111001011001000001011100111100111111101100010111001001101110010010000110101111110100011101101001001011110101010111110110111011110101001111000001110101111000101000100000100011111111001011000000101000000100010000111101110111100101001110111110110001000110010011111101100001111000001110011101000000010001111110100000110111000011110011000110100101011010110110001110111101011001001110111011010111110010100110100111111010100100100001001100000111110000101111101101101001110010111111011011101001101101011111000101111010011101110010100000010111011000010001110000111111111100010111001000000010100111000111110101111001101110100100010010100101110100111001101111000011001011100010100100110000110110001100111110100111000000101000111101011111110101001001000110000011011011100101001000011000100000010100001010010111011101111101000000010101000001001100110101111001101100101100000101000000100001101011011000110011100000000111101010100001010001101011000111101100110110000010010111010110010101111100101000101100111100010110010100100110000001010010000011110000100100111000000010101000011110111010110011110000001000011000010101000010101111110111101000011011001000100000101101011011010010011011111111111000000000000101011011010001011001100110110010001011111110100110010100011111100100010101100000010111001110001000010111100101010111111111001111011111101011100000001111110111110011100101000101000100111100010010001100101110111010000101000011111000101001000001011001010001000000000000001001111110110110001010101001010100101110100100101000001100010110100011110100011101001000111011010010111110111010010011010100000101010000010101100101000111010011000011100110010111111000011100001001010110000111100011001110010111011010110100010000001011010000010110011000010001110010111111011111101000111111000001111111000001101000111011010111100010010101111100011111101001101100010110110011010100001101011110100111001101011010001000001000111001111000100001100111100110000110100100010100010001000000100010111100011100110011011000011001110101001111000001110110110100111001101111101011111111001010011010010100010011011100100010010001110001011110111000001100100101000100010011110111100010011111100111110110110100111101110100111101011000010010010000010001101011101001110010001110001101001101000010111010101110100101100111110111110000111000000001011110111000001110100110001010111001100101001111101101110000100000111010000000001101010110100000110001010110101111010100010000101110110111100111100110101010100101010011110100000010011100011000101000110011000000101000111000010001001000010110110000011110010 +1100111111001101111110111010010010110101010110000100000011001010001001101100011011100000100100011000100000001110111100010110000010111000010110001110110100010001010100111111110001100101001101011111101010011000001101010101010010101111010001011000100111001011000110101000011011000000111010101011110111110001011101001000110011110001111101011001110001101010101111010011000100010100011110110011111000100000001000011000110011010001011101110000010000101101010100101110010110001110101110001011100010110010000000111111100101101101101001000000010110111010111110101001110110101110101000111110000001010011000001100001010000100010010011110100111101101101110011110010101000110101111110000101100010110011110100110101001000000011010101000100101100000100101101111001110101101010110010111101011101101001010001110011101101010010010111011110001101111111010011011010100010110111000000011100110111101000010101110000010011100101001011110110110111001001110011001111000000100101010110111010000001010111101000101000110101101110001111101111010010100010100000010111110111001011100111010110010010100100100001101010011010110110100---------------------01100101011100111110011001001100011111001101000000111010000000011010110011010100111000111001011000000111100001100111010011011010010001101101010110001100000101111110000000111110010010100010010100100110110100001111110010011001000001010011100010000101101100010101111011101010101000001111101100001011110110010100000100100110001100000010000110000001101000010100000000010111010101010011110001000100100000111001011001000001100101011010011101011000001100111111000101001100101111110000100100010110010000001110011011011110001100010001110001100010011000110100100101000101000000010010101000000100111110010111010111100001100000001100100010101010010001111000000011100000001000011101000000010100000000000001110011001100101010001000000101011101010000001100111001101110110010100110110101100000011010110011101111111000011111011011111000011111001000100100011110101010001011100101001000101110100001000110101100001010011011111001001010101010001100111011101100000100001110010001111111000110010111111100101011011000011101010000110101101101111000001100001001001011111111000010100000000111001010110000001010111110000001010010010100000100111100100000111100001000000100011010001110000101000101001110000110100000010011101111101111011010111000001100001010011001110101101000011100101001110110011000111010101001001111011110110010001111011001010100000100101111110010011111100001101100000000101101000000010100101101101010110000111111100111000100010101000001011010001100011000010010010101101111011110111010001011000000101101000011000011111100010101100110001101010010000001101000110001110011010000110111111011011100101001001000010100011100100000000100000100011100011110011111101111011010001001011110000001011000111100011110111101010000001101110000111110001101101110001101001101010010011110010110101100110101111110110110001110011110110011000111100110000000111011000010000110011111111100000111100011011000010110010100101011110110110100100010101111001110010001110101001001111000010010110100011010011101110001100011100100001010001010001101010001000011101011001000010110000010001110010010110011111000001001111101011000100101101110001110010011110001010010111000010111111011010110111110101000111011111101010000111111011111111111011010010100101011111011111000111110010100111010000001110010111000100100001111101000110010011100001110101011000101001010111110111001110111010110111100011011100001110000111000000101000011010101100110001110010011010000100110100100001000010111011010100111100110100101110110010111001000001000100101011100111010100001010011000101011111010110101101010011110111111101000000100110111000010010110001 +1000111001110111101010010000000100010001100100011110100111000111001101100101000111001101001000110011001101100100110101101010010001000001011011011001011100001111001010001001011111100010111010100111111111000011000000001110010110111100001011011001001100101100101110101000000111010110010001010010110011100110011001001001010000110000001010100011011101010100010011010110000100001011101011110011101000011000111000000011011010010000111011011001001010010101100001000110111110001111001101000110101100110111100010001000011100000000110100100010001010010001110001100011100001111111000110111101011100111000010100010111111100111000010010001101110001100111010001010001010010111101111101010000110111011100100111001110011101111111011000000001101000011000001100011111110000011110101011101111101100001010010001110100010011101100111101011011111011111111011001110000000001110001010101101011000011000100001010111000011011110010110100100001110110101110001010111100000101000011001001001110001010000010011011111010100011000111001100100011010111010110000001010100100011101111000010001111111000111111010111010111010100001110011---------------------01000111001000100011100111111001001101011011001101010000011100110001001100111011010110001010000010010011010001001101100010110101000000111010111101011100101100111010011110111000010011011000011100100110100010101100100110100101111000000011110111010110100001000010100111110111010000111001101010010101101100001100010101110101010001110000001111100101110111100010110100100011111011011111101110110111001001010000000110010101100000110110111111100111000111111000011100110100111111100110010101111111000110000000001000101110001010011100111010010011010000001100110011101100110011110100011111101010110101000111000011001101110101011110010111011110000010001100000101000010101011101011001101111101111011100001110001101011010000011011000111110111100000111101111001101101101100011000110101101101100010100011110011010111010010111010111011000000011110000100001000101111000101010110101110011100101011101011100010000110000010010001010000110101101100001000010101010110010110110111010001110100110001100011111011101001011001111011101110100101100100111111010010101110110101111110001000101011011001111110101101010110001010110001101111100001001001100000100000101010011001101111001011001010010101100111110100100100110001010001011011100100111101100001000001001101000010111101000010011100110011110110110100001001100101110010010111111011100101100111001110101111111111111011000000111001011011001001010101101010100001010100011001000110000011101100000001110010001000011001111110010110000111010010011100001111001110000101111000100001000000000110010000101111101011101111100111101001111000011000011110001101000110010010110010010010011001111101111110110001101100010001100110110100011101100011110101111100000011010001101111111101010110001101101101011000001000000000000000111000001010011001100011011100110111001011110011000110011011101101101001001001111101000001011111111010001100001010111111010011001000001101000100011011101011000000110111110011100111010010110001111011000111010101111000011011001110100101000001011011010110010000000110110101000100000001010101001110110101110000111110110110110110111010000000001000101111001110110101111001011000001011110001010110110010001100001100001000010000000111010111101111011011110100010000110110010110111000000001001000001011000000101111010101110010001011011011001001110001000111100011001101100101010011100010111011010010100000011111100111111001100010111001000001101011000101000101001101010010100110011100000010010001101110111010110010010110000100001110001110111101101111011101000101110100000111000100011011001001000000101101011001101110111100110100001000011000111100011111100010 +ls112msgs +0001110000011001011011101111111111101100111110010001111101011010101111010100010101101011111100010100100001101111111011000110001000100111101010000101100101011000010111101010100110001000001111010111110001111111001011110110000100011110111010111101101101100010011011111111011011011111001110010100011101100011010000000001000100010101100111101111000111010011101010010111111101011111101111011110000001001101100001000001000110011011001101011010110111011010000111000111100110110101111101000001001100001111100011100001110010110000011100010100001000100101001100001000110010011101010001000000101110011011000100111010010111110110001010100010010101001010100011110110101111001111010000011000011010011111011111100110011011111000100100111001111001100111000100110000011011000000001000011101001100000011000101111011100001101111100011010000000101100111101101010100000000100001101101101101001011011000101100010000111011101001010111010100011110101100111000011101101110100111000000001010010000101011110010100000010000100011110101100100010101011100111011001010001110001000110001111111111101100001110000111101000110011101000000001100110000000101010111111111101110001111111100011001111111010010110011000011100011010111000101000000000101001111101010011010010110000110000010100001111100111010110010011001111110101101010000100010101100111011100001000001100000101101110011111011000100110111001000110110101101110101100110111001001111010000001010011101011101011000101011101100111100000011111100110101011001101111011111000001101011101110110111000111000000100100001110100000000010010001110100110111000001010010010011101111111000001100100001100001111110001110111101110101011010110010000101011000111101101010111000011101000000111111011011011100011111110100100110010001111101010011011111000001010010100110110110100011111011100010011000111010111110010011011010111110110101100101001010000001011110100100111110111011010101010110001111110110110100101101110110011111100111000011111110000101000110001100000011011010111011110011100010111100001011100011101010100000010000110100111111011011111010011100110101011010100001110101001011100011100110000010110110001011000101011001010010111000011000101011011000101110100011010110101000101111000000100000011110100101000000101001111000101110001101100101101110010111110100000000100100000111011101101000110100000011110011111111111011000100100100010101010101111001111001101100101000001000100110011000010110100110011100001111000010010101100000100001110--------------------- +0010001000111011000000001110000101111011110011111100110100010100001100111101100001011000010010010010001100101110100111100000100110111111001000010000010111100010011110111000111100110100100001000100111111111101101010001001101011000000011011100001011011001111110011011100001110101101001100010000100110111110110000110101001111000000111001011000111101001011101011100101111000110100001001111100100011100111010101101010100110010001101111101111111110001100011111101011010010100000110011011010110010111001000000101100111101000101100110010111110111110111000111001110100110101101010000110110111111110001110011100000010010001111111001010001111010111011101101101100110100000011100101001101011011100001011000110000000000011010001110001000101001010110001010101010010111111101001000000001001110111100110011011000000000010010111110000011100111100001101101011100100110001010111111111001111001010001010000110111101100101110010100101110100010100110111011010100101010001111100111000110110011001011101010001110101010111111101000101110010111111110011011101111111000111101110000011010111110110101000010100110010001001011011110100000111001010001110001101011000000101000001101100011100000111011110001111110100011000000111100000101110011011101000001111110011100101100010000010001100110110110010100000100101011010110001011010101101100111000011010101000010011010000110111001111100111000111010100111010011001001110001111100100000110100101000011000011010011001100101111110011000001101001100001100001010010100011100011010111111101100111111000001010100010010001011011010100101011100001101001110110001001001111111011000010111010111000000011101000101101110110010001101101001110110101101011110000101101010010010111001001100111011001110100100101110011100110001001101110011000010010101111100101010010011101110010111100011110011101000011110000111001011101101110000010000100111111110111111111011011101111101001101100010011000111000000111011000110001110001000101001001000100001000000011101101001011001001101011010011001001100011110010010101110101010001000101001010001001001101000010000000001101001011001101111111001001101100010111111011100100110110010100111010111101010010100100100110101100111010000010111100011010111010010010000100010101111001110110101100011000010101101010110010110100110010101100101111100000001010111101011001110001100101010110100000010111100011010000011111001100100000101110001100100100000010100000001111111100110000101111101101011111101001001011100011101010111000--------------------- +1011110001100101010100000110011111001011111001100110010010001011001011001110110100111111100111010000011010011100111011111111111111111100011101000011011101010010101010000010100001011001000001101101100111100110111100000011011101001100011000101110110010110011111100111110101000010000111100011101001001111010100001110011001011001100011010001001100110110110001100111110010011101011100111100001110111011001111010101100100101100010111110000001000001010001100011110011101111000000010100001000110100001000100100110011010010110110011111110110011010101010110010001011001100000011001101100111110101101010101011010100010101011000011000111111001001000001100110101001100010101111000100010001111111111111110110111000111101111111100100000000100000111111100101100010011101101101011100010101001010000000100111111110101011100101011011101000100110100001100011111001111000110001100101100000101100010100110010100100110111011011000101010111101000001110001001101101010111101001100100101100111001000110101101111110000101110111100111100001000100011110100011000010100010110011100100110110101000111000110001000000110111010111001111000001000001011111110010111110010000111000001010110101001001111000000101000001011100110001011111100011100111011001111110111010010111110011000010101100111100011110110110111101100101100100101100110011100011100011010010010001100000001000110000111111101000000010010010110110011011001101101000011111010100001011100010001001000100110000101101011001001010111111100001100110100111100111110100100111010110110010011000011000110000011000001000001000001010010000111001000010010000110010101101011011110101101101101101010000000010101110101110001101101100010111110001110011010011000110110100000000010111111101101011100010100100100000101011100011001100001111101000010100100101001111011010111110111100000000111001111101010111000011111110000000010110011011110000111011010111101111110110101101100101000010001000010111011000000100011110101111100101010001010000100011101001110111001010001000001110011011100010100011111100001000010100101111011111011001000110110011011110100011100011100000110010011001001110110011000011010110001010110100111101010011110000111001000011100010101111001101111000100001000010111101000001011111010001100111111000001110100001000001000000001001110001111001100101000101001011110100100010010111111010110111000110010101011011000100111111011000011001000001111010001100010111001110011100011100101001111000111111111110111101110011110011001110111--------------------- +1101111101101001000010111110100111010000010100001011110010001101001000111010010110001111111001101000100111000010110111110010010010100110101100011001011110010010001110100001011000110011101010000101001110111010111001011011010101001101111101100010010110100101001000011001001111001011101011011000101001001001011011100100100101101110001110011101100001111010100110010111000000001000100110000001000110111000000110010110011000101001010110101010000101010101001011100011000100111000010011100110101110001010101001110101100011000000001100101011000001111001100101111111010100100110010010100101011100100000000011110010111010001110110010100110101100011111011100011111111000010101111111011000100110011111011000100000001111110000011110110101000110010001010111001100100110110001010101100110001101111010000101101100010100010010110101111100100100001011010011010000000101110011011010010100111010011011110111001011010111011111111101101100010101000111000111010000010000100111100010111001111111110011010001101011101110001100100110010010010010101111010111000100100111001011110010101101011011011011110011010110100001101111100110101100010001110100001100100011000000011111001011010001001010110010010000100110100010011011001111010110111010010000110011101001000100011101001111001101001111100111110011100100001100001111000110101010011110111000011101001111100011100010101000010110101000011100011101101001011101111110110001110101110000100100011001111111110000100101000011100110010011011001000111101011111111111101001100000000100101001010010010111111110000101011101000001110001101010110010101101001010000101001011111100110100001101111110110011111000000000110101110011010011110011010010011111010011110000100000101011100111110111000000010011101010001110111000110010000111110110010000100100100100001011100001101100110100110010101101111110101000100010000001100111001110011010100110101110001010001001111000001111001011010110001111110010001010010001011001100111011110101011000011111100111010100000101110110001101101110011100001001101011000100111011100011100101110100011111001010111100110100011100000111011011100101111000011100100100000110011011011010011110001001010001100010010100101000101100011001001000010110110101000111111111000101010100110110111010111101010100001110110011001010001001111010110011010100110111110110001101001010010101110010000100011101000110001101010010001100111011001101111000101111101111011001000000001100111111000010011000101000100110100010001101001001111011110--------------------- +0101010000001010111111001101101111110010110011010001000000011111011101010000110000011001000101111000000001001110100010000101111110110101111100110010010100001010000101100011011100101111100111010100101100110011110101001000100100100101100001111000101101111110101000110100001001101111101111000001001100000011011101000110000000101100001011101101000011101010011100101000000111110011001010110101011100101011100001010000010111011100110110101110110100100100111101100001000100000010101000001110100110100101001101010100000010100000011111011011100101100101000110000000100100110011011000111000110101001001100101011110101000111101111000011000101100001001101111010101100101110011000111100010010101101111011011001000110110101011100011100011110111010010010110111111000000001011111110110111001101000011001111110110001100100011110100100111111111010010100111110101111010000100110101011001010011011011111011111110100001101101111110110110001001110011000110111111111110100001010011000001110101011110100101000010101111001010101000010100010000111111110110011101111010000000111011000011101011010110110001111010110110001000100000100001010101010001001110000001010000000011011110101011011010011001001000000000011111101111011100000011110000011010010001100010010010010011000001011101101011001001100010001101110100100101110101011101000100110010100000111000100111111100000101001011101100100110111110110111101000011001010001001000011000011111000001111010011000010110010010111010100000000110100000001011100110000100111111101011111110110010001001100100101100000111111110101010110010100011011010100111001101010101111000111100101110010000011100001100111010111110101011000101010101101101101011110111111011100101000010100111111110101011001110110010100100111010001000011001111011100001111111001000111110110111011101011101100001001110001101001101011010011100000111011111100100001000100111100111110001000011000011101001100010000001011001100101011101100010111110001001000101011101011110011110010100011110101011000101100101110100000000100010011111010011011001001100010110110001000110100010111100101001001101101110001110011101101000100110111000111100011010101100011000001010000001000010101011110111101111101110100110111011110011011001101100111101111100011011000111000101101000010011000001001111011101100010100011001000100000000001000010000000010000110110101111011010110110011001101111100111100100010001000111110001000001101010101010111111111110001100110101110000110001001111001101111010010--------------------- +1110000101100100010000100101000111101100101001110011001010111000010100111100101100111101010001100000010111000101110001010100010001101111111011101101110001100100010101101011101101100101001001101011011001110000110101100101110010110101110110110000101111000110001100110011101100111000110001111001000110101110011100111001100111010101100101110100011111000000001001000001111110000110100100111101010101000111110001001011000000011100100111000111000100010100000111000111110100000011110110110000000111101011111010010100010101000011101111000000000111010101000011100010000110111001000011010101100011100000110010101010100101100110000011010100010100011010000110110100111000001011010100101010110101000111101001111001010111011011110010011000100110000101111101000010100100001110001111001111111010011110101010011111011001000110111101101010110010110100010000111010110100011001000111011011101010000110011111001000001100010000110101011111001100100001011111101000000110110111101100100111011100010101010100011000001110111001001011000000000100000011001100110101011101111101001101111000100101011001011000100110101101011001000110101010101100000110010010100111111101011110010100011100001010001111111001001011010000110111011111101011100101011010011011010101110111011001101110110011000011011011010100110100001011000100111101101011101000101110011010100100111100010100011011111000000010110111001101111111100101101111000010001001111100110000100000100101011010110111000000011000011111011001010111010101010100011011110111101010101011100100111101000001101011000001010101110110011111011011001101110010111011111111111111101011000000101010011011011111001111011001100101111111100111011111101011111111001000001100011101110110001010100111000010101011011110101010111000011010000100010110110011010101110111001110101011011100011101000100110101110101111001110010110001111101001001111101000010001100110101011001001110101001011010010000100101110110011010010110000101011010010000010111110001010111111001001110101000101010011011001111100101100010111001100110010110100101100010000100100101101110010011000011010011111101011011010110110101011011100111010100101110100101001000101111101000101110011100011110110011000110000001011100001100111001001101100110011001001000001100110001100001010101100111000111000000111100000000000110111101000100001001100111001100000000011001011010110001010010101101101011111110001101101110110101100010010111100100101001101110111101101100101010010110100110001000101010111--------------------- +1010101011110010000011000011111111010111001000000000001100001110000000110011010110100010011011101011011110000010010100010001001101100001001100000011110101000000011110101010000001010100011010001100001110100100100101001010101000100010101000110010000101100111000110110011011010001000101001100001000011110011001110001100011110111110001101010000101010101000001001111111110111110010001010110111011111011111100001001110010111110110111001000100001110001000110101001011101100010010111100111100110011101001111011111101011010001011010110111001100000011111000110011111000001111010101111010101001010011101100011111010101001101100111010101010001001000110111110110001100100101111010001010110001111010011111101111000010111011010010101110101100001111110001001001111111101111001101111100010101000000101010111101111011011100001111100100011000101011010110011011100010101001000100110010011100110011011111111100000100111010010010101010010001100011000010000100111000001000100101101001011110100101011011100111111010000000111110011101010110111001111010000110001010011011000111001111110010010111001000110110100011011011011010110110100101000001000011100011000111001000011111000100100001000100100010001001110000010101011000010001000111001110001011011101011010000000001100011010111110000101110011010110100000111011111100111001011010110110011001111100010000000100110011110110010110100011111010000001001000011011011011010000001100010111100100000110010001010010100101011111100110110011111110000010010100010100111100101110000111000000100101111010111110000101110110010101100000011111100111011110011100010101110100000001100111000001010001010100100001110010011011110000111101001110100001101001110101010100111000011011101011011001110100101010011000101001100101001000111011100101110100101110111010110001010000101100111011101111001000101100010110101101111101101000100001110000111001111010011011000111000010100011111110100111011000110100101101000110111110101010111110010011110111011000100110100000011110100010001011110001011100100100111101100111011111110110100000111110001010000100111100010100100111110001010111101010111000111000101111000110001000000111011000010011110111111000101110111011010110011010111001010101001010011110011001011110000110110011010100010010010000000001011101010000001011001011010110111011000010111111101000111110101111100100011111110110011000001000110101100110001101110100000100010000001000001100000011011100100110010010100000010010111010110101011111000111000111--------------------- +0111010011110011111011011001011100101100011010000010100010001011101100001110011110110110100101111010111111100010010001000001100101111010110101110111111011011010000001000010001000101010100101110111100100000000100111000000111110010001111001011110110111011000010001111000100111010010100001000010010000100000000001110001001010010001110011111111000100001100001100011101001111111100100000000100010101110101111111110101110011110011101101110010000101110111100100011010011011101101100000110100110011100100100110001000101001111101000111001011000100110001001011110010011100001001111001111000010101001001011001011110001110111110110001110101110010000101111010111011110010101010000011101111010101010101001101011111101011100000010100010000000010101111001111011010110101100101111101010101011011000000101100111111000111010010011000010010101110101100111100001110111111010010001101010110000110101000000111100100010011001111001110001101111101110110011110101110101001110110110100001000010010110000000100111010100110100111101110110110110011110000001100011011011100000011010000001010000000101010101101000111001000001100111101000000010101001000111010001010001001100101101000111111111010101110101111010011101010101100100110110110000111100101111001010110101110100010100000011011011000001101000001001111101011111011001101110001001010100010000101111000010110011001100100100000001101100101001110001101111011100011011001100111101001001001101100001010101001110011101011100011000101111111010101100100000101001000110111010011010000101000111100001101011111000010100011101111011000001010010101100001111001101110111110110110101100101001101111010011101001101010101111111000010011101010001010000000100011000011011101100011110010010100001100001000010100100100011001110111011110100010000011100000011111100011011100101110011101101110010111111011001101110001110111101110101001100101111010000101100110100110101100110100111101001010011001111001101010010000010000011111000111110000111110101111111100001010110010111111100101010000010100110010101001100011100110010011011011001101100001111000100111100100001100101110110011000110011100100101010010000101011010110110000111000011100110010111110011100110110101011101101011111011001110011111101011100001000100000110001001111001011100000011000101111000010000010110010110000001111110000110100111000000000011101101000101011111110001000011100111010011110000010001101110010011111110011100110011010100101100001110110110000010101101011111011010001100010--------------------- +1111101010100100001101100010101110011001101000000010111011111101010001100010001000101000010011001110000111101111101110101110010000110000101001011101101100100000001100010100001101101010111101100000001111100110111111000100110011101100011001000101011010101010111011000110011110101000101011000011101001010001100110111000011000000101000101110111100000001010010001110111110001100010101110001110101110010101010001011000111101100000001100010001011000111111100110101011010111000001001101010111101110110111010101100010010101011011011011000000100100110101001010110000111111101111110000001100011010001001001000110000111100101010000001001111101101001011110101100001011011110011010000111100101011001001001011001011001000100011111110111101000010111111011000100000011001100000000011010101000101001100001010101010001010010110100010111010101011001100010010110111111100101010011101000101101001000001011000111010100001011000001010011011111010111100001000001011101101101100100011110110110000010011001011001101010110010000101001110010010011101110001100010011100010001110100101010111111010100011110011100101001111111010100111001110100011000111001111010111001000001001011001000100001001000100111101100010000001000100000001000100100001100000010001011101110010010101111011110001000111110110110001011101010000011111101100010110110110010010101011001111001111001011110101111110011100011111111110110101011111000101000011111110010011011111000000001011110111111111001011101110101010001001100110101011111100010111000011011101111010101111011100011101101010011110010101100011110111000010101001001100001010000111000000001111010011111100110011011011010100010101011101101010100111011101110111011011110110000011111111001101101100010001010110101001010111011010100111101010000011110110110011110000110011000000011100011100110100101111111110110101100100100000011011000011101101000001010000110000110000000100101100011000100101011010010101101100100101110101100110000000001000000001010011111001000101100010101011111010000001000000000101001101101010101110100111000000100010001110100000101011111110000111101000010000001101001100110110100111100101110101111011111001010110010001001100100100011111011001011111110100001111001110110101010011101111111100001111010000001110001011010110001110110000011010110010100011000010101001101111001000111110111011111011011001000101110100110100111110000110101110011111100110100011011110010000101000110100011100110111100110110100010001101110111110101000100101110--------------------- +0111000101111101101000111011011010001001000110100011110011011111000000010110101011011101111100111001101110010010011011110011101001101001011010010100001110100100101001101001110101000011100111101001100101000110011100110010111011011000101100011011110100000011101100000000001111100010110111111010110000110111101110011000011111100011110110101110001110110110100111010111100110101000100100011010011101010001001010111101010010010100000111011011101111111100010110011011100100000000111100011111110110010111011000100110110001010101100000010101101111101110000011011101111101111101010110101101111101100011110100001011100011100101101000001011110000000000101100101000001100110111011000001011011110011101101100111010101111101000110101110101000100111110111100010111010100000001000000111010011000100111000111100101011011010010001111011010101001101110111100100100101100011110011000000100001100000010110010111110111101101101110100111110000111001001111100100000010110011100011110100101001110100100111111000101110011010010111001101100101101001110010100111011010000101110000000100110101001110101111011111000101111000111111001000101010100100000010001110101111001000101000101101001000011110001011101011011000110110011001111011111101000010101010011011110100100111000110001110100000010010111000110010100100110100010111000101101011110101111000111010011010100011111101110011011010000000111100010101100001011110000011101110100000100101100010000001001010110110101100111010010001010101110110001100001100100111010010000100100110100100110101010101110101011001110100111101101001000000110101111110000010010010110111010101010001000101100001111110001010011001000100001010101100101010100010110000100001111100100001011000011001100011110000101110001111100101110001101111010011110001001000100110101101010111100010001001011101000101011011011110010101011111011011100010010011011101010100010110100100000101000011111111001011110000011010000011110011110001011010100011111101110101011100010001110110011110101001001110111111101111111010101101110000011010011010101010001101111011101010111110011110000110101110010100010001111000101101000000011110101100011001101011110000001000001000100000011000001001110010111111101011001001010110001101101011000010001100111010100010000100101011000011001100011011011100011010011111110101010111100011100010100110101110011010101100110110010000110101110111100010110100110100110011000001000101111001010101001110010100010100100111011111011101110100101001111001011000--------------------- +ls112cwds +00011110111010111101101101100010011011111111011011011111001110010100011101100011010000000001000100010101100111101111000111010011101010010111111101011111101111011110000001001101100001000001000110011011001101011010110111011010000111000111100110110101111101000001001100001111100011100001110010110000011100010100001000100101001100001000110010011101010001000000101110011011000100111010010111110110001010100010010101001010100011110110101111001111010000011000011010011111011111100110011011111000100100111001111001100111000100110000011011000000001000011101001100000011000101111011100001101111100011010000000101100111101101010100000000100001101101101101001011011000101100010000111011101001010111010100011110101100111000011101101110100111000000001010010000101011110010100000010000100011110101100100010101011100111011001010001110001000110001111111111101100001110000111101000110011101000000001100110000000101010111111111101110001111111100011001111111010010110011000011100011010111000101000000000101001111101010011010010110000110000010100001111100111010110010011001111110101101010000100010101100111011100001000001100000101101110011111011000100110111001000110110101101110101100110111001001111010000001010011101011101011000101011101100111100000011111100110101011001101111011111000001101011101110110111000111000000100100001110100000000010010001110100110111000001010010010011101111111000001100100001100001111110001110111101110101011010110010000101011000111101101010111000011101000000111111011011011100011111110100100110010001111101010011011111000001010010100110110110100011111011100010011000111010111110010011011010111110110101100101001010000001011110100100111110111011010101010110001111110110110100101101110110011111100111000011111110000101000110001100000011011010111011110011100010111100001011100011101010100000010000110100111111011011111010011100110101011010100001110101001011100011100110000010110110001011000101011001010010111000011000101011011000101110100011010110101000101111000000100000011110100101000000101001111000101110001101100101101110010111110100000000100100000111011101101000110100000011110011111111111011000100100100010101010101111001111001101100101000001000100110011000010110100110011100001111000010010101100000100001110---------------------1111000111000111101100101001101111010110111100011100110100000001100111000011101101011001101010100000010100010010011101111000010010100110111101001100010111011001100001000011100111110000110110010011111000111111111010010100111001101011000111100100110111001001001100000101110101101101010100101011100111101111111001100100100110011101000100101100100000110110000010001110001011010100001101101011101001010100011001010101101110110111111001010000111111001110111000100110101110110100110010101010010001011011000110100101000010010000010010100000001100001110011000111100110001110011011111101011000111010100101100100110010101101111101000000011001001010000111110111010100001101011001000111100011110111100110000100100111001000001001001000100111011101000001001110111010110101110110001000010010111001011000000111001000100111100101100101010001100100001000110101011010110111011111011001001011111001001011000101011010111101111011100101100001010001111000010010111010001010010110111100101101010100000101000001010011011100010111011110000101111010000110111111100010101010111011011111101110011110111110110101101101001110111111001100110111110111111000111100001100110100010011111111111011010111110001101101011111010111111011001110101111101010000110101110111000000110110010010111111000101000011100100000011110011001110101101111010101001010111010101001101011010110110111000111011000100100001100010010001100000011000110010010111111111101011001001010010101001010100011010111001101010100100110011011111000011010001010111011001111101001001011110000000110100010110010101011011100010001001011010010101011111010001101111001100011011110010011000001010011000000111111001101010110101011100001101110110001101100100000011000111001100010011000110111110011111101001110010101111001100101000100100110001101100111000010111110100010110111010110001110001111111101100001111000010010101000110000100011110010101010100100001100010010111100011101111100010100001101001101000100101101011110011100010110010111110000001010100001100000010001001100011010000001100011110000111011110010100100011011110110110111010100000001010001001010100000011100110111000100100101010010110100010100100100000111111000110101111001101111010001110110000010101100100001110101010001000110011001011101001101010011101001001001010111110110001111110010100000111100100100001000011001011011111001000101000010111001011010000111000000010000010010101011110100100000010100000010101110100101000000110001110111100111100101000100100001011011101010100000000110110010001011100101100110000111111000011001111111100110000011001110010110001100010000101111001000010010101111001100000011100101000100111111101101001001001011111010011001010110000011111001100100011111100001110100110010001101000000100000111010100011011101101110111000100110011000001111010101010111101010101100101000001000010101100010101110010001010010111001111111110100100110111110001000101101011101101101101100100100000000111111001100001101111011100000010000001101000011011011010110001001110100001000101011000111000111011110000101110010111001100110000011111001101101101100101111001011011010010111111001101001111010011101100001011001101010010001011000000100110000111101001110011000100111101110111001010011110101011001100101001110101001101110111111100101001001111000010101110000000000001111001111010111110010111011100110010010101001101001000001101001111100100000001100101100101110110011011011111011101110011001110001111100001101111101010010011011011000000110111100001001010100111000000001010111100000101010100001110100111100000101010011010001100001000001001110000000100101111100111101110011101100101000110011011011111111010111001100100101110111011100100000011110010010001111111111001000100111001011111100101111001000010101111100001010100010100011001001110111100101101111011110011011000011011101001000110100100010011011001111000011100010010100000010100101000011010011100101101101100000001101011110100101010010000111110110001000101011101110001010000011100000101101011101001000001001100100100000010000000010010101100110111100011011101001100011111000000010001011100101011100111011110101111011000101100110000100101111000011111001010100010010010011101110110110010010101110010111010101001111011001011110110011110100011010101001010010110110100010100000100100010011010011000110110011100001100001000110011000100111100110010001101100011110111100111111011100011101100011100011000101011111111000100111110100001000001111111100101010110000100110111101100100011011101001110110000010001110000100100101010100111010001010000100010011100000110011111010110000101100110110101101100001111111011100111001110000000100110110110010110000111001110111011010010110000011111111111100100000011101010100010111111001100111000100110011100110111100001010111111111100110111110111001111010000001110011101111000101100011100100100011000100111010000000110001010111001000010001000100100000010111010110000010100010110011011101100011111111111010000010101110010100011001100100011001011111111011010011000100011010100100000110011000101000010001011111010001001100001101100001101110001100001001011100011110011110100111100001001000010011000001111010111010110101100101011100001100100010110000101000010100001110110110110000000001111101111101111011 +11000000011011100001011011001111110011011100001110101101001100010000100110111110110000110101001111000000111001011000111101001011101011100101111000110100001001111100100011100111010101101010100110010001101111101111111110001100011111101011010010100000110011011010110010111001000000101100111101000101100110010111110111110111000111001110100110101101010000110110111111110001110011100000010010001111111001010001111010111011101101101100110100000011100101001101011011100001011000110000000000011010001110001000101001010110001010101010010111111101001000000001001110111100110011011000000000010010111110000011100111100001101101011100100110001010111111111001111001010001010000110111101100101110010100101110100010100110111011010100101010001111100111000110110011001011101010001110101010111111101000101110010111111110011011101111111000111101110000011010111110110101000010100110010001001011011110100000111001010001110001101011000000101000001101100011100000111011110001111110100011000000111100000101110011011101000001111110011100101100010000010001100110110110010100000100101011010110001011010101101100111000011010101000010011010000110111001111100111000111010100111010011001001110001111100100000110100101000011000011010011001100101111110011000001101001100001100001010010100011100011010111111101100111111000001010100010010001011011010100101011100001101001110110001001001111111011000010111010111000000011101000101101110110010001101101001110110101101011110000101101010010010111001001100111011001110100100101110011100110001001101110011000010010101111100101010010011101110010111100011110011101000011110000111001011101101110000010000100111111110111111111011011101111101001101100010011000111000000111011000110001110001000101001001000100001000000011101101001011001001101011010011001001100011110010010101110101010001000101001010001001001101000010000000001101001011001101111111001001101100010111111011100100110110010100111010111101010010100100100110101100111010000010111100011010111010010010000100010101111001110110101100011000010101101010110010110100110010101100101111100000001010111101011001110001100101010110100000010111100011010000011111001100100000101110001100100100000010100000001111111100110000101111101101011111101001001011100011101010111000---------------------0111111101110000110111100010001011110100000010101011000010110101111000010110001111101100011110010011100011010110011110011110101011011011111100110111111001010111101110001001101011011000000001111100000101010011001110001011100000100110001101110111000101011110110001001100010000101011110111110111110110010110011101010100110100010110110011111010011100110000011111100110110100101100100000111001001000100001010010101000000000010110110011101001001000000010011101100011001111100101011101101010110101100010100001000101101011111101001111000111001101001101010101010100110010110111010010000000111011101101000000101001010110000100110000101011011101110011110100000000001111010101101000101101110001001001110101000011010100000011110101001010010010001110111010100110101110110101110001111111000100101001000101001100110100010010010000011000100011001111001101010110001111001000011000011100100001110100100011110010111111011010101101011111011111001001100111101001001000001101101111000111101010101100001010001000101000110000101001011101100101000010000110000010001100000001011110010000101100100111100101011111001111001101010001100010110010010001010100101111110100001101010111011001111001100100000011110100110101010110101100011010001110010011011100000101000011110101101011001010001111101101110101011111110000111000001110011100001101001110100011100001001100001101110010011011101010111110111011100101100101000001100111101101111011100110110010011111001111001000010000010001001001101100011101110100001011011100000111101001110110000011110111001011101011001101000111001011001101011111010000110011101101101111110101111010110011110111100011011111010010111110111010101110111000010110111000010000001111000000001100111110010000001111010110001110110001111010010001001101110110000001001110010101111010000011001011111000001100101001110001101110001000011110000010111111100100010000011000100101101001000010110010101001011000111010100100111101100110000001111010000101111110010010111100001011000010100011010100011010010101010111100011001011101110010001000001011011100011010010100011101101001111010011010000010010101101101100111010101100011001001011001001000001000101001011100011100000111000110111100000000110010000110010110001100101111110111111011100011111001110011010111101010000100011011000010101101001101110001110111111100111101110001111110010110101100101000000110101010100100010001100101100100001001001001010101111101101010010111100010100110111100000110110101100001011111001101010001111110101010001101010011101100100000110100111100111001101100011100010101100111001111101100010000101100110010110110100010100001001010010101101111010110100010101100100001111111111011110001110100000101001001110100001000110001001011011100011110000111111111001000110011111100110101001101101110001011000101001100011111010110000000011100111011001111110001001010011111000100111000001001111001001110101101011101111110111100101101111101001101101101100000010110011000100111110111101011111000101101000001100001101101101001110100000101010101111001101010101000000101101010101100011110111101101011011000011101111011001010111100111010101100111010011000111010010110000111101000100010101000010101100000001111010001100110001111101110000011010101110011100110100010010100111101111011000000001101100101100011100000111011011011001111000010110110011000110110100100000111100010100000111101000101110010000111001001100001100100100100100111101010110100111100111001110101100101101111111101010010110010010010110110011101100010010111010011100000100101111110010010011010111101111000110011100000000101101100010011111011001001011101110000110111101110100010110100010000101111110010010111001010000110011101011011101110101101101110000111100010000110110001100111111001100101001011011001010001011000111010010011101100011110010111110011011000100000011100001000010100100111100100001001101111101100111011000000011001000001001011000011000001000110100011101110101001011100110100010101101010101100001001101000000000010000100001100111100100010011111111110101110111011010101110000001111101100001011100011100010101010101010010111100010110110110111110111100010000000100001010100100010111110110001111110110001101001011010111100100100111111010000100010000001010000111100110100110000110110011111010110011111010010110010111100000110010001001110111101010010010000110111001101110010010110111101111110101100010101100010101101000010010111101100111110000101100111111010010110010110101000101101100011010001110101010101101001101011100010010001010110101001011001011001100101011011111110010101100011011001010001001111000001111100101111111001001101010001111111011000011011111101000010010100100110110011000010001100100000101001101110101111001110001011010101111110111010110101100100111101000000011110100110111101110010001001001010110101011000000011011100001110000011101101001000010101100010101101100100011000010001111111111001100000110010011000000111011000100100110010100010110010001100011100010000010101010011110111101010011100011101100110110000011110101101101011001100111001011010100101011111111101100110100011011110010101010100010100111100011011001110000001011000000110001110100001010110000111110011100101001010111001110001110010100000001101011010100010101111001110011111 +01001100011000101110110010110011111100111110101000010000111100011101001001111010100001110011001011001100011010001001100110110110001100111110010011101011100111100001110111011001111010101100100101100010111110000001000001010001100011110011101111000000010100001000110100001000100100110011010010110110011111110110011010101010110010001011001100000011001101100111110101101010101011010100010101011000011000111111001001000001100110101001100010101111000100010001111111111111110110111000111101111111100100000000100000111111100101100010011101101101011100010101001010000000100111111110101011100101011011101000100110100001100011111001111000110001100101100000101100010100110010100100110111011011000101010111101000001110001001101101010111101001100100101100111001000110101101111110000101110111100111100001000100011110100011000010100010110011100100110110101000111000110001000000110111010111001111000001000001011111110010111110010000111000001010110101001001111000000101000001011100110001011111100011100111011001111110111010010111110011000010101100111100011110110110111101100101100100101100110011100011100011010010010001100000001000110000111111101000000010010010110110011011001101101000011111010100001011100010001001000100110000101101011001001010111111100001100110100111100111110100100111010110110010011000011000110000011000001000001000001010010000111001000010010000110010101101011011110101101101101101010000000010101110101110001101101100010111110001110011010011000110110100000000010111111101101011100010100100100000101011100011001100001111101000010100100101001111011010111110111100000000111001111101010111000011111110000000010110011011110000111011010111101111110110101101100101000010001000010111011000000100011110101111100101010001010000100011101001110111001010001000001110011011100010100011111100001000010100101111011111011001000110110011011110100011100011100000110010011001001110110011000011010110001010110100111101010011110000111001000011100010101111001101111000100001000010111101000001011111010001100111111000001110100001000001000000001001110001111001100101000101001011110100100010010111111010110111000110010101011011000100111111011000011001000001111010001100010111001110011100011100101001111000111111111110111101110011110011001110111---------------------0100010000100000111100110011101110010111101000010011110011011001011000000010000010101000000111101101011101100001001000001011110100011100010011100110010000010011101001010111011011110111010001110101110010001110110111110001010110111101011101110011011010011010010000101101100000100110101000101111100010110000000001001111000101111100001000110100000100000101101110001010110100100110111010001010000001111010110110111001011011110110001101100010000101101011110100110100001001100100001000110011111010111010110100111001010110001110001001100000010011101111010001100010110101000011100110001110111000010011011110101100110101110000110001010001010010011001000000111010000111110001100010110000110001010010010000000011010011111011001011000010010111101110100111110111010111100000001001000101101010101010010001001101001101101111110101111101000111101100111111010111111100011010000000011110101110111000000010000001011100110011001110111010000000100000010010000111011010100100011101011100001110001100000110011001010100010110101101110010101110101010101010011001101001000011110001000110010110011001011101001111001000001111000011011111101001011001110010001101011010011111100011000100110111110100011110111100100000111110100111110110101001011001011000011011101011110011011100101000110011110110111010111100101101010100101011011000010000110000111100110111000110000100011100101000011000010000010110011111100001101111101001010001110111010111011000101101011001110010010111100001101000011001001011111110101111101000011001100000111100110100110011011000111100000000100100010100111111110111011110111001011100000001110010111011111010010000111001010101000110010000001001111101001111000111011001001000101001110000000110001111000000111110001101001011000100011100100100001110000110100101110001100111111100010001101110001100001001101010000111011011101011101011001001111100100011100100010110011001000001100101100000011000000100101111111100100000101001101100101010001111111111101101011010111101010010110010110001011100011100110010011011001111010000110110100111000101010100100011100100011111010011111011111001111011110110110011101011011100000010101011110110100000101110100111101000000000010101000011010100000011100011000000110001010100010110101000110100101001001011110111001011110100010001100101100011100011000011000111010100011100010011110101000110011100101110010101111000010011011000100101011111010000001100011001001100010000010010000001111101000010110111101100011000011010100011101011000110110101111110000000011110111000111110011010110110101010101000101010100010010000110001000000000111110110111101100100010110100100001100000011110011101101010100111011000010010101000000101010100011110010010101001111001000001010010111100101001010110010000111010001101010101101010001101110000011101000100000110111001101101001111111001111101010111111110000001111001111010101111111101010101110101100001100000001101101010101100111101101001001110001111000100000101011010111111001101011101101011100111001011010111011101011100001111111011010110010000100101010000010100110000010010000100101111010110001010100010000110000000001010011010101110110110000111001110111001111101111010011010011000101100011110011011001010000100110101001000110010100011001011011110101100000100100000001001000010011000101101001111111011000110101010011000010010110001011000110100101110001111001000101010000011100001000110011010100011011011111101010111101001110011000010010000100000111110110111101100101001111101010000000111110110000001011110100011000010111100110100111010010110101001101111001000010100110000010001010001100001011001111010001101011101101111101011101011111111110000001101001001110001010010000101100010001111001111110001010110100101010100000001100001011000010000010000010100110101001100101000011011010111111110010111100111100010101000001101011110110101100101100100000111111001000100000000000001111000101000101110101110001011101000100001000001110100001001001100011101011000000000001001111101011111101100010110101010101000110110011110110111000011010110010111100110100001100011011010100101100011101010010011010001011011100100101110101001011001011101011001001001100100001010010111001101000000001000100111101111100101100110011111010100111101101101010001111110111100011011101101101110110110000100111111000010010100000100010110010100001110111100000101111100111000110101011011010100001010101011100011101111110110011011000110010001011010100011000000011001101011100001011100111101010001010000001110111000110011111100000110110101100100010000110011110010111110100000010100110110100100000100110100001010110100001101101001000100011111110001100101111011101000111001111101001011010101011110011010010000010100011011101010101001100101111101100010100100010000001101111000010011011111010111001110010010100111010011011101100100000101110111000011110110001101101101111100010011001111001101101010010011011110101111101101011110011110001000111001001101000011101100001000100011101011000000111110010010110101110111001011111111110001001111000110101010101011101011100111110011010010101010000011000000101011011011000101001011011001010100011000000011010101001001100100001111110101000110111110001110100000100011111101011000001011001100100001001011100011010111101100011 +01001101111101100010010110100101001000011001001111001011101011011000101001001001011011100100100101101110001110011101100001111010100110010111000000001000100110000001000110111000000110010110011000101001010110101010000101010101001011100011000100111000010011100110101110001010101001110101100011000000001100101011000001111001100101111111010100100110010010100101011100100000000011110010111010001110110010100110101100011111011100011111111000010101111111011000100110011111011000100000001111110000011110110101000110010001010111001100100110110001010101100110001101111010000101101100010100010010110101111100100100001011010011010000000101110011011010010100111010011011110111001011010111011111111101101100010101000111000111010000010000100111100010111001111111110011010001101011101110001100100110010010010010101111010111000100100111001011110010101101011011011011110011010110100001101111100110101100010001110100001100100011000000011111001011010001001010110010010000100110100010011011001111010110111010010000110011101001000100011101001111001101001111100111110011100100001100001111000110101010011110111000011101001111100011100010101000010110101000011100011101101001011101111110110001110101110000100100011001111111110000100101000011100110010011011001000111101011111111111101001100000000100101001010010010111111110000101011101000001110001101010110010101101001010000101001011111100110100001101111110110011111000000000110101110011010011110011010010011111010011110000100000101011100111110111000000010011101010001110111000110010000111110110010000100100100100001011100001101100110100110010101101111110101000100010000001100111001110011010100110101110001010001001111000001111001011010110001111110010001010010001011001100111011110101011000011111100111010100000101110110001101101110011100001001101011000100111011100011100101110100011111001010111100110100011100000111011011100101111000011100100100000110011011011010011110001001010001100010010100101000101100011001001000010110110101000111111111000101010100110110111010111101010100001110110011001010001001111010110011010100110111110110001101001010010101110010000100011101000110001101010010001100111011001101111000101111101111011001000000001100111111000010011000101000100110100010001101001001111011110---------------------0011001110100001011111111111011100001010110010111110111001110000010100111000011100101110110110110101000100110111010100010001100000000111011010001100101010111011000110000010101111001101000100011001101100010100101111101110100011010001011001010111101101110110111001011100110010110110010000001111000001011000000000110011001101101101110011011110001110111010010001001100110101100001111010101010111100111110001111110101111011111101001111110110110010101001101001100001010001010000011000011101001011001111010100111011001100000101011000010100110011010111100101011000111011001100110111001111100110010101001111100001011101011001111011100000011011100110011101111100101110101110000101101001000010110010010111001010010001110011111110011101011100110101110000001110000010001101110000011000100111101101111011000011000011011000100100100010100011000111010110001101010111100010010010110101001110101010111010100111100101100000000001110101110101001111011101111010000010001000000110100101001111010000101100011110001110011010001100011101000100101000101011010010010111100000010000010100011101011101100011101100011000000111001001100011000010000111100011011001001010110110111011011111000001111110011000000011011011110010100000100111000010111111010011110010100101011000111100011001110111101100011011100101001010111101100010110011100111010110001111000111000111000110010011000011100111000110010101010100010101110110010111011000000000101111110010100000101100001100011000111101101100101001110001110100110000010111101000000010101010010010001000111110100010101111110100010100100000111111011010110001101110010100011001010000111101111110101010100001001100010001010000101011011010001010011101010011100000110101101010001101010000011101011100010110101001001111110111111100101110101100101110001111101000010111010111000011110010100010101010110101001100001000110110001111100010011111000001100000010101101101001011001100000101011001101000100010111110100101101111010111100001000000001011001011101000010111000111001000011110110001111011010100110000110100110010110011000100010000110111110000010000000001000110100101101011001110111110011001011110000100100000011011110101001001011001000101010100101100010110011001000000100101101101000101010110110011010001011100111010111110100011111010010100110101100000010000001011110110010000011010011101110100111111111011000101010100100100001110010110000110001000011111010001000001001011010100101001001000110010100111100111001101111000010001110101110001101001000111110100100001111010010001011110110110001010110111000110000110010100001000110101101111001100101111000110111101000011111110100111100101101000000111011010101110011100111010000011101000011000000011101000010101111100001111101000010100000101110100010100010001010000011111000011001001100011011100101101101001110100111111100010000100010100010011101010100000101000111000001111101010000100101001000100101010010101111101101110010110110001111011100011101100000000001000100111100111000010101111111010001001001000111000010001111001100111000001011100101111001110100000110100011111101001100111110001000110011001001011100001101110000011101101011001000101010001110010100010100101110110101011011000011000000111101010001101000111111000001101111011011011100011100001000000001100101101110100011110001010000110110000010011001101001011000110000010000110110011011000001101010010000010100101000000111001100100100000000001110101011110100100110001111101011101010010110000010110010001100111000111000100011100101010000101110010000011010000010010110101011000000001010111110011010100111110001010111101000011101110010001111100000000111001011101011000101100000100011100011001101110010001100101010100100100000100000110100010000011100100101011001010101110000100101111110111011111101111001110000010110100100011000000100110001110100101010110011111111011110011010010100011011110011001011110111110001000110110010011111101001010011101011110101010011011000010001001100000100000110110001001111111001001100110010100011100101011100001010001100110001110110100100100001100111010011111101000010111011111101100001010101010110111000011111101111111100011001001101001001101100101111000111000001111011011111110100000101000101110101010010010001100000111101110110110010011101010111110010010000010111000101000111100110111100011011000101010001001010110100100101000101000010010011110001001110110000001111000000110111111100100111010110110010101000001100110110000000011110110110011000001101010000110100001001100010011010011011111011010111011111110101100110000110100100100110010000000000010101000100101001110000111111110011001101110011001111101001010111001100001011010001000000110110001001000010111100011110010110010000101001001100101101010111010101111110010110001010111101100101111000100111100100110011100101100101011000111010111010111011010010110111100110110011101111110110101011000101101111111010100000010111000111010011110000110001011000100111011001011110100100011011101111011010011010000111111111101111101010000001000010001001011010111011011011111100101001001101010010011010110111011011100001010001001000110101101101000011111010001101010011110100011010011000001111101010100100001010000000110111010101111001101001110110010011100011000101110101110000011000101 +00100101100001111000101101111110101000110100001001101111101111000001001100000011011101000110000000101100001011101101000011101010011100101000000111110011001010110101011100101011100001010000010111011100110110101110110100100100111101100001000100000010101000001110100110100101001101010100000010100000011111011011100101100101000110000000100100110011011000111000110101001001100101011110101000111101111000011000101100001001101111010101100101110011000111100010010101101111011011001000110110101011100011100011110111010010010110111111000000001011111110110111001101000011001111110110001100100011110100100111111111010010100111110101111010000100110101011001010011011011111011111110100001101101111110110110001001110011000110111111111110100001010011000001110101011110100101000010101111001010101000010100010000111111110110011101111010000000111011000011101011010110110001111010110110001000100000100001010101010001001110000001010000000011011110101011011010011001001000000000011111101111011100000011110000011010010001100010010010010011000001011101101011001001100010001101110100100101110101011101000100110010100000111000100111111100000101001011101100100110111110110111101000011001010001001000011000011111000001111010011000010110010010111010100000000110100000001011100110000100111111101011111110110010001001100100101100000111111110101010110010100011011010100111001101010101111000111100101110010000011100001100111010111110101011000101010101101101101011110111111011100101000010100111111110101011001110110010100100111010001000011001111011100001111111001000111110110111011101011101100001001110001101001101011010011100000111011111100100001000100111100111110001000011000011101001100010000001011001100101011101100010111110001001000101011101011110011110010100011110101011000101100101110100000000100010011111010011011001001100010110110001000110100010111100101001001101101110001110011101101000100110111000111100011010101100011000001010000001000010101011110111101111101110100110111011110011011001101100111101111100011011000111000101101000010011000001001111011101100010100011001000100000000001000010000000010000110110101111011010110110011001101111100111100100010001000111110001000001101010101010111111111110001100110101110000110001001111001101111010010---------------------0001000111001100000001100110001011101010110110001011001010011110000111101000100111101000111011101111010110011111010010010100110100001100111110010001100111000010010000010010101011010001000010011110010000010110001110011001011100000111011010110100101101010101011110011100100100011010010100010011101101101001010010111100001001001101101001110011000011010001000001110100011100110110111000001101110011000101110001101110110100011001010010010011001110000000000000110000001111111100111100000111011001011001111001011110111001011110110111111010000010011001000100100110000111110000000100101011100000101101001111011011100111101000001000001011111011001100110000100100001000100111101100000111010001111100101000010101110100101110011111100101111000010100110000000000100011111110011000001010010111010001100010100011001001111001101111100001100100001111111110101110101110001000000101000001110100100011011100101011111100001011001011010101110100100100001011110110011100100011101100111101001100000010101001111111110100110000110000001110101001000001001010110111010011101001001001001010001111010000010001010000000101011111001011110010100011001000001110000100010001111001111001010110111001011000111001111011001111111011011110100100000111000111101010100111100111000101111000110110110111110000111111101000010110001111101100111010111111011110110000010011001111011101100110101111100110010001100101100010011101000100110011110101101001110100000101000101010101001010010000110011111110101101100101111010010110111100100110111101100110010100110111000111101000011101001100000101011010101011000111000100011010000001110111111111010001100011010110011100101010000100111100010110011100111000010001010010110011010110111100110111000000000001100100111010110101111101110110110000000011100010101011111011010110001101100000111101010100000101010110110001111101100111000110001100100100101101110011001111000011001111110111111011100100101011110000101100001000111000110000011100001001110001110010110001000100011010011101100001000010100000110101001001110011110101100111011100011000010101111011101101000000000001001010001001001101000001011011100110011101011000111011000011111111101000111101111111111111000100010001111000000101010010111000001101100011001011110111011111100011111110011100100101110000010110010110000101110101011101110110000111110100101010010010000111110101010100001010001111011001010011100100110101001101111000011110010110100001110100010100110001100100101001111101010011101000001001100001011010001010100110001000110101010110010111110010010101000101100101100111111111000010001111011010101100011110100111101101111110111111110001001100100011010000111100101000100010011001010100100011101011010110011001000001100001100100110100110111100010110111010011111101010101100100111100100111111111111101010010101111111001110011111010101100001011110111000110001100110111111101110100010001111100000011011111000101010100000110100010110110000011011111110000110111101111101001111100101010001101111110000110000101101100011000101001000100111111111101100110001010000111011001111010001110100110011010101111111010101110111100001100001001010111111100001011101000001100001110001101110011110100111011110001101001101001001010001110011110001010110101110010111011000011011000110111011000110111100001001101001110011111111001000001101111001101011100011001001001111111110001100010000101101000110101001001110010110010110111000100111001100011010101001010001100110011000100001111000001111010111010001101001000100010001001000101001111001001100110001001100100110010011101001011000011111111010000001000111111101000101010110001101100110011001100010000101000010101001110100110001111010000011000101010000101111011000010110101111101011110001010110100100111110100101010110001101101001110000011010010101000100011010110011010011100100001111001011101010100110111000110001111100000101110011100010101100000111011000110110010110011010010100100110001000011001010011111101001010000000001011000111101000101110110001010100111011011111011000001000010011000101010011100101001001101001111000101101101011111000011111010000011001111100101000100111010100001010111100000111110110001011110000100101111111100001111111111010010111100111011010011110101000101110001101111110011100010111011111000110111011010111000001111101111011000110100001100010011010101001101110000100100001001100100011001101111110011011000111111010101101100111011110100010111111110111111110011010001101100000110111011010010101110001010010010110100001001101101010100010101011000111101011011010111000111111001001101000000100011110010110100101001111011110100000110101010101000001110011011010101110011001010001101010010111000011010001111001001010100010001111110100100010011110101100001001010001011110010100100111000001110011011000000011010011100000010101000011011001011111011011010000010111110111001010111100101101000111110100000100111110010011010001000101000110000000001110111100000010100101010011110010110111101100110101111011110110001111101001000010101011001101110110011011000100111111010101001101110111011101101101001110100001100001010010000010111101001110011101011111101110101100001010101000001000011001000001101101000000111011111110010000001010110111111011001111011111100100011000100001010 +10110101110110110000101111000110001100110011101100111000110001111001000110101110011100111001100111010101100101110100011111000000001001000001111110000110100100111101010101000111110001001011000000011100100111000111000100010100000111000111110100000011110110110000000111101011111010010100010101000011101111000000000111010101000011100010000110111001000011010101100011100000110010101010100101100110000011010100010100011010000110110100111000001011010100101010110101000111101001111001010111011011110010011000100110000101111101000010100100001110001111001111111010011110101010011111011001000110111101101010110010110100010000111010110100011001000111011011101010000110011111001000001100010000110101011111001100100001011111101000000110110111101100100111011100010101010100011000001110111001001011000000000100000011001100110101011101111101001101111000100101011001011000100110101101011001000110101010101100000110010010100111111101011110010100011100001010001111111001001011010000110111011111101011100101011010011011010101110111011001101110110011000011011011010100110100001011000100111101101011101000101110011010100100111100010100011011111000000010110111001101111111100101101111000010001001111100110000100000100101011010110111000000011000011111011001010111010101010100011011110111101010101011100100111101000001101011000001010101110110011111011011001101110010111011111111111111101011000000101010011011011111001111011001100101111111100111011111101011111111001000001100011101110110001010100111000010101011011110101010111000011010000100010110110011010101110111001110101011011100011101000100110101110101111001110010110001111101001001111101000010001100110101011001001110101001011010010000100101110110011010010110000101011010010000010111110001010111111001001110101000101010011011001111100101100010111001100110010110100101100010000100100101101110010011000011010011111101011011010110110101011011100111010100101110100101001000101111101000101110011100011110110011000110000001011100001100111001001101100110011001001000001100110001100001010101100111000111000000111100000000000110111101000100001001100111001100000000011001011010110001010010101101101011111110001101101110110101100010010111100100101001101110111101101100101010010110100110001000101010111---------------------1010101011111011001111010011000111000100010110101110011100111010110011100101100001010100011110011010011110110011000101001100000100101100011111011010000010111010000101101111011100001101110111001100000011110111101011001000101001110010111111101110100000010010000010000010101011100011001001010001010000111001100101110101011101111110000100101101000001000110011101110111101110010101010010111110011101111110000000110111001100101111111110110100110000010101111100001111000010010111100001001000100101001101111110100001000100001011110100001000010011101011111011111101111110111110001111101011110010011110001001111101100011000111001101111000001111100111111101000000011101111000100111110110000110101000110000001100110010001000010010100001100110000100101010010111110111111001100001101011001101000110010100001110101000100100101001100011001111100111001000100011011001011100001000111111101001001100010110101101000011110011111010101000110000101000001001100111100000001001000111001100111111000010101011111011001110000010100011100001000101011010110100001001010100001010100011100000111110010011110110101101110000001111000110011100111100010100110110111001101000010010100000100110111010101010101101111101011001101111110011110011011101010010011000110100110100011000101101100110011111100110111101001010101001001101100011001010000000011000100000110101101101110000011111001101000101111010111111110111110101110110001111101010001110100111001101111101101000101111011110010000001111100001111000010100000111010001010010010101010111001000101010010111001111100111111001001111111010000010000011001111101010001011000110000001101010001101100100010111010010001000000100110000001101010101010101001000100000001100100011010011101100000010011111101010111001101010000001100111101010000011000111111010000000011100010100100100001111101110011111011101000100100001010111001001111010010100010110011110001001001000000010110000111000101101100001110010100100111111000001000101110101100101001010111001101100001101111110011001001100010100001110111111011000111001111001010111000011011010111000001011111110100000101110010111100000101110111011101101110000110110001111111010001100100001011010110011110101001011101111100111111111101001001100001100001110001010110010001110001000011101100010011111000001111110001010010010101101100001101100111011010001001011110000010101011001000110000101110000010111111100110110101000001110101101101010110111010101111000000000101101011100111101011001101110000100101101111101111111010100110011011010101111000101111010010000011111110000010110111001011011110011000001110011001010001010111111111010110011000100011000000101100000110011011111111110010000011111011001010110010010010110011100001111110110001001100111101011000011101100101001011010100100111101101010001110110101010010000111011010100010100110010010010111011000111000101010100001100010101010111000011111010011000100001101001110010110010111001101101011100110001111010000001010100011111011011001111011110100001100101011101101111100100111110100010111101011101001011010101100101011001100100100111010101111000011100000101000000001010000111111001000001111100110010110101101011010000011101111001011100010111101101110101110001101110110101011101111110000100100000000100010111100101000011010011010110001110100010000110111000100110100000001011111001011010100111000100000010111011001100010011101110000110101100101010010010101111001011010010100101110000000100010001001011100101111100101100111111010101111010000111011101010111110001110010010010010110001000001110111100000001001010100101110111011011000111011110011010010000000110001100000110010011101111111011011000000011011101111000110001100001011011101000000111010100100100110011010101111011110000010000000110001110101001000101010100001111100100000100111110000110100010110100010000001110101001000100011000101101010101110010011101111001010010010000010011011110101001100100100000100110010010101011100011011010101010101111100010011000010011100111011111101010100101111111010100001100011011010000001011100100100111001011100111010000010101011010111001111100101011110101110110100000011101001010111000010100011110111110000111001100110000011010010000010010111111001011011011000000001011101101001001011101011111101100100001011110000010111011100100010101100110001010111010010010111110011110001000100011101101001000100111100011000000111101011011011000010100011110111110111111010010110010011000111000110001100000000110100100110101011001010101110111000111001111011111000010110011011010100011100101111110110111001100111100011001100110011101111010100110010110001110010000000001000101110010111100111011110001101110111110110010010001011000011110010000000000000011011101101000010101001011110100010101101000011011110101011110111011100111101111000110011011100010100100000110101110111100010000011000110001111011010100011101010100100100110110001100111110011001011001000010111111100111010111101111011000000001100001011101110000011111110001000111111100100110110010111011101011100011011001011111110101100011000000110001011000111000110000100000001111011100000100001011101001011001100111111000010001001001001000110101000101001111111011101001001001110011001100010101100111100010110101110110100111001000110110111110101 +00100010101000110010000101100111000110110011011010001000101001100001000011110011001110001100011110111110001101010000101010101000001001111111110111110010001010110111011111011111100001001110010111110110111001000100001110001000110101001011101100010010111100111100110011101001111011111101011010001011010110111001100000011111000110011111000001111010101111010101001010011101100011111010101001101100111010101010001001000110111110110001100100101111010001010110001111010011111101111000010111011010010101110101100001111110001001001111111101111001101111100010101000000101010111101111011011100001111100100011000101011010110011011100010101001000100110010011100110011011111111100000100111010010010101010010001100011000010000100111000001000100101101001011110100101011011100111111010000000111110011101010110111001111010000110001010011011000111001111110010010111001000110110100011011011011010110110100101000001000011100011000111001000011111000100100001000100100010001001110000010101011000010001000111001110001011011101011010000000001100011010111110000101110011010110100000111011111100111001011010110110011001111100010000000100110011110110010110100011111010000001001000011011011011010000001100010111100100000110010001010010100101011111100110110011111110000010010100010100111100101110000111000000100101111010111110000101110110010101100000011111100111011110011100010101110100000001100111000001010001010100100001110010011011110000111101001110100001101001110101010100111000011011101011011001110100101010011000101001100101001000111011100101110100101110111010110001010000101100111011101111001000101100010110101101111101101000100001110000111001111010011011000111000010100011111110100111011000110100101101000110111110101010111110010011110111011000100110100000011110100010001011110001011100100100111101100111011111110110100000111110001010000100111100010100100111110001010111101010111000111000101111000110001000000111011000010011110111111000101110111011010110011010111001010101001010011110011001011110000110110011010100010010010000000001011101010000001011001011010110111011000010111111101000111110101111100100011111110110011000001000110101100110001101110100000100010000001000001100000011011100100110010010100000010010111010110101011111000111000111---------------------1111110111100001011010000011110111011010001100111100010001100010110010001111000101101100100111100110101110110001011010010010011001101010000100111011000010110011111101001000001101101101011010100101010010011001110111010001101111100101100100111001000101110101101101000011010000111010101111110011101100110000010000011101011011011000010001011111011010100101101010101001111100100011101111110110100110110100111111101011001011000010100001110000101111011100011101011000100000010110011111001011101100110100100010111111101001101011001111100110110100001110001010010100100001110100000100000100001010101000111100110101100101001000001110100000100011110111100011100101010111011111101101001110100011111010010101001101011101111010101011110001001100001011010100101111010100110100100111111100110110000010111111001100101110000000110001000000100000000100100110001111100111010101110000100001110001101110100110101000010001011001010100110000100001110110101111100011011011110111011111010011100000010010011010101011001111111111111111101010000001011011001110011001100100111111010000000111100101111011010001001010011110010000000001010100000001001000111111100001000001111111010000111011100010101101100111100010101100011100111110101110110111011010001110101100111000011101001110001001010000011000010000100110110101101101111111111111001110110010010011001111101100110110111011110101011010111001101011110001110110010101010000010110010000100110100100010101010101000011010101010101110001111010111000100100010010101101000100001101001000001111010111111111101111111100000001010011101000001011111001010110110111010011010000011000001001001111001001101000111000011011011000101110111010001011000010011010010010111111001101111000110011101110001111011011111010001001110110110000011110001010111110000110110001011111011110111110111000110001011001000101110011110000101110010000001100101100010110000010001001011100011010010111100100101001010001010010001101011101011011001111010101100101000110000010000101000000101010000111111000000000111111001111001101011001110101011101000100111100101000100110010011110010000100110110011011010101011010011100110100001100111010110110011100111001110000010011100100011001010111100011100000001001001011011100101101011001101010011001011101001111100110110110110001110011100001011100101101100011111111001111010011011010010111101011011100001110101110110110101010101110110010000010000111000000110001011101011001111000010000011110001100111100110111101111000001010000110110101100111101100000100000010100101000100111100011011001111000100010001001001011101100010100100001100110100111100101100110011011011110111100110001111110100101011001100110011011100111100000111001000000001010111000011111000101001110101100010001101000100101111111111111111011110111011100101011011110011100011100100001100000100010001001111010111000101101101011010001010100100011000000100100101011010000011001010101011110000111001011010011110010001001111010110100111110000011010000001100010100010101000101010101000010011110100111100111110110100100011101001110000010000010010111100011000000000010101010011001101110000110100100010111000110011011100010111101110010011011101000100011101010110001111001110110001010001100000010100000001011001000100110111001110100101000110000101110101000110100111100111100110110011101010111101000010101101011110001100110110001001001010011011001000001110011101001011001010000001000100101001000010111001101100001101011011010101000100000110111011110010001010011100100000011000100011100111100001101101000011001100010101100001100001010011000111000011110110101110100011110101100011111100010010110001011111111001000011000010110110101101101000011001111000000010011111000001110011100001000000101001101110000010101001000011011000000011110101110011111110001010111001100000111010110011110111010011001101100110101111111111110110100000100011011000001001011100010010100010011100100110100000001101111001010000110010101111100111001100111000101100000010111010011001010011011001111001100100010100010100010111010011011000001001100010110010001001001010111001000110111110111010100001000100111001001001101100001110101100100000001110110101111011011001011101101011110010010111011101000001011100001000001110011100110110010011111010000001010011011010110010101111000101001101101110100010111001100000101010001110010111110010001010101110111110110111110111101011001010111001101111100010111110001010111011001100110111010110011110110001110001000110010011100011010001010111111011011011100000101100000010011001111010001000110000111010011010111010011001010101100000010110011000001011010111011110101001110110010010010111000011001010000101011101000100000100100010101100110001000011011011010000011100110111010101111100100001001100011000100011000010101100000111111111001100011010100001101110010000000000100101111111101011100110111011000000010001011101010010100110011010011111100110000000110100001010111101010110110110001011100010100001011000110110001101011111101110010011111000100110001100000001001110001000001100000001001001100011011010010010000001101000001000100000110000011101100111110010111000011011101010010101000011101101000001001111011110000010001100000001111111011100110111000110001100010110010000111110110001011101111 +10010001111001011110110111011000010001111000100111010010100001000010010000100000000001110001001010010001110011111111000100001100001100011101001111111100100000000100010101110101111111110101110011110011101101110010000101110111100100011010011011101101100000110100110011100100100110001000101001111101000111001011000100110001001011110010011100001001111001111000010101001001011001011110001110111110110001110101110010000101111010111011110010101010000011101111010101010101001101011111101011100000010100010000000010101111001111011010110101100101111101010101011011000000101100111111000111010010011000010010101110101100111100001110111111010010001101010110000110101000000111100100010011001111001110001101111101110110011110101110101001110110110100001000010010110000000100111010100110100111101110110110110011110000001100011011011100000011010000001010000000101010101101000111001000001100111101000000010101001000111010001010001001100101101000111111111010101110101111010011101010101100100110110110000111100101111001010110101110100010100000011011011000001101000001001111101011111011001101110001001010100010000101111000010110011001100100100000001101100101001110001101111011100011011001100111101001001001101100001010101001110011101011100011000101111111010101100100000101001000110111010011010000101000111100001101011111000010100011101111011000001010010101100001111001101110111110110110101100101001101111010011101001101010101111111000010011101010001010000000100011000011011101100011110010010100001100001000010100100100011001110111011110100010000011100000011111100011011100101110011101101110010111111011001101110001110111101110101001100101111010000101100110100110101100110100111101001010011001111001101010010000010000011111000111110000111110101111111100001010110010111111100101010000010100110010101001100011100110010011011011001101100001111000100111100100001100101110110011000110011100100101010010000101011010110110000111000011100110010111110011100110110101011101101011111011001110011111101011100001000100000110001001111001011100000011000101111000010000010110010110000001111110000110100111000000000011101101000101011111110001000011100111010011110000010001101110010011111110011100110011010100101100001110110110000010101101011111011010001100010---------------------1010110000111110010111011010110000010010001101001110100011110110110111011001101111100001010011110011111101111010110010110000101101111011111101001010100100101101101101110011011101001100000011100101011101100010101011110001100101000010101111100110001111100111001010110001001101010101000101001111000101100110111011100000001010010011000000001110000010100000010001000001101111101000100011101000100111001011101001000011101101010011000011111000111101100010010010110010100011000011001000010011011010101111000000010111100110010010010100100101111011000001100111011011001000100101101110001011010011010001010010101010110001101101010111101111010001111101101000000111001101010001001101110000101010110110100111100010010110101100001010001111000111010101101110101111011101100101011010010110111110000010010011110101011010011101111110111010011000001110011100101000000111101011000011111101010010011100010100100011000001100010100010011100101110110011110101001001100110100110001110001011111010111100010010000100101110111101111000110110001110010001011000000011000110100110000111101101010001000000110000101110111011000101000111101010100011100000010011010101100101100110010011001001011010111101010001111000000111000101100111100010010011001010111101000110101000011000110010110011110110000101011000011011110011000011110101010111001010101101000101001101011111001011011101010010111111000001011111011010001010110011101000000101000101110001011000010111111000011100010010101011001010010101001110101001100110000010001001000110101101000111010100000111000000000010001000111111110001011110101011101111110001101110110101111111101010001100100101000101110011101010100100110011101100111011000011100001000111011001100010111010001101111111011101000000010010100011100011100011001001000011110100011100101001110111001000110111101000111001111111110100010001111000010000111110110010100000010100111110111010011001000100011111111000011001000011100001010000011111111111100001001001111011001100010101001010110110001110101101000010101111111111011111011101101110110111101111100101010001110001000110000000001010011000111001100100110111110011100101001000101101101111010110000101010101100111111110011010010111000101111000111010110110101100100111000000010100011111011001110011111100011100100100011000001000000011010100101000011111010101100100000001010110101010001111110101100010011010001110010111101011010100101111011011100101100011101001011101111111001100000100110011001110010100101000011000101100100100000010001001110101000011111110100111001110011111100000010111010001001100100001111100000011001110010111010100000110000100111000011110011000101000001100111100111010000110000100001001100111011000110110010011100000000011010111001000110101001001111110111001110100100111010001001111010111111100100010101110001111010011011010010000010100011010010011000001001101010101111000011011011011010010110110000110011110000010011100100111011110110101010000111010011111110001000101010111011101101111000001000000100011010010110100100100011001111010111100100101000001110110000100000101100010101000111110000100101001011000001110011011110100100011000010000110101010100110010010011110101010100001110100001000001011011101011110110010101000001010100000001110001010111110000111100111010010101100101000111111010000010000100010010110110110101000110011111100001011001011011100100110001110011000101100101010011111001110011001000100011100010011111000110001001001001110001100100110001110101010000001111100011011110011000011000101011000110000111100111011101001000010111011100000110010111110100111101001101001011000101100001000110010110111111011000010100100011001000000010111100000101111101101010011001101000110100001101001001001011000001001000110010111111111111000010000100110111010001101101010101010111001111000001011011111001011011110110100101010010011001001010101010011100111111101000100101000010100000110010010011010001000001110001111110111011100101100111011011011001110000100011111100110011110101100100000111010001100101101000010100011000111010110001000111111010111100000000000110001000000110110001000101000100011010101111110011110110110010000010010100110110001110101010001110010101110101100000000111001011010100100101111111100100100001111011100111110001100001110011100001000100010100001101011010110010011111110100111010110011011001011011011101101010110010010100010010111110011111011101011100011100000111101000100000111111100100001000101010010110000001000110111110111101011001111111011110110110111110111111111110001111010111010001000101100010010011101110000110101101010100111111000110100011010101000110010010110011010011001011100011111100101011000000111111111110110000010101000011000001110011110000110010111000011010000111101101100110010100101111101101001000111010001110111000100010110011110000100110110001011100001000110010110011000110010000010110000001011011001111001011100111100110110011001011001101000010101011100001100101100011101111101011111111110001000000111001000000010011001010011001000010100001110000001010011110111100111011100010000001110100011111011101111001111101011111111011001100010011100011111010000001010100100001011000111001000101111101111111000110101100010101100111101001100010001100001001101101111011110111101110100 +11101100011001000101011010101010111011000110011110101000101011000011101001010001100110111000011000000101000101110111100000001010010001110111110001100010101110001110101110010101010001011000111101100000001100010001011000111111100110101011010111000001001101010111101110110111010101100010010101011011011011000000100100110101001010110000111111101111110000001100011010001001001000110000111100101010000001001111101101001011110101100001011011110011010000111100101011001001001011001011001000100011111110111101000010111111011000100000011001100000000011010101000101001100001010101010001010010110100010111010101011001100010010110111111100101010011101000101101001000001011000111010100001011000001010011011111010111100001000001011101101101100100011110110110000010011001011001101010110010000101001110010010011101110001100010011100010001110100101010111111010100011110011100101001111111010100111001110100011000111001111010111001000001001011001000100001001000100111101100010000001000100000001000100100001100000010001011101110010010101111011110001000111110110110001011101010000011111101100010110110110010010101011001111001111001011110101111110011100011111111110110101011111000101000011111110010011011111000000001011110111111111001011101110101010001001100110101011111100010111000011011101111010101111011100011101101010011110010101100011110111000010101001001100001010000111000000001111010011111100110011011011010100010101011101101010100111011101110111011011110110000011111111001101101100010001010110101001010111011010100111101010000011110110110011110000110011000000011100011100110100101111111110110101100100100000011011000011101101000001010000110000110000000100101100011000100101011010010101101100100101110101100110000000001000000001010011111001000101100010101011111010000001000000000101001101101010101110100111000000100010001110100000101011111110000111101000010000001101001100110110100111100101110101111011111001010110010001001100100100011111011001011111110100001111001110110101010011101111111100001111010000001110001011010110001110110000011010110010100011000010101001101111001000111110111011111011011001000101110100110100111110000110101110011111100110100011011110010000101000110100011100110111100110110100010001101110111110101000100101110---------------------1110011101100100101011100110001000001100111010111100110010010111011001001110000100001001011101110001101000001000101011000010101001011001111111010000111110100001001111101000110001101110000111100010111101000110001011110010000100100010010010111100010001100010000010011001010101110011001100111011000001110111110111100100100010111011010001111010011111110010011110100011011001000101101010011111010010111010101000111110010100010010101000110010011110101000011001011101101000011111110011011011001101000010101100100100000101001000110101110011010110010111101100100101000011110110001001111011110001001111100100101000100010001000101100110111110100110011010101001110001101011100100011000110001001100111000101111010101101110101110010101100011111001111001101000111011010110001010111111101101101010010010100101111011111001010110000001011100000110001100000010100011110010111100101000011110011010111110011101011111111110111010110100001101001101110000110111000101010101001100111001000001000111010110000101000111001000010011101001110010011011100110001111100000111001111010111010101001111001101000110100110001000001010100111101010011111100001101101011000111100101101110010011001010010101010111101010001111101111011111101010000111100101111110010010011110110001111110101010011011100000011001011011110010011100101111110010010001000100101110010100101110101100110010100001101101110011110010011011111010011101100111011010110111011011110101010010101010001101001011100010001101111011000110001100110001000010010011101010101010000000111011110001011000100101010011001110100101111010111100100110101111011000110000100100110010111001110101000000000001010010010001001111100001000101000111000010000001000011001011111011101101101110100011000110010010001100101011010111000101101011110010110111100010101011100001011101111100000011011010000100000110000000111011010110100000101100001101111010011010010101011100111011111010011010111100101100000000111011011000101001111010001010000101111000000010000101101010010111111000010100000101010110011101011000000000010010111111111000011101101101101011111100001101110010000001110010110110010001000000110111011111100110011100100110001100011100100001000011110001100000110001101101110010001001111010100001010101011101100110011101101000001001001001111011110000010110001100100010001000110011111110101001010011100100010111001110001011110101111000111100000000011100100011000001111010010101110101001010010100000100011111010000111100001100001101111011001111110000100001110100010000101000101100110101101100001100011110111101001000110100101111001001111010011011000110111001000110110001000110011001100100110100000100110001111001000101100110100011101111011001000101010101010111110001010110001111010000010110000100011100101100110101010000100000000100001110010111000001110010000000100001100010001110011011011110001100001101101011000001101010011101010000111110001000101100011010000100011010001110110100101010000110000110000110010100001011000001101111111110000100100000110101111011000110001111000001011111011110110101011010111001010110001011110010110001100110111000010111100011010111000110011001100000100101011111101001100010111111011100000011111110101010011011100110011000101110100110001010100110101100100111000101000100100000000110110100110110000010101101001001110100110011000011000011101001110101011110100100101001110000001111101110100111101110111010110000111110001110010110001001000111000111000110010000101011000110111101001110101011000011100110111111010011011000001011000101110001101111110100100000111000100000010010111000000101000001111111101110000111000000011011100001111111011111000011100111110010110100101100111010000010001101010000101100001100110111001101110100111110100011100000101000010001010011101001100101001111110010011110100011100101100100001000111001000110011000110110110001100111010000001111100100001111011010000011001001100111000101110110001011000100011000010110101010100101001000110011010110100010100110010011010110001111010111000111110011011011100001110001010111111010001111011011100110101010101111011000011001100010011010100001010111010010010110110001011011100010101101111000000011100100000000000100100000011100100101111000110000000100010100000000111011110011001011010011101111001000110001000101000011001100001011011100001110110101011100010100011100011101000100101011011111101111111000001001111100101101010010000000110110111101111000000110110100111000001010111001010111111000011101101010011100110000001010111101011001110110111111111010010011101100001010001100011000101010100110111111100100001110011011010011111010110100011100100001010001010010000111000111101100101101010010110111001110010011111010111110110011001011000101000001001101100001010011101101111101001110110001110001101101100011111101101111110001011010001011010100010101010101000000000000110111110000100110000001000000101110011010111001001000000101111101011111000101000100101010001011000110011100101011000100010111010011001101110110001001111100011101101111111100100001010111000011000110010011110010110100100001011001111100100100110011000101000100101000000111011001101011000100111111110110000010010000111000111111110110011100110110001001111111000101000011010000010111101001111011001101111010011 +11011000101100011011110100000011101100000000001111100010110111111010110000110111101110011000011111100011110110101110001110110110100111010111100110101000100100011010011101010001001010111101010010010100000111011011101111111100010110011011100100000000111100011111110110010111011000100110110001010101100000010101101111101110000011011101111101111101010110101101111101100011110100001011100011100101101000001011110000000000101100101000001100110111011000001011011110011101101100111010101111101000110101110101000100111110111100010111010100000001000000111010011000100111000111100101011011010010001111011010101001101110111100100100101100011110011000000100001100000010110010111110111101101101110100111110000111001001111100100000010110011100011110100101001110100100111111000101110011010010111001101100101101001110010100111011010000101110000000100110101001110101111011111000101111000111111001000101010100100000010001110101111001000101000101101001000011110001011101011011000110110011001111011111101000010101010011011110100100111000110001110100000010010111000110010100100110100010111000101101011110101111000111010011010100011111101110011011010000000111100010101100001011110000011101110100000100101100010000001001010110110101100111010010001010101110110001100001100100111010010000100100110100100110101010101110101011001110100111101101001000000110101111110000010010010110111010101010001000101100001111110001010011001000100001010101100101010100010110000100001111100100001011000011001100011110000101110001111100101110001101111010011110001001000100110101101010111100010001001011101000101011011011110010101011111011011100010010011011101010100010110100100000101000011111111001011110000011010000011110011110001011010100011111101110101011100010001110110011110101001001110111111101111111010101101110000011010011010101010001101111011101010111110011110000110101110010100010001111000101101000000011110101100011001101011110000001000001000100000011000001001110010111111101011001001010110001101101011000010001100111010100010000100101011000011001100011011011100011010011111110101010111100011100010100110101110011010101100110110010000110101110111100010110100110100110011000001000101111001010101001110010100010100100111011111011101110100101001111001011000---------------------0010010110001000100100110010110111010000111110101100101100100010111111000010100010010100100101110101111111111010011000110000010101111100000111110111111100100101000000111111100001011111111011001101001010111111010111101111000111010100011110110100010010100111111000010101111011000101001000010011111111100010111001111101111010001111110010010011110000110010011101101111010111100111011010111011101001010100010101101011010111001110011101011100011000101011100101011010000000001110011110010101110011110100001111001100101110001100111010111100001111101000110100010100111110001101110001010101000011110000101001100001110000010011101110000001010010001101010011111001011000010000101011101001011100100011000101001100001010010000000110111111111100001010100011110110100011111110000101101001010001000111011111000001011101100001101010101011001001000101011110111111000111111011000110001100011001100001100101010101101010100011100110110111100000010000001001000100111010111010110111101101100000111110110100011010001101101001001011011111101101001100100011001100000001111111010101100110110001100101010110001100101001010001100001010101001001010100010111010101100101110001000010100011110001101010111101101101000111001010001101011100000111011011010010110100101010111100101100110111111001100101100100000000111000101100101100111010101111010110100000110100101000010100011011111111100010101001100100011000111100111110100111001011000001111010110111101001100000000011100010111111101011100011100010111001011100101100101110000001110101111100001110000011000011011100011110010100101000101111000100011011101010101001011100110110011010100011001110000101001000001100111100001000010010011111110110010001011111011110001000001111111011010011100100001101001101001101001111011100001010111010111110100100100111111100110100110111000011100111000101101000011010001101001110110111110110011100101101100101001101110001011101000010011110010000101011010000001110100110110011100100010011101110100101111010101111111011011001011001100110010100100111001100011111100110001101010110011101110010111101010010010110001000010011010101011000000100011010111010010101101111111111011110111011101101000011011100011101101000101110110110100001001101100011001110011100010100011010011001100111111111110110001111011110101101101100100110011110111110110001001111010011101011110000010001101010010100001001001110000100101010111011101100001000000111000111010110010010010010001001110101001010001000110101011110011101010101011000010101101001000010100100011110000100100111111111001101000011000100000010100011100100101110100011111110011001100110010000110111011110111101101000100011010110000111100010100100001110001011000001000001000001111001101000010011001111010110010011111010101110001101100111100011110011111001100001110111011100001110110001011010011001011001011011110100100001001100000111011000111111000001110011100111110110101011101111000010001010111010000000110001110110100001100001011011011011101001110001100101100000010001100010110100100101011001100011000011110111101111111000111110110001011001011011001001101011011101101110100000101010000011111111100111100011110000001010100010101111001001111011000100100000101101101000101010111010111001111000100111001010011001000001011011011010010101100101101010000101111111001001111110001110101111110100000010011001011000010001011110110110110000010100100111110110101100010000001000011000100010111001100001011000000100100101111101011111001100010011011000011001011100001110101000100100111100010101101001010100011010110010111111110110111110001001101011101000110010101111011110011111100000001101110110001001110111101011011110010001110101100111000001001110110100001001001001000001001000111101000000001000111000011110000001011011101000010110110110100001110110010001100000100110110000100000111100010100100100110011101001011110011110111111001000111101010100111110000101010011101000111100100000010011101001010111000100011101110110010100010111111110110001101110111010000100001000000011011011010011110101011110111101000010001101110101011110111111011100101101110000111010100000011100111100000100000110000110111101010101110101111100011010010101010011010011101000010110010010000001011100101101101011110111110100010110001010011101010000111111000010101100111000101000010011000001111101111111100000111001100011101100011001100101100001011000111111111001110010001000100101001110110010010010110001110111010000001101100101001000101001000001000010001001101111101000001001001100011000101100010000101001100101111011100111001101100001000100110100011010111000110000101110101110011011100010110011100110010101110100100101001010010100101110010111100011100101100011110110111110001010101111010010001011011101011110101011101001100000000000111000101000011000011101010000010111110000110001101111110101111110010110011001011100011010110110111001010001101110111110100100001010100010101101101110111110110010011111111110100011110010010111010011110011000000001001111100011010111101010010010001010101010110111100101111110000010010111110101110000110010101001111011011110001001110100101100001010000001000100101001011100100100111011111100000001111110001010010110110101010101111100011001001001010101111110010001011000000010001101010001110 +ls224msgs +01110011011100010010110110100100101100111010011101100010000101100100010101110010000100000001001010100100011000101001110101011001000000110110000100001000101100110011111100010100100100101100111000011001001101110010110000101000110101101010011111011001011110011100111011100000001000011011011111111011000000110100001001000100001100011100010001101110110011000000110111111101110001100010101101111110000010101000010001111000100110011011110001000100001011100011001110011010001111100000001110101110110100101011010000101111100110011100011011100100010100101101101110110100011011001100001011000010001010110110011111111001111101010110111101011101111111011011010011110110010010110110001111001011010110000101100010001100000111001001111110111011110111101101011010010100111001010000110011111100001101101111011010100111110111110100010000101101111010100011110011011010110100001111001100001011010011001011110000000101110101000101011101101100000110001010100110101010001000100100000010011111101110100110010011010101100101110111101011110111001110110100110110101101111111011011010001110111111110111101110011010101011001011011011100001000000111100010111000110100111101000001011000000100101100000011101000001001110101010011010001110001011111010000100101000110011011100111100000000111100100000001111000101110000011111101111100000110100100011000110011101010000000111000100101010000101101101001101000100001101001001111010111111100101011111001011010000100101110101100010011101111111101110101101110011010101000110011010011000110111100100011101010000001101111101101101001110111011111001010010100110110100011011010010001110000011011110000011110011111111110101000110011101001011011111010100001110000101101010000001000000010000111000101010001100100000010101110110011111101010000101000001011001001101011001001000000101111010001110010101010101001101110111110100100000111110011010111010000010000011000111000100100001100100011001011100100010000000000000001110011110110000110010010001010001000101010101101001111000001001001111011000001110001010010001000001000011001000000100111100010100111011010110010110000110101010110000011000100101110000000111010001101100111110101000100110110001000000011111000101100110101110010001111010010000000111011000101001100101011000111110111000010111110011100000110111010011101011110010010010111111111100110010011000001111010010110100100001110100011000110110101011011110101011000001111101100101011110101110100110011001010111011000000101011011000010000000000000111011001111010001011011001110010001010001001100111111000010100011000011110011010001111111011110000111010000100111110111011001110010111010010100100100101001110101110111010010110101101001111101010010110110000010010010011101110010100001100100100011000001000111010110100011011000111101111000001110101001001000000111000111110100011010111011101011011100101010011011110000111110010100111010010110100011000111111000011000011110101011010010011001100000011110011001011110010010111100101000000111100000000111010000011011011100101010001011101100110110010110000101001101110101001100011001111001110000011100111110000000010010001001101010010011100001110110111100001011110100110001101011011110000100000000010111010110100100101100100110100000110111001110101110010101000010010110000001000001100010111010110011000100000101010011010011100010000100101100001111001110101000001101010101101011010101110111001011010101110110101101100110011011101111010010111100011110110000010011100100001110101011000000111010101110000110011110101011101000011001011110011110010001010010000000000111101100001101110010110100101111011001011101010001101010110101011111100010000001010100111111101100110011110111100110101111010101000100100111111101000101101111010111000011001010001101110101010101000110110110111000101011110101100000110110011100110011011000001100000011100001011110110001100000011110111000010011110000001100010001110110110111101000111111001111011110001001110100000111000010110100010110010101101011101111110110110001101000001001101101101010111011001100010111000010101011010101010011110111011101101010011111010110100101011011101000101001010101010110011001110010100101001110111110101111011110010000100101101110100101011011101010110111000010010100010010010000111111100100001010111100110011101101100111000010110011100110000101111100010010011111110000101000101110001000111001111001000000011011110111000111011011000100110100100001111010111101100001111001110000110001001110101011101101011111101001001111101110000000010111011010111010111111100010100111010110010011111000011111110110110100111101000010000111011110011010111000110010011110011111101010001000101001000101101111000011100110001001011001001011101111111001011010110111011001000000100010111011111010010000000010100110100001011111101111110110000010010011000101010000000001111100001000010100001110110100011100110111001110010111101000001101101101110101000000110100000110000100001101000000001000100111010000101101111100111011010011111011001001101110--------------------- +10110010110100011100110101001101011101010010100101110110000000000111001101001011011011111101100000100010000101101101010011100011100010000100011100010110110100010101110100110111001111101100101100001011100111000110001000100010010010110011110010111010000100111001000001000101100011011111001011111000001010110010110100011011110100111110011100101100011111001101011100011011001111000101111011100100010000100100110100010001011000011111101001001100011101111000001011000101010001101001011100011100010100011100100000000011001100001001101000111110110100110110101111000110010010101000101110100000000110000001000001010000010110110111101100001001011010011001111010100011000000110000011001010010101001111011110100011100010110101010101010001111011011101101010000000001110011101111101000110011101110010111111111100101011000101001110001111101000100001101011001010000101101000000010110100000101101000110001110010101010001101101010110100101011101000110110011001101100010011110100101100100011100001010001110010001110111110100100001010110011100100010101010001001100011010010101101111000000011110110111000111011000001111000011100011100000101111001110001011111010011001110101101011000010100011010100000010000001001001011110011100101100100000001010000011100110000111010110011110011001110011011100101110010111101101001100110010101010100010110000000101011010011101110111110001101100110010000001001110100000110000100111011111100011000000000001111011010100010101001111101010101001001011011100101111111011110110011010110010011001011110001001011001010101010001110010000101010010001100110000010011110111110011110001011111101101000110101010101101111110011000101101010101101101010111110000110001010101000000100010101010001010001110011110110011101111000111111000011010000110111001001111110111100101110000011000100111100010111010101000001101011100010001110000001001000011000110000100010111100111101100010010000011111000000101001111001111001100011011010111101001110110010111111101001010100011111100110111110101001101101001011010110000100111111000100010111000000001101010110010100001100111111000101011100011010010000101111101010010100011000000010011110011000001011001011011111011101100001101111110011111110011011000111110000101100101101100011011011110111001010001110101010000110110100101100010101010000111001100001001111010101111001000110111101110100011000110011111011001100011010110111101001101111111001001001011111011100101101001110110100001000000111001100111100111001010110011010011010011011000011111100100011010010000001100100000111101011110011101001100100001011010000011010011111001110101110111000001010001010010000001101011110101111100010111010100101100101010010101110110100101000101110010111000000110000101010110010010100100111101010000101011010011110001101011001110011011111100110000000001100010100100001110111000101101001100010001110011011101110100110001011011000101100101111010000001111110101010101001011011110101011111100011111001001101101111011101010001011111011111101100001101000010001111011110100011101100100000011010001011101110110010000000110011101110010101001111111010011000000000001000100011110011110111001101100111000110001111100000000100101100100010011011010011011000010000101010101110110010100111001010011101100000011100110010000010111000101100110100010110111111101101000010111000101101000111001010001000101001111001100100010101011010101001010101010011001010111000001010001100111010000001110110110000101001100010100011000001010010101011010000111111110101101100000010101100100101001111110100101010101011110000010011101110101000101000101001111000010111001101101110111011011100111101010000110011000001001010110000011101101010100111010101110011010100101011010101000100011111110101101101110011000111000010010110111001110011110011101100110010000111001101111100101101101100010110110001101010101010011111100101101011110100011101001000001001110010100010010010011010101011001010111010000000000110100000001111000110111100010110100000110001000100101101011001010010110001010111010000110101001100010010110011011010001110110101010111100101010001001001101101000010011001111100011000011100111010101011010110011100101000001010001111110100100101101110001100110001011010100101000100111111111010111000000100001010110100100011001011111011101001111101111011011011101011010000111101000011010101010000010010000001110101101100000000111101101110100101001111011111111000110110001100110001111110001101001001000000100110001000001001011101000010101111100001110110010101011111100110000000111000000110101000100111010110001010111010111111111000011100000111110101011011011011111110001010000100011001101010110010000110110001101010010001000101100000000100010011111010010011100100001100101100010100100011000110000100101100001110111101011000100101001101001011000010011001101110110001011011101011011001100101001101010111010111000110101110010101100001000000011110000010010110110011111000011100001000110001011001011011110001010111111010110010010001011111100111010010--------------------- +01010001000111000011001011100111000011011000101100011111011001111110101001000000001011001010101100100011010001011110111101000001111110101101001110000101010100011001100000110111100100101110100001011110000110100100110100111001010110000011001010110011000110111010011111001100110111111100010010100110011000100101100110011010100001001111111101100000111000011101000010001101001011110010000000110011111101001000111100100100001101010001111001001110111000100000000110000000010100000001100010100111101011011110010011010000010010011101001101100000101100110001101010101100001111011110111000100111001011100011101101000111011110100011001101101000000101011011000001010000001111001100011001111010010111001011110110101101101110111001101001001111100100110111100010000100111101111010010010100100100101011111001101011000011111010110110100111001010001110111011010111000010001011110110100100100011010101001010011110011100001001110010001000001111001110110101101110100010000110000001111110000111100111010000000100010100011011010000011000111001101001100111110101100101010001100001000001100101001100101111101100010000110101110010110011101100010110001101100011100010011101010111010001001100101111011000010101101011011110110100101000111110010000000000011010111011010000010010100000100010110001010100100110000000011110110100010010111011010101011011101111011111111110011110000101011010110111011110001100111110011111011111111101011110100000000100011011100010100010111000010100100111111001111011010001100000010011101111011010000010101011010101110011100110101101101001010100101010010111000111011100100001101001100110111100111110111100111010011010010101011010111011010101010101111011010011000010111011001100010001011001111101101010110111100111110010101110011100100011101110100101001000011111111010101100101011011110110010011010000111011011010111001000111110100011011010000000110110100110100100000100000011011111001100101011110111110111110011110000000000010111100111111000100001011101001010000111000100101110010011010111110001110111101100100101001111011001000110100011110111101111001011011100001101101101001110011011101000101101100001100001011111010000011001111010011010101001100111110001001001110001010001111000101011101011011010000101100111101100110011011100010001100100011110011111001111011111000011101111111011011010010110111100110000000000000011001001100111010000101110101101000001100000011100001111000110011110010010000110101000011110110111110111110010011011100110010111110011110011110001100101000001001000110101011100100111110101010000011010000000001111001101101101001111000100011010111100101001100101111011110010001100100100001010001100101110111100011101000110011010000011000110110111010001110011000101001011011010110100010001111011111010100001101111110000101100000010010100110110000101100110111001101001010100100101000010011101100100010000000010111110001000110101110100110000110100111000111110110011100001100010011101111001101110011010100111011110010011011110010110101111011111100001001101100001111000001111010101000101111011010111110100000011000100010001110011111100001101110110110100011011000101001100101010010101010001111110001111000011100100100101001100011000111000110010100111010000011011010101000000011010110010010001100100101101110011000110110000000100111101100010100000010110000011101111110100111000100110001000111111111001011001110101011101110011101011001010000011111010101100000010000010111100100111000111001110000101000001110001101110100000010000100010101111100010101011001011100110110011000100001111000101111011101100001011011100110000011111100001011010101110010110001100101110001111000101000111111110010111011100011101111000111011101111101111101101000110000001110101000100110101001101000111010000110100110100000001000010100001000111010110100001010011011100110100101010101000001110110001000011110000101011001110011110001110011011010111100111100001011110001101100010011101100100100100111110000110011111001011111010100101101011000100011001000111000000110100100110011000011011010000100000100000110101000001100110010110010011000001100001111101110100000101100001101111010000101011101110011101100101110011111111111101101010100111110011101010111100010001101100101111010110001101100010110100111101011101100011111011001010001000101000010101100000110001110001010011011000001001110110100100010100110111001110011110010101010000100100111010001001110001010001110111110111101101100111011000000000010011100101110011011111011001101100000110110001011111101011111111100110101011111000011000111001000111011011001100011000101111001010001110110100101111100110000001011010111110110010011001000010110100110101100110000000111000001001111110110110000001010001101101001110000110001010011111100100011100101110001011010001110001011100111010010000110010100000101011001111110100100111111011110110000100010011001101100000101000110001000001010110110101000010000100111110101101001011101000110011000111001110001000001000011000101111010110000101101010011000--------------------- +01100011101010001000001110001001011010110010100101100100100101111001101001101111010010011010110111110101010011111001001000011011111100011111100110111010101100111001111011101001111111001011100101001010000001110100110111000100100100110110111000111110100000011101100001111111100101110110101000000010100000111010100111001101111111110100100010010111101111010111111000010100111011110101011011110100101100001100001101010111100100011011101101110111010110011111001100000010001000000001001001010010111000110011110000001010010000101000001010011010011001000011011111000101000010000001001111000111000011110000101001001011111101001110001110110101100001010011001000101001111010110010010010011011010011100000000010000001100001011001110010101011110100000111111100010011110011111000011100110100011010010110001100110001100101010010111010100001010000001000001111011101100011100010010101100101100011110100110101111111010100011011111001110110010101000011100000100100110001011011101001101100001000010111110001110110110101000111001111010000000011100010000110000110010111101111010111011110010000001111010000000001000000011111011011100101000001111001010110111010011000100010100011001010011000011100101001101010101101111010111101010111100110011010110110011101001000000111111110001100111010000010001000000101110000011100011010100000000100001101000101011001000110001010101010011001101100010111001111011000110010101101010100101000111111001100000100101111101011110111011111010101101101001111110000010111111000111101011100110100111101111001000011010100010110100010001100000010011010110010111101010111010100000011000101111000001000011111110001100011101000100000101001001010001110001000110001101010001110011000100001011011101001101111001010110001101110110110101111111110001100101111111000000001001001000101110000101110001100010100001100000000110001011110010010001110101101010011111010000001010001010001000100010111010000101100011100001000011101001100001101010001011110001101111100001001001100011000000000000111110110100101101111011011001111011110011100101000111000101110110010100000010111101000100110101000100011110111101001101011100011000100011001111110000111110010100110010001100010110000010100111001101000101001111011000111011110101001000100101101100010000011111110010011111001011100001010011110010011111100100111110011000101100101011111000010100101100000100110010010101101001000111000000000101101101001010010101100111011111111010011011101010111101111110010000111000000011110100110101010010110010110111000011110100100111101110011110111001011110010010000111010101100111101001011001111000000011110010100111000101011000100000110001100011111010011110010111100110000011010111110000010101110111100011001011001001101001000001001110100011111001010101101110101101001010001011000001100111010110000001011001001111110101101000001111010101001101100000100110011111111001000010010110100101001001111111100000000000101111100000010011000101110111111110000011010011110001001010001010111110101010000100111001000110101100111100000100100101100110110011110011001100101000011010100001011011001010001001000101100101000001011001101000111110000011010111110101000101001010010110001101111010011110110110010001010010011101011000101001010001101001000011011000110010011001000100101000010101010110011010001111011010101011000100000010110001010000000000100010110001101111110101001011001001101001001010111101000100110100100111100101011101011111101011001001011001001010100011110111111110101100011010100011000101010101101100110001111001011100000010110111001000001011010010001001100011010110011101011111100011010011100000111001100110110111011011000011001011000000111110111000000010000000011100110110011010101101100111100010101100000000110101011100100001010000100001101100101111100001100101100001111001111100000010010111000001010111101001010111110111101101011001101000010000000111011000111011100111001111111010001011111101000111000011110101001011011001000001100101011100101011101001111000101011010111001010011100001101101011110011011000110000000111011011101010010001100101101011000101110110011111100101111001111001011101011011111000010111001010100001100000000100111011010000011110010011101110010011101011111000110110110111101000101001100111001110010001101010010100010101001111100110010101000100001101110111110001101011010101111011100000111001000111100111010000000010001101000110101001001011010011100101001010000110001111100111101001110111000101010100010110101010000011111111111100110011010100000001011000110001001111110000111010110100111011101101101001010000011100011110001100100001110010110101001101001000001111011110010101100011110100001010100000000001010100000010110000011110010011011011111111010101011001111010011000001000001010011000100100010001111100110001011011000100111110010010000100111110010101001100000100011100110000110101011100001100100100110101110001101111000100111010001110000010111111110010101100000001110111111101001010010110001001100110010100011000000011000000--------------------- +01110001100010001010001001001101000001010101101111011101100011100101001101101000001100001100001000101001110001111001010100000010101111000100010100111011011100101111011010101101001011100110110101101000001011010001111010111010100001010101100010111001001001101000001010010010110111111110010000101011001011110101011111101110101101000100000101000101110011100111011101100001110101110110100011101000101111010101101010100001000001000001000010000000001001010100001101110000011100011100111101010100111010101100010010110111001111110000000111010010000010111111111111011000000000000001000001001001000001011000101100111001110010100111000000100110000010001010100101101011110110101110010100000100101100001101000011110100000010101100110011001001001101011001001110101000000001001110011110111010110101101111000011101010111000000000010111000001001011000111101010010111001011010011111100100110010011100010010010110101100000011000111011010101010111110111010110000001011111001010010110011001100001101100011010010010111001001000101001111111011010001110001011010011101111000010000000111111110001100100011110001001001100011110010111011111110001110010001001101101000011101011101100011011111100011001111010110001100011111000100011001111010111000100101100110000111110000000001111110001111101011000010110011100110101011010010011100110010010111101101100000001011111110100111110011111011010010110010000010001111011100010001110111110000100001010000000010001001010101100111100100001011010010001101011111001011001110100101110010000001100111011110010111001011101000000111011000010010000011000101011101101010010011001010110011000001010100110001111111001111001101100110001011100001000010101110110000110010111111101010010011000111011000011000110000011000001100001101110100000011110111110100101011110001110001001011001100101111000111010010011001110001110000001011111001101100111000010000110110100001110000111111100011110100001100110011010101101001111001010100101110001100001001101000111001001101101011101000001000001011100000001101110001001010100000111111110000000010101110000011001100110011110010100001101110000010110110100000111000111001110101100110001110110101110101010110111100111011111111010111111111000011011110011010011010100010111110111110001011000110101100100000111110001010010001010110010100001101001111110000100101101100101100000100100111110110000100100110100110011000011011101101011100000010000101011101111011101010001101110111100001010001010111100001001110100111011110100100100101000100011100010101100101001011010101010110000011001101000100010011100111110011011100110110100110111110111011100101000010110111111111001110011110011100001111100100000100101000001110010111111001101000000110111101100101010100101100111000110110101101011111001100010101011000000000110010001101100010000110011101011010011111101010001000001100001111001011010001100111101000011111101011000101010111000000101111001000011010000101010111100011101110110000010010000000110001000110110101100100100110101101100000011011111101100101000111100000101101010001101100011010100000011000000111011100100001110011011111010110000000001000101010111011011001110000010101100000110010111011111000111100111001111111010010100011110110100000000011001111111011101001111010001010011110000000001101101110010011010001001011101110110101101011001011011101110011010010110111111101010100100100000001110001010011010110010001011011010010100111101101010111011110001101010010100100100010000111010001111011000001000000010110000000101101010100000000111001101110110111011111010011110001001000011010011111100110101000101100010101101100011000011111101100101111010111111001000001000011101110101110100001100100010100100010111010011010100100010111101011001000110111100101110001000011001001110101001111110000110010000100010101111011100110111001101000010110011111101011010011100111011010101101111010010010101001101101010000000011000101110010000010001101011010101110000010101000111110011101100101011110101100010111100111100001010111011001101010010001000000101000100111010101010010010010100101101001010010010000011010110110000011011001111101101110011100100010000011110100001100000010110001100010001000100110101011010010111011001001001000111000010010101000100101101101001010100001011101110010100010010111001110101011010110001000111001011101001101100000001001100011001000110100110110000100011110100000011010011000011111000101100101111111000100110110001011100100111001101001010101010110010011001010000010010010101011011000110101111100011000111000110101110001110010101110011000101010110111110111011011110010100101001011111111110001011011000111011101100100011011100111101100101010111010011001001010110011000111100000001001100001111110101110010100101011110111011110111000101100011000100101110101000101001011011001100110000000011101000011100111000111011101011111010010111001000101110100111111110001111001100000111111101011001000001110010000011101110111110000100011000110001001100010110111111011001100001001110011100001--------------------- +01101011100101100100000101111110111111111001001010101001010000101001111010011100001001011011011000001100101011100011101010010011011010010100110100101000010101100110010011001110111101111101000101110000100100100101110110001111101011011000010010000101000100100010011100100011101010001100100001010000011100001001110100110000010010001011100001101000110100111010101010001111011110111101101110111010101110101100011111001110001000110101011100101001100001101100101000100110100110111010000110110010011011100011010100111101001110101001010000011001110111010011000111011101011111101011110100100111000010010101111111001010011011010100001101010111111011011100110101110101000010001110111000100011011011011000001011000111010000100101011111001101100010110011011111001000010100100101010000110011010100111001100100100101010100010101010100000001011011000111010100101010011100111101111110100011001011000110000011100011010001010010100111001101100111000000111001101010000110110111011110000011011100000001111110100111001111010010001111111001110000100111101101111100110001111010000111010001000000101101000110110000010100111110011001010101111011100001111110000000101010101101100100001010010010000000001000101000101011100100001011111011100110101000110101001000101110010010100110101000001000101000101110000011001010001000101001101111001111000110011010100000110110011001011110010101010101010010001100111100101101011111000000101110001011001011011000111001101011110110010011111010011001111000010010100000011101011100000000011110111110010000010001010000010100001000110001100010001000110001111111100101111110101001000001111101001000101100000001111101111011110101111111111111100100101101011000111000101001011101101100011101001111011000000101100001001011010110111111001111101101111101100100010001100111011010000101101100010010001000000000111110101011010011010100011011111111111010000100010111000001001011100000111100111111111101000100110010001110111111010100000000011111001001011001111110101111100011000010001011001110001010110100000001010011010110000110001001010010001101001110111110000011000000111001000100100110110010100000101100011011011101000001110101000000111010000100110101111000000100100000111000111010010110100010101000100110011101001100011110001101011010101011001111010111110111110010110010001111100101001111000001010010111101010110010101100011011110010100000000011101100111001111001110010001100101011101011001001001110110010100000100101101011000110011110100111011010110111110001101111011010111101001010010001111111001101111000110110010111010111010101111101111000001100110111001001010101110011110100011000110010110010011010000001001111001010100000111010000001000001111011100011010110001000010001101011100110010011101010111101111101001110111001010001011111110110101110101000001010001011000100000010100100001100001111100110111110001000101010011010100011010010110000011101110110111011111110111111101011011000100001101110011111000001010111011110000000100101101110001111100011100000101011111010101010110111010001101101110000000010000000111101100000000001011010000000101000100011110111111110011001111111100001011011101011010001010000111000000110100101011011100110001100000001001000000100101000001000101010000010000101011010100001000100111111101010101110111011100000011001100100011110010111000011001101000111001010010011110000101000000110010011010111111111000111010110100001000011110010110101100001000011110110010000000000010011001000110101111111000010100111111111101001100100000101001010011000101011001101110110111000111110101010000100010011001000001111000101000111110010010101110111000000010111110010111010111110001100110001010001100010111011010100111111101000001111111000100101000110101001001100101011111101111100011010000111110101000010101111100111110011110101000110000011010110100101101100011100011111101001110001100101001110101100000101101001001011100010111000000110110111110011000011001101101010000000100101100001110100010000010010110110001010010100110001101101000101010111100000011011101010110101010100111001010001000001011110111110111011000001000101111000001110001101110001001011010100101100011110101111010011011000100110100111110001000100010110111010010011011110000000011010101000110111110001100011001100100111011011011101110010001011100010101001010010000001101101001010001110000101111000110010000111010100100011100011001000000111000001001010111110001100101111111110001000011010111101011110001100110101101111000010011101111111100110001010000010111110101100000010110111100111101010011000111111010000010001011101010011010111001010011000010011111110010110011000010101001111100000010001101010100110011000101111101111110101100011101010100010001100001011010001000010001100010100010011111000101011101000111011110010000010110001110000100000011100111011110001000101011010011000011110100001010110100110101100101010110001000100100111110001011101011101111101100010100010010001000000100010111000001111111001011011011001111000000001001010010100--------------------- +01110011111111000010011011000001011100110001011100111101000001010011001010010100111010010011111111000111100111101010011011001100110001011100000111001111011001100100110100001010011001100010111110001010011011001110000110101001001011100100101010110111001110001001000110100010010010001010011100011000010001011001000101111111000001100100110101011010001110001111100000010111011111011111110011010110100100100110100001100010101100000010111101001110011001001110000100110100001110100101011011110010010001100111001100101110011101010100111011011000001111111101100100110001000101111011011101010101111111011111100101001011011001000100000101111001011100101010100001111000000010110010001011111001001011011101100110010110001110000101011101101111111101000100111101001100111101011110101011101101100000111101011011000000101111000110111100010101010001101001000101100111001111011110110001111001001000000000100100001100010001010111110011101100100110010011110010101110110000100001111110011101001001000011110101000101000100010010101101011101011000111111011110011001000011101010000100110110110011001111110110101010010110110100010100010110011001111000000011101000000000111110011101000100110001101010000010001110110110101100001110110110000110001010010011110000000010010110100000001000000000110110011011100110101010101101111100110101001001111011001000101011001101100011000001000110000000001100111000111111000010111100100100110000100110111000110001001010011011111110110110011111111110100101000100001110111101111101101110010111101101001111111011110101000111000110101101101111011110101100011011001001011011100011101110000010101001111111011100111001010000001000010010011010100010101000110000111001001110110100101011000000011001011100000101000010100000000111000010100101001100110011110000000000001110010111110010100010100100101100011101001001000010001101100111011101000111011101001111010111100001100100101111001111101000101110010111011010011110000100010011110101000000010111101111000101111010110111001011101100110011001101011110000111101111101011110111001001000110111001101101010010011110110000011000110000101011010110111011111010001010111110011101100110100100101111110000110011110010110101010100100001110111001100111111011000101011111110011010111101100001000110010110111010010110001011100110110000000010111101100100100000100101100011010110010111101011001101001110111001101101101111100010000111001010110101100001000111001101110110110101110010000110001100110110111000010110001110110000110001111000001101111011000011010100010010010011101010010111001110100101000111110000110011001100111000100011101111111001011010100100000011110011111010111100000111001001000010001001100000001000101100100011010110110001111101011100011011011011111111110101101101001101010000110011101110101111110000010001010011110011101111111110101100101001000111001000001101101000101100000101110100010101010110001001101101101000100000101011110100111001111111111110010010010110101010010001110110111010100001011100001001100111000100001011010100001110100000010011100011111011001110000100001111011100100101100100110101100111011100110110110000101111000111110110100010100110101010101101100011001111011000100010001110010010001101101101100010100111010000111101110000110100100101100000011110010100101001011001100010111100011001100101011001011001111011011010001011111001110100001001000111100101110010101100110100001101001011101100011011110111101011011000111101011100100001101001001110010011011000011101100100101101011001010100101111111111001011000001100010000100000010011100111110010000011001010110100011101110001011010111011011110100111101010111000101111100000110001011111110000000100000111001010111100000000001100010111011010011000010111110010011100111111101000001110100001010000001010011111101001110101100100000100101010100001110111001011011111010101001001001011000001011111001010110010101001010011011010011100110000000101010011011001100111100010000001000100001101001001100011100111100100000101001010000001110010010010000011100110110000011111110101101100010000000010000001110000010001010100101010001010011111000011011110000111010111001010010011001100100011100010011011111001100011001000100101100111111101010100011100110000111011000111110011000011100111000110100111000100110110111000010101110010010100110111111001110011010111011101000010000101010110011110000111110110111001100111110010011011010010101101000110111100110111110000101101110111010011110110110110110100011001101010011110101001101111100110100100000011110000001101100110001100110101111010100001000000011011100010100001100011001101011010100001010111100101100100011011001011110000001000111011110110001000001100100101100110010101000000000110111110110010000101011100010001110010100010010001000000111010010101001110001011110000001000011111110010100001100101011010110110100000110101100100010001011001001100001010111010010110010110110110110101011111000000000011111100011110111001100100001010001101001111110101101011111101001010001000--------------------- +00110000111001010101001011101000111101111001000110111100000100011001110111001100010000000100101100001111000111110111100001011111110111011111011011001111111110100000010001110111010001000101101011101101000011101111111001001001101001000110011000000011000000011001111100111001011101001001100100001100001100000010110010100000011100000111101110111001001100011011100000000111010100101001100111010101110010000110011101111011000101110101010101101111011111001010000011101100101101101000000000000100011100001111111101110101110000001110000110101101011110110010100111110010001100000110000001000111101011110011101100000000010100110010010011010000011101000110001100100000100101011101100101001001011011001010000010110000001110111101011100110101101110111110010001000100110011010100000001000011001000010010001000010111001011101011111100010100001101110000001101110110100000011101101001001000000010101011001011111101010110001111110000010011110010001100010111000010110001001001111001111100000100110110000101111100100010100001011100110000110001011011110001101111001011111101111110001000100111001111101011101011000101000101011001000110000101101111110100000001011000111101110100101110011110111111000101001111010010010100011110011101100100111000111011111101010000101010001001111000100011111010111101001011101101010110111100011000000110000011101001010100111010001010000010000011101100111101011010010110011000010011101010010010011011100110110001001111100011010000100000011111101010101000001111100100001101110111001000100110110000100111011100110100011000011000000100100100110110111010011111101000100011010000001010000000111001110000101100011011010010001011101100111000110000100010001101010111011100100010111001111001101001110101101100101100100110001011110000010000100111100010010111011001000111011000011000000100100011010001000110110100111101101110011001100010011100011100001001000100010011100001011100101000001111001010110010000101011100111011111011001111011011011010100011111100111111010001101010100000111110001010111100110110110111101000011010110110110010000001011001011000111000100101011011011100101010010100010111110111011111100111101111000011000110000101101101110111111000000001000111010100111101011111111111010010111010000001001101101100011110110101101101010001111011001110101111111001100010111011110101100011100111000010100000010010010111000011011100111111111100000001011001010011111110010100000010010100010111010110101011111011111111011011110010000011111010011101100001011101100010100000101000011000011010111101111110101100100111110000101010010000111010010000011110100110110111001111111000001000101110111101111001111110001000011110011010001100001110010001101100101011101100101100010010000011010001011011100011001000000110110111001101000111010110010100011011111110110110001101011101011100101111010001110010101010010011001101100010001101011010011000101000001000111011100001100111000010001110001111110011010110101010110101010010110110110011001001111100000010011101000111111011101100101100001111000111110011011111110100111010010010000001000000110110000011000011100100000001010001100000001101110000100111100010110110001010011111110001011101010000011010010111111101101011001001100101110111101111101011001011011100010011110001101010000001111100110000111011110011000010000010001011101011010011000000010101100000101101111101110110110000111000011000010011011001010101111000111100001111001100001100000110001110001000010000111110010000111010100100001110101111000100111110001001110111000001101011011011100100010100000101001110001000010010011000000000010010000110011111101101000110111010011000111101011100010110011010010100100100110011111101100110100001010101100111011010110110010110100000111001000111100100011000101101001000010111011101010011001100101111101101111101001000111001110111011001110100001000010001100001001110011110111011000110010001010111001111111000101010011110110111110101000111011101100001110011111100110001110101111110011000101101111010110110101110101101110001110110011001010011110110100100111001000010011111010001000010010100011111011101111010110110010101101000101110000100001111100110111010011110011110000100100101010111011001001111001110110001100010011101111111100110101000101001100101101100010100010110111111001101001100111110111000110101111000010011100110101111011111011111000100111001001100001101100101011011100001010010010000010100100110001011101000001000110100011100100111101111001011001101001011111111101110100001000000011011101000000000101010110100010011010111110111011100011110000011011011110110001101001010000110000111011111101110011011111010010111100101100110011101001111101001100011001100000111001110001101000011010100000000110111110010110110101010100011011011101101100000001000111000000110110001100011100001000111010001000111001001101100000101100110011100000101011110001100110001010110111101111101000100101101000000001011101101101011101101111011110000110100011101001001001101000100010111110011011001000011000--------------------- +01010010010111110000010100001010000111111101011001110101000010111010001011011011111011010101000100110100000001100110000111110110111011100011101010111111111110000100100111011100011101111100001000010011110100000011001100111110000001011001001000000110001101010110111011111110100010100001101111001100111100000101100000100100010110100011011010000101000110001010110001000110010111011100101110001000000001100111101110000010111111011011000101001110000010000001111000100011100111100000101110001100111000101100111110000100000110101010100101110000001100111001111101100001100100111110010000000010011101111101000101100111000111100000010011100110100110100100001000101000010000011001001011011010100011011101011001001010000000110001100000110011111011101000110001011000000110100100110101100010100000111100010000000010000011001101111000110100011101010001100000001111000110001111000111110011100001111010111100101111110010010111110111011101001001110100110000011010001111101110110010111111100001001011111110000010001000000000101010011110111010010000000100000110111101101111111110001110110110000111001110111101010011010110111111001010000100111100011100010010010010010011001011100100011101010111010110100001000000111011000011000101001101000010101011001011011010110011010110000110001110010010111001011101111101010100101000111101100101001100100110100110011000101000001101010110101100100110100011001000100100000001000100011001101101111110111101000011111011111001101101001110000100010101110101010000000111001001000110111011000101110110101100000100010010110111010101010110011100111011110100011100001110110101101101110000111011001000001111001101111010100010011111101111001010110011011011110001000110110001000101000100001001000111001100010000100101111101110000011101010100110100011000100101010001011011000111110001000011010001111001100101111001001111011000110100110000010000100100101001000110000111011011100001101011101000000010010110000011001000101110010010100101100011011000111010100010101110010101101101001100000101101101110010111011101000100110000001000110000111011000000111100011110101000100100101011001000100100011101010001111101010101111111011011110110110000101101010100010110000100101110101010111100010000001101000010000111011000011100110010001011010010011001011001110011010111101001001001110100111101101011000100001001100000111111010001010100111111100010001011000011010001111011111001101010010001000011100001011010111001110110011011101011110100111111100111100000101011010001100001000010101101110010101000000000101101011000000010100110000010100010111111111110001101101111001010110001101100111001011110011010111001101000001010110111010111111110111110001111111100111101001110110000101101010001111001111001111100000000101100010011111101001011110110010011011000100110011101110101101010100000101001001110011010100101101100000001001011101010000100010001110000101011001101000101100001001111001100000010010000101101100010111000100000111001001001001011111011011000001000000110010010000100100000111100000011011111011101011111011010010010101001011100001001011101111000001100110001101100100000100110111001111010111010110010001011111101110001110010110001011001001111011010111011110111001011001101111000011110010011110100001001000001011110011111010101110010111100011001010001110100001100101001001111010110000110001000010111101100111110110001001110010001111010010001001011100100100010100010011101100110011111111100000101100001010001001011110010100011101001101110101001000111000001000110110000110100111011001111101110011010011000101100010010111000110011110110110000110000011101010011101100101110111100010111111101111011000100001100001111111100010101111110011110010100010100001011001010111001001100111100110010001110011110000101011001110101101010110110011101110011011000101011010111001000110110101011100010001000010100110001111000111110111100100011000001001010000010100011111101000010010100101110111000000110011110001011000000000111010111110111111000100010100100011001110100100011101110010101110001010011000011110111001110100100111100000111110011101111001000100100100000110100001111110001000100001010110001001111111110110100110000010101110101111001000100110010001110111100100110001000101001011001110000110000110110000001101000111101010000101011111011001000111001001001001011110010101001101000000110110011100011110111000001101000110010001011011110100111100000001000111110010011010110001001101111101111101100110100010111111001111001011110110011001110101110000111111110101010000001001111101010101000010100100100000101011110000111111010100110000010101111100100101101010111010111010101111001001011010111110111111111011101000001101110010001100010110100001010010101011100011000111101010001010010101010001100011011011010010011100101011000101110000111011001000011000011000001001111101111110101011011001111101111010010000100110101010100010100000111000001101010010000111000101101011000111111001110111001010000110100101110101100011000100110110111111000110010--------------------- +10010100001001110001110000010111111000001110111011110000010110000111111000100000011110100101110111011010000111101010011111000001111110100001111110011001111100110101011011111110111110110001010010101001010000111100111101001010100010010110010101011010011001100100001000011101010010100000111111010101000101001011111000110010110111111001101101011110111010110111001110101101011100111011110011011010010000100011110001011001100110001000110111100101101010101100011011101100111001011110101010111111110101011000000001111000110101101001000110011010011001010010010110011111100101100001100100100101011011000101001110010010101110001000100001100010111011100111111100110010010001010011101110111101010101000101110001011110101100010001011010110101100110001101100000011100110010110111111001011011110011010100101001001111001101110101110011001010100110111110001000010011011011011110100000010110011001011111000100001010101110010111000101001011101011011010101011011101100010110101011011000010111011010010001001010000110101101101100010101110000101100100110000110000110100000101111011000010001110000001000000000111010011110100100011010000000101011100001010011100001110001110111100101010001011000111100100111100011000101000010100000001011001101010010111100101100010001010001101101001101001001001101001010100110010010011111100100010000010011010000010001011100001000010010110001010100100010100011010011110111011100111011011000011110001010000011110100111110100101000101101101010111011101111110111011100111010001101010110100100101100101111111000000000111111011011010100100000110011001101010100100011101011010010100000000111001010000110000101010000010100000110000001010001110011000100000011101110110010010101011111000101100111110010000110000111100011001010111110100100111000010010110011010001111011011001011101100000011001101111010101011110111110100100011011111101111111110110100101100100010011000001101101111001101111000110100001011101001110000101000001111011100011110001000011100111111010010101111000101100101100001100010001001111110010011010101011111101010111001111001000000010000000001011101101001011000100001010001000100011100110000111001011101010101000110000001110000101011101111100100000110100010001100010100110010100100001111110011011101010111000110111000000000011001100011010110011010110110000110000101111110011111000010111110101010111111011001011110101001111000000100011000100110111111011110101100011101010100100011101100010111111101001111001000010000001000111100111010100001100100000000100111100000011010000111110111000000110111101010111010101101101000100100100110101110011000101110101110010110100110010001110111101111010110111111011010000101001100001111101110011000000000110001011111111110010110010000010001000101111011011010001101010001010011100001010101011111111101001010101111000010001101001001000010111101111010110001000101010001100100111110000110001110101111010100111011100000111100010011001010110001110111010001010110000101000010111010000011100010000010001100011001111010101101010110111001111101001100101100110011010101001100101100101110010100001110111110110101011110000011000000111111101111000111100110101010101010111010110101001100000000110101111000111101111100000100111000010100111100011011011011101111101010000110101110101101111100100011011010000110100100011011100100110110000011101101001101101111001111101111101101000100110010110101001110000101000100011000001001011101101101111100110000010100101100000001111010000101110110100111111000000111010001111011000010110000011101010011111111011111101110011110011011000011111000100111101101001000100000101011100010001101001011100101000001000100010001100001100000111010110000111001011101111110011101001101010111111111101011100100101000010000000010111010110010000110010100110010100111111000100011100111011000111011011010111100100111110010101001010111000111100000100100010110111111111011000100001010111000111111000111011101010011000011001010100111111011011011100011101111101011000110010001011110110010100101110000000011101001110011000101011101110000100111010001000100001011001001100100111000111001010100110001001001001110010011101101100100110101101010100101011101000011010100000011111101001111110000100000110101011000000110000011000111100111111001111111001000001110001100001100000000001000001111001011010000000100111000010111111011010001011110011100011100001101010000111011010101110101101100101111101001110001111111010001010001111110010101100100010001111110100011111011010000111101001110010001110111101100000110000111100110010110000011000000110011000100011000111100000110111110111111000111100100011010000011011111111011101110011000011111011010110100110110001100110000001011100010000110110100000110100001110010111110100110110110111000011001001010000111101000101101100011100101110011011010101100001100110110000000000111110011101000101110101001100011001010110001001011101100010010011101001100110111110010010101011111110011100011001000010111000110110010011111001110110011101001011000--------------------- +ls224cwds +0011001110011010001111100000001110101110110100101011010000101111100110011100011011100100010100101101101110110100011011001100001011000010001010110110011111111001111101010110111101011101111111011011010011110110010010110110001111001011010110000101100010001100000111001001111110111011110111101101011010010100111001010000110011111100001101101111011010100111110111110100010000101101111010100011110011011010110100001111001100001011010011001011110000000101110101000101011101101100000110001010100110101010001000100100000010011111101110100110010011010101100101110111101011110111001110110100110110101101111111011011010001110111111110111101110011010101011001011011011100001000000111100010111000110100111101000001011000000100101100000011101000001001110101010011010001110001011111010000100101000110011011100111100000000111100100000001111000101110000011111101111100000110100100011000110011101010000000111000100101010000101101101001101000100001101001001111010111111100101011111001011010000100101110101100010011101111111101110101101110011010101000110011010011000110111100100011101010000001101111101101101001110111011111001010010100110110100011011010010001110000011011110000011110011111111110101000110011101001011011111010100001110000101101010000001000000010000111000101010001100100000010101110110011111101010000101000001011001001101011001001000000101111010001110010101010101001101110111110100100000111110011010111010000010000011000111000100100001100100011001011100100010000000000000001110011110110000110010010001010001000101010101101001111000001001001111011000001110001010010001000001000011001000000100111100010100111011010110010110000110101010110000011000100101110000000111010001101100111110101000100110110001000000011111000101100110101110010001111010010000000111011000101001100101011000111110111000010111110011100000110111010011101011110010010010111111111100110010011000001111010010110100100001110100011000110110101011011110101011000001111101100101011110101110100110011001010111011000000101011011000010000000000000111011001111010001011011001110010001010001001100111111000010100011000011110011010001111111011110000111010000100111110111011001110010111010010100100100101001110101110111010010110101101001111101010010110110000010010010011101110010100001100100100011000001000111010110100011011000111101111000001110101001001000000111000111110100011010111011101011011100101010011011110000111110010100111010010110100011000111111000011000011110101011010010011001100000011110011001011110010010111100101000000111100000000111010000011011011100101010001011101100110110010110000101001101110101001100011001111001110000011100111110000000010010001001101010010011100001110110111100001011110100110001101011011110000100000000010111010110100100101100100110100000110111001110101110010101000010010110000001000001100010111010110011000100000101010011010011100010000100101100001111001110101000001101010101101011010101110111001011010101110110101101100110011011101111010010111100011110110000010011100100001110101011000000111010101110000110011110101011101000011001011110011110010001010010000000000111101100001101110010110100101111011001011101010001101010110101011111100010000001010100111111101100110011110111100110101111010101000100100111111101000101101111010111000011001010001101110101010101000110110110111000101011110101100000110110011100110011011000001100000011100001011110110001100000011110111000010011110000001100010001110110110111101000111111001111011110001001110100000111000010110100010110010101101011101111110110110001101000001001101101101010111011001100010111000010101011010101010011110111011101101010011111010110100101011011101000101001010101010110011001110010100101001110111110101111011110010000100101101110100101011011101010110111000010010100010010010000111111100100001010111100110011101101100111000010110011100110000101111100010010011111110000101000101110001000111001111001000000011011110111000111011011000100110100100001111010111101100001111001110000110001001110101011101101011111101001001111101110000000010111011010111010111111100010100111010110010011111000011111110110110100111101000010000111011110011010111000110010011110011111101010001000101001000101101111000011100110001001011001001011101111111001011010110111011001000000100010111011111010010000000010100110100001011111101111110110000010010011000101010000000001111100001000010100001110110100011100110111001110010111101000001101101101110101000000110100000110000100001101000000001000100111010000101101111100111011010011111011001001101110---------------------00010111111010101001111111011011110001000111101100010000101001011001011000000100010101010000001110101110101011101011100111010011001011101100111110100010110001111010101111011101100010000001011000010101111110000010000111101111111011111011101000011000001011111111010101100100011000011000001010011010010000100000000001000110001010011000010001100101000000001100100110000101001001110011100011011100001011001000110001011101001101110010100000001110001011000100000010110101110110010101010011001000111100101100001000000011110001100011001001001001110001111001100110011001100010101010001001010010101000000110111101001100100010001000010011001101101000100000100000101100111101111110000111100101001101100010011001001111001101111001010110001011010110001001100111110001000111110001010001111011100101000000011100000000110111000001111000000100010000100100000001100100100010110111000010001010001011111001100111011101110011010010111011011111010111110101110000110110011111100010000111001001101111111000001000001001100011000011001101101001001000100011111101011000111001110110100110100000011001001000011001101011011101010011001001110111101001101101011101111001111110000101011110101101010111010101101101110011110011000110100110001101000101101000100001101001011001101001100101101111100011110101010100100000101101110000001110110100010111011010100001001100110111110011111100011100001011010111011100011100011001111010000111000101001101100100000010011001110011010101000000110110010110110001101110010001001011001000010001101010111100101010101001100000100010101010110001100111001101000110010110000101101001100011101001011100100001001100010100111010111110010110001011111000100101001000100100100111010101110000011101000001100000100100111011010111111011000100111011110001011100000010100010111000101101011100110111001010000110111001111101000100001011100000111011100001000100010100111100011000111000110110101000101001000110111001111011100010111011101110000100001001110110001110000001000010000010100010011100111100110001010011011000010101010111100001001101110110111100110011011111000000101000101000101110001011000101110010101111000000001011110111010111101000111101010011011101101111000101101011011100110000101111001001110101011110100001010000100011100001000011010001011100001101000000010010011111101100101101011101001000110000011100001101111010111001111100010011011110101111100010101000100100110011111010010101100000111110011110011111111000010011001000111100101000110101111011001010101101001001110000110000111001101011011101110101000110010011110010100101100011100111101010000011000001000100011111011111100010010000000000011100110001111110111011100011011110011111001010011001111000101011000010011011011110111001000010101011010111111011100101110001110111000110011000011111100111111100000000111001110100100011101011010011111001010001011100100100010001100100001101001001110100101100000101011000111111101010110010100011010001100111101110001100000110010011110010001001000101101001101101100011000011101010101001101100100001111100100101111100001101100011110000010011101100001110100000010001011000000001100011001110000011101100110110110100001011101100110011010011000000101000110010011100110001001101101100010111111111001000010101100111110011110100100100110001110100101101100001000100000010111011110101011111110001010101000000100001000111101011110000110011101000100110101100001110011111011000000100010101101011001001000101110011110001110100001110110111001101010011011110110111100101101110000101010001101011111001011011110111001000101111010100010001110001001111100000100111000001101100000110100101011011100011010100011100010000011010000100000001111110110000010001001111001100111101000000101110111011011001111011001101000011010001001110000001001010011100001110000110111110100001100010100000101111000001101010011000111100011110100101111001010110111100010011001001101100110011011011100011011101100101100111111101010011100111111001101100101110000100000010010111011110100111100110001011000011110100000100010001000111100010100111010000010111011000101001010101111001010000001010110001010000100100110100101110010001100010011000100010101010101010001101001011111010010000111010101001110000001011110101000001010111000100101100011010011111110111101000111110110100100000010110001001111000101111001111010010010111011001001010110001010110101101010001010111100010011000110001111111111010111010100111110100000001111101111011110010011100001010000100111010001110010110010001011001010000110011100011001110110000100001010110101100000010111010000000000001110001010101111010011001011011100000001111011111010011110110011010110110010100101010000001100101000001101001000101010111000110111101100011000111010111111010000001010011010011011010100100100011001010111111011101011011000100101110101011100011101011101110101111100111100011011001011000010010010010010100101000000001100100101010001011100000010000001111000100111011101001110101000011100100001110000111101000101001010011000110010111100101100000000011110011100100010011110110001011101011110111000011111001001111001000100111111010001011010000000000110010101001100011011011000111011011011101001101100011000111100010111000101110110000111010011000001100110010101000011001010010111001001101000001111110010011011101100101101110011011101101000101010011001000000011110111111111000100101101010110010010000100100100011011000101100011101100001100001010101111011001011101101011001100110110110110110011000011110101100111001111011110111110010000110000000110111110100001110011000101111110001000011111010100110101101011000010001000100001011101111110110010001010101101100010010000000010010100110011000101001101011010000101000000011010101100110001110100010110011000110011100111101110100011001010111110111101001111100000100001010001101110000100010000010111011110101100110100111001101101001111101000101100110110000100010000001101001001010010000010011001010111110011101110100011111101100010010100011100110110000100011010011110010001000101011100101111000111101110000010111011100011000100011000100100011010011011110001111001000110101101100010110101101000000101101001101110111000101001010111100100101100101110010111110111101011101111001000001000001010101001011101101111101011011100001110011011001100000001000001110110111000100100100111101011010001011010010101000101110100110111100111001000100111101010011110011101101110111101001100100110101001011001001000101101010011110110001001011001000110100111010111010111110111010111111011100000010000010000000010001011101101100010111110111110001001010110000000011101000100001010110011010110110101110000000100101110001011100010110100011101110100110110001111011000110100010011100111111000001001000001110111011010111010110110100001100001010011000100101110001011111111000001110110000001101011110010001110101010001010100000101100001111110010101001101010111101010000101010100011001011001110001010001101010110010001111011100101011011101111100000010110000100101101111101011101001001001001111000001000000011010110010111001000111001111101001010011100110000011111011110110001011110110001101100110111000101001100101001011111001001011101000111000101111010010011110000010111111100001101010000110011100100100011100101111100011110000011101111100101111100111101001111011101000011100000100000011110111111000011101001001101111010101101010100110000000010010011001000111100101101000100101110100001111100101110000100011000000100000111000101101000000110000011110110010001011100000110100101011111000001101011111000011111011110111010000100111111100101001111010101110000011100000010010010100010010010000011101100111011000011101010101010111010000001111101111100011000100100111010100101110010100001101101000001111011011001111111101100100010011010010100101010010100110001110001111010011100011101001111100000000001101101001100100111001000000010100000001101001111111011001001101001110000101100101001011001000000100110101011111000010000111001100000100100110011100000100100100110010111001010110011000010100001101010101010100001101011110110100100000111101110100110011001011100100111011100001111010000001110110100110100001010101000100110101010111011001100100011010011100100000001001111101010101000011101110000100100110010101111010000000110000001010110100110000010110100110100000011010111000010110010110100011100000010100101100011011011000101100111111100110101100001111101000101000010010001101110100000011101011110011111001101111001010101101010001100000100111110101001110100101000100011110011101000101010101100101110011100010000110101101100100111011111110110000010100001000101110101110101010101011010111000001010001111000010101100110010000000110111110101000111111110110111011100110011111011010101111110001101100110001111111111101000000011111110001010111000001111111100010110110000011000001100100110110110110111010001111111011110101101000001001011100011011000011110000001000111000000110011011110001011101001000011000100110101111011100101111010010110001001010000111000101111110101110101000101110000101001000010010100101000001101010100110100000111001100000001100010110000001100000100010101111100101100000001010100100110110001010100001101000100111100110000000010111000100011111010010111010111000100100001011001111010011001101000011000000101000111111111101011000010001011110101011111101001010000111110001010011100001110010010100000011000101101100000100011111001111011110100100111001111010111001010110001111101111001000010100001011100101000001011000000001000001100110110101110101111010100110001100001010000000011000101111001000010011111001100100110011101010001001011101011100011110001011011100110100000100100000111000101111111001101010100100110000001101100101000111001001111011110001111011111011100100000100101110100000011101101000001011101101110011011110100001101111011001100100000001100101101110101011110111101011100011110110010011000110010111001111001111001100010011101100100010011011000010101011101000010001011010010101010000010010011100101100101011110010011001100001001100011011010010011110000000111100111011001100001101100100100100001000101000011110111011111011100000001001001111000001010011001110011111111000111100100000100010001101000100000000111001010001001110101110011101011010001111001010101010010011001001011100001010101101001011000000010011011101111110001011110100011101100110100001010111001001010110001111100011111000100001111110001010010011111100111100010010110101110110011001001101100100000110011111000111010101100101011000011011110011100 +1000001011000101010001101001011100011100010100011100100000000011001100001001101000111110110100110110101111000110010010101000101110100000000110000001000001010000010110110111101100001001011010011001111010100011000000110000011001010010101001111011110100011100010110101010101010001111011011101101010000000001110011101111101000110011101110010111111111100101011000101001110001111101000100001101011001010000101101000000010110100000101101000110001110010101010001101101010110100101011101000110110011001101100010011110100101100100011100001010001110010001110111110100100001010110011100100010101010001001100011010010101101111000000011110110111000111011000001111000011100011100000101111001110001011111010011001110101101011000010100011010100000010000001001001011110011100101100100000001010000011100110000111010110011110011001110011011100101110010111101101001100110010101010100010110000000101011010011101110111110001101100110010000001001110100000110000100111011111100011000000000001111011010100010101001111101010101001001011011100101111111011110110011010110010011001011110001001011001010101010001110010000101010010001100110000010011110111110011110001011111101101000110101010101101111110011000101101010101101101010111110000110001010101000000100010101010001010001110011110110011101111000111111000011010000110111001001111110111100101110000011000100111100010111010101000001101011100010001110000001001000011000110000100010111100111101100010010000011111000000101001111001111001100011011010111101001110110010111111101001010100011111100110111110101001101101001011010110000100111111000100010111000000001101010110010100001100111111000101011100011010010000101111101010010100011000000010011110011000001011001011011111011101100001101111110011111110011011000111110000101100101101100011011011110111001010001110101010000110110100101100010101010000111001100001001111010101111001000110111101110100011000110011111011001100011010110111101001101111111001001001011111011100101101001110110100001000000111001100111100111001010110011010011010011011000011111100100011010010000001100100000111101011110011101001100100001011010000011010011111001110101110111000001010001010010000001101011110101111100010111010100101100101010010101110110100101000101110010111000000110000101010110010010100100111101010000101011010011110001101011001110011011111100110000000001100010100100001110111000101101001100010001110011011101110100110001011011000101100101111010000001111110101010101001011011110101011111100011111001001101101111011101010001011111011111101100001101000010001111011110100011101100100000011010001011101110110010000000110011101110010101001111111010011000000000001000100011110011110111001101100111000110001111100000000100101100100010011011010011011000010000101010101110110010100111001010011101100000011100110010000010111000101100110100010110111111101101000010111000101101000111001010001000101001111001100100010101011010101001010101010011001010111000001010001100111010000001110110110000101001100010100011000001010010101011010000111111110101101100000010101100100101001111110100101010101011110000010011101110101000101000101001111000010111001101101110111011011100111101010000110011000001001010110000011101101010100111010101110011010100101011010101000100011111110101101101110011000111000010010110111001110011110011101100110010000111001101111100101101101100010110110001101010101010011111100101101011110100011101001000001001110010100010010010011010101011001010111010000000000110100000001111000110111100010110100000110001000100101101011001010010110001010111010000110101001100010010110011011010001110110101010111100101010001001001101101000010011001111100011000011100111010101011010110011100101000001010001111110100100101101110001100110001011010100101000100111111111010111000000100001010110100100011001011111011101001111101111011011011101011010000111101000011010101010000010010000001110101101100000000111101101110100101001111011111111000110110001100110001111110001101001001000000100110001000001001011101000010101111100001110110010101011111100110000000111000000110101000100111010110001010111010111111111000011100000111110101011011011011111110001010000100011001101010110010000110110001101010010001000101100000000100010011111010010011100100001100101100010100100011000110000100101100001110111101011000100101001101001011000010011001101110110001011011101011011001100101001101010111010111000110101110010101100001000000011110000010010110110011111000011100001000110001011001011011110001010111111010110010010001011111100111010010---------------------01100011001001110010110011001111101111110010010101001101111010111010000100010111101100011001001001011100111001101111110011001100110000011110000110001010000011100010111010000011000000111101001010110011101001011011011011000010111001011010001011111101001110011010111000010010000100110111111000110011111001000101101011011001010111000011101101101111101101101111110101010010010010010101000100010010000010100000110110000001011110111011011011000101111011100101000110111101110110011110111000101010001011001001111100110010010001001100100111101011110110001011001111011111001110100001010010011100001100001011110110001110001111110101100101001100111101111100111001111001100010000110100001000111000101110011000000011010111111010011100111111001110111001110001001011101100010101111100111011010101001001000100101100110100000101000111011010000001001100100111001011111011110001000000111000111111010010001101000011100001011100001001101100010011011110110011110111111010000010010101111101011100000010101101010011011001110010110100111110010100100010100000101001110000110110001100101010010011001111100101110100110111101010110101010011000010110000010010001100101101011000000001010001011110001110100001110100101111101000101001101111101111011101000000111110110100110001101000101000010111110011111100110001100000001100101011000110101010000101101001010101000101010000011001001111011011110111111011000010011111100101111100001011110111110100100111000011110111000011000001101000111110110010100011000010110111000010000110110010000111100011100101111110000011000110110000000110001000101010101001101010101001111011101110100011111100101010000101000101100100111111110101100010110001101101111010100010000110101000011001010000010000010100000101110010011100110001110010101100110100110101111010011001101000001110110110100110101111110010011101000000111110000010100011011001110110011000000110001110000011010001100010101100111111011100111010001100100000111000100110101011001110000010001100111100000010001101111000001010111001000011100010011000010000101000111001101110011010000001110000110000101000001000011011011111001100101100010001101101001110011010101111001111001101001111000100011100100011111011001000000010011011110110101010011101000001100110101110100011000101110010111111000001100110001010101100101000001100100011111001101100101000001000100111011111000001111011110110101010011101001010010110111000010101001010000110100010100100111111101111000110001010011000011001111010100110011100011000010010000011101110011011000111001110111110100010011110110011011010010010011001010001101000001000111000111000011001010001001100100000111110011000111110100011000110100000110111000111110110000001010111001100111111011000100111111111101110111110001110101011011111010000111100010011101111100000110100100000000111111111101111000101001111110001001001010000111101000101011000100100000111110111110010101000000111001001101011111111110011000010100010111011010101101000111011001001000001100110000011111010010100001100011111110101011111011000010000001000111010101101000101101010110001111101111111101110111010000111000000110110100010110001110010111010110001001110101110101000101011011110000010011000000000100001011011010101110001011111100000001110011101011111111001000000101101011101000010001000000111110101000101111110101111000100000001110010111101100111111000011000100100101111001001000011001111111011010110001010110110010101001110010100001110001000000010011000001101010100011000000100100000110010101101100011110000011011010011110011001010110110001011010001010010010110101000010010001100100010001000100010100011011011101010101011110010010010100100011000110011101010100011110001010011000001101111101001111011100100000101110010111100000011010000011101010111011100010010100000001110010001000011001100100010010010111001111011001101011001011111001001110100110111000000100010110011000111100111100011010011011000001011010100100010100100001010010111000011111011101011011010000111000111010010001001000011010100010011110101010101010001111110111101000010110001011000011100001111110110001101000011100011110000000011100100110100001000100000100000111010111011000011100100101100010010010111100111000011011110010000111111010110001111001010000111001110111001011100100101010101000101110100101010101011011101101101011011100001010111000101111100110000010010010011101010010000011100111100010110100111100001101010100000101111010001111011100000001001110100111110110011100010011001001110000100100011001010100111110011110100000111001000011000010100111000010011000110011110011100011011010100100100010100001010011111011111111000101001100000110110010011101101100100100000101010110011100110010000000001010111001001100100010111100111011000111000110100000111010111010110010000010110010001001100101000111000000101001111110100100101111000000100110001100101100001111110100111101001001001000011100110011111011111011000011010111011010001111001011111101101001101110011111011100100011110011001011000010111110111000000100010001110001001101001001010001111011000001000111010010101011010011111110101011010111010011000000110101100101001000111100110101000000111001101110010010010111000001011101001110011101100100110101110101011011010010000100110011011011101010100100001100001100101111001111001001100111101001011001001011111010110010001001110011000111110000001011111001001101001111101000000101110011100011010100100011010100101101101101100110010100110110000111110101010101000000110010111110111110110001010001110101101100110001111010001010100010100100111101010110111101000000110111110001111011100001010110101000000011010111100111011111100111100000010010000111100001110001101111100011101010000100001101001010100111111101001011000011010101110000111011001101111011010011110000001011001111101100110110010010000101101111111001110100110011001011100010001011000101111010100101011101011000100101000001011101110000110100100100100011111001100101000111101001010100010011010011000100010100101010100001111101001111000100100010001100110000000000111111101000010010011000010010111111111111010110101110001001000011111011000101101011100011110110000011110001100011110010001011010100010100011111111000010000000100110100000001111001000001000101111010001111011001001110111000000011001111011110100110110101100111111101000011000001110000111111100000111001100110110111010101010000000100101010111001000100000111001010001010100101111100110100001010000000110111011101100101111111111011011101100000010111001010001111101010010100000001000010011000100011001000101101001010001011101110001001111100101100111110111101000111000001101110010010010000101000110110011101100001000100001011100100100110000001111100111000011111001101011110100100010000000010100110111110111100111110011100010011101001000101001110101101000111011101011100110100010100111000101111111100010001111110111110000000010011010011010010011100110111110000100001101001011110110110101111011000111100011001110101010111011111011110001111100000000100010111011101011010000111110011000101010001110111111010011011111101111011001101010010001110110001011001011100110001111100011011110101010110111101101101100001111100011101011101001111110111011101100010101111100110010011011111101001110110011000000011110101010000011001000101110010101010111101000100001100100111100110101110101001000111011010100011100110011010000010101000000111001000110100110100101010111010010110011001101101001110001111111011001010100001001110101010100110010001000011100001111011011101001001011001100100100010111011111101110001101110011001110101110101110000000010110101101110101110101011000011110110110010110111110010101000001001010001001011001011111011010000011100110110001111011101000110110011011001010110100111110000100110011010001011111101001011111100111000110100001001010001000100111110010111010100011111101010110000000111111110110000110101110101011110100001110110011101010110001100010111011110011110011110011011010011111010000100001010100000100101010011110011101101100110101101100101111111011111110100001110100000000011011011000010000101010000000111000011111100000011001101010010000101111011100100010111000010010001101100110110001001010000011000101000011001001111001101000101100000110001111001110001000011110111100000100101100101001001111001101100010001110011010110100000001011000110111011011111001011001011000110000111011000010100100001011011100011000110100100101000010011110010001111111100100111011000011011100100110101100111000001111010010000010111011000011101000110100001110011001001010000100100101001001100011011111010011110111111101101001110011000111110111000100101000011010011000110011111000111000000010110110101011010001011001110010100000101011010100110100101111011010100111110001100101100000000101101100001001110011111111101010001001111111001010001000111100101001011010111010110001110011011111001100000010101100111111010011011111011100011010101000110101110110110011100110001110011011101111000010001101100100101111001100011111110100011011111010101100110110100101111110011010000101101101100111111011001101000000011010100110110011101011001011010000001101010101001011011101000100110010110100101001100101000000001100110111110100111101011000100101010001110010010100111111000010111000111101001001111000100011011101001000001110011101001000001010000010110111100000001010010110111111101101001011011110111110100101100010110111011001011011100000001100100001101111011001011001001001111000011010110001000100001100000010000001110011011011000100100010100101101000011011010001111011110011101101000101011011111110001100010100001110011001110100111100000100100111101011000000001001001010000011111101110011000111110001111110110101101011000000011100010110000000000111001111011010001100101101101111000010000110100011100001010111110100111010011100011111001110001110101101100000111001110010011111010111101000010000110000100000100011011100100111000011010100001101011010011111010001001111100011101010101011100101100110001111111101001100101110100111000011010000000010101111101000000000011001001110111101110101011000110010101001011100010001011100111111000111111111001000111001010100001001001111101111001000110110110101010011000011010101010010010100000000001101100000100111111101111100010001110100110101101110110101101101100101101111011010010110111100111110001111110001011001110001100100101011010101011100001001011000001011101000110001000111110110100010100101110000011100011001100111001011111100100011111010100100010011010000101101010001100100011 +0000000110000000010100000001100010100111101011011110010011010000010010011101001101100000101100110001101010101100001111011110111000100111001011100011101101000111011110100011001101101000000101011011000001010000001111001100011001111010010111001011110110101101101110111001101001001111100100110111100010000100111101111010010010100100100101011111001101011000011111010110110100111001010001110111011010111000010001011110110100100100011010101001010011110011100001001110010001000001111001110110101101110100010000110000001111110000111100111010000000100010100011011010000011000111001101001100111110101100101010001100001000001100101001100101111101100010000110101110010110011101100010110001101100011100010011101010111010001001100101111011000010101101011011110110100101000111110010000000000011010111011010000010010100000100010110001010100100110000000011110110100010010111011010101011011101111011111111110011110000101011010110111011110001100111110011111011111111101011110100000000100011011100010100010111000010100100111111001111011010001100000010011101111011010000010101011010101110011100110101101101001010100101010010111000111011100100001101001100110111100111110111100111010011010010101011010111011010101010101111011010011000010111011001100010001011001111101101010110111100111110010101110011100100011101110100101001000011111111010101100101011011110110010011010000111011011010111001000111110100011011010000000110110100110100100000100000011011111001100101011110111110111110011110000000000010111100111111000100001011101001010000111000100101110010011010111110001110111101100100101001111011001000110100011110111101111001011011100001101101101001110011011101000101101100001100001011111010000011001111010011010101001100111110001001001110001010001111000101011101011011010000101100111101100110011011100010001100100011110011111001111011111000011101111111011011010010110111100110000000000000011001001100111010000101110101101000001100000011100001111000110011110010010000110101000011110110111110111110010011011100110010111110011110011110001100101000001001000110101011100100111110101010000011010000000001111001101101101001111000100011010111100101001100101111011110010001100100100001010001100101110111100011101000110011010000011000110110111010001110011000101001011011010110100010001111011111010100001101111110000101100000010010100110110000101100110111001101001010100100101000010011101100100010000000010111110001000110101110100110000110100111000111110110011100001100010011101111001101110011010100111011110010011011110010110101111011111100001001101100001111000001111010101000101111011010111110100000011000100010001110011111100001101110110110100011011000101001100101010010101010001111110001111000011100100100101001100011000111000110010100111010000011011010101000000011010110010010001100100101101110011000110110000000100111101100010100000010110000011101111110100111000100110001000111111111001011001110101011101110011101011001010000011111010101100000010000010111100100111000111001110000101000001110001101110100000010000100010101111100010101011001011100110110011000100001111000101111011101100001011011100110000011111100001011010101110010110001100101110001111000101000111111110010111011100011101111000111011101111101111101101000110000001110101000100110101001101000111010000110100110100000001000010100001000111010110100001010011011100110100101010101000001110110001000011110000101011001110011110001110011011010111100111100001011110001101100010011101100100100100111110000110011111001011111010100101101011000100011001000111000000110100100110011000011011010000100000100000110101000001100110010110010011000001100001111101110100000101100001101111010000101011101110011101100101110011111111111101101010100111110011101010111100010001101100101111010110001101100010110100111101011101100011111011001010001000101000010101100000110001110001010011011000001001110110100100010100110111001110011110010101010000100100111010001001110001010001110111110111101101100111011000000000010011100101110011011111011001101100000110110001011111101011111111100110101011111000011000111001000111011011001100011000101111001010001110110100101111100110000001011010111110110010011001000010110100110101100110000000111000001001111110110110000001010001101101001110000110001010011111100100011100101110001011010001110001011100111010010000110010100000101011001111110100100111111011110110000100010011001101100000101000110001000001010110110101000010000100111110101101001011101000110011000111001110001000001000011000101111010110000101101010011000---------------------11001011000001011101101000010101100100101010111101011000011100110010001010110100001110010011110000010101011010001001111011111011111000001011101011000101001101000011010110110101101000100000110000110000101101110100011101000111001110001110111111010100100000111100110001111111010101011101110111111100000110001001000001110110100101001001010111110101100110101111100000010101101110011111000011010110000000110100001111010100000011000000100001000010100011001001010101100000110001101110000010101100010100001001000111000000111000001011000001111111011011100100100001010111001111100110010101111011110000110001100001010111110001100001011000001010100001001011001101101101001101001100100010010001010011001000011011101011010101001110010011100101100111010101001001001010111000111011010001110010000010010011100010011101010100101100111110011101001000110100110111000100111011110111110000000100011011001001001001010001000101001000011111001111111001110101101001001011111101111101110111111001101011011111011000100101110100011111111000011000111010110011010000001110001011000100001011000101100000011001011100111111001101110010111011001111000000001010000000100111101010001011001110000001100110000000000001010101111001001110001101010100000000011100000000111101010111011001101111111010110100110111011000111100110100011110110110000001110011011011111011100010110011001100010100010110101100001110111111000110100010001000100010101000001100001111101101011010010011010110111111001101000000010100010100000011101011100101100111001001100000000110011010100010000110100111111001001011101001101011000010111011110001111100000001110100011100100111100011100000100010000010011101001011001101001010010011101111101000111100011011010000100110010010111001001011100000110101111011001100001101100011111110001101110100000111110010000111101001001100010001111111011000010111001100111001001010111110010110101110101101100100101101001100010010011110011110101011000111010111101100101100011010000110010111100110101111110001011110001000100011111000011011000000111111110101100011000011010100101001000000100001100011000001011001000101001111001010111111111100110111100010100000101101110000011111001100000001110111000100011100101110101000011010011000000101010100101101101010100101111001110111111110110001100011011101111111111000101000001111000000011010110111000010101010011000100111000100111100110100100001000110001010000001110100010010010010101000110000000000001111011010100111011110111001000101011111111011001000011100101100100110111001010100110110011000100011111000101010011010011001001000000111001110010101110100111101000001111100000001001111011010100001011110010010001101100010111111110010110110101000000010000000001101101010010011110111010011001110001101001000110100111101101010011111000110011011000110000110100010011011000111100101011001110001111010110101100000100000101001110010111000111111111000001001101100001100111110011011111011111110100010000100011011001100000001000100011111011110000010101100011111011101110111111010100101010111101110011011000101101010000110000001101100000001111010010110111110100100010111111001101001101111001100111011001111101100001011000111111110100101010000010110011010010110100110110111100101010111110110001100100001010001000111011111110111010110000000000100011010100110001100111100110010100001111100111100000111001000111001111011000010000001100101110011110000011011010101000001011100010111011110001000101110001000100101010001100010100111011010011001110101100100110010111101010010001111100110101000111000100011011111001010001111001011101110000101011001010110001111011100011101110000101000011011111001100010111010100110100010101011101101100000100001011000010000010010101111111011001110010011111000111000100101001110101010110010001011011111100011101010010011010010110110111100110010110011001011100111110100000110111001110111100110101000011001001110011110100011011010011010110101000011100001000010110000000100001011001110110100001000010101100001000110110000010001111101101111001111100110001111110101110000110101101101001000110001010011100010110111111110010011100011111110001000011110100011001000010010100010010100100001111011101111110100100010110100101010100100111010011010010101001110010100111101100011001000011000000010000010100011111011101010000111011100100000000011011111101111100000011100000110010100101011001001101000001101100100011101010000101110000101001001110111101011011111010100111111000110111101111000111000101111100000001001100111011101100111000100111111110010011101000001101100111100100010010000110010101010011010100001111001101100011001000111011111101001110001110110110000000000011110110011010100001110011100110100101110100111011111100110101110100010100100011011011001100101011101001100000100011000011001100000010111111010110101010011000001111001010100111111001010101011000101001110011100110010000110100010100001000110101111111000111001000100011000000000011100000110111010110010001111010110011111000011100101100010110111111011011110110010010011010111111011011000101101000101010101100111000011100111010110011011011000100111001011000011100010100001011111111101111001011011100100110111010010001100100110011100010001100101011000011111111000011110010000111001101101000100110101000111101111111110000001011011110010100111110110111011110110110101111101010110100111111101100101010101011110001110000001111010010000010000101110100000100011000100100010101010001001010101110100111110010011110000011001110011011001110100011001101100100111001101111010110111010101100111101110100101110101101111100101011110100000111110100011110111100010101011110101000110111000111111101111101010100011101001011110000010000110001010010100011101100101011011100010111101101000100110001100011100110001011001001101000111011100110110001111110111010011100010101101001010111000100111111100000000010011000011011101101011100001001000100010001011101100001111010011010011111111100011111100000100111011110111000000111010100001000111111001000110010011111011100101001100101111011110001011110010111110011111100100101100010011001010010001111011100010111110011011111100101010101100101110001001101111010010010100110011001000011100100001010110101110010011010110011001110000110100110001011100000111011001011101100100110101010110110101110110001001001000111111111010101010011110010011101100001110000010000101010000000001010011111110010011000111101010010101111010101110100010111111011011010001111110010111111110101000110101011011011100101101110111001001000010001111110001010111011110010000001000101111011010111011110101100011011000011011111010000011011011110111011000001011010000111001110101001110101000101101101010110001100000000100001010000101010010000010000111010011010101001101101101111010001000001101101100110100011101011100111001101111000100011001001010111101111001101001011000000110000110001000000010001101010010000101000001111000000101101101101011010100010011010011010001101110000101001011011001001111010010001100100001110000111111011000011101010100100011010110000110000010001111100011111110011111101101010101000010111010100010110011101110011010100000010100100110010010101101110110101000001011101010010101111000000011101010101011000101110010101110101111001000011001111000110011010101111010001100011100101000000100110110100011101010011111111011111100101101011110101010001010110001111000110110100000101001110101001010110111101000011100001000010000011101001000110110100100100110011001001000110110111010101111111001001000010011001101010001001001101100011011101111000000001111000110100000000100101100010000000110100111010001110100001111000001110001111001001000110010001000101101110110100100101010010011110101110100101011010010110010000001001100111110101100000000001011010011010110001001111111111010111011011001001010000111011010000101110110000101010100001011000111010011110011010100010011101010010111101111100001010111110011110101101000110010100011001111011100011010010000100100010100011011100100001101010011001111100110100000110000000011101101111011100110101100010001110010110110000111010001100111110100101100001101110001101111111111001010001111110111010010111111101110100111010001011110001011010000010001101011011011011000001001001110110110011001110110000010000100100010011100110010111010000101111001101000101010001110010101100100100100111000100100010000101111110011110000101101100011011010010000011100100110100000101001010100010111111111101000001101110010111010111001101110000110110000011011010111111011011001111001011110000111000001111101000010001001011101000000110111010000111110010110110011010111101101000110010111011001110000101111100110011000110000100000101000111000101010111100101110010011010101001011001111011001011011101001000110001010100010111111100110111010001011100011101111111010111000011111000000111110110010010001101101111110111110000111110110001111011000010011100010010000000011010011000010011101110011101000000010100011001100100011001001111100011100010010100010100111101010010010110010111101010110101100101010000110010001101010111001101010110010110100011110010011101101010101011011011111000100110001001100110100100010011000010011010110100110000110000111010001111100010111110000001001111101100011000111011000011011111110110110000001110110111110100000100011111001010000000101010110111111001001111111000100111100111110100100000111000001010000101111111101011010111111110111001000011001010000100001001001110100001010011110101011100011110000001000000000010001110010100001010101011110110001001010101111110001101111101011111011110111110010110000101001101001000100010110110110101100010111111101100010011111001010001001011011011010001001110111010001101110110001011110100110100100110100010001000111110110101000100100110001011110110111011101111100001000000000110010001001010110110010100000111010010100011111110110001000111110010111010110110111010110111001010100010001100000101010110111000111001001100110010010010000011111001010000000100011000110011111100110000010010110010011011001111000000100100100111111000010001011000111100000010011111000100100111101111010011000011101001111011011011001010011000101011110010111111011111100101100001111010000100010101011001101110101100110100111000111111111110010001010100000110011101100100011111110111111000011000010111111001111100000100010010010010000001110010010110011100000010000111101001110111011001011111101011011101001110101001011010010111100010011111100001011001101100010111101110001100100101110011000100010011101001001101100 +1111001100000010001000000001001001010010111000110011110000001010010000101000001010011010011001000011011111000101000010000001001111000111000011110000101001001011111101001110001110110101100001010011001000101001111010110010010010011011010011100000000010000001100001011001110010101011110100000111111100010011110011111000011100110100011010010110001100110001100101010010111010100001010000001000001111011101100011100010010101100101100011110100110101111111010100011011111001110110010101000011100000100100110001011011101001101100001000010111110001110110110101000111001111010000000011100010000110000110010111101111010111011110010000001111010000000001000000011111011011100101000001111001010110111010011000100010100011001010011000011100101001101010101101111010111101010111100110011010110110011101001000000111111110001100111010000010001000000101110000011100011010100000000100001101000101011001000110001010101010011001101100010111001111011000110010101101010100101000111111001100000100101111101011110111011111010101101101001111110000010111111000111101011100110100111101111001000011010100010110100010001100000010011010110010111101010111010100000011000101111000001000011111110001100011101000100000101001001010001110001000110001101010001110011000100001011011101001101111001010110001101110110110101111111110001100101111111000000001001001000101110000101110001100010100001100000000110001011110010010001110101101010011111010000001010001010001000100010111010000101100011100001000011101001100001101010001011110001101111100001001001100011000000000000111110110100101101111011011001111011110011100101000111000101110110010100000010111101000100110101000100011110111101001101011100011000100011001111110000111110010100110010001100010110000010100111001101000101001111011000111011110101001000100101101100010000011111110010011111001011100001010011110010011111100100111110011000101100101011111000010100101100000100110010010101101001000111000000000101101101001010010101100111011111111010011011101010111101111110010000111000000011110100110101010010110010110111000011110100100111101110011110111001011110010010000111010101100111101001011001111000000011110010100111000101011000100000110001100011111010011110010111100110000011010111110000010101110111100011001011001001101001000001001110100011111001010101101110101101001010001011000001100111010110000001011001001111110101101000001111010101001101100000100110011111111001000010010110100101001001111111100000000000101111100000010011000101110111111110000011010011110001001010001010111110101010000100111001000110101100111100000100100101100110110011110011001100101000011010100001011011001010001001000101100101000001011001101000111110000011010111110101000101001010010110001101111010011110110110010001010010011101011000101001010001101001000011011000110010011001000100101000010101010110011010001111011010101011000100000010110001010000000000100010110001101111110101001011001001101001001010111101000100110100100111100101011101011111101011001001011001001010100011110111111110101100011010100011000101010101101100110001111001011100000010110111001000001011010010001001100011010110011101011111100011010011100000111001100110110111011011000011001011000000111110111000000010000000011100110110011010101101100111100010101100000000110101011100100001010000100001101100101111100001100101100001111001111100000010010111000001010111101001010111110111101101011001101000010000000111011000111011100111001111111010001011111101000111000011110101001011011001000001100101011100101011101001111000101011010111001010011100001101101011110011011000110000000111011011101010010001100101101011000101110110011111100101111001111001011101011011111000010111001010100001100000000100111011010000011110010011101110010011101011111000110110110111101000101001100111001110010001101010010100010101001111100110010101000100001101110111110001101011010101111011100000111001000111100111010000000010001101000110101001001011010011100101001010000110001111100111101001110111000101010100010110101010000011111111111100110011010100000001011000110001001111110000111010110100111011101101101001010000011100011110001100100001110010110101001101001000001111011110010101100011110100001010100000000001010100000010110000011110010011011011111111010101011001111010011000001000001010011000100100010001111100110001011011000100111110010010000100111110010101001100000100011100110000110101011100001100100100110101110001101111000100111010001110000010111111110010101100000001110111111101001010010110001001100110010100011000000011000000---------------------10011101110010100010110011001100101110001011001001101001011001101111010111010010111010000010100101001000100000111110101100011111110111011001110110011111010000100110111011001010010000001110100011000110011001011001001001100111101000010111111111000000110111101010011000100101101111101000101010101010110000111001110100100000000000001101101010100100000100000111111100100111000001001001111111111100010100110011110010010000010101011100000111100000101100111010101110011001101111100100111100010000000011000001100101110000010101000100011010011111110000110001010000000010001100010010110111110001101000011101101010101110010100010110010000010011011011000100011011111101011100010101011100101001111001110100100000100111010000100101000000011110110100101001001111000101101011010001100101010110010100011001111111110100100010000000101101000100010111010111011100101110010100100101101100000011010111101101001111110011000111110000100011100010010010011110001101101010101110011000010010101100101010010001001001010001100001111100110010101011100100011110111010011011111011000000011111111101010001010011000110000001000010110011011110101000001101101101011011111000011100001110000100100010101111111101001101000011100010101100100101101111000000000111100000010111110000100110010111000101100000100100100100101000010110010100111110110101000101101100101000100101101101111000101110100110111011100111001000001100001101110111110000101011010010100000110000011100011111011110100001001110011110011100001100001001010001011100000001101111111100010100111100111000000100110111001101110001110101011110011100001010100110010110110101001011101001000011111011111101011100000000001011011100100001110011011101011010101100001000101111110010010100100100110000000000011001100010110111100101110010100000010000111110110101010101010010001001011111001100110110100100010101000001111111010010101101010101111010110000001010100101110010001001011001110000010001100110010100100110100010000001000101010001111101101000010100100100001100001111011100100101011100000010000111011000000001111001011111101101101000111110111100111000100001101110111010100101101000110110010111100000001010000100110010100110111000101101110111110101101100100001110001111001101010110111010010000010110100101100000001110001110100111101100101011000100011011101011100101010101011011000100001011110111111101100001000110111001010001101010111010110100110110011100111010101000001110001110011100001110101011001000011001101011000000100110110001101111111111111100110001010011110001001110110100100101100001001011001011011110000101011111011011101000101001000101010011000001011010011011010000111100011100000110111110110011011011001100010010000010001111101110000100100000001111001100011010100100100100001100110110111011000001111000010101011111111000000001101101101001011110111110101010100100101110110010001101000000011011000111000001001011101110111001110100101100111011110011001001110010010001010111001110100111011101110100011111010000101010100110100110000010101110001011111101000101111000011111110110000100011011010111001000010111000011101011001001110001111011001011011100100011000100111010111100011000010000001011000001110110111000100110101000001000111101100111111100011100011001100001001110111100110101001000000010011000101010011011001010001010100110010000001011100000001011101111010100111010010000101011001110011010001101101010101111011011101111111010110011110010110000110001111111001011011010111001011000000001001111011000100001011001111010110101010001001010000010111011001000001000110010110101100000110100001111111100010011001000010100010001101010111010011000000000000100100000000100111010010110010101001010010100011110001011101100101101001011000100010111100010100110111001110010110000000101010010000011101100011101001110000110010101110100111011000111101111011011101101110110000000000000101001110101111010001110110001111011100001101101111000100011010000010100101110101111010110111000101101101101101010101000110000011001100001000000000101001100010101011110011100010111100111101101100111011101111111000100101110111000010100110010101011111111111010010001010111011011000101110101110010001010101101010100011100110101011101011111100111000001100001001100000010011100100110010000000000010111010001110111011001100101110000010001111101111001010010110000011010110000011100000110111000011001100011111010101110101111011110101100000010011101101100110101110110011111101011110011110010110001010001000110000101011001111101100101101010011110100110101100010110011000110111111000111110110001000011010001101110100110100111001011100010101110000101111011101000101100101001101100001001100110011001000110110010111010101001110111110010010011001101110110000101110000111011010011110000101010010011101010110010100111100000000001110100110011101000001010110100100110101000101010111111010010101010110111111000000110101111110010000111001000110111010011011110101011100111001010100110000011110100110001101100011010000110101010101101111110100110111111101011010001100010011100100110101100011010000011111110111000011011101000011010010011000100101111110010011100101111100100011100010111101000111001000000001011110001110011110010111000000110111000010001111000011011110011011101111111000000100111100100010010100100110100011101101101101011111010010110010110111101011000011000101001110010001000000111101101000011101111101010011101100010011110110111010110000000000010000100101011111011110000100011000111101001100110101100011000100000111100100100110011100000100010100100001010000100010011001010011100000011011000100010110000101111011010110000001100111111101101001110001110110111011000101101100011100110010101001100000011010010001001111110000000110000000101110110110000101111000011111001000110100011000000010111110001110000101001011110010101010000001011101011111000111100110011100101111100100100001100010111010111001010111101110011101111101001000111111000000001110010100010001101110110010110100000111010011011110110011001101100101011001110100100011110010000001101010000101010011011110110011011000011101001100001110011011101100010010101101101110011011001010101111111111011110000001100001101111101110010000001100011111011110000010011110101011110001101000111100101100001111111001110100100001100011001000000101101011011101010110011101110111001001010111111100110000011110001000110110100101100001101011000101110010000110100001011111100110101101000110001110001101111001111010101001010100110100111100010010111101100001010110010111111011111111110000011100100000001010001000000111000101111100011100111001110000111011000000010010110110111010000101111111001010100000100110011010011011101011110000001000000100000010011100111101000110001110110100011010101010000101111010001101010111110111111110011010001111000101111101011010100011101100010001001010000111011011010000101110110001011000101100101001101100000100001001001100010001100111010011000100111110100101001111100110000100111101110011110101100000111011010111000010010111111110000011110000110010001000101010001110101010001111111010100110001000100111000111001011000110010110010100001110101111000010011001110100110110100011110010110010101010101111001011010001100100100001011110101001101011101011100110001110001100100101010010010001100000100101001010111011110011110111000000111111110110111100000010100001100110101110001100100000111000001100000011100101111010011101001101010010110100101101111000011000110010111100110001001001101100110110100000101101001011110100110001110111001001111010100110011100000100011010100010110000010011001001111001100111001011010110110100011111011100000101000100111011101010111010100011010101101011111100001110100001011010010111000111100111000000110011100001000010001100011101110001111000101101110100110001110000100010110011100101110010101111001101111010110100100010010111000101100101110100010010100101100010010001110010111110110100011011100000010111111011101001010011001010011001101111111110100000100011001110010100110010010111111000101001011000011000111011010001100110011000011011101100111010110100100010101110000110011111110101111111000000101101000111101111010011000111100111001000001100000111010001100000010000001001100110100010001001100100011110011100111110000101010100110100110110101111011111000011010010110100100000001010001111111110001011001100011101111000001010000010101011110101110110100001011000000110000010010011111011110111100100010100100010101010101100111010111001111001101110101011111011000110111010011100101010000000111101011010010111011010011001010000100101010111000011011101100101001000101101100111100001010101110101111111100010000100100011010101100110011110100100100100111001101111100001100011001001010000101000111010011110111010011001101000100001001111100001111110001111110101000100000101010110101001010001001111000110011111001110000010100001101110001100101011000001000111100101101110011111000101001111010101110100001000010011111100000100001101000101111001100001001011001101000000000001010111110100101100111000101110010100011011111101101010001111100011000101001110011100001000011101100110110101111011100011101111111011110110101011101001110110111100001110010110010110100100100001001011101111100010000010111000101110110110000001001110101000000000001100001100011110000100011101110000101010110000100101010110110111001110000010001011010111010010011110111111110011011011100010011001000011100011101110010010010010101011111111100000010010101110011111010001001001010101001001000001111011111101011000010100111101111101100111101101001011000010111111001011110111010111010101010011110010010001011001001111001001110001100110000101111000100100110101001110000010101010111100101110111110010000111011110001010010100000110101011010001111110110110101111100010101110000001100100010111001001111110011100010101100101111001100110001001010011111111110001100101010010111101010000100111111100010110001001010111010101111000100110110010100110001110001000000011101001110001010001010000010101100000100010101101110011111000010011001101100000010100010111010001111111011011101010111011101000011010010010000100100111010010110111100010010101100110000010010000101001111110011110001001101010000100100110110101110111111100110111100010100001011111100101110010100010111100010000110100110110010000001011010000111011111010100010011101110000000000111101110001001000101001101011010011101111100010111101001000111110010110000111001111100000100111101010101101010010011000001011111101111101010000101111001111000101011110010 +0100001101110000011100011100111101010100111010101100010010110111001111110000000111010010000010111111111111011000000000000001000001001001000001011000101100111001110010100111000000100110000010001010100101101011110110101110010100000100101100001101000011110100000010101100110011001001001101011001001110101000000001001110011110111010110101101111000011101010111000000000010111000001001011000111101010010111001011010011111100100110010011100010010010110101100000011000111011010101010111110111010110000001011111001010010110011001100001101100011010010010111001001000101001111111011010001110001011010011101111000010000000111111110001100100011110001001001100011110010111011111110001110010001001101101000011101011101100011011111100011001111010110001100011111000100011001111010111000100101100110000111110000000001111110001111101011000010110011100110101011010010011100110010010111101101100000001011111110100111110011111011010010110010000010001111011100010001110111110000100001010000000010001001010101100111100100001011010010001101011111001011001110100101110010000001100111011110010111001011101000000111011000010010000011000101011101101010010011001010110011000001010100110001111111001111001101100110001011100001000010101110110000110010111111101010010011000111011000011000110000011000001100001101110100000011110111110100101011110001110001001011001100101111000111010010011001110001110000001011111001101100111000010000110110100001110000111111100011110100001100110011010101101001111001010100101110001100001001101000111001001101101011101000001000001011100000001101110001001010100000111111110000000010101110000011001100110011110010100001101110000010110110100000111000111001110101100110001110110101110101010110111100111011111111010111111111000011011110011010011010100010111110111110001011000110101100100000111110001010010001010110010100001101001111110000100101101100101100000100100111110110000100100110100110011000011011101101011100000010000101011101111011101010001101110111100001010001010111100001001110100111011110100100100101000100011100010101100101001011010101010110000011001101000100010011100111110011011100110110100110111110111011100101000010110111111111001110011110011100001111100100000100101000001110010111111001101000000110111101100101010100101100111000110110101101011111001100010101011000000000110010001101100010000110011101011010011111101010001000001100001111001011010001100111101000011111101011000101010111000000101111001000011010000101010111100011101110110000010010000000110001000110110101100100100110101101100000011011111101100101000111100000101101010001101100011010100000011000000111011100100001110011011111010110000000001000101010111011011001110000010101100000110010111011111000111100111001111111010010100011110110100000000011001111111011101001111010001010011110000000001101101110010011010001001011101110110101101011001011011101110011010010110111111101010100100100000001110001010011010110010001011011010010100111101101010111011110001101010010100100100010000111010001111011000001000000010110000000101101010100000000111001101110110111011111010011110001001000011010011111100110101000101100010101101100011000011111101100101111010111111001000001000011101110101110100001100100010100100010111010011010100100010111101011001000110111100101110001000011001001110101001111110000110010000100010101111011100110111001101000010110011111101011010011100111011010101101111010010010101001101101010000000011000101110010000010001101011010101110000010101000111110011101100101011110101100010111100111100001010111011001101010010001000000101000100111010101010010010010100101101001010010010000011010110110000011011001111101101110011100100010000011110100001100000010110001100010001000100110101011010010111011001001001000111000010010101000100101101101001010100001011101110010100010010111001110101011010110001000111001011101001101100000001001100011001000110100110110000100011110100000011010011000011111000101100101111111000100110110001011100100111001101001010101010110010011001010000010010010101011011000110101111100011000111000110101110001110010101110011000101010110111110111011011110010100101001011111111110001011011000111011101100100011011100111101100101010111010011001001010110011000111100000001001100001111110101110010100101011110111011110111000101100011000100101110101000101001011011001100110000000011101000011100111000111011101011111010010111001000101110100111111110001111001100000111111101011001000001110010000011101110111110000100011000110001001100010110111111011001100001001110011100001---------------------01000101111010111001110101101000111110111101110000000010001001101011110011101010000010100110110101111010100111111111110100011110100100001000100110100111100100111110101010101110111111011001011010010010111010001010010011100111110110101000010010001100000101100111110100000011100111101000010110001101010001110000100011011000101001110011000101001111110110111011011000101100101001010000000111001110101110000011000001111101001100101011101001001000011011000010111010011010001100010111001010110001001000011011100101110111000010110111101101001101001100001100100100111011010110010011011110100000101110010111110000110010100100011010010001101000111010011010011110111101111111000100110010101011011011100110101101101000010010110000010001000110110110111010000110000001101001100010011110010101000111101000110101010011100011111110000001011011001101111100001100110111111011100111101111010101101101100001001110111001110101100101110100101111101010101111111100000101011110010110101010011111110101101000111011000100011010100110000100000000100100000010011110011110101010110000010111101011001111101000111011100001010101101110110101011101110011111110100000011111001000000010110011000000001100110111000101101011100101100101010101110010000011011000010110000101010111100111010000100010011111101010001110111000111011101011010111000001100101011100010100000001001000111011011001001000100010001010101011000101110011100100110001100011000011111001100010010101111100010101010001100100001010000000110110111000101100001000000001101001111100010010011011100010111111011101101010110111000011111101100000100111000100000011111110010001010110001111000001111100011101101000000100001011101001010100011001011001000010010011100010101011011000101111010001100011101010111000000111101101111011100111011100000101110001011001111111010001111011001111001000101110110000000000100011010101011000111111100100011011011101010001111101111100111000101011110101001001000011110010011011100011011101110111111100100010010110011111111010110101000011100001011101010011001110111010111001100000111011100011011101010101111111111100011101111101111101001011101000110100110011010010110100011010000110001110000011000000110111001111010000010001111110101010111010100000011001101011111001110100000111011111001100011110100101000111000011001001001011111101110001011110100101010101000001011101011111010000101110011010111000110100000111111011100101110111010000001001000111110111101010110110110110001001101010000011010001011100101110111001010100101101100111110001000101100010100101100010100111010100100011001110011001011110111100101000000011101001001101110101100010010000011100101000000111110101010100110100000000010100010000110110111010000000111101011100001111100010001011001111111111101001011101010001000011100011101100101011101001110110011000011101100000101010110100110001100011110101100100010101110101000001111011000110000010000111101101010010101001000001111101101011001111010000010101101010110100001010000111101000101111010110010100101101111101001101110111101111010110000001111001011111101111010011001011111001001001101000011010110100000001100110010000001101111101000111010011001111010010011100011010010100010111110111101100111101000101100011001101011000101110110010001101011100010111101111001101001111101001001010111011110001110101100110010111100000101010010000100110100101111101010110111001110100101101101111000101011011001111010100110100011010100100101111111110001100111010000111000000101000011001001101101101101110111101111100000100000011001110111101110010011111100010110111001101100001001001100010010011110101010101010010101110110100101101101000110000111110110000010110001101100010100011111110010110100011110111110010111111000000111111101000100100110111110001000010101010000000010111001100111101111101100010011001101000110001000010100010110110100011010000001110001000000000010010011111011110010001011000011011100000111000101010001000111010100111000001011000011101000110010101100111111100011000110100101010001000011101011011010100011101011110100111101010000001011011101011011001010010011111010011001110010001011110101001011000101000111011100101011101100100010001000000000001101101010011100000001011111100111000110000100100010010001110011111000011110101110010100110100001001101100110010001011100100111110101111010101010110111000001011110100011010111001010101101010010000011110001011101100100010000111011010101001100100010011011010110011101000101100011101001110010000110001011011110001010101100110100011111011010010110000101000001001010100010100010011100011000010000000010111101100100001111001111011010111111101100100111111111011101110101001101101111110100111010001111110000010000111011001111100111000011001011110001100000111000000011110111101011110111010101011011111101011110101101100111000010010100010111011001100111010011010101100100000101011101110110010001111001111010100001001100100111000110101111100000110101110110101010001010011011010101001110011000011000000011110111001101010000111101100011011000000011001001011001000001010010011100110001001110110011011010010110101100111111110001001100010001010000011000110101001101100000001111011010101010111111100101111111101101101011101101100001001011000000001100001010010100100000010010110100110100000101000000100001000000011010000100000010010100110101010100001000111000010000101011000110110101011111110101000001011101110100001111111111001101110000010000111001110111010000011111000101000001101000000101001010110010100101010011001101111110000010010011111111010010111100000011001000101010000110101000011001100000111111101110010110011000110001001101101000110000000110101100011101100001110110001011111110110100111011011010101111100000011110000111111111100100000111000100000111000011111010011010010100110000110101001000001110010110101101000100110010011000101111000011110000010000100111001110001010111000000110111100010110100110111101011001000101000001000010101111010011000010110110100000111010001010100111110100101011001101011000000001000001011110110000111001100010001111111101101011100001000000010001100101011011011001000010101111110100010010111110100101010011000001000110100010110011100010011111111111010000101101110000111011100010110011111010010110000010111100011010111010010101110011000000011000011110011010111101011010110111111010110010001011110100011011010100001111000101001101100011000100010110001101011010010111001001101010110111101101011001000100110110111110100101111011111110110110111111010000100011101110011001110010111110011011001011000001110111100111110011011001000101010000110011111011001010101011101000011010011101101011110000101001110101011001111111101100010000111010111000110010000010010100001100001001101101000000010101010111001110101101010010001011001011011101000000000111010110001000010101000110000010111001001010010111101000000101011011011011111000110010101111001000011000101101100111101010111000101001110100111011000011110111001011010001100000101000101011100100010110110110110100010110100110101111001010110001111110001010110011011011000110011010010100110000000101000000010101000100101011000111000111100111000110001010100110000010001011001100011001001110110011001110011001000111110111000010011010010101100110001110100000110010100111010010111110101111000000011101100111101011101000111100001101101000011101100111000100100000010111011010101100011111101101000010101011011011110110111111101100101110101000100010110001100111010111111111100111011011111010101111111010000011101001110110000110101000010010100101000001010010001110011011000000001001011100010010110101010110100111110111110011110110010101110111000100111000101011111011111000100011000010010111111101110010111101001010001000001110010101101001111010010011000100101110111111101101001101010001101000010111110111100100111011011111011110110010011001101011111111010101000001110010101110110001100110001101011000110011100001101110011110100000000001110000000100111000010000111001110011100101000110101000000100110011001000000111100011001111101110000010110000010001100111110100101010000100100110010100101111011001110100110101010010110001010001111011101101010101001100000001000111001100110111010110001011010001111100111000111001001011100000000110011101011111101101011011111001111100110101110100001010111011101011101011000110001010000001001010000100001000111000111101101000111001110101001000000011100110101010110010110101010110010000001011100111011000101101100000111100101100011001010110010000010111000000000100001111001011111101000001000011011111011001101000100010100011010010010111011101010110111001000110001111010100100110011011111011100100010100010111101000110011011001100000101101000001111011000000000010010111011000101110001110100101111100001110001000101100101110100110000110111110001111100111000000011111010001100100110100010001111100011101101111110011011110111111111100100100011111110101001010001110100011101101101100000111011101111000000111100010100100011111001010101011101000111011111000100110001111101000101000011101001011101110110010010110000101011100011111010011101001011110101111011011101000010000000000100101111010011001001100000100101100101010101011011111111111001100001101011111101011101100100110011101100010001110000011111000011010000100011000101001001111000110100101000100011010110111111001111011101011100100111100101110011100111110000101110100011101101010111010100100111010011100000110110111110101100111111111010100101100000100011001010110010101101101101111000100001010101001101001111111000101110001010110100001001010100101011000100100101110110010100101001101110000010000011000101001000010100001011111001001000010101111011110111110011101000111001101101110000100101001010111001000000100110011110010100010101101101000011000110000000111001001111010100000110110000001100110010101001111110100110101000100110001011101001111101001001110101001000001010101011111101010100011001111010110111111101101100010000000001100110110100100111111000011011100110111000110101110010010110001001011101101000111100010000101101011010000011000001010100001010111011001000000101001011101110111010111011011010110111110100111111101111100111001000100010101001010111110010100110110000111101001100111110011011001000000100101010001110000010111011101001110111111111110100110101111111011110011010101100001011001010010010001100011111101110101101010111101010011011100001001101000011011100101010101000010001011000010110101111110011101110111001011011110011001101001001100111111101111111111101101011011 +1100101000100110100110111010000110110010011011100011010100111101001110101001010000011001110111010011000111011101011111101011110100100111000010010101111111001010011011010100001101010111111011011100110101110101000010001110111000100011011011011000001011000111010000100101011111001101100010110011011111001000010100100101010000110011010100111001100100100101010100010101010100000001011011000111010100101010011100111101111110100011001011000110000011100011010001010010100111001101100111000000111001101010000110110111011110000011011100000001111110100111001111010010001111111001110000100111101101111100110001111010000111010001000000101101000110110000010100111110011001010101111011100001111110000000101010101101100100001010010010000000001000101000101011100100001011111011100110101000110101001000101110010010100110101000001000101000101110000011001010001000101001101111001111000110011010100000110110011001011110010101010101010010001100111100101101011111000000101110001011001011011000111001101011110110010011111010011001111000010010100000011101011100000000011110111110010000010001010000010100001000110001100010001000110001111111100101111110101001000001111101001000101100000001111101111011110101111111111111100100101101011000111000101001011101101100011101001111011000000101100001001011010110111111001111101101111101100100010001100111011010000101101100010010001000000000111110101011010011010100011011111111111010000100010111000001001011100000111100111111111101000100110010001110111111010100000000011111001001011001111110101111100011000010001011001110001010110100000001010011010110000110001001010010001101001110111110000011000000111001000100100110110010100000101100011011011101000001110101000000111010000100110101111000000100100000111000111010010110100010101000100110011101001100011110001101011010101011001111010111110111110010110010001111100101001111000001010010111101010110010101100011011110010100000000011101100111001111001110010001100101011101011001001001110110010100000100101101011000110011110100111011010110111110001101111011010111101001010010001111111001101111000110110010111010111010101111101111000001100110111001001010101110011110100011000110010110010011010000001001111001010100000111010000001000001111011100011010110001000010001101011100110010011101010111101111101001110111001010001011111110110101110101000001010001011000100000010100100001100001111100110111110001000101010011010100011010010110000011101110110111011111110111111101011011000100001101110011111000001010111011110000000100101101110001111100011100000101011111010101010110111010001101101110000000010000000111101100000000001011010000000101000100011110111111110011001111111100001011011101011010001010000111000000110100101011011100110001100000001001000000100101000001000101010000010000101011010100001000100111111101010101110111011100000011001100100011110010111000011001101000111001010010011110000101000000110010011010111111111000111010110100001000011110010110101100001000011110110010000000000010011001000110101111111000010100111111111101001100100000101001010011000101011001101110110111000111110101010000100010011001000001111000101000111110010010101110111000000010111110010111010111110001100110001010001100010111011010100111111101000001111111000100101000110101001001100101011111101111100011010000111110101000010101111100111110011110101000110000011010110100101101100011100011111101001110001100101001110101100000101101001001011100010111000000110110111110011000011001101101010000000100101100001110100010000010010110110001010010100110001101101000101010111100000011011101010110101010100111001010001000001011110111110111011000001000101111000001110001101110001001011010100101100011110101111010011011000100110100111110001000100010110111010010011011110000000011010101000110111110001100011001100100111011011011101110010001011100010101001010010000001101101001010001110000101111000110010000111010100100011100011001000000111000001001010111110001100101111111110001000011010111101011110001100110101101111000010011101111111100110001010000010111110101100000010110111100111101010011000111111010000010001011101010011010111001010011000010011111110010110011000010101001111100000010001101010100110011000101111101111110101100011101010100010001100001011010001000010001100010100010011111000101011101000111011110010000010110001110000100000011100111011110001000101011010011000011110100001010110100110101100101010110001000100100111110001011101011101111101100010100010010001000000100010111000001111111001011011011001111000000001001010010100---------------------11011011101111111101111001100010111001101110000100110011110011100110001000000111111001010100010100000100000010101001011011010001100111111101100000011100101101010010000111100001101111101100100110001111100101010000110011011100100010111101101110000111010011010011101101001010001110101111111001010100110010010100001010000001100111000000010111011101101001001010101000011101111000000111100010111110001000001100011111000000101011010000000110011100000110101000010000101001110111101010011101100001011110010110110100010111101101001101000001011100100001001111101010000110101111111010100001101101111010101011000110111010101110100101010111101000100010110000111111111000010011111011101001011101101011111101111100001010111001001100000000000100111101110000011010100011100000100101110010010101110000000001111000001101011100111001011000010100101101001010011111000000000100010001001110001010110100111000101000010101001010011100101100001101010111101100011111010101000111001110111110011011011100010011101011011100101010110000011001000100110100000100110101111001101101101101100001010011111101010111010100101000011010000000011101000011001001011011111001110001111111000011100011101011101100101110110110000000110101011011111011111110100110011111111110010001100001111001111101110101011110000000100110011111001010010011011001001100101110110101111000001010000011011111001011100001100101000100101111000011110000111011100011001111011001010010010010111100000101111110011001110011111011000011010000111100001100000010010100101001110111010111101000001110111101000111001001001010111100110011011111011111001010100000000011001001110101111001101110110100001011101011010011011101100011011010100100010010111111000100111101001000110011111100000011001010100111101011010011111001000010101111111101000101011011111101100111000000010110001011001011100000100111110111000010110000000100111101011111101101111110011100101010111001011111101110101011001111101011011101100000100010111100101001101001001010001000011001000000011101001110010000010101011100000010100110011111100010101101111100001110101010111001000110100000001001000011010011111011001100111001101101011111111010101000100011101100100101011110000111011100011101000101010100111001101010111100111101110110001001001110110000001110101110101001000011000100111110111111001001000000000010101011000110110110010101101111101100011000010101101010110001001110000111010100001111110010001100110110000011111000111001101100111110010101001011000000111101110010001100101101110000111110100001100100101110111111010011111000001010011010110000110010011010101000000101111011101111111100110101011000011010110011010001010000111101001101011111100110000010101000101101110000010010001001110001001111101111011111101010111101011110100110110001010111100010000101100101000100111000100011001001000101111101101110000101001110010111110001000100100010010010111001010100011100011001010101110101001010010001011110010011100001101000101100100001110000010101100010111011011000001110110001011110000000000110010000111111001011101001101001110010100111010100000000001100111010010000100011110100000110100000010000110011011001001011000100111111100011100111100010000000100010010110101110111100010011001100110010000110000101101011101001011011000010111011111001100101010110011000100000011110001111011000000101010011001110110010011101100110000011010010100001100110011110010101010011101001110000111100011000100100100001010100010011011110010000010000000110010010111011100100100101011110110010000111110100000100010010110001111000100011011011110000110011100001101011010111000111110001101110100111001000100111111010011001000101110011011011101001100001111010001010100000101111010010110011111010101100011011011010111010011111000101100111011110110110011101000101101011111100110011101001011101010111100001100101001000010110101010101110111011111010100101000100000100101010110101011101110011010000101001000000110110010111010100111111010111011111010011000011001000000110111111000101001011100111001101001000011111000010000101111110000001011101011001001000110110001000101011101011101111000111100100101111101100101111011111011100111000010101111101110111100011111011001100011100101000100001111100011100001101001000100101101110010110010110100000001101110011111010011001101001010111001001110110101110110101101101010000001001100000111111000010100001010010010000110101010111111011111000101001111000110011011101100111000011010101011111111010010111011011001101100001101010011010111011110100000110001110011001000101011011010101001111010001111001100001100100100000011001010001110011001011000000001001100110100001100101110110001101100000011000100101111101110001101010010000101011001111101110011010100010001100001111111010110011000101101101100001011110001011001101000110100100110010100000101101010101000110000110010100111010000001000001000001101011010011010011100101001011011100111000110001100111101100000001000101100011100000110101110010010001111110011000111000111011001111001110001110100011011001000010001101110001100110111010000001000100100001100101100011010000000110100000000111111001000101001101101101111011101110001101100010001101110100110110100011001010111101001000010101011001101000101101011110010000111001110110110011011001100000001000110100011100111110000101000010101001110010100111001110000110110111000100010110111001100000100010010110100001110110100000000001011110100111011001100010100100010100101110000101100110100111011110110010011101100111101101110000101101100001001001001001000000001000010110010111111101011001101010001111000111011100011011000110111000101111001110111001010110011111011101010011111000110010001111011100111011110111111110100101010111000100010111101101100011100011000010100001101000111010010000110100010010111000011000011010100111011111000011011101001110110010101110010001001011100001111100101001100100110001100101101111110101000001110111000100001100001100010110011001001001011001010010000010000001111101011100111011101011010110010110100001101110110100000100111101100110011111000000111111011000000101110001001000110111000100011011100100110001100010100110101100011101010001100101011010000000001000100101111010011001001110110111000101101111001011011010000110000001111001101001000010010111010001000100100001111100101000011000100010100111001000000001001100000011001010011001011110100100010010110001011000001001100011000111111101001001111100111010011100000001110001010001000100111101110001010111011001100000111010101110110101101001011100110001101010110110101000011101010101110111011011110000001011110000011000100111100110111100010001111101001111101000011111111100001110101111010100101100100000100111100101010110111010111010110011001111101011101101100011100110001011101110011100010000101001001110111001001011010001111011110100110011101110111110010000010111110110111110010011010110100110110000111110011110101011001100001111001100101000101011000011001010010110010100011100111110011110011101011110101001110110010000100101100001000001101000100100010011010000111011011010010111100000010000110100101100110101110111100101000100001000011011001011101110110001100001001110111001000101011010000100101101001000100010101100010100101101001011110001000100111111110011000111111110001001110110001011111010110000001000000000011010001000111111000101111111000110101001111101111110101000011010101011001100101001101010111110011101100011010111011010111010101001100100001110001010011100001000011111000000011100110011010110000001110110101111100111100100010011001101001010000111010110100000100110010010111011011001101011101110100001011011100110101111000111111010101111110111010110011101010011101110011011010111010010100000111101000111111110011110000101000110111110001110110100010010100010111100011100110000000010111001111001010000010110010011101011010111000110111001010110001111101001000000000011000010111111100101110110111100111001001011011101010111110110000101110110111001111111011010100000000110011100001001100100110110000101101110000111000000111100111111010100100000000011111101011000000001001011101011010110101111100011101000101101001110111000101010110111110011111111000100101101001010001011100011001111110100110100000100001100010100011100110111111100111011000010011110011000100010011001111111011101101010000001010001000101110110011100010010000110010001111100001011010011100001000110100100101111000100110101110110101100111010011110011001000101101001111110010101111011011110010101101111100101000011100011110110000010010011111011001111011011010000101110100011000100000101010010011111101111101111110000001000101111100000010010110100000010111111001111000111010100101100100110011100010011101100100011010011111001010100110110111011111100111110101011000111010010000010011011011100010010000001111000110000000011110010000000110011001000000101100101110010100111011001100000101011110110000001011000100001100001011000000110011110100100100010000010001010011000100100111011110000111000010101110110010111000010101101111010000010111010000000110010001000111100010111111101100001110100011011100010001110010000000010000000011000011111011000101011011011001001000101010101111111010100100000011110000110011110101110100111011001010110101010010011110010010110000001001011101111010100011110101001101001011101011011001011011111111010000010100000001110111111000001001011011000101000001010111000010010001000000000011011100100110001000110000011110111111111000001101001010101000111101000001011111011100100101110001010110100110001011100000010010010011010010100010000111010101010111101110101110001101110011011000100100001011000010001011011000111010110100001101110011111000111110110100011011110100101000110001110100000000101111100001000011001000011110000010001001011000011001011010000111100101111010101110001100001100101111101110001011011101110011101100010010101111100001000110010100000001101001110100111001010111111010111111111100101010001101001010101000010110000000101111000000001110100011100101000000110100011110100001111110001100111010011011000110001111001111000100110010010101011100110100001010111011011000101011101010110101100010011011111110011111000111010001001101010001100000011011111010111101110111101010111101001100100110101010110111101100111010110100111011111111110010001000100101100001111111001101110110001100001010010011000100001000000010000101101000111000101111111001001100100011111111000110111111010011011010111101001101010100001011101101011000011011001100010111001101000011110001110001001 +1110000100110100001110100101011011110010010001100111001100101110011101010100111011011000001111111101100100110001000101111011011101010101111111011111100101001011011001000100000101111001011100101010100001111000000010110010001011111001001011011101100110010110001110000101011101101111111101000100111101001100111101011110101011101101100000111101011011000000101111000110111100010101010001101001000101100111001111011110110001111001001000000000100100001100010001010111110011101100100110010011110010101110110000100001111110011101001001000011110101000101000100010010101101011101011000111111011110011001000011101010000100110110110011001111110110101010010110110100010100010110011001111000000011101000000000111110011101000100110001101010000010001110110110101100001110110110000110001010010011110000000010010110100000001000000000110110011011100110101010101101111100110101001001111011001000101011001101100011000001000110000000001100111000111111000010111100100100110000100110111000110001001010011011111110110110011111111110100101000100001110111101111101101110010111101101001111111011110101000111000110101101101111011110101100011011001001011011100011101110000010101001111111011100111001010000001000010010011010100010101000110000111001001110110100101011000000011001011100000101000010100000000111000010100101001100110011110000000000001110010111110010100010100100101100011101001001000010001101100111011101000111011101001111010111100001100100101111001111101000101110010111011010011110000100010011110101000000010111101111000101111010110111001011101100110011001101011110000111101111101011110111001001000110111001101101010010011110110000011000110000101011010110111011111010001010111110011101100110100100101111110000110011110010110101010100100001110111001100111111011000101011111110011010111101100001000110010110111010010110001011100110110000000010111101100100100000100101100011010110010111101011001101001110111001101101101111100010000111001010110101100001000111001101110110110101110010000110001100110110111000010110001110110000110001111000001101111011000011010100010010010011101010010111001110100101000111110000110011001100111000100011101111111001011010100100000011110011111010111100000111001001000010001001100000001000101100100011010110110001111101011100011011011011111111110101101101001101010000110011101110101111110000010001010011110011101111111110101100101001000111001000001101101000101100000101110100010101010110001001101101101000100000101011110100111001111111111110010010010110101010010001110110111010100001011100001001100111000100001011010100001110100000010011100011111011001110000100001111011100100101100100110101100111011100110110110000101111000111110110100010100110101010101101100011001111011000100010001110010010001101101101100010100111010000111101110000110100100101100000011110010100101001011001100010111100011001100101011001011001111011011010001011111001110100001001000111100101110010101100110100001101001011101100011011110111101011011000111101011100100001101001001110010011011000011101100100101101011001010100101111111111001011000001100010000100000010011100111110010000011001010110100011101110001011010111011011110100111101010111000101111100000110001011111110000000100000111001010111100000000001100010111011010011000010111110010011100111111101000001110100001010000001010011111101001110101100100000100101010100001110111001011011111010101001001001011000001011111001010110010101001010011011010011100110000000101010011011001100111100010000001000100001101001001100011100111100100000101001010000001110010010010000011100110110000011111110101101100010000000010000001110000010001010100101010001010011111000011011110000111010111001010010011001100100011100010011011111001100011001000100101100111111101010100011100110000111011000111110011000011100111000110100111000100110110111000010101110010010100110111111001110011010111011101000010000101010110011110000111110110111001100111110010011011010010101101000110111100110111110000101101110111010011110110110110110100011001101010011110101001101111100110100100000011110000001101100110001100110101111010100001000000011011100010100001100011001101011010100001010111100101100100011011001011110000001000111011110110001000001100100101100110010101000000000110111110110010000101011100010001110010100010010001000000111010010101001110001011110000001000011111110010100001100101011010110110100000110101100100010001011001001100001010111010010110010110110110110101011111000000000011111100011110111001100100001010001101001111110101101011111101001010001000---------------------00000001111100110101011010101110101010111010010101011001111001111101101101011010000101011100111100000110000110001010100101110110100101001100001111110000101010110000010100001000111001010110110010110110010101011101111110011011101111110010011011000111001001111111001011011011100010101000001010001101100100000110001000101100000010000101111110000100011011101011100011111111010110101100001111111010100101001100111100010011111000000101100001000001101010010101110001001111101101001001110100001000100101111111100111000111111100011101101000000100011100010111011100000101100110111100111000110010110001100010100010100101110101111010101110001100110001001011101110110010100010010001001010101110010110000001001100010101101010010010000011010100001001010100010001011011100111010001001000011001110110011001001011001111011010110011010000100001011011011111011000111000010000011010001010111100111110110010010001111010000000110100010001011100011011110011101010100100001110011010111011100110110111101111100111010101011010011001110011110111001010100000111001010011000011000100010000110011001110101011100111010111101110100000010000001001100011010110110010100001001010101100011011010010001000101111100010011000101101001101110110110010110110011011110000010101100011001011101110000111101010101000101110000110111010100011101101001100100001010011011011000111110011010111110001101010110000000110111101111101100101010010001010110100110111110101001110000100100000101100000000100101100011001010011010101011111111110001010101101011110001111111110100100111010011001011011010000110001100110100011010000111011100110000000011110011111101101100000101101000010000010001010011101100001111001001011111000100111110111000100101101010110111110110000011100110101100110001100111011001000001011001100111101100111001001010101001111111001111010000000011011100011111111110000011011100000111100111000111110000111101010011111011001000010110000011101000111001000000111100011000010111001011111101010101011111001010101010011100100110111010111010011110101001011011010010011100100111010100001100000011111000001100001000110111101000011001010010111111111011000011001110010100011110110000110101011000100001000110001100110100111111011001010010000100000110001111010001010110101100011011101001101010110110001101010101001000101001101100011000111100100100100110000111111111000011010101011001001100010101111001100001101010101000010101110100110100101101001001101111100101100010000110101111101110110111100101010100011101110100001100010000110110001111011000110101101011000101010110010001000100100010100000101001001110101110111011000001010101100000100111001011011010101111111010011001101000010110000010000001111001100000000100110110001010011011010100001100101110110101001101101010001110111111111101001001000100010100110111111110001111001000110100111001110010001100001010110000011001000101101100100011111000101100100000100010111101101010000111100011010000110000110011000110011001101110011101000101100111010000100001110011100100000111100101000011110110001100100010111011101110001111011111000001011001000010101011010001011111100010100001001001111010011100001000010101101010010010011101110011101101000110001100110100000100000100000100011100101000011010000111100010000011100110111111101000000110001001111010000100111010000010111100100001101101110001011000001010100011110111111111100110100011100010100011000100000011111010000011011110010111010011001110110101110001100100011001001101110011010001111110010000001001000000101010011011000110000110111001100110011001000111101110111111010111001111111010101110011001001010100000101101100001010101010001001011110100000111110011111110001110111111000100010001111110011000110010010101011100101101011111001000000010011010010000101010010110011100110110010010010110101100011000000011100011111011000110010011111111101011001001011100011000110101011010001100110000110111010001111001000010100000011101000001101000111001111111111100111011000111011010110100010110100000011001100101100111110010000011110011110111000001010010000001111000110001110001000110101110100010010100100101001010111011100111000010011000110000110000111110110100110110000001100000010001100010011110110000010101100111000101101000010011111011111110100000110001000001011001100001101001000100101001000000100000101010011000100011110101000000100100111011010010011001000111110010110000111011000101110100011011110111101101000010110001001101110110011101010111001000001011011110100001111000001101101100110001101010110011110011110001001001000100101111111011111111100010001010010100000100010011010100010011011000111000111111001000001001011000001100001101110100100011101010101110101000111010000111000011101111000001001100111101110011000010100111111001011010110111010110011001110111001001011101100100100100101111111110110100100110110001011110110101010011010001010111101010101011100000001000010101011111110111111000010011001010011100001100111111101001101000010110111111010110011010000100101000100000010101011110111011000011011010111110111011101000010010000010010010110000010000111101100010110100111000111001110100110111110010100101001011110001001101101110110101010000111000100100000000010110111000110001111100001011000110000000000010000100001110010101111000010101110110101101100011111100101011000100101001010011110100000000001100001100101000001001010010001000111010101010100100001001110110010101010111100011110111001100010111000000111111010000000101101010110111000111100010000100101101000110001110110110010000011010011011111111011000000011101011111001101100010110011001011001011100111100111000110111000010001111110011101001111001000101001111001011001101000110000111011010110001000001010100010100100001100000101100110010111010111010000001001100010101010000010101001110110101011110010100101111010100011101011001101100000001011111001100110111100011001010000111100011100101000011011111011001011000101000001011110011001101001101001111000010100101010011010111010001000011111011011101101110110101100011000001110011110101011011010111000011110001111111010000111101010001001100011100000010011000011110000010111001110110010110000100100100001111101010110110000111101000011000010001110101111110110001101010001101100111110101001001001000010001111100001011111100010011010000011010100110100011111100001100110000111010001010111000010000010110000010110101111100101100100001010000001000110001110111000000001100110001000000100011111010101101101111111011010101000101111100111011110110101000100000101011010001010100000111001111100101010010001000011000100010100101101000001010000101111100011110001000101001110110000011100010100101111100111010101001000010000010000111100000100100110001001100111010001100110011001111110101000001011110010011010110000110101100000001000011011000101011001101011001000000011000111000101111110010011000000100110110111110111101110000010101011110101010010100111110101001011010001110110100011001010010011100001000011100001110111100001111001110001011101010001000011000110101010010010010100001000001110000100000111001000000000111001110111001000101001101010100100000110001001111011001001110001000111111010011001010111100011011100101100100001110010010010101100011111001010011001000000001001010011100101111111110100011100001010011101001010000110011111000011101111001010001010100011011011101001101000010110001100101110101110001011100100101111011000110000000110100001001101100100000000010001001110111001011001000010100010110110001101100001111001011101111101110110010001111000110101010001100111010111001001000100101100111101110011000100001110111111111111001000011001101100010110010011000100011101101001110011111010110010001001010110011100001110110000000000000101011010110110110100110101001110001110011010001100111000001001011100010001001001011000010000110110011100001010000000111101111010011100100001110001001011011101010100110101101000011011000110111001110000101100100100000110010100110110011111011111000010111010000011110100110011101000111110011010100101011001000101011011010111010011011111011101010100110110101000010010000000000011110011011000011010001001001010000000010101000111010001010111000110001001111110110111101011000000101000101011110110011111010111101101011000011111110000110010001011110000000011000110010111110001100010010101001000001001000001101110111100110111000101110011010001101100000010010010111110111001101000001110110000100101111001110101111011110110000011100101010100100011011100000101111000111001100101101110000111000101101000010101101010100110111100110000111000101010010011010100000001001111001010111010101011011011110100011100111100001000111110100101100111011110100011000111011000111001111011111100101011110011101011101110110100011100010100100010111110101001111101110100111110110010010100110001110011010001100000100110000101101100001111000110001011100100100011010010110010001110001101110111000111101110111010100100101101111101011110010110011110000000101010101110011000010100110111011101011000111101110010110001001100010011111100100000001110000110011010001001111101100010011001110111000000101100100110000011010100010010000011100101111100001111001101111010011111001110100111101010101110010000010100010001111010111001001101111010110101010011001011000111011001001001011000101110001100101110110011101101101000010010110100100000111110010100110111011100010011111111110010010110110000111011100011010100101110010001011100101001010110001100110001100011011111011111110010000011001111110111111101100100011010111101101001100010110110100111100101011101000000010101111000000010010000001101001110110001100110010101001100001000000101101010001001101011001110000111011010001101100100001001110111011010000110111010011101100100110101111000000110110101010111100001010111101000011010110111111100110011010100110011001111100001111100110011101010011101010110000001011100100100110100110100110001011110001111111101100111000101010011100100101010000000100010110011000001101101010111110011000100111111111010111101010011000111000101100111111000010011010011001010000000111001000011000000111011101100101000110101001110111001100111101000010111100011100101101100110010111100100111011101011100100100010011011111101100011000100000111000000000010110111110111011011100001001010101011110001011110010100000100011110111000101010100111101111110010011000111010111110001101100010010000010001110010000001011110100111001010001011100000101011110101001011000110100011000000010011111101000001011001111000101100111111100101000011001011 +1010000011101100101101101000000000000100011100001111111101110101110000001110000110101101011110110010100111110010001100000110000001000111101011110011101100000000010100110010010011010000011101000110001100100000100101011101100101001001011011001010000010110000001110111101011100110101101110111110010001000100110011010100000001000011001000010010001000010111001011101011111100010100001101110000001101110110100000011101101001001000000010101011001011111101010110001111110000010011110010001100010111000010110001001001111001111100000100110110000101111100100010100001011100110000110001011011110001101111001011111101111110001000100111001111101011101011000101000101011001000110000101101111110100000001011000111101110100101110011110111111000101001111010010010100011110011101100100111000111011111101010000101010001001111000100011111010111101001011101101010110111100011000000110000011101001010100111010001010000010000011101100111101011010010110011000010011101010010010011011100110110001001111100011010000100000011111101010101000001111100100001101110111001000100110110000100111011100110100011000011000000100100100110110111010011111101000100011010000001010000000111001110000101100011011010010001011101100111000110000100010001101010111011100100010111001111001101001110101101100101100100110001011110000010000100111100010010111011001000111011000011000000100100011010001000110110100111101101110011001100010011100011100001001000100010011100001011100101000001111001010110010000101011100111011111011001111011011011010100011111100111111010001101010100000111110001010111100110110110111101000011010110110110010000001011001011000111000100101011011011100101010010100010111110111011111100111101111000011000110000101101101110111111000000001000111010100111101011111111111010010111010000001001101101100011110110101101101010001111011001110101111111001100010111011110101100011100111000010100000010010010111000011011100111111111100000001011001010011111110010100000010010100010111010110101011111011111111011011110010000011111010011101100001011101100010100000101000011000011010111101111110101100100111110000101010010000111010010000011110100110110111001111111000001000101110111101111001111110001000011110011010001100001110010001101100101011101100101100010010000011010001011011100011001000000110110111001101000111010110010100011011111110110110001101011101011100101111010001110010101010010011001101100010001101011010011000101000001000111011100001100111000010001110001111110011010110101010110101010010110110110011001001111100000010011101000111111011101100101100001111000111110011011111110100111010010010000001000000110110000011000011100100000001010001100000001101110000100111100010110110001010011111110001011101010000011010010111111101101011001001100101110111101111101011001011011100010011110001101010000001111100110000111011110011000010000010001011101011010011000000010101100000101101111101110110110000111000011000010011011001010101111000111100001111001100001100000110001110001000010000111110010000111010100100001110101111000100111110001001110111000001101011011011100100010100000101001110001000010010011000000000010010000110011111101101000110111010011000111101011100010110011010010100100100110011111101100110100001010101100111011010110110010110100000111001000111100100011000101101001000010111011101010011001100101111101101111101001000111001110111011001110100001000010001100001001110011110111011000110010001010111001111111000101010011110110111110101000111011101100001110011111100110001110101111110011000101101111010110110101110101101110001110110011001010011110110100100111001000010011111010001000010010100011111011101111010110110010101101000101110000100001111100110111010011110011110000100100101010111011001001111001110110001100010011101111111100110101000101001100101101100010100010110111111001101001100111110111000110101111000010011100110101111011111011111000100111001001100001101100101011011100001010010010000010100100110001011101000001000110100011100100111101111001011001101001011111111101110100001000000011011101000000000101010110100010011010111110111011100011110000011011011110110001101001010000110000111011111101110011011111010010111100101100110011101001111101001100011001100000111001110001101000011010100000000110111110010110110101010100011011011101101100000001000111000000110110001100011100001000111010001000111001001101100000101100110011100000101011110001100110001010110111101111101000100101101000000001011101101101011101101111011110000110100011101001001001101000100010111110011011001000011000---------------------10000001101000111101011000101010010001011010111010011000100110100110000100001101001101010100101110100011101101101101010011010100001010001001010111100010111001101000011111011110011111111110010111000111100001001111100000111000100101010100111100110011110100111110000100001111110110001100110110101000011111000001010101100110010000110010000010111101100011100110010100000101100111100000001101001000100001101111011001100001101100100011101010000001100011001100100010010011100010001001111010001010011010111011000111000010101110010110101011011101100001100111001101001010010110000000101101011100100000100000111010111001010010010110110101100111100011100010111010001000000100111011111100100011001000011010111000111100010001000000001000101000101101000001000000010111000000100000101110001110110001001110001010011100100111001011110101010101110000111011101101000100011101000000010100000100000101100110010111001000010001010001110101101101110010001101111000101011010000001111001101010101111110010010001000011111101010000001010010000000100101110010110001001011010010110110101101011100011111001001001100101010100011101000001000011010100000001111010110000111111100100000110011001110111000000001100100000011100111010011110111001110000011100110100100101001111110111011101011000100111010010001001000000110101111101011001101010000111111100111110001111010111011011101000000111011101010011011100000100010000110001110101101000110111010100100111100100011010110101001010101111100011001000101000110000110001101111001101100011000111000111101000110011011111010000101001000001101110111011011101110010000110110110011000001110111010101100100010100100011100001011101101000110111100100010011110100000100101110111011110110111001010101000001111000101100010011011110110001011000111111100111110011010000001010110011111011100001010000010011110111001110000011001011011110111100001100111100000100110100010111101001101101011001000001111101001000001010011011010101001001011101001111111101000110000100110100001001111011010101100000101001101000100111111011011000101100111100001000000110011011001110011101001001100110100111011000110001001010101010000100100011101001110110110011000100000011010111010010001001001010000011100011111000000000011011111111110110111000100101011010000011100001010000000100100101010101110010110101010011100101011110011011100111001101000111011100110000100011111001111010111100101000101100100100100110101010100110111010111000011101111011111011010010100011100001001100111110101000101110100000110100110110001001011000010011001010110010010111111101001101111101111000010001110110011111001001110110010111111111100011000100111100110011100111110111010010110100110011010000010110110001101011101000111000110000100000111110100011100000011011011110011000100100000101110011111010100010010011110100110111010100000011100111100110010101110110101000000011110000000100101010011101101000111010101100111000010000101010101100001010101111001001111110101000000000100011010111001110000111000110010111001001011001110101111010100011101100111011100001011101010100110100000110110100010111011111101010000100010101110001010101111111111011101110001111000100010000001001000111111100110000000001100010010101000010010100111111101101100100100011000110011101111000010100000101010110000000010101100000110010011101110000110011001101000111110000110110010001011010101001011100011101010101011110010001010110001100111110000110111011111110001100010011111000010110001110101000000100000100101010110010101110000100010111111110110101111100101110010101010101111111111100001001110111000111001010011101110101000100111011101010100000000101111110001000111001101000110011110111000111111001001100110101010011001101011001000100010111100001101111011010101110010100101101100110100000110001010000000000101100111011101000001100000000000110101011010111001100011100000110101010111111010111100110101110111000101010111110010011101000100110111000001100100101010111110000110010011001000001010110001011101110000010011000000101101111010011101000100100010001100001011010110101101000000011000101011010100001100100011101111010110010001111110111101001111000100010011001100000111111110111110101100001001010000001110001110010101011010110011010100000011111100001111100100100111010000101000011011010000100010110001011100011000110100111011000100101000101000100110011011010000011010001000001001100011100001100111110000101110001001111000111100010000101111110010100010000110110100011000111101100001101011010101010101011110010101110001011110110010101100010001001000100000110001001011001111000011000100100111111011100011001101111000010110100100010101101101011111010011101000100110110100111000110011111000010100111110110100001011100111001010110111001111010000011010111001100001001101111011110011101010010010110110010111110101111110010110110111011011000000000000110101011001001111110010110101111111111110000111010011101101010011100011001011011011010001101000101100100010000011001000110111010110111110010000101000000001101000011001110001011011000011011100111100000011001010101001100000000110010110100111100111101100011000010101110101011010111110001101100110011010100001001011001000111010100110001011110110011001001111000011100000101000010111010001001101001111001101111101111111011010110010000011011100011100111001011111001110011110000000011011011010100011100100110101110110110001011111011011010001111011111101100010110110110001001110100001110100110010111101001101001011011001001100010100000101111110100010101111110000001001111111100110101001000111001011110000010111011010110101000011001001010000001110110010001101001101110000010000010011011100101101111011001011001010010000000110001001101110010011111001100010011100101011000111001000001111000001011000110101110011000001111000001010100001101110111101110111100101111111111010010001000101110111011100100000110010110111011110001110101110000101110000001101110011011011111011010101111001011001101011010010001010111100000111010001111111001011111011011010100000010010011111111110000111000111001100101000011010110010001110111110111001100001111101010100001001110001110011101010001001101101100001000000100011011001011101010000011100110101100000101001101001110001001000000111111110011110011110111011101100001001101101000100110111000111010111111011001001000010111001101011110101011111111111111010111011001011110011001011101001110001010111011111101011101111010111101101010010000000111101000111100100101110011010010100011000000000110101010110110101100101100110110110001010010000110110001110001110101010110011111100000000010110010011000011101100100111111110111110011101110100010100111110100001101101101111111000001001000000011111100101101110110000110111111110111010111011110111000101011010000011001000010100110110100011011011110011100000100010011011000100101110111011110101000111000011000001011000011101111100011001010011111100100010110110101110101100011101011010010100110101111000110100011010000000000011110000101010110110100000111000011100100111101000000111110101111110000111011010001101010111010001010010100000111010110110000011011110100100000111001001011101000100101110000010010110101011010100011001001011101010000100110010010000111001011000000100111001101110111011011001110100001101100001111001001010100100110111000111000101100010001111100100010000001011001111111101100110011000100111100110101111110111110010001011111001111011100100001111100011110111001101011110001110111011010000010110001000101101011100010001110001111011110110011000110100000000110101111000011100000010000011100111101111110011101000100010010100111100011001100111110100100011100000001010011101000011010001010001111101011011100101100001110101100000110100001011010100000101001101001001111111100100010101101001101001101111000010010110001110010110111010011101011000010100110011010100101011011000000110010001000111100010101010011011001111000001111010000101111001111000011110100001100111001101001001000111001001110011101001010100011001000111010011011001010100000111100011101111101110101110111110010110111111100110010110001010110111111111111000110001011100011010011101000001010000001100100101000000000010010000001101110100110010111010110001100100111111000001110101101111010111110010011111110000011011001000101100111111010001001010001101101011001101101011011001111101001010101001000001100100100100110100101011011000011111111011011000111101001010110101100110000111111000010101000001001100100110010000010011000011001100000111111001010110000110101000010111001010110010110111000010100000001111001001010011010011100001100010101101111101100000111110110011001100001111111110100110110101010000110011111010101111001111100110101000010101100010001000000101101011001011100111000111111110110110010101101010110101101100110011011000011001100110000101101111101011000111110011001111111110000000000000111001100000111011111011101010100001001011100000101101011010011111101000100001111001001111110101001111001011011111000110001010000101010011101001111001011001110110000100010111001011000001010000100010110000001110101010100111110000011111101101110001101001011000010111001010111110110100100010111010111010101000001010001011100011110110000100101110000111001100011010010010100010011100101111001101100111011101011001010110110010010100110100111000001010000100011101011001011100010001000010000111011011001110101011001001110111100110001001001100110111011000110001111100111111001100111110001001000101011101110000101001110001011010011001111101101001001001110011101001001000111100000111101100001101001101001000100110000011111000011011001011101100110101110110010010011100101001010001111100001000000100110111111100000110110111010000001000000011011011111111000011001011111101000000111111111011000101111001100111111000101010001001111110000111000111100011110101111000000100100101100110111010001011110001110001101011000001010111010011101100001111001001110110100101100100111100110101110001010011011110101111011010000010000011000001101110101001100111011000000011011001010111101011110110000111010010111010001000111100111010110111010100001100101110000011110011010000001000100010011100010101000111111101111100011101010110010111001111101001100101011110111010000011000010110011001010100001101011110001010101010000001001100101111110110101111000100110101011100001010100111111110100000000110001000001001111111110111010100010001000100010001100000000110011101110000101100110100111100110110111001000011011001000001011011100100111111100111010100011101111110001001010001 +0001111000100011100111100000101110001100111000101100111110000100000110101010100101110000001100111001111101100001100100111110010000000010011101111101000101100111000111100000010011100110100110100100001000101000010000011001001011011010100011011101011001001010000000110001100000110011111011101000110001011000000110100100110101100010100000111100010000000010000011001101111000110100011101010001100000001111000110001111000111110011100001111010111100101111110010010111110111011101001001110100110000011010001111101110110010111111100001001011111110000010001000000000101010011110111010010000000100000110111101101111111110001110110110000111001110111101010011010110111111001010000100111100011100010010010010010011001011100100011101010111010110100001000000111011000011000101001101000010101011001011011010110011010110000110001110010010111001011101111101010100101000111101100101001100100110100110011000101000001101010110101100100110100011001000100100000001000100011001101101111110111101000011111011111001101101001110000100010101110101010000000111001001000110111011000101110110101100000100010010110111010101010110011100111011110100011100001110110101101101110000111011001000001111001101111010100010011111101111001010110011011011110001000110110001000101000100001001000111001100010000100101111101110000011101010100110100011000100101010001011011000111110001000011010001111001100101111001001111011000110100110000010000100100101001000110000111011011100001101011101000000010010110000011001000101110010010100101100011011000111010100010101110010101101101001100000101101101110010111011101000100110000001000110000111011000000111100011110101000100100101011001000100100011101010001111101010101111111011011110110110000101101010100010110000100101110101010111100010000001101000010000111011000011100110010001011010010011001011001110011010111101001001001110100111101101011000100001001100000111111010001010100111111100010001011000011010001111011111001101010010001000011100001011010111001110110011011101011110100111111100111100000101011010001100001000010101101110010101000000000101101011000000010100110000010100010111111111110001101101111001010110001101100111001011110011010111001101000001010110111010111111110111110001111111100111101001110110000101101010001111001111001111100000000101100010011111101001011110110010011011000100110011101110101101010100000101001001110011010100101101100000001001011101010000100010001110000101011001101000101100001001111001100000010010000101101100010111000100000111001001001001011111011011000001000000110010010000100100000111100000011011111011101011111011010010010101001011100001001011101111000001100110001101100100000100110111001111010111010110010001011111101110001110010110001011001001111011010111011110111001011001101111000011110010011110100001001000001011110011111010101110010111100011001010001110100001100101001001111010110000110001000010111101100111110110001001110010001111010010001001011100100100010100010011101100110011111111100000101100001010001001011110010100011101001101110101001000111000001000110110000110100111011001111101110011010011000101100010010111000110011110110110000110000011101010011101100101110111100010111111101111011000100001100001111111100010101111110011110010100010100001011001010111001001100111100110010001110011110000101011001110101101010110110011101110011011000101011010111001000110110101011100010001000010100110001111000111110111100100011000001001010000010100011111101000010010100101110111000000110011110001011000000000111010111110111111000100010100100011001110100100011101110010101110001010011000011110111001110100100111100000111110011101111001000100100100000110100001111110001000100001010110001001111111110110100110000010101110101111001000100110010001110111100100110001000101001011001110000110000110110000001101000111101010000101011111011001000111001001001001011110010101001101000000110110011100011110111000001101000110010001011011110100111100000001000111110010011010110001001101111101111101100110100010111111001111001011110110011001110101110000111111110101010000001001111101010101000010100100100000101011110000111111010100110000010101111100100101101010111010111010101111001001011010111110111111111011101000001101110010001100010110100001010010101011100011000111101010001010010101010001100011011011010010011100101011000101110000111011001000011000011000001001111101111110101011011001111101111010010000100110101010100010100000111000001101010010000111000101101011000111111001110111001010000110100101110101100011000100110110111111000110010---------------------10110011011010110011000110000010001100001010111111111110111001101110010100010000011111000000111111011110000000101101010011110010011010010010011100110100100101101000010100011000110100010100101000000001100011001010100011001111110100101010011000010110101011110110110111000001100111110010001001111111101011000100001111010101001100011010000100011000111111010011000111101111000000110111111000011101110100100010000010110101100111010010110001011001101111010001111011001100100011000010101111010011001001010010011101000011100000101000111101010101100110100001000001010010110100111111001011001100100001001111101001101110101000011100111011000101000001100001001100101010011000011000010010101100110100110000110101000101100110010000111100011111000101001000000010110100101011101001001011110100110001100110000110101110111011101000110101101111000010100010010111000101110011110000110110100110100100110001011010010101001110011100011111011101111101001011101011100100100101100111101010111101011101001011100100010111100000111100000001001100001110100111011011000010011010101111000000000000011010011101000001001110001011111100011111000001001100011011010000010110010101100010011110001101111011111110101110110111100011011101111101011101001100010101110011101111110111110100001010001011100011111000001000101000000001110100110001001011101101100011101010100111111101100110001110001001100010101101100101111100111101100100100100010011010001101100111110100101111101001011011011001000111100110110000000101000001010001000100011110101001110111000011011100010101010010010010100110000011110000111010000110100110011001001100101001011110000001101110001100110100001011100100111001101100100001100111101010000100100011001001101000100011101000001101011010110110000100011111010101010010011110111111100101010011101100000010001011011000101000001010111111010111010111100100100100011100101001111011001111010000100111101001110100100111010110111100100101001110110111111001010111010011111011010000111101110001100000011100101001100100100010101111010000100101010010001111011101101100100101100001111011111110100000000011010000101010001011101100101110101100111111001100001010011110000011000100101111101001001001111110111001110011010101100111010101101110101010110100110000001111101010111010010001001100001101000011100000011110110101110100101010001001010000110100011101110110111110110101000001011001011110011100110101010001000100010001011100101001110001111010000010101001001100111011110111001101011010001110101010100110111110101000101000000101001010111110101000001110101010011010111010010000110110011100001010011011011100111001011001100110100000010011011001000010011011111101001100011110011100011010101111100110100001101100100010001000101111101011001111100011010100000001001111110011100100001011111010111000110011110011011101010000110011000111000000001110101001000001101111101100110010000010111011011100000111111110001111000011100110001110001010100110010011001011010100100000100111111001000100100111001110110011110111111011000001110010011110011111111110100100110011010100111001111000110001110110101001110000010110100000001101110000000101111010001110010110101001111110100000111100010110011101011101010000100011010001100011010111110100101011101110100110011001011010101010101001101001100011110010000010011110001110101100000100100011111001000011010011011001110011010100100001001010010100011110100111001111100110100001011101100100100111000111101010111010111110110100110100001111001110010100100111101100010110010101101110100001000001110100100001110010010010000000101100000001011001001111100010010110001100011110001010111011110110111100100000111000111010100100100011011010101101001010000110101011010111110111111000010010001000011111110101000100111111011000110011110010100111101001101100011110100110100010000100111011111000110010100001000001001111000000111010110000101101100101111101110101010110111001111100000010110111000101101011110011110011000111111010001011011000100111001101100101010111101110010101100100010011000101001111100010011001101101101110000011100101010000101011101110011000001000001000001101100011001010011111100110010011001001111010010010011010100010100001100100010011011111011100110000010110111101111001100101110100100111110000000101011001101101011010010010110000010001010110101001010011111110011110000011000110000001101010000001101010000010010000001100001100111110010100001010100011001010001000110100111111011010101111101101000110110101011111100111110101011011011110111101011011110000100001100001001110001100010110010101001111100011111111001111100101101100001010111100001011111101000110100101101100100100111111010101111001011110111101100010101001111001000101011111010001000111101001010001100001100010110101011001110111001001011111010111111101101010001001101001111011000001111100000001100110101001001101110100110011101110011011010111000100011011110001100001111111000011000110100010110110000011001100111110010000011001101000001100010101100110101101101011000100001101001001111001100101000101100110000010000111010000011101010001001001101001101000000010010101111010110000111001110101111011011111111111101100110100110100010111111111000000011100110110000110001000110010011111000110010001001100000101000110000000010101111011110111010101011000000101000010101010100011010010010101110111001100011111001100110001001001101111111000011100110111001110110011110100101010111101100000000111001010111010001001111000101011101000110010000001011000101100101000111100001001110010010000110111010001110001110101000010001100100000100010100001110000010110100010010111010011111010001111000111111110110001011111100101110111110110111010110010011011001110101100001100011100100110001001110110111100111111011100111100101111000001101101110101110001010001101100101000001110011101101100101000001110011000101110010001010000101100010010100000010110000101111000011001010011000101111111111001000000000010010110100101111111110111011100000011011100111110110110110001100100100100010001010001011101110011001110110111010111111000000111011010001011101110100011110010101000101101011111001101010100010100011010101101110011001101010101011110011000100100010001001101111111000101110001101001111100110000011101010011000010010000101110010110001011001010111011101110000111000101001000111100100010111110001100010111010001100011010000001010110000111011101101001100101110010011010100110101110001101100110100100011110010100110011010100101111111100100110010110110011100010011110110000010101110011011001111001111111110101000011100001000000011111111110110111110100100110001010100001110100100111010010011001110111001111000010000101100011000101011111111101011011000001001010011011111010100011111100101111110111111001110111100100010001001001000000111100000100010010100010010010000100100000100010010100001111111010010111110001001101011001000110111110011101000111101000001101111011101011110100000011110101100111000001000010101110110110101100111101010000011100100010001010001001001101101000101001011111011000110010000101110111010001000000110010010001101111101000101001011001011111001100100111011011111010111100100111010011000001001110110001010010011010010100001110111010101100011011101110111100000101001000000001010110100110001001110001100101110001001001010100101101011110101000000001110100101110110101110111111010001101110100110011111100010101011100100001100111010001111011010000001100000011110010111110101111011010010000100010000101000000110001001101000110101101000110111100011000111111100100011001000011100000111111000011010110001101000001111001000111000110111000101001101111111011101001111100110000111111011001010011001101101110011011010001110010110000011111000010000100110111001000100010010111101001001110110100111111100011001111101001011100111011000110100011100010010110110010110001100101110010111111110100101110001101111011001001100000101011011011110100000111110011011011110100011110000100000100111110001100100010000111110000000100110101100111101110100101111111110101010001010100111011100100111111101100000111110011111001101101010011100101101100111001101011001101101000110100101011010010001111000001110001111001100100010001010000010110111110100010111101011010011101111000000100100010010110000100111000101000010011111001110110001000111010000010011001011111101100111001001011000101001111011011010101101001110011110101110101011100110111001011000001011001100110100010100001111011001100111010001011010011110001110101001100000011011100110110110100000101100001101110000100101011110100010001011101110001101100100010001011100010011111001110101011111011111110101110100110100110010001010001001010100101001010101001110011010010010101100110101110001011011000011001111111101011000100100100011101111011010001001101100100010011010001111101100010000101010101010111100001010110100001000001101100001010111110111011110101101010101110001101100010001101001111000001011101111100100101101110111100110000011000001011001100110100001000100100001010110001010100000010011100100110010010001110100100001100111111001010001001011001110111010111000001101010000001100010100001000010011100111000100100101111110001101110111011000101011011100110000111001100001111010011110111001011110110011010101000010011011011110101110111111101000011011011000101110111110000110110011011011101101111100111101110101111100001111010110101010100001111100110011001100110101000110110000000101011111110011110001001110011101100011001111110001011000010011011011000110010111000111000001000001110111010101011100010011001001000011100101000111111010001110011001000001000100101111101001001000011101111010110100000001001000000110001010110100011111001110001110111100101001001001010111010010111110100111011001111100110000100100000001010010110000000111100110101000100101011100101000110011001011010000001010101000110101011001100010111110000011101101111111000000000000011011001111110111001100001001001010101110100000011001111101111011011111010000011010011010111010000011111111110011100011111100101101001011000100101101000111101010101000001101110001101010000011000101011101001111110000101001110011100010101110111101000101001011000110000000001011010111000100011001100000001100011010011111000110000100000110110000000011001011110111001110100101001100000010100010101100101101101101011111000001010100000000110011001011011010101011100101111001111110110011000100001011010000111001000100001000100100111110000110001010010101001100010011110100101111000000100000000011011011010001000011100110111100110 +1100011011101100111001011110101010111111110101011000000001111000110101101001000110011010011001010010010110011111100101100001100100100101011011000101001110010010101110001000100001100010111011100111111100110010010001010011101110111101010101000101110001011110101100010001011010110101100110001101100000011100110010110111111001011011110011010100101001001111001101110101110011001010100110111110001000010011011011011110100000010110011001011111000100001010101110010111000101001011101011011010101011011101100010110101011011000010111011010010001001010000110101101101100010101110000101100100110000110000110100000101111011000010001110000001000000000111010011110100100011010000000101011100001010011100001110001110111100101010001011000111100100111100011000101000010100000001011001101010010111100101100010001010001101101001101001001001101001010100110010010011111100100010000010011010000010001011100001000010010110001010100100010100011010011110111011100111011011000011110001010000011110100111110100101000101101101010111011101111110111011100111010001101010110100100101100101111111000000000111111011011010100100000110011001101010100100011101011010010100000000111001010000110000101010000010100000110000001010001110011000100000011101110110010010101011111000101100111110010000110000111100011001010111110100100111000010010110011010001111011011001011101100000011001101111010101011110111110100100011011111101111111110110100101100100010011000001101101111001101111000110100001011101001110000101000001111011100011110001000011100111111010010101111000101100101100001100010001001111110010011010101011111101010111001111001000000010000000001011101101001011000100001010001000100011100110000111001011101010101000110000001110000101011101111100100000110100010001100010100110010100100001111110011011101010111000110111000000000011001100011010110011010110110000110000101111110011111000010111110101010111111011001011110101001111000000100011000100110111111011110101100011101010100100011101100010111111101001111001000010000001000111100111010100001100100000000100111100000011010000111110111000000110111101010111010101101101000100100100110101110011000101110101110010110100110010001110111101111010110111111011010000101001100001111101110011000000000110001011111111110010110010000010001000101111011011010001101010001010011100001010101011111111101001010101111000010001101001001000010111101111010110001000101010001100100111110000110001110101111010100111011100000111100010011001010110001110111010001010110000101000010111010000011100010000010001100011001111010101101010110111001111101001100101100110011010101001100101100101110010100001110111110110101011110000011000000111111101111000111100110101010101010111010110101001100000000110101111000111101111100000100111000010100111100011011011011101111101010000110101110101101111100100011011010000110100100011011100100110110000011101101001101101111001111101111101101000100110010110101001110000101000100011000001001011101101101111100110000010100101100000001111010000101110110100111111000000111010001111011000010110000011101010011111111011111101110011110011011000011111000100111101101001000100000101011100010001101001011100101000001000100010001100001100000111010110000111001011101111110011101001101010111111111101011100100101000010000000010111010110010000110010100110010100111111000100011100111011000111011011010111100100111110010101001010111000111100000100100010110111111111011000100001010111000111111000111011101010011000011001010100111111011011011100011101111101011000110010001011110110010100101110000000011101001110011000101011101110000100111010001000100001011001001100100111000111001010100110001001001001110010011101101100100110101101010100101011101000011010100000011111101001111110000100000110101011000000110000011000111100111111001111111001000001110001100001100000000001000001111001011010000000100111000010111111011010001011110011100011100001101010000111011010101110101101100101111101001110001111111010001010001111110010101100100010001111110100011111011010000111101001110010001110111101100000110000111100110010110000011000000110011000100011000111100000110111110111111000111100100011010000011011111111011101110011000011111011010110100110110001100110000001011100010000110110100000110100001110010111110100110110110111000011001001010000111101000101101100011100101110011011010101100001100110110000000000111110011101000101110101001100011001010110001001011101100010010011101001100110111110010010101011111110011100011001000010111000110110010011111001110110011101001011000---------------------00101101000000100001101101000111111010000110101011101111100010010111011010010011110010001111110001110000000111001111100111010011100010011011001101000111011100110001000011101101111111110101010001011001111110011110110110101111011011010111000101100111101110000110100101111101100110110111001001110010010011011000111110110001100011100101101101101101111001010010001110100101001001101101011000111101100010100110110110000011110000101101001101101001111001001011111010001011101000111101111010111101001111011110000011110110000110110110010001111111011001110101011101100011000011010110110010110011111001100010011111110011110011011100011001110100111110001100101100101000110101110110101111001011011111011011101111111011011100101110000101101110110101010101010011010100100011001111110001111011001001010011011000000100100001100000000010101000110111101000100000100011100011101001000011111011010101110001110111110110011011101000010111001011101011010111101000010101000101010000010011001110100010001001010011111101110101101011101011001100001101100011010000100111100001000000000101110010011011100110000110001010010010011111000101100111011111100110000101010001010001110010100100110010101100010001010101000111011100110001101101100111011000010000011011110010100101011110011011011000111000101100001101100001100011011100001110001010011000011111111001000101000100000111101101000000000000110000101010101100100000001100011111011001011110100111001101110100011100110101011011011011101000011101011001010010101100111110000100111010100101111110111001110101100000001011100110100110010101001010001101101110011110100100011010010001101110001001001101001111000011011001111011100001110001111100001101111100000101001000010001110110011010100010001010110010001001011000001001000111010100111010110110110100101010001010010011011111011111100111100000110100110101110010000111001101100101110000100000000011111000111010000101100111101000001111001011000010010111110011111110110000000111010101011111000011100110110110110111111011011000001000001011110001110110011010111000000001010010001110111100101101011100101001010100101110101110111101101001101100000101110011100100100100011110011100000111010010111010111000110000101011000001111101110011101001011100100100000011110001100100101011111000110110010101000000001111101010010101110010110011110110010111100001001111110101110001000000001001000010011001000001010101101010111001100011100001001010100011100011111011001111101100101101111100010010101110100001110101111011100011100101111101011110011010010000010111010000001001101110111101010011011101100110110000010010001001001011000111111010100110000111111111111011110000110111001000010001100100100110111110010100110011110110000101000111101001000111101000001110011100000000010000011101110011010101000001101011001101111111101111000101111000111101101100110101101101111001011100101111110010011101110100110010000010000001000000101100111111000000001101011010100110011101010011101001010101011010110011100100000101110100000100011101111101001011000001001100000001101011000000000111101000110101111110101100101110001011001111110111001101101100100101101100110111010111110000111001110000101001001110011101010101000011111011000101100110010110101101100111101110111000001100110111101100110110011001111001100011100111101011111010000011000110000110111000001100011011111001100100110000011111011000101110000101100111100100000000110101000111100010101110101100000000011100100011010001000101001011100110010100110011011101110010100000010101110011101010111110100000101100110000011100111110111100101110001011001010101000110101011000011110001100111101100101100000110101010000110110111000001100110010101010100011101111110001011010000101010100000011000010010110000100000000101001000001100111001010000101011011010101010111100010001010011101101010011001100100001010101100111010100000100111001011101011011000111001111101111011011101100101100111111100111111110000010000111010001010000000001100110100010100000000011001100010100011001000001000111001110111011000001001000000111000001010111100010101101101000011001010001001000111100011110011111110001101101011110011001000110110101000110110010111000001101110110011101110011100000111000001011100010001010110110010011010101000000001001110011111101011011111011111000111011011110111001111010111011010000110001001011010101000110011101000010101100000111000111011011000001011000110000110101001001010111110001010000001000010100111001000001100101001110100011001010001001111000110000010000010001000101000000011101001000001000111111011010100100101000100110101110110101110101111101110000011010011011110101000000111101111000000101001111010101010110011110001001001110010111100100110111000110011110110110101001101010110111001010001000100101010110100100110001011100110100110100100111011011111100100000010010111100101111101001111001110101110101100000101011011100000000110111010001110101111110011110100111001010001101110100100110101100101000011000111110100100100011101111110001111011111101100010101101011101110000111011000010111000010110111100101110101011001111100100000000000101011000000101111101001000011010011100001001100001100111101010101100001010001100110000110100101110110111101110001010011000110110010000011010110100110010010101001000010111001001111100101001100011111100010101100110001010110011101001110010000011101100010001110010001010000001100001000111011111011011111011101101100110100100100011001010010010010001001001001000011111100100000011001011000010001011110011110100011111010011111111100001000110001110001101100110110111110101011110001101101101010110011010011011001011000110100100100110110111000111001001011100111100111011010111100101000011001110001110100111110011011011101000010000111111100000101111000011011001000111011110001100011000010111110010010010001100000101000000001011100101101110011110110011100101010111101101101001110001100011100000010011110000111001111101001100111010111000001001000000001011000110101001011101011000100100100001110100010010000111001110000000010111000110011000011111110110000101001011101011001001000001111101011111000110011000001110101101011000010010100001011011111010110110011011010000100001110011110110110101101111011101001011011010100110110111000111010000110110011100101001100101110000001000101010011010110001111110011001001010011101100011111111001101010011111110000100111110110111111111111000000101000001101001011101101100000001000101110100001101101111001010100111001001111111110111111110110001111110111011000000011101100010111010010101011100110010110010101100110100101000010110001100110010111010110101111001011010010111101001010101010000100111010011100110110111011110001000000001010010101101001010111000010101010000010000011011000000000101011000010000011101111000011010110111001011000000010100001000101110101010110000101111100100001110111001110011111011111111100001100100000110110010110100101010111100000100111101000111000010011011110010111101001100111110011100010101101000001101010000000101101011000011100101110011011000010000010000000110111101111101101110111101001110001100100010001110100111100110010000001110101000000101000100111101011110101011010111100100010101010000011011111110101100101001110010110100011001110100000111111001000110010110111110000011100010000100100110110111000010111100001110100000001100001100011110010010011110111100110111101010010011110100000101000010100010110011110110000001000000010110100101010100000010111101000100011110101110011101110111011000000010101100000110111111010101110010100111110111010110101111111010010111100101000100001001001111100111001010100001101010010101011100000010110010000010101101101111001011000010001100101010010111001101100111011011101101010111110010111001010001010011111100100110011001010110011001101100100110000010101111000001100101100011101101001100100110100010010011101110110000100011000101100110001101111110010001101100100111000111010101000101110001000001110000010100101111100111111011010100100101110110010110000110000110110001001010010000011111111110100010111110101111100010000100011000010100010100101110111010010100100101100010101011001101111100101101100101001011110011001100110000011010110001011010101011011101110101110000000100100111101100010010000011110010111100100010011111010000000000101110111100110010010100101000011001100001011100101101010101101010101010101010001010100011111110000011111110100011111101001100000010001110101110110001000111101110011001111000011111011010010001000100111110001011000011010100110000000110100011100110111111010101110111100011001111011100101111100101000111111011101110101011111100011010101011100010100000111111000001111100011001010010100000111011010100101101010110001110000011101000110111110011001110011000000001011100101110111101010101001111110001000000001100001010110000001101011001111001010110111110101100011000111100000111110110100101110100100101010001000010100110111100100111101000001001110101000100001100100011010110010110011010110100101111101001111101010110011011000100001010101111011000111101111101010001111000110010010101000001111100110111000010001100111111100100100011000110110011001100100001010010010000010001001100011111110110110010101010010111111001111101110000100100001101110110001101100110000111001001001110111100110101001001111101010001101100011101001000011100001000000001001011000100001000000100010011000110001011111100100100010000100000111001000000110111011111001000100011110110011110110110000111100001010011000101010001011011010011000100010110100100011111000000010001110111010001100000111011111100010111000101101110110100000000110011010001111100011010110000101101111011111110001100000001001001110111111100101101111111010011010011011100010010011010110111010000100111011100110010001000100010011000000101110111001010000100111010111011000011110110001010111100110110011000100110101000100011111100001100010011111010001000001001100101110111001111000000101110111101111110110010100011101011011101100110010011000000011111111111101000101001010010000100111111101100000101100110000111110111100001101101010011110101110110001011101000001000111010001111110000100111001000011110101111010110110101100111111111011101001001000110011100011010111010110011110011001011001001011101110111000010011001011000100010100011110000001001101110101101010000011011001011000100011110011000010001110110001000101101000100001110110100011110111010110010000001000000110001111011110000100110010010100001010110010010000110100011010101100001110100000010100011111 +ls9msgs +101000111010010100111110100111000101010011001000001010110110101100001100000110100100001110101000111101001010101101001011010100110001001111111110001111001001111011000011010010000--------------------- +000001100011111001000000010000111011010010010100110011010110011010111111000001111111010000101001010111000000010101010100011100001110100101011011001100000110000011101000000110110--------------------- +011011111110010111001101100010010010011011110111010101100101010001000001111110011101000010111011001010010011110000100010101010101101110011000000101010011100000111110001000011000--------------------- +110111010010100000010111010001001100100011100000011111100011101110100101010111111000101101101100010010011010100000101101011000000001110111110000111100111001110000000110011111111--------------------- +111000010011110011110011111101111011111011000111101000010000000010100000000010000010100100101001011110000000101011100000011000010001100110011010000110000011100110101111001100111--------------------- +010011101001010111001001100101011011110110110110111010011111001110010100011001110100101100001001110000000010100111011101011001111111001000100101100111010110100010001011101000111--------------------- +000010100100011001101011101010110001000101111100011101000100100110100111001011110000101111111101100010010001101001101011100110000011101010110100101001110010101110011001101001011--------------------- +111001011111111110011101001111011101110111010101110111100110000010110011110111000000101000010011000110101001011101101011100001100101100111000001011110101011111000110101100011101--------------------- +100000010010101011100110111101110010110011000011001101110011001110001010000101010111101110101100100101101001001101100011010101110110010110100100011101100101100101110000000001101--------------------- +111110100110110011000111000010000000110101011100110101101001110010010001100000101100001000100011011100011011000000000000001001101111111000010110010100011010001001001010111011001--------------------- +ls9cwds +111110100111000101010011001000001010110110101100001100000110100100001110101000111101001010101101001011010100110001001111111110001111001001111011000011010010000---------------------010011101010011000111000000101101110100010101001001000111001001000011011101110101101110110110100101011001001101010010110111001000110010001000010100011101101100010111000010010111001100010001000011011110011101011110111111000101011010010101010101100010101001101100010101010111010111010010001110010101111001010100101010100111100001000001011011000110101111110110101010011111010001111100111110100101000110101111111100000 +000000010000111011010010010100110011010110011010111111000001111111010000101001010111000000010101010100011100001110100101011011001100000110000011101000000110110---------------------111000011110111100010011011101001010110010010100100011100010110000011011000110010100000000111100111110010011010011000000111001110110101100110111101001011000111111010101010011001110011110100110010011111000010110110100100001011100010011101001010001000101111010001101100100000110111011101101001000110011110101001100001111110001000001010001011001000101000010001000000001100100010111111010011011010100101111100110100110 +001101100010010010011011110111010101100101010001000001111110011101000010111011001010010011110000100010101010101101110011000000101010011100000111110001000011000---------------------101100111111010011010111101000101101111010100100000111011101000001001011100100000101101101001001111101111000001110010011011011010111100111011111101000111100110001110100010111100000110001000011110001100000001001100100110001001111111011001011101101001110000110010000110100101011001111110111101000000011001111011101001111100111011001100011101110010100001111001100100110010000000001101011111100010011011100001100000001 +010111010001001100100011100000011111100011101110100101010111111000101101101100010010011010100000101101011000000001110111110000111100111001110000000110011111111---------------------011111011011000011110011100011101100010010110110001010010010101001111001100010111010010001011011110001010010101000000110011101010110010110001011000000011000010101110111101110001100010001101110000000111100000011100000011011101011100000001100000100000010110100100110000000111110011101101010001110000110111110011111000001110101101111010100111011100111111000111010011000101101011001001101000100010000111101001001101011 +110011111101111011111011000111101000010000000010100000000010000010100100101001011110000000101011100000011000010001100110011010000110000011100110101111001100111---------------------110101000101011101010011111011000000111110001111111101001110000000000111000110011110011110101010100010101000100111111000111110100110110011100000101100000100100101011010000100101010100110111000110100001001000111101010110010100111111110011100011001100011101100110100011110011101100101011110000011011101100000100111101010010000100000010110110110100110110110110010001001011011100001101010101000110101010000000100010101 +001001100101011011110110110110111010011111001110010100011001110100101100001001110000000010100111011101011001111111001000100101100111010110100010001011101000111---------------------111111011001011101001111010100111110001000100111000000110110000011111010100001010100011000001010011011100010010010001111000001011011100111101001000010100111100010100010011101100011001111110010001000010100101010111100011001111100110111111101110001100000011111111001010100001100010000000001010100111000111011101011101100010111000011011101010011101100011110010010011011000011001001100010110111001100111111010101111101 +101011101010110001000101111100011101000100100110100111001011110000101111111101100010010001101001101011100110000011101010110100101001110010101110011001101001011---------------------111110000001100001110000111101100101010010011010000110100101100010001110110000111111111101101100001111101001011011010001110101111101000111110101101101101110000000101010010111110000011001000111011100001110101111000011011000100110101101101001011101100011111001110010100101100000001101111010101010100101010000110110111100010000011101010110011110010100110011001110011110011111101100111111000000100000000011011110101011 +011101001111011101110111010101110111100110000010110011110111000000101000010011000110101001011101101011100001100101100111000001011110101011111000110101100011101---------------------110011011100010010101111111101000011110100010101110010100000000111100101011101010101010001111010010100100010001010100010000101101010000100100101000010010101110100000100110001110011000111100110111101011001000011101001110001111110011000001101000101110110101100111110010110001001100001110110101001111110001010001101111001101110111101101000001101111001010101010001110010010101101101111001110101100101110001110000010111 +100110111101110010110011000011001101110011001110001010000101010111101110101100100101101001001101100011010101110110010110100100011101100101100101110000000001101---------------------010001110010100001101000101111010010101000010011011010110001001111111111101110110011110011111111001101010110101101100011111001000011000001100111001100111001000000110010011111110010110101111101000010100001101011111110011001111000101111111000100100011000001101000000100011110100101001100000100110110100000111111001010111010101001001010011011111011100011111100111010111110000110001100111000100010100100010100000101000 +000111000010000000110101011100110101101001110010010001100000101100001000100011011100011011000000000000001001101111111000010110010100011010001001001010111011001---------------------011010100010101101110001111010100000011000000001001010110001101011000011100000100101111001001100001100100001101110001110000010011111001000111001001111000000100000010001101101111011101111111101100110011010101000101001011011101111001110101100010111111000000010101010001111011011001100100100100000100000110011011110100111110101001101010100010111111111010101110001011010100010000010110011000110111000011001110010100011 +ls18msgs +010010011100010110011011001000101011000101100111111011110110001101101100101000000101110110110101010101000111010101001001000111101100010100010000111110000010010011100101010110100000010011101100101000010001000101001110101100111000000110111100001000101000000000111100100110110001101101110111000011110010010010111100111010000101101110001111000111010001110111001110000101110110111--------------------- +111101110101000101000010011111000011010110010001110111100001000111001010100010110001110100000100111001000001011111001110111101001011001111111011000111100001000010010000101010111000101111100011010100001101111111000111010111100100001011000001011100100110001011010011111111011010110010100010000001001100111110011111110101110110101000001010000001010001000110110110111110111101111--------------------- +110110100100101000110101111101011010001100100000110100010100000000010011100001011001110100100100100010100101010000000010100111101011011111100010000010101111010100010010101100001000011111101100101101010011001100111101011101001100001001101100011111010000001100001010101101010101111110110110000101110011011110001100101100100101110001000000001011000010101100101000000111010000001--------------------- +111110001010111000010110111100100111100100100110100000010100011111001101110001111000000001101001110110010000111000010001011010001101101000101110010110010000010001101100011011101110001000011110000101111010110101111000110101001011010001101111011001101000000100101110111000110111011111001011110010000001100110111010010000000110010111000111100010111001001000111011101100101101010--------------------- +111000010101010101011011010011000000101010011101001011001011000100010100101001010100101100110100110000000110010100100100000100010001001001000001101011110100101101101101010000111001111110101011110001001100100101010111101001100101100111110101000100100001111011100100101010001011111110110000000001100111110100111110010011100101110100111010111101111110010110110001010011010100110--------------------- +001011100000101001010110110010010100010010010101101110110101100110010011010011001000011110101100101010010101111000000110111000110001101110001011111110001111001111100110001011111110110110100111100101110011000110101011110001101010011110100100101000011111110010001111011100001000111000100111100100011100010100111100111011110000110001110101101100110110100010100010001100000000010--------------------- +001000101101110010011010010101011100110100011010010101101101001100010100011001000101101110001010111011010110001101011110111010110011001110110100100011001011101001111011000101011010110010110000110000100011001100111010011000000010010110111100111100100111110000110111011001111111011000111111011000110100101001110100010100011010110011001011111010100110111101000110001101000110111--------------------- +111100111011111000111100001001111111101011000011010010010100101110101101011101001001100100011000111011110100000101011101011001011111010011010001100111101000011001101000010010100110110111000100000100111100110011101101011100100110101101000111000111011010100100000100110011110000110011011111111101100101110010011010111010010110000101101101110001000001001110101101100000100010100--------------------- +100101011110011010010000101011011101101011001110000110100001001111111101100100011101000001011110000001000010000110110100001111110010010100101101011100000011001001110110110000100001011010110101011110110110110101100110011011000110000001101010000111110101100100101101010000001000000101101001101011110001111111111110001111111100101110000001110111100000001100101011100001110110100--------------------- +010000000111001001110001010101011111111101001101100100100010011000110110010110000110100101000011001001000000000111011111111100101011111010100111101101011000011010001110100100100011000000111011011001001100100111111000110001011001000010001110010101000000001010100001010001101010000001001011100100010100100101110011100101011111110011101001100010100101011011110001100001110011000--------------------- +ls18cwds +000101100111111011110110001101101100101000000101110110110101010101000111010101001001000111101100010100010000111110000010010011100101010110100000010011101100101000010001000101001110101100111000000110111100001000101000000000111100100110110001101101110111000011110010010010111100111010000101101110001111000111010001110111001110000101110110111---------------------100100011000101110011001110111111100000110110011000110001001101000011101100000000011001010000100100110111111011100001111001101101001010011100110100101010100110001000000101000001000011100010011111100110101111100011101000011010101011111101101111111011001010101000111110100010010010110101110001010111000101110001110111010011010101110011001110110100000110001000011011011110101111111100100000100000000110011100011100111111100111011000101010000110011001100101111101111010001100100010001111000101110010000001101000001000110000100011101100110000011011110111011001111100010000111101000011001001010000110001111111100110100101000001101101001001111101001001100101101110001101111111110110111111111011111100110101001101000000110111110011111110110010010111001101011011010001001101110000110000011000101001110111000011011010010001110001110110100 +010110010001110111100001000111001010100010110001110100000100111001000001011111001110111101001011001111111011000111100001000010010000101010111000101111100011010100001101111111000111010111100100001011000001011100100110001011010011111111011010110010100010000001001100111110011111110101110110101000001010000001010001000110110110111110111101111---------------------110011110101111001111110001000011110111010011111000011000100110111011000000001000011110011101100111111101011110111011100010100011001110100001110101111100100100110001010011001111111000101101011110110110000000100010101100110110001101111000111110001011001010011111101101111011011101111010010100010101100100011001001110011001111101101000000001110101001011010100011010110001001101000110111100010101101100111001000010000111010111101101101111000101001110011110000011000111011101100010001110011100000110111101100000011011011101001010110011110111001110010110111111000111101100000010100011010010110110001001011111111000111110000110010001101000011011100010110111101111001011001111101001011111011111001110010111010110110010010001000000101000011011110110010100010111100110111010001111011111011101010100000111000111111001000101111101110101011 +001100100000110100010100000000010011100001011001110100100100100010100101010000000010100111101011011111100010000010101111010100010010101100001000011111101100101101010011001100111101011101001100001001101100011111010000001100001010101101010101111110110110000101110011011110001100101100100101110001000000001011000010101100101000000111010000001---------------------011011011101100110011101101101000010001100101100011011000110101010110011000011001100010001000100010110010100101001111101100111101000010111110111100011100100011110101100111010011111011111110111101001100100100101100101000100111100110000100000000101111110111100100000001011110101010001010001101000110010101101111010111111001010101100001000001101100110110000111100110100001100000001000110100011100000101101100010110111101110110000011101111101011010100100100000111101000111100110110001000011111001111011011100100111001100111001100010000100111010001000110001000011100100101110111000100100111000000110001010010010111010101001011111100101000111100111001010000001011000111110000100001111001000011010000001000101000001101010111100000110111001101000111011010000011111100010001001001101000001000101000000010100111011110001110010110100111111 +100100100110100000010100011111001101110001111000000001101001110110010000111000010001011010001101101000101110010110010000010001101100011011101110001000011110000101111010110101111000110101001011010001101111011001101000000100101110111000110111011111001011110010000001100110111010010000000110010111000111100010111001001000111011101100101101010---------------------101100011101011110010100101101011100111011011100001100111000000001100010010101000111000100101001010000100001101101000010100011111100111110010111010000001001001011010100000011101100111110110100000010000010101011101101000001010000010111100010111101111110001101010101000101000000000100000000100011100011000001000011010100000110100100101000000100111101011011010001000000010100111101011100110010010001000011011110100100000010111000010000101110011011110001101001000000011001010101000011110111001010111011111100101001011000111010000100110111000101011111010000111011101100000000100111100010010010011010011111000100001001011111100010111111100111100100100110011111011001111111101101001000010011111111000001011000011010111111000010000001011010110010010110000100010110111011010001110110010110011111011001111100010010001101001100101000001001 +101010011101001011001011000100010100101001010100101100110100110000000110010100100100000100010001001001000001101011110100101101101101010000111001111110101011110001001100100101010111101001100101100111110101000100100001111011100100101010001011111110110000000001100111110100111110010011100101110100111010111101111110010110110001010011010100110---------------------000101010110001100110011101010000010001111010100110111101001000000010110100011011110010101011011010111000001110001111000110000110011001111010010010110111111111001111010000000010001100100011100000000000001100110011010000001101011001011011110101100010111110100000101000100111100100111110100001111111110010000000000000110100001111000001111001010100110001101011011100100100001001010000111101111111101101000011110000111101000110010010100000111101101001010111111001000100100000110111100100101100111010011110011111011000001011011010100011011111110101000011101101111001101111001101101000011110110000011111000011011111000011000101110111110100011001010111111101001101000010010011101111101100011101111000000101010101100000000110110101010101111101111011010010000000011100100010001110101100101101110010111101110111101001101111001001111101110 +010010010101101110110101100110010011010011001000011110101100101010010101111000000110111000110001101110001011111110001111001111100110001011111110110110100111100101110011000110101011110001101010011110100100101000011111110010001111011100001000111000100111100100011100010100111100111011110000110001110101101100110110100010100010001100000000010---------------------011110110111110110001011000110000000110111110001111011010100110000000110000100101111001000101111101110010111110010011110001111111000110011100000101010001110101011101010010100001100010111011010010011110010101010000011000000010000110000001110010100011101000101110011100011110110100000010001010110110000100110110011110111111111100110110111110111110111000110001100000011011010001111010000001110110111100001000110100101111100101101111001100111111101110001111100111011111000111011110011001000010100101011000001110010000111101010100101001110110000100100010100101011100011000001110100110011111101011010110101001101000110100000011101001000101000000001101011111110001110010101111001011100001011101011010100111101111110100011001111000110000000100101001011110010011111101101111001111111000010001101101100101010111011101111111100110101001011 +110100011010010101101101001100010100011001000101101110001010111011010110001101011110111010110011001110110100100011001011101001111011000101011010110010110000110000100011001100111010011000000010010110111100111100100111110000110111011001111111011000111111011000110100101001110100010100011010110011001011111010100110111101000110001101000110111---------------------011100101001010010010001111110100101011011110000100100000100110110100111000110100010010101100100111100011010101010111001000100111101011101010111101111110001111011010000001110001111110110011110111100110101100110001001110001100010010101000010111111001000010110010011000101000101011010111101000101110100110111101110001001101101000100010010011001101110001111000100001100100001111011110000000110110001101100101111001111000101100000101111010111001111101110010010010011110100010100001101110111000101110110000001101100101111110100101111001110111011010100101100011101101010100010000001001111011010001011011101000001100001111100010100101000000101100100100010011000110011000001110111010111011110001101010101110111110111101101010111111010110111110000010101000011000100111010101100111001010100010011001100100101101100001111101010110010010000 +101011000011010010010100101110101101011101001001100100011000111011110100000101011101011001011111010011010001100111101000011001101000010010100110110111000100000100111100110011101101011100100110101101000111000111011010100100000100110011110000110011011111111101100101110010011010111010010110000101101101110001000001001110101101100000100010100---------------------111010010111101001000001001010011111010111010100110011111011011011001011000000101111000100100101000011011010110101111110010011100011110000110010001011101100001100111111000111000000111100110111110111110100101001110110011010100110011100011101000000101101001110010011010001011010100101110001100001111010001101100001101010000001101110110101111010100100001001101110111001001000001110111101001011011111010011011100001011001101100000100001001010011111111010101001010111101100101100001110101111101101001010100001010110010101011101000110101011000110010101010011001100110000010110100111010101010010110101011011110001110010101011000111100100111110000010110011110000100100011010111010000100111010111101111111000001010100100011001110110000111010111000101101011011111100101001100100011010101111100011001001011001000111000000111011100110100001 +101011001110000110100001001111111101100100011101000001011110000001000010000110110100001111110010010100101101011100000011001001110110110000100001011010110101011110110110110101100110011011000110000001101010000111110101100100101101010000001000000101101001101011110001111111111110001111111100101110000001110111100000001100101011100001110110100---------------------110110010111101010000111110011000101100110110011110011011000101111110100111011110011100100101000101011110100100101000101111111100101001000011010110111010110010110001110110111000111000101110100010101000111111000111101110000010100011100010000010011011101110111100111110000110110010011000010010000111110111110001110111000111110101101110011011010111000011111110101100000010101100101101101011000100011111000101100101000010001011110111000011110110111101100000111110000000111100001011111001101000001011101000011011110100000010101110101110011100010101100011111101000110110011010110101100101110110110101010110111100110110010110110001110101000101111001001100001010010001010000111101011111101101010001101010101001001101011100010111000001100010100000110111011010111100100100010000010011101101011001101010010011000111000000110111011100000001 +111101001101100100100010011000110110010110000110100101000011001001000000000111011111111100101011111010100111101101011000011010001110100100100011000000111011011001001100100111111000110001011001000010001110010101000000001010100001010001101010000001001011100100010100100101110011100101011111110011101001100010100101011011110001100001110011000---------------------011101111110110011001110100111101110100000000011001111100110000100100011101011111010111000110000110110011110100111100101001110110010100000010100101100010000001011100001100000001100101011010110111000100101010110101100011000111001010110101101010101111111110111100111111001100111001001010000011111011101111001000110011110101010110010100100011011100101001011101011100101001010111000001001101001111011100100101011111011010001101111110100101111100111000001010010010000110000111001011011011100000001111001101100101101010000100000001100111110001010111001011001010001001001001010001000111111000111100101000101100110111000011010011101010111010001100101011011011011000111110100110001100111110001001101010010111001001000111110101010110011001010101100000000100101011100011111001101000010001101010100110100011010101111010110010010111011010100 +ls36msgs +101100111000100011111011101011110101101000101110111101010011010101010011111111100010010111010100110010010100000011101100100110100000001110101101011010001010100101011101001010001001001110000001101000000110111000100000010100001010110011100001100111011110000001010101111110001011001100010110011011101000011111001010101000110100000111000100101000111101111110111101010111000011001000011000101111100000011011010111010010110010111110111111000011110011100001100110100101011001001110110110001110001011101010101011001100100100011111011000010110111011101101111100111101011110100010111101110010001001010010110010001011011010101001101000111000010000111001110100101100010111011111100000100100100010110000010011101001011101000101011100100100100111001010011010010011000000010100111100010--------------------- +110010010111100101100100011110111010111111010111011010110000111101111100111101110001100100110001110111010111111010000001101110001000010001001000101000110111111000011010000110111101010110111101010101110001111101010011110000111000000110010100011111000101011100111111001110101000110111100000101001011110000010101011110111000010000111100111101011000000100000110100001010011000101110001100010100100000010111001100111101101101100011100000010110000010001100001000000000100000110100100010111011101100110100110110100010101010100000111110010111110100101010010000100101100100010010111100010011110101100101101000010011000100010100101110010000011000100111001010001101111001000101001110100100000000100011110010111100000100011001001110011100110111000001010110100010010001001110110010000--------------------- +000110110101100000100110100001101001011101111110110010001100111111011000110001000101011011100001011111111101110001110000101100011011001110101001110100100110010111111000111101100111100110110110100001011100101000100101100000100011000111011011101001000010111110101100001100110110110110100000101000000010111000101110110101001011111100110101011110011000011011101000011011000001001010101000110101110001010101100101001111011110001000111001111101000111100011111011010101011100010000000100010100000101010001001000001100100011100011101001011001010010110010100110111100110001001110110000010101011000011110010101110111101110011110101110001010100001100101100000011100001010111100010000110110001101001110011001100001100010010000101000011110010100110111010001010000010101111010000000001--------------------- +100001010011100100011011010000010001111110011110110000010110010111101011110001111111001110000111001101110000011000011110011100101001010110000000000110111101101000101010000011000011110110000011010100101000010111101110001110011101001001111001010010000000111110011001101100111000000000001111110001011101011100010001101001101101101101000100010111110110110011110100000110110111100011100010100000101011001100011101011001010001001110101000101110001100001000101010011101111000101111011011001101001001100000110010100001010110101110110011111011110110000101001110100111110100001101001110110010011010001000100100100000011100011001111100111101110001101001101010100010111110101010011000101101011001101100100011010110011011110111101001100010010100011111110110010110010111000000010110011--------------------- +000100001011011000011001011110011101011110111110110010010001110101011101101000110010110111011010110100111100111100111011100101111010010010111101000111100001100011001011101111000100010001010000111011110010100111111110101010001000111011000101011111101110101100011110001111101100000011100001110010101011000111011111111111010011011111111111110001001100001101000000110111010110110101011101010000101010100011000001110001000110001010010010101011100101100010101000101110010101011110101011111110101111110010101110000001101001001011110100010001000100000110000001110010100110001111011101101000000100001000011101000011100100000110011000100100000000010000011011100001000111000001011111000001011011011001111011000111011101001001001011001110001010000101000010001100110110100000101010011--------------------- +110101000111001001101101001001001011011011011000111111000011011011011100101100110110011001000101110010000010110100001001101110101101011110100011000101010111000000000011000000001010000000001110000011001011110010100001001000000100011100001011001001100110110100110011000101011110001100110110100111001110001011000011001110011000110010110100110011100101101010100000001101000100110110110111010001111101010000100100011011000101111000000000111011001000100000000011110111110011010111011000011001000111010011010111010100101010011100111010110010010101011101101110010000001010110110100110110001110101000110010111011001101100101110100111011100001110000101111110010100010100000101000110100000011001111001000010010000011111000001110100101010000001011101100110000101111011101110011100111--------------------- +101000001001111001001101100000101101101101000100011110001101111111001110111111111000011011111011101110110110010101011110010101011100000101000101110101100111111101101011011100000110011101010110110110101000111011110100100110011111010100000011000100110101010111101010110011010001110011001111110000110010111001000101001111101001110010001101000011101101101001101110111101110111111111010111101101100010110011101000111101100101101101010100100011111010001111001000100101011100100110011011011001110001001110101000100100000011011000101001111001000010100111110110100001111111001001010100010101010101111110010110010111101101001111101100100000001101101101100011101101110101100111000101000001110011100000100011001110111110011001001001001010001101111101011010010110011010001101110010111--------------------- +111010001100100110000100101110101111100111101011111010110101010111110101001100001010100100100010101101000111101110011111101100111100001010000000010001101011001001010010100000101010110011110000111001001000000110001001100111101011110010111000100010101011000000101101110100011011110100011010001111111101001000101000110111000111000001111011010110111000011100010111101000111011111010111110110101110010111111001000110001111111101010000010000101101010010110101010100000101100100011100110110001101000011111000001111110110011010100110000001110100011000000100000100100100001011110001110111110000111111111000001110100011010001111101001100010111011111100110001100100101000001110110001001101000011010000000111111000011011001110110000011111000000101101100101101111001101001010010001000--------------------- +110100011011111111011110011110000011001101000000011111011111101111101000111000010011011010010011111111001000101100101110001011001111010011110011111010111101001101000001000010101101000001001110110110111110010101111101101010111011000100101011101001100110011100001010100110101110110111111011100010011110010001000101001101110010001011001111100000011010010001000011011001111001001111100011001011111000111111111000011011100111101111000000100000011000001100101101000101000001101010000100101111111100010001100010001000001100011010110000111010010000101101111100001011010110011011011011110100010111100000110110101100000100101101001100111101001010101001100110010101011011100001010010101011001100111011000011100100101110100011010001000101111011100000000011111100111000001001101110101--------------------- +100111000111010001110001001111110111001100100111100111111101011011110111000101100111010110101010111100101101101011000100010110010010011000110000111110001000000100000001000100010111100101010000101100110100101001011000010001011000001010111111110100100100101111100001111011100101111010101000101010000001101101010010010101100110110101110010010001110001100110000010000100110110111110011000011001000101100001011001000101001111100111100011100101010011101011101111111010111101100100101100100000000011111001011100100111111110010001100001100011101000000001011111010000000110010110001011000011100010101110010011000001111101001101001001111010011010111000011110000001000110000000110110010100001011011101001001101111011010101001011000100111001100011001000010010100100110001100010111010--------------------- +ls36cwds +111111100010010111010100110010010100000011101100100110100000001110101101011010001010100101011101001010001001001110000001101000000110111000100000010100001010110011100001100111011110000001010101111110001011001100010110011011101000011111001010101000110100000111000100101000111101111110111101010111000011001000011000101111100000011011010111010010110010111110111111000011110011100001100110100101011001001110110110001110001011101010101011001100100100011111011000010110111011101101111100111101011110100010111101110010001001010010110010001011011010101001101000111000010000111001110100101100010111011111100000100100100010110000010011101001011101000101011100100100100111001010011010010011000000010100111100010---------------------111100110111111110001111100000000000111001101001100101111011010000001010100101110110001011001010101010100101100101111100101100010010000010000101010011000110011111110010100110010001101000011011010011011100001001100101000001111011100111011001100000011101101100111100111110000100110010101110001100110001100001011011101010000110000010010000101111000101001011011000011110011111101100011011000111100100110110101110111111101011110100101000011111010101001010101111100100000001000001000000101010011101100111100110111001001010110001011111101100000100011010111111000001001010001010100110001111001010101010100011111000111001000010011000100101100111001111010010111001001001011011000110110101101111010111011111111010111111011001100111111011100101011001101011110111001100111100100000011010000000100111000100001010011110010001000111110011010100000100101011110111111101110011011011000011000100101100011011111100010110011011011011100111110101100110110111001100101011001010001011101001010101111000001000110110000001010010101111011011011111100010011110000011111101110100110001101111101001100010101111101000010011110110100010100111000011110101111111000111011110011111111110011000110001111110000101000110001111100010111000000110111100110100100001111000110100000001110011001011001110111000100001101111110011001010111010011011010110101111110110100100101101011111110001010110100011101111110010011011001010111011111110101111001010110000101111100100101011011010011011010001110011011101110010100100010011001110111101001111001010000001010110110110011100000111111100000000000110110001110110011111110101000101110000000001111010100100111100110101111001010110011010010011010111110101101101 +111101110001100100110001110111010111111010000001101110001000010001001000101000110111111000011010000110111101010110111101010101110001111101010011110000111000000110010100011111000101011100111111001110101000110111100000101001011110000010101011110111000010000111100111101011000000100000110100001010011000101110001100010100100000010111001100111101101101100011100000010110000010001100001000000000100000110100100010111011101100110100110110100010101010100000111110010111110100101010010000100101100100010010111100010011110101100101101000010011000100010100101110010000011000100111001010001101111001000101001110100100000000100011110010111100000100011001001110011100110111000001010110100010010001001110110010000---------------------001110110101001001000011011110011011101111011101111000001000010010010100110100000000001010011001011011111111010011000100110011111000001010110101011011001001101110011011001010101011011101001100100011100100111110110101001100001110010111000101011111101100000100101100000010100010001011100111111110001000000101010110011000001001111000010100110010110100010011110111110111000011101000001110001010101101001110011011010000100101000100100001110000100100100000000100100101101100000101101011111110110110001000011011001110010000000111110000000001011011001110111000001100111000111111001000101000111000111111010110100111101111000001100110000011011001001111010111000011010110110010000100001100100100011101101100011110001011000111101011011000010110101000001101101001000001100100111000010010101111101111010000000000011100010010011111001101110110111100011110010001100010010110100010010001101101000101100101011001011111000010101010110001100000100011100000000010101000101101101110100100011000100010110000000011010000001111111101111001101000010110111110100101110110010100110111000111001010111011011011110101011011111110000111111110001111100100011011001101010011010001101011001001001010111110110110011001000101110001101001100101010111000000101110010000001110100110001101001001100100110111011000101011111100100101000010011010011011111000000110000010101110100100101000011001010100011011011110100010100100001110101010011000010001010000001011001001001001111011011001001001110000100110101101110101010001101101111001110110001100101100000001100101100001101111101010000111100001000001011110110001111110111000000111100100110101000110101100101001111001000111011100010111001111010001010101 +110001000101011011100001011111111101110001110000101100011011001110101001110100100110010111111000111101100111100110110110100001011100101000100101100000100011000111011011101001000010111110101100001100110110110110100000101000000010111000101110110101001011111100110101011110011000011011101000011011000001001010101000110101110001010101100101001111011110001000111001111101000111100011111011010101011100010000000100010100000101010001001000001100100011100011101001011001010010110010100110111100110001001110110000010101011000011110010101110111101110011110101110001010100001100101100000011100001010111100010000110110001101001110011001100001100010010000101000011110010100110111010001010000010101111010000000001---------------------001100100010111011000010111001101000110111110100000000000011011110101100100001000010001011001100011101010010010011111000110011001111101100100011110000111000000101011011011011000101000110100000110001011101101000100000100011110110111101100001110001000100110000111011101011110100100010111110001111101001001111010110110000111111011101001101110101111000101101100101111111100001111100001111100101000110010011101100101111011111101001101001010011001010000101000101001001100101100111110100000101101100111111000011011111111000010011010101010010100110101110010011111101100100110010100010001110110001000111111011001011111101001110110100110001110010101110011100111011011111010111010110111111100010101011000101001101000100010001100000110010010010000100101101110010100000000001111101000001100100000100111001111101101011111110111010100111000110110001001011001000100100000010110110101001100111111000100111100101000001000100100011101101011011110001101010011110110111001001110010111010010001111110110000011000001110011111100110010100100000010100110110101010111000110101100100100010011001110011010100010111010100100100111101010111100101010010010001111011010101010110101110111111110001011110101001001100011010110101101000011110110101101110111000000001110100001110000101000111000000110011100011001000001001000011010011010010001111110100100100010001101100111010001110100110001010110000111100000010111010011111010001101010101000111101011001011110010000101101010011010100001111110010001110000010100011110001101100100010001001011011110010101001001111100100110010110111111010001101011011000010000111100011111100110011110101111010001100001111110000000100111010010000001101101110111111 +110001111111001110000111001101110000011000011110011100101001010110000000000110111101101000101010000011000011110110000011010100101000010111101110001110011101001001111001010010000000111110011001101100111000000000001111110001011101011100010001101001101101101101000100010111110110110011110100000110110111100011100010100000101011001100011101011001010001001110101000101110001100001000101010011101111000101111011011001101001001100000110010100001010110101110110011111011110110000101001110100111110100001101001110110010011010001000100100100000011100011001111100111101110001101001101010100010111110101010011000101101011001101100100011010110011011110111101001100010010100011111110110010110010111000000010110011---------------------010110000101011000111111100111101111111000011010011010001000110011000110101111101101111100010100100101001000000001001000110000111000100001101000111101001110000100011000100110110000111010000001000100111011000111111010101100000010011111110100000000100010010010011010110001011110111001001000111000011010001010010000100000011000100011011111111100000011111100010011000101011111000111010101101111011100000010001111100000110000011011101001001001110111000010011010011010011101110010111100100011011110011110011111011011000010111011010011111101101011011010110100001100100000001111010001111010010111101011001000010111110101001100010101000100000000001010011001001010010001111111101011111101101110110011101001101011111101110001011010011001000010100000000000011101011110001110011001010001010110001011100111010001010011000010001001000000011110001100111101010001100100001111100011001010010001001100000000100111110001010101100110101111100011101100010111001100001101001000101011010001001010001001000010100111010101100100011110000101111000100010101110100111011111110101000110001100011100101001000101001000111111110100101010001101010010001000111111111001001101010000001010100101111100011010010110010010100000001000110111101010000010100110000000101111000011111110001101001101011001000101111101001010101000110110000010101010011101010100011111100101101101101001011111100111010111000100011111111100111001001000111010010110110011110100101110001111011010001001110000110111111101001111001100011111010101011100110001101000001100011001010011010011000111011100111100110010111101011100011100101011110111000110100001110100110000010000011111001011011000011111000001010100000101000010111101 +101000110010110111011010110100111100111100111011100101111010010010111101000111100001100011001011101111000100010001010000111011110010100111111110101010001000111011000101011111101110101100011110001111101100000011100001110010101011000111011111111111010011011111111111110001001100001101000000110111010110110101011101010000101010100011000001110001000110001010010010101011100101100010101000101110010101011110101011111110101111110010101110000001101001001011110100010001000100000110000001110010100110001111011101101000000100001000011101000011100100000110011000100100000000010000011011100001000111000001011111000001011011011001111011000111011101001001001011001110001010000101000010001100110110100000101010011---------------------000100111010110011101100001000101111011011111101100110110001101111001111011110011010111110110010101001001111001111111001011000111110011010000001111110101110110001100101100100111010000001001000010011110111000110000110000001011010010010000111000110010101001011110111111010010111111001110100001010010110000001011100111101100001001101000110000110101101101110010110110111011100010101111011000111111101001000010100101001000110011101100101110100001110000000000110010000010010001010110010111001010100011000001101111000010010001000110001000101010100001101000000010101101010010000100011001110100011100101001001001101011110010111011111010011101011101011001110000110011000000100001111001101010101111100110011011000110010011111111110110000111101010111011011010110101000101000110111011001000111111011110000111010100111100011001100001100001100111001010001101100011110101001000000010110011111110110000100110001000110100001100101010111110110110000001100110101100010000000001011100000101001101110110001110010110001001011001010001011000011100111000010001111110101000111001000000110100000100100001101100000011111000001011110100011010010001100011111001110101100101000110110011100011100010111110110000100111011000110010000010100001001001111010001100000101000010111101000011001001011100111101011111001000011011000111100011110001001111010100000001010001001011011101000101010001111101000111100110101001010110001011110100010111101110010001110001111111011010011111000101111000010001111000111100000100010110101000010101101011111100001111100011011000100011101001001111000101000100111100101010111100110010100000111001011111010011011000011010011100100101000000011010000100110111101010101 +101100110110011001000101110010000010110100001001101110101101011110100011000101010111000000000011000000001010000000001110000011001011110010100001001000000100011100001011001001100110110100110011000101011110001100110110100111001110001011000011001110011000110010110100110011100101101010100000001101000100110110110111010001111101010000100100011011000101111000000000111011001000100000000011110111110011010111011000011001000111010011010111010100101010011100111010110010010101011101101110010000001010110110100110110001110101000110010111011001101100101110100111011100001110000101111110010100010100000101000110100000011001111001000010010000011111000001110100101010000001011101100110000101111011101110011100111---------------------010001110010110010110100010100101111001110000000010111110001010111111110100000111100111011000101111010000101110101101101100010100010001011100100001101000011111111111111011100110111110011010101000011001011000010011100101100110100110010011101100100011000100000001011111011001010111001110011101010010111111011110001100100010001110001011110111110010100000101001101100011010110111100111111101001110110111000000100000011001010110111010100011010001100111000111001000101100111101101100000110111100001011000010010110100011010101101001101001110001111011100010101001111101110010011110101101001110100101100100001111101110001101100110101100110110000000011011011011110000101001000010010010011000111110101000010101000010111100000111110011001010101010110111011101001101110000101000101011100010101100110001001110101110001001001010110111010010010001110101001011010010011011000001011010110101011111010001010011001001111101111011100001000110010101001111100110001101010101011110111011011010110101000110010001100010011100100100101101001111111100011101001011000011101110110000100000100110100101101100101010111111110110011111010111100010111101110110111000111101010100000000010000011100001000001110111000000001010111110101000010111110110110101100010110001011110101100100000011100001010110010111000011011000001010011001001110010010001111001110100010101010011000010000000110001110101011111110101110110100011110111000011110001111111010000010100111011011110000010011011101000010100110010010110010000101001111111000101001010111111101100010101111100010111110101011000110000100001001011001111011000011101001001001111001001101011000111000000110111001001011110011100110001100100100111011000 +111111111000011011111011101110110110010101011110010101011100000101000101110101100111111101101011011100000110011101010110110110101000111011110100100110011111010100000011000100110101010111101010110011010001110011001111110000110010111001000101001111101001110010001101000011101101101001101110111101110111111111010111101101100010110011101000111101100101101101010100100011111010001111001000100101011100100110011011011001110001001110101000100100000011011000101001111001000010100111110110100001111111001001010100010101010101111110010110010111101101001111101100100000001101101101100011101101110101100111000101000001110011100000100011001110111110011001001001001010001101111101011010010110011010001101110010111---------------------010001010010000000010110101100010001010011010011001110011001011101101001110101101001101100000011111101011011010100110011110010101001100101000000110110010110010100100011000101011100011000101101001000010011110101101100100000111001001101001000010100010010100111111011111101000011000000000011100111000000011011011111111110000001010010000001111100100111111101111000000101000101001101000001001100000011111011101111110111110111011100110011010110010101010011000111111011110111100110100110100110110100101111101010010010010010101001001110010110000000111001100100000111000110000111011001000110100101000011111100100011100011110100100010110011111111110001001011110111111110111010111000000010100011100100111100111101100001001000010010011110100111011110110101001011111101001000110011010011110001010010110100101001111011100010100001111011111101000111000101100111001111010000100010011100101011110100100100100101111010101111110011111000010101000011110101110000111111010000110000010001100011110101011100000010111111111110110100100010101110110010000000110000110001010111000000001000000100000111101011110100000101110110110111011000000100000010100000111001100001001011100001110110110000001110001111100001001001101000110011011100100000110110001100011001000000100100010111010011000100110011110000101001001011111101000001101000010100101111011110101000111100011000001100001001100101101100001111110010010011101011111001111011010010100001000001110011010001101010110011100110001001000000111110011001001000100100111011110000010100011101111000001010111110001010100101101011000111011010100101111110010101010001110100011101100101010111011110000011011010100100100110000110010000110111011010 +001100001010100100100010101101000111101110011111101100111100001010000000010001101011001001010010100000101010110011110000111001001000000110001001100111101011110010111000100010101011000000101101110100011011110100011010001111111101001000101000110111000111000001111011010110111000011100010111101000111011111010111110110101110010111111001000110001111111101010000010000101101010010110101010100000101100100011100110110001101000011111000001111110110011010100110000001110100011000000100000100100100001011110001110111110000111111111000001110100011010001111101001100010111011111100110001100100101000001110110001001101000011010000000111111000011011001110110000011111000000101101100101101111001101001010010001000---------------------110101111101101000010101000110001101110110000111111011011011011010010110011001010100000000010011011110010100000001111011100100010001110100110100000101010101100111101001010011011011110010010001111100011100011000001001001000111100000001010001001111011001100111000101001011001001101100000001100101110110101011111111101110101001101010110001111000100110100101111001000001010110010110110011111001011011110000010101001000111101111101001010110011000010011100000000100100101011111110100010100001100101011010001000001100101111100001110010100011101100111010111111001010011011111110011010101100101010111101101010111110011000000100100001100001101111111110111101100111100000101111010001100001100101100111100111010011100001011011100100011110101111011100111100010101000011001010100000000111000100110011001110111111101110011110010111001001100100001010110010111000001100001110110110001001000110110111111000010111000101111110110111101111110101010111000100011011110001001010110101101010000000110111000000010000101110111001010001111010110001111010001000111011101011000110010100110001000000100000010100101101010011001111000100000011111011010101001100111011110010001110100010001111101010110010000000100001001101011001101101000001100111001011011101001101110011100101111100010000110110101001110000001000110001101100010001010010000111100100101011010001010111110010001010110000000110010010100010100101001011110001000111110111101010010000101001001111110001001010011110001011010111100101000011101010101100101101001110110110111000101001111110101000111110011000111111111111000101111011011110110111010110110100010111101101001001100011110110001001101001011000100101101111101101101101101100 +111000010011011010010011111111001000101100101110001011001111010011110011111010111101001101000001000010101101000001001110110110111110010101111101101010111011000100101011101001100110011100001010100110101110110111111011100010011110010001000101001101110010001011001111100000011010010001000011011001111001001111100011001011111000111111111000011011100111101111000000100000011000001100101101000101000001101010000100101111111100010001100010001000001100011010110000111010010000101101111100001011010110011011011011110100010111100000110110101100000100101101001100111101001010101001100110010101011011100001010010101011001100111011000011100100101110100011010001000101111011100000000011111100111000001001101110101---------------------101110111010111101001100010110010001111110101010111001101001001010010001110000011110010101011110110111110110011111010110001110011001110000110000111100101011001011100101011110100000001000100001001000001111101110011011111010111000111001100000100111001010100111100101010111101000111010010000010000101000010111011011110010110101000110011100100100000001001110111111101111000001010000111011001001101000101100100111001010100111000010111010010011011111001011001101100110011011000101111100011010001010001111111011001010011000111000110000000101011001101101010000000110110011110000000000011100110000110101100000101000001111001110100100101000001000101101110100011000110001001111101001010011011001101011010111010011011001000000100011010111000000001000100100111011001000001000110110011010100101011000110001111001100100011101011110110000110100111001110011101000000100000111010010011101000110100100000110011000110110101000000010101110000010110010100011000000000010110011110100110101001010001011011110101000010011100101111100000111101011000000011110100000100011000110011001111101001101001110101011000110001100100111110001011001110101100111001111000010100001011011011100100001100000100011000111100000001100001011010101111100111110001110000111110011110101010001001000001000111001010101111110101010101110101101001001100000110010110001011000101101010010011001101110001001001010110100011011001101011001000100110100100010111100000101001111011001001001001001110110100010110110011010110001110101101011000001111101111110011111110100111010010010101100100100110001100010100101011011110110001001110010101011110000101011101001001000110111101010101110011100101010000110001000111101000001 +000101100111010110101010111100101101101011000100010110010010011000110000111110001000000100000001000100010111100101010000101100110100101001011000010001011000001010111111110100100100101111100001111011100101111010101000101010000001101101010010010101100110110101110010010001110001100110000010000100110110111110011000011001000101100001011001000101001111100111100011100101010011101011101111111010111101100100101100100000000011111001011100100111111110010001100001100011101000000001011111010000000110010110001011000011100010101110010011000001111101001101001001111010011010111000011110000001000110000000110110010100001011011101001001101111011010101001011000100111001100011001000010010100100110001100010111010---------------------111110101010111010110110110010010110110100011101111111101101100100010110101001101100000101110000111101110000101011111010011001011001111101010101001101010000101001001000111110000000101101001111110100111011111001101001010111111000001100100011001010101011000110101000101001100001111111111111111000111101101100011010010000101110001101001111111101110111111101100101111111011111000001111011100000011000010010000010001010001100010010011101111011000001101101101001110100101001110010010000100110110101101101010010110001001011111011001101011110101001001000111100001110000101100010001000010001011101010001110100100110011100000000110110100010110011100010111010001000001001101001000110111001010001011011101110111011101100010011011011101011011001111001000101100000001110101100111010010110110011011011100001111010001011000011111001010101000111111111010111010111000111001110011001110100010010011111110011100110001110110110100101100100011001011100110010110000111110000001100100010111000001000111100110001100110011011000100110101110011110010010010011100010001011010000000110101111010111111001111111100011100110000010110100111000001011111100011001011000100101111011000000001011001110010111101110011111101111011111010001100010100010001000110010011011010000101010001010110111010101101001011000111101000011101011100000111111000110111011001000110010010011011100010110111000010011000110111101100000001011010111111011111100001011110101010101101101111011101101100001111001100001010101001000111011101001011010100001100110101100000100011101010100000010111110000011010100100110101000000101110100111011010101110011011101001110101010000110001100101101001110011001111000000000001010011100 +ls72msgs +111111110101100111000010101010010000101000111000010000001010111000010000101001000010111111001010001111101110001011110101100000011100011100101101000110100010111000110010110010011111011011110100000101001110011011001111010010010000111011010011001011110110111001010000000100100111110110101111101101100001001110011111111010000110000100011100101100001011111100101100001011001100010100101110011000100111010000011111010011001011100100000011001010011000010101001000000000001100010001100101111000110000011111010011111111011001100001011111000101010110000010101011110010111011001011010011110111011110100110011100111100011111001001111011110110100010000011011101110111101001011101100001101010110100010001110110011111110001101101000000011111110001101110111000010101001001110010001010010011000100111111110100101101101100111110000110110011001111101001100011111010000010010100010011111000000010010101011000010001101100010110101011101100101000100001010111011010010110100011101100001001001111011000010010011111110110010101110001000010011000010011101110001111111110010100110100011110010000111111010101001001011111001011000011110101111001110101110011111000001101001110101010011110100111110111100101000110001101101000110001010101011000101101100000101101001111010000011101110000101100011010001111111000100001111010000111001111011101010001100111001111000010111100001001100111011011111001111001000100100000111010101100011101001111000110101101100111000001111010001010011111101011101000111001010111110000001000000100001111010110111010011001111100100111000010111011000000110110011110100011011--------------------- +101111011101011001000001101111101001100100010010100010010010101110010010100011000010101001011110011001110010001100110111011100110011100110101101001111101001011001100010101111010101011001001111100101100101001000111101100100100000000000110010001010010110110000010011001011010011110010111100111011010110011100010001011101101000011101011111001010110110110111010101011100100100010010101001001100100100001001010001000111110001001000010101110001001101101000011000010001000000110100001100100001100110001101110110111000101000010101010100001001000010011111100011011110000111100101010010001111100100100100001010000010111000100110110101011100011001101100011111010101111000001010000111100100001001000100011001111110100100110101001110101111101000011011001001100111111010101110010111011001110010000101100001111000010001111010101101011010011011110111011000001001011100111100011011111101111010100101111100111101101100110010110000100010100001100010111000010110100100010101000111011010011110001101001101001001010101010111110100001010000110010011111101001100100101010101011010111100110100100111100110010100111000111110011100011101001100011100111001000100011101111000110101011100100111100110111110001100001001111111010100010111110010001011101010010011111010100001001000010001100101111010101111010001101010101111000110010100000100110011001110001100011100100011001100000101110100001010010110011100000110011101100101001001110011101000110111100101100000100010110011010001101111110111011110010000001011101100001100110010100011000111100010011100010000011011010100000011011010101011110101000--------------------- +100001010011001010000000011001101111100000110000010110001100111010111101110110010101000101100011010100110110000100100101010011000011110110100011011101000011110101010111100011100100100010101101001100000001011110010100001011000010110000000100011110100100000010110011011000000101000111001111001100111111111001101010111110100111100000110010011111000111100000010010010001100011010001000010110001001110011110100011011100101000001010011100101000101100110100000100111010111110001001111110001111100110010100000101001001110000101000101001101001101111010110010011000010011111101000100011111101001110000111101000001101011000101010010101000101011100110101100110010110000111110101010010000001010001110001100111010110000111110100011110101111101101011000100101101001100110000001001001101110110010001001111100100100000111010110000100111101010100110111001111101010000100001000001110010110110010000001110101101110011001110101001110111100111111001011011100010010011010001011111110111100110000110011111000101110111111100101000000001110011100111111101010011011110011010110111010010010000100111110010001001010100101001011000010111001010000001011010110110001111001000011100100111100011001011010001100111111111000101011110010101000001100011100100011000010101111011010100111010110110000011110001100101100100001111101101101101000100111110110001101100100100101111100000111110100011110010011100010000000000000101011111000000011100111101101001111001011001001100001110111000111001010110111011010000000110000001100010010101110010110111100010001010111011110010111110110101001010101101111111001110--------------------- +001110110100001010010010100000100111101101000101110111110010011000101111100110010101011101001010000001010110001001011010100100011101001111111101000100110111111100011010000110000000110010001111101000001101010100001011000100010101100110001010000011011111001001001100000110111100111101100010101100110001010110100100110100011111001101110101111000101011010011001010010000010110111000111010011111011111000100110011000001001100010101001100011100111001110100001111010010100100100000111111101010011011011001010111000110011101100011101001010101011111100101100101011100111010011111100110111011100100100101100111001100011100101000000000001001100001011001011000000010110110110001001011001000110011010000000001110010010111010101011000000101111010101110110010100001110010000001101010000110111010111101110110010010000100010010010110001101101111001000101101111000001000000001011110100001000001111010100011111000110101110000111111011101010000011001000110110000010000111100011101011010100111001100100100100111001101111101000100100110011001000010101000000010110111111101011100011010101111010100001000010001010100001101100010100110101011111101010111100001010011011001110101010101111000010011000111100101010000001000100011111111110100110100100111010111010010110110001110100101101101001101100010001010000001011101011011000011100011000010101001011001010111110010010110100010110101110111100100101011111000101011111001001001111101110000101101011110011101010111010101000011101000011101111000110100111011110010111110101111011011101111000000011010100110111111111010101101100001100101111001110--------------------- +011011010110111111010001000001001011100001010110101010101011110100101100101011101001011111110110001100101010010010010111110001101110011011000101001001101001110101000000101101111100000111100111101110111000001111010000101101101101010011000111111111101110111000110101100011000101110111001100100111110100010010110100011001011111001100111110110000001100110111000011111000000100010001101110111011011001101101000111000101111101110010100000010110000110001110111101010110011101100101110000010011111001010001000000011111100000100010110010001001001011101011110001110101010001000001111101010000000100000001000001011011011010000010000000011110011100111001001011110100011010111111101000110110000101000100001101111110001001111110111011100100111110000111011011011010010011000001011101000001100101100000001011000111011100101010001001010101011011000111100000101000010001001001111100111000011001010001100010010001110100100001010001010000110110111111010111000101000010001111001001110110111010110010001100011000010100000100001111000011110110100010001011101111110111101101001011010111011100110011011000110001011010011010100100110111001101100001111100010111110101011100010100110000001101111000010111101111000010011100101000110010101111011000101111011001011101110111101101001010010110001011011100010100111110010011011010000001011001011010100000111001100011011010001110110010011100111010011001100110110110011001110101110101010111110010101100111110100101011101010110010100011101010101011000101100111000000111000100110101111101100011001101010111011100011101001111010101001100000100101011101--------------------- +110000100001101010011000100111000111101011100101111100010001111110011110001011000000101010101000011100001001011010101110111111001101101010101101000000010110011111101100100110101000111011011010010101001101100111100001100000010111100001010011111010001001101110101000111110110001001011111101100111101111111010111101001000000100010000100001100101000000100110011001110000110100100100101110001011010001101101100010010111101000100000011100101110000000000101110011011000110010000100001110011011101000100100010001001111001110110111101001010101010000100011010111011000100111011010010010110111000000111011110011010110000011000111100010000010001000110111011000100001101111111100000000101000101010111011000110011001000001110100011110111101010000101010010100111000100000110101110100101110001101000010111011110110111010001000101111000100111000100001110001011001100001101010001111100110110100101001111110001010000101011110010011001011111110101111011110000000011111001010010011000000110011001010001100111111100010011111110101010111010101100100111010001010110010011000011110011111011000101000010100111011110010111001110110011101111001101011001001010111110110000001101011111100011111101110100111011101101110100100000110000100011010101010111100000011000010111010100000011011101101100100000110010010011101111011000110011011101110100000100100010100110001111000001001001110010010111110101000000001001111000001010100011111111101000111011101110111011000011000000011001010101101001100111101010001000111100011111111000001001011101111011010111010110000011101111011111101100111000001001010011--------------------- +011110001110011010101000011111010101001110011011001011110011100110100111110111111101000101001000011100101011100111000111011101101101001000110100110111011100001101101111111011000110110010110111100101100001100111110001000101011111011001011000000101010101000001110100111100001010101010000111001110101100110100011011000010010011000001100111000110100010100110100111100111000011101101000100001000110001000001100010100000110010111000000000100100001110000100001100111111010110100111100110011000010111000110011010100011100010111010110000101011001010000110100011001010001101011001100010110100100101001010111001110010011101010001011001111001011011111111111000100101110101100101011001111001011011100000010000110110110000000101110011011101000001000001101111001111100010101011100010110001110001110110101111101000011100101101000110100110000010110100101100001111010101011010001010111001101011011111111111001101011011101000101100100001011111101001111010100111100000010100000101011111110101101100010010101010100101110011111011100001001100101001101000100101011010011101001100000111011100011101110101010011011101000010100101101001111011100111010101110110111110010010110001101110111111101000100001001011100101101110100101001010000101000001101111100101101101011100011011111000000110011111101000000010010000111010000100101111001011111100000100110100101011110101010110110111010111000100110001110101111010010001011000100000111100001110011111010101110000000110111111000111010110101101010111010111010100101100000110111010111101111011011000001101010101100110001111110000000001010101110011000--------------------- +011001111001010000100010011000100100101111110001111100000011000010111000010100100111010110001101010100110011001101000010111010111000000101111110000000110111111101110110000110001100011100111001001101100010011111011101101010011010110011111001101010111110001100001010010000011110100000010110001010001110110110000100000011110011110110111001000101000010100101001011111110110111100000000001000101011101101110111011001001101010001111110000110011010010100111000000001001101010000000111101110011110001001101011011111100111111011000100000110101011001000001011111011000000111000010010010001011100111111100100011000000011101100111110000011110100010010110011011000000101101110010011011101111100111010000001010100100010000101001101100011101110011000110101010100011111010001000111001010100110011010100011101100101010010110100000110111011101110101000010010001001111111110000100011000100101110110110001111010101101000011111011001101010101111011110111010100110011110011101101101100010001100101100011011101011111011011101110000101001110000010101010100111000001101101111100011000110111001101110011011011111011010001111100000110001000101110101000111011000100101000011100111110101110011001011000111111000111111101110001100000010101001010010110001000011110110010010100000000100011001100111011001100101111000010001101111010000001010100100011110100011001001111100101000101101000111101001001011001101010010110110011101101000111011000110001110111111000100010011111101111111101011111110011110010111111001001110000111010001110011001100100001110011111000011000010010010010001000011110110010000--------------------- +001000011001110110110111100011111000101000011110111101001000110011110111001101000100011111101000000011001001110101100100010101010011011111010011001011010000110010100011000110010001111101010100100000110011000101010111000100001111001001011001000001010110011001011111110110000001101000101000100111011001101000111110110101000111010101101100011101101011101111011000000111111111101101001101001011011111011011101111111000100101000000001110110101010100100010011010101001110010101010101101101100001110110100110110110011111110001100000110010110111100001101001101101000100010111011101111101000001000010111111100100110100111100001110000001000000100001010110001011110001110011110011011111000010101111001110101000110011100111100110111000101110000111001111011100100111111000010001001110100111001000110000011010101001100110001010101101111111000101000101100000111011000010110101000000000101111001111000111000010101111100010101101101010100101011010111011010110001001100110000110101001100100001010010001010101111000001010101111001001010010010111000001111101011011000010101010000100100100011001101010011101010111011010100000111011111110010011101010010010010111000001101011001101100101001101011011111010101001011010000011100001101001000010011010000100100011010100110011000100100110001000111100110101000110011111110110101011100100000111001111011100011010010110000100110111101110101000001000011100011101110001011101110111010000010100110100010011110100010100110111110100000011101001001100000000010101001000000111000110100100100011110111000010111101000011001100111111001110010110100110010--------------------- +100101101011010010011011111110001011001100010111001001111100100101001110110110110010000011001111100010011010101000100101000001110001011010100111110010101000101011100100111000101001010110011101011101010100010000101001010010011111001111111011110011100111101101101010001110011100100111110000100101000010111110011100011001010111011001100100011010101101000000001100000111001101000000010001010101111001000110100001100011000110010010011100000111001011110110111100110100001000110001000001111110101000111110100000001101101010110101011010011110110011101001011101000000100001011001001100001001111100001011001011111100010101001101111010000101000110000011111000001010001110000000101111110111011111011010011101011000100101101111101010000111100011101101100001101100101101101100001100100111111011101110101111100001100011001111101101111010110111001010001000100111101001000111100100011100010011001101100111011001010001000010101010101111101000010100111011100101111101111111101110101101111111000011011010000010001011010101110111110110000000110111101110011101001100000111001100010001010100101111100011000010000100001101010111111010010000111101100110110011001110101000001100100011110010110001001101010000110000010011001100100011100010000100110100111101111000110100011001111000100101101000110001101010111010100011111011011100100011011101001100101101001000101011011011100111101001110010101001100110100011110101100011100100101001000000110110110011111011110100100101000100010011101111101111011011110101110011100011110001011100001110001011101101001110010000010010111000111011110010011100100--------------------- +ls72cwds +000110100010111000110010110010011111011011110100000101001110011011001111010010010000111011010011001011110110111001010000000100100111110110101111101101100001001110011111111010000110000100011100101100001011111100101100001011001100010100101110011000100111010000011111010011001011100100000011001010011000010101001000000000001100010001100101111000110000011111010011111111011001100001011111000101010110000010101011110010111011001011010011110111011110100110011100111100011111001001111011110110100010000011011101110111101001011101100001101010110100010001110110011111110001101101000000011111110001101110111000010101001001110010001010010011000100111111110100101101101100111110000110110011001111101001100011111010000010010100010011111000000010010101011000010001101100010110101011101100101000100001010111011010010110100011101100001001001111011000010010011111110110010101110001000010011000010011101110001111111110010100110100011110010000111111010101001001011111001011000011110101111001110101110011111000001101001110101010011110100111110111100101000110001101101000110001010101011000101101100000101101001111010000011101110000101100011010001111111000100001111010000111001111011101010001100111001111000010111100001001100111011011111001111001000100100000111010101100011101001111000110101101100111000001111010001010011111101011101000111001010111110000001000000100001111010110111010011001111100100111000010111011000000110110011110100011011---------------------000111010011001111000100010101100111100100110100000011110010011001100001100010010101101010010110010001010100000101010111011010010010010101010101101100010001111011110110111100000010110011111110101000011011001100110011010111110110101000000010111111111100101110010111011110010100100111000100000100110111100100000111100001111000101000000110101110110101000111010100000010011001000100100100001010101011000111011011100101011110111101011000101011101010100111011011100110011011111000110010110110011111101001110010000101100001110100001111000001010001101110100010101000111100110011011100111110011111100001100100100101000000011011011010111110010011110001100011111010011110100110011101111011110100011100110111111111011100101110100011000010000110000011101100100011101101111110110111111000011100011010010001101000000000111100011110111000000000000101011111111101010000000110110001010111010011000011010011000010011001001110111011101111010111101000011101010111100000001111010111110011000010101100100101110101110101010110000110100101100101111010111111110000111000110010100111111110111010101101110110011100111000010011010110111000000100111010010110001000001110101010001000100010101110100000000000011110000010111100111110011101001000111100011001001110110001001000111101100111111001001111110101100000001000111111000100100001011110100110110101111000101010110100011010100001111011000010011010000010110110100010011000110011011110000000101011100100100101111000111110100100001101110110001111101001000101010101011101001001000000010001111111001100001101100011001110011000010111000001000111110100001000111100111010111111111010010000011001011111101001000101101001000011001001011001011001101011011110100001110111110111000000011111110011100000111011000001011001000111111111001100010010011001100100010101000101001101001010110101010111101010111001010100010101000001100110011111010000000000010001101011001010001001100010000011010001110100001110011100100011010010101000101111101001001010111000111101001001001110000100010100011010110010010111110010001111101100111100101101011110100001011101100001101101111111011111010110111001100101110101100100011010111011101110000011001100010110010110010110000100011110101011001110010010111000010100101111100111001111000100111011101111010110111101011110000100100100111000000110001000001011111100001001011111110010001101111111001011011011001110101001000001100111010001110111010111001111101111010000001010101101010011001000111111000101001011100100011011100010111001000001010000000001100011110000101110001001001101011000100101001110110101101001001101011110111010101001001010111111000000101110110010000010010100000010000011011101101100000101001101111010001100101001000111010001000001110110110000010111110101010110110000100101111000011100001001010100011000001000000101100001101100101100100111001010111001111001101101010001111011010101101010110100011011001011011100011011010000101111011001111100010110000000101001010100111110001001111100000100101111010011010011101101110111100010100111100001100101011000111001110111110011111111010101100110011011011101010000011101001000110000010011101111011100011010111000101101010000011000100000000010000000100000010110010100101001101111010111011001010110100100101100001110001010111011001001000001010011110011101010011010000111110000000101110101011001111111000010000010110110011111101101 +001111101001011001100010101111010101011001001111100101100101001000111101100100100000000000110010001010010110110000010011001011010011110010111100111011010110011100010001011101101000011101011111001010110110110111010101011100100100010010101001001100100100001001010001000111110001001000010101110001001101101000011000010001000000110100001100100001100110001101110110111000101000010101010100001001000010011111100011011110000111100101010010001111100100100100001010000010111000100110110101011100011001101100011111010101111000001010000111100100001001000100011001111110100100110101001110101111101000011011001001100111111010101110010111011001110010000101100001111000010001111010101101011010011011110111011000001001011100111100011011111101111010100101111100111101101100110010110000100010100001100010111000010110100100010101000111011010011110001101001101001001010101010111110100001010000110010011111101001100100101010101011010111100110100100111100110010100111000111110011100011101001100011100111001000100011101111000110101011100100111100110111110001100001001111111010100010111110010001011101010010011111010100001001000010001100101111010101111010001101010101111000110010100000100110011001110001100011100100011001100000101110100001010010110011100000110011101100101001001110011101000110111100101100000100010110011010001101111110111011110010000001011101100001100110010100011000111100010011100010000011011010100000011011010101011110101000---------------------001111110100001101001000100100110101100011010000001000000111010100001000111100001100010000000111000011111100110100101101000011110111100111010100010001101001110100110110011100100100100100101101000001100111100110110110101001100111001101110101001111010101000000110110011000101000111000011011010101010111110110111011111100010111110101100010000110011111000100111101001010110100100011101010010100000110111111110101100110101000101010101000000111000011110110011011111101000011111111001110100010010010111010100111101101101111100010010111110110000110011111100110011111111011011100110011011001110101101011111100111000011100001011011011011111111110011001100111000001000100101110011100001110011110001000001011101101111001110111100011111000011010110000011010001000101101000101011000101001001101111100101000011010010001010010010011000111100101000101110100101111010010101111100000111101001100111010000000101100000101001000110010011110100000001110011011111001111001001000101100001110100011111010000110111111000011011001111111111010100010111011001001110111001001011011001011001001011010011110111111111101111000110101101110001110100011011001000110010000111100111101000111001101101111101101010110100010101010010110100001010110010001110011001101000011010011010011101001011010101000000011000011111110101000111011011111001000011100001110000111011010001110001001100000010001001000000011110100011011110010110110001000111101010011100101010010111001011010000110111001110110011110011010101011001000001101110000110011010010000101100111100100001111010100100100101100011010010000100101100101110110111001110001101010101010000101110101000110010001010001000000100000101000100010101101001101011101010101111010000001001110101100110101001000100111101001110010110111110000001010111111101110010010010010111010010111001100000011101101001111101111101001011101101101110110001111001000111001111001100110110101101001101010001000110101000011100001101100011010011010110100110011011001000001000000001110011001011001100011010110000010110011000111001111101100111001100010101100011110000111101000000011010101110001000110110010001000011111010100000100001110011100101001100001000010110000111111110101110101011110111001100101111100011010011100110111011011111011100010000000000111011001111000111001001110111111111110000000110111100110110110011010001110110110111101100000110100011010011100110101010000010111100110111011001000000110111100110110000001000001100101011010100011111010101110000101111000110101111110111100111001010110001110111110010001000011000101000011011110001001000101111100100101100100000011001110000011101011010000101010011010010111010000110010011101000110101000010110010110101110011010011001111101010101001001101010101100011110000000010000110101010111010110010001010110001101101111001110011111010110010101101000001110101110011110001101001011010011101100001111100100010110011011100000000100110011101001101101000001001000101111010011111001101010101011000110101000011010111000100001111110010100001011111010001101001010100101011111011000011011110000110101000010111011010100001100011110110110111100100110100111111110001011000110110001001010010001001010111001011101100101101010011100110110101000101011000110001000010110011110110111001001011110000000001101110010011110010110001100000101000111010111111111100110101010001001111100110110011011010110100001001001 +011101000011110101010111100011100100100010101101001100000001011110010100001011000010110000000100011110100100000010110011011000000101000111001111001100111111111001101010111110100111100000110010011111000111100000010010010001100011010001000010110001001110011110100011011100101000001010011100101000101100110100000100111010111110001001111110001111100110010100000101001001110000101000101001101001101111010110010011000010011111101000100011111101001110000111101000001101011000101010010101000101011100110101100110010110000111110101010010000001010001110001100111010110000111110100011110101111101101011000100101101001100110000001001001101110110010001001111100100100000111010110000100111101010100110111001111101010000100001000001110010110110010000001110101101110011001110101001110111100111111001011011100010010011010001011111110111100110000110011111000101110111111100101000000001110011100111111101010011011110011010110111010010010000100111110010001001010100101001011000010111001010000001011010110110001111001000011100100111100011001011010001100111111111000101011110010101000001100011100100011000010101111011010100111010110110000011110001100101100100001111101101101101000100111110110001101100100100101111100000111110100011110010011100010000000000000101011111000000011100111101101001111001011001001100001110111000111001010110111011010000000110000001100010010101110010110111100010001010111011110010111110110101001010101101111111001110---------------------110110101000110111001000001000000010000101101110011010101111101000111110100100001010101110000011101101111110011010100001110110001100010001011010010011100011111100010001100100011101100111010100110101110010000111100110011000100100111110100111110110110000000000001100011101011110001011010001101001001001011100011111000110011100111010001100010100100110101010010010011101011001101111111100100101100111000011001000111111101011111011000001000001011010111010110000101011001000100001111000000100100110111100010101001000101011001110001001011000001011101110100001010110111001001111010101000010000000000100000011110100000010010101010101111001010010110010101111011000110001010001000001111101110010101110101100010111100101111011111100101110110100100111111000110111100100110110111010110111010100111101000101001100110110010001100101111011010110011101010000001001010101100100111101100110101011000010101000110100000100100100011101110111111111111110001110011111011011111101010101000011110110011010100000100011101101001110000010100100001101011111000110000011110100101001010000010001111001101010111101010100101010001000011011111001001111111011010010000101001010000000001110101001001100000001001100000010110111001101000100110010000011111001100001011001101000011000010110011001110011001110100100111110100100010001001100001110111000101000010111110110101000000101110000011011010100011010100011110101000010101010100110011011111011000101000011110100111010000101100000111011010111011001111000111101011100100101010100000111001010000001101011011111010100010000010000010101011010000100110000101101010000101110110001000010111000101000011011110001001000010100101011000110101011001001011011011010101111010001010001000010000010100111101101110010010100111101101111011001101111001110001101100010000000000110011001001110111011111110001010111011001001100000100000101010011110000101100110111001100000000100111011110111100111010011110111010010101001010000001111010011100111100111001001011110101000010110111010000111101111101010010101101011111110111111111100000100011100010101001001110010011010101100110111100000000011001011010100000100010101111111100001011111011010010010000000111111000001001110110010111001110001101000100100001100000010110011101010010000100011100011100111110010001000101100010001000011001000010100101111011110000111011010001111011110100000100001100000011000010111101111000001010010001100111100100100011100001010000100010100011011101111010101110010111110010111110101001001000110010100011101000111010101011110000010110110010010001100110100010101010000110100001001111011111010010001001000011011111100010010001010111100111001110111001011111010101010111110110110101110110111111000001101110100000000000101100000011110000101111000101101111100001011110000000010111001101010111011100010101101011110111010110111000000000010010001001110110010010111111010011100011110001110010011010000110000011111100011100001010001010110100000100111110101001111110110110010010111100001010111111001101111001011101110100011000111010111010110110011001111101100101101100001011101110010101001100101010001001100110011111110101111101011010110000010011111111001010100010001111101100100101001100111011011101010110100000111001100100010101001000100101110011110010001101010001110111001010100111100100010010011110111101000000100000000011011111110010100010111000001011000011010 +000100110111111100011010000110000000110010001111101000001101010100001011000100010101100110001010000011011111001001001100000110111100111101100010101100110001010110100100110100011111001101110101111000101011010011001010010000010110111000111010011111011111000100110011000001001100010101001100011100111001110100001111010010100100100000111111101010011011011001010111000110011101100011101001010101011111100101100101011100111010011111100110111011100100100101100111001100011100101000000000001001100001011001011000000010110110110001001011001000110011010000000001110010010111010101011000000101111010101110110010100001110010000001101010000110111010111101110110010010000100010010010110001101101111001000101101111000001000000001011110100001000001111010100011111000110101110000111111011101010000011001000110110000010000111100011101011010100111001100100100100111001101111101000100100110011001000010101000000010110111111101011100011010101111010100001000010001010100001101100010100110101011111101010111100001010011011001110101010101111000010011000111100101010000001000100011111111110100110100100111010111010010110110001110100101101101001101100010001010000001011101011011000011100011000010101001011001010111110010010110100010110101110111100100101011111000101011111001001001111101110000101101011110011101010111010101000011101000011101111000110100111011110010111110101111011011101111000000011010100110111111111010101101100001100101111001110---------------------110100101011001011111001100101010111100100111110100011101011111100000000111101011101001111100110111000110101111010100100100100100100101111100000110100100001001011010101011010111111010000100000101111110010100100000000111101101111110110000001111111111100100001100111101001111010000000011011110011101111101001100101000111010000010101010001001111000110111000011010101110000111111111110001010110100010001111101010111001100011001011100001111010001100100110100000111001011100011101001001110000101010100111101100001011111001101111000111111101100101111101011011110011001010100001100000100010011111010010101000010011111100111100000100111110101000100101001100001011010100010011100010101110100110101010111100010110000110010100100101010110110100101000000110101110111010110011010100000111110001001010010101110111101111111001010000001000010111011001110100100000000111000010011001100011000000010101001010001000101111010110010001110000010110100110101011111101010101010010011010010000111010100001011011001010000100010101001111100000010010001111111010111011110101001101011000001100111011100011100010110011001110101110110000001000010001010100100010010110110101111011111110010011100110110101001101001011001111010000000000100101110110000010010001011101000110011100001001010000100100110000000001001000100111100001011111001111110010011111111100010000000010100011011100100000010111101000101111000001110001111011110100101101111000010101001111001001100011001010100101010001100000100101010100001100000010001000000001111010101001001001101101001001011011010101011011100110100011000010001001111001111100110010110010110100001011110101101001100011100011000111101110001000101011111101001010000011011101001000100111011100011001111011001100010011100001110000111110001011000011000010011000100101001010111101110111101111010101000101011001101110111100001110110110011100101011110100111110110001010100011000110100010101011000000010000100001001111101011111101000011101111011011101001000001111111000100110000011111001111001011111010000101101100100111010110111110101011011111111011011110110101010000100101110110010000100011101001111111111000011111111001100010111110100110010100011000101111111000110001111101111011001001111001001001110110111100111110010101101001111010010001011111010100010111110101111110011100000100111111111000010010110111101001001101011110000101100011000010011110001010010011001001011010100011011100001111001001011100101010110100101010100110000001011001110001010101010101101010101010100100011010011110011000010110000000011001000101111000110101101000110000010011011011110010101000001100100000000111011000001000010110100110110000011101000100110001000011101001001110001110110011101010000101110101011011000101110110001100011000100111111011010100111110100011101011001111011110001000011010001100010011001100011110000000001110100001010111001001110100100100000010110110100101100001011001100010110111111010011001000101000011011110111001111111010001111110011001101010110010110110100011010110010000010011100100101110110011010001100001111000101111101101101111001000000011100101001110011011000001100010010011100101011100000101100000001010100110001100010010010101101010000000101110011100100110100011110011000001001101011110011101010000001000100001011010110111101000100001010101001011000010101010011100111010111001011101110101000001010110100111001101011 +001001101001110101000000101101111100000111100111101110111000001111010000101101101101010011000111111111101110111000110101100011000101110111001100100111110100010010110100011001011111001100111110110000001100110111000011111000000100010001101110111011011001101101000111000101111101110010100000010110000110001110111101010110011101100101110000010011111001010001000000011111100000100010110010001001001011101011110001110101010001000001111101010000000100000001000001011011011010000010000000011110011100111001001011110100011010111111101000110110000101000100001101111110001001111110111011100100111110000111011011011010010011000001011101000001100101100000001011000111011100101010001001010101011011000111100000101000010001001001111100111000011001010001100010010001110100100001010001010000110110111111010111000101000010001111001001110110111010110010001100011000010100000100001111000011110110100010001011101111110111101101001011010111011100110011011000110001011010011010100100110111001101100001111100010111110101011100010100110000001101111000010111101111000010011100101000110010101111011000101111011001011101110111101101001010010110001011011100010100111110010011011010000001011001011010100000111001100011011010001110110010011100111010011001100110110110011001110101110101010111110010101100111110100101011101010110010100011101010101011000101100111000000111000100110101111101100011001101010111011100011101001111010101001100000100101011101---------------------001011001100010010011110010100011010100001000000001110000110101110000100000011010011110111001100010100100011110010110011010010100000010111010010000001011100111010011011110100100011100111011000110001011100111001011101110101001010000101111000010011000110111011010000101011010011111010001001100111111000000010001110000100010111110000101101011101101000000011111110010010110010011010010100000000110000000111111000011001011001001101001111110110100101100111001100001011111101001111101011010010000111001001010011000010011101111100111111001010101011101000100000010110010001011000010010011111011010001011001010011000010010000101011111011110010111011010000111010011110110110100010010111111011000111011101010110110101100000000000101101101001101001100000001110110001111110010011010001000101101010000011000011101010110110011100110101001000111010101100101100100010101101010000010001101100111011010110100110001001110001010101100001100100111110011001000100000001000011011101111000001001100101111100101010010100111111011000111101101100010111111100100110110001001101101001001100010110001111110111100010000111011111001011111111110110100011110010010100111100100000101110100010101100011011001111001010011110010000110001011001001101111110111010000111101111110110000100110010111000001011001010111011101001000011010101011011001010111110011001011000101101110100001111110101011001000110111000111011001010001110110100010011011010000111000110000100110101110001100010101000010111011101101110010111000001110010010100010010001001111111111001111101111000110001101100011011000000101001001001110011011001101000100101010111010011000011000101011100101111110110111101101010110010100011111101100111000001100011000100100011010111001001010000000111000100000101000100101000010010110010000000100010000111011100101110110000111111010110111111110010110110111000000111011111011111010001001100001010011011010001101011100001101100010111010010001000000100001000100010100110111100111100011010101001011111001100001100000100111000111011111111000100001000100111101000100010001011001111000000101001011011100100111111001111100100010010001001101010111010000000001110000001111100100000001101010011001101010001000010000100011110011011000011100110110011001101111010100000000011011110001101011100001101001011000100010100111010110110101110011010101100110001010010100000010011001111001001001101110000001010111011011110111000000101010011111011010011111000100100111011100001111101101111010011011010011010111001001110010111011010100100111110100010110111001010111011110111011001110111111111100100110010100110101011100000010111100001011010001010011000011011100001001101110000010101110011101010000101101101000111001000010101111001001101101111000100111110011101110110011010010101000111011011010001000011000000010010111010100011010111011010111001011110101111111001000011001110010010000101110010100010110010111100000111101111001010101001011100000010010101110100101100000100100110011001001001110100111100111001110000000001110100011101000100000111110010110001001100101100100111000100101011110101001011101000100000000101111010000101111001001110011110111110110110111011010110001010110000111001001011100001010011010000000111111101100001101110011001111001011110111100010001011110111110110101011110011001011101000001001111110010010011011110001111101100000111111101000111001110101101110111101 +000000010110011111101100100110101000111011011010010101001101100111100001100000010111100001010011111010001001101110101000111110110001001011111101100111101111111010111101001000000100010000100001100101000000100110011001110000110100100100101110001011010001101101100010010111101000100000011100101110000000000101110011011000110010000100001110011011101000100100010001001111001110110111101001010101010000100011010111011000100111011010010010110111000000111011110011010110000011000111100010000010001000110111011000100001101111111100000000101000101010111011000110011001000001110100011110111101010000101010010100111000100000110101110100101110001101000010111011110110111010001000101111000100111000100001110001011001100001101010001111100110110100101001111110001010000101011110010011001011111110101111011110000000011111001010010011000000110011001010001100111111100010011111110101010111010101100100111010001010110010011000011110011111011000101000010100111011110010111001110110011101111001101011001001010111110110000001101011111100011111101110100111011101101110100100000110000100011010101010111100000011000010111010100000011011101101100100000110010010011101111011000110011011101110100000100100010100110001111000001001001110010010111110101000000001001111000001010100011111111101000111011101110111011000011000000011001010101101001100111101010001000111100011111111000001001011101111011010111010110000011101111011111101100111000001001010011---------------------111010001011100100011010111100011111111110010111110011101110101010011100111011101111001100110001000101111010001011010000011101111110100000101010000110100101100111011001000010001110001000110000111110000110011011010101011110000001110000000101000110110000110110111010111101111001010110011011010111010011110111001001001100000000000101100101111011111100011001110010001101001101111011100011111100101101100100011111000000111101101110111110101011001000101111011001101101100100111111010010110010010100101100101110010110011010100000000000101011110000010010101000000011100011001001011100101110010000101011100111101101011111110100010100110111001101010010001110001000001000110100111001110111010011010000111011110100111001011110000110100101101100101011011111110000100000100110110110111010111111001110101001101011010101000110001100100100100110010010011101010101111111010100110101001111010000111101001010111100011111111100111010111000010101111010001011010111101000000100010100010110001010110010000001110001110010100001100111111111110110101101101001101110111000011110110101001100100101111101111011110100101110010000101011110101100110100010100010101111101001010010010101011001101101101001000011000000100101000111000110011101111101111110110101000011111000011101001100101100000010110110101110010110000001111011110111010101101110000011101100011110001000110000100011010100011100011011100110000111111000100111110011110110011110101110100111111010001101101001100101010110100001111101100111010000000000000000101100101010001100000100110001001101011000011110110111100001110011001001001001100010100000011001010010101010101000011011001101110000000011100101111011100010101110111100101011000101001110000101110100111101010111010010011011010010110101001101010111111011101001010011110110010111000000101100000111101101010011011100010100110111100111011111011110011010010000100101100111010001000011010110001011010100001111111000101100111010000111111011101101011010001110010000001010000100110111001101001110011011001010101100110111000100011010100100111111111000001001000110010010101001001001001110110010011000011010011000110110110010001101101100000010111011110010110100000010010000100011101110000001101001010001101101010000001111010001001100011011011111001100000010100110100001000100000011001001000000011001100001110010011111110100001010011001001100110000010010011011000011111001110000010111101011111010101100010101011110001001011001110100111110110001111101100010110010100000011110101100101111111010010101100111011111100011110000110000010000111001001110010011111000011110111111111111010100101000010101011100110101011101111011011111011110011111011111101100101001101000001110101111100000110000110100000100110000110000101100001010011001000000011011110010011101010001010101110010100101001111100000001101110110000111001010000111110101000011100011000010000001010011100101101000010010010001011010001001100001100010111100100011001011101010111011101010011111110010111100011110110111101110100101011110001011110001000101101100111011101001010010110100011100011111110011000001011011001010111001010001100111100001000000000101010010100001010100011010111100010110110000011000000110011110000000101111011111001111011011000001000011010101101011010011000100100101011110001100100000100100110001111011001111011001110101001001011111011111011011010111111110100101001100000010 +110111011100001101101111111011000110110010110111100101100001100111110001000101011111011001011000000101010101000001110100111100001010101010000111001110101100110100011011000010010011000001100111000110100010100110100111100111000011101101000100001000110001000001100010100000110010111000000000100100001110000100001100111111010110100111100110011000010111000110011010100011100010111010110000101011001010000110100011001010001101011001100010110100100101001010111001110010011101010001011001111001011011111111111000100101110101100101011001111001011011100000010000110110110000000101110011011101000001000001101111001111100010101011100010110001110001110110101111101000011100101101000110100110000010110100101100001111010101011010001010111001101011011111111111001101011011101000101100100001011111101001111010100111100000010100000101011111110101101100010010101010100101110011111011100001001100101001101000100101011010011101001100000111011100011101110101010011011101000010100101101001111011100111010101110110111110010010110001101110111111101000100001001011100101101110100101001010000101000001101111100101101101011100011011111000000110011111101000000010010000111010000100101111001011111100000100110100101011110101010110110111010111000100110001110101111010010001011000100000111100001110011111010101110000000110111111000111010110101101010111010111010100101100000110111010111101111011011000001101010101100110001111110000000001010101110011000---------------------110000000100011110000100000111100001000111100101000011101000001011001011001011010001011111011010100011011111010110100000111111010110100110101110111001010100110000000110001111010101101011110000101010110000010011000000011010010111000011101011011000101001001000010011010000110000100011101000000101110111001100000101111101011101111101001111100111110101010010010101000110100000000001111001010010100011110000010001001101001110100000110111110101111001110000110110000101100011010010100010111000010011111010001001110111100011101000010011000110001011111110000100111000110101111101001101110001001000010100100100110100011100010101101111100100101001000000101010100001100110100101010101100000010101001101101100001010011010111001111110111000001110001000111001101100001010001000110010000011010001111111110001111111011001000001100111001110010110111110010110001101100000010010001101001000011010101100001111100111001011111101001100010010000000101101110000111000000000011011111011111000000011000100110001110110001100110111001010111010110111010010011101010011110001011011000110101000011110111011011100000110010111010010001111011100000001010111110101100011000001010001101110100010010001011101111111010101001011110001101110101011001000101000100110001101000111010000000001011101000010000101011101110010101111111011110010001001111100000100011001000101011000000100001000000100001010000110011100110010110100000010101110010110111001111101001011010100000110000110101100000011001101111100100011100101000011010101110000011100000001111011110110110111001111101100000000110110101001100100111011110010111011100100000010101001100100111011111111010101111111001111011000010101000001001011010110101011111111001111000111001010101010010110001110011100100001010010010101110111010100011000000110110110011101001100001000101010111010101111001110111111100101101010100101110000100000010001110111010001010000001111110001000010011100000101100110100011001011101110111100100110011011001010001101101000101110111011101000010010111000011101111110111110110010011100010110110101010011111110010100010000110111100100110000110101111100111001100011010110101010001110110011011101101111100100011110101000001010000000010111110111100110101010110011010110010110111000010001011010110011111011010100000011010110111100010001000001111010000010010001111011010101111000110000110000111110011110100000001100010000101000010101111011100000101000011110001000011010011000011011110100000000011110110011001101010111011000001001011000101001000011111010000110110000011110011001100000011111000111111000101100000111000110100000011011101010001010001101100111000010000001001101111000010001110010101110010001000100101011011111010111000010100011101101011011001100001110010111100000000001011101110101001000011110011101100001110011100011000010100000001100000001000101110100100001101011001001000000010010000001001010111110111110010011000011011110000101010111111010011101111100011110100001111110001101010001100001100010111011101011110001001101111101100001000011110001000110101000111111111100110111110001000010011110000001111101010010011010010101101111101001110110101111010010110100001110011000010111101101111010001100010001000001110100100011011011100010011111101111010001010100100111101010101010110101101001010011011111111010010110100101100100100010100100101101011001000100110000011110011011110101111101 +000000110111111101110110000110001100011100111001001101100010011111011101101010011010110011111001101010111110001100001010010000011110100000010110001010001110110110000100000011110011110110111001000101000010100101001011111110110111100000000001000101011101101110111011001001101010001111110000110011010010100111000000001001101010000000111101110011110001001101011011111100111111011000100000110101011001000001011111011000000111000010010010001011100111111100100011000000011101100111110000011110100010010110011011000000101101110010011011101111100111010000001010100100010000101001101100011101110011000110101010100011111010001000111001010100110011010100011101100101010010110100000110111011101110101000010010001001111111110000100011000100101110110110001111010101101000011111011001101010101111011110111010100110011110011101101101100010001100101100011011101011111011011101110000101001110000010101010100111000001101101111100011000110111001101110011011011111011010001111100000110001000101110101000111011000100101000011100111110101110011001011000111111000111111101110001100000010101001010010110001000011110110010010100000000100011001100111011001100101111000010001101111010000001010100100011110100011001001111100101000101101000111101001001011001101010010110110011101101000111011000110001110111111000100010011111101111111101011111110011110010111111001001110000111010001110011001100100001110011111000011000010010010010001000011110110010000---------------------010111000011000000011101001111100001011011110000001001100011011100001010101001001100001010011110110010111000001001101011101100111100011011110111011110000100000100101001011101010000110111001111000110100111100000110111010111110010101001010110111001000011001100100101110110000001001011011111111110000110010111100110000110110111001000010010000101111001101100110100010100110101101101101110101000111101010111000010111001101001001100100000101110010011100010101101110011011001110111101110110010101100000111011010111001110110101001000100010110100001101011110000001001011110010001001011011111010011001101110010010100010010111011101011000111011110111011000110011011000101101100110101101000010001100001000011000100010111001001101001100000001001101001101101001000100001001111011000010000110101111110000110010010001011011110100001110110011100011101100101110110011010100110011010011101110110001101101000100100100010101010100111001101100000001101010100110011100100100101010000000101101010111011001110011110111000111000110101101000100101110111001001010010001010010110111110100101110010000100010110000111010001110010010000110101000110111001100100011110001101000100011100100110001100001000011011010100100011101100010010101001011011101101100011100011100111111010110111000001000100000000000010001110010110100100111110110110011001010101101100100001011011010111010100010101011101100001010010101101001011001100000010000000111111111011110010000001111100010101010111010000111001010100010000101000101001000010011111111100111110100000100010101010111011011011101111000000000100100010100010111011010000111010111010011110000000001010110000011101101100001110010010111101010111010000000000100100011111001110000001100101100000111101101110010101011101001011010000001110010000001011111100101011001110000010001100111111100100101001101011111000001001100001100011100011110100100110000110011011010100111011010100010100001110100101100100000010011010100111111010011110101101001001100100011100001101001111111101111111100010101110010011010011000100000110011001110000011111000001000100101001101100101101101000100000001100111101100011001110111000110101100001000110110110101010110011010100010010010111110100110111011010100110110010101111110000100001010100111110110001000111011100010110010010011110001000101000011110111001001001111001100000010010111001101011001110011011000000100111010010110001011111101101011100100000001100010010101111100010001011011011010101010101011001101000010101101010000010001011101111001110101001001110001111101000010000100000001000011010000110111001011110101001101010000111111110111100011010111000100010000111001101000011100111111000000111110010011001001000000101101111011011110100010001011011110101000001111110000100000111101000110010111101111111000011111001000110110000110010010000011111101011010011100010111100000101101000110111100001111000110011001011100001111100110101111100101010010001110001000111011101000111100110000001001001011111010101100111110101000000010010011111011011010101111111010010011000110000010000010110101101000010010101001011010101001100101011011000010011110000001110111000001000011100001111110000111000111101010101001100001101011111011111001010001100100001000100101100000101101011011100101100110011000001111011101011001111010000010011100010111010010010101100101000010000101000001101111010110011100101001111001011 +001011010000110010100011000110010001111101010100100000110011000101010111000100001111001001011001000001010110011001011111110110000001101000101000100111011001101000111110110101000111010101101100011101101011101111011000000111111111101101001101001011011111011011101111111000100101000000001110110101010100100010011010101001110010101010101101101100001110110100110110110011111110001100000110010110111100001101001101101000100010111011101111101000001000010111111100100110100111100001110000001000000100001010110001011110001110011110011011111000010101111001110101000110011100111100110111000101110000111001111011100100111111000010001001110100111001000110000011010101001100110001010101101111111000101000101100000111011000010110101000000000101111001111000111000010101111100010101101101010100101011010111011010110001001100110000110101001100100001010010001010101111000001010101111001001010010010111000001111101011011000010101010000100100100011001101010011101010111011010100000111011111110010011101010010010010111000001101011001101100101001101011011111010101001011010000011100001101001000010011010000100100011010100110011000100100110001000111100110101000110011111110110101011100100000111001111011100011010010110000100110111101110101000001000011100011101110001011101110111010000010100110100010011110100010100110111110100000011101001001100000000010101001000000111000110100100100011110111000010111101000011001100111111001110010110100110010---------------------000111110010110000101010000000111011011111101010000110100010111001001010111101010000000100001111101101011010101110100110010001011001101010011001011011100000101100111101110101001111101001100010011100011100101011010101110100011000001000011011010100100111101100101101001010110101010100001110101000101110001101010110000000011001010001110110111111101100111111011100111011010101010100001111011101001000110111111010011101010110110010100111111010000111010101011110011001000000011100110011000111000111110100001011110101111100000010010010010101100111101011101100100011000011111110110000100011100001001110001011110100100010100011101110000111100010001101010100011011000111111010110001110111001001110110000101110010110110101111110100000001110001010000000000011100101101010100100010101110011010110100101111111010010000101001100010101010101110011011000111110111001010111000010000111001101100001110101010110110111101011111100111010000110010010011010101001100111001011010111000000100000101110100100010000100011111011001010000101010111100010000011000100011011101100011110011011100101110101101001001111000111010011010111101110110011001100010010101000101100010011101100100011101111001010011011111001110110000100010101000100010101001011000101010111110001011000010101010111101100010001000110111000111110001001011100000011000111111010001101101011100100110111100001110110010010111000100001000110010101101101001100011011110010110011101000010110001001001100011000101111101000100001011110011100110101100100001101101000011111000001111011000011101101000100110111000100010111011000100010101000101001011001001100001101101011110011000101001101001011011001010011101001001000111010110001001000000100111001100111011011011000000000111011000001110111110100000100100100000010100110000011100000100101001011110011101010100111000101100010101101101011100010000110111001101001111101011100001010111101011001110100111100111000110010110000100100101101111110111011010100111000100111101010110100000001111100000001000001011111001110111011001101010000111101101101111000110001100111100101110001000110101010001010011011001100110011111110010001001000000101001010111001000001101110010111010101110101000101101101100011110011000101101000011101110110110101101111100101000011101110100010000101000011101101011001101101110001000111100010011000001100101111000100110000001000111100011100100010110001011100010100010100100000111100100110101011001100111110110000110011101000010000011110001000011100111001101000010000000101110110001000110011111001010000011010111111011010000010000111001000111011110110011101010100010101110010100010111101100101100101111101111001110110101111101101000101110111101100100110110000010010011001110110001100110011101111101100001000111110111010001010011010001110010111111100101110100000011100100011010101100000011000100111100100000111110101010001000110111011011001010001111011001011101000010100011111101011110000010000110110010011100110010000111010111000111101010011101100001010101000110011110100111100011110101011111111011001111001001101110011100110101101000011110001100101101100101000111001001101011100110100101001000111011100011000011011111001100101101010100011000011101100100000001001110110110110111011000001101011010111010001011100110010001101100001100000010001011001110011010110011101101101110000101011000011110110111110111010101110011101101011101 +110010101000101011100100111000101001010110011101011101010100010000101001010010011111001111111011110011100111101101101010001110011100100111110000100101000010111110011100011001010111011001100100011010101101000000001100000111001101000000010001010101111001000110100001100011000110010010011100000111001011110110111100110100001000110001000001111110101000111110100000001101101010110101011010011110110011101001011101000000100001011001001100001001111100001011001011111100010101001101111010000101000110000011111000001010001110000000101111110111011111011010011101011000100101101111101010000111100011101101100001101100101101101100001100100111111011101110101111100001100011001111101101111010110111001010001000100111101001000111100100011100010011001101100111011001010001000010101010101111101000010100111011100101111101111111101110101101111111000011011010000010001011010101110111110110000000110111101110011101001100000111001100010001010100101111100011000010000100001101010111111010010000111101100110110011001110101000001100100011110010110001001101010000110000010011001100100011100010000100110100111101111000110100011001111000100101101000110001101010111010100011111011011100100011011101001100101101001000101011011011100111101001110010101001100110100011110101100011100100101001000000110110110011111011110100100101000100010011101111101111011011110101110011100011110001011100001110001011101101001110010000010010111000111011110010011100100---------------------101110100101101100100100100100011000110001010111010100101100010010100000010011011100010010100101101011100010010110111011101111011010010001101010011101011110100001110000000001111011011101111101011000111000011100000010011101110111110011110011001010101101100010011111100100001010110111100110010100001000100010011000110110100110101100010000100100111111111111111000110010010101001001110110111100011001111111000100010010110100111010110101101100000111100001111000101011011100100011110011111100011110111011110111000001101100000101110001100001011111110100011011001110010101111000110110010101001100010010100111101100101110100100011000110001110001101100101100101111001010001110011110100100111000011111011111011100111111001000111011110000100101011100001111011101000101001100100110100100011001101011011010001111100011000010111100010111000010001110011101101000110111101000111110011010101111110110001111110001100000010010111101110100101111100001101000100010111111100011100111111100001110101111111000011000010110000001110101000110000101000001111110101001000110110010000010010011111000011110100000110000110101011111001101101011100001101100001010001101011000111110111101001010111111110110011101100011101000110001110011111000001110001101000001100111011010100001001100011010011001100100110001001011010100110111100101011000100101011111011100110110100000001011001100001011100100110100110010001101001110100001101101001111110011101000010010001101011100101000101001001000110110100000101110100000000011001110001111000111101011111101111100110000000001011011111001001111111100101100010000111110010011010111111110001101011110110010000011110101101000101010111011111100000001101010011000111000000111000010101111010010011110000010110110110010000100000111110101000011110100000000111111011001111011010011110111010000010000000011011011000110001100100100100111010000111010101100101111010010110000001101101110100010011001000011101011000101011010110111001111110101001000010011110110010000110011111110110111111100000011011010101000001111101001100010110100001101010110101010000100010001001010011100110011001111000110010111100011110010111001000101100000000110101100000010001101100010111100011000100000111010110011000011010000111011010101010011001010110110000101010011011100010100001011100001000100110110101010010000111111000110000010110111000101100100011110011110001001100010000010100000001110101001010000110110001010001110010001101000000111101011100001011100110001100110011001111101010110110011100110010101011111111011110011001110010111100010101010001011000011100001100111000011101110111111101101000101111100111100010000001101000011000000101011010001000001011010010111001111100001100101100110011111100110000000010011101110000100100100000111111101000100101100100000011110111010100011100001101001111010101011111001000000011101101111010100100110111011100111101111110000000111100010010011010000000001111000000000000111101011011011110100001000110111100000001000100010101011100111010000101001011001110101111111110001010101110011101001111011001001111110101101111011111000111010100101110000111001011000110010111110111111100111001111010011101110001100000000001011001000101010001011001101001101110010110111101101110111111110001110111011001101010011000001101011000110010000101011100111010001100010110010110011111000011001010100000111101010101111100001010011000000 +ls144msgs +001111010001001111000001101010000101010001000111111100111011111111001111101111000011100100101010001000011110001001010100111010000110000101100010010011000010001100110101000101010001010010001001011100111010101000111000111110010001110001100001000110110001010101110111010001000111010100110110110110101010101100011010010010111000010011000111111000101011011100001000111110101101010010101101011000000010010100110000111101111000011001000111110110010100001001101101101001111010100100110101010101101000100010000111101100000100110101011001011001001101110110011101011001000100010011110011110011111010101111110011100010000010000000001110110111000001000000001110010000011010011110010100101101110001001110111011000110011010100001101001101000000111001010100110010001000011101111000010111011110010100010111111101011101001101010001011111110010101010001111001111010011101011111110010011010010011111101100110010111100100110110100000000110111000011100001000111110000000101000110111111010100010011110101010010110011111010011011111000011110011000111011011000000110111001011100110101001111100111010100101010010001001110000101101000110100110110101010100000110101011101001011000100010010100001010011000011001001110100110000010100010010110111001010010110010000011000010000010000100100001001001101110110010001101011010100011000010001000101001011000000100010100100001000010010100101110001011111001010011001010100011000011111010011001010101010111010111010110111001011011101110100010011011011100101110100010100101110101000010010010110011110011001010011111000111111000011110100110110010101111010110000101000011101010101000011000111111010001101110000110011101111011100000100110101100110101011101010110100000101101110100111110001010110010100011010000100110111100110000101111011010010001111110110011001100111110101101100001110110111010110011000001001001110100101011111010010001110001100110100100010100111011110010011011001100100111111100100010110101011001011100000001000110011010010100011101011110011011111010010100000101111000101001110010111110111011011001110111110000000110111100011100001101011000110001000101001001101000000110101010110101101010001110001001111111110101000110011000010000011110011111100101000111010000101001101110011101111000110100000011100101100111111111101111010101001001111110101001101111010110111110111101010011101110011001011101001100101001001010010111010000001011100011011011010010110101110010000100111011100000000001110100101011000100000011000011101010111011101010000110101001011001100110101010111010010010101111011101001111001100000011001011111101100101100100011101010101111000100001110011001111100010001101011010110101011101010010001000011110111000110011100101101100100110010100110100001010000101111101001110111011010001100000111110011000111001011010110001110110001110101001110100111101111011010100110101110101000011011010011111101110101110101010100110110011011100010001101111110011100010100111001011100100001001001011100110010110110010011101001000101001101001110000001101010101011100010101111111111000001011000010000011000011000001010001110001010000101001101110010100101001110001001000101000110100001011000010001011010000010101011101110110001011010011011--------------------- +001001011011101010111011100010111011111101011001100110010011000001100010101101100011110111001000000101000001001010001011001001101100111111001001110011101011110010101010010110110001011001011000010011101100100100100111001111111001001101111011010011010011101111010100101111100100001010010101000101010001100011100111010110010011010010010110000111010010100000110011100110001101110111011001001000011111111111110000011110100011110010111101000001010110011100101010011110111011000011001011111001111001110111101000011101100110000101001000010110110001100101011010100001011000110111101100100111100010110101100100010000110010110101001110111101011100111100010111010000110110111011101100101010010001001100110010110010100110010110010110100101101100100010010001000001101001010011110010011001100010010110001011010101001000100000000111111010111111110000001101000110110011100101100001111100000101111000010001011100100001111100000010110011010100001010001101101101111010001000101100101010110100010001101000011001011101010111000010110110111101100110010110010101001111011100101100010000111110001110010011110100111011101001000100111011111011010111101100010100101011100110001111111111110111010110101000010000101000100011110110101000100001011101001011000001001110011111110011111100011000100010100110100100111110100110000000010101101001010000111111110101011001110110000100010011001110001010001011000110000101010110101001100101100100011101101011010010001101011111111000010010110011111101001010101011110101000100101000001010110110111011110011100110000011010001110111111011011010100111010011100001100011110001001011010001111110001011111000100110000110010000000100110000101101111001111010000000010101101010000110011000000111011110101001111010100001000000100001011110101000001100011011100001011001011110101100010011101000010000010001101111111110111010101010000111110110010010110111111100111011110001000011110010101110000000111000100010011000101001010011111100110000001010000000111001101001101101110111111111111010100010110100001001110110110100010000001111011111000001101100101001111100101001110111110010110111110010010001110110100111101100101000100111010100100101010001010010010111001011000000100100011101010010101001101000010100000011101101000010011001001001011000001101000110001010010010000010110110010101111100011111001001000011011011101101101100010101011100111100110001011110000101001101000111111010000111100011111011010100001100100101110010111001000100111011000010100111100100100101110001000110100010101001100010100100110001010100001010000111010110101000101100100111110010011111111111001101000001100101000010111110101001110100011001000110000010101000101001110110000000000101111000011110001011111101100011011101010000111010000111111110000001010101000011100110010000000110010010100011101000001011111100000010001010010011011010111011011101101110011001010011111110001100001101110111000001101101000100001001010110100101110010010110111010000111001110110110110100100001001000010100101001111110010001011110010100001000111011100111011010111110110100111010010100011010001110101100100001101001011111010110101010111011000001101101011011010100001010000100000111000010100100010100110010110--------------------- +101001100111100011100000100100111100001111110100010001100000000111101000100101011101110010110101011011110001101111011110110100101000001001100111001001001010010001000011110111110011111110011110110010001000101010001001001101010001111010100100110011001101100010000011010100111001001111110000000001111001110110110000011000000110011010000010100000101111100101000110001100111001011011110111011110011000100100000011101101000110000000111101011010110101011010111111110001111110011110101001000011011110110101111100110101110110101000011000000110101111001011101100010001110100100010001110100001011000000110101001001100011000011000100010110101111011000011101110011011001100101001110011011110100000000001110010000100011111000000111011100011100000110011011101011101001010000011011111110110111011111111100001111100111100110111010000111001101011011001111101101001000101100000011100000001110111001100101111111010111100101010100110011111001000110111000001000011101100011111110101001011000010100110001101101010111010101000101111010111101000111000110001111010000000001111010000000000110001100101001111001001000000000101000011101110000100000111111001001000110000010011001010001100001000101111000101001011011100111001111100101111011111111010100110101101010000011110100101110110010101010011100000110010100101110001110101000001001101110101101110111011000101001110001010100100001010101001000110011001011000100000001101110111010101010001010110101111100111010101110001100110000001111000000010010101011001011010110100111001010011100101011010011100111011111100101111111110111000101110110010001100100001010001110011101000100011000111100000011011011010101001001100111101110111000000100011100101100110101110101010001111111100101101011000111010101011011010110111000001001110010110010010100110100001111101101101010011110010010110011101111111110001010011110010000110101101100011111100011111110110110100110110010010110001010110111000000001010100011110101110010101010001000111100001100101001111111000111100111111000001000001110111101001110000100001011011111111010100101001101110010101000010100010111110000111011001110010011011011001010010100100011010101100011111011100100101100100001001101101010101101010001001101001000100011101001100011110101110000011111011010000001111011101001111001011111110110011010010010010010101111100000101000001010101111110100101100110110011111000110110101100000111001010010101001100000110100100011111010001010111011110101110100010101101111010000011011011100100001010100100001011110110001111010010110100001011100111011111110111000000010000011110011110101010101111010101101011000101110101011011101011001011100101001110100110001011000011101110001000110110100000101101100010001101000110010011101001000110011011010110011001101000111100011110111110000010011011011001000110100101011010110110001110111100110101011000011100101111110001110100101010110111101111100110010010101111010111111001000011101110110011010000111101001110110101111001110011011110100111010111000011110101000111100101101000010000010100011001101100011000000010111101010001011101010010111111101111010111101011100001101110111110100111101110011100101101111011011011000100001011101101111110101000100011100--------------------- +111101010110100100000010000110100001100110001110010001101101001100100100110110010101001110101101011111101101110010011001111101001111011011001010111010011111100110100010101100101110101111101110011000100100011100111101001011001001011001110011111101110110101001100101010110111100011010111111110101000100011101000000111001000101111101011110110010100110010010110001100010000100101101010000110111000111101100101001100110101001001001100111011110111010100101011111111110010010000011110010100100100100001100110001011111100001100100010001101010011001010110110001011011011000010101010000011001111010010000111101110011000101000101101100000100001010001010001001100110011000100101010011010001110010101011100000011110010000010110111011101000010110101010100100000010001001111010100101110111000111010110100100001001011011010100101101110001010000111010100100000011101001001100111111011011101101100010111010011110011110100110001001011111100101010110110000111111100010101001110011011011100000010100110101100000010011110011110101000111000110011001111010100111000100000010010100111000101001101000111001101110110000011001010010001011111001110111011010010100111011111000010001011101000001010010000000011010110110110000001100111000110010001100111111101000001111110101001000110101001101001100011110000010110010010100000010111010011001111010010001010010111110000101110101100000101010000100010100000101101010010001111010101100010000101110010111110100010100110110111100101111110100111100110010010111101111111011111011111001001001010111100111000000000101001111001100111000011000101001010100101111010110000100101011011111010111000111010110001101101000110100100011010111100100011000101010000110010001000111111000000001000010111001011000010111000111010000101001011011000000111101001001110001001110000010011001110100111110110010010100000010110110010101110001110110111011010111100010101101110111111111010111010110001100000101000100101110110100110111001111010010111111001111100010110111101000111110011001010111000100100000111110111100111101000001111001001001000010011101001001000110110010111011101100010001001111010111110010111010110100010010101010011000101111011010001001101001001110101101000100101011110101001001000101100010100000001001110110110110100110000110100001001101111001101011110111101001000110100100010010000110001101111010000010110001000011101001011101110110011010011001110111000101110101000111000010101110001101110011100010010001110110101101010100100110101001110000100010010110010001001101110101011100100011011010101000001101100100001010000111010110011011000001000110000111000110110111011101111001101100110100100110010101011001001000101110111110100011010111111000000101000010010000011100001010010000111110110010011110100111101110110111100011110100011000001010110000000101101101011100000001100110000010100111111011001001000110000110100111110010011010110110110110001100010011110001010101100101101110010111110111111100010000111011011101111011101000101001010010111110110111101111000000100100100010111011101100100110010101011011111010010001111100010100011011110101011111000100111101010000111001111110110100000111010011010000111001101001000111100011111010000100011001011110000--------------------- +000001101011011000011111001000110110010101101000010001010110100100001010111110101110111101011001101111111110010011011001010110001100011100110100101011101101111101001100101110010110011010110000010101110110111010011010101111101011000100001110101010011111110011110000000011010101011001101100010101100001000000000000101010010001100011001000100101001000101110100101011000111011001000111111100111100011011011010111011000110010010001111010011010111111000101101011100001110000100000011100110111010001111000110100111101010110010101011000011101000111101010100100111110001000110010010111110110010011110000010110101101110111010011001011111100111011111000000111010111000001110000100010011101110001001001000111111110111110001011001110010110001011001110111101001110000111101010110111011101000001010111010010111011011110101100110010110100111001001011001101111100110111101110001011011011011100110000110010111010100001000101010010111011010001111000010110000101101111011011010010011101110000100010110101101001111111000000000011001110000011011001100001111001111100011010101001010101101110011001110110100011101001000011110000000101000101010011100101011001110100101011000010000001010100011011110101000010110111110011010010110001100110000010110000001101100000111010010101110110111110111010011001001110101101101111011101011010001110000111011001010000000001101101101011011001011010101100001000000000010010110111110011000111001101011111110010001000011101111000001100100001000000111100000101010001011111100101001011110011101000001000010010111111110110010001101000000101101110000011010011001100110010001101011011000001000110000101001000111001110101011011100111101111001110000000110000001110011010000000111100110010010101101110110101001001110001101000100101010100101010010001010010111000101011100110110000111100010101001001011110111010010110001111011011100011110010101010100001010100100110101101011011111010000110001111101011001110010011110101110110110001010110111000000100101011001111001010010001010111001100101010011101001111101010111011101001011100111111110111101110111010000010101101010010011110100111110101100001101111010000101110001011101111010100111001001011000110000010001110110110101000100010011100011001100110100111010101011000100100111111010001110101001010101110000011110000111100010101111010000100110101111101101100011110010011001010001111001101011111101000110010110110000011111100000010100000000101011110111100001111100101000111110100011101111000110100101111000000010110010000111101011011001110100011110010110001101100110011111100011010100010010111111101111100101111101111001001010001111011001110001011111010011111010100111100010010011000100010000000110010001101011111011101011010010100001010110000101111001001011010010001010010011100110001000010111100001101101000101001101010100001010101000001010000100001111111111110110010110010010010100001111001001100101010011101110000011011101100101101110110101100100011101011100011101000011000110011000110101100101011100100000011000111011101101000011001111110100111011101011101001000110101011111111101111101010101101111110010100111101000011101100001011010111111100111110111100011101111111000100001111001100101110101100101000--------------------- +111101010000010010101100101100001100000101010101011110010111011010110000100101110001101001001111000011111000010011100010111010100101001101000111111011000001000100110110011011001101100001010101001000010000001110110100000000001011111000111101001010000011111110001101101010100000110101010010110110110010000101000010111100010110001110101100110010110101001011010101110010010001101100010101111111010110101011101001001100111100101111001110110100010011000010011000010010101011011010110001011010110100110010100111101010110101010110110111011000100010000111110111001101011100111001011011011100010011001111111011001011000000110101010101010001100110101111001100100100001100010111011111000011100011000100101001000101001100101111110001101111011111100101111111001010110001010100110010010101100111100000100100001110110000010101011011010000001111011100101000100010001010101101001001010001011011100001000011101001101010100011001111100001010110100111011100111101001010111111111111001011010011011010010110101000010110000111010100111111110001011110110011101111101100011110011000111011110101011001010000000010000101110110100100100001111101001010000100001101100000101010010100000100111001000001100011000100100110010111110110000111101010100111010000011000111101000101101001000001110011010110110110110000110000111010011101011000001110100011101111101001111000100010010000101001010100000100111000000011110001010010100100011111000111111100110010101101101000010111101010111000001100110011111110000001011000000001000000111001111101110001111110010001111000001110000000111110110000101000001011111001111011011110100100001100000001011101111011110010101011000001101010100011110110110101100110111011110001101001010101001110000000000000101111000010110011010100101011110010010111010111110011110000001010111100000111011011101101000101000010111101110011011011100100001111100001111010100011011101010011011001010100110010111110100000000100110001011111100010110011010000111010100001001010001111010100101101111111111110111100000011111000111000111100100010011100000101000100000011110011010001000010110100110110110100110011001110011000110111110111011111100110000100001101101001110010010001100010100011001000011001011111010101111010101010100010001111100000001010100100110111100000110001111111111100001101000110001010000000101010011001010001010110111101101011000001100100111111010001100111101100001101000110011011101010110010101010001101010001110110011010100110100101010010000101000100000001001011011100011000011011001111111000111111000001110100100011010101110100010011100111110111010011110010001110111001000001000011010000111011110001001101000011111000011111001000000111100110100001110110100011000011100000101110110010100101000111010010111100101010100110001111010011010101100101110000100111100111101111110010000001101100101000011101000100111101001100101011101111001110110000110000000001101011101100001110100111001000010000100110000101001011010110110011101100100101011000100110111110100100000000011111101111101110011100000000111000011100111100110100100000101000101000110000001100110100101010010100001100011011001100111011010001010011111011010111011011001011000011110100000101110001000111001001111--------------------- +000001000110111000110000010110000011011110101000001001110011010000100001011001100001001010000011010111000010110000000000101100000010101110000001001101111100100011011011000101001001101100001000001101110111111101000010101011110010010000001101101010110101010000010111110100100111001000101000010001011001001010101101011000000010000011011101010001010101011010101101110001111101101111000000101101111000111100100000011101110001110111001010101011000010101100010011011001110100010001010101101101000101101110100110100100110111111101100000101010010010011100011001011111000011111101111010011010010011101000001111001011000001000001001011101010101001111110101001011011000011111111101000110100110010101100111011100001000111110011011011101000110101101100010010010110111001010111011101110001001111110111000011111111001011010101111011011111001100110111001000111011000100011111001101010101110000001011011100111111101001101000011011110110110010001110100100011101011001011000111111011001001010010011101010000111101000000101111111000111110011100100001010110110010010110010001010111000111011110100000111100111101011110010110100100011100000110011100011001011000000111110001110000110100000010001101111000100100000011011100101100100011100001100100101111001110010011101111110101111011001101100101110111011000111110001011101010010101110011001110010011101101011011111001010101000110100101010001101010000000101001110111101100000100111110110001111100100001100100000101101011100010010010101101001101111000100110110010010100001011001111010010110011011011100110100100001001101000111110001010111111110111000111000110111010101110110111110110100101111011000000000100110001100001101010111110011110010110111001011110000001010101111000010111000100011010111011011000010110101111010001001000000010110010011110101001010000101001101010000101001010011111010011011111011000000001111110001001110110011101101111110101110000001100001101110001101011111100010010011100100011010001100111011000110000111000010001010000011011000000000100011000000001101100001010100101111011011100001110111010011101110000111110001011010101100100011011111000100011101011010100000001101001110110011001100010001110111011010011111001100111101111011000111110101010101110101100101010010000110010011010000010100001001001010110000111001011110111111011011111101010000000000011110000100001100100010101101010010001100001000110000111101111110000001010111101101000111001011000000010011010111110001100101101100011010010111110100101101000111100010101011010101100110000011011010110110010001111110101000111100010111001001100000011100001100110010000100011000111001100101101001110001011000010000110101100011011100100111101000000000011001110001000001011011111111111111010110101011100100110100010001011101100011011100100011000111111010001100000000010001111010111011000100101010010001001000010010011001000111001001000010011100111011101011110001010011100001111000110100011011110011101101101100110100001011000101011010111111100001010101011001000001001010010011101001101101011100101100101100100000100110011000100100010101110000101001010010111111000001000000010010100110100010101010111001101101101111101111101110100101101100001110011011000110011--------------------- +011001101011110110001111110111001111000111110010100101101110110000001100011100100110110011011011010100110011000011110011110011010111011011100000101000101011010000101101110010010101110101100011011011111111110010111001100010100011110101010000111001010101101101111010011000000010110011011100101001010101101011001010100001000111111010010010101011001101000011011110001111111101010111001010011101000110100101110001100101000011011001110101000000100100010101010001010101000111111001101011000001001011000111100101001001011111010000111100101100010111010101110111110100000111011110110110110011011111011010011100011010001100100010101101001101011010001101010100110010110110110001111101100111010111111111010111011110010111111110010011001101010001011011111011000100001111111101101110000001111000001001101100100000100101000011001101111111110001101010000101100101010001101100111111010000001000000010101100101100010000000000111010011011000001110000011011000001010010001000010111111110010101010111011000011110110101010100100011001111001110101100101111001001011110010111010111111001110100110110111110100110001011001101000011010011100011110100100111011000000001110011110110111010101110001100011000110001011100010001100111100111000110001010100110000101111000010111100111010100001000101000001010000001110001110100001101101010110011110101010111001100110001111100101100011011110110101001110111011011110000111111100110010111110101001101001000000110110010010111000001011101001101001110000110101110011000010111011010110000111100100111001110101101001110111111010100010101101010000000000000011000001111101110110011010100110110110110001011011110101101110010011010011011111010101000111010111011101011000011100110000010101101000000100011011000110111101000101110110111111111100011001110001010000101110100111111000010010011000100000010010111001001110110010101101010000101111000101010011101111100110101000101101000010111011110011110000000111010000001100100000000101011100001010011001110011000100101101110000100110010100000101010110001110000101010000000110110010101000001111000100101000000011011010000101101100101001001010001100011100101110000011101110000011000010011011011000000110100000101111001001011101100000010110001100101010100010011111110100010101001001110101100001000010110001111110010000111010110101010111101110101001101111100111011000101110001011100110000011001111101011000101010011111011111010111000110101101001001011010110010011110111011000110100011101010001101001000010011011110011110101011001011110111101111011011100011001110011111101101010000001110001011010101010001100011100010101001100101111111001000110100010001110000110001111100000111110010101011111100010000111001100110111001011000111000101000011111101100111010010100010111010001110110100010110111010001010011101001101000011110110010100010000011111000001100011101111001110011111111001011001110010010100001110110011101111010000100000011010111011011100101010011001100011000100011100100010110011011100000010111100101001111100010100110010100110000001101100010101010101011100011110101000100001000101101110011010100110001111000010000000100111111111010101010111001010101000011100101001000000000011011100011101100010010101--------------------- +000101010001010110010110010100010010010100101001111111010101011101001000010010000111111111010011111000010011100001011010110011010001111101000100010011000010001110011001011011010010100011000010010000111000001101101010001111010011111101101011101100001100001111001110000011110101001011010101101100000100011101100001010010001000000110001000011100110011001110111001000010001101001000101100011011110011101100101001111111100000001110111000010001111000000000000100001010000001000001110101101001011010100000001010100100001110110010011100100000101110000001110111110011010100100110010110001011011101100010111011110001010110010111010100000101110111110101110010010010111000101001110001001001001110011110000010110001100101101011010011110011110100110001110010111001010001001111111000011000011111101010101101110101001101001001101001001110011000110001000010110111100111000100000111011011101010011100110011101101010011111001001101101111001110111110100110101000010101000010000100100011011111111000001110001100011101101110011110101011000011011001101110010110100100001110101100010111110011110001100110111011011100110011100100010100011100011001110101000010001011111111000101111101110000010111101000101010001110000001101001000110110010011111010111111001011110111110111010011100100010100010110010010000101000000100001101100111100000101011000000011100000011101010100010001110011110010101001110001000010100101011100111010101101000001011100101111101001111000111011110011000110011110110110001011100000000011001011100001010010000101001101101101000000000100000010100100101000100011011110110001110100011111101000001110011110001000011011011111010100000100111111111001110011011000100011111111100110010010000110100001010110001111011111111101000010000101011111111100011010010011011000000111011001101010100011100011000011001011111011010011110100011010000011001111111001110010001110101010110111100101011011100011110010110101101100111001101001101110100110111000001100101110010111001101101101001011111110100000100011010001000111101010011001010001010101000010101111100010111101110100110001111001000111010000010100001100000111001011100001110010010000001000110110010100001011010000011010100101001101000010001011011101101111111000011001010010000001111110110111001010010000001110100011110111100010001010111001101010100011001111101010110010011000110011110000101001010001111100000110000110110100001100001000100101110111000101101101100100111011000100101101101000010001011001111100100100001011011100101111100000001010110100101001110011101100101000011101000101110100011000110011001111100111111000110111111101101111111000000101100011110110001110101101010000101100001001000100111111110001111111100100111101110101011100001000000011000101100100011010111111011100101011001111011110010000000111100100110101001001101010011011001101110101000111110100001100011110011100000001101111101101111010111011001111110110111000001110100101110111111111001100101010011100100000111110000100001011000111100001101011100000101000101111111000010011000000010100010000101100000111100110111011101001000101100110111010101001011010100111001000111010101001011011110111110101111010110111011111010111001101100011110011110001100011--------------------- +011100011101101101010000101101101000010011000100010000001011011110000011001000100011000100100011001010010010000000100111101000000111100111000110100100011111001111110110100110000100011010101000110010110011011110010100001101110011100001011101100000001000111011101110101010011011010010000110001011001010100001000110000100101000000001111001001111000101010000100010010001111100110110101000111001101100111100110110111110100010010011100111100110000010011110110010011101111100110111001110001011110101010000100111010010110011111111101000100000000110101010011110110010100100111100110000011111101110011100011011011110001001110111000101000111111110101000010110001110010111011111010100011100000101101110101111010010101100000111001110110010000100111011110110000110011000001100111011010011000000100011100100110111100010100101110000000110110000001100000000010110111011100001101000000111011110110111111111000000011100100100010001000010000000110110011001011100001001011001000100011011010111110010000011100000001110001101000010101000100000001011110100100001100010101010000011111010101011001101101101100010001001010000100111111000101110110110011100101011010101011000110001110011001000001000111101101000001011001111101000011000001101001000101001111110010111000101011000010001100111100100111010000110000110110101000100111101100010111111001010101001110010001010011011101111110100011111110100111000100001101001011111100010110010000101011001000101000111110110010011001101001110010001010011010100010110010100100100111011101101001100011110101010100000101101111010010100001101011011110001111001010101100100100011100101011100111110010111100001100011110101001011101101000010101000001000011011100001010010101000001011001100111100000010011010001100100110001010001010101111001010110101000110001101111100010100100010011100110100000101010111100110000011011110101010111001100100100110011100011011001000110000100111111010010001100010101100110110010101010000001011010101100111001010011001000111010011010000110001011011111000110111101110101000100110010011000001101010011110111011100100010000010111000010011011110011101010101001001001100100000001101101111000011010010110010110110011101010000011001101000001011000101110010011001010101101010001101101011011111100000111011111010011111111010111101011010110110000010110000000011100000101110111010001001101010111010110010010101100000101110010100001011010100001000000010110100010011010000100010010011100001110001101010100000100100110100111011100011010010100101101000011110010010100010111011100011011111000111100001010010000000111001010001101100100110100100100010111001110110101100010001011110000110000101011011000110100111000001110110011000110100000011011010100010110010111010111111110111101010110110101001001011101010010100111010000000000101101101010110011000100111000101001010011100010111100100011101010111111111100111101111010101111110000101111101010111011001110010001011010110011100010101010101000101101101011000011000000101000100111001010010101110110100001011111000000110011100110011111010100100100011100101101100011101001011101011100001011011101010010010011000000111000111010010111011100001001010010000000101111010111011111101001000001100--------------------- +ls144cwds +110110101010101100011010010010111000010011000111111000101011011100001000111110101101010010101101011000000010010100110000111101111000011001000111110110010100001001101101101001111010100100110101010101101000100010000111101100000100110101011001011001001101110110011101011001000100010011110011110011111010101111110011100010000010000000001110110111000001000000001110010000011010011110010100101101110001001110111011000110011010100001101001101000000111001010100110010001000011101111000010111011110010100010111111101011101001101010001011111110010101010001111001111010011101011111110010011010010011111101100110010111100100110110100000000110111000011100001000111110000000101000110111111010100010011110101010010110011111010011011111000011110011000111011011000000110111001011100110101001111100111010100101010010001001110000101101000110100110110101010100000110101011101001011000100010010100001010011000011001001110100110000010100010010110111001010010110010000011000010000010000100100001001001101110110010001101011010100011000010001000101001011000000100010100100001000010010100101110001011111001010011001010100011000011111010011001010101010111010111010110111001011011101110100010011011011100101110100010100101110101000010010010110011110011001010011111000111111000011110100110110010101111010110000101000011101010101000011000111111010001101110000110011101111011100000100110101100110101011101010110100000101101110100111110001010110010100011010000100110111100110000101111011010010001111110110011001100111110101101100001110110111010110011000001001001110100101011111010010001110001100110100100010100111011110010011011001100100111111100100010110101011001011100000001000110011010010100011101011110011011111010010100000101111000101001110010111110111011011001110111110000000110111100011100001101011000110001000101001001101000000110101010110101101010001110001001111111110101000110011000010000011110011111100101000111010000101001101110011101111000110100000011100101100111111111101111010101001001111110101001101111010110111110111101010011101110011001011101001100101001001010010111010000001011100011011011010010110101110010000100111011100000000001110100101011000100000011000011101010111011101010000110101001011001100110101010111010010010101111011101001111001100000011001011111101100101100100011101010101111000100001110011001111100010001101011010110101011101010010001000011110111000110011100101101100100110010100110100001010000101111101001110111011010001100000111110011000111001011010110001110110001110101001110100111101111011010100110101110101000011011010011111101110101110101010100110110011011100010001101111110011100010100111001011100100001001001011100110010110110010011101001000101001101001110000001101010101011100010101111111111000001011000010000011000011000001010001110001010000101001101110010100101001110001001000101000110100001011000010001011010000010101011101110110001011010011011---------------------010101000110111100011111010011111000011111000100000111000000100110010001010001110111001111000011110001110001111101001000000100101010110011001000010010010011011111000101001000111000100011010101100101110001111111111000011010101110100011000011000110001100001100001011101010000111100101111010100000101011111101011110001110010101101010011100001000110000100111111000111111000010010000110100111000101011101100001011110101000000001010010110001101111110001111111100111101000011011101011000110010011000110001100110101110100010110000011110101101001110101000110100001110111010010000001010011100000100110110010001101000100111101100100110111101101001000101110011101111011011100101011000101001000110111010111110110010011000001001101011110111010001111000011110101110111000111001011111111111101001111000011011100100000011100111111011000111001100111101111101000101001110110011011000011101001110000111110101001100001111011001110111000100111000111100101111011101001011100110101101110011111100011000101101010111110000001000101010010010101100011011011011100001111100100101010000111101010000000100100011001010110000100100011111001100000110111101111100011101001101010010001100111010001100010110111000001010001111011101100010111000000011111000010111111010001000011111101010001110110110111011001100000111010011100111100001000010111100111101101101010111011111001010010011000101110101100000101011001100111101101111101101010101110001101011100111111100101101100110001010000111000011100110101011011001101001001101111100000001001100101100111010100001101001010110111000001110001101110011111111100001111001110000001001101011001101111011111011010101010011000111000011010000111111110010110011010011100100001001111011100110001000000101111011100101100000111100110011100110100000010011101010011000010010111000110101111010011101000101011001000011011101100000101100001110001101010100010011101100110000111111101010101100111101001011110100100010000101110001010001010110101110001011011111111010110000101001001111000111011010111010110011110011110011010010101011011001100101110101011011111111101110000101010010000100110000111000100011111100111110011011001010000100101111011110000011011111000110000101001000010000111111001011001010000110000011100111010011011000010000100101000011011001011100001100101101111111100001010010111101011100111111010110001110101110010001100110011101001111001111101010100000101110100010000110001011110010011101101011011101000011101011000001100110011110111010011111000010011100000001000111110001110100100011110011001100110100100101001001110101001100110100110100010111110010111100011101010011101000101110001001111011010110100001000111011110110110011101011001011111001101110011100100111101011000100010111100111001111000110010101111001111000010010101001111110101010001001111101000100110011000000100110001001111110000001000101111101111000011010001011110011000000000001010111011101001011110100000100101001000110110000110010111111000110100001000111010100011111110111000001101100111100001110111110100100100100011001111000000000000101000111110010010100001011001110010111010101011000100100001111111001110000101000011000000010100100001011000111000101100000011011010010000101101011001011100100100100011110010100010001101100001010101000111000110110110011010011000111100001010111000101001001111100110101110100011111010110010011101111110101110011000100000010000101000001011010010111110100101000111111001111110001000011010001110101100110011001000011110010101000110011010101110100011001001010111010010011011111111100011001010011011001000101000011011001001101111111111001101111000010000101010011110111010000101101011011010111101011101010010100011010111001110110111111001010001000101110010101001111011110101101100111011001101001101011100100110011101101111100010110100010001100000010011101101011101110011100010010100011110010001010010001000100000001011001110001010111011010111001101010111111110101110001100011111001001000000110110001111000100010001111101011111011011111001100010010010001100101010101111000110110110100110100001111000001001101101110111110111011010100100100111011010100000110100001100011010001010101000001110001000001110110011011100011000101011111011100011000100101100111011010001011100000101010011010001001011110010010000011100111000011111101000101011000100011000000100111111100001011110000111101100100001101100001001011110111101000010110011001110111000000010001110000101100011111011011010000000111011111010111011101010010011000010011111110100011011000011000100101010000010101001001111110110011101110101001010100101110101110010100001101000101100000110100100001101101101011110000011001111101001000000111000110001000110100110101110110110101001100001101001111101010110110010010011101001010010100011111011111111010011101111010111101010110000001000110110110000100001111011010001101110011001101110111111011011101001000011000101010010011011011010010000101010010011101110100001011100101100001100011111111111100101000101110001110110011011011100110111001000010100000001111011010101001110110101110110011010001111111000001000001100101111111011111111110110110000111001111011101101000100100001100001001100110101001110110011000011101111011010001010101100101011011011110111011101110100000010110110000010000000100001010001111110111100010011010001100100100101110100011011000110100111100001100110001110111110101001110010010010010100110011100011000100100101011110101001100100011110011001100010000011110010101011000011111011101000110111101101010100011101110001110001101101111001001001011011111010011111001111110011111001100011001011010111100110101111110101110001000011011001011010101100100101100100110101001100010111101100110001100101111001111101010110111010011011011101111001100110000111000101110010000110110111011111110000001100011111010000011010100101101101101000000101101100101011010110101000001111001011100101001101001011010100001011111011000110011100100101100100000000000000110001111101111011010101111111010001001111001011001001111010011011100110010000011000110000101101001100001101110001011111001101010011101000110001011011010011100000001000100010101100011101101011110100111111101111011101010110011110100011010100010110100001100110010010000111000111111001001010100101101110101110010011111000001010110010111111000010111100011110101110110111000101101001111111010000000110101101001111010111000100001100101001001111001010100000010011110100000111111110000011101010100101010010100000000100100011100001011100111010100111001111010101111101010100110010011101111101010010001111001111011111100110011100011001110000001010100001110100110001100000110100110011100101111100111011101101111010111011011110011010110010101110111010111000110101000011111000110011010011011000011100000000 +000101010001100011100111010110010011010010010110000111010010100000110011100110001101110111011001001000011111111111110000011110100011110010111101000001010110011100101010011110111011000011001011111001111001110111101000011101100110000101001000010110110001100101011010100001011000110111101100100111100010110101100100010000110010110101001110111101011100111100010111010000110110111011101100101010010001001100110010110010100110010110010110100101101100100010010001000001101001010011110010011001100010010110001011010101001000100000000111111010111111110000001101000110110011100101100001111100000101111000010001011100100001111100000010110011010100001010001101101101111010001000101100101010110100010001101000011001011101010111000010110110111101100110010110010101001111011100101100010000111110001110010011110100111011101001000100111011111011010111101100010100101011100110001111111111110111010110101000010000101000100011110110101000100001011101001011000001001110011111110011111100011000100010100110100100111110100110000000010101101001010000111111110101011001110110000100010011001110001010001011000110000101010110101001100101100100011101101011010010001101011111111000010010110011111101001010101011110101000100101000001010110110111011110011100110000011010001110111111011011010100111010011100001100011110001001011010001111110001011111000100110000110010000000100110000101101111001111010000000010101101010000110011000000111011110101001111010100001000000100001011110101000001100011011100001011001011110101100010011101000010000010001101111111110111010101010000111110110010010110111111100111011110001000011110010101110000000111000100010011000101001010011111100110000001010000000111001101001101101110111111111111010100010110100001001110110110100010000001111011111000001101100101001111100101001110111110010110111110010010001110110100111101100101000100111010100100101010001010010010111001011000000100100011101010010101001101000010100000011101101000010011001001001011000001101000110001010010010000010110110010101111100011111001001000011011011101101101100010101011100111100110001011110000101001101000111111010000111100011111011010100001100100101110010111001000100111011000010100111100100100101110001000110100010101001100010100100110001010100001010000111010110101000101100100111110010011111111111001101000001100101000010111110101001110100011001000110000010101000101001110110000000000101111000011110001011111101100011011101010000111010000111111110000001010101000011100110010000000110010010100011101000001011111100000010001010010011011010111011011101101110011001010011111110001100001101110111000001101101000100001001010110100101110010010110111010000111001110110110110100100001001000010100101001111110010001011110010100001000111011100111011010111110110100111010010100011010001110101100100001101001011111010110101010111011000001101101011011010100001010000100000111000010100100010100110010110---------------------011101111011101100101011010100010100001001011101010100000111000010100101110011001111001100001010110100010111101111101011100010011000001000011100001010101100111100101000100001011011001001001111000010111110101111100010111111110000101101000001110111110011010011011100011010110010010101101001110100010011100001001010011010101111100111110100001101101100001000101110010011011101101000110011110001011110111100001000111111010000101001001010111010111111011111011011101001000010010111110010011000001100110011101001111101001011010101011101100100101101101100101101010000011110000110110100110111101100101100010111000101100000000001011101110000001101101100000111101111010000111011010100100011100110111011100100101101101000111010011110011101000110011011010100100011011001001111001110111111101010101111010100100110010000011101011100101001010111100011110000000010001100001101000110100110011011111011111011101011100111101001000010111110011101110100111101011110101100111011010011001110001010011001000111001111111001110000001100110001011010111101001100011001100100110111110001000101010110000110100010111010010010111101101110001101001000010011011111111001000011010111000100011000101010111011000100101011100000000111100111011010101010011100011110010001011011010101110100011011000111000111110100110100000000010000111001111110101001100110110100001011011110010001011111111010111001111111101100111111110010110101001011101110011010101111111111110000110101010000000011111000101010110111110010011110001101011010001000011101111011010110111111000101000100110010100001010010000111001010000110001000010101010100111001100011000111000011000111010011100001010111000000111110111011111110010011101001100000001100010011111001001110001001000111101101010100001010110110010001010000101100100010101111011111110001111110011000011001000110110111111101101001110011011110111000011000110100001011001101001011010000011001010101000110010101001101100100110011001001111010111101000111011110100100110000000001110011111001101111100010001010011111000010111100101111100000101000000110111000001001110101111011011011110110011100110101011110001111101011111001110000000101100100110011010000010101011001111010110000111111101010011000000111001101110001000000001001000101100101100100001000110011100110101101011110010110001010100010001011111011110010011001100010011101001000001010011000011111111100100111000000111010111110011000100100000000010001110011010010100101110000010110100011011110010010110100111010001101010100100100111111011111010110010111001001111111100001101100111001000000011010010111000100110100010101111111000111011010010001001010010101001111000101100000110000111100011101010111001001001101000100011111100010100001000110111111101111110001111110110101110100011110100010101111110100100011010010111110001010010000110010111000011010111010110010111011110100110110000001011000010111010011101100011110011010111011101101101011010111101100010111100001100111010110111100100011111110111111000011101110010111101000101100001000110111010110010110010111110101111011110111111101100001000010110000111111001010001100000001011010001100101101100001010000111000100011001100011111101110101001010010011000100011110110110110011101100001100100010110100101111001100010100011110110100111001001000001110000001000011101011100111000110001001000110000000010000011111010111111100111111111110001011011111111000011110001011001101110011010110110011111110011010011111001101000001010110110111010110011111000110111111010001011001001011101110111000011100110001111011001100011110010110000100000110110101101100101001000111110101010100111111001010101110000010011111011001100010011111100000010001101001000010111001011000000010110110010110100011000000111100001110010100111100000010100000110101100011010010000011110110010100011011001110001101101011111110100000010000001001001001010101001011011000111011001110100001001101000100001110001110011101011111100100101001110010001100101110000111111010001001000000011001111101010000110110011110110001000010001001110001011100011101110100111101001110111000001100110000010000110001010100001011100011111000100011111110100110110000111101111001101010101111000010010011001111001000011100001011000010011011101001101001001100011011101101111011100011101001010101100100101110100010010101010100111011000110000010100111010011011011100111010010110101110100001010101100000100010000111101110001011100111000011101100110011001110111011001111000011001101001001111111100001000101111010100011001111011111100000000011011110001101100110101111000111000001010010000100110010001111101100111010001100011011001111011100101101001110000100011100001010101110000110110010010101100100101001101110001001101001001010011110110000101000001011010011001011010001001100111100111101111110101011111011110001111100100111000000011010010011010101110100010010001001101111111101101011101110100000111101100111111010000110000100110001010100100000111111001000011000010001101000111010000011101000100100001111010000001110101011001110001101111000000010110110111000100100110101101001100101101000001011000000101001001010011010100110000101110110100011011110100001010100001101101010010010110010100010011011101010110000101110011111100100011101010010101011110111000101100011001010010010001100011111100110101101111100101001011000000000010010011010101010010000000001100001110011110111001000110000001110011110110011010110011100011010010011011001110111111011110001101011010000010000001111001000010001101010101111110111110101110010110010011100011110111000101000110000000000101000000101011110000000010110010001110110010100101101010001110010001011000000110011001011111101100011110010000110001011011110010010100001110111111011100000100110100000000010010100110011000111000101100100111001000010100101110011001110100001001101010010110100000100011101010110001000001111011100011011111011000101010000111011101010110011100011111010111000110001100101111111011000101010100111101010000001100001011111101011111001010110100110011101000100010111010100010001111100001100001100000000001100010011011100001001111011100100010000110110000110010010000000110100101101101100100100100111001111000011000111011000011110100110111101110000110101100101011011111101111000100110111011110101011101110011010011101111110010001001011110001100011101111111000001110011101100110001110001001111111000011110110110110010111111101110011001100001011000100011010001011001111100001011100011111100100000100000100010100011001101000000010001101111001011011100100000111011111100111011111000011101001000001000110011111100011010101110100100001000111101111000000111011100000011100100111000011100001101110110011011111100000101011000101010110110001111111110001010111100101110001011010101010100100011 +000001111001110110110000011000000110011010000010100000101111100101000110001100111001011011110111011110011000100100000011101101000110000000111101011010110101011010111111110001111110011110101001000011011110110101111100110101110110101000011000000110101111001011101100010001110100100010001110100001011000000110101001001100011000011000100010110101111011000011101110011011001100101001110011011110100000000001110010000100011111000000111011100011100000110011011101011101001010000011011111110110111011111111100001111100111100110111010000111001101011011001111101101001000101100000011100000001110111001100101111111010111100101010100110011111001000110111000001000011101100011111110101001011000010100110001101101010111010101000101111010111101000111000110001111010000000001111010000000000110001100101001111001001000000000101000011101110000100000111111001001000110000010011001010001100001000101111000101001011011100111001111100101111011111111010100110101101010000011110100101110110010101010011100000110010100101110001110101000001001101110101101110111011000101001110001010100100001010101001000110011001011000100000001101110111010101010001010110101111100111010101110001100110000001111000000010010101011001011010110100111001010011100101011010011100111011111100101111111110111000101110110010001100100001010001110011101000100011000111100000011011011010101001001100111101110111000000100011100101100110101110101010001111111100101101011000111010101011011010110111000001001110010110010010100110100001111101101101010011110010010110011101111111110001010011110010000110101101100011111100011111110110110100110110010010110001010110111000000001010100011110101110010101010001000111100001100101001111111000111100111111000001000001110111101001110000100001011011111111010100101001101110010101000010100010111110000111011001110010011011011001010010100100011010101100011111011100100101100100001001101101010101101010001001101001000100011101001100011110101110000011111011010000001111011101001111001011111110110011010010010010010101111100000101000001010101111110100101100110110011111000110110101100000111001010010101001100000110100100011111010001010111011110101110100010101101111010000011011011100100001010100100001011110110001111010010110100001011100111011111110111000000010000011110011110101010101111010101101011000101110101011011101011001011100101001110100110001011000011101110001000110110100000101101100010001101000110010011101001000110011011010110011001101000111100011110111110000010011011011001000110100101011010110110001110111100110101011000011100101111110001110100101010110111101111100110010010101111010111111001000011101110110011010000111101001110110101111001110011011110100111010111000011110101000111100101101000010000010100011001101100011000000010111101010001011101010010111111101111010111101011100001101110111110100111101110011100101101111011011011000100001011101101111110101000100011100---------------------100101000000011111101010111111000010001110001111101001011111001001001100001000111101110110001100000011100110010101100000101100000001011111001100010011110010000111110111010100111100011100001011111011101001011101101011010100100000011010110111001110111000001010011011110100101110010110001011110010111010100001000001101011010000100011001101101110010001110101001101001000010100101101000100010111001111111010000000000110010001100111111000000001101110110110111101110111101011110001111110010100111000111101010011100010001100111101011110011100111111101101010011111001101011010110100101111000001001000101110000101110100000010101110110000111110001110100000110111011100000010011101101011101100011111001110001001111101000010110101110001010010011110001010101100110111100011101110001001000101101101011110100000000111111100001011000111110011001000000111110000111011101000100001001110010000100101010100010011001110110110011101000000100110101111101001000101001110001110110111001110111000001101100001111111110100111110110010001100110011001001100100111010000001010001110100011000011111011010000110100000000011100100011100000110011011010100110001110100111100110000101011000010000011100000011111001100111111011000100000110110111010011100011001001011101001011101110100001110011110011010101111110111010111100110010100110111011101011000100100000110010110001110000001010011001110010011110110001000110000110101011110100001011001000111000101010110000101000000101100111010111110101011110100100101101001000101010101010110010010101000100000110100111111111000100111011111001011111000001100010101010000111001001111001101100111001100011111101000101110110010010111010010110010101101010001001001101001001110011010111110101010010010111010000101110111001101101011110010000100110101001101111110111100100000011001111011011000110001111101110011110000000110001001011101111110001111100000001000011110000011100101000001010111110011011100010011010010101011100111001010111101000010010111110110101011111101011001000101101101110000101101001110001001010000001111100110000001101111000111010001000011001111100101100010111011000100000000010011110101001011001100010001010111000101101101010100001011110010111011010101101001011100000010101110101110001000011001111100011110111110110000000101001101100010111110001101011000011010011000010001111101110101101111111000001010110010010011111111000110010001101101100101100101100011000010010110110100011100110001011111011000001011000010011110000111001000010000100110101001001100010011000011111110111110101001101011111001111001000010000011100010110110011011001010010110110110000100011011100110100110110111010000010010011111111111110101111111101110010100101001010011110000100011010100011011001000001011010001011010001110011011010100111000011111001110011011000101000100001010110101000110000011100101110101011000100110001101001011001101011110011001000010010000001110001011111100101110100100111101111001111001011000010101101110010000111000111010111111110010011000100101000011100100000100101111000110010011001100011011111110100110010110010111001100111110010010010110100111100101001111111000101011000010000111011101000101001101000000110110010100111111011110101000010100000011101011001111111001000110110110101001111101110101011110110110010110110101010101101111001011101011011101100000101110101101001101100100111000101010010100101010001000001111011001101111100010011010011100001110110001011101010101110011001000001011011000000101100101000110011110100001011100100001101010010001100000110110001001101001011000111010100011000000111110001111111101000111100001111111010110001111011110000101111010001000111001001000100001111011001010101111101010101110011100110101110001001111001111000101010011000000111110001100000101001101111101101101110110100110110010011000101110111100000001011101101000111101010100010101010110111001100111001101000100110110110010010110110111010101111001100110100101100001011111001011010110001101011110001100111000100111100001000111110011111011000001011001001010110100111110000100010001100000001100010111010101010000011111101001110011111101001110100001110110010101101101010011000100111101010011110011000110011100100001101100010000111010000010011110011101001110000101001111101001001111010110000101110001000101100010101100100100011000111101000100011011011110110000100011110011100111101100000001111101010001001111100111110001111000001101111111111010100001001111111010001011010110000111110101000100101001111011110011011111110111101100000011010100101101101001011011000101101101111001010111101011101110010001011001101110010100111010111110010001011011111111000010001100101100101110001111010100100100100011111011010000110101101110001001101010110111101111111000100011100010100000000001101010010110011010001101101000101101010010011101111000010010110111111010011000010101000000110110011101100111110101110011001011100001110010101101010111001110001000010110100100111111101111000011111010101001111100100011101111000011011111111011010111011010000011010111110001011111111110110011101100000011001010011110100101011100110100010101111000001100001101000010010110001011011100000111110010010101111011011110011011000110101001001101110110100010101101111110011110111010001010010001110110110011101111100100011110000000110110001111111101101010010101010110010001111011010110001001000101111001100110100010000000110101111000101100001000110010010000100100100001101110101001100010010101011101011100110100101100000100110111010000001010101111010111000100101110011001000000110001010110101110010101111010110011101011001100010011010011010000100000001101010110101111110011000010111000001110110010111011000001101001001110101011001100100100000110101111111110011001001111101010010001101100110011101010000101100100101010100010001001101001001000001111001101101011011011101110111110110000100110111001011010110010100000011000101110010101000101101100110000110001100000110001000101111000000000101001110000111101111101111111111110000000011110110101011011010110001010100000110111011111110101100100000011100100000011101101111101100000000101100111000010001000110110010100011010001001101011011110010100101111110010111011111001111000011111010111110000001101100001000110111011110100010111000000001010001001101001000011101010100010010011000000011101001010111011001100110110100110110101001011101000000101010001100101000001010110011110110001000100110011111010111100110110111111101011100110110000000101100001111001000010000010111011011100101000001000001111110110010010100011011101110111010110000001001000100011000101001011110010001001111011100010011010000000101001010110011011101101101011010011011101011001010101000111111101100011010000001011001100001000011000111001111101111010001101000011111 +110101000100011101000000111001000101111101011110110010100110010010110001100010000100101101010000110111000111101100101001100110101001001001100111011110111010100101011111111110010010000011110010100100100100001100110001011111100001100100010001101010011001010110110001011011011000010101010000011001111010010000111101110011000101000101101100000100001010001010001001100110011000100101010011010001110010101011100000011110010000010110111011101000010110101010100100000010001001111010100101110111000111010110100100001001011011010100101101110001010000111010100100000011101001001100111111011011101101100010111010011110011110100110001001011111100101010110110000111111100010101001110011011011100000010100110101100000010011110011110101000111000110011001111010100111000100000010010100111000101001101000111001101110110000011001010010001011111001110111011010010100111011111000010001011101000001010010000000011010110110110000001100111000110010001100111111101000001111110101001000110101001101001100011110000010110010010100000010111010011001111010010001010010111110000101110101100000101010000100010100000101101010010001111010101100010000101110010111110100010100110110111100101111110100111100110010010111101111111011111011111001001001010111100111000000000101001111001100111000011000101001010100101111010110000100101011011111010111000111010110001101101000110100100011010111100100011000101010000110010001000111111000000001000010111001011000010111000111010000101001011011000000111101001001110001001110000010011001110100111110110010010100000010110110010101110001110110111011010111100010101101110111111111010111010110001100000101000100101110110100110111001111010010111111001111100010110111101000111110011001010111000100100000111110111100111101000001111001001001000010011101001001000110110010111011101100010001001111010111110010111010110100010010101010011000101111011010001001101001001110101101000100101011110101001001000101100010100000001001110110110110100110000110100001001101111001101011110111101001000110100100010010000110001101111010000010110001000011101001011101110110011010011001110111000101110101000111000010101110001101110011100010010001110110101101010100100110101001110000100010010110010001001101110101011100100011011010101000001101100100001010000111010110011011000001000110000111000110110111011101111001101100110100100110010101011001001000101110111110100011010111111000000101000010010000011100001010010000111110110010011110100111101110110111100011110100011000001010110000000101101101011100000001100110000010100111111011001001000110000110100111110010011010110110110110001100010011110001010101100101101110010111110111111100010000111011011101111011101000101001010010111110110111101111000000100100100010111011101100100110010101011011111010010001111100010100011011110101011111000100111101010000111001111110110100000111010011010000111001101001000111100011111010000100011001011110000---------------------010010000110101101010110000010001101000011110101100100100111101100100010000011010011101001101001101100111100000111101110000101010100010101000101001101101011101101010011001100111111001001101001000010001011111001101000111000000000011101101100011111111000010001111000101111100100110111100101000000111011110101101101000001000110000000110010110100011111011010001011011010011101000110110100001110010111101111111110110000111100000000111110100111100100010000101101111010001110111001000010111110010101100111000001001110111110010011000101010111000010111100010000011010011000010001111101001010001001110100101110000101110110110010001000101001010000111101001011100100111111010011001110110001111101101100001111101111011000111111101100010100111001011111111111011111011111010011111100001010110010101010010100011001001001111010101111011111110111101010100110000010111100100111101101000011100111011111111110000111110101111111000100010111010000111111010010011100011101101001111100111100110111001010110111111001001100110010111000101111101100001010110101101101010111001011101000001011100111011111001100011000111111110011001101000101110011111000110111011011111111010000000111110101101011110000001011011001100010100010000010011000100010111100010000001111000001010110111011011000001000101100011110111011010110010110000111001110101011101101011110100100000101001010001011001100000111010110001010110010111100101110101111101011010010010010010100010110000101110111110000100101110110011111011011110011000010100100010011010100110101010000110110000010000101100111111100100101110111111001101001011101100101100001110110101101000101100010000110100000011111001111111101010011100001000110010000101110001010100110111011011100001010100111001010100110010101111100111111000010010001000010110001010101101111110110101101001101000110000010111100100001011011011010010010100010111101110111010000100110010001100001010001100101010111011000011111111111011110110100001110000010110111001011000001010100000111011000001001010000110100011100111010000100111001110111101011111111000101111010001100101111000110111100001000001111011111011011011111000011010100000001001001110110001000001001111110011100110111000010101010011111000010100111110011101111110100100101001100100111011010111100011101111110011000100101111101010011010000100010110000001011010110001100010100010010000011001010001010000110010110010110110110001111000111011100110010010011010110110000111101001000110100111100101110010000111101011011110100110101001011000101101011111100011111101111011100000111000100100101011011001011000100000111001001110011101111000010001101100000110011000001100111001011101010110001000010000011110010100100011011100000000101010100010000111000001001010011100110101111001000001000100001001101111010110011001111010000110010010010010110110110100111100100001001100001000011001011100100011011011100110111010100110100100010111000100010100100101001001100101010111010101110000000000010101101101001100110011110110001110010011100111101001101100100011101001011001011100011111110000101110001011101010110100100101110111110001110100010111001010110000000010010111010101100010111110000111111111101110001000001000110110010110000011001110011100111110001011100100001100110110000111100111011110100101000101111110101101011010001100010101010110010101100111001010000100110011011001000101110011000010000001110000010101010100011101001110010111111011111101111110011001110111111010110011000010000001001010110101001111110011100100011111101110110101000100111101010000110101010111000101000101000000101111001001111010110001100000000000011101010001000110111101000000110111000100000101000010001010111101100111000110011100100101000110100101010001001010010100001010101010110001010110101100000001101101011110101111101110010100001000010111100001100111011100101101101111110010101011110101010011011111100110100101100111001010000111111001011011101011101101110110111100111011101001101010010001000001101111101000010001001001010001010100100111000110010110100101111111010101110100011000011010001000100010110010000010111010101001111101101100111011100001111110010101000000001111110011000010011001001110001110110010001000110001101010000001010001010000011001111011011100111110111101100000000000011010110010100101010100100000100110001111100110001001010011011010110110010001011001010010110011110110011110010101010000000000101111011001010111110110010010000011001001100011100011010100011101011110001100101001100101011111000111010001100110001110101110110010011100110111001101100111111100001000110001110110010010111010111011111111101111100000010100100110010111000110100011000000100100010110111101110101011001101101101101001000001011010000011111110011111100110000000001010110101001111001101000110100110110011110110100100110001110110011111111011011011011111101101101111011011101001101111110111010101011011111011110001000011100110001011001111101101011100111111000110000101011001001110111100001101111001001001001000101100100110000011100011000000011001001011000010100101100110001010110001001100100000010110110000001011101100100001001100001100111101010110010011100010111001000101101000101111001110111011000111000101100000001110010100001100000100001011001010110000000010110100010111111000100000100100010101101011100110011010101000100011101000111000101010111111100010110010000101100000110011010000011001111010110001010011011010111111000000100101010110111110001011010000101110110001100100011111111101010111000011000110001000101100110101110101110111000101010111100100010010011110101000001011111101101010100001101010110110101000100011111001111010101111111100111010100110111101000001011000001010111101110101001101100110111001100001010111011101010100100011111100011010111101011010010010101010010000011010101010111001010110110110111010101001111101110100111001001100110000010010000110000110111011010010110010010000101011111000110111010110101000110101110011101101111111101000001100110101010101010010101111110111110111100111110101101100001010111111100001111100010001111110000011100011111011101110101010111001100000100101100111111110110010111011111010101101111010001010111100000111001101001001101101101111111011000000010011101001001100000100010101111001111000101001101100001001101110000010111000010110110010101010001110010010010110001000001010111010010000111111011101101011100010101011011110001100000000011001000011100010011110111010101001100101111011011110011011001101101111100100000010111101010010010111100110100110100111001010011100001000001001001001100100101101001111001010001011111110100110000111000010001100110100101101011000110111110001100110010001010101000001001111101101100101011000100100000010010001001111011010110101000100100111011110110101011010010001111100 +010101100001000000000000101010010001100011001000100101001000101110100101011000111011001000111111100111100011011011010111011000110010010001111010011010111111000101101011100001110000100000011100110111010001111000110100111101010110010101011000011101000111101010100100111110001000110010010111110110010011110000010110101101110111010011001011111100111011111000000111010111000001110000100010011101110001001001000111111110111110001011001110010110001011001110111101001110000111101010110111011101000001010111010010111011011110101100110010110100111001001011001101111100110111101110001011011011011100110000110010111010100001000101010010111011010001111000010110000101101111011011010010011101110000100010110101101001111111000000000011001110000011011001100001111001111100011010101001010101101110011001110110100011101001000011110000000101000101010011100101011001110100101011000010000001010100011011110101000010110111110011010010110001100110000010110000001101100000111010010101110110111110111010011001001110101101101111011101011010001110000111011001010000000001101101101011011001011010101100001000000000010010110111110011000111001101011111110010001000011101111000001100100001000000111100000101010001011111100101001011110011101000001000010010111111110110010001101000000101101110000011010011001100110010001101011011000001000110000101001000111001110101011011100111101111001110000000110000001110011010000000111100110010010101101110110101001001110001101000100101010100101010010001010010111000101011100110110000111100010101001001011110111010010110001111011011100011110010101010100001010100100110101101011011111010000110001111101011001110010011110101110110110001010110111000000100101011001111001010010001010111001100101010011101001111101010111011101001011100111111110111101110111010000010101101010010011110100111110101100001101111010000101110001011101111010100111001001011000110000010001110110110101000100010011100011001100110100111010101011000100100111111010001110101001010101110000011110000111100010101111010000100110101111101101100011110010011001010001111001101011111101000110010110110000011111100000010100000000101011110111100001111100101000111110100011101111000110100101111000000010110010000111101011011001110100011110010110001101100110011111100011010100010010111111101111100101111101111001001010001111011001110001011111010011111010100111100010010011000100010000000110010001101011111011101011010010100001010110000101111001001011010010001010010011100110001000010111100001101101000101001101010100001010101000001010000100001111111111110110010110010010010100001111001001100101010011101110000011011101100101101110110101100100011101011100011101000011000110011000110101100101011100100000011000111011101101000011001111110100111011101011101001000110101011111111101111101010101101111110010100111101000011101100001011010111111100111110111100011101111111000100001111001100101110101100101000---------------------101101000100101010001011010101110010111110000110001011100111000011001011110010111110001011001111110101101110101001000111011010001010100100100000000101011100100011001101100000010111000001111100001000100110100010111000101111111101101111011101010010011101111010010111110101101100000111011101001101111011010100110101110111011010110101010010011010000010110110000001001101011111010110110111001100101011000001011110111001110101000001101000101100010011101110111101000110001001100111010110001000010101101001011001000000101101111000110100000101001110010011010101010000110110111101111001100011000111100110110001101100011010011110110010110010001111000100110010101111001001000100100100110110001111100111001010011011100010001111100111010111101100000011011011001110010110000001010010011001111001000010000101010000011000111010001110011101001110011011110000010111100101000100100001001000010101111101110001110000100010110110001010101111110111010011111101101001110010010100101111011100100110000001011000110110101100001110110101000101010011000010110111100001001101111110111001011101011100110110111010001011001000101111001011011111100100000001010101000110010011011001001111000011101110000111110001000101010111001110100010011011100010010111010100110010111010100111100101010111010111011111010111100010110111101010101100101010101011110100110010110001001111111110010101110001000001010100110101001111001111001000110101010001000000000000001011110001001100000101001011110101100101011100110010011000011111010000000100111110100101100110101011011000011111001010010101000111111011000000101010000111000110000010011111000101010100110110110101100000101111000010001011001111000100001110110110001010101000001010100001100111011101110110010010100111101011001110111101110010001110111110010001010001101000011100110100010001000001101011101000000001100101110110100001010100011111111100111100101101011010011101010110000101110010000011001110111110101001011001101011011000001011100010011110101110100001010000011001111000110101001010010100011101110000100111100010111111101000100010001001100110011001010101010010110110110100110001100001111111111010011011000100101111001010101010111011110111010000011001100111110100110111011001011010100011010110110100001110010001000001100101111011010000011011001001100110000111000101001001110010010010010100011100001111001010000011110000101111101011010011000001011101000011111001111101111101010101000000001010111110010001111000111110010101001010110100100000010111110111110000111100110110110101100001111100111100000101000010010101001101000001101100000001101110011000000100011101100001000101000010010000011111010111101111101010011001011001100011101011111011001001000101110110000100000011010010010010110010011100001100100101011100000111011100110111010110011100001111001000010011010110101000101111011001011000110001010010011000110110001000110100110111011110001011001001011111010110010111110011100111100111111101000111111001011100111000001011011010010000001010110011110100100111000001000000111000011110010100100011110111010010000000001001110100011101010010100110011010000110110111111010000111000100101110011011111110000111001101100000111100101101111001001111110001000000111001001110111111111010111110111001000110110010101011000000100001101000011111100011110000101001111111111011100001010001010001111001101010001001010010110111011100111101010101111001110101010000111111010010000011000000001111011010101101101101110110001000001000101000000111111011111110001010110110010101010101111001011111101000111110110101101111111000100111001111011010110001001111110100000000001111001110001110111001101110100000100111011000010110100001001011111001000010111011100111001101110001000001111000000010011101101101011100000111111111101000010100011111001010000010111000011100010000111001111010100100111001001101110111100011101000100101100010010100111011010110010010111110010000011000010010001101111001100010000100001001101101111011001010011100110110010111011011010101100111010111100000101100001100110011100011111011011001000111100111101001000111100111100100100110001011000111110011100010101110110110000011010111000001111000011111000010101001100101010101111011111100110110110010101111101101101111010111101100001101000010001111100011001010010000011010010101011000101010000010100111000110000111010111111010000100011110010100011111101101110011010101001100101000110101101110101001010000111011100001001000011101000101101010110111110001000011011011101001111100110110100110101001100100011000110011001000100111010010101010111110011000000010011001000011011011111001001110110110011010101110011001010011110001001001110011011001100100100110100010101000011111010001100100111010110000010011011000001010011101011011111100111001011001010010000110000000000100111000011010000000101101101010101000010111110111110000101010001011011010011101000000000110101011001101011011000111110010010111000111001000111011001010110101101010010001011100101000111010010001111010001001000101010100011000001100011111101100001101011010001101101111100000010010101000000000110011001110110011011111111110111010000000101000100101111111000100101100000010111011110111111010111101000100110111110000001010111000111100011010111000000001010111101111011010001111001001111101000010110010110110111101111001000101011100101111001110100111110111100100010000111101110100011110001110101111001000011110011101010101111101000101010101010000110001101000101000000100011011000111111010111010100101000011010000101111011111011000000000101011000111001010111010101111110000000110101110101011110001000011001100010110011110000001000110001101011000001001110010010000010001101110001101100001001011000000000111100010000100111101010110111001000100100110100010101001100110010100110001100000010101001101011101100001010000110101100001011110000101011011101001001101010000011111101000100110111001010011000000010111000110101011001101010100100101101111101110000101010100010101111000000000110100001010110110110011000011100100111110101101001101010100000101110100110101110110010001111110000100100101110100011000111100000000101101100111110110111100000001010111010011010111100111101010001000010000010101111100000011010100110011100010010111110101011111001000011100110111010010001100100110101001011010011001111111110011011010011100111001000000111010110111011000000110011100111010010101001110111001001001110011100100010101000000011101100010011100011100110011011010010101110011011100110110111010110000110101011111001011110011000010100000010010101110110000001111111000111110001111011010100101110010011000001001001010010100001010010110000111111110001000011010000011100111010010110100001010010000000110111001001010011011001011111000001010001110100000110000010100 +110110110010000101000010111100010110001110101100110010110101001011010101110010010001101100010101111111010110101011101001001100111100101111001110110100010011000010011000010010101011011010110001011010110100110010100111101010110101010110110111011000100010000111110111001101011100111001011011011100010011001111111011001011000000110101010101010001100110101111001100100100001100010111011111000011100011000100101001000101001100101111110001101111011111100101111111001010110001010100110010010101100111100000100100001110110000010101011011010000001111011100101000100010001010101101001001010001011011100001000011101001101010100011001111100001010110100111011100111101001010111111111111001011010011011010010110101000010110000111010100111111110001011110110011101111101100011110011000111011110101011001010000000010000101110110100100100001111101001010000100001101100000101010010100000100111001000001100011000100100110010111110110000111101010100111010000011000111101000101101001000001110011010110110110110000110000111010011101011000001110100011101111101001111000100010010000101001010100000100111000000011110001010010100100011111000111111100110010101101101000010111101010111000001100110011111110000001011000000001000000111001111101110001111110010001111000001110000000111110110000101000001011111001111011011110100100001100000001011101111011110010101011000001101010100011110110110101100110111011110001101001010101001110000000000000101111000010110011010100101011110010010111010111110011110000001010111100000111011011101101000101000010111101110011011011100100001111100001111010100011011101010011011001010100110010111110100000000100110001011111100010110011010000111010100001001010001111010100101101111111111110111100000011111000111000111100100010011100000101000100000011110011010001000010110100110110110100110011001110011000110111110111011111100110000100001101101001110010010001100010100011001000011001011111010101111010101010100010001111100000001010100100110111100000110001111111111100001101000110001010000000101010011001010001010110111101101011000001100100111111010001100111101100001101000110011011101010110010101010001101010001110110011010100110100101010010000101000100000001001011011100011000011011001111111000111111000001110100100011010101110100010011100111110111010011110010001110111001000001000011010000111011110001001101000011111000011111001000000111100110100001110110100011000011100000101110110010100101000111010010111100101010100110001111010011010101100101110000100111100111101111110010000001101100101000011101000100111101001100101011101111001110110000110000000001101011101100001110100111001000010000100110000101001011010110110011101100100101011000100110111110100100000000011111101111101110011100000000111000011100111100110100100000101000101000110000001100110100101010010100001100011011001100111011010001010011111011010111011011001011000011110100000101110001000111001001111---------------------111000011011100000011101101110011010000110000010011100101000100011001100010111100100010010010011011010011111010001000111000010110100111001101000011011101000100010000111001110100000111101001100111111011101011100111000010101000101001011000010000011001100011100011111100011011101000111001111010111000011101000111010010100110001000000100001110110010101000001101101001000001011100001000001110111110100001011000100101001011110000100001100100010011000111000111010010100010101000010110111000110010010001111111001001111101011100000000000101110011111110100100100101111011000011101011001000010000111100101000110111110011000000110010111110101100100101110100101100000110011001110011100111101001010010000111000011001101001011000110010101101111011011101010110010101111010101001111001011000100101110010110111101000000101101001011101110011110011101101011111001111100110011101010110100100100000001100011010001001110011110011100000010111001110011001011100110001111101101110011100111001001011000110010111100110010100011100010111100100110101010100101010011101000000100111001000100111010001001010010010001111011111100111100100010101001100110100000010111010111100010001011000011101111001101110000011110101100101001011110001100100010011011010111001000000100111100011010010010000010110101011111111111100110100101001101100010010101001101011011101110111010111110100111001110110100100010010101100111011101011010011001100100100110111010010111001011001110110110111100110011001001011101010011010010001101101011000010100010101001001101011110001001010000111100100101101100110000101000001111110000101010000011101011110000111001100000001100010100110000110011111100101100011100111011111100101101111111100001001101000111001110110101001000101110111001010101000110000001111011000110001100001001011000011011101110100100000100011010111000100111010101110101010010101011110001111100111000010100110011010000010110101011101110000010100101100000100001110011111011001101000100111101111100111001100101010011110100001011000001111011011100101110100111000101100110101111110110100100111110100011010101011110000001110011110010010111001010000001010101001111101011100010100001010000001101011010100111000100100001101000101010111001000010100000100000111111010001101111011010011001101000010111010010001101110100101011011000001011011110111011010010011100000111101001000011110001101100111100010111010100000010001001000110001111000010000010111110100101010000110001011101001101001101111001000101000110000110011000101000010100011011100001011001011110100101010010010011001001000101011111000101101110000110011101100111001110101110001000101010011001010010111011001101110000010111000101001000100000111111110010011111101010011110110010111000101010111000010111100010000111000001011110101010001110101011001111001111100101110100010111101000011100101011010010011101011000101001100100010000010001100001111110110011001001110111011010001010001001110001101100101110001100001010011111011011111110111111011001111010101010111010110010000111000001000011001001000011110010001001011111000011000101000001110010010110011111000110001110000101101010010011011100110011111011001001101000010000111000110001101010000111010101001011011001000101110110000000100110000010000110001100000001100000100000111001011000100011001111111101111101110010101000011011000110010110010100110110001101001101011110000111010101111010111001010100010000111100010010011100010000101100001011000010010001010000001011100000100001110101110010100001101110001101110101001011110111010101111010011010001110100011000111110111101011100011000100101111010110111110001010100101010000101000111011101110100101011011010110000110100010101110100011001111110000100111010010111101011011010001000001010100000011011111000110011001101111010000010001110101001111001000110110101110110111010001011101010101011110000101111101011101000100010000100101011100000011100101101110001111010000111010111110000110110110010000001111111011010010010110000100101001001000110101110110100111011100110011111101110111111110011111011101111011111010100101010001110001011010101110000100010110000100000010100011101001001011001001000010110001001101001111110010111100000010001001100110110000000101000010011000111011101110111000011100100011111111011001001111101000010101011111100011100110100110100011011110101100011111111110011110110010000001100000011000101111110000000010010010100100010100110110110001010000011001111001001111010010001011111011011000111100111000011000110000011100000001101001001100111001100001000111111010110111111101011111110010001100000111101100111010011100001000100000011000100000000110101110101000101100001010010001101001010101001011010000010010110110000110110001001110001101000001011111101100100010110101010000011110011101110100100010000100010001001000011111001011101011010111011110110000101100111100101100101001111101011111100001010110111110010000001001011000100010001000110001000111011010011010110011101001111001100011011111101110111011000101000101110000100111111111001011010100001010010110001010011110110111100111000110100001100001100110000101101101100101110100111010100110111111100001001000011010101010101000111010011010100000111110010100001011110100100010010111011111010001110110010101111100111101100100011001111101011001101000011100010110011010000100011010001110001000111110101001111100111111110000111101011101010101001001010001000111011011000100110010010111000111101101001011101111010111110110101111100100001110010000101000111001000100000100001010000100010001011100110111101111110110010010011110001101011100111000101110000110001001110010001110110000101000100111011111010110100111100000001010011010100010001010001000010101010110001000010000011010001001111010101110001010000110110001101000011100101000111001011011111011001010001111001011010111111010010111011000110011001110111101100000101111000010100010000101001000100010011100100100010000011000110110000011000111011011001111010110000011000001101010110011011010111101110101101001000100100011000011001101000111101011101100101101000001101011100000001100111011101111111011000110101100110000010100011100110011010001011110011010100100111010111011101100011011110011010011001001101000111010100001111001011011101001110111110101100011111100111010101001100100111110111011011010011110000001100001011010010000001111010110101000000011101101101001110110010010011001000000100011010001011011011010100000110111101010010101110010011011010111110001111001010010011100101110001011000110000000001011000001100010100010111101001111010011011010000000000000011111110001000110111000101111110001001110010011010110011101000100000100010101100111011011000100000101110011111100110110001001111110010011111000011000111001111101010101100011101000110 +010001011001001010101101011000000010000011011101010001010101011010101101110001111101101111000000101101111000111100100000011101110001110111001010101011000010101100010011011001110100010001010101101101000101101110100110100100110111111101100000101010010010011100011001011111000011111101111010011010010011101000001111001011000001000001001011101010101001111110101001011011000011111111101000110100110010101100111011100001000111110011011011101000110101101100010010010110111001010111011101110001001111110111000011111111001011010101111011011111001100110111001000111011000100011111001101010101110000001011011100111111101001101000011011110110110010001110100100011101011001011000111111011001001010010011101010000111101000000101111111000111110011100100001010110110010010110010001010111000111011110100000111100111101011110010110100100011100000110011100011001011000000111110001110000110100000010001101111000100100000011011100101100100011100001100100101111001110010011101111110101111011001101100101110111011000111110001011101010010101110011001110010011101101011011111001010101000110100101010001101010000000101001110111101100000100111110110001111100100001100100000101101011100010010010101101001101111000100110110010010100001011001111010010110011011011100110100100001001101000111110001010111111110111000111000110111010101110110111110110100101111011000000000100110001100001101010111110011110010110111001011110000001010101111000010111000100011010111011011000010110101111010001001000000010110010011110101001010000101001101010000101001010011111010011011111011000000001111110001001110110011101101111110101110000001100001101110001101011111100010010011100100011010001100111011000110000111000010001010000011011000000000100011000000001101100001010100101111011011100001110111010011101110000111110001011010101100100011011111000100011101011010100000001101001110110011001100010001110111011010011111001100111101111011000111110101010101110101100101010010000110010011010000010100001001001010110000111001011110111111011011111101010000000000011110000100001100100010101101010010001100001000110000111101111110000001010111101101000111001011000000010011010111110001100101101100011010010111110100101101000111100010101011010101100110000011011010110110010001111110101000111100010111001001100000011100001100110010000100011000111001100101101001110001011000010000110101100011011100100111101000000000011001110001000001011011111111111111010110101011100100110100010001011101100011011100100011000111111010001100000000010001111010111011000100101010010001001000010010011001000111001001000010011100111011101011110001010011100001111000110100011011110011101101101100110100001011000101011010111111100001010101011001000001001010010011101001101101011100101100101100100000100110011000100100010101110000101001010010111111000001000000010010100110100010101010111001101101101111101111101110100101101100001110011011000110011---------------------011110101000110101011010101001111101001101101011000101110011011000100100100100000000011110011011000100011001110000100101011101010110111010010000010111000111111101001110010000101000110111100000110100110100110010010011110010110000100110100000001111111011010001111100001101011000000100000100010010101011110110011100110100100000110110111101010100101000000110111100010111011110101111000101000101001110000000010111110011000101111011111000001101011001110000101011011010001111011110011011111001111100001110111110000001101110010001111011100010011101101101011001010101001100110010100001011001100101101010001100101101000111001111010000010110100011001001010000110101010100111011010001100011001011001110100011100100011101100111110111110011101000010000110000111111001100101000000000011001011001000000100010101101010110110011110010101111100000111101010010100101000100010111000001110100100101010100101000010101111010110100111011011011110011001110110000110110111100110010101000100100100110011001101100001101111111101111101011011101001111011010011100100010100100001010110011111100000101000110101010100010111100111110100111100110101010000010101010011100100110010011101001111010110001001100001100111101110011011110001010001000101000111010010011110011010001111010010010010110111110101100111011101010110010011011010001011011011111000000110101101101101010010001010100010110011011110101000010110111101001001010011001110010110110100000010001010000111101010101001111110100110000001111001010100001101101001001000001000000100100101010000110000000110110001110001011101110000111011011110001010000011011100111010100010101101110010011110110010100000101100010111001010111100011001010110101000011011111001010100010100010010001100101001000100010100110111101000100111110110110101100101001011000111110111110000010111011001111110000011110010110110011010111100111001100110001110111001000110101111000101100101011011011111001111110100101101101001011000100100101011110111011000001110100100111110110110110100011010100110011000001010100011011011111111000000011110000100101110111100001110110110011101001010110010111110110101111010110011100101111001001011100001110001110110100111100101010100011111010001111000100111010111001101011010100110011000010010100000001101111000011010011011011010000101000001110100000000110110000010100110000101011010000001001100001100111111000110001111110100111111001101011010011001001001111000101001011011000011001010110000010111101001001011101000000010000011010000001100101001010110100011110111110101011000010000100110101000010001010011100011110110000011001111100001101111100111101110010111110001001010001001001101011110101101000111101000000001100111110110100000000010001101001110110001011000110110100110111000100010001011110100111011100011100101110011001100100111000010000001110011001010010100110010101101100100101110111110010111110110011001110010000100110010011000001000011010101100010100011111011010001100100000100001011000001110111101011001000101000100110001111001010110011110100110011011110011100100100001010001111110101010010101110101011110111000001110010101010000011010111111011110001000100001010100001001011000100010110100011110001010011101100001100100001111100111001011001110110000010010110011000110001111101111110110001001010010011010001000101001010101101110010000110011100100001000101111000110100011111001011101100001100111010100111101111110011001001001010010110110110111111111110110000111011100110010000001101001101000100001100100100010011111011010000001100011000001111100111110111010101011000101100111100011110110010000110001101001000001001010101000110010000011110001000011000101111111011101001101101011011100011010011011100101001010001000011100100101111101111001111100101110100001001101100001010100001000101111111110110010100101110100101010000100000110110000101100001100100001010101010110111010101111000101011111000000011010011110111001000111110101111111010011101100101100111001110001010010000010000000111010100100100110100100011100011110110001110101110000010010101101011101110101111000010000000110000101010001110110111101001111110101101101011101101001011001111001111011010110010010111100000101000111001110100010010011110001100001000100010100110110011100111101001010000010010110111111111001111000110010101111000101011110111000011001111101001101111000111000001001001111101001110110000000000000011011011001011110010001010110110010011010000101100001010000001010001111001111010111111110101111111110100000100101010011111000000011100011000010010110001100101100001100100101111110110100100001010110111110101110100010000010110000000001111010010000000001010011011000101101010101100101010010100110101111010010111001000010001111110001111000000010010000010010011110100010110001000001110011011000000001101011110000111001011011111010001001001110000110111001001110001010001001110010110010101100110010000011001101011100100000100111011111000100100100010001100011100011101110111010101100101010100101010110011101010001100100010000100001111110011111110110000010100101100001111101000001001011000010100100111010100011011011100011010100110111010000011110011011101000100111100110100010011010111100011110110011000001010101111001000011110100101010011011010000011010100110000000001110000010111110101001011111011110011001000110001011001101001001000111011110101100101000010100111101001100110110100100000110010010001101000010101100010101111001001101001010101111111111101010100000011001110100101111111110100010011011010011111000001111101111000001110001111111000010010110010011110110100001101001110101101101001111001011010110001010011110010100100001110110010111001010000101100110010010011100011001010000111111101111110011000011010101100111001010001011110000101100100100100001000011100000011101110011001100001000111111101001011000000100011010100111001010001110001101101011111110001100101111110111110000001001011110110111010001011101111000000111100001111100100000001010101100100010010100100111110001010010010100011100101010100100010000110111000110100010011011000110010001010001001011101101101111101011010011111001011010100101100111000110100111000111011111000000111100011110011110001000010110001010110110111011010000110000101001110101111110001000010001100010100100011011110000110001111101001011011010101100110010010111110101111001001110111010001101001100111101011001101100101101001011111101110110101001110101011000101100101000110100101100111100001100110010101110010111010001011111110001111011010000110000000000011000110110011111111010010010100101010000011101011111101001100000101000000010010001101000111100000000000110101001100101011110010111101011101011010100011001011111100011001100100111111101100110000111100001001100000101010101010010101110100101100011110010011 +101001010101101011001010100001000111111010010010101011001101000011011110001111111101010111001010011101000110100101110001100101000011011001110101000000100100010101010001010101000111111001101011000001001011000111100101001001011111010000111100101100010111010101110111110100000111011110110110110011011111011010011100011010001100100010101101001101011010001101010100110010110110110001111101100111010111111111010111011110010111111110010011001101010001011011111011000100001111111101101110000001111000001001101100100000100101000011001101111111110001101010000101100101010001101100111111010000001000000010101100101100010000000000111010011011000001110000011011000001010010001000010111111110010101010111011000011110110101010100100011001111001110101100101111001001011110010111010111111001110100110110111110100110001011001101000011010011100011110100100111011000000001110011110110111010101110001100011000110001011100010001100111100111000110001010100110000101111000010111100111010100001000101000001010000001110001110100001101101010110011110101010111001100110001111100101100011011110110101001110111011011110000111111100110010111110101001101001000000110110010010111000001011101001101001110000110101110011000010111011010110000111100100111001110101101001110111111010100010101101010000000000000011000001111101110110011010100110110110110001011011110101101110010011010011011111010101000111010111011101011000011100110000010101101000000100011011000110111101000101110110111111111100011001110001010000101110100111111000010010011000100000010010111001001110110010101101010000101111000101010011101111100110101000101101000010111011110011110000000111010000001100100000000101011100001010011001110011000100101101110000100110010100000101010110001110000101010000000110110010101000001111000100101000000011011010000101101100101001001010001100011100101110000011101110000011000010011011011000000110100000101111001001011101100000010110001100101010100010011111110100010101001001110101100001000010110001111110010000111010110101010111101110101001101111100111011000101110001011100110000011001111101011000101010011111011111010111000110101101001001011010110010011110111011000110100011101010001101001000010011011110011110101011001011110111101111011011100011001110011111101101010000001110001011010101010001100011100010101001100101111111001000110100010001110000110001111100000111110010101011111100010000111001100110111001011000111000101000011111101100111010010100010111010001110110100010110111010001010011101001101000011110110010100010000011111000001100011101111001110011111111001011001110010010100001110110011101111010000100000011010111011011100101010011001100011000100011100100010110011011100000010111100101001111100010100110010100110000001101100010101010101011100011110101000100001000101101110011010100110001111000010000000100111111111010101010111001010101000011100101001000000000011011100011101100010010101---------------------001000001111011011001010010000100110011100010111100100101010001011000011110111110111010101010011001110010100100101100101011110000110000100000000010100010101000101101001010111101010101100011001000110111011001100000000001001101010011101010010100111100001010000010001111101100001011001000011110111111010101100100100110001100100000010011001100110101110010110110011011001001110011101001000010000100101011011010100110111010010101000110010011001110011001111000100110000110011010001101111011010100000100000000110110001010001011011111110111101110011100101101100111011010010111000010111010010110001011000101000100011101011100101111111010010100111011001010110010100100011011001001110101000000111110011111001010101110110011100111110101111111101010000010000100000001111101011101010001001110000011111000110111000100100001011100111001001001001111011100010001110110000010111010001110011010001111110100101011110010011110001001010111001110011111111010010001000101000011000101000001100000010110000100101000001100001100010110100110110101100000011110110100101101101101100011000110011011001001011001101011001001000110111000100110101010100100001001011101111010100100000110110101001110011101101001101100011101010111101011111110111110011101010001101100001101010010001110100010111011101100100100111110000111001001100000010110011101111110100100010001010101001000000000101011111001001100000010011010100011000110110111000110010000010010111010100000001100100001000110000100010101011010001111100110101110101000011001111000010110001011011000101000111100011011000110100001101110100001111101101110000111010010001001000100100111001010000010010101111110011110110111110110011101010101000100111101011111110011110001101101001101010110001101001111000010100011110101110011111001011001011101100111011010000001001000110101000110110100011111101001011011011010011100011011011010011010000010111100000110010010101100100100001100111001010010110100101101001010100000101011110101010001011111001010110000100011010001110010000110111011101001111011000001011010000011001101011011010111011111010110110111110010000011010001010010011000001000001010101000011010010101100100111001101011001111110001100110010010010111000001101100101001100011011111011011101111001010110010001001100101101001101110010111101100000001010001101000110000111001111110011100110101111111110100010010011100110010100101000001001000110001100111010001001100000011110101001010110101111101001001010010111000010100110001111001001111000000000001000011101010011100110010101000100011101010000011010010100001110011110111101110011000100010001111001010111111101010101000011010100010110011001100110101001001110001101100101011001101101000010010111101100110101111011101111110100010010111111100000110100011010000011010011011101011100000101100000100011111000000001111001101101011111100111011011111100001010101000101000101110100011010111000101100110110101010011000110010011001111001011111011011011011111110000111010110111001100110100001011111000101100100001011110011010001000001100110100100001101100011111010101110101000001001010001110101001011111110010010110001011000000010010001111000101100001111000100001011110101111100001001011010000000100110100111010010101101101010111011000010011101010001111001010010111100010111110001010001100101001001000010011110100000001001111110001001101111111100101111100100100001110101100111111101110100001010001111010101010111000100000101001100100011110111000101000011011010010100110110101000100011011100000100011100111001010110011100011010010100101110010101000011101000010100001111100001010001111001110011011001010010111011011000101010011001101000000110100100100110101010001100000110000000111101101000101100011111001101000111010101111110101100010011010111000010010100010100011100011110101111100100010110110111000101001111010010111010000000001001001100111010101100101100100000100111011010100111100110101000101000000110001000110010111111000011101111000010110011101011110011101110010110001101000000111110111110010001110101100100111110111111110110110000100110110000000111010011011101010001011111000001000011010001111110100000001101100000000110110110001001010100011010000000000000110001101111011011000011000100011000000110110001111000111111100000100100111101100010000100001101111001111011110111011001101101100111001001000011100100101101011111000110000010001100001111111110001101011101000010010011100011111010101100001001100001010011100111001100111101111100011011001110000001001000001000001111100000110000100101000010111100101000010000011110101001010001101111101100100011100110100000001000100010010010100010011100100001010110110010110000001100100100001011101101101101100110011010000000110100010100100101100000100001100101100000001110000110010010001110111100011001100000010101001110010011001101001101100100111111110011100100010000100001010110110010010000011000111111000101101111110101000001011011111001010100000101000100011000001011101100111101110101101000011000110010111010011001100110101110100100111010001010011101010110010101100111011000111000011010000010011001010110111001011010110010010101111001111011000111001100011001100010000111111000101101101111011111000100100100001101011100000111001011011000011011010010010101011101111111011010111010011011001000001110011111001110010011101101011110111000111110101001111111100000000010101001000101110001001100000010101111100111101110111011111111000011100011110110110011110100001101110100111101110000101000000000111011110010010011110001111101111011001101000010001010001000110000101011000010111101110000001111010101001011010110100011100101111100101110011111111011100010101111010000111011101000010000000011111101110000000001000000001111110110010111101001011110011001010010011000010011110111000001001000000111101111001000010000110001100001010100110011100100101000001010001011011000111101011111101111001011111110010010011101100111011010010111100011000101101101111100100000110100100111110110100101110101101001101001001101111011000111100010101000100100000111011111100011100100000100100110101100111111100100101001110001001001010000010101110011100111000111001110011001010001010001001101111110100001011101011010111011111111100100011001111101001100111001000011110011100111001000100110100001010101001110101111000101001000101011011010111011111101010101101110001011011111000110000101110110110110001100111101110100111010111001111101011000100011010000001011010000101001001010001010101001111111011010010001000000001001101100000011100111001001010110010010010001010010110001111000000100111001100111100111100110000001101001000110011100100111111010000111001001001011001110111100101011001001001011110100010000101010101001001011010111001110011111101100100000100101110010001101010111101 +101100000100011101100001010010001000000110001000011100110011001110111001000010001101001000101100011011110011101100101001111111100000001110111000010001111000000000000100001010000001000001110101101001011010100000001010100100001110110010011100100000101110000001110111110011010100100110010110001011011101100010111011110001010110010111010100000101110111110101110010010010111000101001110001001001001110011110000010110001100101101011010011110011110100110001110010111001010001001111111000011000011111101010101101110101001101001001101001001110011000110001000010110111100111000100000111011011101010011100110011101101010011111001001101101111001110111110100110101000010101000010000100100011011111111000001110001100011101101110011110101011000011011001101110010110100100001110101100010111110011110001100110111011011100110011100100010100011100011001110101000010001011111111000101111101110000010111101000101010001110000001101001000110110010011111010111111001011110111110111010011100100010100010110010010000101000000100001101100111100000101011000000011100000011101010100010001110011110010101001110001000010100101011100111010101101000001011100101111101001111000111011110011000110011110110110001011100000000011001011100001010010000101001101101101000000000100000010100100101000100011011110110001110100011111101000001110011110001000011011011111010100000100111111111001110011011000100011111111100110010010000110100001010110001111011111111101000010000101011111111100011010010011011000000111011001101010100011100011000011001011111011010011110100011010000011001111111001110010001110101010110111100101011011100011110010110101101100111001101001101110100110111000001100101110010111001101101101001011111110100000100011010001000111101010011001010001010101000010101111100010111101110100110001111001000111010000010100001100000111001011100001110010010000001000110110010100001011010000011010100101001101000010001011011101101111111000011001010010000001111110110111001010010000001110100011110111100010001010111001101010100011001111101010110010011000110011110000101001010001111100000110000110110100001100001000100101110111000101101101100100111011000100101101101000010001011001111100100100001011011100101111100000001010110100101001110011101100101000011101000101110100011000110011001111100111111000110111111101101111111000000101100011110110001110101101010000101100001001000100111111110001111111100100111101110101011100001000000011000101100100011010111111011100101011001111011110010000000111100100110101001001101010011011001101110101000111110100001100011110011100000001101111101101111010111011001111110110111000001110100101110111111111001100101010011100100000111110000100001011000111100001101011100000101000101111111000010011000000010100010000101100000111100110111011101001000101100110111010101001011010100111001000111010101001011011110111110101111010110111011111010111001101100011110011110001100011---------------------111111001010100011010011110110110011101000011001100110001110110110011000101110000010010000101001011011111100110110100100011101101110101000011010011101111100111101100010000100000001010000001100011010100001011101101000010111111010000111010110011111000001100100010000010101001110010000111110101000010100011111010100001110000001100100001010101011101010010110001110001110001011110110111010111111100001000100001101101100111101001111111001100110110110110111100001111001001110110011011000011011101111100000101101001101100011111100000010001100010001110111001111011011100110111111100011000100111001000010101101001101111010101110010011111011110000010010001000100000100010001100111001010001111100111000001001010011100001110100000011001101000101010110101011010101000100000111110111001100100001101010010111101110001101101000110101111111010101101110101000111101110110010011110001010011000110110000011110110000100101101101010010010000001000011110111001100101101100011110011011001110110011011011110000011000011111000111110110111001011011011101110110011011010001100010011000011001011001100111010110101011101000110101011101111011110001111010010111011010000101111011101100010001010001101111010101111010101011111101101110110111010101001011011010110001100011011110011101001100000000001001011101111001100111110110111110011010010001011011011000111000110010100001010010100010011101110011110110011110111101111111110101000101110000001001100010101101100010101110011011000010011001111011100011100010101100011110000000000101100001101111001100100111110111010001010000101100010101100011011101100110100011100101111011110011101110111111011001011111001010101000111011101001000100101101101011111001001100110001001111011101011111011101110101100011010110100011101001001110011000111001010011101100000111110010110001110101100111100111101001110010010101101101001000001111111111110111001001001100111100101000101001011110110001000101011111101010011100110100111001000101110110101000110100000111110100110010001010011111001001000001111110110011111111010011100010000000001011001011100110011001101010000001010000010000110111100001111110011001110100011111001100010110110001100101011101100000101110111111000100100100000000000100101100010011101100010010000010010001110101000011101100111111110100001000000001000111000101011100111101110110111011010011010111010001011010111000111010001010010001100100001011001000110101000111110110010001101111001100111010011101100101111100011001001011111110011011110100001110010101111110110111110101000011111101100100111011010010101001000001110001001101011101110010110011100010100000111110101101001101000010000001001100000100011011000111010110000011011010101000010011101001000111001011101111111101101011111101010001101110111011010101000011000001001101001111100011110010000110100111100011111110011001000101000110100110100101110011001001110110100000001111000011001110011011101001101011101000001001000000010100111101101110100001010011010101100111100000110100110000000000100010100001010111111110101101101100100111010000001000110100100110000111000010000011111110010010000000101110111100100000111000100111110011111000010001011101000000100100001010110000101101100010110000110011000001100101001000100011001101111101010011110111001111001101100100000100110000100010101100000011010001101010111101101100100110111111111000100110001010011010100100011110110001000100011001111100000110101101110010110111000000001000011101000001011001010100010001011110101101111010001101111001110111111000000111101111110100110101011010111110001000001100010111000101101101110110101001110101001011001101010110110110000110110110010110100100000111011000011000101100101101001111110110000111101011001110001011110110101001111110111110001110110011001101000001100110110011111000111100110101100110000001010010000100000100001011111011101100110010000011100001000110001110001011110001100110110001110110110011010010001100111101101011010101100111100010000011010010010100010000011001110011111110010101001010001111001101000110101011110101100000110010101111101110001000001011110000010001011011100110011100011011100100010010010000000110101111110011110100000110101011011010011110000010101001111000000011011101010001010001010101001011000011100001010011110110001001100110111001011110000001100010111111111100010010110100000100000000010010000000101100000101010101010111100000101100011001010001101001011001111011000100010010011101111111101110000101010110010001111110101100100111001110111000011001001000000111100000101110001011000010010011111001000110011111110000010111100100100010011111001001010110110000011111111110100110101000100000001000100001111100110001000010101001000001110001001011101101011000010011110011001101111110111110010010001001110111101001011010110000100100111001110101011101100001010011000001100101100111111101101010111000110110100111111101110000001111000100001110100111010111000111010101001000100010011101100111010011101110011100010100011010001000110101000111110000001000000001100111100011010011101011101110110000010100110001010110000101110100011011100000101000001001001011011110110111111100100010000110000110000001111101110011001110101010000001110010001001111001000100111011011110011010100101111110110101100111000011011011000011110001010010010110001101011111110100111111111101011110100111000010110111011000000010001010110000011110011110000011110110101000001110011111000001111101100011001011001100111001101101101110100101000000101011110101011000110001100100000100101001010001010110111011000000001001001111101111010110111100010111111100000011110100010001100011111111101111011000010110100010010011011011101111010010000011000100111011001110110110010100000011000000010100110100001001001010110001001111011100000011000011111000110111110101110111011010011001011110110100000000101101110101000111000001111100001101101101011000110101111000000111101101100001000110100100010110100111111011000001011000011111100101101000011011010000010011001110000001100111101101001100100010000011010100100101000001100000111000001100000000010110110010011000100010010001111111100010101011001110001001001100101000001100100001100111101110100010011011001010010010000001000000111010111001010011101110010101010000011101110010100010010100111001110100111101000010101000010100000101011110100001110000111110101101111101110110001011001110010110000001111110010100101100110101110100110100111001111000101101101000111010010001000000110110111011101100000100100101001010110001011101111010001100110111001011000000111010010101110011011100011011001111011101011101011011100110000010100101111100011000001011001001000000100001101011101101111011101010001101101010100000101100011001101101011110000101101110101000101101010001111100011101000110 +001011001010100001000110000100101000000001111001001111000101010000100010010001111100110110101000111001101100111100110110111110100010010011100111100110000010011110110010011101111100110111001110001011110101010000100111010010110011111111101000100000000110101010011110110010100100111100110000011111101110011100011011011110001001110111000101000111111110101000010110001110010111011111010100011100000101101110101111010010101100000111001110110010000100111011110110000110011000001100111011010011000000100011100100110111100010100101110000000110110000001100000000010110111011100001101000000111011110110111111111000000011100100100010001000010000000110110011001011100001001011001000100011011010111110010000011100000001110001101000010101000100000001011110100100001100010101010000011111010101011001101101101100010001001010000100111111000101110110110011100101011010101011000110001110011001000001000111101101000001011001111101000011000001101001000101001111110010111000101011000010001100111100100111010000110000110110101000100111101100010111111001010101001110010001010011011101111110100011111110100111000100001101001011111100010110010000101011001000101000111110110010011001101001110010001010011010100010110010100100100111011101101001100011110101010100000101101111010010100001101011011110001111001010101100100100011100101011100111110010111100001100011110101001011101101000010101000001000011011100001010010101000001011001100111100000010011010001100100110001010001010101111001010110101000110001101111100010100100010011100110100000101010111100110000011011110101010111001100100100110011100011011001000110000100111111010010001100010101100110110010101010000001011010101100111001010011001000111010011010000110001011011111000110111101110101000100110010011000001101010011110111011100100010000010111000010011011110011101010101001001001100100000001101101111000011010010110010110110011101010000011001101000001011000101110010011001010101101010001101101011011111100000111011111010011111111010111101011010110110000010110000000011100000101110111010001001101010111010110010010101100000101110010100001011010100001000000010110100010011010000100010010011100001110001101010100000100100110100111011100011010010100101101000011110010010100010111011100011011111000111100001010010000000111001010001101100100110100100100010111001110110101100010001011110000110000101011011000110100111000001110110011000110100000011011010100010110010111010111111110111101010110110101001001011101010010100111010000000000101101101010110011000100111000101001010011100010111100100011101010111111111100111101111010101111110000101111101010111011001110010001011010110011100010101010101000101101101011000011000000101000100111001010010101110110100001011111000000110011100110011111010100100100011100101101100011101001011101011100001011011101010010010011000000111000111010010111011100001001010010000000101111010111011111101001000001100---------------------010110111110000111011011100000001001111110010110000011101011110110010010101100110000010111001111000011011010111011111001010111001001110011101110000100001100000110111001101100010100110101101110110010110010111010000000111111010000100011011101100001100110011010010111010001010100000001010111000000100101000001001101001001110100001111100001010010100000001101101110010111001011110010011000001111010100100100001111001001011101110000101011101010110100010000001010101110100001010111000011000010111110000101110101011101011000000010000101011110101101100001001101011010110110111100011001101001000000110110011111011010110011110000111000010000100101101110110010000101011111001100100101011010111011100101110100001011011111000100001000111101011000110011001100000111101010001111100000000110010111000000000110100101111100110110000011111011000110100111111101110011011100000001111110100100110111100100101010001110101001110001101000101100101100110110010111001111000011010000110010000000000010000001111111001010111111001011101011101010111100001001101111010101101010001110000000011010111001000000110101101010010111100001110001011100110001000100101110011000100011001110011000011010110011000100000100111010101110111101110101101110001001110100100011110101010100011111011001101011011101110110000101110010100101110010001011101000001101111111110000101100111101011110111000010011000010110101111100101110101001011100001011011011000111111110000101101010010110001001110110101101001101010111010100011111010101110010011111011001111110100010001011010100110001100010101101000110011100110110011000011011101110111111100110010001010011110010000010111111101111101001100010100011111011011110100011100011001011111100100010001000111111110000001111100001100001000110111111110010001000011001010011111011111011100010010101000001111010111011011110111011000110000111000010111000101111111001011101111000111000000110100111000001101111001011111101100000111111010001011110100010111101000101110111011000001111011110111011100001100000010000011110101000011010111000110001111110000001111011011110100011001101001011111010001100010111101001000100100011111101110111000111100001110101100100011100111111001111001000110110000010100000111011111001111001101101100001010111011000101100100110110111101010111101001101010011100010111101011111101100111110001101011010100001001110100101001111100011100001100001101110111101101011000111011101011111110000001100001001100001101110111001101010111110010001011010000100101001010111010100011001100000000001000011110101100000100111101101001110101101010001001010111010100100011111100010011001001000111101011011011110101001111000111100111001000010011101001010000010001001111011100110100001001110101101111101001010000100010111110111100000100100001100001011110111000110001100110001101101000100101101111001010000011101001001000000101110000000101111001101111110000111110111010010010000001011000011000100001001000000100010000011000101000100001110110111001001000001110001100111111110110001100101110011101111000010011001001010110011101110100110000110010000001010011101100001011110001111110111011101001101001011101111001010010011000101101010101100100111000110001010111010011010010001011110010111011001101001111110010000101011100010010100011000000010011101010010000001000111111010100110001001011001101010000101000011111100100111110101011101001100111001011010001011000011010000010110011110011011110100110111000111000110001011110111011000000111100000110100001101010111100010001110000111010100011011000111101010000101001101010010101100111111010001010110111111000001111010011101100010101000111010100100100111010110110101011100011010010100101100101011000101111001110001110110001100000010100011000010011001101100010000101000111011011100001101100101111100000101000100001001010110010010010111100110011011010010111100101011101111110000100010111011101010010001001111011001110110001010100001000000101101111111011110101000001001001011100100011100010000011100101010000110010000100100111000110011000011101001001110110100011000110010100011010001101010110001001000011011000010101011100000000100100100010101000001111110110101001101010001111011101111111111101101111111101001001001001000011001001100100011001000010110010001010000110010000000101111000001011000001101001000000101111101110000100000010000111011000000101000110011110101000111111001111011011101100011011100110000010001100100111001111110001010101010000100010110010001000111011101110000100011100100110101011110000110100111011011100001001100110111011101010000010100100001100000011001001001100001011001110001000100001001101110100110001110010101110001000100000110010111100001111100110001010111110100000011100001001100111001001110101010011011000110001001100100110011001001011011111010100110101111111101111000101100011010000111000101110100111000011111111111011100011100010110100001010001011011100001100000000010110110111110011111100100010111101101100100000000111001010101100011000100111010011110111011100001011011111011010110110101000101101101100010000110000000101000111110100000010000100010011000010101110011101001100010000110000010001110000010110100111110100110110101010000101101000000010011010101011101001111000001011111111011010011001111111110000000100100100110100000001100011110111010010111110010000101101101000100100001100011000011011111001001100010001101000010101011101011100000100011100010001010101101100010001100010100100101101110000101110110000110100000101010011011010000010011111100001111001100000010001000111111111011110110111001111000001000001101001111111001010000111110000001010011001100001001100001010011100011000100100001000111100110111111100110111110001010111011000001100001011010101011010011011110110001101100101001001101011001110001111001000101100011100100110001111110000111101101101010000001000111010101111110010011100100110000001110001100110000010010111001111000010001101011001000010010111110011111101001011111000110100010010110000000111110101111011101100110100010101101011011100011101010001001100111011010001101001000101000010101000111101001000101111011110001001110101010011101111110011000111010010010101100000110111110111111100100110101011100101101101001011001100101001100111001111010101010001011100101001110000000111111000111100100101100110110001110010001100111001001110001001011001010111101010001111000100100101000100100001111000011010001101001101110001000010111000001110110101111001111001010000010100101100010010101011011011101001001001011001110111001010011011101000001001000111011100100110111111111011001001111001101001111101000100011100111111100000011010010101100010100111100000100100110111001101110100001110100011110011011011010010110100001001111010000100101000001111011110100111101000100100110010111 +ls288msgs +000001010000000000001111010110010100100000000001000101100001101011110000111110111011111001101111101101010010100100001000101010010101110101111001010010000111111100010011001011111000001010000111001011011101010000110110010110111001101111111001011011100110010011000001001010100101110111100101100001000111011111010111100001000010001111111010110011110000010001011001011111011010101111111001111110110111101010011101010000001001000111111010110111000011011101011111101000111010100101011100101010000100010100111111110111100011111100000010010110100001101100000100001111011001010111010001000011100101110100010010101011111110100011010111100101100110000110111011110110111000000000101000110100000000101000100111001100001110101000000000000011001011111101011110011110100010110110010111100001010011010010010010111110101011111101000011101010001110010100110111111110111100000100100100010001100010101000000100101001110111001110011101001000100000110110111001001010100011010110010100100100001101101011110110000001000111100011100101011111011000001101000100000001110110010111011010011010010011101111010010110000001010111001101100100011000101101011000000100011110010110110001011101111110100001111100000000101000111001100001111110100010110010000100101110010110011111001000110001001111100101111100000111110000100010001010001111000001110110010110101101011111011010011101001001010010100100111001000011001000000111100001011110101011110001010101101001001011100000111011000000101100110001011011100000100100110011110010100011110100101001101100101000001101111101001101110010111000010110101000010011010101101101100110110111010101111010100011110100111010101001100100010001101010101000110010000000101100111011100001010100110001100101100111000000011011000011111111001011011101000011101000000111000011111011001111010001100110100010110001101111010110100001000101011001111111011101011011110110110001101011110110000001110010011000000100101001000100110000001000010100010010101000111111001010010011010100000000010001111101000000000001000000010001001111111100101001101011110010111010100011110111001101011110000110011000011000101000101011111100011110101011011111100011110100011000100101110011010100011010001001011110001010100010100110011100010111000111010101101010011100000011100000100100001100011101011011110111111011100101101100101101000101000011011011011010111101110000101101000110000110101001111110000000110001010010101110111100011101111101101000110100010101110110100010010011101101100101101000111100111011001010110111110011101010010001010010110010000010000100110111011100010000001000001010100010110100001101010100100010110111001110111110011101111100100101000111000001010001011111100001110111010011000111000110101011100001000000100000101101111110110011010000011010010010111111111100100101010011111011111101000100010100111000101100000100011101100111010001100000110111100000101011011100001101100000011110110101011001000111101001101010001001100010000001100010001000111101001010110000111011010010010101011001101000001001011001011100010101000101001111111001000000010011100000110000110011001000000100111010011011101001011100110001100100011000011010101100100101011010100111101111001010000001110100101101110110011010110011000010100010011010000101100010100000010111111010000001011101101111001001000100001000110001101010011011011010011111100100100010101101100101011100011111001110101011000100101001000111000001001101110011111010000000100101000011000101101111010100010110100001101110110000001110010110000001101110110100110100000100111111110100000011111101001011000001111000010100010000000011010000111010100101101100110110011110000110001111000100000011011101111000101111011000101110111100000100110110001000101111000000001110000010010101011011110011010001001111000001110101111111111010010101110100001001000101010000010011100001101001001111101001100000010001100100001000101000100001110010011110101010000000000100111100111011010110110010001001010101000111110010101000101110001001001111001001101111010011010000111001011110100011110011101111010001000110101000011010100000111010011001000101101110101110111001010010010110001110001101111001110001110001111001101011100001001111001000100111010010110100011111111011100011011001100101101101101110001101111100000100100111001001000100000011100000110011101100011111110001001001011100101000010110111101010000000100001010000000110011110001110001100000010101101011110010101100001100010111101011100110101110111100011000010101110101011110101111110111000011100011001010000100010101100111100101011011101101000111110110101001001100110011010010110010100000110110111111111100100100110000101101110001010010111000010111010101111001101100011010010010001001111110011100001101011100010111010101100000100001101000101001000100101101101101111111000011111101010111100111001101100010100111001001101011100111000011011101100000111011001101000001010010111011111100101101101010010010001000011100101111011101110100110101110111011110011010010100010111111011000000100101110010000000111110001100100111001111101101010111001000100110000011010111000001001011111101011110111101101010001110010001111100011110011011001010110000000110100101011000110001000001001101100101001011100010101101100100010011001110100001100111000101001110000110111101111011101001000001111011000101101001011100010001101011011011101101101110110000011111001011110101111101111111111000010010111011101111110011001000000000001000100001000110110001111001000110110101111100100100010101111111111001100000000011110001111011000000011011001011000001001001100100111010011010100001100101110001010110101110011101000100010101000111111101001010001011101010001000111111110111001011010000011100000101110111010011111001101010000010110011010111110110100101111100111100010000111011100001101011010011101110010000110000001100010001010010000011101110110111111101011001111110101111000110000000011110101101100000111100000101111011000101111111001111000010101011110111011010001011111110011101100101001111110000010011001110011111011010011101001101100010000000010111011111001101101100100101111001010101011111001011111001010011110100101101110110100010001100000011101011000100101101100001011000010001000011010010101011001001001101001011011111111000010110010100011001011100110010110011011010000100001100000011011010111110100101010110001010010000100110011110100110000101101011111011111100010010100111000111011101111001010111100110--------------------- +110110001110011110110001011100101011100011110011111001011001110000001011101010111011110001011010000011111100101100110001101101001101101101111000101110101010111010000001000100101111111101010100011011000010000001111110101001101100011111110001100110010011011100001010110001000101110010110100111001010000100010101111011101101110111001101111000010000100101001111101010000001110111010110010001000110100001011000010100011110100000101001100111101010011100000110110100110111001010110001011101100000000111100011110110101011000110100100001010100100011111000100010000011101101011000110100110101001100110101100101111001111100101111100000101010000110111100001001001011101011101100101001001000110001000011010010011100001010100000111100101000011101111000110000001000111000100111010000111011110100111001011011101001000110110000011000010011100000110100111110001101101010110000101000100111010000110100101101111110010100111011000011000001111001100000010111000000110101010101110101001011100100110101000000011100110111101010000111011111101101101100110111011110011011110111001110101111011111110101110001111111011100010110111111011101011100011011101000011001111100001111010010001010110000100011001011111001011000010110110010001010010110011110110101000011010111000111100001010110010100010111111011010000011000101001110101100000110011110101010011111101010010000010001101011001100100110001101111000100001110111100010110001111100101111110101101110111100110101110101101100111001000010101111011111011010011000000010111011001011000101101001100000101111100110110100100001111110110010001101100001110011001010001000101000011100110001101110011010000110000110110000101100110110000001010011000110100000000101000011010100101111100110011010011000101111101010000110110100110011101110100110000001101111011000011000010101100000100011000011011010011011101100000101000111101011110010110011110001110111110110001011100101011010011100001011010110001011000110110011001111001101000110011111010001010001000101111001101100101101101101000011001001100000111111111110110111001100101110010011101011001001011011011101101011001100111000111110101111001011101000110010111011111110111011110001001111100100110011001001101011110101110011001001000000111010100000001011001010110100010100110101001001100111110000100101110000110011110101011110011000011111010101100010110000101011100111110011001110000010001111010111011010011110000100100101101111111010011010010000110111011000110010001101001111011000011110100011111000100101000011110001111111101101001110011000100111101100001000000100000111000100010110000111111000101011101001101001100011011101010001110111111010111100100111100010110111111001100010101110101100010111000101010101010110100101010101011010010000110110110101010000111101100101100111110011100010010111100111110101110100011001100011001000000000001101101010011001111100011011110111111001000110101001111001111111101100101011111110000001011101111001110100100101110000001100000101101110001010111111101101001111101010100110100000001011001110001011001010000000101110001001110100100101101000000100011101010111111000000100110101110010100000010001110010100000000110101011001000100000011111000011001010000001011110001000011101010010111011100001111101110111110010000011111100010111001001001010011100010110101001001001011001001111011011101110011101000111000110001101100000001011111100110010101111100110010000101100110110011011100010001100110000001100101110000011010000010100010101011001100111101011111110101100010110100010100011010101001101101011111100000110101111101111011110001110010001000011000111010110010110100011101101110001100111011011111111011101101011011011011111001111100001101101001010101000110011111011000001111100000010100100111011101000011110001011001111101100110000010110001111010110101010100011011000111101101101000001011001110000110110011111011000011000000000101010110011100010001011100011011101001110001001011010110111001101011001110000001101001111110001010100110011110101000111100000010001110100110010110101011110110101011101111001111001000100010010001001110100111101100101101000100000010011110001110011110000000101110110111100110011000000001000010011011011111100101101110001100100011010111001001011011001001110101110110000100110111110011100100010011001010011000011111010010101001111101110110101000101100000011000101110110111010110010110110101111100010010011100010100011010111100010001110010101011011011100000000111101011011110011001010010101111010111010101001000110010001010110111010010101000101111100010110011101101010010101011110100111001001010110100110111100101011001010011110001011101101110000011111000100101010101000010100100100111000101110011011011001111101001101011110001011001011110001111110010000000110000000010010001001101001001100100101000001111111100100100101010110000000100100101110101011101000001110100101111010010010010000010101001100011001000100111111111100010111110000110101110100000001010101101011101101101010001011000011011001001101011100010100110011111101100101011111011000000011100000001000110111111000010111101101111010001010111111101010100100110111001101110111100110010000101110111101000101111001110101000000110010010011110011101011101001010110001011110001011010101101101001001000010101000010011000011000111110101000111000011011111110011111010100100001101011111101111111111001111001110100000111111010001100011001110000001101001101101101110011101010010001010000110000101011000000111000011111111010111001100101011100011010001100100111110111001110000000000101011011101011010111000011100010101010111001110101100000101001110001010011000000100100111000111110010100010000101111111100001010010100110110011100011001000101110111111001001000101111110000111010001110000100010001011101101101101110101000010010110100101001110110101000001010011100010000010011011000100110110111100010000111001100100100110010111101011111100110111000000001000010001000000100101110011111110110110101000110111100010010100011001111011101110010010101001100100001001100000101011110010010001001110100101101110100110110111010100011100100111110101110010000111101000110101011111111101101111010101010011100000101111001101000101100110001111110100111101110110110010101010101011000101100010000000011011101111011111000011001110100010010000111111001110110011110001100010010111001100101111011101001011110000010001000011001111100101001100000010111101001110100000001101110011110000010001001110--------------------- +111100000000111010010000001101110001101111011000110000010010011010101110010101001100110011010100100011100010100000011110110011000010011101011010000100000100111001001001111100001111101011100000011101101110100011000001000000101101001010001111100001110001001100001000111110111100111101111111001101110100110000001111000111000111010100100101100011010110100101001100010001010001010001111100111110101001010000011101010000101001100000110000110010011011001111001110110001110101111100101011110100000101000001100101000111100101100111101110111000110111011111011001111100110111000001000100101011001001010111001100010111110101100001011001110001110000001101011110100110101011110000101011110010111110000001110110001111101101110001000111010011010111011100011011111010101100100000100001010010000110010000001010000100011111101100111000000111110101011001100101110010010011101110010111111100100101010010100000111011001110110011100001011001111001011110001100110010111010100101000101111000010010100111110101111100010010011010011110100110110110110111011000001001111000100001100000110111000111110000111010111011010101111011100101001101000011001000110100110101011101111110011001010110100001100100101110111110000010000110011000110100101011110111100010001000011111011001110010000011010101101001011110100100000101110001011111111010100000100011110100010101000010110100101001110011010010100100110100111100101101001111100101101110010011000111111101110101111010000001000000011000101110100100110001010111111011111111101010000010011100000110101111001100010110011001001111101001100001101000110100010011001010110000111010101011100111010000111111111101000100110000001111010000010001101000001110101011010001101011111110000110001000010010010011000101100111110011010001010101011001110000010100111011000100101110110011011110101010100010010111011000001110111011011011000101011111001101101000101100011010010010000011111101010001010111100101100100010010010111000101101011101101101010000010001010111001011100001101001110001101001000011001000111101000011101011111100111101101010010000101101110000110101110011011101110100010000010001010011001100110101101000010101000110010010110010101001010101001110100101111011001111111110110001001000011001111111101000001000110001010001100010101011001101111010010100011100110001011101100011100101111000000101110011011110010001011010110100010100010011000100000110111110110001010100010111001110100001111100010110001011111010100011010100001100110110000111011110110010000101110011111100011011111110010100011101101110111111110011001110001100100011100001001010100011110000111011011100101011101101110101000010111011010001010110101011001100000101010010110011100001011011101111000000011111011001011101101111111101111100011010010101001000001101001000001001101000110010101001101101000000000111100110011101010110100110000110111110011110110111001110111111011010011010010111001000110010101001101111111000010010010010010110010101001000110100010010000111011101101110011101110100011000100101101001001100000000011110011000111110101111101110110100100110010000001101011111001001000100010010101100110000011001000100111100001000011011010011000111100111101111011000000010101111010010100010001101001101100111110101100011011001111010100000100100011100100111111110110110110011000000010100111111010010101100010010010100111010010100001110100100000100101110110001110001110000101100010111101001111001101111010101010010000100100100001101001000100100010011110010000001010001010101101111011110000110100101000110111001010011001011011000111100101110110000010101000100001100111010111101100110011010100110001011001001001111001000010011110001111100010011011110111101101111111001010100000000001001001100101101110111011010010100111101110000001100000011100111001101100000010100010100001110111000010110101010101110111011001010110000100101000001001101101011100111001011111000000110101101111011010101010011001101001110100001101011000011100001111010100100111011011101010100010100011111011010000100100010011011100000101001101100001011110010110000100111001100111000011111011101100101010101010011010000000101011011111111110001110000011101111100010100101100100100001001001010010001100011001101001000111101111000110010011010000000101000010001010101010111101000100110000101111110111011110101000010101010111010101110101010101101111010010001110011100011100101000001011001001011101010011111111100111011101000011110000001011011010111110111000100011010100110111101111110100110100101000011010100001000010110100011100000100011011001001000111010010101110111100010100101101100011001001010010001001011010000011001110001111110010111001100111110101101111000001100001011010000111001000110010101101111011110000011011101110110011110111100110101110011101100111110010010110111011101100010101000000100101011000010110010110110001101010100001101110101111100001101101001110110000001101111110011110101110100011000010010000011010101011101101111011000000010110000110010011000011010111010111000100111100010110111011011011100010001001010111100110011110011100001000001011100000100101100100000000101001001100001100101111110000010101100110001001111011000010000011011001111100100110110100101101101011100100110101010111010100011110101010110101011010111011001011010010111110110110011001000101111100101011111110110101000011011010011010001101011100100100100100011101110011000111011111101010111000110101111111100011010111111101010111000100111100101101110000000010110111111010110101011000000010101010000011010001100010110100101001001001111010010011111000111000100001101100010001101001110101111000000101001100100001001101110001010100110101011001001111111001111100001001111001000100010100100010000100011010001111111111110000111011111110000000101110100001001000000101000010100010010010100011110000111110011001110110110000010100100100011110011110010001010111111101111110100001100001100001000000101010100100111000011001100000111011010010110111111110000111000101101101101001100010101000110000100100100101110001111001101000110110110011001100011011111111111001010000011101001001000001110010111100011101110101001110110001101100010011100010101011011011111001001101111101111001001110000000010001001011111101100100000010110010011101001101000000100110011111011110111100011111101110011001011100101011101101110100111101001010101100100000011110101111111001110110100100011110111100000001111011111101101000000000000101011100011011000--------------------- +110110001011011110011101100000101110011101011001110110010010100111010100101001001100000111011110011111000001101011111001001111100111010110011110101111001110011101100010010000111010000110110110101101110000001011000000000010100011001110010001110000001110110000000101111111010100000111100110100101101010110000110110101001101011101100110100011011110000110001101100101111101111000101011010001110111100111111100111000110100110101010011111001001101111111000111110001010110000010110100110000100110010111111110101010000101101110011101110000001100101001110101000111010001010001110011110111101110110100001000010100101000011110101111100001000111000010010000011010001000011000101000010101000101111010000110101111010101000011101000010001100001001010000111010111101001111111011111010100100100010110110101011001110001001100101100010100010110010110111000011010001100011110000111111111000000110011100001011110010101011100111011001101010100111100011101100101011101000111110010111001011001000011010011010111110000111101011010100110100100101011000101000100110000000011111111010000100100011111010101000010101101010101111110010100100011011111000111100011001110001010111110011010010001000111101011101111101110111100000011111010100101000000110010101001100111110010101010011011101110011000111110000111110010000111001010010000111000101001111010000110101101011101111110010111101000100000010000001110111100111110001000000100000010100100010110111110001100001110100110100000100110000010001001111001011111101010011110000011111100001000000001110010110011100010110001000011011001011000101011110101011100010111101010011110100100101000000001010010011011111001000010110110011010111110010011110101100101001011000111010001000011100110010001111000110010011001010011111011100110110101001111011101101000100111001000000100101011011101010000001100111011111101001101101100110101111101100011011011000110000100011010001110100101100101011010000010010100011100101011100111111101100111000011000010000011100010011010011101100111111001110001010000001100100101001110101110010110010011000110011100010111111100000111000110000101110101001000001101111000101101100111100001111011111001010010100001011101011100110000001000100011100101010001000011110110001011100110110010001100010100010101000001010110001001101101111111001111001101000111001001101000110110100011001000001000100010110100010100011101000101110110110001110011000000011000110010000110001100100010100000011010000010101110011110110000111101110000010001110000101001111010101010011000001000001000101101000100100111100100100011111110111110100000011000010110011100110000001100101000100100011110110111000110101001010001100011111110011110110000010101101010100011011101010001110011110010011111000111001100111110010110100001110010011000101111000000010100001101001001100100111111011001000111001000110000110000111011100110000111010110001111000101101101110010011111111000110111111010011000001101101011111001111111011000010100110101101011100000100111110111110101110100111111010000100011110100101101100110100101111000011010001111100111100001011000001101110010000100011001010011000011000100101101110011011101001000101010111100111000011100001110100011101101111011100001000111110001011011101100000000101010001101011110000101100110000001001011011100100000101000010000101100100011111010100101101101101101101001110001011010011111011101010011001101101011000001101110000111101010110011101010100100011010111011010001010010000110011100001000101000011101110010100100001011011011110000001011100101011100000100110101011000111000111001010100100000100101010000111010110001110011001001000010001000100011011011010101011010000100010110101111010100011001111010001000011111110011011110111101001111010101110000001100100100111000011011000111110010001000010101100001010101101011000101011000010111010010101010100010111000001001101110100110010010100100010011011101001110110111110111110101000100000000001100001100101111101111110010000000111011101011000100001011111101000001110010011110100001100001101010000000100111001000011110010110110111110110000100100000111101001000001101000101010110010100010011110011101110010011110001111100000110101100101110110000001100010101011100000010110101110011011111111000111000011001011011100110011101001010001011000001011000101111011000010101110101111000001100000110110010001101010001000100010110000110000100010001010010111111100001011000000111000000011101110000111101010001111100101010010110111110100001100000011010110001110011001100000110110001111011000110010011101101111010101000110000111010001010010010100111110001110011001100001000110101110101110011011001101111001100011011110101000100000111100100010100110001011111101110110011110001011111100000110010011011111001111001101110111111001100000001110010110001101100111010010000010010010101111011010101110101000110100100110110011010100001001111110110011101111110010010110101000110111000110111100100000011101100111010010101111010001011000100101100100000000011001001011110100101001000000101101100001000100010000110101001100101000111001001111000010110110001100010011011111000001111001011100010110001111011101011001111011111101010101001011111000101000000011010001001101001110111110101101000101001011000100000001001001110111011011011100101111110101011100101011010100001001110000001110011001110000100011000000100101011011110011110001111101001001011010110000010111011011110001110111111001100010001010100101110001110111001010001110010011011000001010110000001110100001101010001101110011100010000011011100110111110101100001001011101010011111000001110111001101011011100000000101000100101110110100110111100101100101111100001011111011000010000111011101111011110100101111011000110100010000100110000000100011111010110001001010110111100110001000010001011101111001101000010000101111101111010101110011101110001101110100100001010001101110100100011011110010100010010000110010001000100100011010110000001001101111011100010101000111101010100101000001111101010001100010001010011110101111010110000110001111100100111100010011110001010011001110100101010011100001100001111100111111110001011011100000111100101101111010001111000000111101000010111010100011101001101100111100001010011001010001111010111011111001000011100100000100110111100001101111100111010101000110000010110111011101000000000110000101010111011110100101100000101101111101000100001110100010011100111000110011101010100000001110001111000101000--------------------- +010011101001011000010100101100101100011111100100111011010110101010010010101011111100110000101100000110001000010011010010111010010110101010100100001001000011000001001101110100100110101111000101100001101011010010111010111000011011010010011100011011101111000110101111111011011011101111011000100111011100111111110100011111111000000110001110000010001000011001011101101101100000100110111000111010000001110110000110010001011111111111001101100100001010110010000110011110101110011101100011000001001011000110110000001101100011110101111111011010101101000011000011100001000110111000101011011101001110100100101001100011100100111011001101101000011000011100100001011100011111111111101011111010000100100111100011110101001111000101001011100101000000011001101010000010110100010110110010001001001110101101000110010001010010000000110110000000100011111111101001000101011100011110111110000100000000110001111001011010000000001011010111111110100100001010110110111100111001101101000110100110000001010110111101111011001011111001110110010011101000101000101111010000111101010011100010011110110011100101001110111110010001011110011011011100100101001110101110111101011111110001101001100010111000111101111010101111001111110100100111111110011101001101000110011101001001111101111011100011110111011011010010110010111001001001110101000110011011010011000111111010000011001100110101100101011000010111000000010110110100110101100100110110001010101101011011010111100111011010011000111001010100110010010001001111011100101001000110000011110001101101100000111111001101010010010100010010111100101001110001100000000100110101010010001111110001111101011011110101001100000111101011000110000111011000011001010010000101110101100111001001011100101110000100101011110010001110110101001100000100100010000111011110110111101100011101000101001100100010000101101000000110110011111001000001101011100000110110101001111101101011001001111001100101110101100001110001001000000001101000010010101101110110110100100000011101101111010010110111101101100101010101010100000011101100100010101110101111110100011010101011111001101101101001001011111101001000001110101000101110001110001100101110110110100000011100100001100010100100100101110001111111111110011001010101010110001101000110010001000000010000100111000011100101111101010000101110101001011110000000110001111010010111000110111100100101110101101110111011011001011011010001100111010010110101000111000110011100010000101011101010000101101000111111100001101001011011101110011110000011011110101111010010000011010111010110110000010010111110100000100100001100111010011111101101001000000010000011010011011101010011011101011110011100100001101111000001000100101000110110001110011011011001011001000110100010001101001101111110011001100100111110001101110110100010010110100100111011110111001110010111000010011111001101101001010100011110011110001100011111100001001011100000010101011100010001110010111000001000001101101000001001101111010010000101101010011011101000011001111100111000000101111110010010000001110100010101010110011111011011010101010010101000111000000111011010110100100110110111101011111111110110110010100110011010111001111011100000100001100110000110011011101111100101001010000001111101011101000011011110100000100001101111011011001101011110110000010011001100000000111010101001000011100010110100011011001011110111101001010111111001001101010101111110011000101000111001010000100010000110001000111001110111011001110101101010011101001010100100001111101111011011001000000111110101010010010010000101101110101000100111111001011111000000101101010101010101110001110101011000001101100111011111100011111011010010100010000110110111010010111011111000110001100110110010011111000101100011000110001000101010100111110101000101110110110101101011010101101100000001101111101000000110110011111000011110000110110110101100011111111100000011001111101111010110111100110101110001111000001100001101000001110000010011111010010101011011110010111000100011010111000000100010000010001010010001110011101000011001111010001011010111010111010001000011100011100100011110110110111101001110101100111000100010010000001110000011011011000110000010011110101010001011000111110101000100110111011011011111000001101100110110111111100110100000000001000111111111110101000100100111001110101011001111100110010100100110101001011010100001100001010101111110011111001001000010110010101111000010101000000100110100100100101111000011110101001011111111011011001100000101000011110000101100010011011010101001011101101101100011111000011000011001100011001101100011001100001011101101010110000110111000110011110101101000000110011010010010001011100011011011111000111111110111010111010100101010101101110101111111110010100100100010111010100100010100001010100011111000001110010000111000010110000100011111101110110001111001000010110010100111001011101000101010010111001010101111100100110101101100111010101000010010010100001110001000111000100001000100101111111100100010101010001101101100101010110110011001101100010110100101110110100110111110000010111011000100001101011001110111010110010101010110010011101010001000000110101101000000010011000110111010111101011000100010101000011010100000000101111110110100111011101110001000101110000101000110110001111101100001011001110101110011011001001100101110011011110111111000101000011010010010100101000110010011111000101001100101010101011110100001000111110111011101100001100100001000100100010011000111011011110100000111001010101100000001000111001010111100000101111101011110001011101110101111110100001111001110111101100111100011100000100000111001110101000000110100010110000110110101000111111110010100111011100100001001110011011010010000001010100010111010010101101011010110100000010000001001000001111111110101001110110000110100001000111110111110011000011101001000000101111111111101011101110000010101101101101101001011111100110101011001011000011011111101111000111101000110001110010000010111001110001100111001111111100000100001011010100101101010010101011100100110001010010100111100100111010100100110010100001010001000101011111101001110110010101000101101001110011010100100110011110011010111001100010010000001000010111111100110011001101100001010110010100001100111110111010001100110001010100011111011001110010111101101010001000100111001110111101001011001000100001100111100110011111110001011010100111000001111100001001111000000111110010111110100111010101111101000011101110011010001110--------------------- +010100001101010011010001011101100100110000111001100010111101011100100100001100101110000000000110011000100110110101000110001101011100111010101100001001111001110101011010001110111100010111010101101011001101010111011110011001100010110000101110011010100011011100011110011101110000110100000000101000100100000111010011001010100000100010110010001010111000000000011001111110110010100110010100100001001111101110110011101000100100001111010000111100000010011001101100010101010011100100110001001110001001100100101100101110010111001100001000110100011111101110101101001101111001100111110011100101011011001010101000010000100001000000010111110100010110111111100000000001000000100111111011011001111010010111001010000101011101110000110001001110000010110110101110000011100110010001101001000110100000111000111010101011000101100100011011010111101110000001110011010110111011001011100100110110110110101111100000111000010110011001011011111010000011011100011001101101000000101110111101111101001000111100110101101000001001111111111011010001011010111101011101100101010001010101010101100010001000011011100001100001110001110011101111110110010000010111010000011001000010011100010100101000000101010111101111011000011111011100011001101001010011101100101001110000101101101110000000011101110111111011111110110101111110101100101111111011111111111000000100001100110100010010001110110101101101001010000110000100010000011011100111111001001111001110101111010100110101011101010011101100011111010000101011011001101101010011101011111010110011000111001011101111000011001011011000001110100010100111111001000001010101110000101111001011011101101001011101110100110011011001001011110000110010001011110011011100001111000110100110110000101011101010010001100111101000101000010110101000010011111011101111111100000000010110010001011011110001101111101111000101101110110000001111010101000110000001011100101011111010010000000100001011100101101000000111011000000010111001100010101010100101111000010111011111110110010001111111010000011010001011100101011100100100110101000000111100110111011111100111110110010010111100000100001000011001011100100101000101111001001010101011101101110111010110100000010100101010111111001100000100001110100101111000011110100101110010101001111111110001111001111100000101110110111101101000111101001100101011111001010110001101011000011000000101101000100011001001000100101101010110011100111011011000110000011101110011001101000010100000001010001101001100011110001010010101111101010011001011011111100011110000010010001110010000101001000000001010101101111011100100100100010110101010101010100000001010001010100000010010001011101111000111011001011100100101001010011001011101101001111101010011000100111111010110001100010010110001100011000111001110101101000001111010010011000100101000111100001101010001111111110110010110101000001101110001110010101101110001111100001101001100000011110000010000100001100000111101000110101000001101101101110111011010010001001101101111010001001010011110101111000111011011000011000011001000001111001000111110111010011011111001100000100010010010000010101011111101011100011111110101000010111000001010011001001100101001100111111011010111000010100001011010011010001100100101101101110011110010010110001010100111110011111111001111100011100010000000010010000000010011101011111111000011101010001011001001110000111110101010010011111001011000000001101000001001111011111101101001001010111100110011001000101111111101101001001000001101011001000101110001011001111011001011001011000000101011000000110101101010000101000111000000100010000011100001100011111111101010110001011110101110011001010101000100100101100011111100001110000001000110010101100110001101001001001001010110000001111000100000001011110111110100001011111010100011010001011001100010000011110001000100100111001101111111011010100000110111101011100101101100001010110001101110011010001001000010000110011111100110101100110101111110011100000111010100111101001001011010101100110010011000010011000001010001001001010101011000100111111110111011101011100011000111000101001101000101001000000011010100100101001101111111010001101011001010000001101111010011001110111011011001110000000000000110100011011001010001111111101001000000110011001011111100111111101110101011100101010001110101111000000101010000010001110011010001011011100110000101100011110100101001011011000000010011001010010011111011000000110110010001101001110100011001001100101011000011101110100010010010000101100110101001010000110010000100011101010101110011100010010011010000101000000000011010010010110101100101110001010001101100001100101011110101111100001000101001100110110010001000000100110101000110110101111111111110001011010110011010000111010110100101011010100000001101001011011011101001000010111000111100101100001000010011100110100100111110011110101011100010101000000110111101001110110101010011111001111100001000101100101101111011001110100111101111101110000110011000110011011111001110000100000011000110110100011101010110001010101101100010010010111011000101011000001000100110011010010101010101100110111110111011000010101100011100001110001101001111011110000110101100110001101110100010101110110011100110100011000000010001100010101011101010100110010010101010000000001010010000100011111110000010100001010000011000000010100001110000110010001011011111001111111101100000011111110010000101100000100100101100111101001110011111000011010110000001000101110001110011110001001101001111001111000011010000000000110000101100100110010100110011011000001111101100100111011010011000010010100111100011100101111000011000010011110111011111010011111000011111010000100101010111111111111101110111010011100101010110101100010110110001101110111011101111010111011111101101001010011100101100010111011000010100011011010001110110011101000110101001110110001111101111101001111111100000011000001101000001111111010100101110001011011000110110101010001100110100110011100110011110101000011010100001100100000001101010001110010111110000011010111011100111111011111000000010111000100101110000011000001000100111011011001010001100011110001101001111010100011100000101011101011101110010010001101011000011111100010011010111110101110100101001100010000111010011111100111100101000101000101111111110011101000111000100101011001011011101011001001000101010010111011000111001101100101111101111010011011011100111110000110000111011011001010100110000010110000100110010100110010010000111010011110--------------------- +101011110010010111111011001011010101010101110100000000100010001111111110101010001101111001001000111111001101110001101111011100111110101000010000100001100111000001101111110111111011110010000101100111110000001011001001001110001111010100110001000110100100111000111010100001101000010111100010010101000110010100100111101001101101001000101101110001110100001110111101011010110110101001100000111110110001000100101111011110100110001010111010111100110001100001010110101100001000111011001000110111110101001000011101111010101101100000101001001110010010101011001100110000110110000100111000100011010011101100000110001000001010001101110001100010100011101110010011100010010010011101001100111011001100101001111100000100101101001110011111111010011111111011101101000101010111100011100110111011011011011101001010011001010001001011010110100100011100100111001010010100001011111000000110110011100010100000101011110011110011001011111111101011111101111011000100110111000000110011011000001111111100100010101010001110010110001100010000101101000101000100100001110101000000011101100111011111001111101111111101000101010011101111011000010001011101011111101110110100101010100001000000001111010010001001101000101001110111011000010101000001010101111011010101100110101011101110010010100010110001011110000100001011011011001011100110111010001011010111101010011110100110000000001011011110011010010111111001000001111001010000111111011111010100101101111101110111101000110111010110101010101000010110010001010100100000000001010011000110100000011010100101000000011110011111110010011010000110101001001111111110111000110110111111010000011110010011010100101111110100111001100101001111001011100101111011100101100111011000100110000110101100110010110101000101101110000010111111000001111101101001011110001100111011000111001111011011100111011011001010110000010101001011000110110011111011011100100101010010000110000010100001101010000010101100111110110010111110001011100010100001101001110101101100111110010010000110001000011100101100111000100010011111001001100011001000110010001011000101100111100110001100001011001011011010110011001010110010110001001101111111001100010101001011000000110000010101111110100101001111011011110001111010111000000010000010101010100011101111101100100010111000011010001000100000101011110010010000101100101010110100110100001111010100000100101111011010100111010000011011010001000101101111010000011111011011000010101000000001111001101100110110110110011110100111001101100111110000101100001110101010100110011001001111011101001010011000111111011111001100001010001110011110111100001110100101110001000000101011001010011001011101110010001010110101101101101000101110101000101110000011100101010011100001110000000001000010101101001101001010101100110001100101111000000110111001100010010010100000100010001011101101000001000101000100101011100111001110010001111111000100100001011011010010000010001001100001111110100000001000010110100011101000000100010101111011100010100010111110110111111101011011100110010001000100111001100111001100110010000110000000110000100001010101111011100111111010111010110011011011010011101101011011000000000111111110101011000001010010000001111100000110111001100100010101101101100110001100010100000001001110001001100101011110100000001110011010000111000010111100010010001110000010110110110101010110111001010010101100010000101001110111111110000010011111000011100110110010000010011110100110110011100100011001010001010111011001000100011011101111000000101001111010110110011011100000010100101000100110111001010100110110000000000110010100101100101010101111110110011011100110100101110101101110010111110100110010011100000011100011010011001011110010001001111100110111101101110110110000111010100100010011111001110010110101010101011000011101001100011111100010001101110011110111001010100000101011010000101010010000111011011101011101100110100001011000000001000110110000010111000100111011100011011000010101101111000011011101100011100100011010101001011110111100101101000000001111001110011010110001110100100111111000110011101110010110010101001011111001101101110101110010001010011001111010110110011001100101001110110111101110011011111000111100100100011011111011011110010111111011111101100010001010010011011110111111100100111000000001001101111000011111001010101101000011110101100100011000100110011111010101001000001000000111101001000011110011101001100100011000101001011011011011101000000101000101111110000001101100000011110001001101111000000001001111100101000110010001101001101100100101110101001001101001001011010101110010110110010000110010111011010100100010101001011000110001111000011111010011011100110110101001001000101010011110011000110111101101011110110110110100000101111010011011110111110101110010111010000101110000010111111001010000111101101100011011110011100110001010010101110111011100001111010101110010000110110110001101101111010111011010101111001101101100111110001111110001100100001000010011001110001100110010110100010100101011000101110011010101100100110001011000000100010111111101100000110111101000111001011011001110011110111001111011110111101111100111101001110111010100100100110100110101110011101111101101000011010101000011100010010000110001110010101000011000110000111010100110111001110001010000011000010101011101111101101001000111101100010110110001101101111100001001001111010111101010110000110100100010110110111000111111111001001011001101010011100101000001110000111100010100111100001010111000111000101100101001011101001100000010110100001001111010101001101111001010010110111110010100111000110101011101110011011101110010010010101011010000010000101110010110100110000000010110110010011100010010101001011111100001110001000000100010000011010111101111101111010110000101111110010100101100000001010001000110101000100110010000011001110100101011101011100111111110100010111101111101010001001000101101101010010001100110011101100101000111001010111011000100101111001000110011100001001000101110100011001111110101100001001011100111001001000000101000101101111111001001010011100000000011110001011001101000011000100010111011110001111000100000111101010110111111100000111000000101100000000101100111011111010010011001011011100101110111001110100111010101000100101110110000001000110011010111000011101011100101100000100001111101110100000111010001000010000100110100010000011101011101101111010100010000011100110000010110101000010110001001001100110000111000011101101110110--------------------- +000010100010000011110100001100011001110001101010011000011101010100110001111011100001000000110011101011111011001110010001010100100011110001110001110000110001101000101110100100100001010110001100100111000000001011000011100000111110000101011110110101001001010001001000100000111011111100000110010111110000101010001010000111010001011111101110110001000100101111111011101100101111010010100011010001111111001011000110010010001110011110110110101100010011000010011100111100001000010000101101101101001010000101110110010111111010101000001001010110000011101101110011001010000101011001111100110010001001101001001011111100011111100110000001100010001100011010001101110100100001101110110011011000010100100001110011010101110110110101100111101110001010100010110010111000001001011111011111010000101000001001110100110110000110010010001100001110101101000101100110100011111111111101000011110000011011011100001101111001011100110110011011001000101000001101101101111100000001011010000101111110011001101100011011100000100010010010110111101000011101000100111000001011111111110110101000100110100111011010111101001100011111001000010000111010101000110010110011001001100100011100100000110101101100011011011110001111011111010011000111000100000010011010000010011100011110000010010111101110100111101010111011001101010100000010100100111111001100101100000101110110100101001110111100100010100101100111111111000001010101101111010000011011100000001000010100101111001011011100000101000001111110011101101100101111000011101000001011011110111100010010111110101100000100111111001000000111000001000100001010001111111110010110001010010110001111001111101010111011111110100011100110011111110011000001111110001011000011010100010110001000001111100011111100010010100000100001010100110111001010000101100101001111011001100101000110111101000010011000000100101011010010111110011001011101010101010110111100101100011011100010010010111010010100100011011000110011100110111111000100100110011101001111000110001100110000011001010111111010010000110010100011011001000001011100100001110100100100110100110110110100101010100111010100001011000000011100110111000000100010110011101010101010010011011001101001100101100000110111101010000111101010001010011010001111110000010101010001110011101000011011111101101001111100100000010100101101011100011010000101101001101110011110001101111100001011010000101011110110111110101000010010110000001001001000000100011011011011110011001000001111011101100001000000011000111110001110010011011111011001101101100001010101000011000110111100001001011010100001010000000110100000001101011000110001111110011010111000011111110110110010100000001011110001011111010111110101100001010001001110111010101101001001011111100110111101100101011101111110110100101010101001111100101001000011100110110010011101000100100101100011111011110001101010010101010011000111110010100110101110110111101100101010010110011100110011111010111101101011011100011101001101100010100000100010111010000110110101110001001100101001101000111111110101010101001100000100110010011011010100001101000100011000100011111100101001100101110111010110011010110111000001001100101000100110010110000111100000110010101001111110110111000000011010100010010001011011111110111101100010011001000001010011110001010111110001010110001101001110110001011001010011110110101101111001000101111110100001111110010001101110101111000111011000100100100011110011111100101111100010001111010000011000000101011101011011001110101000000011100010011101100011011111010110100101110011010110010100101010111011010000101001000010011010010000101111011000111101100001001011001011101110110111111100010101110111011111000100101101011111110011011001111111010100110001101000010100011001011010010001101110100111100001011011000100111001000001010000000111110010001001001110110100000100010110101011101001100111111000101010111011011110000111101011001011100111110011010000100000001100010001010110001101100111000101111110001111110010110011001101111010000100010101010011100110001101101101010001101010001010001100101101010011111001001011000111011001010000010101010010101101011010010110011011111000101110100111111011111101001001110010011011111001110110010001010000101001111000110000100100011001000110011011100111000000111101100010011010000110110110011010011010000110100110110011001110001000111011011011011110001011011101110101111001101001000001001110010100010000010001001001111100100000110100111001001110100001000001111101111011011101100011000000110010001010110100110010001011010110101011111111010011011011001011100010011100111110110110010011111001010101000000101010000001011110000010111001110101000010110101011110011101101110001110101010101101111101011101100010111000010010001100001001001001001011010110100001010001011100100001001011011010101100011111000000111011010111110101101010010010010110100111000101100000011100110110011011111101110110000110111000000001100001100010110011011101100100111111001011100010110101101000111111101001010100000010111000111110010111011100011111001110001110000110001001101010110010110000101001110000110111011011000001000111100001000100101110011110110100100010100001111110001000010100111101100101101101001010000011101010010101001010101101100010100011101111011100111101001111001010000000101011000011111100010010010110000100100111001100001011111100101011010110101111000100001011001110000001010110100000111011110101010111000100011111011100100011001101001011001000010101010000100100001001001110101100011111011111101001110011001100011010100011100000100110000101010100000100111010001011010101100110110100110111010011101011111111001000110100000010001010100010001111110001001110001100011010010111110111110011011111011000111000010001100100111101000100001100000100001000111101010100100000010010010101101000011111010100110001110011100110111110110010101110110010111111111001111111010110000011111100101100001110100000001001110001101000010110011101001001110010000011110110010101001001100100000110000001011111000110000010100011101000100010011101010110110100101000001000101011100011110010101011101000000000100000001000011101011011111110011110101110101000111010100111100010011001011001100000110000001110001111001100011011001001111101100010001100010111100001100110001111011000001101010010101111001011100000000101011000100101110100111001100011110101010011110000000110001011000010110011111101101011010101111101001010010100011001110110101000101110101101011--------------------- +100100001001110011101001010001101000010000010001001010001011010110010010000011111110010000101001111111111011010101101100011011110101010001110110101110111111111111110101101101100111011110001101101010111010000011101011011111011001100011101010011111000001111011101101101011001101010110011111001011011010011010011100001011110110110010010101011101011111100011110000011101110001010000011000000001111110110000001100100001001010000010111100001101011000001111110001110001111110011010000111001110010001000000100100011000001111100011101010001110111011110010101100010010111100101110111101101110110010100000101100100001110110111010111010001100110001101111010001000000000101001100110100011011110010000100000000110010100111111010111010001101000111000000100110110011010101111001011010010011100110011011100100000011110001111101111011011000100111000011111100010001000111101000101011101101010110000001101010100000010011111111001000011101001011111010011101100010000110000000000101111010011100010001011001100010011101001010010111010110110110001000101110000101110101000010111011001111110010011010101101100110001011111100010000100111101010111110100001100110111100111110101010110101110110001101111111000010010010001011000100000000011010000000011011101110110111110110110111111110001000010011000110101011110011000100010000001001100101110011100111011101010011101010010010110111001001000100100001111110010110110000001101111100111001111100111010100101011110001001011110011010110011001100001010011001001010001100101001101001011111110001010000101110011101010000110000011101010100011011001101000010110100111100011110000001001101010000110111000010110110011110010101110101110101111110101000101100110011010010011111000000111110010101100111000010000101011010011011001111000011101010111101011100111010101010101111101100110111011000100101000010111100111000100100000110010000000011010010011010100100111011100010110000000101001100010011110110000011110010110111100100111111101101110111000110111100000001001000100100011110111001000110110000000100001010110100101111111111111101011001010101110001110000000001101010100001100111001101010111011111000110111001001010101010011100001111011111000111001010011101011000111100100001000010000000011110110010110000011100110111111110101101100010011000001000101100111011001110011110110100110100111100010000111110100010110001111000010110101001100110111100001000000011010111111110101001010100000011010000111001100101001101010000000100001101010010000100010010101110000100011010110101100101100001001111000101011111010011111001011000100001111010111010100010100000111001111101110111110111011010000101110100101110000010010010011000011010001000100101111100000001011010100011101101111110110011100111110000011000110000100101101010110011110001111001000001111110100010011111000011110100100001110110001110100011010101011111100111010110010010110011100100110110011110101001000011001001110100101011110110101110100001101000000111000110011001011010101100000010100000111100011000000001111010111000110000010011110100100011000101100111101101100101111110000110010100010000100111010101011100011110111000001010011011001110100011101001010101011111001100001101110000101000110011111000100101000011100100111110001010011101110011110100111011000001110010010110100100001011000010000111000111000111000110101111110100111100110111001000101100111010011101101100110000101100111100011101111100011011111100101101101101000011110110100010000011010000001110010010010001000010111110001001101010110111000000101011010111000011001000100011001111101011011001001001000111001001100010011101010100010000010001111111110101101001000011000010111101100010001111101101010000001101011010101000010010010111110110111110110011010000110001001011111010110010011110011100001010001000100011101100011110001010111100100000100100111010010100101011001010011000100101111101011110010101110001010101101001101111001110000000111010111011010011011000010111100000101111100100000100101011010001110100110000001000110111110111000011011100010100001101000100111011010110011010010001110110010010101000101100000110110000101000000010000100000100101101110011100101100011101111110111010010011010010100010100101010000100110110001001111010100011000001111110110110011110010000000101000011111000011111010001100000111100111001010001101110000111011001111010011111011100011011100100000100100011000111101000101011010101000001011000001010011101011100100101111010011000111110111011101100001001000001001000000100011101100110001101001011001110110100110000000111010111110101010110111010000010001111101011011001101000100111100011111010000010010010110000001010100010101101011100100000111100000111101000101101010010100100011001000010111100001111100000011101111000111001001001111010011101010000000111011010011110001000010101110000111111111101011001110001101110110110101110101000011001110111101110101110101111000101011111000001011110010010010011001001011111000110011011101010011010111110011011001111001011010011000011011101101100001111101001000100110101010111001000000001110011100001001110001011010011111111010110011100011111111111101010110101111101001010000100001000011000100001011110001010110010010101011000101010111011111011011010100100010010111000110101100100101110011100100110111000011000110011110010001011001000101101010101011111001000010101011100011101101011010110110001110111101100000111101110110010110001100001001100000010000011100001001000111100110011100111000010101011001110101000110010010110000011010000111110010111110000001000100101001010110001011010011100101111101011000000111101011111011011000001001110000100101101010110101011111001001000100111011111001001011000100100001101110000011111001101101011100001011001011000110110001011000010010010110111000110111010010011110101011011110010000100010001011010101100110000111001101110011110110110111110001010100100011110100000110110011100010100000101110010001101111010111110000110101111111110100011000101101010010111111001010111111010010001011110110100111101110100100100110100100111000011000110110100011101001000100101110101010101100111001110100010111101011111101100001100001110011111001101000001100110101101011100001010000010000010101001000001111111111010000001111110001010011011110100100001101000000101001001011011010110000000101011010011100010001000011010000010001101011110011011001110000010110000000001011010100111000110110110111000011001110011000011100001100000010--------------------- +101000000010011101010000001011010000001110111100101000101000110101110101101000000100111100000011110010000000111101011010010010111101001100110101000011000011001001000111100010010100100010100111111011110111101001101011000000000100100010111011001010110000011111010000111100011110001011111001010001100000001010111100011111011000110100011011001011011101010111110011000111111001110110001101101010010011001101001001110001100100100011101110101000110101000101101101111101111100010001000111111010010001101111111001111010100011110000101011011011111010100000010100110001010111000100110101010101011110000111110010101100111010110010110010110011010010110111011011100001010001011000010100001100110001000110111000101100100111011100100001011011100011010010100101001110001111000001100110101111100101000101000000001010110110000001101111011001110100011110101111111110100000001100100110001010101111010111010111110000100011110111101011010110010011010111110111000000000010011110000000010010000100100100010101011011010111111001000111100101001011100110100111000010001101010010000011010101111110000000101000000010101011111011111000010110001001111111100110011011010001001010011000000101100111001100001110111010100001110000101010001001000011000000000010110110110110100010100000011000000110110101001010000110110111001010101001011001110011001100010000101001110100111011110100101101111101111110011100001000111010101100001011010010101000011001100000101111111000001101100111000001000011010000001011100100001001010101101111110111001111100011101111100010111101110100100011000011000100011010111111000100111100111110000000110010101111101001110000011000011101010100111011011100011101011010011000010010100011010111010110000101111000001001110101010000010110111100101101011001010010000001100000011111101100001111100111101101011000010110011011011010011010111101001010100001100100100010011110101111000000111100011010000101001001101010111100001011111100111100111110110100100100011001101010110001000100001001000001101010110000101001001101111111110111010000001100010111000101010000001111101000100111001010111010011011000010011101101011111000011011011001101000100001111101100110010010001100101101111110111001110011101100010111110011000101000010010111000001011000010100101011001001101011011100010110110011100000010000010111011110001010001111111110100010100001111010111110111011000000000111010101000100010101010010100000000001111100111011110100101100011001001001000001100110101101010101101011011000010101010001011110000111101010101101011110000010011100111101011110101111110011010010011111011101111110001000110110110000001110011110001010110000111111011100001110111011111001100011010010000011000011010011101101101111011100001001111110001100011111111101101010010111011001011000110100010010000100010001110110001011100110001010011001010000001011011000100011010100000010100100110010111111001001110000000100110001101110011111001111001010111000010011111011111110010110010111010101100001001000110111100100100111001011101100001100010010111110110100101110100100110110001110000110101110011111101001001000100101001011011111000101110100001011000010011000111001001101001100010101111110110010110000000111001110011001000110110111011011001111000001100100110111100110011111010111111111110000001000100001010110100001101101010100100101100001011111010001010101101111011111010000000010001011001100000001111110100000101111001000001010010100110111011011100011101111010100101001001000011100110101111001000011001010000111100111100010101111010001011010101101010100011101001000111011010100010101010101110100001110000100110011000101000110110101000001001100011110100110110001001010100110010001000000000011001100110010011110101101111110111001101101000100001101000111000111101110011110001101100100101000010101010101101001101010000111010011001101010101010100011111100000000101010101111111110000010110011010101010010001011111111101001101101011111001011100100010111100010100110010101110010011010111000001111100001000011000101101011010110001110010001001111010011101010101101110000000000000111110101111010010101011000000011010100101110111110111010110100100101110110100100011101011100111111000010101010110111001001000100010010000010010110001101010111010111010010000101011100111110011101011011100001000101111001100111111010110001000001100111100111010100010001111111001001000111110110010011011100100010011110100010100100001010001111010111000111010100110010001011111001011001011011100001101100000000000110110111111001011001011101001110001010101111000011101010110011011110110101011000010011101110001000011100111011111000001110101010010110111101010010110010011110001010011100100110000011001100010101010111011101110100101011101101111101001000010001100110110100001111100110111101010100100001101110111101100111000010110111010001011101010110101100011110010111001000011101000111100100010010000001110011011101011001100111100100010111001011001010010100111000111000011001100011011100110101101101010000010010011111110100101011111000010101100110111001001111101111010001010001100100011001111100010110010010000000010101101110010100100111111001111101001000001111100110111010001000000001101001100111110110001010010010001110100010010101010110010011110001101100011001001110001000000001101111100110000111000100101101001101111000011001011011100010101001101111010011111101001000110000100001000010110000111010101110011000011101100111001111100110101000000001100110110010000101101010100011011001011111000111011101001110010011000000001011001111100010100011001110001110101010010010000010110010111110111000111011000100111100011111011011100110111111100001011101111101101111011110011111111010100111101000001011000100111001000110100101011101001110110000101101100111100101110111101110111100010101100001000110101010101011001000110100001011010100011010111010010110101110000100000110000111011100100010111010010100000010011010000000001110011000001110110000111011100000101111111110010011100000110000000001100100000000110010001000001111000001101100010111011100101010001111101001101001001010100001111101111010111011100010101000000001100101001111101100001000000110110100011101010010001010110110111000001111001110001000001000101111100011100010111001010111100100111110111101010011101111110110010111110010000110000010001110101100001111011001001011110100000010111011000111001000110010111110110111101101100101010111100110111011100000111111011110010101--------------------- +ls288cwds +000011100101110100010010101011111110100011010111100101100110000110111011110110111000000000101000110100000000101000100111001100001110101000000000000011001011111101011110011110100010110110010111100001010011010010010010111110101011111101000011101010001110010100110111111110111100000100100100010001100010101000000100101001110111001110011101001000100000110110111001001010100011010110010100100100001101101011110110000001000111100011100101011111011000001101000100000001110110010111011010011010010011101111010010110000001010111001101100100011000101101011000000100011110010110110001011101111110100001111100000000101000111001100001111110100010110010000100101110010110011111001000110001001111100101111100000111110000100010001010001111000001110110010110101101011111011010011101001001010010100100111001000011001000000111100001011110101011110001010101101001001011100000111011000000101100110001011011100000100100110011110010100011110100101001101100101000001101111101001101110010111000010110101000010011010101101101100110110111010101111010100011110100111010101001100100010001101010101000110010000000101100111011100001010100110001100101100111000000011011000011111111001011011101000011101000000111000011111011001111010001100110100010110001101111010110100001000101011001111111011101011011110110110001101011110110000001110010011000000100101001000100110000001000010100010010101000111111001010010011010100000000010001111101000000000001000000010001001111111100101001101011110010111010100011110111001101011110000110011000011000101000101011111100011110101011011111100011110100011000100101110011010100011010001001011110001010100010100110011100010111000111010101101010011100000011100000100100001100011101011011110111111011100101101100101101000101000011011011011010111101110000101101000110000110101001111110000000110001010010101110111100011101111101101000110100010101110110100010010011101101100101101000111100111011001010110111110011101010010001010010110010000010000100110111011100010000001000001010100010110100001101010100100010110111001110111110011101111100100101000111000001010001011111100001110111010011000111000110101011100001000000100000101101111110110011010000011010010010111111111100100101010011111011111101000100010100111000101100000100011101100111010001100000110111100000101011011100001101100000011110110101011001000111101001101010001001100010000001100010001000111101001010110000111011010010010101011001101000001001011001011100010101000101001111111001000000010011100000110000110011001000000100111010011011101001011100110001100100011000011010101100100101011010100111101111001010000001110100101101110110011010110011000010100010011010000101100010100000010111111010000001011101101111001001000100001000110001101010011011011010011111100100100010101101100101011100011111001110101011000100101001000111000001001101110011111010000000100101000011000101101111010100010110100001101110110000001110010110000001101110110100110100000100111111110100000011111101001011000001111000010100010000000011010000111010100101101100110110011110000110001111000100000011011101111000101111011000101110111100000100110110001000101111000000001110000010010101011011110011010001001111000001110101111111111010010101110100001001000101010000010011100001101001001111101001100000010001100100001000101000100001110010011110101010000000000100111100111011010110110010001001010101000111110010101000101110001001001111001001101111010011010000111001011110100011110011101111010001000110101000011010100000111010011001000101101110101110111001010010010110001110001101111001110001110001111001101011100001001111001000100111010010110100011111111011100011011001100101101101101110001101111100000100100111001001000100000011100000110011101100011111110001001001011100101000010110111101010000000100001010000000110011110001110001100000010101101011110010101100001100010111101011100110101110111100011000010101110101011110101111110111000011100011001010000100010101100111100101011011101101000111110110101001001100110011010010110010100000110110111111111100100100110000101101110001010010111000010111010101111001101100011010010010001001111110011100001101011100010111010101100000100001101000101001000100101101101101111111000011111101010111100111001101100010100111001001101011100111000011011101100000111011001101000001010010111011111100101101101010010010001000011100101111011101110100110101110111011110011010010100010111111011000000100101110010000000111110001100100111001111101101010111001000100110000011010111000001001011111101011110111101101010001110010001111100011110011011001010110000000110100101011000110001000001001101100101001011100010101101100100010011001110100001100111000101001110000110111101111011101001000001111011000101101001011100010001101011011011101101101110110000011111001011110101111101111111111000010010111011101111110011001000000000001000100001000110110001111001000110110101111100100100010101111111111001100000000011110001111011000000011011001011000001001001100100111010011010100001100101110001010110101110011101000100010101000111111101001010001011101010001000111111110111001011010000011100000101110111010011111001101010000010110011010111110110100101111100111100010000111011100001101011010011101110010000110000001100010001010010000011101110110111111101011001111110101111000110000000011110101101100000111100000101111011000101111111001111000010101011110111011010001011111110011101100101001111110000010011001110011111011010011101001101100010000000010111011111001101101100100101111001010101011111001011111001010011110100101101110110100010001100000011101011000100101101100001011000010001000011010010101011001001001101001011011111111000010110010100011001011100110010110011011010000100001100000011011010111110100101010110001010010000100110011110100110000101101011111011111100010010100111000111011101111001010111100110---------------------010101001010000101100000000010110100001101110010001000000100011111011010110011110011000011011111010110101101110110101001111100000010110000001010000100001001011111100000011000011011100000101000101101110101010100000000100101001101101100110101011111111110010011110001001001010010111101111101101010110011110001010011000001011100011101100011100111011100000000010010101000101011011101111001100100110000000011101101110110110011101100110011001100101100111001101100001111100100000110001100001010100101111100001010001110010101110000001101001001011010111010101111111100100011011110011001101011011100100100010010110010111101010010100110111110000101010101110100000101101001011111010001100111010000010011100110111010000100111011100000001011000011101010110111000110100000101011101110101011010010011111111110110001011001101001011111111000110111001000111101011110010100110110011000110000101001000000100000100001011110111101001100111101011000101100001011101110000000010000100010010000010010001010000100111101011101010011000010011001000011111111110001010011001000100010010011000001001110111101100000111111010010010000011111000101011111001010001111010101100100010110111100100010111110000010010010101101101001010111101111110011000010000001101000111011100010000101011010010100001100010000011100001001000111011010110010100001011001100111111110101111010101101011011101110010010010010101110001000111011011110010000001100100000100111110111111000110000000111110100011001010110101100000101000101000011011000001010101100010111001100110111011001010110010100011100001001110011010010001110000100110000010101010001011100111100011101001110011001111001101101010111011101110111111010101001010111000111110000110111000001100001101101010110011101100100010000101011010101001111100011000100111011010101111001001100110110110100000110010110111100000111010110000110101110100110101111100010000010111000110101110011000111000111001000101011100110001111011000011111000001001001010011000111100111001000011010111111011110000101010001010010011001011111001001100101011001001111001001011100111011101010110100110100000101001000011001110011000101100111010001010111110111001011001010011010100111001001010101101111110010100000010011111000100000001110011100110111110101110101000100111111000010101110000110100100100010100111100100110000101100001101000000000111000101101110101111100011110101010011111100100100110000011110110011001111001110000010011011000011011011110011101100111101011010111001011100000000001001100111100110101000001000010100001001110101110111001010000100100000111011110110010101010101011110100001101010010110000011100000010010110010111110000001110111100101001101010011101101000110110101010111101110001101001011111001101001011110001110001101000010110011001010010000100110001011001101001101000111110001110011000000110111011100101101100110000011000000111001101101010010100101010110010111100000100110011110101000111011001010111111111100001000101001000001010101000001000101100001000100000111010010101000111111011010100011000010110001101100110011010010111111110001111110001111100100100110101111010111110100101100100100001010111111100111010100000001001011101110101101000000000111101011000010110100010101111101100011001000000101110011010000001011011000010001100110000000111001100001011111111010110010111011111100101000010100101101100001111001010101100111001000110111100010110101000111010010110010000111011010100101010111110111100010101101011010011010000100110110110111000011010001000010100100111111111110111100110100100001000100100100100010011111101001001010010011011100111111001110001100110010111001100000010011010111100101101101011010011100111100010110001011111100101001001111001010101111011111000101011001010110110110000011101001100111110001100101011101101001101101100100110000101110111001101000111111100011100010110010011101111100100011010010001110001011111101011110011111110111010010110011010110110011101001110100001011001010110011010010110110110101110011100110111000010111101011001000100101011011010110100010100010111000110101010011001111101011110111011111000111010010110000101111110010010101010101010101010110111111001011110010001111100001100111010011001101101110000101000010000101100100100110010000010100100010000010101001110011100010001001100100010010110101110000111110001011110000001100100100010010010101000110000000010000100000111101001111101000111001101000100110101111111110011111000110111111101110011100110001111100110010000010010011101011100100000111110010110010110100100110101010100111100101100011111110111111100101110010110011011001000101100100010011100111011011110101010001011011011101001011100111000111001101100011101000111001101110111111011101000010110110111110010000011101001110000110101101001101000101000000111101111110010010001001111011011101111011110010100100011110111111110000101111000001010101100100100110001001111110011010011000001001001010111010100000100110001100010111100011110100110001001001000110101001100101100111101010011000101101011011100101111000011001000101101110011100111101110111101111011100001011100010001101111100101001001000011110000001000110110101011101001101111001000011101001101001010000100010001001111011101101001011010000111100100001110000001011000010011011110100110110110101011111000010111111111001000000100001001101100110111101011100101010001001001111100001101111000111110010010010010111001001110100101111001100110101010111100011110000010000100001001010101101000100001011100101111101010011010011001100100000001101100101111111110101010001010111001001000010101111110100100111110100001000111100010101010010111100110101111011101111010111110011110010011011010011010101110011011001101011001011111101100010110101101111110100011100001001111011100001111011111110110100010101010110000111101110111100011001111101101100110010011100001100100111100101001001101001000010111111110000100110000001110111011000011000100010011011010111100110011000100101000111000111011111010000110100101101010000110010011100011111011011011010010011101110110101011111011010000011100101001001101011100110011001000010110111100000011010000111111011011111101110010100111111001011011111010111000101001011100101010101101010000110101001101100011010110010100100100100110011000011110100011010010000110100010000000010101110000101010011101000100111111110010110101110110100101111011011001000101001010001110011100010110110000010111001100101100111110101100011011101100001010011010111000100000110100000110111110101100100100110110000111110000100011111011101101000101111101110001100000011100000001011001100101010110000011101111010000101111011100011101111100111111111010010111110001010110000100110001001001001100011010010110000010010100110000110001011100011111011111000000000010111001101101011001101011000000000110101100110111001000110000011010101010001011000000001010001110100001100011110010101000101101010001101010100010011111110001110010111110110010111001000011101111101011000110010110010000101101110100101111111001100110000010110110011100001001001110001101010111101001111111000101110110011001110111111011000010100111010010010001000101000101011001011011001001011110111100010011001110000000100010001100111011011110010010001001100111111110011000000010011000111100001101011101100000011101000110011000111010111010100111110101010011110110111110101011011111110110111100101001010110111111000001010011010110010101001111101001110000101010001111111110111111001101111100111100100100100111010101110100010100001100011110100001011011111101001111010110001011011111111100101110110011101000100010101101110100001010000110000110000000101100101001111111001010110010110110000111100011111000100010010001100100011010010001101011000100000101010101110110000101011100000111000101011110111111100000101101101101101101110000111011100101000011101111011100000101101010101100101110001001000100111100111101010001111000001000111101010001001111010011000000000001000111111000000111100001010010011011010100000001111111010101000000011110000101000110111000100111100100110110010101000111110010101011110010001100101011011111110000000001110011101101010011101100010000010110100000111011111111111010100100100110110110011011011101010101011101010001001110100011110101111001101110011111101110011001111001011010101000010011001001110010011001111000001001001011110101100010101000010010111010100000111010111110110011110001011000100000100101111111100101001001111101111011010000101010001000011001111001111101101001111001010011111011000001111100011010010001000110100010111011001001101001010001111111001101000011111001111001101001010100101101000101011011110010001101001111100011010111111100010101000000110000001011001101011001100101110011010110110110000011011110011111111111111001111000100110000011000110001000100100110111110010010111010101111100000011011001011010010010100001011110001001011111110001110111001111001111011100011000110100110110010001001101101010100000110000010100100111001000001011111111110100001100101010010110111101110110001000111100111010011000000000010111110001110111111001110111100110010000000000100100000001101001110010111011110110001100111011001001111111111001111110011001011000101111001111100000011101011111000001010011110000100101010000111011010001011001101101001110010010011010011011111011111000111110000111101101110001000000001011001011011000111001011100000011000010101101110110100110110000100001010010111001111101111000010111000001110000001011111010100000010100000001100111011101110010011000101010110010011100000001101110000000101010001110010000100100101001110011010010100111100011001011111110111011111001111111000011110000100001100100011010101000111101100011000000000010110111110101111101000110111000001010011001100110011101001010101101111010010110100010011000100101011100110010111110001110100010010000000000011011101000111001000100011000110010101100101101101000101111111110000110001000100100100111101111110100110111011010000000000101011111010111000111110011000011010101000010011101010000000100111001000000100010111011110001001100001101101101000011010010000110100001110101101010100000000100100000110101100010011100001011100011100101100101111101110101111101110111100101101111010111111000000100000101111010010110011011001000111011100011101010001010110001100101110001101000011011111011110010010100110001000101000101011011011101101011001000010001111001100101010010001010110100100110110100000011111000011101000001001010010010010111010001000110010101011010001111000011110101001010000001111111010101101010001100110000001010111111101001001011101001000100111000010001001010010110110011100101001001011001101101001100001001000011111010111011011000111010011011110000000101110000010001011001000010100010101101011100101001000111010001101001010101101101111100101100000111000011011000000010000010100000101000100010111110011111111011001010010110001100000000011101010111001011101111001110100010001110110011001101001111000000100011101011110110011101011100000100111111100101100101011011100100110000100001110011100101000111110010010100001100010111000100000111110000001010011110101011011100111100101111111000011000010010110010010101100101011110001010111010101111011100010010101111010101001000000010010110001011100100111000001100100010010011100010110011111111101101000000111000000111111101111000011100110001100111100110110111111111100010100100111000000011100111001011000001101100010100010101111011000001001101100110011110101001010111101011110000010000110101010111010001011100110101111101011101010101100001100100110010100100000100100100101110010011100001011110100010011010001100000101000100111011001011101111001100001011111000001001000010110010010100011111111110000011000101111111110001101110111111010011011101100100100001000001011010100011010110111101011100111011011110001101001111010010010001101000011110100001000000100101100010100111111111000100111111000010010101001111011011100011011010001111011101100001000011101011000010110011011001011110000000010101000101001100000100111101110100000000111011100111111111000101000101111111101111011111100101000000110011111011110110011011000100011000111011101110110000100000111011101000001100011000010011100111110110001001010000100000100100011111101100000000100101011100011011000001101010101000110011111101000010000100011101001101101011001111111011000110011000011110110100000011010000101010000011110000010000111100101100100001101110110000010001010100000101000001000110100010000101001011011011100000010000011000110010111000110111100101111111101110001101110111001001110110100100011000100001101100001011001000111010111100100011101011010001010101011111111100011000010010010110011101110000011000001111001110101100010101001000011000100001100010011011001000111111101001100010000001001111010011000000010001111111101010011110001011000000101101011110001001100100111010110011110000100111011111011001111000011110000100010101001001111101110010110101000010010010011100110001000010111111101101111011010010100011110010101001100100010011010011111111011010111010100111000011101000001000011111110110111100010110110000110111101000110001101101101001010000001001111000111100000011100110010011010011010100010100111000010101001111010111101100100001100110110101010100100001011100110101001000010000001110011101011011001001001100111001110001001111111011111101011011101100000001110010100100110010110001100010000000000011001111110111000111010111110010101011001000110010010010000111100000001011010100010100000011101111011011001010000010100000100110 +110101001100110101100101111001111100101111100000101010000110111100001001001011101011101100101001001000110001000011010010011100001010100000111100101000011101111000110000001000111000100111010000111011110100111001011011101001000110110000011000010011100000110100111110001101101010110000101000100111010000110100101101111110010100111011000011000001111001100000010111000000110101010101110101001011100100110101000000011100110111101010000111011111101101101100110111011110011011110111001110101111011111110101110001111111011100010110111111011101011100011011101000011001111100001111010010001010110000100011001011111001011000010110110010001010010110011110110101000011010111000111100001010110010100010111111011010000011000101001110101100000110011110101010011111101010010000010001101011001100100110001101111000100001110111100010110001111100101111110101101110111100110101110101101100111001000010101111011111011010011000000010111011001011000101101001100000101111100110110100100001111110110010001101100001110011001010001000101000011100110001101110011010000110000110110000101100110110000001010011000110100000000101000011010100101111100110011010011000101111101010000110110100110011101110100110000001101111011000011000010101100000100011000011011010011011101100000101000111101011110010110011110001110111110110001011100101011010011100001011010110001011000110110011001111001101000110011111010001010001000101111001101100101101101101000011001001100000111111111110110111001100101110010011101011001001011011011101101011001100111000111110101111001011101000110010111011111110111011110001001111100100110011001001101011110101110011001001000000111010100000001011001010110100010100110101001001100111110000100101110000110011110101011110011000011111010101100010110000101011100111110011001110000010001111010111011010011110000100100101101111111010011010010000110111011000110010001101001111011000011110100011111000100101000011110001111111101101001110011000100111101100001000000100000111000100010110000111111000101011101001101001100011011101010001110111111010111100100111100010110111111001100010101110101100010111000101010101010110100101010101011010010000110110110101010000111101100101100111110011100010010111100111110101110100011001100011001000000000001101101010011001111100011011110111111001000110101001111001111111101100101011111110000001011101111001110100100101110000001100000101101110001010111111101101001111101010100110100000001011001110001011001010000000101110001001110100100101101000000100011101010111111000000100110101110010100000010001110010100000000110101011001000100000011111000011001010000001011110001000011101010010111011100001111101110111110010000011111100010111001001001010011100010110101001001001011001001111011011101110011101000111000110001101100000001011111100110010101111100110010000101100110110011011100010001100110000001100101110000011010000010100010101011001100111101011111110101100010110100010100011010101001101101011111100000110101111101111011110001110010001000011000111010110010110100011101101110001100111011011111111011101101011011011011111001111100001101101001010101000110011111011000001111100000010100100111011101000011110001011001111101100110000010110001111010110101010100011011000111101101101000001011001110000110110011111011000011000000000101010110011100010001011100011011101001110001001011010110111001101011001110000001101001111110001010100110011110101000111100000010001110100110010110101011110110101011101111001111001000100010010001001110100111101100101101000100000010011110001110011110000000101110110111100110011000000001000010011011011111100101101110001100100011010111001001011011001001110101110110000100110111110011100100010011001010011000011111010010101001111101110110101000101100000011000101110110111010110010110110101111100010010011100010100011010111100010001110010101011011011100000000111101011011110011001010010101111010111010101001000110010001010110111010010101000101111100010110011101101010010101011110100111001001010110100110111100101011001010011110001011101101110000011111000100101010101000010100100100111000101110011011011001111101001101011110001011001011110001111110010000000110000000010010001001101001001100100101000001111111100100100101010110000000100100101110101011101000001110100101111010010010010000010101001100011001000100111111111100010111110000110101110100000001010101101011101101101010001011000011011001001101011100010100110011111101100101011111011000000011100000001000110111111000010111101101111010001010111111101010100100110111001101110111100110010000101110111101000101111001110101000000110010010011110011101011101001010110001011110001011010101101101001001000010101000010011000011000111110101000111000011011111110011111010100100001101011111101111111111001111001110100000111111010001100011001110000001101001101101101110011101010010001010000110000101011000000111000011111111010111001100101011100011010001100100111110111001110000000000101011011101011010111000011100010101010111001110101100000101001110001010011000000100100111000111110010100010000101111111100001010010100110110011100011001000101110111111001001000101111110000111010001110000100010001011101101101101110101000010010110100101001110110101000001010011100010000010011011000100110110111100010000111001100100100110010111101011111100110111000000001000010001000000100101110011111110110110101000110111100010010100011001111011101110010010101001100100001001100000101011110010010001001110100101101110100110110111010100011100100111110101110010000111101000110101011111111101101111010101010011100000101111001101000101100110001111110100111101110110110010101010101011000101100010000000011011101111011111000011001110100010010000111111001110110011110001100010010111001100101111011101001011110000010001000011001111100101001100000010111101001110100000001101110011110000010001001110---------------------000011011110111001001111010000101111001010110111011000010010000100010001111110111011101010011001010000000101110110111010011001100000001001101111110111001110100100101100000001100000001101111101001101101101001100100101111000110110000101101101010010001101011110010110000100101011111000110110001110110001100011111110001110000010100001101010111110010000111110110101110010101101011110000010110111010111110010111101010101111000010111010100110101110010111100111000101011000101110011101101010100100101110010011010110010010111101110001101011110110110100101010100100111101010110011001110101100010011001100111100100110111010010100010011010110001001100100010110111100011100001001101100001011101101100111010010110110100010101111100100000111101100100011011011010110100100100000101010101101001110010000101011100010010110000111000110010010101001111010001001000101111000100101011110110010111110101110101011011011000011100001111000010100000011100100000010101110110011100010100111011000110011011100001100011100011011100000110110011110010000010001110011000001010110001001101101010000100001010001101111001001101101011110010000001010010010010100011110011010010011101100110010010001110101001101000000000001110101101110000111100111101100010000011001110101011000101110001010000111110100000010111001000001010001000111110110011000111101011001111011001000101010010000100100110011000000100110000101000010110000100110110111010101011001111111010001010001110101000000001111101110010000001100001011001110001010110001000111010000001110000000001001110010101010101010111010101111010110101000000101101100010110110111110111110011110110111111000011001111111100011001110110011011011001101101111000101111011110010111101101000000100011101101001100010000111011110000010011101000001111101110111111010010101111111100110000101011010110101000000001010111111111001011111110110001110010110101110011111011011001010110011111001011101011001000011101101010011110100111011101010011100110001111010110010000001110100011100001101101010000111000011000101000100011001110000000101010010001101100100111001111101001010111101001011101001110000101101111110011101001010110101101100101001111101000110001011100000110001110011001111110010101001111111111010001011011011010101001011000101100011111010111110101100110010100100011000101101101111000110010101111101001000110000010100111100010111011010001001111111011010111100100101111110001100010001111100111011111000010011100010010010100011110101101100001001011110011001001101111000110110110001100101101001100011100101100001100010001000010000101000010100111010100110111000010001110101010111100101001000101000100001110111101010010110000111100001001110110011110000011000100111001101100101001000111101000100010000011101100001101110100001111101001100001101011001111100101010110000000011101001110011101100111111011010101100001110010001110100011000100010110011110111000011110100010110111101111111011101000100000100111011011000110110011000001000010010001110100001100011111101000001000000101000110110000011011000000101101100111110010011001111011110011000000000000011011110110010001110011011011101111111101000110000101101111000011111100111011011001010100100000010110010000011001011111100111010011100110001100111000001110111111001111001100001111100010001010100101010010111010000101110010101001101001011010111010000110111111100011001001110001011000001101000110100101000010110011100001101000011011000101000100011001010010000010110111010001010100101010110001011011011011100010011010001000101001100001100000101101111000111000111111010111110000001001110001111011110100110111101001010000111111000111110010011100110110110101101011110101110100001100000010111000000010100110001111010001101000100011011010110100000011011110110101110111011001110001110111010010111101010001110010010010101100110110011111110011110011111101001010110100111010011011000000100100011100110111000000000111101010011001001011011001010101000010100011101011110010000011011100010011111111000010110011101100011110000111001110110001100000000001100000001111011110111010111011100011100011111111010101001011011110010011010001010111100110111100000100111111101001110001001000100011101010000001111000010000001001101111010110000011110101000100000101001110001000111100010011011001101101100110011001011001010111010111010100001001011101101001000110111101110001001010100010111011101000100011000110001010010100110101100010001100110111000111110000110000100000111011111100000011001000111100111011101010001010010111100100100101000111001100110011000011010010011001010100110000010111000101100111111101100000111111000010010010101010100011110000000011010111010011100000110101110010000011010111100010101010000111011111000000101100111101010111111111000110001011110111111110111100110001101111010111100111100110011101111000000111010111000001010110111000100000100110000001110110000000110110000001101100000001001000110100101001001010001101001111011011001010101010111100101011110001101101010011001011011110110011100101101101001000000010110010110110011100101100111000111100100111011101011011101001011100010111000000100001001110100110011010111100100100010000110010101011101101101110000101000010100111111001010100011000101010000110010010010100001000110010110011101011100100001010011101001100010100011100110100110101011101100110111000100001001111110111111001111100011101111010100001011011011100010010001011001011000011010111101000011001101011001010110001010001001010010101111001101111001011101011100110101101000110110010101111010011100110100100100101010101101101100010000000110111111011110001100000101100101010100111100010111011010000110100110000111101000011001011010011100100101100000011011011110001000101111010101000011010100110111000100101010100111100111000100011010111110000101110111011110110000000100111001100101000101111111000110100101111001111010101000011101010111001011011010100100000010110101000100101001101110001000101000010011111111000100011000101110000101010110100011111010001000111000111000010001000000110001111010001101110100101001000010011100100100011001110011111010101001011111001101000000001010001101100111010010011010111011001010011010001010100110101011100101100000100001100100000001110111111101111001011001001000111010011101000000100000101110101111101111001000000111110000001111000010101101011111110100010000011010000011110101100010100001110111111010101011110000100010100101001101001011001011100110011000000010101011101011111111101110111100011101001001110100011010111100110000010110100100001000000100100000011101010000000011010101110000111001011010100100111100111001111010011010010000111000110011010101111001100111001011001100100000010001011010111110111100100010100111001001001110100011101011101100111110010000010001011001010000010011100001000101001010100011000101101100100111000100111100111010110110011000111011001000000111111010000000010101100011010100000100010101011110100000110111110001100100110000101001101101000011010111110110100010011010110000110000011011011000100110100010110011001111001011110100110010111100101011011001010100000001110001101111000010101111000001000100101001110101101101101001100110001111010010000111001101011101010111111001010000010001000110011001001111010100000011000101001000010011011101010010001100110001110100110010110110101001100001010010010110110001111000101011101010000100011110010001000110111010001110000101010010000001110100010101110010101000110000010110011101111100000111011110010110110101001101110011010110100011000000111010000110011011010000101001000101011001000000010000111110110011111101010010010111000110000000100000001110011011000100010111111000000100111011011000000100101101100011001011000110011100101010001110110101100101111100111001111010101011010110101010101110101101111001001001010111111100011001000001100001011001010100100110100101011011111011110111000110011001000011111000100011111000011001001100010000000011101101101000100000001011011001101001001011100110101100010001010101101101000011001000110101000110000011000101011011111000100010001101000001100111011001001010011011011001110110100000000001100000001100000111110000011110100010110111101011000011001011000101000101101011000110011011100101101011110011011000000100010011011001101101110110101010110101100100111001011010001000101001101101011110000110110101010001100000010111110101000110011100010010001100100110110010101000001100010001000000110101000100111111110000010001011001110101000000100011111100101011100101111111011010111001110111110101010110110101110010011001000110110111100000111100101011101010101011001101010011110111010111001001101000101111001010100000000110011011000111001111010110111010101110010100110110011110100011110001001110111011010010111010001000101101110100000111000010101001110011010101000001111000111111011110100101100100001110101011011010011010110111111001011110111010001111110101110110010111101010000010110101110111010010001100010111000000101000011011110111011001110010011010001000101101101011100011110001000001111100111110111001101011100011000100001010000111000100101001011010101001111100011111100110101010011111101100010000010011110000011010011100001110010011100101001100011110100000001010010101011001111011010011101001100011100111010010010010010111100001110001100101000000000000001100101011010011110001110010010011101000110000101100011001101101111110000001001000111000100001000010111010100000100100101110010000111100110111110000011011111000010101111110011010011000111000010001111000011111100001000011100100000010001010000111100111100101011001100000000011010001101000001000101110111111111111101110011000100111011101000011110000100101100110000000101101011000011011110010000100000001001100111001011101101111101000000101111100011000001011111110110000110100011101110101000011110010000001001001010101010001100000101001001101000000111101110101110010101010111011010001111101111001110101001110110011110001011110101011111001001001011100010001110011010010111101001111111101111101100011100000110000100111100010110010011001101001110000011001100000101001111011010111100001100001100000001110011000001011110111101111111110110011100011001010110111000000000111011001000110101010010001110101010111100111110010010010000110100111111011001111110111111011010001111110011111101000000111000101110001001000110101100100100000110100101110101011001110000000010010110100100111111110100110001000011101010001000001110000000111101111110100111110000011001101010011110100001010011100101000100000011101001111110101110011100101111001001111010001010110010000111101000000110110001010110000001110111011011111101111101001100110001111110111000000011011011111011111000001001000010111111001001110110110000011011110000111110010100101100100010111010000110011111101111101001001001010000101001001110111001000011000111101000000000100100100110011111001000111110010111111101110111000001010011101010011000011110010110101010010011000010101101010010111001010101010001111011011001001100110101111000011110010100000110001110000111000111100000010010110001100000111000110100010100001000101111111000010111010110010000111001101010101001010111101101011100000101010100110010100100110011010101111000110100000010000010000011011101010011111100001101110110111101000010111011010100000000100110110001110001000101111001010110010101110101000101111010001100000010010100011010101100111100011000100100010000010111010001001100111011011010110011100111111111100010110001010010000100100101100101101111111001000000000010110100000100010000001011101100110100110100001111000001111001111110100011011101000010100110100111101000001100100001110101100011100100110110110010101110101111000011110011100101110100000110011110001101001100000001101110011001100001000011010011011111011000110101010010110001101101101111010010101110000010100100010001001011101111110010011001100110110010001000000100101100111110000100100000101101101101011100111011010100010100111001010101000011110001110011100111110000001001010110101101101101001001001101001101101001101001100000010110011001011110101000000001110111001101010010101001100000010001000101001000011101111110101001011000000000010010101011010011000110001100011100101011110011111101011101011101010000010100100000011000111010010011010001010100100001000000110111110011001011101110111010101010110010100111001001100100010010100101100101010110010000000000011101001001100001011001111110010000010011101111011011111010111101101000001011111011001000110100100010010010101111010101011001001001010111101101010111111100110011010111100100000110110111001011010001111111111100010101100100111110000010100000001011001011111011010000110011101011110101110011001100111101011101011010110111000000011100010100101101011001101101001110101000110110110001111001011110101100111001110111111011110000000011111010100110110100110000111010011111010000101110101111110010000101100100110100101010101111001000110100011110000001110011001111111111101010011111001000101101011101101000011110000010000101100010010110111001101111010000011100001001011001101111101001001011100100000110100100110010100111011101000000101110110000001001000010010100101001011100000001000000011000100001001110101001011011111001101011000101101001000001000000000111001000000100100001011101010001001000011011010010111000111010110010100111011100001001000110101010011110100001000110101101111001100100011001110011111100011011110010111100110010010101111110011011100000110101010110001000100101010110110111000000111101010000000000011010111011101101 +101011001001010111001100010111110101100001011001110001110000001101011110100110101011110000101011110010111110000001110110001111101101110001000111010011010111011100011011111010101100100000100001010010000110010000001010000100011111101100111000000111110101011001100101110010010011101110010111111100100101010010100000111011001110110011100001011001111001011110001100110010111010100101000101111000010010100111110101111100010010011010011110100110110110110111011000001001111000100001100000110111000111110000111010111011010101111011100101001101000011001000110100110101011101111110011001010110100001100100101110111110000010000110011000110100101011110111100010001000011111011001110010000011010101101001011110100100000101110001011111111010100000100011110100010101000010110100101001110011010010100100110100111100101101001111100101101110010011000111111101110101111010000001000000011000101110100100110001010111111011111111101010000010011100000110101111001100010110011001001111101001100001101000110100010011001010110000111010101011100111010000111111111101000100110000001111010000010001101000001110101011010001101011111110000110001000010010010011000101100111110011010001010101011001110000010100111011000100101110110011011110101010100010010111011000001110111011011011000101011111001101101000101100011010010010000011111101010001010111100101100100010010010111000101101011101101101010000010001010111001011100001101001110001101001000011001000111101000011101011111100111101101010010000101101110000110101110011011101110100010000010001010011001100110101101000010101000110010010110010101001010101001110100101111011001111111110110001001000011001111111101000001000110001010001100010101011001101111010010100011100110001011101100011100101111000000101110011011110010001011010110100010100010011000100000110111110110001010100010111001110100001111100010110001011111010100011010100001100110110000111011110110010000101110011111100011011111110010100011101101110111111110011001110001100100011100001001010100011110000111011011100101011101101110101000010111011010001010110101011001100000101010010110011100001011011101111000000011111011001011101101111111101111100011010010101001000001101001000001001101000110010101001101101000000000111100110011101010110100110000110111110011110110111001110111111011010011010010111001000110010101001101111111000010010010010010110010101001000110100010010000111011101101110011101110100011000100101101001001100000000011110011000111110101111101110110100100110010000001101011111001001000100010010101100110000011001000100111100001000011011010011000111100111101111011000000010101111010010100010001101001101100111110101100011011001111010100000100100011100100111111110110110110011000000010100111111010010101100010010010100111010010100001110100100000100101110110001110001110000101100010111101001111001101111010101010010000100100100001101001000100100010011110010000001010001010101101111011110000110100101000110111001010011001011011000111100101110110000010101000100001100111010111101100110011010100110001011001001001111001000010011110001111100010011011110111101101111111001010100000000001001001100101101110111011010010100111101110000001100000011100111001101100000010100010100001110111000010110101010101110111011001010110000100101000001001101101011100111001011111000000110101101111011010101010011001101001110100001101011000011100001111010100100111011011101010100010100011111011010000100100010011011100000101001101100001011110010110000100111001100111000011111011101100101010101010011010000000101011011111111110001110000011101111100010100101100100100001001001010010001100011001101001000111101111000110010011010000000101000010001010101010111101000100110000101111110111011110101000010101010111010101110101010101101111010010001110011100011100101000001011001001011101010011111111100111011101000011110000001011011010111110111000100011010100110111101111110100110100101000011010100001000010110100011100000100011011001001000111010010101110111100010100101101100011001001010010001001011010000011001110001111110010111001100111110101101111000001100001011010000111001000110010101101111011110000011011101110110011110111100110101110011101100111110010010110111011101100010101000000100101011000010110010110110001101010100001101110101111100001101101001110110000001101111110011110101110100011000010010000011010101011101101111011000000010110000110010011000011010111010111000100111100010110111011011011100010001001010111100110011110011100001000001011100000100101100100000000101001001100001100101111110000010101100110001001111011000010000011011001111100100110110100101101101011100100110101010111010100011110101010110101011010111011001011010010111110110110011001000101111100101011111110110101000011011010011010001101011100100100100100011101110011000111011111101010111000110101111111100011010111111101010111000100111100101101110000000010110111111010110101011000000010101010000011010001100010110100101001001001111010010011111000111000100001101100010001101001110101111000000101001100100001001101110001010100110101011001001111111001111100001001111001000100010100100010000100011010001111111111110000111011111110000000101110100001001000000101000010100010010010100011110000111110011001110110110000010100100100011110011110010001010111111101111110100001100001100001000000101010100100111000011001100000111011010010110111111110000111000101101101101001100010101000110000100100100101110001111001101000110110110011001100011011111111111001010000011101001001000001110010111100011101110101001110110001101100010011100010101011011011111001001101111101111001001110000000010001001011111101100100000010110010011101001101000000100110011111011110111100011111101110011001011100101011101101110100111101001010101100100000011110101111111001110110100100011110111100000001111011111101101000000000000101011100011011000---------------------111100100010110001011011111100000111000010110010111011100101110010000111010001000101111100000100101001010110011011110001010001110111111010100001011010000010010101110111110110100100111110110011100000101100011011010011010110011010110101010010010101011111111110111000011011110100110110100101010011010010010011001100010001001111011001100111100000101010100001111100001111000001011001000100111001011001000110001010011110000001111010111001010011011010000001000000110101010011011000100001001010011011100010111011001000011011000101101101101000100100000010000010000111000100001101010001001110110101110101110000110111001011111010001010100000010010100010011110100011111100110000010001001001010100010101101100011010000010010010001010001100110101110001101011101110100101001111111000110000110010000000100001100110111011000011011110011100011100100011000001111110110010100110101010011110101110010111100001101011011000101110000001001001000001001100110011100100100101110100011100111100001011001000000111111100000101001110111000011000010001001011000101111111110100000001001101110100001011011011011011111111010010110000001011100101110001111111000101100010101101001111010001101100111101100110000000001111000100010001111110001000100001111001101101101111100001010110011001011001011100000011011111010100010001110110000000011011011101001100010011111000111100001001000101100101011101111111100010010010001000001011100100111001001011001011000011100111000101000100101110010011011101110110110010110101001010001000010001101000011110011001001001110011111001110010101110001110100100101010001110111100111001001100001100111110001001111001111000011001111011111111010101001111101101100101000110010000111101000010010110000011011110100100100110000000010010000000111111100111001111100110110001010111010010100101001011111011110000011110000000010011010011100111000000110101001100000110000011001011011100100110011010011011010010100110110100000011111001000010110110000100000100111010001000011100010111011100110100110111111101001010001001100100010011001111001110111100111011100001111001000010110011100001100000011001000011011001010110011010000001001101011011010010011010011000010000111100111111111001010010101010011111000000100000000101000101100010101000001001000001000000110000111010101001000111110111000010110000110010110101110110100001111110101000101010010111101110110101010100011110001101011110111100001110100001001110111101110111110011111101010011101100011011011101110111110111001011011110101111001101100111111011100001111001100100011110100101101011011100111011011010001111010101111001001010100011110110100011010100101110101101000011101000011000101111111001010001110110001010010010111001100011110111011101110011101001110000111001100110001011100101011010000000000111010000100001011010101001101111100110100111010001110101010111100011001000111101111101100010110010011100001000101011011000100010001101100101101110010111111101101111011000101111111001000000000010000100011110111001001111010001000010010010100011111011010000101010101001001010001001110100101011101111100101001011111111010010110101010111011000000100100010101001010111100010101000101010101111110011111010111110100011100011101000000001001111110001110011101000010111011011010111111010110100010110101101010100011101101100000100111110100110011010100101000011000011001010101101100011001111000011001001000111100111011110110101111010100111110101001101001000100001100010101101110111000000100011100011001011110000010101111001001100010010101111011011100011111000010111111101100101101110000101001110010111011111000001111100110000001110101101100111100010010100100110011010111000001000110100101001011010101011011100001101011010000010011101001011100101000110110000101000011001100100101100100101101110111110111101101001000010110000010110111000100001100001110011001001000110000001100100111001110110110110011000011101011001001110010101110100101011011111000011111110100000001111111011011101010101011011101000110101111001011001101001000111110100001011111010011111011000110010000110101001100000001110111011100011011000000110110100110110000001101000101111011000101111011010101011001011011101000100100011001111101011001000001010001001000111111111110111110000011101110011111100000000011110000111010001001110100111110100100100111011001000111010011100101010011011100011100110111100111010101111100010111001011111001111111101100111111010001111101001111011111111011000110110010000001011100110111011011111011001001101110000100001010010100010001110001010010011111100011011100111111011110001010101111011111110010011111101011000100101010100001101111110011010111010011001101010111100010000000101011101000011000000111000110111011100001101101011101000011111010110111111000100011000111011101010001101111110100111001000100110001010001000101000000011011010101101110111011111110010011010100110010011111101101001101101100100110000101010001100010100101111101110101111001010111110000110101000111011101110000011111100100110001111000101000011110110000110000111100001110110010110000101111010101000010001110110001000101100001010100110000101101101101001011110100111001000100111011000000100010011110001110111001111011010110011011010100101111010011110100111111111110000110001100000010011101001010000010111111000001001011111111110111001010101011100101100110010111111110010100000000101010111100110111110101011001110110001110001101010000110111010011010010010110101010011101100001110100101000101010011110010110000001100000101110110000000000101100100110000100000101011110110010000000001011101010011101001101100100001100010111010011110100101111001110101001001011001111010110111100000110101001110000001011001010110100100011000111011111010010001001010001000001110001111010010001011110100001100000101011110001100100111001010111000010010110111010011001111011011001011110111011010011010100110001011000100010101100010101100110101011001111011100110111010001001111001010011001100101110101101110000000101011000000011100001001001010101001000001111100001110000100011110011111100011000101111101011010100010000100001111110001011011111111001100111111100110111101100000101010110110001001111000011010100101000100011000001101110001111111110100010111000001001100000001001010010111101100001101101010000110010000010011101001110101000110100101010110101011110011000100010111100110001101001000111010011110110001111111100001001010010001110110111011110001010011001101110000010110000011000111001000110000100110001000010001011000110001101011011111000110110100000100001000100000000011100011111010100000101101110101100010011100000010111000011111110011011011111000111101101010101000110001001101100000010011010110010100100010010011100101010000000111010110001010001010100101011001111111001010101101011110000000111011111000110011001110110010010101011110111010111011100011000010110001010101110101111001110001111111010100001011100111101010111011001101111101110011110101110100100111100010111101111111110100001111000110101100111010111101010110011111001100100111011000011110100010001101011101100001010100111100000110000111000010001111010100110111101100001110101011101001010001001010010001001111000010011100101011000001011100111001010000111000010100111110000110101011000110000001001010101010101111011001100000011011010111011000110010001110000100001010011100010001111101010001001001010001011101111110000100000110001011011101011110100101010101010010000100110100001010100111011100111101000000101110110010100000111010001110001110011001010010111100010100000101101011101000111101110010000001111111001101010000101110000011000011110001010010010111001111001011001011110110000001111111001110110111100011110000001101000001111000000110100010001010100010010010111000101100100111011011001111101110100011101000010100101001010011011100001001000000011001110011001010110110011111010101000110011101101001100011001110101001101101101100100011101111011100111010110010000011100110110100110001000110010011111001001001000100000111010011110110100101010110111000011111111111111001011100010000111000101010110010101010010000110101101111001001010110101011100111001111101100001110110100101011101100001110101110100101001000010011110101001010011101111111110100110100011011001111110101010111001111100011110110101011010000000110100101111110010000110100111000100011000101010100010000010110110011101100000010011011010011011110101000001100100111111101111100000110010010001101101100010001101111111010011001001100100100110100101111101110100001100111011110111110110001000100010100110100101111101011101000011000111011110001010110101111100111100101110011000101100111100000100001000100011100011000001101010111101000010101011000100011010011101111110101001010000110011000110100001011011110111101110010000111011000101000101100010000001110111011000100000001000101001101001100111001110100011001011100110111100011010101000101011001000011101111011110110101011010001000000100110010010001101000101111000010111100100110101110110110001010100010011000101100001111111010100001110011011110100111000110001111010000001000111010000110111000001011001010110100001111000010101011011000111110111001000100011000101000111100000100000101011001100000010100101011100110011010111111001110100110001111100001111100001011111011110100111111010100100011100010000110000101001001110011011011101100111010101101001111001111100001001000011100010111110101110011101101101101101110001001110100001111001010001011001100111010010011000101000001011000100100001000111010010110011010101101000010111011001001000001101001001000011001101000010000011000000001000011000111110000100011110011011101101110010001001111011111010001000101110101101010100011000001100100100101011110110000001000011010011010000001001111111000011100110010010100011100001101001001011000111111100010000001101011101111110011110011000010100100101110101010111111101000101011101010110101101011010111111000100111110100111011101000000111100111101111111100101001010111111110011110011000100110100101010000101001100010010110111011000110001001100110000101111011110001100100100101100111010100000010000010110101100111001010000001100001000001111010111011001111010111011011011100001000111010100010001011110110100011000100011010111001000010011011100011010010101111101101101010111001111111010000010100001101111111001000100111011111111111110101010101010101011011111011101011101111000100010110001010111100010111010000101111111110000000010000110011010111100100010010011001110011100111011010001011100111010001100101010101001100101111111100101110001111100100100011100010101011011111111010011010001110000001000000111010100110111111100110101010100000000100001001111110001110011101100000100111001011110100001011000000011010111111100110101010100010110101010111000110000100111110001111000100001001110010000101000111101111001001110000011111000110001001100100101010000111010100101101111010110100100011001011010001101000101110010101010010100010000011101001001110000111011001000011100001100010101011101100010010001101000010001110110100001101010010001110111011011100000101111110001011011110000011010100000000101011010011010111000000101111010111111010011101001001010110100010010100111110100100101011001101101000100110001110010011100011010100100000101100111100101011000010100100010001001010010000001111101011101110001101011010000001101111111110100001101011010011000010101010001000001000101100101100111111111101101110000010101101010001110101100111100111110011011010100111101100110001010111001100010011101100011010011011111001100000101100100101010100010011101110100111000010110011110101110101110100101110101000011011110110101110000101100000100100101010011000100010000001011000011010001001010010110101000001001100111101010100011110101001101011100100100011111001100010000100100110111010011101101100111000000010111011011011101111110111000110010110001010010000011110100010000001101011111000011110011101111111111100000001001111110001100011101110010110010010111111110010001110000100101010110001010000010001000001110011010101101010110010101100011101110010100001101111100110110001001110011101011010100100111010111001010001100001010111111011110000010100100111011101101101110001000001101001101001011001001101011100100010101011100010101001101001111101111001001111011111011001100100110010111101010011001001100010110001100111001001001000000001001000101101001001111100001101101011110000010010100000101000101001001101100011110111101010111000101010010000011000100010100111100010111001111000010111100100001100111101110111000100110011111111100010111010100111011000110100011000100010001111011001010100001101111011000101111000101001000100100101110111011111100000001110110101110100111000000111101011000000100111010110010111111010010010011101001011110111011011011111011000011000111011110111011011110110110100110101010100110000100111111000001011011000101001100101100001100101001100111010101000000000110011111101010110001111000001011000011111010101100111011111001111100001111010111111000110100111100110100001001011010101001001101001011001100111000010101110110110010101101011110110101001100101110111001110101000100110010100011001100001101010101110010000110000011111011110000101011101100110110000111111101100111000110111111100101000111110101110111101101010100001001010101010001101000100100111010111010100001011000111111000010101000011001010110110101111111001011100000101000000100110001101001000001100110100010110010010111001111010101011101110000111101000101110000011101010111101111011100001000000101110110100011 +111101110110100001000010100101000011110101111100001000111000010010000011010001000011000101000010101000101111010000110101111010101000011101000010001100001001010000111010111101001111111011111010100100100010110110101011001110001001100101100010100010110010110111000011010001100011110000111111111000000110011100001011110010101011100111011001101010100111100011101100101011101000111110010111001011001000011010011010111110000111101011010100110100100101011000101000100110000000011111111010000100100011111010101000010101101010101111110010100100011011111000111100011001110001010111110011010010001000111101011101111101110111100000011111010100101000000110010101001100111110010101010011011101110011000111110000111110010000111001010010000111000101001111010000110101101011101111110010111101000100000010000001110111100111110001000000100000010100100010110111110001100001110100110100000100110000010001001111001011111101010011110000011111100001000000001110010110011100010110001000011011001011000101011110101011100010111101010011110100100101000000001010010011011111001000010110110011010111110010011110101100101001011000111010001000011100110010001111000110010011001010011111011100110110101001111011101101000100111001000000100101011011101010000001100111011111101001101101100110101111101100011011011000110000100011010001110100101100101011010000010010100011100101011100111111101100111000011000010000011100010011010011101100111111001110001010000001100100101001110101110010110010011000110011100010111111100000111000110000101110101001000001101111000101101100111100001111011111001010010100001011101011100110000001000100011100101010001000011110110001011100110110010001100010100010101000001010110001001101101111111001111001101000111001001101000110110100011001000001000100010110100010100011101000101110110110001110011000000011000110010000110001100100010100000011010000010101110011110110000111101110000010001110000101001111010101010011000001000001000101101000100100111100100100011111110111110100000011000010110011100110000001100101000100100011110110111000110101001010001100011111110011110110000010101101010100011011101010001110011110010011111000111001100111110010110100001110010011000101111000000010100001101001001100100111111011001000111001000110000110000111011100110000111010110001111000101101101110010011111111000110111111010011000001101101011111001111111011000010100110101101011100000100111110111110101110100111111010000100011110100101101100110100101111000011010001111100111100001011000001101110010000100011001010011000011000100101101110011011101001000101010111100111000011100001110100011101101111011100001000111110001011011101100000000101010001101011110000101100110000001001011011100100000101000010000101100100011111010100101101101101101101001110001011010011111011101010011001101101011000001101110000111101010110011101010100100011010111011010001010010000110011100001000101000011101110010100100001011011011110000001011100101011100000100110101011000111000111001010100100000100101010000111010110001110011001001000010001000100011011011010101011010000100010110101111010100011001111010001000011111110011011110111101001111010101110000001100100100111000011011000111110010001000010101100001010101101011000101011000010111010010101010100010111000001001101110100110010010100100010011011101001110110111110111110101000100000000001100001100101111101111110010000000111011101011000100001011111101000001110010011110100001100001101010000000100111001000011110010110110111110110000100100000111101001000001101000101010110010100010011110011101110010011110001111100000110101100101110110000001100010101011100000010110101110011011111111000111000011001011011100110011101001010001011000001011000101111011000010101110101111000001100000110110010001101010001000100010110000110000100010001010010111111100001011000000111000000011101110000111101010001111100101010010110111110100001100000011010110001110011001100000110110001111011000110010011101101111010101000110000111010001010010010100111110001110011001100001000110101110101110011011001101111001100011011110101000100000111100100010100110001011111101110110011110001011111100000110010011011111001111001101110111111001100000001110010110001101100111010010000010010010101111011010101110101000110100100110110011010100001001111110110011101111110010010110101000110111000110111100100000011101100111010010101111010001011000100101100100000000011001001011110100101001000000101101100001000100010000110101001100101000111001001111000010110110001100010011011111000001111001011100010110001111011101011001111011111101010101001011111000101000000011010001001101001110111110101101000101001011000100000001001001110111011011011100101111110101011100101011010100001001110000001110011001110000100011000000100101011011110011110001111101001001011010110000010111011011110001110111111001100010001010100101110001110111001010001110010011011000001010110000001110100001101010001101110011100010000011011100110111110101100001001011101010011111000001110111001101011011100000000101000100101110110100110111100101100101111100001011111011000010000111011101111011110100101111011000110100010000100110000000100011111010110001001010110111100110001000010001011101111001101000010000101111101111010101110011101110001101110100100001010001101110100100011011110010100010010000110010001000100100011010110000001001101111011100010101000111101010100101000001111101010001100010001010011110101111010110000110001111100100111100010011110001010011001110100101010011100001100001111100111111110001011011100000111100101101111010001111000000111101000010111010100011101001101100111100001010011001010001111010111011111001000011100100000100110111100001101111100111010101000110000010110111011101000000000110000101010111011110100101100000101101111101000100001110100010011100111000110011101010100000001110001111000101000---------------------101110011000110100110011110001111000000111011010110101001000001000001110000000100010010111000110100100010111101100111011010001110011111001111101111000011010000110011111011001110001011000001000111010010100111100011010010010010001001100001101010000000100110001101111110101100010100010100101001111101100110010000111000110101010111010110000000000000111111000010111010001011001001001011000011101110011110110100100000111101101110100110110011011010111001011111100010000010000111110111101011001110011010001100110011110010100101101110101001010010000100110001110110000011001110111010101110010010011011001011000100001001100111000100100000011110111100011000011110101000001101010001011011101010011101111000111001011001100011000110000100100001010001110100010001000000011001000110100010000011010010000110011101011011101011000111011110010011010110111100111000110111111100000001111100110010100111110110011000100101001101010010101010111101110001101100110011101011010000110110011101101011110011111110111100000101101110110000111110111001010001001011100001010000110110010001111001100111000011001110110000000011000111000010001101111000010101101011000101001110110110001101010010010110011001111100010000101110011110010101010110110010101001000000001000011001110001110101111111010010000110101001010010101011000000000010101110101110110000000110000101001011011010011111011110000001110111101100001000110010011010110000000111100000010100101111101001001101111001010010111010100001010100101010011010101100010110011100001111100011110100101111111100000101111001010011101101001000111111100110000000101001010001001010101010110100000001011111111111011011100001100110011001110110101100110111001010101111111010100010101011111101111010100111100110101110000000011100110111110010111001110000000000010100001110011010001000100100000000010011011101111001010101000001000001011110100001101010001001110101011011000111111100110101000010010101011011000100111001001110100110000001010011101010101010100010010110100110010111111001010010011001000000110001100011001010100001011110101101100101110010010101001001001011011111100101010111010111111111001101001110101110001010101001110110001010101100101011100101101000110100100111000011001010100001011110101101001000001001011001011000001111001001010011011101101000100111000011110011110011011101000111011101010111110000110001010111011111000010001101011110111111001111111101001000011001111110111101011011101111001011111100000100110010010001010100111101100100011111101111010001110000100000110100010001110000100111000010000100001100110101100011110100100001100001011101011110101110101001110011111010101111110101010100100000000110011110011101111110011100110101110110111000110010011110011101000111000111010110010111100100010110011100000100011011110110110100011111011111100000100001101000100011110010001110010111110101000010101101000011000001110101101001010111011111000010001100011010000101110101100111101110000111000010010001010000000001001011011110101010101010111101001011000110100111101001110001110000000110000000001111011110100110110101010110110010111010101001011111011000010010110111100000000011001100010110100110111111100011000110110111001110100010011011011001100111010111100100100011100001111111001100100011011010010001000110011111001101001100001101101010001010000101110000000100101110001010100000010011111110110010110101000100001000111111001000001110111110000100111110010010010110110011001001101110111111011110011011100001100001111011001011111100101100010111100010100101110101110000100111011110011101101111010101111010100110011000100101101011100001110000111011111011011110001111101101010001110111101000000001111110100111101000011101101111010100100000101010011100001100000001101011111001001101001110111011010000101110001000100000111011000100000111010000000110111010001010100100010011101100000000111101100000000101111000101110101101101010111101011101101011101001100010100010011100001111001100011001100111001111100111100011010010111001110101000111000111100111000110001011100100110101101010010101101001001000111111100110110101010001101100011111010001111000000010100101100101010101001010111101010101110001110110000000111101001100011011111111101001011010001011101000100011000010001010101000010011101100110111001010011110011001010101101110110110100111010011100101110101001010110110100111010010111100101100100011101000101010010000010110000110011101111110110101111110111001101101100110101100110000111110011101100000011110110010010011011000101010110000010100000011011001000111011010110000101001110111111101001000011011001011100010010111001101101101000111000101111000101111010101000000111001010100111001011100101010000100110011010001001100101001101110100110001100110010001000100001011001101010001100111101000100100101000011100010011001100110100111101111001000110100010100011000010011010101001000101010001001001000101101101110011101110110110111100101110001110101010001111011100100001101110110100011101101111111101110011100101100001000100110001101001001100000110011001000001011101010100100001001010100011001111111101101101000101100011110001101110101001110001111110100101110100001101111111100111000000110001110111010011111001010100101110011101110000111001111000101110111010100110111010101001110101011011101000100001111000110000101101110011110100001100100101101100101000101011110010101101101011011110100110000101100101000100100100101000101111010011011000000110010011001010001111101110110110101001101001001100010110101001101010111001001000001000111110110001100000111101100111000110000001001000000010110010000001010111100101001001100101010111010110000110010100000011111111011010110110011010110011110100001110010101101011010001001010111001000101111111110101110000101000000110000100000000110010111010011011010100010100001011100011010100111000001000111110101101111110101100100110101011010100100111110111101100111010100111010100110000111010111011110101110000110001100101111110010000011010001110111110101110111001100001001001110100010010111000111011110111001011111001010110011010011010011010010100111011111000100000000100000110001101010111110101010010010101000100011111011010101111001001011101010101111101001100001000001011101111110111010100001010100111101110100001010000000011101000111110101010010111011110101011001011010101001010101001001111011010110001000110011111110111100111110010010100000011010010001001001110000100100101110001110000001111011010110110000011110101010111110101010000100010101011001001001010111010100001100101001111011000001000100000001111110111100101110010101100000101100001110111010110011010001011001111111001111100010101101100010011111011101100111011000011111000010010011101010110101010000101001001011110101111011101001010101100100001111111011110011000010000011001000110001001111001110010111001000011010100101000001010011101101000101111010100011100100011110010101010010010110100100101111101010110010100101011110001001000100110011010001000101100010111111111101111000110111100110111010111011100001111100100000001101010001010101110100000001111111100111000101101000111010101100010001011101000010001111101011111001100000100011010010011100111001110111000111111110101010011110001001001011001011001110000111110110001010101011010011011000111001000010110110001110001100010001000111111000001110110000000100010100000011000111110110110000101100110010000101011011100000000000101110101110011000010010010100011011111010110110111111000110000001110011110100000000001011111000000011000100010000000101010001000010100011111000100011100010101001000111101001100110101011011111101100001010101001110101011100101010101010001010101100011010100000011001000011101010100110101111110011101111001100111011011011001001111001001000110000001001111111101100111000001000011101010011111011100101000000100010110111100110110010111001000001010001100101000110110010000000110000101101001011011100011001100001110010111111010101000001010101111000111000010001100101100001010000111001110011101101111010001011010101010100010110110001001011101001010101110110010100010101100110011001010001101011100010001010000101110011000000000000110011011100110111100001000011111000110110101111110110000100100000110010010101110110011100100101111100010110000101101011010010100010010111110101001101100010001011111010101010111101011010100111100000111001000010110100001101100101010001010110000101110011011010110010111100111111101001100110000111001101010111100001111100110111000010101110100000000111110101100011010001110011111110101101001101101001000011100010000111001001111110100011010110111000010001010011011001110110111101111000100000111001010011111011001111001001011010010111110011000111110110000000011011011101011000111111101000110010011101111001100010010001001111010101011010100110001010000000001010100010101100000010111111010001100100110101011100100111110010010011110100000101111010100110101111001001010010111001100110110011001110010011001110000010011000001101010110010011010011011111001101001111111110101011011110000110000111110111000011000011000101101000110001011000110101101101101110111011110010000011101100110010111100000110000001011011001001101111101001110111010010011101001000111001110100101101010000101010101010100100011000100100011011001010011010010100100010111111000011111111110111100100111010110001100101100001010110001010111110010000100101100100110001111000110000111000100000100111010011110011011111011100111101010001101101010100010001010001111000000001100100111011011111001111010000001011110100100100111010001010101000101100110011010111111101000101001101000110011101011001001011010010100101001111100100101001010110010111110011011010011001011001010111101000000000000010000101001101010001011011110100010111000100000001000111111111001010001101111010110111001111100101111011010111000000010110100000110000100101110110000011100000001011100001011010010010010110111001010011010000110001010101100000101001100011001011010011100110101101001111101010010000101010010100101110011010100101001101110011010011100000010100000010010110101000010000010000111000100110000000000001101110101111110101000000000111111101011111000110110000111000011001011110010000000010001001010000101111101000110101101111000100010100001101101000010011100000101011101010111011001011010111011000010010110111001000010111000001111011110000111100100101011110101111110000111110010011101010010100001010000000110110010101010110001000111001001000010101001100110001100000101001000100111000010010011101001110111011110101010101000010101000110111111101101001001000100011110010011101010111101101111000101000111001001100100111011110111100000011011110101010001100011000001110000110001000101000001001101111101101101100000001111100011100010111001110011001001011001101011101101000100101100101110010011110101110001111010101011010101111100110000111011000110001111010011001101111000110000000100101010000101101001001001101101011001010101010101011110000101001000110010001000100101100101110101011110110010100111011000100010000010100000111000000010000111000101100010110001011000010111001011001011011010100000010111101011111101011101010011101010111011001010001100111011000111111111101010101100100111111011010110101111111101111111001101001101101111110001000111011000000110111001111000110101100111001111100010001110110000100001111110001101100110011111100001101111001101110011110001111100100101100111110000000100011111111111010111111000001010010010110011100001111111100001001100100000011001000110100011000111110101101010000110010110111000001011111000001000110011100110010111101110010101011011001100010001001110010000010000011011101111001101101101110000000111010011010110011010010111111010011100111011111011001101011011000011100000110100111010100100110001101000001001010011100000100001111001110101010001010100100100001001100001001101000000100001000110010011010000000111011111110110100111011100011111011101101111111110001001101000000110100111101111001100111011100001100011000101001011101101011010000011101110110100011000110110000101011010010111111110011000110000110000110000111110101100000001000000010011010010001100110100110101100001101000101111101000110010010011010111111100000101000000110001101111010001011110100000010101011111101010101111011100010100000011001110100011100011011011000100000001110001000101101011111101011011011110001011101001010111101000111110000010100000011010101000001101010011001111000011010000101111111100101101010001100110000000000000110010010001000001100100001111110001101000010011110011000010011100000101000000001001000010101101100010010010110000101010110011100111001000101100010110010111111110101100000011011111101111011011101101011100010000001011010110111000100010010100100100100111011111100010100110010100011000000010011111010110001111010001101100011001000001110000001110000001110100110001100111110001000010111111000001111111110101010011111101101101001000001110111001111100011100010110100110001100100110110110000010110000111111110100110100100100100010100000001011010001101100011111000100100100111000010000010110101010110110000011001110101011010000000110000110001110000100110001101011111000010110111111101111011111010100010111001110110001001110101101110100111010101111011101000111010001001101001010111100011110101101010000011000000010000110100011101101000000000110111101010001111111101010100001010010101101101100110000011000001000011111001011110101111001101100010100111101000011101100111001011010101000101010001111110101010000111010001011011010101101110111 +011101001110100100101001100011100100111011001101101000011000011100100001011100011111111111101011111010000100100111100011110101001111000101001011100101000000011001101010000010110100010110110010001001001110101101000110010001010010000000110110000000100011111111101001000101011100011110111110000100000000110001111001011010000000001011010111111110100100001010110110111100111001101101000110100110000001010110111101111011001011111001110110010011101000101000101111010000111101010011100010011110110011100101001110111110010001011110011011011100100101001110101110111101011111110001101001100010111000111101111010101111001111110100100111111110011101001101000110011101001001111101111011100011110111011011010010110010111001001001110101000110011011010011000111111010000011001100110101100101011000010111000000010110110100110101100100110110001010101101011011010111100111011010011000111001010100110010010001001111011100101001000110000011110001101101100000111111001101010010010100010010111100101001110001100000000100110101010010001111110001111101011011110101001100000111101011000110000111011000011001010010000101110101100111001001011100101110000100101011110010001110110101001100000100100010000111011110110111101100011101000101001100100010000101101000000110110011111001000001101011100000110110101001111101101011001001111001100101110101100001110001001000000001101000010010101101110110110100100000011101101111010010110111101101100101010101010100000011101100100010101110101111110100011010101011111001101101101001001011111101001000001110101000101110001110001100101110110110100000011100100001100010100100100101110001111111111110011001010101010110001101000110010001000000010000100111000011100101111101010000101110101001011110000000110001111010010111000110111100100101110101101110111011011001011011010001100111010010110101000111000110011100010000101011101010000101101000111111100001101001011011101110011110000011011110101111010010000011010111010110110000010010111110100000100100001100111010011111101101001000000010000011010011011101010011011101011110011100100001101111000001000100101000110110001110011011011001011001000110100010001101001101111110011001100100111110001101110110100010010110100100111011110111001110010111000010011111001101101001010100011110011110001100011111100001001011100000010101011100010001110010111000001000001101101000001001101111010010000101101010011011101000011001111100111000000101111110010010000001110100010101010110011111011011010101010010101000111000000111011010110100100110110111101011111111110110110010100110011010111001111011100000100001100110000110011011101111100101001010000001111101011101000011011110100000100001101111011011001101011110110000010011001100000000111010101001000011100010110100011011001011110111101001010111111001001101010101111110011000101000111001010000100010000110001000111001110111011001110101101010011101001010100100001111101111011011001000000111110101010010010010000101101110101000100111111001011111000000101101010101010101110001110101011000001101100111011111100011111011010010100010000110110111010010111011111000110001100110110010011111000101100011000110001000101010100111110101000101110110110101101011010101101100000001101111101000000110110011111000011110000110110110101100011111111100000011001111101111010110111100110101110001111000001100001101000001110000010011111010010101011011110010111000100011010111000000100010000010001010010001110011101000011001111010001011010111010111010001000011100011100100011110110110111101001110101100111000100010010000001110000011011011000110000010011110101010001011000111110101000100110111011011011111000001101100110110111111100110100000000001000111111111110101000100100111001110101011001111100110010100100110101001011010100001100001010101111110011111001001000010110010101111000010101000000100110100100100101111000011110101001011111111011011001100000101000011110000101100010011011010101001011101101101100011111000011000011001100011001101100011001100001011101101010110000110111000110011110101101000000110011010010010001011100011011011111000111111110111010111010100101010101101110101111111110010100100100010111010100100010100001010100011111000001110010000111000010110000100011111101110110001111001000010110010100111001011101000101010010111001010101111100100110101101100111010101000010010010100001110001000111000100001000100101111111100100010101010001101101100101010110110011001101100010110100101110110100110111110000010111011000100001101011001110111010110010101010110010011101010001000000110101101000000010011000110111010111101011000100010101000011010100000000101111110110100111011101110001000101110000101000110110001111101100001011001110101110011011001001100101110011011110111111000101000011010010010100101000110010011111000101001100101010101011110100001000111110111011101100001100100001000100100010011000111011011110100000111001010101100000001000111001010111100000101111101011110001011101110101111110100001111001110111101100111100011100000100000111001110101000000110100010110000110110101000111111110010100111011100100001001110011011010010000001010100010111010010101101011010110100000010000001001000001111111110101001110110000110100001000111110111110011000011101001000000101111111111101011101110000010101101101101101001011111100110101011001011000011011111101111000111101000110001110010000010111001110001100111001111111100000100001011010100101101010010101011100100110001010010100111100100111010100100110010100001010001000101011111101001110110010101000101101001110011010100100110011110011010111001100010010000001000010111111100110011001101100001010110010100001100111110111010001100110001010100011111011001110010111101101010001000100111001110111101001011001000100001100111100110011111110001011010100111000001111100001001111000000111110010111110100111010101111101000011101110011010001110---------------------101011000100001011010100101101001010010110100101010111010101110110101001011100100111110100010110010001111111001100110010011011100101110110011001001000110000111001000001110101010111111100010000100000010100010000001000000111001010110011101011001000000001101110010101000011011111100011000110111001100111010010011101101101101110110001001011111111011011101110011001111101010111010111010010011010000000111001100100110010110100001010100101100100101011000111010010110000101001010000110110111000110111010001011000001111110001010111011001100111111111100010011100100110101011110100000111010010111011100111001111100010100011100100100001100001110001010111000100000010110100001111000111010011001010011011010001101101001100001010101000011101011010110100011111011100000011101011011100010010001100100011011110100100110111001111001111000101111000111001010000000110011010100000000100110111010111100010011111100001111111100010111110100000011110000101110100101101011100000101000000100000001000100101010011001001111000101101001101011001001110011111111000001111000011111100110000010101100100110001001000000010111110011000010100111010000000001010100101110011101101111011111010010001110011110101111101011100101101010101100010111110010110101101010011000100100000010100110111001010101110000010011001000111101011101101001011111001100111010001010110011010001000011011110111011000001001011000010000101010010010011001011010101101010000101100110101111011001001011011110000010010100110000111011011011101000110101100000110001100111110010110000000111110100010001010011001111011000010001110011110100001100001110100011000000101111101000001110010001000110000100100000001010011111001101000000010001101001100000100011110100101100010001001110110100000000111101110110011000100010011000110011010111011010011100101101000111101000110100011010110011100011101110110010101011100001101011010111011111001011001011010001010110111010111111101001001101000100011111110100010011001010111100011000100001011001111101011011000110111111001001000100101100011000000101011110110010000101110101100110011100011110000110000110001110010001000011000010111011100100111001110111000110000000001011001010000100100101010110001011001100100000000001001110110011001010101111011001000101000110001001101100010101110011100111001100110110111001110110110010000100000100110100100001110000010010000101010010000011001110110110010110111111001110011110110111010010001100000101010101001010011100111011101011100111101110000010100101101111010111101101001110011000101101110101011110101010010010000001000110101111110110010010110010000111101111000011000010011101010110110000100011111000010110111001010011100010110101001010001000111001101110110001001110111100011111111100111000010110011001101010000110111000111100110110111011111000010010100010001011011001110000010110100011111000011101100010100001010000111111001110010001011111110001111100011110000010111010011101110100110011010110010001011011101101011010001110101010001000100001001001111111000011100111110101100000000110010000110111000101010101010010101110000010110011101110110000001000001000011011111000111010000111111110111010001110001001110111110111100011110110011110101011100011010101000100000000100110010001010001100011110011100111100001111111101000010000011000111011000101000011110101101010100111110110101001010101001110011110110100011000110011101010111000111100000100110101110000110011011010100000000110001001010010100100110000010001001000010010100100110001011010000001100100110111100011011101000011110100101010000011011111100100000111100110111110111011001110000010100000000001010111100111011000100111100000111110100001001000101010100110001010010001010110100011100101100111110110100001110111111100010100110111001111110010101111010001001110101010100001111001001001101110110111010100010000101100101101101101001010011001100101101110011100011001000001110100011111001011101001110110001100100010110100000110110111011011011110011111011101110001000001111100001010010001001110111101110110000010111100111000010010101100010111101011111110100011011011000010111101001010001011001100110001100010011110010011100111110101110010100010100001110111010000101111100111010111111011101011110101110101110000111011110010010110111011001001111001101111111101101110100010101111111001010111110011110111100100111001101100010001110101111110010000000011011101110111010111011111110001110000100001110101111010000111111100100110100010110011010100001001111011010110111111110010001101000001011100111011011110010111010100010000010010011101010010011100010000111000010000110001110011001110100000110100111111100101100000100010001011001011010010001011001100101111100001100010010101100111101000000000100000010010100011010110110111001001111101000101110001010011000010001111111011100100111001011101101110111010000100110110110100110011010100010011100101110110101010001110111011101101100010011011100101010011001100010010011101111101101101000010000001010100000111011110010111110100101000111011011010100011111000110000110110010001011101011010101101001101000011001101110001111001010000111101011001110111000000010010100111101011101000100101100011110001110000110110100010011000001101000011101111011110010010010000101001010010100011100011111111110011001111111110001011000000101010011000011111110101101110101101000011000010111011110100001011011101101101001110100100001110000111000000111110100000001001100110010001000101011000111100001110111100000100011011000111010010110000101101001010000001101001101110010001101011001000010110100010100110010110110101111111111001010100111111111010100111000100010101010110010000101100101010110111011111000010010101001110110110100101110100111011000100110101100111001101100011010101000010111110010001101010001101011000111011111101010100000101110011010111011000100101101000111010111100001010101111010011000011001000111010000110100100011001101000100101101001000001011111011001101101010111110000011000001011100111101000010100110011110111110110000011011100111000011000011110110101010101110001001101000011011000011011100010100001110111010101001110000011100111000001111101001101011110110110110010001100110110010111000011000011100110100010110011101011110111110100110111011000110011010011001000110111010001110101100100000010111010010111011100101111010111011001100011001000010011111000111001110100000111100101011011101101101000011101100111111010100100111010100011011101001000011110010011111101010101111110110010000110111001101011001011010000001000001100110001011100111100101100011011100001011011001001010011000110011001010011100010111001001001101110010100101111001000011011111000100111110000011011010001011101010100011101111100101010111000010001010011011100001111100000000001001011100111100001000011101011111010000101000000111111010100110101011110000001111010100010100110000111110100000100000010101100011111000011110001100000001010101011011010001101100010110111000101010110110111011011000011100100111010101101000111100001110110100010101111001010101000010011111000011000110010011111111000111000010000000010010101110111000000000111111110111110110001111101101110011011010011000001010100010110001110110110010001001001100001101010011111001000010000111100000011110000101100000110010000111111000100010010010111000101101110011101111110101000100001110010101000000101101000110110110110111111111111110101011111011100000100010000010011001011011111111111001101001100110110100000101110010111011001000000101110011010000100100001010110010100101101000110001010001010000001011010100111010111100100001111011010100100110100011111101000000111001110111110110011011000000000111111001000101001000101110101001011001010111100100111010101101001101101101100000101101010011100100111001001110111101011000100110100111010110101010011001011110010000100110010100000110101111101110000000001100001111010111101111110001010011101010111010000000100011101100010110001110000101010111011010010000010110101100100101101100000100001110010101000000010100110101001100111110001000101011010101101011111000100011110110000110111100000100111101101101110000000100011010010000111100110001000111011010001100101000000101111000010110101000001011000000110000101011100110101010101011000001101101000001000001000101100010000001010011101010111101000100000000101100101110101111100101011000001100010011000011110011111110010000000000011110101010010000010010111110110011000001110100101110110101100000010101110001000110000111011111110101101000101001000001010011011001111111110010110111111110011101011100010010110101010100011010111000000110111011111100011111011110001110111001100100010100110111110111100110011000111010110111001110000001011010010011101001011010100001111010111110100101100000100101111110111001111000101100001100101111101111011100010000110110000100000011100111000010010111010110111111111111000100011010000000011110000000111011011011001101010100111100111111101011010110000010110000100110010010100000110101001110100100110000000111110010110101110100011010110001000100011010111110000101000010100011011001001100001001100101001110000100101110110001010100110111100011001100011110111110111101101000101100111000100011000010100111111101000110000010000000000010100000010100101000100000111111110001100111110010111111101001111110000001011111111111101111001110111001010000100110001000100101011011101101111001101001010000001011010111011111111010111100000101011101001110111000010000101111001101011011010001110110010010010001101110101011111100101110100111000000111100110011001010011010011100100110001110000100110100100110111101010001000011000101100001111000010101000100010011111101011011001011000101001110001100001100000101000100100111100010111100001000010001010001011101011001010001011111110101001101101101100111111001110100000010011001101101111010011001011110101110000001110000101000100101100110101101111101010000000000110010100011110111101111001011101100000100110001100000100001111101001101101011000110100000010110000000000010000000111100111101001000011010000101001000111001110010101110110110101000011010010110000111100101100100001111011010010000111010100011001101010011100011100111011101000000100011001011000101010001110100011000001110110100101101000111011010011101001100111011110101110111101000000010101111110010010110010000110000110100001111011001001010101000011010001101000000111110110110110010101100111010111111010001001111010111111100011010100010001011101010111111010101100101001101111001010011001001011010100001011011111001111101011011111101101010110001111001010100100101011110100111010000010111110011100001011011110101000000010101111101100000110100101100101000101110111100010111101110001011101001011001111100110010100010111011000100101000100100010001010100111001011111101101011100100010100100111111010110111111111011010000100110110010010000000110110100001100100001010110010011010011101100100100100011100101110101101101001101011100011101101100001000101110010010001010110010000101000111001101000000011001000101000010000010111001010001010110110100011011000110011011101111110110010110011110111111001111011101011100010000100001110101000110010100000001011110110110110110101000111100001010010100111011001101010001011000111001111100001001000101000110110011011110111010101000110000010110010110110010110001101001111010000101010110101100011000101010111000001001101001010011011100011000101010110100101100011111011100110001001111001011101111100110001010011000011000010010001010010111101001010000011001100101011001010101100000100111010010110110000110100100101010010000001011111111011000100010000110010000110101101100001100100100101111100010111101010100000100011010101110011111001001100101110111101111011111101111101010111000100110011010111110101000110110101100111111111110111101101001011110110110001010000001000000100101000001001101010000111000111011011110011000101010110101000111110010111111111000000011001100110010110000100000110111110000100010000011001010111111001100001101110111111101101001110010000101100100110001111111100111010101000100110011011101001000010110110101100100010011001110011110101111000010110100010011101110001100101010001111111110011000100001110110111001011101100001101110000001001101000101010101000110010100011101100110011101011000110101011110000100000001000110001110100010111111001001000111110000000001111000011010110101001011110001100101011110011000100111101000100110011000100001000011100001100011010001001010110100010110000001011110100000101110101110011010010111000000100010101101100110110110001001111001000001100101100110011111010111100100000011010110111101010101011111000100111001001011101001101100100110101100010010001110100110101110001110101011010101000111011000011000110111001011110000001011101011110001010111101000000101100100110011111110000100101101110101100110000111111100110010100101101010110100000101111101110100100111100100110010110011100001110100010010110010101011100001111011001010101010110010001110110000100100100001111010101110101011111110111011101100111001000010010100000101011101011100100010110111111111000001110000111010110001101111000001010001101000100000011001001111011110111101110000101111111001000110000101000000011101111100010111001001100101011100101001010101110000001011000010101000010111010101011011111010001001001101000011001001001011010001011100100110110110110111111000000100100000101001100000001110010100011100111101110110101010000011011101100110110001101000001001100100001110011000100000110011100100000101000011100101011011110110011100 +100101011011001010101000010000100001000000010111110100010110111111100000000001000000100111111011011001111010010111001010000101011101110000110001001110000010110110101110000011100110010001101001000110100000111000111010101011000101100100011011010111101110000001110011010110111011001011100100110110110110101111100000111000010110011001011011111010000011011100011001101101000000101110111101111101001000111100110101101000001001111111111011010001011010111101011101100101010001010101010101100010001000011011100001100001110001110011101111110110010000010111010000011001000010011100010100101000000101010111101111011000011111011100011001101001010011101100101001110000101101101110000000011101110111111011111110110101111110101100101111111011111111111000000100001100110100010010001110110101101101001010000110000100010000011011100111111001001111001110101111010100110101011101010011101100011111010000101011011001101101010011101011111010110011000111001011101111000011001011011000001110100010100111111001000001010101110000101111001011011101101001011101110100110011011001001011110000110010001011110011011100001111000110100110110000101011101010010001100111101000101000010110101000010011111011101111111100000000010110010001011011110001101111101111000101101110110000001111010101000110000001011100101011111010010000000100001011100101101000000111011000000010111001100010101010100101111000010111011111110110010001111111010000011010001011100101011100100100110101000000111100110111011111100111110110010010111100000100001000011001011100100101000101111001001010101011101101110111010110100000010100101010111111001100000100001110100101111000011110100101110010101001111111110001111001111100000101110110111101101000111101001100101011111001010110001101011000011000000101101000100011001001000100101101010110011100111011011000110000011101110011001101000010100000001010001101001100011110001010010101111101010011001011011111100011110000010010001110010000101001000000001010101101111011100100100100010110101010101010100000001010001010100000010010001011101111000111011001011100100101001010011001011101101001111101010011000100111111010110001100010010110001100011000111001110101101000001111010010011000100101000111100001101010001111111110110010110101000001101110001110010101101110001111100001101001100000011110000010000100001100000111101000110101000001101101101110111011010010001001101101111010001001010011110101111000111011011000011000011001000001111001000111110111010011011111001100000100010010010000010101011111101011100011111110101000010111000001010011001001100101001100111111011010111000010100001011010011010001100100101101101110011110010010110001010100111110011111111001111100011100010000000010010000000010011101011111111000011101010001011001001110000111110101010010011111001011000000001101000001001111011111101101001001010111100110011001000101111111101101001001000001101011001000101110001011001111011001011001011000000101011000000110101101010000101000111000000100010000011100001100011111111101010110001011110101110011001010101000100100101100011111100001110000001000110010101100110001101001001001001010110000001111000100000001011110111110100001011111010100011010001011001100010000011110001000100100111001101111111011010100000110111101011100101101100001010110001101110011010001001000010000110011111100110101100110101111110011100000111010100111101001001011010101100110010011000010011000001010001001001010101011000100111111110111011101011100011000111000101001101000101001000000011010100100101001101111111010001101011001010000001101111010011001110111011011001110000000000000110100011011001010001111111101001000000110011001011111100111111101110101011100101010001110101111000000101010000010001110011010001011011100110000101100011110100101001011011000000010011001010010011111011000000110110010001101001110100011001001100101011000011101110100010010010000101100110101001010000110010000100011101010101110011100010010011010000101000000000011010010010110101100101110001010001101100001100101011110101111100001000101001100110110010001000000100110101000110110101111111111110001011010110011010000111010110100101011010100000001101001011011011101001000010111000111100101100001000010011100110100100111110011110101011100010101000000110111101001110110101010011111001111100001000101100101101111011001110100111101111101110000110011000110011011111001110000100000011000110110100011101010110001010101101100010010010111011000101011000001000100110011010010101010101100110111110111011000010101100011100001110001101001111011110000110101100110001101110100010101110110011100110100011000000010001100010101011101010100110010010101010000000001010010000100011111110000010100001010000011000000010100001110000110010001011011111001111111101100000011111110010000101100000100100101100111101001110011111000011010110000001000101110001110011110001001101001111001111000011010000000000110000101100100110010100110011011000001111101100100111011010011000010010100111100011100101111000011000010011110111011111010011111000011111010000100101010111111111111101110111010011100101010110101100010110110001101110111011101111010111011111101101001010011100101100010111011000010100011011010001110110011101000110101001110110001111101111101001111111100000011000001101000001111111010100101110001011011000110110101010001100110100110011100110011110101000011010100001100100000001101010001110010111110000011010111011100111111011111000000010111000100101110000011000001000100111011011001010001100011110001101001111010100011100000101011101011101110010010001101011000011111100010011010111110101110100101001100010000111010011111100111100101000101000101111111110011101000111000100101011001011011101011001001000101010010111011000111001101100101111101111010011011011100111110000110000111011011001010100110000010110000100110010100110010010000111010011110---------------------000010110011001011101001101100011111101001111101010110110010001111110101101000111000101010001101111100010111010011110111001011011000000011110011111101010111110000100011011000011011000010110110000100101010100011101101100100101011100011010101101010001001010101010100101011101010111111001010100110001001110011010010110001001111100000111001011100011100111110101101101011011101110010111010011100010111001011001101111011010101001101010001001111111001100001001011100010011100001110000000011110100001110100010101010000000000011110011011001101101100000110000100101101101001111001011101111011100000100000000010000010110001110000101001110011000011110000100101011001000000011001100110011100111100010001101110110001100001111010011011111110111100101010010111000110011110000000011011010010111110011101011010101001110011111010010010101011001001110101110011110100010111111110100010010101010111101011011001000101110011101101100111000011110101011111111010101101011100111001001110111101100110010100100000101110111011000000010000111110011011111011101001101100111010010010011100111010111000001010101010100111011010111111100101110110011110001000111100010011100111000100010001110010110100100001000000101010101111110011011011101010000010011001010011000010100101111000100111011001001001010100001100011101111101100011010100001111110111011001010000111011101011100100010111011000001101011110111101100100111101110010100010101111001011001101010000111011101100000000000010110011010011000000001011111101101110011100111010110101100010001010011010110110011011111100100000000001000100011000010001101000111011001100101101000000110010101010101001100101110100001100010100000100010000010100001100001000000011001101000011011011110111010000101000111110000111110101100000001011000000001100010001111101000010110001001010000010111111011101110011101111111110010001111101010101001011010100101101111011011001011110001100110000010101001111000000010100101011000011011001100011001111101001011101001101111100000110100010001101011011000001011101000010001110011100000010100011000110110000110101111000110010101110101010011011010001100000111101111000101011001100001011010000111001110010010001010101000000010000011100010110001001000110101101000111011000110010101010001110110010010101110011101101001011010001101010111111001001001100010001001010110001110100011110101011000101010001101111111110010011111110001111001110011001111011100001010111010000101010000111111000101000000111000111011101110101101010101000011111101101010000010000010111000100010100010010011111111110010101011001010000111001010110011000111101011110011000100111010110101110101000101000001111010101001111011011110111100001011100101010110110100110100100011010110001110101010011111101101110011110001000101001011110100011000100010110101111111011101001000011001101010110001001111100001000110101110011011010001000010010111101001100001110110110100100001001011110100101100001010110100100010000010011001001011110001100100100111011001111111111001000011101110110011101011101000001001011001000000010000011111101100001011100010010010010110000011000000111111000101100101000011100001111000001010011101011010111110100101101100110001100000110010000110110110010111011011100101101001100010111101111001100101000110010000011010011001000001101010111100000000111000101011011101111100011011010011011001101111010111010000100101100000100001010110010000100111100100001001011111011010010100110100111011111000010111000111110111110101101101110111000010100011010100100001111110011011011010110000110100010100100001101010101010000001000100000011010111001001000000111011000011111100111011011101111000010000010001111110100011011111111101110010101011010110101011000100111010111010110000111001001000110110110100011011101110111010101010101000000111000000010100101110011000000100101000101001110000010001000110110110111001100111001111101000001110001011101000010011011010101000000011011001010011011101001111110110111011111111111010110100010100111110011101000110110010000010011110110011111000111111101001011110010010101011100000000110110000001111011010100000010101000011101001100000000010001101010001011010101001001011011011001111100110100000000000010001001010111001100001001100010010111111001000011100011001100011000111000100110110100100000100000001101011110000111110101111001011100000011011011101101010110001100011001000010000010011100101100101011100101110011100011001001011110110010100010001001000001000001000000101111001101010101100111000100010010011001001100101011010011000100001000010010101110001100110100011100111010001000010000111111100000000000011101000001110001110010100000101001001111101010101110100111001001001100010101000001111000101011100100011100001011101011111100111011110100011001011110111100001010110101010101111000110111101001100110100010100010011110101110001000001111100111010011101100111101111101101100110111101000101111001110010100010101010110010101001100101001001000111111001001001100011101000110110100010001011010100000000011111111100000101101011100111011100101111101010101001000111110101011100110000001111000110110110001110111000101010011111100110101001001011000111111111011101000110100111101011001001110101101111100010110110001100000111101000111110100001010110001111011011011001101100110110010000001100010111111011110111001110001110100100010000110011101100000100000011100001001100111000011011011101000011010110001110001101110000010010001010000101101111111011010111011111111011101111101011000010101100100011011111010010011011101010101111011111111100001001111001110001001101110001011111111010001101111011011010101000100000100101101100101111000000010101011010010000111101101101111011101011100000000011111010001000000010100001111110111110010110010000100001100010000100111000011011011110010110101100010101111011001010010011000110111001110110110011101101101100100110110111011110100100001000010100111101100010100110011010000110011100111001101101001110101101110000111100110001011000011111010000100101011011110111001110111000000111100001101001010010000100001010000000001000111101110111110010110100101100100010111111011000001001110100000010010001100110100001110010100000110001100111110101100101100111111001111000011011111101111011101011011101110011000001101100001111100001001010010101011101100101010000001001001110010110000111111110010110101111110000001010101010111101000111001110001000011101010000000110110011100101111001000111001001000110000101010101111010000010011011111101110100010111001010001011000100001001010010110010111100001011001110000110110111010001111110011101110110011011100011110101010110101010011111000011001100001101110001010010100111100111001100000011010010110101000011010100111101011000110100011001011101111011010001001010101110101111111101001111011100011000101100101100011010100011011100101000101010000010101111010001000100101111101011101111011011010110111001110111101111000100011001100010010100000001100011001100111001000010010000100011100001011111000000100010000000000101111101111000101001101101100111010101101101111000111111110110111100111001000000011000111010001100011001000101101010001011010110110100010100100011011100000000101101010001010000111101011100011011011101111001100101101000001111000001111111111101111000001000101101000110011011101110010000110110100110101011001000000000100000111111000011111110011100010101101001110110011101110110100101011111001110000111011010110100010110100110100110000100000111000110000100011100100110111000010010110101111101011010100001010001110111101001111000010111100101101101011000010111000001011110100100011111011010110010001001101100100110001100001001111111111101101000101111101101000110101100001111000100101001011001001110110001110011011011100111000100011100011011001011010111011000000010011101100000100001111010101101010100101110110010001000000011001110010001001001110100110011100011111010000010010011010101000010010010101011101001011110100001011011001010010101010010100011101000010011110010011010101100011010111000111101001110000000101101010001000000001001010100111101001011111010100110111110000101010110111000101101100011101110111001110100110000000100111100010110011010011101100101001011110110101011001100011001000001011011110101100101111110001100111101000110110111101001010001000101011100101000100101011111010011010010011000101111100100011001111110100100101100101111000010101010100011100101010111011011110110011011100110110000100001001011101010101011110001010101011001001010110010100011110100110010111101100000111110100100000101101011001100000100100100111001101001100100010111111001000110110101010000011001100001001010101011010111100000011110001011100000000000111010111110000000000110111101000101101000010000010100011011001100001101111101111011100111101111110001010110001100010101010001001100011010110001010010101010010011101111100011011010111011001100101111100111111111001000010010111100111001011101000101100000100101110000011110000100011111000011111000111101101001000000001111010111000001010010100011010100110001100110010011111000001011100101010110100100101100111111001111001101101111100000001101011100010100100111011010100011100011101101000011100010111101100111000101000011100000010110100011100100110011010100100111010100110011100001101010110001111010000101011001101011110001101100001100011100000101111100010100100010011000110101001110110100111100001110001100011000010111111101101100001111101110000010100111011000011100110100111011001111001000101100000000011100100000000110110000111011100111010010101100001001110100100111111010101000110100000011011111011001111110001111010110100011011101110111000110100001000101110110110010000011001101110110101001001010010011110100010111010010010000100001111010110000010111011110100011100101000111011000011001000101100011110100111000001000001111001110010011000110001000111000001110111110011110111011001011000011111101110101011111010011110010010010110010011101000001111110010010111100110111011010001111001100111111111110100001110011001111101110001110100000011100100110100111000101111000100001001011111101111010101111010001011100110011001110101111001001110110000100100100110100010101100000000000110101111011000100011110100111010000010100011011011010100000100011010111111001101000100000000001110101000101011010000000100101110000011001011110101011001001111010000000001110111011001010110101010100010000110110101101110010111110100110001101000011001101001101110101010010111011000000011100111100110100110011001010000000001011010101111011110101101110011010001001011110111111101110100111110010111100010101001111110110011010111101101110110100011000010000011000110100010101100100010111111101001110001001101100011010111011100000110001000000001111000010011111001111000100010101000111101011100101111100100111000001101011001010001111000111010011111110111110111000010111110111111001101101010000010010111100111011110000011000001011111000011100001100000010110000011101100110100001000010001001100001001101010110100110110001000001100110000011110110100001101110100111101100110001100100111100010110110001001101111111010100010000110101110101011111001011010101010100000000101000100001101111011000111001011100010111000001011011110010001010010000100111111000000000000100010000010010111110000011001100000000110101110100110110001101001100100000100010111101000101001101011010101101010101011010010001101000111001111000111000010010011010010010110110101101110111110110011001001100011010001010010011001100100010110100111001100000000110100110011001100100101001001000110111110101001111111000010001111100100011110011110100101000000001110111010111100010011100011000110010001011101110000111011011110111000101100000111010010101101100111111001000001000111101101111011011001010110001010010111100101010111000011000001011001010111111111100011110000101110100110110010111110010111111101110101001010001011110110010010101111010001111010000000011001000101100111000101111001010110110111000010000000011111010000101101111101010010000100011000011001000100011001010010101111001100011001001101110001110010001010001001111101000001110000001100100011101100000111101010100110000100010000000011011100111111001111010001110010110100111100011011000101100011110001100100001011001000000100010111100100010011000110000000000010100011101111110001110111010101011101111111000101010101111100110111101001000010110111100110010100011000000000010000100010000100111100101100011110000001001011011101010001000001101111111011100100110001001100010000101011110110011011110011111101000100000100110010011010010001101010110010000010011111101000011000110011011101100101011110000110000000001010111111000110011010010001111111000000101001001101001100100000100000101101111101000011010101111100011001011101111100000001001101101011010000011110001111100101001111101101011110111011010110100100110011111011100010011010101010011100010100011011111101111101101011101100010011000110001111111011001101001010110101000000111000110011010011101011011000001111000001010101110011100001000101110110111001011111110100100001001111100101011000100010100001111000011011101000100010000100000111100110110011001100111100001101101001000011101110111001111100000110001111001011101011111001010101101111000010110100100011101110010110000111111111001101101100111010101011011000010110100101110101011010011110111100110101001111111011111010100100001100101000111101101111000011110111010110101010011110001001110001000100100101111010111100000100110111110110111010001111111011011111001100001110 +100011010011101100000110001000001010001101110001100010100011101110010011100010010010011101001100111011001100101001111100000100101101001110011111111010011111111011101101000101010111100011100110111011011011011101001010011001010001001011010110100100011100100111001010010100001011111000000110110011100010100000101011110011110011001011111111101011111101111011000100110111000000110011011000001111111100100010101010001110010110001100010000101101000101000100100001110101000000011101100111011111001111101111111101000101010011101111011000010001011101011111101110110100101010100001000000001111010010001001101000101001110111011000010101000001010101111011010101100110101011101110010010100010110001011110000100001011011011001011100110111010001011010111101010011110100110000000001011011110011010010111111001000001111001010000111111011111010100101101111101110111101000110111010110101010101000010110010001010100100000000001010011000110100000011010100101000000011110011111110010011010000110101001001111111110111000110110111111010000011110010011010100101111110100111001100101001111001011100101111011100101100111011000100110000110101100110010110101000101101110000010111111000001111101101001011110001100111011000111001111011011100111011011001010110000010101001011000110110011111011011100100101010010000110000010100001101010000010101100111110110010111110001011100010100001101001110101101100111110010010000110001000011100101100111000100010011111001001100011001000110010001011000101100111100110001100001011001011011010110011001010110010110001001101111111001100010101001011000000110000010101111110100101001111011011110001111010111000000010000010101010100011101111101100100010111000011010001000100000101011110010010000101100101010110100110100001111010100000100101111011010100111010000011011010001000101101111010000011111011011000010101000000001111001101100110110110110011110100111001101100111110000101100001110101010100110011001001111011101001010011000111111011111001100001010001110011110111100001110100101110001000000101011001010011001011101110010001010110101101101101000101110101000101110000011100101010011100001110000000001000010101101001101001010101100110001100101111000000110111001100010010010100000100010001011101101000001000101000100101011100111001110010001111111000100100001011011010010000010001001100001111110100000001000010110100011101000000100010101111011100010100010111110110111111101011011100110010001000100111001100111001100110010000110000000110000100001010101111011100111111010111010110011011011010011101101011011000000000111111110101011000001010010000001111100000110111001100100010101101101100110001100010100000001001110001001100101011110100000001110011010000111000010111100010010001110000010110110110101010110111001010010101100010000101001110111111110000010011111000011100110110010000010011110100110110011100100011001010001010111011001000100011011101111000000101001111010110110011011100000010100101000100110111001010100110110000000000110010100101100101010101111110110011011100110100101110101101110010111110100110010011100000011100011010011001011110010001001111100110111101101110110110000111010100100010011111001110010110101010101011000011101001100011111100010001101110011110111001010100000101011010000101010010000111011011101011101100110100001011000000001000110110000010111000100111011100011011000010101101111000011011101100011100100011010101001011110111100101101000000001111001110011010110001110100100111111000110011101110010110010101001011111001101101110101110010001010011001111010110110011001100101001110110111101110011011111000111100100100011011111011011110010111111011111101100010001010010011011110111111100100111000000001001101111000011111001010101101000011110101100100011000100110011111010101001000001000000111101001000011110011101001100100011000101001011011011011101000000101000101111110000001101100000011110001001101111000000001001111100101000110010001101001101100100101110101001001101001001011010101110010110110010000110010111011010100100010101001011000110001111000011111010011011100110110101001001000101010011110011000110111101101011110110110110100000101111010011011110111110101110010111010000101110000010111111001010000111101101100011011110011100110001010010101110111011100001111010101110010000110110110001101101111010111011010101111001101101100111110001111110001100100001000010011001110001100110010110100010100101011000101110011010101100100110001011000000100010111111101100000110111101000111001011011001110011110111001111011110111101111100111101001110111010100100100110100110101110011101111101101000011010101000011100010010000110001110010101000011000110000111010100110111001110001010000011000010101011101111101101001000111101100010110110001101101111100001001001111010111101010110000110100100010110110111000111111111001001011001101010011100101000001110000111100010100111100001010111000111000101100101001011101001100000010110100001001111010101001101111001010010110111110010100111000110101011101110011011101110010010010101011010000010000101110010110100110000000010110110010011100010010101001011111100001110001000000100010000011010111101111101111010110000101111110010100101100000001010001000110101000100110010000011001110100101011101011100111111110100010111101111101010001001000101101101010010001100110011101100101000111001010111011000100101111001000110011100001001000101110100011001111110101100001001011100111001001000000101000101101111111001001010011100000000011110001011001101000011000100010111011110001111000100000111101010110111111100000111000000101100000000101100111011111010010011001011011100101110111001110100111010101000100101110110000001000110011010111000011101011100101100000100001111101110100000111010001000010000100110100010000011101011101101111010100010000011100110000010110101000010110001001001100110000111000011101101110110---------------------110100100011010101010010010111110010011001010001001001111111100110011000100010001011001100000101100110111110001011101110110100110111110110110101111100010000001101110110111100011100110010100111000001000001000000001111000110011110111101100110010010100111010011010011111001001100011001111010111110101110110000011010001100101010101100001111111100110011010011010111011101010001110110110110011001110010000011010101100001110010101110111000001000110000010101111001000110111111110000011110001101001100111000100110110111101100100110110100011101000001111110011000001100000110011010111110011000000111111010000000111000101000010011100011010000001110000100110100010111101111110110011011010100100001010010011001100011011011010101110000111010100000011010111101110111111001011110001010011010001110110011001011101110000011010110001110000000001101100110111010100100011011111011101111111100000000110111010010000100001001100111010010111101001111010000010001101111011110011101011110000000111110101010001001111001101110111000010100001010101100001100100100100110000111111100110110111001001001111000000101010010010110111001101101111010010100100000010101111000011010101010111100110110100100011111110111110001110110001110100010000010111101110111100010011010000110101110010001111001101100010110110111110111001100100101101100001100001100001101010101100000010101011100110100010010111000001100110101010110101010010100010001100001100100100011011110110100100001101010000111011001111000001110110011011101000000100011001001100011101111101000101010010100010101010101001011111100110010100000011011011011000111101111101000111111100000001011110010100001101011000100110011110101010001001001101010001010010101101000100110111011010111001111011001100101011010101000011101101100110001001001000010011010000000110001100000111011010101111001111110101101110011111000101010111111110000011011100000110110101000001100001001101100001111011111110011010111010101000011100110111101101011100010000111111001001100001101110100000101000100001111110010100011001101111100100100011000110000010111011111101100100001111011011000100010011101101100011110101000111001001100100011001101011001110100010011100111110111010001010100100110101010111010100111000111100111110010001010110001100110000011000010100110010101011100000111100011011000000011110010110100000010001100111001001100101010110110011100000001011100110000011001010100000011111100100110110011101111100111000100000011000101011010100100010101110010001111000011111001001000110001110000111100110011011000111111101011100000111000110111010011010001001111000000011111011101001110011110001011101100111101100000000010101100000101101101110100000111000101001100011111001110000001000110011101011101000100101111111000011110110001111000001010100001011001010101110001011101000111011101010011100111001110101110011001010111010010100110001011000100111100000001001100101011000010110010110011110010101110100111100011101111001011000101111100010111010111110100100110011011000011110111111111101010011011000010100010110011110101110110010101001010001111110011000110001011010010011110110000010110000111101000111101101111110001101010010110101000011010100000001011001111000001111001100011111010000010010011001010011001100101101111100010111101111111011000011001101110101001100100101011110010110001110100011010110010111110111001000101111000111000011000110110111100011111011110100001111000100100111011110001111011011100000110110001110100111111000111110001011111010101000000000100000110111111010001101011101101001100100111001001110000001001111110011111010100111100001111110111010010001010111111001011000011000110001100100111111001000111000110001111000001101001110100011101110011011110111010100000111000000101100110110010101010010111110010100100100111010110111100010110100100011100110010000001111010101100001101100101000100100000010111110010010000000011010101001010100011101101110011111111010111000001101001001110101000101001011110010001011101011110010010101101101010011101010000000101011110101011010111101111110100100100001011101100000101000110101100000000110110011011110101101110010101100101100000110000110010011100111010101011000001110011000001110110000100000100100100010001000101010011011001010011101010111101101011011101100001101001100110100001111111001010001110111111000100110111001000000011001100100110101000100011100011011001101000011101011111010101111100011011000010110100110010000110000110101111101001001101000100110110001000100011000110110010111000101010100001011000000010110110110101110010110010011010111100111011010000001101001100110000001001101111010011011010110111110101001110011001100101010011100101010011011001010101100000110011001100000110001111110011010101101100110010000100110011010111001100010110010011001111100101010101111111011100010110000111010110010100011000010010101010010110000011100011110100011000100000111011000000001001101001001011010110100110010111100100111111000001000100011001001111111111011100011111111101101100100111011110110001100111111111001100001001001110001010010111010010010100100111100001100000111000010011010011110000001110100110110011111101101110111110100101011100001111010111111010001111100011001101010110100111111110010111000110110000010010001110000101100011110111101001001000100001000111010000010100110110011100001101000111110010011011101001111001010011000100011100100011100001101101011011001010110110001110111010000011111110100011111111011110100000010101110011000001000011111111101000110111100111010100011000001000001010101000001101000110101111010110100100001001011000000001000110101000101101011000110000111100011111010111111110001001111100100111011111000010000011101110110111111110001100010101000110010001101000001111010011000011010001110100010001111010111100011101110110011001000011101011100111010101001100110100010101000011111111100110101100100010101010101011100010101001110010110111110101111101010000100001100011101100011010001111101110110010100010010000001101101011011001010001011011001101011011011101011001101000011111001111100010011111100011011111111111010110001110101001110101011000001110101100110011001001111101101111111110111001100110000010111001100010001000101101010001000111110001001101110111110011111000011100110110101010101000110011111101001101110011010001011000111100001000010100101100001110011001000100000110001011001011011000101110110100010111111101010101010101010011011001011000011000001010111111101011001010101111100101100100010001110111001010011010111101110111010000001010101110101100110101101100000101000011100111111110110110010101101101000100011100000011111111111110111101101100111100010011101011011111001111011111100110001111101101100000101101111111100011100101100100110100001010111111000000010100101111101111110100110010110000100111111100011110101010011100010010001111100010110110111011110100101010011111001000010111111111010111001110011010101011100011111101001100011001111000010000000000011111111101000000010011000001111000111000111000001011001010111110110111101110110111010000100101001011101101011011010010100011011001101000011110101101000000001001000010010101010011111101010110011001110100000001101001110110001000010000101010101111010011000011101011100110100110000100011100111111010000010110010110001111101110110010101110010100111000011001111001000100011011011111100110110110100101000111001110001000100001100011011011111110001100110000101001000000110110000011001010101100111110011100000000000000010000001000101111011010110100010000110100100100011001111111111100011100101001010101000111011101111110001101011011011011101101101011011001010100000011000000001111101000101000100000100011011101111000001010011011011111010111000010111111001100101111111010010100111001111010001010110100000000010001100110000011110010100001111011000011001001100110110000001101110100011000000100101000100111000100111111100110011011010101011111011111010011011111100100000011101011101001111011101001011100101010110011000111101011111101011100101110001011011111001001110111001100001000111011000010000001100000101010101011000111010010010110010110010100011100100011010111100100110000010000101000011010001011110101001001110001111011100010011100111011000011111010100101111101011100110101001010111110101100110000111101111010100000000000101110101001100101000000111000011110001010001010111100101010101011011101100100010110010000110011101001010010110101110011000100010001101000111101001111001101001000100101000001101000000010001000110010111010011111000100011011110000111111011111101110001010101011011101010011110011110011101111111010001010111000010110000111110110011100011011110001001101100101110001100010110100000011010010001001011011011110110001000110001000001100000111000100100110111110001010111001000011011011011001111101110111000111000000011101111011110001100111101001111111111110001010000010111111100010000101010100101101010000100010101111111110110011000111000010010001111111101101100101010111001010100011010001010111110001100110001100000110110100111011110111110111110011101100101100010011000001000011111101010010110000110110001011101100001111000100001001111011100000011111001000001010100000111001000110111000001101001001100010010001100010011100001000000001011111100110100001001011111101111000101101110000001100101001110000101001000001011010111101101001100000011101010111101101000111001100100111101101100100101101000110111111000001100101010100010011000011000101000100001111010110000000110100110111000110101111110000101001111111100010101100111110000010001110100000110100011110011101000100111011011000000110110001101111001011010100111111111010111110010001101110101000100110000110101101000110000101011011010101001110010000100010000010010011011100010101011001100111010101001110000110011011101000100001110101001000100000111110111101100111110000000110000101000011000101010110010010000110111111001110000000110111100000111011011011101111011111110001111011010011010110001111100000000101010010000001100011100110010001010001010001011001010111011100101010000111111001110000111000000111001001100010101110001101001010110010100101001011100001011110110010100110101000101110000110011100111110100100110010010001011110000000100010001001110101011100001000001010011011011010100001010110110000011110101011110010000110010110000111010001000011000100111000001011100000101111001011000101001100111110011101111111111000111000101110101000111010000011100111111101100001100100100000111010010100101010001111101011100100010101100110001110111111000001000100111000010011101011001101110100111100011100111100110111011011010001100110111000101011001101111001001011101101110111111011010100100010000100010111101101011001100001100100000111111101101101010110000010111010011000110000001110010111001111001110010001000011011011010110111111110011101001100000111110100100010110001000101011010010101111100111000111111100000011010011101100100111000101100000101101011011000011011100010101000111101111010011011011101100101101010110101111101010010011010111111000111101011110000000100010111101100000001111100000011100011101000110100011101100000010000100110000010111010101101101101000011101010111011110101001111101111001100010111010000000111111000110111000010111001010011011001000010001100101001001110101010100101100111101100101100001110001010010001010110110001011101110101110100010100001001100100000100010011000111000110100000011001001110001110111010000000111101001101011100000001001010010111011101000011010100011010100101101011001111001110011001010110000011110001101100010111011111101001111001101000000001011000100011111100010000011001100111010010001110000101001001000000100101101111101101011101001010111100000000010000000101010101101000100110010100110110101011111110111111001110101001100101000000100011010001011110100101111001111010100010110001101000100010000110000111100100010011111111010001010110101001111001011110001111101110001110100100001010001100010101101111110111101100111110100001100101001101110100011010101110001010110100011011110000001011100111001001101010001001011001010001000010010100110001010110011001100100001011111001010101010000101111111010011010111101000100111111100001000101010110110011110011100000111001100101111101111110011100001001110111010100110000111010001100111011000100001001100101100010011110001001001000010000011010010110111011100001001001111001111101111111100101100010111101011110111011000000010110110001001010010000100101111111100000001010000001010111101111101100100101010010000001010000001111001000010101110000011000100100111110001110111000110000011000101100110101111100001111101101011010100111010010100011011111000011001100101100000101101001110000010101100011010001111101110001111000101011000100011011000111101101010011100100010001110111101011001011000000000001000011011011001011111000010101101111000110000100101011001000001000001111101001011000101111101101111011111011001101010110100100111011000000111111001100001001110100011000010101101011101010110100001100010001100110111000101011111110010110110110011100101001010000110110011111100111111011110010101011001011011111011100100101001111001011000010011010101101011011001111110010110010110001001001001010100001010100100101011010100000100010110010010101000101100001000010101011100111111111010001010111100011101010101000110110010001011111111001011100001111001010010101101110000001010010101001100001100010111010110110001100111111101000101101000100001010111100110110010000110011110100101000110000000011110100011001000100011001011 +110010001001101001001011111100011111100110000001100010001100011010001101110100100001101110110011011000010100100001110011010101110110110101100111101110001010100010110010111000001001011111011111010000101000001001110100110110000110010010001100001110101101000101100110100011111111111101000011110000011011011100001101111001011100110110011011001000101000001101101101111100000001011010000101111110011001101100011011100000100010010010110111101000011101000100111000001011111111110110101000100110100111011010111101001100011111001000010000111010101000110010110011001001100100011100100000110101101100011011011110001111011111010011000111000100000010011010000010011100011110000010010111101110100111101010111011001101010100000010100100111111001100101100000101110110100101001110111100100010100101100111111111000001010101101111010000011011100000001000010100101111001011011100000101000001111110011101101100101111000011101000001011011110111100010010111110101100000100111111001000000111000001000100001010001111111110010110001010010110001111001111101010111011111110100011100110011111110011000001111110001011000011010100010110001000001111100011111100010010100000100001010100110111001010000101100101001111011001100101000110111101000010011000000100101011010010111110011001011101010101010110111100101100011011100010010010111010010100100011011000110011100110111111000100100110011101001111000110001100110000011001010111111010010000110010100011011001000001011100100001110100100100110100110110110100101010100111010100001011000000011100110111000000100010110011101010101010010011011001101001100101100000110111101010000111101010001010011010001111110000010101010001110011101000011011111101101001111100100000010100101101011100011010000101101001101110011110001101111100001011010000101011110110111110101000010010110000001001001000000100011011011011110011001000001111011101100001000000011000111110001110010011011111011001101101100001010101000011000110111100001001011010100001010000000110100000001101011000110001111110011010111000011111110110110010100000001011110001011111010111110101100001010001001110111010101101001001011111100110111101100101011101111110110100101010101001111100101001000011100110110010011101000100100101100011111011110001101010010101010011000111110010100110101110110111101100101010010110011100110011111010111101101011011100011101001101100010100000100010111010000110110101110001001100101001101000111111110101010101001100000100110010011011010100001101000100011000100011111100101001100101110111010110011010110111000001001100101000100110010110000111100000110010101001111110110111000000011010100010010001011011111110111101100010011001000001010011110001010111110001010110001101001110110001011001010011110110101101111001000101111110100001111110010001101110101111000111011000100100100011110011111100101111100010001111010000011000000101011101011011001110101000000011100010011101100011011111010110100101110011010110010100101010111011010000101001000010011010010000101111011000111101100001001011001011101110110111111100010101110111011111000100101101011111110011011001111111010100110001101000010100011001011010010001101110100111100001011011000100111001000001010000000111110010001001001110110100000100010110101011101001100111111000101010111011011110000111101011001011100111110011010000100000001100010001010110001101100111000101111110001111110010110011001101111010000100010101010011100110001101101101010001101010001010001100101101010011111001001011000111011001010000010101010010101101011010010110011011111000101110100111111011111101001001110010011011111001110110010001010000101001111000110000100100011001000110011011100111000000111101100010011010000110110110011010011010000110100110110011001110001000111011011011011110001011011101110101111001101001000001001110010100010000010001001001111100100000110100111001001110100001000001111101111011011101100011000000110010001010110100110010001011010110101011111111010011011011001011100010011100111110110110010011111001010101000000101010000001011110000010111001110101000010110101011110011101101110001110101010101101111101011101100010111000010010001100001001001001001011010110100001010001011100100001001011011010101100011111000000111011010111110101101010010010010110100111000101100000011100110110011011111101110110000110111000000001100001100010110011011101100100111111001011100010110101101000111111101001010100000010111000111110010111011100011111001110001110000110001001101010110010110000101001110000110111011011000001000111100001000100101110011110110100100010100001111110001000010100111101100101101101001010000011101010010101001010101101100010100011101111011100111101001111001010000000101011000011111100010010010110000100100111001100001011111100101011010110101111000100001011001110000001010110100000111011110101010111000100011111011100100011001101001011001000010101010000100100001001001110101100011111011111101001110011001100011010100011100000100110000101010100000100111010001011010101100110110100110111010011101011111111001000110100000010001010100010001111110001001110001100011010010111110111110011011111011000111000010001100100111101000100001100000100001000111101010100100000010010010101101000011111010100110001110011100110111110110010101110110010111111111001111111010110000011111100101100001110100000001001110001101000010110011101001001110010000011110110010101001001100100000110000001011111000110000010100011101000100010011101010110110100101000001000101011100011110010101011101000000000100000001000011101011011111110011110101110101000111010100111100010011001011001100000110000001110001111001100011011001001111101100010001100010111100001100110001111011000001101010010101111001011100000000101011000100101110100111001100011110101010011110000000110001011000010110011111101101011010101111101001010010100011001110110101000101110101101011---------------------111101010100110101000010011110001100001001010010110100100111110011101000101010001100100100110100010000110100101111001100010001010101100111010101000010001100111110011111111101110011100101000111111000111001001011001111110010010010111110100000110101000011011100101000111001010100110011100001011000110110101100100101010011010010011011100110110101101010010110100000001110010111110011000100000110100101000111001001000101110001110110101011100010111001100100010010000011000100100100010010101011111101001001000100000001111010110010101010011101101110111100011011010011101111001000110000100000001010010111001110111100101010000011010110101001101010101001000101110010110001000101100010111011000111011010000111001001001100000100110000101110111010000010011100010000100111001101001000011010010011011111111010011111110101000001111111011110011111000101001010011001000100101100000001100000101100110010110000101110010000011001011000000111110111011010001101000110010011000111001011001111111011010011011101011110110010100010001111100101000101110110100110010111111101011101001001010111101011011101101000010100110000010110011101000001101011010011110100001011011000010100011001011011111101001111111011011101101000001100110001011010101100010101011000001101111111001000100111000000110110111000100100010110011001101101001110111101101101101111000010101111010101101101001101011100110000001000100000011000101110011100000110011011010001010111101011010010101010101011100101011011101110101100111011000000101110101111011000100100110000101000010100000011011000110000000110100001100101011101000001110010101100011111000001110000101010101000001111010111110111110011100011101101001100001011101100011111100110010101101010001010011000100111100111000100101100101000001110111000101101001100010101011111100000111111111011010000001001000010011001101100111010111100011000110110110000001011011100101010000011001011110110100010101110001111100110011010010001001000011101100100011110000101000011101011110100011011001111001011110111010101100101001101001101000101101010010100011011110010100001110011111111100001111001011100100011001101111001110010100000000010000000101100101101101110111001101010111110010111000010011110111010011011010000101000011101000110001100000101000000010110110010000110111000010110010100100001100100111111101001111001001101101000001000110101001001001011110101010010100001110011001000111111110000111110110111111010111110010101011110110000001111010111011110000110101110101111001100101101101111000001000011100000010101000111100111000011110111100001001101100111001100110100100111111111011101110100010011010010101100111000110010010011010111010000101101001110111001011010011010101001100100000000100111110110000111000100001010110010011101000001110010011110000101000011011001010100100000101010110010110010010110100101011011100100100000001010101010011100010110011111111100001110001101110000010111110110011001001111101001110011101001101100011011110100100110110111110001100001011010111100000011101010010010010011010111111010010101001111110111011011101101010011001010011001111010010100000111101010110011010001011110001110110110010011001111100010101110110101001000101011011011001010000011000111001111000100011111111111010010110111000101011001010101010000011100011111100001011110010010110011001000111011111011100110000110011011000001110100100101100010011100100011101011000000001100000100111000001101111001000110010010100110111010010110011101000010101100111101010101011000100000001110110111111100101001010010110101101001000101101110100011110010011111101101000101110110101110011110100001010100111000111110110100011001001011001010010001110111001000010000101010100000011110001110010001011110001101000000010111101010110110001011001001101100001110101101111110011000000000101100111010110011101110100111010011011001111000110000101110000001100100110001110010101110110110010000011100111100011101111111100000110000001000101101101010100000110101011111000100000011100110011110101100100111011010110000110100100010101001100001101011111001000011110010011010000000000101001010001101100111110100000010101001011000101010100101110011100011001100010000000110011011000011100010000001101011111111100100100000011011011001000110100011111011111010111111000110111101110100100010000001101110011100101111011101110011110110111111101100010000101011100110011110110101000110101001001100000110011101111111110010110011101001010111001111010111000011111011011101000111001111001010000110011001010011001100011100000101110010111100010011001001100001100100111110111110001001011000101000100100001111101101100011000011010010000110111000101101011010111011001111110111011100111100101110011000100000000001001011001100010101100101010100000011111011000100111000000111000111100110100101111101100111001011100110100101111010001011001011110110010110110001110001010011011111100100001111100100110100000111101000001100110001010100100101011010010000110111101010010000110100111000001110000011101111011010000010111010111100000101001000010001000000101111000111011111000110010110011010101010000110001000010111001110000010111011101011101000010111110011100111100011110100000010100100111001100110010100010010111001010000100000100011011101010000010010110000111010101111110110111000001001101101100011001101101000001101110111110110100111110110101110111001101111101011101000010110001100010000010111001100010001110000000011100000000100001001011100000110011001101001110001111110000010100011010010100100100011110001001101001100110110111100011001101001111100011111100111111010111000100001001110011110101011000101011101001011001100101011110010110011110110100110110010100001001100111011010101010111001100111110011111001000000011100101000110011011111000001101100101000100010100111111011011100001001001010010101001001111101011111011100010101000110001011011111010110101000110001101101110100001110010110101001110001111100100011001010000100110100110000010010101100111000011101001101001010010111111010000110010111001010100001001100101111001111011011111101000110010110011011110000111110101010111111000100101011000010011000011110101110111111000101001000001000111101100101001011001001001000101010110111000110100100111001110111011000110001110010101101111001111011100101101000100111011101000110011001111110100010101010001110110000101010011100111101000001001001110010001000100111111001010100101001001000010101001001111110111010111010100001100001101111100000010000001100110100011111000101010111000111010000100011010110111011000011001111010010001110001010001010011001011010100101101001101111101110100001010101010011100000001100010111010000011010111101110000001001001001000000001000100001010110000111010110010101111111110110100011111001110010101000011010010111011001000101111010100111000101000001010000000100010101010110001111010100010010111011011011010100010001011110111111011000000101010011010110001110100101100101001100100011011011101111100010000010111010011110100101001111101111110011000010011001101010111001101110110101010101011011000011111000000000011100110001111111011001001110000010101110110001111011000110011110110101110111011000000000100000101110001100001000110010100101101100100011010110010011111100111010001010010111101001111100001110101100011011011110000110001011011101101010011011010011110100111101001111000110000110001111100110100000111010111101100111010110101100100110110001010111111110100010000000001010000110000100001011000110010101000110011010010001000101110001011000111100011000011010111100010000011101110001100111111110100000100010000010010111101011101010100011001000011100110100111000111001011101000111111111101100010011000111110110000110110110001111100010000101111001000101000011000101101110011001000100001100001001111100001010110111000010100010111100000100010100000010111100001100000011101111111001100110001001010101011101000001011101000100101101110100000000001110000010010001000011011001000010101101011110101001010111100110000000110111100101000101010011110111011110100110010001100000010110011100100111011001101100011010000110011010100001101111011101011001100000111000011001001001100010001010101011110010111111000100010100101001000100001011010001001100101010110001100100000010111101101011100011000111110011001010101000011011101011101011011010111010010001010000000111111000010101110100011100001101101010110011101011000000011010110011111010000001001010100000011011111110100101110110011011001001001111101100111110110001110011111111111010100010010000111100110101111011011000111101010111001001110100111101011011100100111111001100101011010010110110001111000110101110101111110001111101111010011101011100111011101010011000101001110001010001001100011111111000111000110101100110111110010110110101101001000011010101001011011110111011111000110010110000110011001000100010000000000110000111100100001011110010110101000100110111010010001111000001011111000100011000011000110010101010111100111100011100111001011000001101001110001000100000100100101010110100011111011111011100010101111000101111100010001101101001100110000001001011011000110111100001100011100110101111001010001100101111101111001111001111011111000001010010111101101100101001001001001110001001111110111011110001010100011110100000001001100001000011000100110010010001100011101010010111011100000001110011010101101010010000011111100011101010111101111111011110010010100001100111111011110101100111001100000101011001111110111010011101010101111101000001100111100010101010101101101000100010111111110111010100011100111010100111111001101000011101001100111110100100111011100011111010000000111010001000110100101010100100010111111101110001011110010011011111111011010001111000010100010111110001000110011010110010111110011011101100111010110110101010001011111100011010101011011100111010110100101001010110011000111000111001001110011000111011010001100100101111110010101101010101110011101110110011010101001100000101100000010111111001001100011010100000000001010001001111000100111111010110100111101001001101111101101100100010100011000110100011001101110100001101100101101110001100100010111111011011110000101110011101000011001000110110000110000011110111111101000101000010010101101010001111111010011110100100111000110111000110100110110000010101111110011011010101001101001100110000111111110011001001110101100000111010110111010111110111000001001101100101001100100100011000101001001001000110100110100101100101000011100010100011100110101000110101011000110111101001000000110001101011001011100001111010100011110111001111110110100101100101110011001101101111010101001110000111101011111110010010010010000101010011100010110001011110001100100010010011101010110100110010100000001001001110101110111001010001010010110111111010011001101110100110101100111100110011111101111001011110001100010110010000011010111100001001100101010001001000010110011110011000101000110000111010100000100000010010111111110110110101101001010110101100010011100101110101001100010100001110001101010001110110100111101101001011110000111100011101000100101111100101101101101110010111111100110010011011011011111100101011010111000101100001011101001101110010010100111010101101000111001001001011000010101111100111111111101110100110110110110011100101100011000110000001101000100111110101101010010000100110111101101101111101010000000011011101010001011001010011010110001000010111110111001010100111100100111010101011101111101100000001001111101000001010000111000101010010001000101111110110100110101100001011101100101111000001100110010100011111111010010011110000110110000011111101000110100011010001101010011011100100000111000100100100110111010001000111111111100111001011011100100100101010111100101110010001101011000101100000110101101100101001101010100010001100011101010011100011110110101001110011100110010101111101100001111001010010110010100100011000001010011000000111001111001101111000000111110010000110100011011000000010010110001001011101011010011010010101011101010000011101101011111011101100000010101011011011000001000001011100100111101010010001010100011011001111001010010101101000101110101011011101111011111000101011011100011010110110100111100100001111101100000011111000100101010111100101110111000010011001001110111111001110101010101100111100101101010111001000110010011000101101000101100010001011111010100011010110001010011011000001111001001010111001001000010111000011000010111001100010000111010111011000001111100101110000100010100111011001000100001110011101000001010010111001111000011111101100010010000101000100001011001011001011010000101101010100011000110001010111010101010110110001010111111011000100001110000111100011100110001000111011111001110111011010110000111000100100101001110000110111100001001010011110101101100111001100110001001011111001101111101011110010110110000101100010001111001111101001101000111011110010110101110111010011010100101011001111111100100000110101010010101100111110010111110100011111101111000110101000100110111000001001111110101001001001000100101101111010110100010111001001110000101101000100010000000101111011111110100010001111010100011010010001010010001111011110111011000100010011000111110111110100101000000110111111011010001000011101001000010101110111011110100011011000001110110110111101011110000111111110100001001010111110001100110010000010110011011111010110001100001000011101001100111001111011010011001111010010011100110100000001000011110010110100000011000010110001010111011111110110100001101100010111010000111011101101100101100110111000001111000010110000110011110 +101110110010100000101100100001110110111010111010001100110001101111010001000000000101001100110100011011110010000100000000110010100111111010111010001101000111000000100110110011010101111001011010010011100110011011100100000011110001111101111011011000100111000011111100010001000111101000101011101101010110000001101010100000010011111111001000011101001011111010011101100010000110000000000101111010011100010001011001100010011101001010010111010110110110001000101110000101110101000010111011001111110010011010101101100110001011111100010000100111101010111110100001100110111100111110101010110101110110001101111111000010010010001011000100000000011010000000011011101110110111110110110111111110001000010011000110101011110011000100010000001001100101110011100111011101010011101010010010110111001001000100100001111110010110110000001101111100111001111100111010100101011110001001011110011010110011001100001010011001001010001100101001101001011111110001010000101110011101010000110000011101010100011011001101000010110100111100011110000001001101010000110111000010110110011110010101110101110101111110101000101100110011010010011111000000111110010101100111000010000101011010011011001111000011101010111101011100111010101010101111101100110111011000100101000010111100111000100100000110010000000011010010011010100100111011100010110000000101001100010011110110000011110010110111100100111111101101110111000110111100000001001000100100011110111001000110110000000100001010110100101111111111111101011001010101110001110000000001101010100001100111001101010111011111000110111001001010101010011100001111011111000111001010011101011000111100100001000010000000011110110010110000011100110111111110101101100010011000001000101100111011001110011110110100110100111100010000111110100010110001111000010110101001100110111100001000000011010111111110101001010100000011010000111001100101001101010000000100001101010010000100010010101110000100011010110101100101100001001111000101011111010011111001011000100001111010111010100010100000111001111101110111110111011010000101110100101110000010010010011000011010001000100101111100000001011010100011101101111110110011100111110000011000110000100101101010110011110001111001000001111110100010011111000011110100100001110110001110100011010101011111100111010110010010110011100100110110011110101001000011001001110100101011110110101110100001101000000111000110011001011010101100000010100000111100011000000001111010111000110000010011110100100011000101100111101101100101111110000110010100010000100111010101011100011110111000001010011011001110100011101001010101011111001100001101110000101000110011111000100101000011100100111110001010011101110011110100111011000001110010010110100100001011000010000111000111000111000110101111110100111100110111001000101100111010011101101100110000101100111100011101111100011011111100101101101101000011110110100010000011010000001110010010010001000010111110001001101010110111000000101011010111000011001000100011001111101011011001001001000111001001100010011101010100010000010001111111110101101001000011000010111101100010001111101101010000001101011010101000010010010111110110111110110011010000110001001011111010110010011110011100001010001000100011101100011110001010111100100000100100111010010100101011001010011000100101111101011110010101110001010101101001101111001110000000111010111011010011011000010111100000101111100100000100101011010001110100110000001000110111110111000011011100010100001101000100111011010110011010010001110110010010101000101100000110110000101000000010000100000100101101110011100101100011101111110111010010011010010100010100101010000100110110001001111010100011000001111110110110011110010000000101000011111000011111010001100000111100111001010001101110000111011001111010011111011100011011100100000100100011000111101000101011010101000001011000001010011101011100100101111010011000111110111011101100001001000001001000000100011101100110001101001011001110110100110000000111010111110101010110111010000010001111101011011001101000100111100011111010000010010010110000001010100010101101011100100000111100000111101000101101010010100100011001000010111100001111100000011101111000111001001001111010011101010000000111011010011110001000010101110000111111111101011001110001101110110110101110101000011001110111101110101110101111000101011111000001011110010010010011001001011111000110011011101010011010111110011011001111001011010011000011011101101100001111101001000100110101010111001000000001110011100001001110001011010011111111010110011100011111111111101010110101111101001010000100001000011000100001011110001010110010010101011000101010111011111011011010100100010010111000110101100100101110011100100110111000011000110011110010001011001000101101010101011111001000010101011100011101101011010110110001110111101100000111101110110010110001100001001100000010000011100001001000111100110011100111000010101011001110101000110010010110000011010000111110010111110000001000100101001010110001011010011100101111101011000000111101011111011011000001001110000100101101010110101011111001001000100111011111001001011000100100001101110000011111001101101011100001011001011000110110001011000010010010110111000110111010010011110101011011110010000100010001011010101100110000111001101110011110110110111110001010100100011110100000110110011100010100000101110010001101111010111110000110101111111110100011000101101010010111111001010111111010010001011110110100111101110100100100110100100111000011000110110100011101001000100101110101010101100111001110100010111101011111101100001100001110011111001101000001100110101101011100001010000010000010101001000001111111111010000001111110001010011011110100100001101000000101001001011011010110000000101011010011100010001000011010000010001101011110011011001110000010110000000001011010100111000110110110111000011001110011000011100001100000010---------------------101100110000000010110101100111101101001001010110101000100011011101010010001010001001111000000111011111101011011101101011101111000011101000100010100100011111101000110011110000000110100011100111001010011101111010101010110101100010001100111001100011100010001001101010110101010010111101101011110110001001001011010111101110100001100000011111100100111111010101011111000000110000111000100111110000111001101001000000010000001011011100011010101000001010101001001011101111000111000101011101100011111100000010101100100101011010011000100000000101001001111111100011110100111111110101000100001101010011010111101110111001111011000011110110100100011001001100000001110101110110110111011001100011000111111000110001110100111000001111110000000100011100100101110110001110110100110001110010000011010110100111110100111000001011100111010111100101000000000101100100110010101100010111000111000010001001100011000011100001101011110001110011000101110101101100010100100001011000111111111110100010011110011101100110110011000001011011100000101111110000000011101011000110101101010101100011010001100000010100011110100000100111100000001000011011001000111001100010100100011110011110010111010101100110011010001110010101110011100110111001110011100101011101100101010000000111111100101110100001101100101101000100011110101011001011011111001011010110010001111011101100010011100010101011000111100101000101110010000100111101110001011110110100011111001001011110010001010011110101011000100110110000011001000111001000101101101110001111001010011100011011001010001000000000101101100111010111100100000001001111101100101111111110011000111100011010001000001111000110111000001101011110001111011001100010110101001010101110001111111001001010111001010110100111011111001011001111010010011000111101101100101111111011110000000100010110100111111110000111010010001010111111010011010000101001101010011000011101110111111111100110000000100101011001000101010111010110100001010001001111011110010001010100001100010000110110101101110110001010110011001001011001001001101101111111111011000110111111011000000010011100111101111100111011111001001110001010101000101000001000000111001001101100011111101001101110100000000101100010010010011110111110010101001010100000110100011110010010100111010111001110010110101101001101110010111000100110011011011001101110000110010111111011010101011100001110101010011111011001110001110100111110111100100011110100111100100101110000100000011101100011010100111001110001011011001100110001100111000111011111011001000000101111011000011010010010100011010111111110010010011001101100110110111000110110010001101111011010000011001110111100010110111100110011011011001101100101101001100101101100011110000110001000110101010010000110000110100010011111110001100110111111011110101111111101100101011001100111101110001000101011110111100011010100000011011001001011010110001000101010000010000011011000010000001101101010110010111001000101101010010111010100000110111010001110110111100111011111110110101100111001111011011001011010011110111011100011100001011011101100111010011111110001101011011001011110111110101110001010111111000001010010001000101010111110011110000000010110011011101110111000000010000110100111110001000101111001101110011100010101111101001000111000111100011010110100011011101100001110001001101101111011100001111010010101111101101111110100111010010110100111011101010101010011000101100000101001010100110011110110110101100100111101110101011010100111000010111101011100100010110011101001010101110010101001110111100010110010010010001000000000011010000000111011101010101110001000010111100100111100011001010000010000101110000111101010001111101101100001101110011010000101010111000101111101001111101111100110000111000111100101110100011011101111101011111001000011111000100110100001100100010000111011011010001111011101010110100001101100111110011010010011101001010000010000101001110001011100111010001011001011101100000010011011110010000100000111100001100101101001101000011011010011110111110100011010101001010110100100000001110000011111100101100101101100001101110110000110100110000101101100101100000110001100111010001001111001010110010010111001100110010110100001000100100110001011100111100111011101110111001111011100111101011111000010011101000000000010010001001001001100111001111101010010001101111101100110000111111011110101010111100010101000110001110011101001001001000011110100001110011001000110111000110101111011011010001110111011101101100001110111110010011001010001010010110110011001010111110001000010101000010100110100011110100010100000000010111001111110000111001010011001100000111110000010110100101101010100011111011101001001100010011101111101111111010011010110011111010011101010110110011110100101000101010110110000110101111000010001110001100100110110011110110011000101010100111000100111010011110011010101010101001000111100011101000010101110001011001000101010011100000011010001110010110110011010001111111000000101010101101010011001001110111111111110011010001010110010101011010011000101000111011101110000000111000110111110011010100111001011111100011011110110000011110011111011111001001110010000101101011010000001000010001111101001011110010101000000110001011001110100110010111110000011100001111100110000011000000010000100111011011011100111111101110001111010101110101001101010001100100100010101111101100010111101110100001011110001101010110011011000100011110111010100100001111010010001001000001011100111111011110110100010011110010101111110010101100100100000101001000000111110111000110100000010111010001001001111100001111001111011010100011000000111101001100000101111101001111111111101101010100000011100001110111001000010111101001000010101101110111001011001100100111011010100101101001010001101011100111010001011011100011001101100111000111011101111000101100000101000010110000110101100110000000000011000011110101100011000010111110110001011111100010111010100111101110100010110011011111010010111001101000110010001001010011111111010001111000111101111011111001101101000010011001010110011111011100001100000010010101001000110110100010011000100111110010010010111101100110001010001011000101000110100111110101000100111010011011011001101010111001111001101101000101110111001000000110010101000100101101011100001101011010101000000101101011011001011100100100110110100101100001010000110111001111111011111000110010011100010001100011101101010101111100111101011001101100101011001010011011000101011110010001010110010100111110110101111110110111101111010010111011001000010000110000100010100111111001101110011000001110011000101111101001001100110110000011111001001101010010100101010010100101010101000011111101101111001000000001111010010100010000101110000001001111001011010110101100100001101101011001011001011101111000110101100010011100011010010001101101010101001110111111100101111001100110010010111001111101110101101101000001001100010010001001000000101101011111100101100100110100111000111010010011001111110010011010011011010000100111010010101110101101011011011100010000110000111111010011010011101010111110010100100001111101011111100000010100001001011010000111000111110000011100010010101010110100011010101010100101010101110010100010010110110010110111111000010100100110000100011111000100100110111101000111100011101000010010001100010000000111011001101101100000001101100011110110000101111011100100110010011101101110110111110100100001000001010011000101101000110110001101100000001010101101100100010101111001000100000000001101100100101011100000011000100101000001001000101111111100001011111001000110111100000000001110101000100011100100010110011000001000100100110101111110101111100100100100101101001011100001010100110110110011000100100110010010001000100101111110101011110101000111010010010111010001110110000010100111100000110111100100100110010100110011001110111100101010010010011111101000100010011101001010110111010001011111100101110011010011110010010011110101100111000111011010101000111000000010000111110000110011000111011110101111001110100000011001001011111010000000110111111101000111110111110011101001111111100001011101010111111010110011001101110001111000111010110100111100101111111111111111001100000101101100101001010001001100000011000001000110100010100000001100011110001011001110010011110011011111110101111001000110011100101111011100110100000001110111100001001100110001110001000111100011100001001110001100100101111011111000100000001011000111011111010100010101010100010010011011011001101111000010111011101001011011111001011101111111011111000100100101011010001011101101001011100000101101100011000101001111101111011100010101001010000100001000111001101101010011010111100101111000100000000011001101010100010111100100001011010000110000010111101000100111100101000010111010000110110101011111010100111000010100001111011001000111001110101110110111000010000010110100111111001101100100111001100001011101010000010111010011100001100000011110000000100001011111000101101111110111001110011001111100100000000101100011000110010010110011111110000011110011110111010000010110011010100010101001001110011010000101110010111000110001000001101110001101110100110010001101001100101001100011101000101010110111100101100111000011111101011110101100111010101000111000001110101011100010011011110101001101011010011101111111011110010101100110101101000101000011101010101111100101101100010110000001000110101101100101010110111111001001110100001101011010101110011011101001011001101001001000110110011010011101111010111101001010111101110111111010100111100010001110110101000101101010010010011100011100100000000010101000111010110111011110101101001110010010110010101111100011101000011000011100000110000110000001111001111110010110000000001101000010110011011100010011010101000110101000100100011010000111011011111011011111001111010011010110000010011001010100000010100101010110101011111101100101101110101010111111101100100001011001101100101100000011100011101110111100000101010000001001101111000111100101101110101101010010100101010111101101010110011100001101010110001111110110100101101100111010110011111100000001001010010100101111011001011000111100110001000011110000111011010011001110111101111100111110011110011011010101101100101111110011000111110111110011001110010101001010010110000001101000001100100011111101000001000011110010111010011011100110010001110001110001011101010000111001001001000111111111101001010111000010100101100111010000111001110110000111101110011100000000110111000111001100110001011110011000000101100110011011010000100001010111001100110011001001011111001010000011010110110110011111111010000001011101100111000111110000110110110001010100011001001100110001111100010110111010010111101100010000110011000111011110110000011111000010011010010010110101001100111100010000000011000011100110011010001110101010010100011010000011011110111011011100110000000101111001110001010000010010100000001110011001111111100110000011110011011101111011000100100110010110110001011110111000000101100001100000000011011010110000101010101110110110110011010001110010000100001110000110101001010110110101111010100001100011110111001100000111011101001101101110010001110000101110110100101110001110111110110011011110001011010011001101101001000101000001100110011101101001101001000101100111000101110011010110110001101110011110011010110000010111011111010110100000111000100110111011010101001010000011011001010001000000011110100101110110010000000001010101011001100001011110110101110000110010110010101001101000101000110100101111000011011100011001000010111101011001010100000101110101011011100001001011010010010001100011010011100010100010010010001010100111001111100010110100100011110110100001110010010000001011110010001010001001111101000110000110111101110101000011010110000011001001101010101001010111101010000001111101111000100000100100111111101101000111110101000001001000001001011100100000100001100001000011100011001000011111010000100010010001001011111001001011101010011100101000010101101001101000000000100110000010111010110111110000111101011111100011100110000010101110011100110011000010001111011001111111100000001110111101111010011111111001111111110101001010111001111100100001000011110001100011010101110101001100011011011000001011100001110110011111111101101110000011000111100011111010110111000011000111110011010100101111110001111010011101100001001011011101000000011110100011001001111011101111010110101001000000011101111000100000100110100110111101101110101100001001000100111011010011111111101001110110111111101100111111101100111000011100001011001111001101011001100111111101110101011010010000100101011110100110110101110110000101001101111101111100111001000101001001001001001110011011010001011111011100011110101000010001001111010000111001101111110100011001001000000011101100011100101100000001100010110110010000110101101010010100101111111110111110111011101011110101110011101011000100010010100010011111010110010011011101110011010111101010000100011100000110011000110010110000000010001110011100101010110100010010101100111001000011101010111001110111111000011000111010010110100101110000100110101110000111100100110001111110011101000110010110010100001000101110000101110000011001001111000100111010101100000101101010110011100001011100110000111111111111000101001100000011101000111110111110100110011111110100011110101101100100101010010010101000100011001011100000101011100101001011011100010011010010101010010010110000001101101000101001011101011111011101110000001110111000110111000001001110100010110100000011000111111011010110001100000111011 +010101011110000111110010101100111010110010110010110011010010110111011011100001010001011000010100001100110001000110111000101100100111011100100001011011100011010010100101001110001111000001100110101111100101000101000000001010110110000001101111011001110100011110101111111110100000001100100110001010101111010111010111110000100011110111101011010110010011010111110111000000000010011110000000010010000100100100010101011011010111111001000111100101001011100110100111000010001101010010000011010101111110000000101000000010101011111011111000010110001001111111100110011011010001001010011000000101100111001100001110111010100001110000101010001001000011000000000010110110110110100010100000011000000110110101001010000110110111001010101001011001110011001100010000101001110100111011110100101101111101111110011100001000111010101100001011010010101000011001100000101111111000001101100111000001000011010000001011100100001001010101101111110111001111100011101111100010111101110100100011000011000100011010111111000100111100111110000000110010101111101001110000011000011101010100111011011100011101011010011000010010100011010111010110000101111000001001110101010000010110111100101101011001010010000001100000011111101100001111100111101101011000010110011011011010011010111101001010100001100100100010011110101111000000111100011010000101001001101010111100001011111100111100111110110100100100011001101010110001000100001001000001101010110000101001001101111111110111010000001100010111000101010000001111101000100111001010111010011011000010011101101011111000011011011001101000100001111101100110010010001100101101111110111001110011101100010111110011000101000010010111000001011000010100101011001001101011011100010110110011100000010000010111011110001010001111111110100010100001111010111110111011000000000111010101000100010101010010100000000001111100111011110100101100011001001001000001100110101101010101101011011000010101010001011110000111101010101101011110000010011100111101011110101111110011010010011111011101111110001000110110110000001110011110001010110000111111011100001110111011111001100011010010000011000011010011101101101111011100001001111110001100011111111101101010010111011001011000110100010010000100010001110110001011100110001010011001010000001011011000100011010100000010100100110010111111001001110000000100110001101110011111001111001010111000010011111011111110010110010111010101100001001000110111100100100111001011101100001100010010111110110100101110100100110110001110000110101110011111101001001000100101001011011111000101110100001011000010011000111001001101001100010101111110110010110000000111001110011001000110110111011011001111000001100100110111100110011111010111111111110000001000100001010110100001101101010100100101100001011111010001010101101111011111010000000010001011001100000001111110100000101111001000001010010100110111011011100011101111010100101001001000011100110101111001000011001010000111100111100010101111010001011010101101010100011101001000111011010100010101010101110100001110000100110011000101000110110101000001001100011110100110110001001010100110010001000000000011001100110010011110101101111110111001101101000100001101000111000111101110011110001101100100101000010101010101101001101010000111010011001101010101010100011111100000000101010101111111110000010110011010101010010001011111111101001101101011111001011100100010111100010100110010101110010011010111000001111100001000011000101101011010110001110010001001111010011101010101101110000000000000111110101111010010101011000000011010100101110111110111010110100100101110110100100011101011100111111000010101010110111001001000100010010000010010110001101010111010111010010000101011100111110011101011011100001000101111001100111111010110001000001100111100111010100010001111111001001000111110110010011011100100010011110100010100100001010001111010111000111010100110010001011111001011001011011100001101100000000000110110111111001011001011101001110001010101111000011101010110011011110110101011000010011101110001000011100111011111000001110101010010110111101010010110010011110001010011100100110000011001100010101010111011101110100101011101101111101001000010001100110110100001111100110111101010100100001101110111101100111000010110111010001011101010110101100011110010111001000011101000111100100010010000001110011011101011001100111100100010111001011001010010100111000111000011001100011011100110101101101010000010010011111110100101011111000010101100110111001001111101111010001010001100100011001111100010110010010000000010101101110010100100111111001111101001000001111100110111010001000000001101001100111110110001010010010001110100010010101010110010011110001101100011001001110001000000001101111100110000111000100101101001101111000011001011011100010101001101111010011111101001000110000100001000010110000111010101110011000011101100111001111100110101000000001100110110010000101101010100011011001011111000111011101001110010011000000001011001111100010100011001110001110101010010010000010110010111110111000111011000100111100011111011011100110111111100001011101111101101111011110011111111010100111101000001011000100111001000110100101011101001110110000101101100111100101110111101110111100010101100001000110101010101011001000110100001011010100011010111010010110101110000100000110000111011100100010111010010100000010011010000000001110011000001110110000111011100000101111111110010011100000110000000001100100000000110010001000001111000001101100010111011100101010001111101001101001001010100001111101111010111011100010101000000001100101001111101100001000000110110100011101010010001010110110111000001111001110001000001000101111100011100010111001010111100100111110111101010011101111110110010111110010000110000010001110101100001111011001001011110100000010111011000111001000110010111110110111101101100101010111100110111011100000111111011110010101---------------------110001000100001011001011110111110001100011101111011010001101110111010001001011111001111011001110100010011011010110100110010111100101000101111101100011111010100000101100011001010011101111111110001000010011001101100111110111011011101111010100010110001110011110010101000100100000110100000000110001010100110000100100010100101001010011110110011110011010111110000111011111101110100111010010101101011110001000011100101111001111011101100011111001001110100100110000000110000100010001001001001011000110100001100101101101111000011000011100100110100100110000011011100010100010000110001011001011110100101000000000101010001111111011101011101110011011101010001111010010111110111001111011011011110110011000110001101110111010001010101001110110000111011001101010001011100011001111011010100111111110010001111111010111010000011001010111010010111111110011111110010001010011001001101101110011000000100010001100110010111000111001101001000010101100010100101011100111111110110010100011000110101110101011010111101011011001001001011010100111000001010001111001101000011011111110101001011110100011001010011101100111001010010111111001110110010001010100011111001110101000010001000100100110101000100101111100110111101001010111100001101000111110010000011110101000110000001101000000011110100011001111000111100010110011110000011110011011101001111100001000101110101111111100000100011110011000101101101001001111011001011111011001111000011101001000011111110111010111111100101011010000010100100011000100001000000010000101001100110000110101111101101110100001000001000011010010100111001011111010101000011010111000001000101000010010010011101101111100111001100111000000111011000100001011001100001010000001010110010001001101000000101001001111100100011110110101001000111110011100010001010111001001000010110110000101001001101011100010100001001111011001111100011011101111101111111011011011010100011000000001000011000100101110011110011101101010001000110011100111010101110101100101110111000000010000011100110001101001001011001100111000000100111100000001100011111111110001011111111111101110100001001100001000111100011110000010100011011101100101010110111011011010000000011001000010001100101011001011100100001111101100011111111011001010100101111111101101100100011101111101100100111110011001011011000011101001011111011001000111110101001010001110011000010100111011110011101110011111110001001100011111010101011111110011101000010111111011011100010010110000010001011001010100011110001110101001111111010000010000011110010011110001010100011011110000011110111100011100001111010100000110011010011110001100100110100111111001010111010110000101010101101111001110011001001001001000000000011110011100101000111110010000011101010111000101101111110110101000111001000001010111101110010111010110001110001001000010001111010111001010101100000101001111101100011000111110101011010001100100110010101011101100001010010100111100110000001001001001011010100111111011110001100000100000001110001110011011011110000100101001001110111110101010000111100111000010101100101101010110101111101100110100010111000110110010000111010110010011011010111011111010010000111110010011110110010010011110100101110110000011100010110011011110000000011101100000001011101001101011011111110001000010010110011110010100110100101101101011010101011011111111100110110010110000000100101000000010110111110000111001011110100001011100001000110000110110000100001101101110100100010111101111000111000000110001000011111111010011111011000101101011110011110101100101101001000011000100101011100101100001001010011011011100011101100100011100001000010011011001001000010000110010001111111101010010011111101001101001001000101110111010010100110100000011001011000001111011100100010101011011110111111000001100001111011000000000110111110000001111100010001111011110011010100101011100111100110010111110111010110001100011010011101010000000000100011110100101011001110011100001101100100011100011111010111000100000011100101001001000101101100011111001000010101001000100100000100001110011111110011100101001111011001101111000011100001101001100100111101110110000011101011100111000010010010100000000001011100011011000110000000001100111110001101110101011111001101011011011111100010100111101001100111011110001000101101101101001110011100100010010111011110001011000001100100010011110100100110100100011001000010010000101001100110101111010100101111000111110111101101001101001110111100011101110000010110010111111000110001110011010001110010110111000101110011110000101010110011110011010100100010101110010000001001000101001010010000101010001001001001010101001010001110101100110011110001001101100001100110011010011010000011011010110000000000011101001011010110010000010100011010010101100000110101000000001011011110010110111101111001010101001000110101100101010111000011110001010011011011101111111000010010001111000110111101101010000000100111001010101100010100100100011001000110110010100011101101111111000101111100001011011111000110100001010010000110000110110000000000011001011011000010111000010000100011001100010011111000101110011010010000001101001101000000110110111101011010001001101100011010010110011100110011101111111010010000010110110000111110011011001100001101001100111011100111000011110100100100000001010001010101110010100101110011010000010110011000011001011000101010101101110010101011001000101101010010010001010010111100000101010011100100100110011011100001010100101110001101111110101101101001001011011010110110010011000111110100011101110110111010110001010001000000101110111100011110110011100011001010110011100010010110110110111101011101101111011110100001001110100111000000110101111111101111110000001000110010011110011000010011000101101101011100011001101100110110010110111000110000101011100110001000001110111010011100101111111001100000100101101100000010100011000000100110101001111110110110001000101001010101011000011001011111111111001011101000101000101100100011011011011011010000001100010011100000111011010010101001000011001000101111101010000110010001000110001100011101101110011001000101101111110000000110010110000011010111000110111101101000011110110010011010110010101101111000010111010101000000110001100011011010101001110101010110011111110000010011000000101001011000011010101000001011100111101110011110101000110010111100011110001011110110101010101000101100011100111110011010101111011000010001010001010000111010010100010001001000010100101001001110110101111000011010111100000101111010100111001100001000000110010010000100100100111100001101111000001111101010010101000100011001001100000110011010100110000001101001101010111111001011111000101100101000111011111100010110100011001001000100000010010101000110110101010111010111110100101000011000111101111101100111101111110010000100111001110001111101100111110001100001011011010101101000101011101001000001101000101001011000110011111111000011010101011111110100110010010000001111010111101101001001000000110110000001010101100111000101111100010000111001011001000000011011111011011010000110111010110011011000100100011000111100111001100010111001000110101100101010000001000011000111111101100101101101111011111010100101100011010010000100100111101001100000101100000001111011110101110010011000001000001110001100000100111100111111010010110110101000000011101000111110000010001110001010110110011110110101110101011001001001011101000000011011110011001010111111010010101111100100111001100100000011001011101111000011011000000001011000010101110010011110101100001100000111100101111100111101111100000011101100111010101101110111111100111000011101000001011001000011001001111010011111110011001010101001010101100111011001000111101101111111111101110111110111110111101010001011110011011111100111010101001011011011101110111100111011010110000111110101111111110111000010110110001101001111011000101101000111001011100001110011011101000011100001001000001100010101010110000010101000000111111111101001010001111101010001011101010000111110011001010010111101101010101001101111101001101010011010101111001000011010101011010100011110001110011100110011001101110110111011011110000111110100110000110101000110110011001110001011100000000110100000010101110111101111001101010111010000111001101000001110111001001111001001110011110000110010100000111110100011011110011101111000001111110111101111011001000001010111100011111001000010100010111101111101011100110010001010011000111110011001100101011000011100100100001011111010110010011010101011010000101110001100011001100111111011110001000011000111110010010010110100010100111010110111100010111010011110000111101001111011111011001111010001111000111100110110000101000110101000111000011001110111100010111010111001000011010011111001001111010010111001110011010011101110001010111100111010100000101000100110011011001011001001101010010100000111011011100110000010010001011100101101011111111111011101110111000000010100011101110100011001011110010110011001001110001011111111001010011001101000000111011111101111000010001110101010000010101011101101100010001010111101100000100000110000001001101000110000000000011000111001111110101110101000101101100111100110000000100101000011000010010001000111111101101110110001000111100000010100000010010010001011100101011000101110100001000011000000010000111111010000110001000001001110101110101010011100001100101000001111001101111000000000100100100101000111000100100010000001010101010100110101100010001110100011000100100100111010011111011101010110011111110110010111110011101101100101111111000111001001011111111101100101001111111100101111010110101001110111110000100111001110000001100001011111011101111110101001110010111100011111000010000100001101101000111101110110011011011000010111001100010101001011110011110010010110101010111100001101010001111100101000101000111000111111101111111110101001111000011010011000000111001000101100101010100111100111101011000111100010010010111000111101011010111100101001001100001111000100110110111010000111011000110010111010011000001000111001101101110001011001100100101001011101010011111001101101001101101110011111100011011001101100010001010111110001101100001010011010110011110001101111100011000001100010011011101010011100001101001110100110110001111010101110111000001101100101011100111111001111001101011010100100101011010000110110001101000011111101000010111110000100010100111001011010101001100100000100011100001000000110110010001100001010010000101100100011101010000000011100001101010001111000100000011110100100101011001100010110011101110111100000110010100000011111100101001010000011001011010010001011000100110110110010110111100001001100101011001101000111111100011110000000001001000100100001000011101101111010100011110101100111101101010001110000110111110001000111110011011001101101000110001101000000100010101010011111111101101100000111101010101111000000001000000010010110000000111100001010111010001110110000011111010110010001010000100000011010101111110111111000110010110100111000010100100101100011011111110100001111111101010111110100010011001100101111010001100011001011010000100111110011001001110001001100001010001011000101111101110010101000110100110110010000011111111000100110001101111111001110101011101101101101100010110100011010101110010001011101000000111110111101101011101011011001000010110100110100011100101111101111100100010101011110011000100000000011001110111100011110011110000111011100110001101001001000010000011011001111111100110000000110011100010110101111101010101000110011010101001011001010010111110010011101100100101000100100111011101001101110001010010001101111011111110010000100110100010011101111100110101011111111010011101100011110000001111110110111000001101010101001000100000001110100100111111011100000001101110101010011011000101100011101010000000000010001011110110110101101011011100011010000110101001011100010111110010001110000111010100111101111110101001011100111100000110111100011000110010111011101100100101000011111011101101111001110001100101110110000111011100101101111100101010100101110011101110110010010110100010000011101011101111100110010010100010110101000011000111001010001100010111001011010110000010110011010101010010001111001000010101111100111100010011100101011100000100001111011110100110010110100010010010001101111100101110001010000110010010100100000101110101111100111111010100110100100100001011001011100101110011000010100010101011000100001101100010010011001100100110001010100000110111011000010101011001001101100111101010101001111110101111001010111011101000100001110010011011000111100100101100111010001011010000111111110110011101000100100001110010000000011010100111000110011110100101010101101111100011010111111011101011110010100001010111000100000100001000001101001001001001100011010100110011101010101100100001010010000101100011010001101011001011010111100110100010010001010100101111010000011111011110100100010110001011011011111001100110001010111100100000110001010000011001110011011000101000100100000101000000000011111110010110101000000111100101100010110101000100011111110111001101000110000100001111001111001011000110110000010111010010000011111101001001111000100000101001110011001011100001011001001001011011001001001011111110100100011011010100010010010010011011011000000101010011011010010001100101001000100100111011000111011000000010101110100010100101101010011100111001111110001001001100101100001000100000100010000011100001100101100111100110000001111101100010000010100101011001010110110110111110101100111011101010001011000000010000111011001000011010100101100000100100000111100001001100010011001111 +ls11msgs +11010001101111001011010000011101111101011010001110010110100111100100111101111100001100010101000111111100101110010011000000000000100111100110101110110110111011101110111000111010010011111110110000100001001010010011101101101--------------------- +00011110100011100010001101101100110001010101000101000110001100001100111111110100111000011101101111101011100101111001010101111111100011011001110101100001010110001010111001111100001000011101101111010110111100001111000000011--------------------- +10010101000001001010001000111001101011000001010010111011100011110101011000011011100000110100000011000101011111111100101110001010110011110010011010101001001000100000011100100011101001110011000111111101101001101101001110011--------------------- +11110010010011001101100001001010110001010110101001011010110111101001011111010010111101101001010101110110000111011101101000011001001110011000111110101010001110011111010000110001110011101011010011101101110111111001010100001--------------------- +01101100111101100100001001101000101111001010011110101110101000100100001111000111101110111111011001111100011110000011110111000100010111110100100010100011010100011110110000000000011101101001011110000111011100100011110010110--------------------- +11100101101110011011101000110110110010110100000001011001011000001101011101111110111111101110111010000110010011110010101111001111010100101101000110100010101011101011000100111010100001000000100011111000101111110101100111000--------------------- +00111001001011100000010000010111010110100001110000110010110010100100011011100011101001000011110101000011111110110011100001011111001010110011110100101100000110000100011110010111100111110101000101111010010011010100011011001--------------------- +00100010011111000111100110001111111010000110111000010010111001011100111100110111110010001000000010101111101110000100010100011010100011110111111110000010001111010110101100010100011010010010110100001001011010101101100001110--------------------- +10001000011110000010011011101011010100101100100000100111001000011111011000101101111111010000010101011000011010010010111110001111110111110010010111001101100101000101011000000101010011100110111100110100010110011001100101000--------------------- +10111000101110010100110110100100001101000010111101001010001011001010101110110000001111100101110101101111001010110000000000011001101101010110100000111001011101110011000110000110110001101100111111011100000110010100011000000--------------------- +ls11cwds +0000011101111101011010001110010110100111100100111101111100001100010101000111111100101110010011000000000000100111100110101110110110111011101110111000111010010011111110110000100001001010010011101101101---------------------11101110100100101011111110001110001001010011010110011000101000010110111101111010100010000100000011010010110101101111111001011111010100100011001011000000101010011110001100001110011011100011101100011101010010101010100010101000010000110001110101011001011011010001111110100101000011111011110100000001111000000100100110000111111001001001001110111110100001010111010111000111011010000101101101110010110110111111010011110000110111011001111110001000101011111110001101000011111000001000011110000010110110100001100110 +1101101100110001010101000101000110001100001100111111110100111000011101101111101011100101111001010101111111100011011001110101100001010110001010111001111100001000011101101111010110111100001111000000011---------------------10110011000000001010001010011010011001010111100011111100010000101100000011100011010110010000011000101010111110100110011101011110110010010111001111110101101011011110000101100110000111011110010010010111000010001100101010011010101100010101110110111111011011111100110011000000010011001101101110101001111010100001110000101101100100011101100100110010000101001011010110001000000011001110010010111011111010011000110011001110110010000010001010100010010010101111001110001011000111100101010001100100100101100001011100 +1000111001101011000001010010111011100011110101011000011011100000110100000011000101011111111100101110001010110011110010011010101001001000100000011100100011101001110011000111111101101001101101001110011---------------------11101011011001011000011000000000011100010011000011010111001001010000110111100000001000111001111010101010101011110000000010110001100001011100010110110000001000010000100001010010110111000101001111011100111101001110011111111111101010010100101100110111110111001011101110011011001100101010010111001001100010001001101001011011010010001101011110101110110100101011101101101110111100000101001000011001101001101011001100100011100101010101111001010101110001001100011111000110111010000101000000010001101000100111111101 +0001001010110001010110101001011010110111101001011111010010111101101001010101110110000111011101101000011001001110011000111110101010001110011111010000110001110011101011010011101101110111111001010100001---------------------10111001000101100010111101001011001001101101100010101111110000100101000101100010100000011101011100011010011101010110010010001100111101100010011100111101011011000010010110111110000001100000010010010100000000010111111101010001111010011110100101000101001011110100001010001001101110111111000010110110111000100101110110110010010010001001011101110011000100010010001010101010000001001111010010001000101100011000001101100111010110110010110111010101010010000010111100010100010010110010100110001101111001100001111111 +1001101000101111001010011110101110101000100100001111000111101110111111011001111100011110000011110111000100010111110100100010100011010100011110110000000000011101101001011110000111011100100011110010110---------------------00011111100101000101000010001001110111011111010010111000011111000000010011010011010100000011000010101101100101100110110011100111110010010101000001111101001010111001010001000010111011011100001100000101011010011011001000011000001111110010110101111011011010010011000000100000110010100000100001100100001110111101001001010011001011111000010001011001010001100110111010100011111101101011010000001110010010100100100000100110000100100000000100011010000010001100011010001110010001011000010001010000001110010101010110 +1000110110110010110100000001011001011000001101011101111110111111101110111010000110010011110010101111001111010100101101000110100010101011101011000100111010100001000000100011111000101111110101100111000---------------------10111110100100010011010111101101111010001011000101111011011101011111011111101011001010001100011100111000001001100000011000001010011011110010001001011001110100011100000010111010101101000000100001011001100101111101011110100000100111111101011110110010101010011110101110010100101010010001111111000010001110010110111011011101100110000101000110011010001000011010010001000100100110101101101101100110010101000010000010101111010010010011101000110011010001110111111011100100101101000011101010010100110101110101111011 +0000010111010110100001110000110010110010100100011011100011101001000011110101000011111110110011100001011111001010110011110100101100000110000100011110010111100111110101000101111010010011010100011011001---------------------01100011011110111110011000001000110110100110110011110011111100010011000011110100111100010000010001000001001100000011101100100001110111001100011101110101001001101011110011011011010101011000010101100111110001000100010101100000001011100100001010001001101000000110100101110001011101101010111001010101110010100101100001111001000110110110010010000010100011010111101100010101111100010000111110011011111100110100101100010011001110100000001101000101100111001111101100011110100110100011011010101011101100111010011010 +0110001111111010000110111000010010111001011100111100110111110010001000000010101111101110000100010100011010100011110111111110000010001111010110101100010100011010010010110100001001011010101101100001110---------------------01011010010010100001011010100010100011000011110101100110011001100011011111111100001111001011101010110011111100011101110110011100010100000100000010111111001101101101001010000010000000110101010101000111010110111101001011000100100001110001011001100100100000110100011000111000011110001100010100001010101110110001101010100101101100101101111000111101100110101110110100100111100110000000001011110010001101110111101011010101100110000011111001100101010111000100001101010011101011110101110011111100000101100010110001 +1011101011010100101100100000100111001000011111011000101101111111010000010101011000011010010010111110001111110111110010010111001101100101000101011000000101010011100110111100110100010110011001100101000---------------------11110110111000111010100001001110011110001011111010111100010001010100000100101110010100000111111000000110100011100010011010111001010111001110010110000011010101100001101011010101110100101110110010010100011001001101011000010100010011001100101111100010100010110010110010000101011001001101010010101101000000000010000001000100000101111110010011000000100010101000101000110101110001110011110110000001010101111001000010110010000001101011111111111101101001011101101100101101011101010111100010101000110111100101000111 +0110100100001101000010111101001010001011001010101110110000001111100101110101101111001010110000000000011001101101010110100000111001011101110011000110000110110001101100111111011100000110010100011000000---------------------10110010101000110101101001001001011111001001001111011110000011101110001001001010000100000010010011001011011011010101111000100000100011010111011111111000001010101001110000000000100100111010000001111000001111101110000010101100110000010110100000110000011010101110010011010110101011111010011011010000111101111100001001000000101101001011101101100111000011010011111001011011110101011001010000110100011111000111100100111010101110101010101001010111111101100001100101100001011001111110001110101110110000000010011000 +ls22msgs +1001000101100010110010110111011100110110000000111100010001101110011111101101001011111101000000010001010100101100111011101010101110110101111111010111101101001011101111001011100100011100010001001111001110011001110001011101111111001100110010111111100010111110101011111001011110100011110111111001011011001000110111100100110110000111010111011011010110011111100011000010111101001011010000001000001111010000111010011001100101100100000010001011010010101011101001011001011--------------------- +0101101011010000101100111100000010011100111010110001100111101101101110011111010001000110111111001110100111100011010000001001011001010100110000001100000000111000101011000001101101110010111110010101010110111101011111000100100001011011010011101100110100110101111001100110001011111011110111110010111000000001011000110011111010111000001111000010101000011100000000010110111110001001010000100011111010110110110100110111111010010010011000111000011111011100010010100000101--------------------- +1110100110011011010001110000111100001001100001101001111100110111101101000001000110100001001011011010110010110110111101001110001010011011110001111101110000110001111000111111000000001100100000011011010101011001110001010011111011101001101001101000100011010110010100111010010100001010100011100111010001101111000101100101010001101001101110100000000101100111100001000100111010100101011111111110011101100010011101111111001011101000011000001010010110011000111110011001011--------------------- +0000011110100001100011101011001011011110000100000110111001010010111010010001110011100110101000010010111000010001011011111011010101101011111011011100010011011111001000010100101100101001100101010101010111101000001111111000001001111011000101111010001010101100010111010001010011001000001000100010101100011101111100000100010111101110110010011000000011100110111100010001001101101101100100011110110100000100011101101101101010110000101111000111011011001010000110000110110--------------------- +1110010010010001010110100100010011001000001011101100001010101001001110100000101001110010001111010011000010110011011101010010011110000001000011101110001110001011100110010111100000011111010011010011001001000110110000001100100100100000010001011110001011000110101001110010011011111110001010101011110011101000001100011110100000011010001101100000000100001010010101111101000100101011000000000011110110010111101111000000011111101001101100111001001111000100001111110111101--------------------- +1111000101111100110101000111110111111110010110100110011101100001011010001010101101001101010101010001010111110100100010011110100000100010100011011111110011000110100011100111000110001011000001001000000101010100011000111000001110001011000000001100100010010000010010101111100000010011000101111110100010000101110111000001000011001001110100111101100110000100101000011111000001010100101000011010010000010101100010100111101011000100010111001110000101101001011001100001111--------------------- +1110111111001110000111000010101111010100000111001010100010110010111111110111010101000111101101110010110001100101011010000100001110001001000110000001011010111001010100110110000001011010101101111000110110110011011111000111011101111000100110001000011010010100100111000110111011000011001111111100000100010011100101101010111001100011011010011010110011100011110101100110100111011000010101000010110001100010001110111100000000001001011100110101000001111111101001010101010--------------------- +0111101111100010011101011011001110100011100101000001001001000110001001011101001100011100100000001011001100011010111001000010011010000000010011010001001011001101111101100010110010011011100000001011111001011101110111001000011100010000010111011011011100100101110101100000000011100111011011110110110000111100011110001111000101100001000100001010100001100111000011010111011010001110011110101001010000001110001010111000100010011111000111000010010101000001011010100000111--------------------- +0001100100111111001010010111111001010101101011010010001100101100110000000101110010001011001111111111000101111101001000100001010100100001010000010111011100011111000010001010100100000110111110011011000110101010110010001000101001011100111111011111100011001000100110110111010110000011000001110010111111000011010011111111001000001110000101110110100100101010101101110000101101111000101010110011010101101000110101100111100101010110000011110110100000100100111101010101100--------------------- +1110010011000110101010111010111011110001011000100100011001011110110001110101010101110100001111000110101000100111111011100010011110100011100000111001110000000011111011001110100111100011111000101100000101100100111100110000111101011011101100101100000101010100011001100011111010101111111010110011101101110100101111111011111000001001001100101001000111100110001000111110000011000010110111001010110011111010111100010010000011001011010111111010011000101000100111011110010--------------------- +ls22cwds +00111100010001101110011111101101001011111101000000010001010100101100111011101010101110110101111111010111101101001011101111001011100100011100010001001111001110011001110001011101111111001100110010111111100010111110101011111001011110100011110111111001011011001000110111100100110110000111010111011011010110011111100011000010111101001011010000001000001111010000111010011001100101100100000010001011010010101011101001011001011---------------------0110101010000110010100011101010101000011110010000010011001011110111001101111110011101110110001001000010101111111001110011111101101010101010110101011111000110000110001111000110011111100000100001011011101101100111111000101010000100001110010100110000100111101111010100001000100010110101011110100001001001101001001001001111100111101110000100110001000101010101100011110001011110011000100010000011100111110000010110111000110001001000111111111101100011110001110011101011101000010101100010100110000011100101000001011010101000110111000000111101001111100001111000010110010111111110111110001111010101010001111111111011110011001111110011111100100010100100010110110001101001000100111100001100010011000000101000011011101100011100100100110011011111011001100000010101111001000101011000011111001111100011110011110011000100111001011110101010010011101101111101101011101110011010010100010110011011001010010001111001110110001000101110011100000101100000110010000101011111111010010100010101101011100011010010100010110001100100001110001 +10110001100111101101101110011111010001000110111111001110100111100011010000001001011001010100110000001100000000111000101011000001101101110010111110010101010110111101011111000100100001011011010011101100110100110101111001100110001011111011110111110010111000000001011000110011111010111000001111000010101000011100000000010110111110001001010000100011111010110110110100110111111010010010011000111000011111011100010010100000101---------------------1010100001000110010001110111110000010100100001101011101111011100101101101001100011000011110110000100010000001000101100001011001001001111011010110111110000101011001000111100111011010001011001000011011011101111110001111101010100001111001100111011110110001101111010100011101101100000110001001100101110111010111111110110110110111001000101000101100001001110110010011101001111110110111111110010100010110011101000110100000101110100100111101001100010001101111011110000110110111101000000011000011110011110011011000110011000111110100111110001011111011111111110011101101010010110101001110000001010011000001010101001101100010000101000010101000111110101101111100110111001110011111010000110011111001011101101100011110110010000010000101100001011011111010100010000010010111000011100101011011011100101000001100110011000000001010001011110010001000010100011010001110111110000010110010111001001110000111010100100011110101000100010101101011101000011111111111000011001011101101111111000010001110101001000101010101101010011010011111101 +01101001111100110111101101000001000110100001001011011010110010110110111101001110001010011011110001111101110000110001111000111111000000001100100000011011010101011001110001010011111011101001101001101000100011010110010100111010010100001010100011100111010001101111000101100101010001101001101110100000000101100111100001000100111010100101011111111110011101100010011101111111001011101000011000001010010110011000111110011001011---------------------0110010011101111110111010111010111110100011111111000011110000010101010100110001001000101111000101010010100010010011001010001110110101000011110110110000001100000101100000000111010101000010000000111100001101001011111010000100010111010000000100001110000100111001111000101101111010010100101111111100001010001011010110111001010010000111101100001110111111110010010011110101110100111011000001000000100110100010000001011001000110001000010100000110111110101010011111111010101010111111001100011010101100100100010111110010001110110001100101110110110010110111000000111001010000001101000101110000000111100001101110111001111100001110100001110100011011011100110100111000111110110001111101101111100011110101001010010010110101111100000101110100111001001110110110111111111001110010000001111000000010000110110010100000100101101011011001111101100001110110100111011011101111111001101000001010000000101100010010011001101110010110100111111010001111001100011000011101110110110001100100000111110100001101100001111110010111000101001101110 +00000110111001010010111010010001110011100110101000010010111000010001011011111011010101101011111011011100010011011111001000010100101100101001100101010101010111101000001111111000001001111011000101111010001010101100010111010001010011001000001000100010101100011101111100000100010111101110110010011000000011100110111100010001001101101101100100011110110100000100011101101101101010110000101111000111011011001010000110000110110---------------------1010010100000000110111111001000010110101101011000111011101111111001100101101001100010011001000000100010011010111010101101000110101110111010111011000111010101101001011010111101001001101010011111111100100100001101010111000111000111100101100101000011100010001111100000111011100100101001001000100001110000010001011011100100100001011100000001100111111110010001101101001100100010001100101111100000000000100100001011011010100000000010110011000111010000011011111100101100100000011010110111001011101111010111010010111110001110110011011011101000100010011110111110010000011110000011111111111000100110011111100011100000100101110010011010111010010011001110100101011101100011111111111011011101010100110111100001011110100010010100101110010101010101011101001001010101010111100100110000011101110000100000111011110001010000110000001100111101001101100100101011111111101010111000100010111100011010001101110101110110010111111010001110101001100011101110110110100111111101000100100011111001111000100101110010000010100011101000101001000 +11101100001010101001001110100000101001110010001111010011000010110011011101010010011110000001000011101110001110001011100110010111100000011111010011010011001001000110110000001100100100100000010001011110001011000110101001110010011011111110001010101011110011101000001100011110100000011010001101100000000100001010010101111101000100101011000000000011110110010111101111000000011111101001101100111001001111000100001111110111101---------------------1110010111111100111011110000010010010110000000011011111001111110101100110110000111000101001110111011010101100111010011010110001011000000000000110110001010111111011010100000011101111100000101100111110111110011110011001111100010001011110001011101101001110000001101100100110111111010000001111001011000101011010001110100101100000110011111001000000000110000011011011010111010010110011100010011011100100100001111100110011000101000100100110011001001001110110100111101100111110111000100011001011000101010010011010010010100100000000000001001101001011111001011100110000110000000111010010100100100010001111001110001001101101101000101101010100100010110001010010111101001011000111001110000001000001011111001101011110001101110110010111011100101101100011010101111010110000001010101110011011000001100010100100111011000000101001011100001101100101001111100101100000100101000111101110001111111010100000011101100100001000101000010111010011110000010001101110011110101111111000011000000011010110110000100110111110000010010111100101100 +10100110011101100001011010001010101101001101010101010001010111110100100010011110100000100010100011011111110011000110100011100111000110001011000001001000000101010100011000111000001110001011000000001100100010010000010010101111100000010011000101111110100010000101110111000001000011001001110100111101100110000100101000011111000001010100101000011010010000010101100010100111101011000100010111001110000101101001011001100001111---------------------0110011001111101000011111000110001011101111111100010000111100010111101001110111111110100100110010100000001001010101110100101100010011101010011100100011111111001001111010000010010000010000101100101000010110001000100010111001110110110001001010101011100111011000111001011111111110001000100000000111011100101100101011001001010110010101101100001010111001110100011111001110001111011011001001010000010100000110011001111010001101010111101101010100101101101100101111100110111101110000100100110001000111111110111101101101111111110011011101101010011010110100111001101011010010100001010000000000110000011110111100100111001011111100011101000110110101101001011000101000110100011100000110000110011111101001001111101001101011011000101111011000010000100110001101011110100100000100110111111011101010111110101000111110010010101001111011101110010100110000111100111010011110100011010011101100000111111000110000000011111001110010100010100011000000111000001001011000000010000111111011001110000000011011000101001111100001110110011000001 +11001010100010110010111111110111010101000111101101110010110001100101011010000100001110001001000110000001011010111001010100110110000001011010101101111000110110110011011111000111011101111000100110001000011010010100100111000110111011000011001111111100000100010011100101101010111001100011011010011010110011100011110101100110100111011000010101000010110001100010001110111100000000001001011100110101000001111111101001010101010---------------------1000110000111110111110011101111010010001100110101111111001011110100110101101100101111111101110101111100101110011010010001110100000111011001111101111000010100100110011110101011111010010100010001000100101000101110011001100010101000101001110100010110100011001101011001101111010011010100100110001010110111000100000011101110111111111000011000011111101001110111111100110100111000110000110000001101100101010110000000101001110010100111101000000111010101111011110110111100101111011100010100110001001100011111100000101000001011011100110000001011111110001001011111111010001000010000011010100101110111010000101010111001000111000111010111110101111010101110101101101110111001110111001111100010100000111000001011001011000011001001010111111000100100000001010110111011100010010100100000001101000110100010001101101010101111110100001011000010001010011000001000011001101000001001111010101110100110001110011000111000110011111010010100000101010001010011111111110001100001001001011100011001000000111101101010000001110001111000110000100 +01000001001001000110001001011101001100011100100000001011001100011010111001000010011010000000010011010001001011001101111101100010110010011011100000001011111001011101110111001000011100010000010111011011011100100101110101100000000011100111011011110110110000111100011110001111000101100001000100001010100001100111000011010111011010001110011110101001010000001110001010111000100010011111000111000010010101000001011010100000111---------------------0111000100010010100000100000011111000101011111101111010000110100010011100111010010011010011001111001010001110101000100000101010110011110010111100100011011001110111101100110010010011011011010011101100101111110001100010001010011100011111010110000101111111111111011001001000111110001100100110111011100011011010100111000000111001111001010001001010011001000011111101111010010101101101010111000010101001011100000001010001111011101100110111000011111110010010100000011111100110110110001111001100110001001000011000111010001010001100111110010101101110011111111011000001010001000101001001111111000111000000110111100000001110110110010111001101011011101000001101111000110010110010001111011111100011111101001101100001000100101010101111100010010010010111111100110011000000110110111100011101101101011101111110110110100010100011111101010000111111110001010001100101100101001010101101000000101100100010111100100101000110001111100000101100000010101010011110110010101110110011110010010100100111000110011111101100000000011110011111100 +11010010001100101100110000000101110010001011001111111111000101111101001000100001010100100001010000010111011100011111000010001010100100000110111110011011000110101010110010001000101001011100111111011111100011001000100110110111010110000011000001110010111111000011010011111111001000001110000101110110100100101010101101110000101101111000101010110011010101101000110101100111100101010110000011110110100000100100111101010101100---------------------0110100011110100100110011000001110101011110000111001110110100000011001101100100001110011110111000001000001011101100101101111000110110000101111110111011000001100001011000011101000111010001110110100010100111100011111010111011101001000000111110100011011001101010111010010011100001110000001100100000111001111110010111011100001001100100110111001110011111001101010010110001100000001101011111001011010011000010000000111000010110000100001111011111000011111101100110001100000110111110100100001000000010011100111010111001000011001110010110001011011011001101111001000010111111110011010110100111111100101110101001001110001001111001100000111100000011110100000100001010110101111011100001110100010100110000101011010011111001110101101001011000010111101101011110100010000011100101111111110000000011010110001100101010001001010100010111101000111100101101111000000110010011111110000011101010101010111100101111100111011111000001110010010001101111001010011001101111110000110000010110111001010111000000011110111111010111000011011001010 +00100100011001011110110001110101010101110100001111000110101000100111111011100010011110100011100000111001110000000011111011001110100111100011111000101100000101100100111100110000111101011011101100101100000101010100011001100011111010101111111010110011101101110100101111111011111000001001001100101001000111100110001000111110000011000010110111001010110011111010111100010010000011001011010111111010011000101000100111011110010---------------------1110011100001110000101010000000001011100101111100000110010000100011101101100011110000000101011111101101000010111100100011100101101100010101001111000001110111100001010000110001101101110100100110110111011111101011100010111111010011000001100100111111000100001101110000110011100001100111101001000110000101111111011010101001101010001101111110111101001101101100010001001111101010110110010100000101110001101001110010010010010111001101000010000010101101110000011111100000110100001111000110101110010001000111011011111111010010101000011100000010111000010101101100010001110001110010011000011001100000001110110000001001101011110101100001110011101100110101110000111110000000000011110000111100011011100011110001000111001100000101010010010101101010011001100100110000101000011010111101001101110100000000110011011110001001100011110101001011110010011100100111111011000010100011110101001111100111100100100000000101010001011111110000111101100000101010111111111101111001111101100110000011101111011110010111101111011110000110110000001 +ls44msgs +10111111100111010010001110001100010010011110010000110000101000010100011111000100000001010001101110011110000111000111010000111000000100111001101100001100000001010101010001011101000101010011100001011101111010100100001010010010011110011111010000001110101101110000101001001110101001010100011101010100101001101101000101010100101000110101010000110101110011110011001110010010010110011101001101111101010100001101111100010000010000010000110010011011110100010001101110000101110110100101101001100110111110010101001010000000101011010101111111001110110100011000001111100010010010000101001110000110100010010111100100011111000111100001101101001010011000000000111111100001010101111010101011111010001011000100111001001001001110010000101001010111100011111111000011011100011000011001000111011000010010011011110100100000010011010011110010000010110100001001000001011001001000011011000110101110110010111110110011001110100111110110111010111101110010010000000110010101000--------------------- +11111000010000101111101011100011001101100101011101101101110111100010001100000101000111010101010111001101111100010010110011000111011111011001011001101101101010101000000111000101101110001101011110001000010000001011000110110000001011001011011111100101010100100101110001111100110110111100101011011010111101110100000100001011000000001100000001111000110010000101011110010011011010011010000110100111101101100011110101100010101011010110101011110011000111111100010001010010010010110001110000011110110100010110111101011101001101101010110001000111000011010110110001110001111110010110111000110100000001010011010110010000101111110010111110100111001110100011011101010111111111110001010111111101010000000100110110011000010111100010110111000001110001100001100000100111111111111011010011110101101010010110011011010111011111100110000111111000010010101001100101111111001001110111101111100101011011101000011111010001000110111111010110000100111101010101101101011000111--------------------- +00111010111110011111000100001010111000100111111101100100110000111101101011111110100011010111111101001011111001000000011011001011001111010111110110001001000101101011011100000010111110000100110010111100000000001101111111101010000101000001100010100110000101101010001111111111100000100001001001011010011000101101011010000010111110110100001001000110011011111011110010001111011101001101001101111000100100010101111111001110000000001101110010001001110110010011110001011001000001101110110010110011111011010001010010100110000111110101011011100100001000100011000010100001101010001100010000000110010101001100000111001011110001111001010110010101101111110010111011010110011110101010011010100101110111111101100110010010010000011110010101011010010001010001101001100101100110001101101100011100101000011010000001000001111100011001010110011000101000111100101110001011000101001111000110100010110110111011100010001101000001110100001000011011011010110111100010011000001--------------------- +01011101101101001110111111100111011111101100001001001111011101000010001100110010011110010001101100000001011111110000010010011101111011001101110110011110110100000010010101010010100010011111111110100011111101001011010001100110001111010011110000100000010100000111100000111100000101011010000001110011011011011111110001111101001110010100001001101100001010010001110110010011101010110011110001101110100010011001101010010011111000000100010010010010100101010011100001000110000001100011010000010111101101101110011011001100100011110011001110000001101011010000101010110000000011011010100000010010001001010101010110000010010010101101100101011111000101111100010011111100010011011111101101011110011001011101111010100000110110101000101000100010000100111101110000101101011000010100111011011101011010011000001010010100010101111111100100101111101101011000011100001111111110001010100101010100011001010000011000101110110101110101101011011110010000110110111100100100100--------------------- +10001111000110011000101001010011110001001010100111011001111011010010010100000010010110001010100001001110001110111000010101110101100001001110100010010110010000100111100110010111011011010011101101111111011000110000100111110110010110011110001101011010001110010000010110110001011010001100101101110111000100001100000000111100010101001111001101100111011100001010111110111000001101001011111111010110100101001110001000101111010001111100001110100110011011100011101100010100100110000001011111101011011110111011000101000110111011011010101110011111101000110111110100010111100100011101000010000010110101111110111010100110001100100011110110111000011011001010100111000010100001011100101110011111011010001110001000111110101001101010111001101001100010100110101001011010101000101010000100011000101100010101010111010001100000011110111101101010011110001001100110100110110001111111100101001000111110110111100001101011001111000000001111111010011000000111100100000000000--------------------- +01100111011101100111110011001001010001101010010011010011001100001000001111110101011100010100001010101010010101100110001100110101000110110110110110011010001011100110101101011100101110111101010011000100010011100010110001100110011110100000001000101100100110100100101111000010001100000110011000110100111111010111101001000100110100111100101111110011110100000101001010110000001001111100111110100011100110101000110101101011011010010101100110000011111101110011101000000000011100011010011010101000000111100110101110101010101011001011110011001011000011111110010110111011101100011011111100010011010010010011001001101000110001001010001110110000000101000010001001011000111111001011000100011000001010111001001101111101010000101101010001011100001111110011111011101001110101101001100101110011000000010100001111101001010110000110000000101111111111000000110001100100101100011001010000000001101100101001011101001110000011111000111000101110111011001111000111100110010--------------------- +01001001111110111111111000010110101100010010111001110010001010000100001001111100001001011001011111110101111010011110101001101001101101011001000100100010001001110101000010000001110111011111000010101011000101011011001001001001100011010001010110010111110111110010011111100111110010000110101011110100101101010111110110101010010010001010001011101011010111100001110001100010100000100000111000001000000100111010000111011000010110111110101101001101001011100001000000101101100001110101010001100110111110111110011001010101001011001001011000110011011111000100101001011000110010100101100000001011111100001110111110000010110000101010011011011110111100000110100000010111001101100110001101011110110000000001100111100000000100101111010001000010111100001100010111101111000111110101000110101111110010100111010001001100111100110011111001000110110111010011001010011101111111100000011100010011111011001011010111101100101010000111100110101111000111001111111100100110110--------------------- +10111011010110011000000100001011011110000100110111001001111011010000011011001001110000111001111110100011110011100101111110100001110010101011010101100101111111101010010000100011110101010011010011000000010110110000111010111001011111101111100011000000000110110001011100010110100111001111110100010000111110001011111100011101100100001010001101111110000111110000000110010001111010010001001101010011000001110101000101100111001101100010000000111111010010100001111010011110011100010110000010011101001010000000111001010010011010001010110110000010111001111101110101011110001001100011010000110111111001001000000100011010101000110111000101001010111000001111111001000011010100110010101101110100010101000100011011001111110010100010001010100001110001100110111000101110101010010010011111101000110000101001100111110000011100001000110011100000101111001000011111110011101000011111100111010111001101100000001110010000101100111101110100000000100101100110000100010110100--------------------- +01011100100000100110100011001011010011101111010111100011011011010111000000010000111101010110001010000100101011001011000101001101001111011010001011100111001001100001110010111000011010110111011110110011001000111010101100100010000000111110001111000101101001100011000010100010010011001000000110001011000000011100111001101111111000100000110111111100001010110101100101101001101100011001110101001100101000010011000101000100100110101011110000011110000111011001000110111000011111101001010101101101100101111010111100100001110111101000011100100100000101101110000110100100000010100000100010011100101011010101100100100000110010000101101101110111101101011110111011111001011111001100101000011110011000110010111100100110000110000110110000010011111001110000100100100100111010011100011101110010100000101111011100111110000001101011110100101000001011000110111000101001100101110010001100000101111101011100100011110010010101010100110110101110110001010101101110111010000--------------------- +01011111010110111110111100001011010101100110101111010111111100110010101000111010111010100100111011110010101001011011011010100101000101101000100110111010010000101101010010011111010010001000000111010010011100001000011111100100001011001100101010011000011110000111101101001001101100100001100100110111001111000011110100001111111111110110100011111101111100010110011110010011011010101110011101101011100000000010110011110100011111110001000110110000110110111100000001110001100101100010110100010000111100100010101011110110010010111011010011001100011010011011111110101001011111100100000010001011010101001010100000110110110010100011010110010001100110111111100100001100111001000101000110001100100000100010011010111101101100110000100110011100000011111001011001110001111100001100001000010010011111111110001000101111011011110100110010001000000011100001010101100011000010011001001100110110110110001101001010111000011001110110100000100110111111001100011001000010100--------------------- +ls44cwds +0001101110011110000111000111010000111000000100111001101100001100000001010101010001011101000101010011100001011101111010100100001010010010011110011111010000001110101101110000101001001110101001010100011101010100101001101101000101010100101000110101010000110101110011110011001110010010010110011101001101111101010100001101111100010000010000010000110010011011110100010001101110000101110110100101101001100110111110010101001010000000101011010101111111001110110100011000001111100010010010000101001110000110100010010111100100011111000111100001101101001010011000000000111111100001010101111010101011111010001011000100111001001001001110010000101001010111100011111111000011011100011000011001000111011000010010011011110100100000010011010011110010000010110100001001000001011001001000011011000110101110110010111110110011001110100111110110111010111101110010010000000110010101000---------------------10110010110000000000111001001101001010011110001100111010110011111010001011000010111101000101001010111111001101101111001101001110110110010100011010111100110010010011111100111111101010101010010001000010111101110110111000110100010101011101101010010000001111010001011110011001010101101001001000010000110110101001000111011111011010001010011001000011001010010111111001000111011001110101000010010111101001001001011101011111001010001000011000001000011110100000000011010011100101101010101000010101001100110011010100101101101101001011111101100011011001100000101110001011100101110000101011110101010000111001001110011101111111111001100101000000010101101010011101111011100100010010100110101011000011011101100011111101101001001000100111011110010110111010100101101100101101001001001011111000000101010011000111110011001101001010000110111101010001010011101010110001011110110010110011100110111011010011110101011001000110001111110100010001110001110111100101010001000101010011010110100101011110011011101010111001000100010110110010010000011100000010011101001101110110100110010001110101101010111100110010101010001111010110101101001011011100110101101001101010010101110000010111001001001011100010010100001101001000111100001001111010010110000110011111101100110100101000001010000100101101111101010110010101000111010000110011110001100101000000110010101001001111111100010010111111011100010111101011011110010010000111111101100111011110010101000010101100000000101001110010101110000010110000101011100011000001101000110011010100001000000100101011111001111000010110011100110000100100000110110010110110000101100000010100111011100110111001011000010010110101110011010000010100011110001100101001001010001011100011010100011100001100100001101100010010011100100001111111010000111010000111010000111001011010001001011111000100101110100110100000111110010110101001010100000111110010000110000010101001000001101011010010111100110101111100110011001011000101001110101111011111010001111101010100111011011010010000111010000110011101111101101100100110111100010010010100111110 +0101010111001101111100010010110011000111011111011001011001101101101010101000000111000101101110001101011110001000010000001011000110110000001011001011011111100101010100100101110001111100110110111100101011011010111101110100000100001011000000001100000001111000110010000101011110010011011010011010000110100111101101100011110101100010101011010110101011110011000111111100010001010010010010110001110000011110110100010110111101011101001101101010110001000111000011010110110001110001111110010110111000110100000001010011010110010000101111110010111110100111001110100011011101010111111111110001010111111101010000000100110110011000010111100010110111000001110001100001100000100111111111111011010011110101101010010110011011010111011111100110000111111000010010101001100101111111001001110111101111100101011011101000011111010001000110111111010110000100111101010101101101011000111---------------------11100101000000001010100000010011100011010011001001111111011101111010011110111001111011010000100010001001100001011110000101101110001111110111011101001010011101000111001101011001011000110110011001100011010110101111110111001011100101111100111111100011011011001000010010011010001101100101000110010110101110010110100001001011010011001111011001000010100011011100011001011010110011001110000100101001101110010010110010101111011110100010111011010000001111110011110101001101001001111000100000110111100100101110010010000101110100000001110011010000011010010010011001000000011100111111110000110101000000010111101101011011011110010000100111111001101000111111011101000100010000100000110110010111010101111000101000010000000111001001101111101101000101111010001110101110010111010000111100000101101000000000011111101011101011111010000010100011000100110000001010101010100110011100100010001011110111111111111011110100101111111011100111011111010001010111000110011011111010101001000111011001111111110110010000111010101111110111010001001001111001000000101000110001000001101100101111100101100101110001101100000110000100110101110101000000100011011000110101001001000000011111101000110111010001111000101001101101011011100100101100100101011010000111110000110001001001100100001000100000101010100110011100010100011111101111110101010001000100011101111100111110101010000010111011000110111110111000001011001001111101000111101110001001001100111011111110000011010101110010000110001010010000110111010101000111110011011010100011000110000100111100011110101011110110111111011000100011000010111001011110011111010010010101001101110101011010110101011110100011000110101101000110001011011001100110001111111111110010110110010011110011000111100000010101101010011001011001000000000101010100110001100101111110011100110001110100011010000100000111001000110110010100111111110101100001101000010101000000110101001100100011111110100111001110110001111001100000101111110011100011101101010001000110000000111110011101000101011100011010101000110001100001010101101001100110111000010011 +0111111101001011111001000000011011001011001111010111110110001001000101101011011100000010111110000100110010111100000000001101111111101010000101000001100010100110000101101010001111111111100000100001001001011010011000101101011010000010111110110100001001000110011011111011110010001111011101001101001101111000100100010101111111001110000000001101110010001001110110010011110001011001000001101110110010110011111011010001010010100110000111110101011011100100001000100011000010100001101010001100010000000110010101001100000111001011110001111001010110010101101111110010111011010110011110101010011010100101110111111101100110010010010000011110010101011010010001010001101001100101100110001101101100011100101000011010000001000001111100011001010110011000101000111100101110001011000101001111000110100010110110111011100010001101000001110100001000011011011010110111100010011000001---------------------01000101000011101110010011110001011001011101100001010011111001110100010110001101001101101100101000010001010100110110010100110110011000110111011101100001100111010000001100001101010000110100100000110000011111110001011101110111110010110110001001001001100111000101100000000010100110101001010001010010000101001100111100010111011001101111100111000011011011111111100011010001100000111110111111000001111110000100000010101011111100001001100001110100001010110101010011001011101000110011111000011011011011110101010110110011101100001001000000100111111011001110101100000001001011101111111100011100110111110010101101010011111001101011001010011110010000101110010111000000111110100110000011101011110101100000100011001001011001000000000111010010111011000011111001000011111011110100110010110100000001011100010110010011011111111100110010000000011110111000011001001010110100011000110010000001010001010110011011111001110110001100001100010101101011101010010010111101011110001100110001111010011010100111001111001001101100100101100111101100011111010010100110110100101101000011011101111110011110011000000110100100101010010101010011001110011111110101011111100000011110010011001111001110000001001100011000100011000100110011111111110010101100110111001011111100001101110000101100010000101011011111011011100010010110000101111011010011110011010000001100110100101111010011110000111000100110111110111001011111100000101101010001111000001100101101011011110110010001010000101111110101101001100110111110101000001100100110001100100011110000010001011010100110110100100111010000001001110101000110000101110110110100101100100011011000010101000101110001111001000000000000111111010101011000001101101110011110011100011011110101110111001110000000100101000000101110000101111010000011110011110001111001111010010101100110010011100000011101111110111111100100110010100101011001110001000010100010100001011011111010100111101010010110110110111100110010011110011111001011011011001101100011111000000000001101010100001110011001101010011100110110011010110010100101010100011001101101 +0001101100000001011111110000010010011101111011001101110110011110110100000010010101010010100010011111111110100011111101001011010001100110001111010011110000100000010100000111100000111100000101011010000001110011011011011111110001111101001110010100001001101100001010010001110110010011101010110011110001101110100010011001101010010011111000000100010010010010100101010011100001000110000001100011010000010111101101101110011011001100100011110011001110000001101011010000101010110000000011011010100000010010001001010101010110000010010010101101100101011111000101111100010011111100010011011111101101011110011001011101111010100000110110101000101000100010000100111101110000101101011000010100111011011101011010011000001010010100010101111111100100101111101101011000011100001111111110001010100101010100011001010000011000101110110101110101101011011110010000110110111100100100100---------------------00111101100000110011101001101011000100001100100001101001111111010010110011100011010111011101001110111100111100110110100010100101110111010011001110100101101000111110110010100001011011100100100111001100101110111110110010010011001001001000010100011011010111001001001001001101100100101000100010101010101010001001001100000101101001001100001011001101011101011001110110110100011000110001111001001110001101100010001011010010100111101000110110010001111010000011011101101010011101110111001100011101010111001010100001000000011110110000110000110101001111111111011100101011111111011110011110000010111011010000101010110001011101110110000111001111100101010011111110011011111110010000001110010000011000101010101010111111010100111111011001001010101100000001011100111100001110101011110011101101101110111001001111001001000111100001111111011110101110011110101010110011011100101001101110101110101101000001010111000100001011110010001000001000110011010111111001111010111111001111101001111011011101111001010001010000100110101111010110001110011011011110111000000011101000111101110001001101100100111101001101001101010101010100101000011011100111000100110101101011010011111111001100000110100110000111000000000011001101111111010011010001010110010000110100011110011111110001001000011001110101010100101001101011111101101100000011100100100110010011100011101000000100101000001110000111010101001101101111001010001001111110000110100000100101011111110000001110111000000111010010111110000000000000010010101011010001101111011011111010110110001111100001000101011101111111011101110100111001011111111111001110000011100010100101001001101110000010000010110110100001100111010111111001101001000111110011010100011011100011011010000101010011101011010011010101001000100011111011111111100011111110000000001101001000110000010011111101010010010000010011111100100110100000101111000001110000010111010100110101111000000111001101111110100111001100101101010000001111101111000010000110000001001101101011110011000111100100100001110101001011111110001001100011111011100100110010000101 +1010100001001110001110111000010101110101100001001110100010010110010000100111100110010111011011010011101101111111011000110000100111110110010110011110001101011010001110010000010110110001011010001100101101110111000100001100000000111100010101001111001101100111011100001010111110111000001101001011111111010110100101001110001000101111010001111100001110100110011011100011101100010100100110000001011111101011011110111011000101000110111011011010101110011111101000110111110100010111100100011101000010000010110101111110111010100110001100100011110110111000011011001010100111000010100001011100101110011111011010001110001000111110101001101010111001101001100010100110101001011010101000101010000100011000101100010101010111010001100000011110111101101010011110001001100110100110110001111111100101001000111110110111100001101011001111000000001111111010011000000111100100000000000---------------------10100010110111010111100011110010100001011110110001000001000101111001101101001101100101111101100111000110011011010101011100111101011011010110110011101110011001111101100001111001111110110101101111111100010001101010000100001000000110110011101110111010001010010110011010110010100100011011110100001111010110100011001000001100001111001100000000110000000010110011110001001000001011101111100001011110001110101011110111011111111000111100001000111101100011010010100110010111011111100001101101110000111100010100000000111011011111100111000110110001101000001111111011111010110011110000100001101011101110011010101101000001101000101001110111001011111000101111010011101111000011000010000100101110001111001011110001111011111000101000101010110100011111110000100010101100111010011010111110101000001111011110111110100001010101001011111101100011000100101000010100111101111000010010001101100110110011110110101101111101001110000100010111011110101110100011100001101110010110100010111011001000110011011011000010100001001110010101111011010000000010110100111110101000111001011110010010011011001010000011010100011100001010011010100101011111100110000001101101010111001001100111101111011001111101101010011010100011010100111010101010011001101001010000000111111101000000010100011100000000000101010110011101111101011111011101000100001010111110100000001110000000100001100110100011101000101110101110110100110000100010100111000110111101010101101011111010100100111110101000110111001010101000010001100010010011110001010101101100110001111110001100010101101010010001100000011110110110101101100010010110011000110111001111010001001111010000000100100010101101010111100001011100001111101011001101001110100101011100111111001011100001111101110101110011001011100000010000101000010101111110111111100101011101100100001101111010111001110010000110000110010110011100111100101111011111100101101111011101110010000000110000100111010001101110000010100111000110000110011000011001011100001000100100100100000100111000100011100101111111110001010011101100100001010100110001011101110001 +0100001010101010010101100110001100110101000110110110110110011010001011100110101101011100101110111101010011000100010011100010110001100110011110100000001000101100100110100100101111000010001100000110011000110100111111010111101001000100110100111100101111110011110100000101001010110000001001111100111110100011100110101000110101101011011010010101100110000011111101110011101000000000011100011010011010101000000111100110101110101010101011001011110011001011000011111110010110111011101100011011111100010011010010010011001001101000110001001010001110110000000101000010001001011000111111001011000100011000001010111001001101111101010000101101010001011100001111110011111011101001110101101001100101110011000000010100001111101001010110000110000000101111111111000000110001100100101100011001010000000001101100101001011101001110000011111000111000101110111011001111000111100110010---------------------01110010111100111100110101101001101100111111001101111001110100010010111010000000100010101011001101000111010001011111011001011101111100111011011011000100001110110111010100111110111010001001000010101100001110100110111011110011010001111111010101100100001011010101100000100100011111111111110011110110001110001010110011110111110010000001000110100110001000100110001111000101011100111100000101111110100101010111101011101111110000010000011101001001100111111011001100101101101100011110001010011011010001111111000011110111000111010110000001010011000111001110100000000100001001111101111011100010000011110000010101110011001001010000100001100000010011101100100010000000011101111101100000000101000101111001001100110110110111111010010111011000011011101001100110001110001111110001001101111100010110100110100110110101001011001001101111110010000100001010010111010001000101010010011100000111001111100001111011000000010111100110100011010101101111111011000100100011011110011100000011111101111110001010010011000000001001011010101001110110001110111101010011001010100000100011111010000001101001101100111100010011111000000000111100000011000010111111111110001111001011101101100100111010100000110010100110111011001111011010010010011100100011110000000011011110110001001001100011100111100100111100010010110111100001110110101111100000001101100111100000010110101100001100000101001010111010000100000100000001011010110100011000111101010110011100111000000000010000011111110000100010010000100101010111000000010110000001011100000110101100000110100110101001100101110010110001011100011110010010001000100001011001111000100000001001010001011011110100110110100111010111010011011001010011010100101010101011010011001000110001100111111000010100110011101101011101010100101101110010111110010000001101001110000000101010010010011001011001100110001110101010000001100000000110000101011010011011001101110111011101001011101110100011011111100100011001010010110001000100111000100011111001111100101011000100100010010110010000101101011011011111011100101010000101100110110001111011 +1001011111110101111010011110101001101001101101011001000100100010001001110101000010000001110111011111000010101011000101011011001001001001100011010001010110010111110111110010011111100111110010000110101011110100101101010111110110101010010010001010001011101011010111100001110001100010100000100000111000001000000100111010000111011000010110111110101101001101001011100001000000101101100001110101010001100110111110111110011001010101001011001001011000110011011111000100101001011000110010100101100000001011111100001110111110000010110000101010011011011110111100000110100000010111001101100110001101011110110000000001100111100000000100101111010001000010111100001100010111101111000111110101000110101111110010100111010001001100111100110011111001000110110111010011001010011101111111100000011100010011111011001011010111101100101010000111100110101111000111001111111100100110110---------------------10011111000000000111101000101001110010110101101100011110100101100001000100110100010111010111000010000110101010100011011100000010101111000011101101010100000110011011110001011011101101111001100111011101000000011000101110000111101100101000101000001101101011100001111000111001001100000100110100011100011000111000001011001100100000010111110000111110000111000100000110001100010010011110100000000001001100000000110011000010010100101000001010110000000100111000011101100101011110000101111101011100111000101101000011101010011010110011001001111100010011110010100001011111010010010100101111101101010111100000110100000001000100000110010101100101100001100000000001111110001011111111001100110100010001001000001110001101110010010011100011001110001001110100010111111000110000000111110110011011110011010001110111110110001010011000111010111000010001100001000110010010110110010110011110010001001000000010001000010011100011011011010110100100110111110101010011101101100000011011000111111101101110000011010010100101010111011011111001010001101100101111111100001110110101000111011101000000011001000101011100001100111111101000100001010111101101010011100100111000111010101000100011001110000011010011000001100010011001010100111011101101010000100111011000011111100001101001111011111101010100110101000010011001101011010000111011110011100010010010010111001011001111110111000100101110011101111000000010001001111001001111000110010110010101100001110001001111110001011001000010110101100010100000011101111000011100101000000100111010011000110100000110101110100001000010011110100101111101111010011111100011101001010001101111110100001111001000110000001101111100111110101011001110010000111110000110001001000011010010000100100011010111000101111101011110100110111111011000001101100000000001111001011100101011110010101101111000001001111101110100111000110010001111010100101001100011011001001101100100001100001010010010101001000000101010010101010100011010001000001111011000001010000111000101110001010011011010010100010001011111111011000001011001111100011111101011001101 +1001111110100011110011100101111110100001110010101011010101100101111111101010010000100011110101010011010011000000010110110000111010111001011111101111100011000000000110110001011100010110100111001111110100010000111110001011111100011101100100001010001101111110000111110000000110010001111010010001001101010011000001110101000101100111001101100010000000111111010010100001111010011110011100010110000010011101001010000000111001010010011010001010110110000010111001111101110101011110001001100011010000110111111001001000000100011010101000110111000101001010111000001111111001000011010100110010101101110100010101000100011011001111110010100010001010100001110001100110111000101110101010010010011111101000110000101001100111110000011100001000110011100000101111001000011111110011101000011111100111010111001101100000001110010000101100111101110100000000100101100110000100010110100---------------------11010110001100111000111000110100001000000000100100101111000001000000111011000011111111101100111011000110110010111010001101000110011010101110000000111010100010011000101100001110111011010000101011111110100100101011001010000011101111101110101100110111110001111000000101111010000010110100110101010001000000111001000010011100111010100000100110111110001100001101011111110011001111001110011101010100111101100111110110110011100100100010111011010000000001011001001011101100010000100110011110011101000100101010001110111101010000011111010001110101111001000100101100011100001000110001000000010110101001010001010001110000001010000011100001011100110110011010111101101011000101001110001111110111100111110111000010111011111001001101011011010001000110111010010111101010001111010110011000110010110010000111001101010101101010101011111111010011010000100100000101011001111100110010101100101001101010010001010001110011001110110000111011011001001110111110010101101001110000110101010010100110011011010000010110011111011100010011011000000110010110010101001000011111110101001100100111100011110011011100100000001111100001101110100111011100111000000110111000111111100010001100110001110010010000100001010010110101110000001001101010111111000010010100011101101101101011011110101111110111111010010010011100101110100111000101010110101011101111101010100001100010010000010110001010000010010000110111011001101110011100011010110000101000110111111111111011000000100010010100111101101001100100001000001101101011100000110011010100001111000111000011111011000101110110010100101010111000011000001010101111000111111111101011100111000101111001000111100110011010000110100100011011001100110011000110110010000101111001011111011111011010001010011000011100111111101101111110110001101110110010110000100000111110110011010000000011001010011100011100100101001101000100010000001010111011110110001010011011000010100101110110000101101110100110001011010001111010110011101001001010100011100000011000011001001100100011011101000111111110101111001000001101101001001110111111000001010110 +0110001010000100101011001011000101001101001111011010001011100111001001100001110010111000011010110111011110110011001000111010101100100010000000111110001111000101101001100011000010100010010011001000000110001011000000011100111001101111111000100000110111111100001010110101100101101001101100011001110101001100101000010011000101000100100110101011110000011110000111011001000110111000011111101001010101101101100101111010111100100001110111101000011100100100000101101110000110100100000010100000100010011100101011010101100100100000110010000101101101110111101101011110111011111001011111001100101000011110011000110010111100100110000110000110110000010011111001110000100100100100111010011100011101110010100000101111011100111110000001101011110100101000001011000110111000101001100101110010001100000101111101011100100011110010010101010100110110101110110001010101101110111010000---------------------00110011100001010101110101010111001100011110011000000110110110000010001101010011001000001000000001110000011010001110111101011110000010100110110011010101100110101101111110100110001000100111111010101100111001011101001010111100101100011100111100001010111110111010011001100100000100010001110110111000001111101101010101011000010011011100001011011011001000100001011111010110111100110001011100000111101010000110110000000010100101011011010001010011001011111010001101101100011001010110010001111100010100111001001100010000110010101100110010111000010110100100101100011101111101101110101100000111110001011110111110011011100010011001101101101011011100111110101110110000010100100001101111111011001101010001000100011100011010110100100101100000101110001111011011000001011111011000000100010010000001010100001000011011101110100111101011011101111111000101101111100101111010111011000101011000011010011111000101001101111000110011100010111001001110111001001000001001100100010011101100000001101001010001001110101111001011000000011001010010110011111000011101010000010011101110110001000011110010101101110010011110100000100010110101001110011101000101001110000001001111101011000110001110111101100100101010011110100101100001000000011010011011110100001000111101000100101101111011111111000010010010000110111000000100111001000110011100100001001111111111000111011100000011111101001001001010000111011010100000001000000000011010001101001000010101110000110010000110011011010000011110001111011010101111000110000111101110000110101011110010011110100001111110101010011110001100010101111100101101000001101011010000101001101111000110010100001110100011010101100010110110011011110010011110110100101101001001010111110110111010100010011011010000011100101111010011000011100100001011000100101010110010010100111000100001000100000110100001101110001001111011110010001010101101001110101100100110011010001001110010111111010001000001001101011101001000000001111000100100011110011001100001110101010100001101100011100100001011110111110011001100110001110111010011111110100011001011 +0100111011110010101001011011011010100101000101101000100110111010010000101101010010011111010010001000000111010010011100001000011111100100001011001100101010011000011110000111101101001001101100100001100100110111001111000011110100001111111111110110100011111101111100010110011110010011011010101110011101101011100000000010110011110100011111110001000110110000110110111100000001110001100101100010110100010000111100100010101011110110010010111011010011001100011010011011111110101001011111100100000010001011010101001010100000110110110010100011010110010001100110111111100100001100111001000101000110001100100000100010011010111101101100110000100110011100000011111001011001110001111100001100001000010010011111111110001000101111011011110100110010001000000011100001010101100011000010011001001100110110110110001101001010111000011001110110100000100110111111001100011001000010100---------------------00101111001001101011000100011010111100100101100010011101111010000010000001111110010100101100011000101010100101100111110010011001010010101000111100111011001100100111001111000010011111010110101110000100111100000111011000110000101100111000101110100001100000100011011101010100001011001100110101010011000101100100111001110011100110000000011100010000010001011101110010100011110000110001011101010101011100011000001001001010011010001101100101001001001100011111110010011110100110000111011100011001010001011110111000100011100010000001010100111010110011110111111101011100101010000001111101001101000110110110100101011001110011111111001001100001011000011101001001111101011000111001010000010111100110101100110011000010110111101111011101001111001100111111100000100101101000011111101001101111101001010010010110001100010011011011100101100001011100010011111111110100111000100100100101010011110000110001101110111100100111001011100100001111001011110100100100010011101010100100010100100110101110001000100011100000101010011100110100110001110011011111000100010000101100111001101001010100111100110001100110010110110111111100011110010111010101100100111011010000001010111010111011111001101101111110011100001100011111110110000100111100101110111001101000011011111011111100010001001010111111110100010001111011100010100010101000111001000100001101000010001101000011111001100101000101110010100110101000110010110111011111100111100010001010010101001001110111000010100010001011011100100000100111100110111101100111000110110011100000000000101000110011100000001111010010111000000000110011011000101101011010010111100001010010011101010010011111001010101110001000011111111000100010110110100001100101010010100101001101011010110110000011101010100001100010110110001001000000001100011000000110000001001101010010000101101001100000110000111011011000000110101111001001001001001011101000101110011111010101111010110101100111111110111111111001000111010010111011010110011101011010110101000011100100100001101011111001010010100111110100001001101000001111000000001001110000000111 +ls88msgs +1000101010011101111100100011101001011101010110000110000000000101101001111000011111000011010100001000010110010000110000000010100001110011000111110010101110000110100111100100110001101010010001010100110110000010010000000100010110011101101110101100111011111000110011111111101111100011110010111010010101000110100100000001011110001010011100101010011111011110110110010101111101000101000000110100100110011110010111010110111100110100110111101001111000100001110011010110110001011100000101100010111010101010101000101000100101001010100010001010110111101111011101011000011000010000010000001111100101001100111100110111100001010001110111100100010010110011011011010111101111011111111111000000000001000111110000101111110010010010011111001100110000111000000100000110000101101000010000101101110101100001100111101111000000111111000100011001110001010010101110100010000111010011100010101110010111111100001111101000110011100010110010101011111111101100110101001110001101100010111111100010001111111100000111110010011101101011110100011011111010001110010111101110010111000010111011100111110100111000110010000110100010001100111100111001101101011100100111101100110111001101111110011111000110101100000001000011100011011000111101000110011011101101100100100101110001011101111100111110100100001110000000000000111111111100000001000100101010111110111110001001111011000010101000100110100000100000101101100111100110011101001001111001000010000011001000101001011100010011001100110011011000101111111000010000001011110111001011111111011000100111111010111010101110001010000101110001010001100101011100101100001111111001101001001110011100001000101010110001000000000011010111011110011101001100001100001111101011110000110011011011001100001100111101001100000100100111001101101101001010101111111010011100011100001010011101010010111010110000110001010101011100001111000100110001011111101111111001110001100011011000000110011100101111100101100100100001111010010001101--------------------- +0001001010001001110000101011101010111110101010111010111100111010001110001100110111111010111001011000111001100010001101001110000000001111001001000111011111110110101100111011100001011110000010000000110110011110100101001111110010101010111110001100011101010101001011001010101010010010111110000001100101000111110010100001001010010000111100111010011010111101110101101000010110111110101110100111011100101101010101010010011100001000000110111001110011010101001001011100110111101000111100101110111100101010100011011110000011100000000100100101001011001010001011100010100010111111010001000000010001111010110000001001011001110110111011010111110011101011010111110010011110110111010110000110111110110111010110010111100101001010011011000010011001100110111011000010010110100111010110001011111101100001100111110010110110111010101100010100101110110000010000010110010011011110011001010010010000001011000010011000000110001110110011100010101101000011100100111001011011110000111000100110111110001101100100100110100001100101001010100011000101010110101101101011011110010101101011011011001000100110011101010110010010001001011110110110001100101110100101001110010101001110011011101100110010101100011011101111011000001111011011001110010010011101011010000100100101001101100101100101011101100001101110110100001110110110000111101011111000010111010011011011110011011010010001100101001000111001011110000011110001011111001011000100010111011010111111110010010100010001100101111110110101000110001000100110100100110110101001010001000011001010000101100101010001010100101111111011001001111011111011111111101010000100101110111110010100101001111010101011010001101111010000111010101100100010101001000011000010000100000001001110110000001111101100110000100111001000001101011111001000001101111101001010100101110001111000001000000111110010110010111010111100111110111110011101010111100011001011101011011110111001100001010011001101011010010111100100100000000100100--------------------- +1110011101011100010001100111001010010101101110100111101011000011111111100000111001001101111010110101010001101110110110100011110110111011001001001111010011011101000101000000001101110011110010110010010101000101010111100110110100011010010100111001011000011010101101000001000100100000000110100100101010101000010000110110101000010111100011011001010101001000101000010000000111001110001111101010100100111010001011011100100000000011111010110110110111000101100101011001101011011010100110011001101101000101011100001101101011110001100001111010000001101110100011010011000001011101110011000111101010010111011100001100101011100111110001101111111100001101011000110010110000111011111011010111101001011100011101111100101011001011100110100111100000001100101100001011111010100111001000011110100111001010100110110011100001110111100001110001110101110010111000100001010100111010011100010101101100000001111001111100111000010111001110110100100111100000000100110010101111101010111111100100001010001111110101111100011100011001100111101011110111110110010001100000011001010010110101001011111010010001000000111100000011011011100111111010101110011000101000110101100111001000010011110000111111101000100000011000111011111111100011001110111000111111011100100111101001001010101011101011100000011010011111001100000000100000100011111110000101010111010100100101010110111010110111011111101110111111100101000110110111110110100000010001100011110101000000001000010001111111110100101010110011101110011100100101101011011000011101111010111000110100011011100000101101000010010101011011100010111011100001010101010010100101011010100110000001101100111000001001001001100000111110010010010011010100110010110000000010111101110011101001100000011110001001101000101011000000010011011000011110101111100010100111101011000011001100000000100011000101011011110001111011010111000001000101010101010111001010110110101100010111011111010111101110100100000001110111011111010011101--------------------- +0011010011110000001011010011010100101001101110001101011101101101110101101110000011101011111001001000110011001100011010000000101111001001111011100100111001111101111011100010111001100111100010010001011101001000100111001011111000010011001011101110011110100010110111011011100000111001110111011100000101011010001110010101101110011111010001111111011100001001000100100000001011001110010100101100111001010001001011011000100001101010100010110010110001100110010100111010001010110000001001001101011100110110011001000001100100000010100110111011000001111011101011000100100110010001101000000010110101011111110101101111010100010111100111010101000110101000011011010000100100111100000000011100011100011001100101001100101000011101000000101000001010101100001110010001001011000111101111001011010111110011110101001011011110010000000010111101000010111000000101001001101001100000110010100011010001111000001111011011111110111100100011011100101111000110011010011111110100110001100111110000001000001010100101111010100100010111111000110001100111111100011100010000111011101111101010001101111100101100001000001101100011111100010011100011110010111011111010111101100101010101111101001000001111011111101001101000101111100110011001111001100000001101001101100111011111001100110000011110110100100101000110010111101101000101110010011001001000101010100010011111011111011101001010011101100111101011011001010101100011101101101011010011110010100100011010100001010010011110110010111000100110000011111111010010100111110000110111010010011100011101000000001101001001110111000000101000000000001110000111010010001000000111101111011110011010000110000110001010010001100110001011100100011000000100000100010000011101111001100111111010100101011000101010100110100101111111110001110110010011101010000011101100010110001110110001111110010001111100100011110010110100011010001000100101100100000010111011011110011110100100011001110011001100110010010100110110110000001001010--------------------- +0110110001010001110011110001101110111111000010000000110001111100000011001001101101101001101000110101100111111001110010000011001011100100010010001000111010100100110110100000010010011011011010010011101001100110001000110011111010011101111110101111011001001011000001111100111100011100011011100100111101000000010001010011011010011101110101100000111101001000110110111000111000111010010101010110111110111011010010001101001010000100111100010010100111100001001000000010011010011101011110101011010101110001000001010011001110000100100001011110011010100100101111010101100010101100011001011001111010010110011100010001111010001100100010000101101000100001011001000110110010100000111010000100010110001110111111010111011101001101100000001011010110100011110000000010100101000110010001001001110010000000010010000110001111111010001111111010000010001011000110010101001101100111011010110101110000110011100101110101011010000110100010011111011101010010111000101011000101100101000010100101101101100111110100100010011000110110001001110110000000100100011110100111011000101011010011111101000000100101010110000111000000000110001110001010011001010101110001000101010100000111010100111101111111010110101110010010000111010110011000100101011110101000111111101010010010101000110010000000100001101101000110111100111010111101100000011000001111001011111101101010110000100110111111000111111010000101100011000111010000101100011101011111101001001011100000001011011011011101001110100111100110011011001101100100111110100100101001110011101111010011000010101000100110000101110100000001011010011101110000001111010101010001000101110000101001111111000110001111000100001000010001101001001011111001000110101010000000011001100001000001010100011011001011011111110101111111011100111101011000000100010011111101111100011111111101001010110100111011010100111111010011000110101000011101011100010000000110111100001110111000101111010000010001101000000010110101111110101011000--------------------- +1101100001010011001101000111001110001100010111000001010010101100000010011010000010100010011011101011100000011101111010111000010000000001010100011101101010100011101011101011010000001000000010010001011110100101010000000100011010000011110100000000010000100110010110010110011001110111000001010011010110011000100011001001101110010001000001000111111010010011011101100111101011001111101110011000101100000001111010000110010000010101111111110000111001000000010011011000010001111010110101111011011001010100110001001110111011111101011110111001100011110000101011010000011101110001110101111010010100100110110110010110010111000110110010001000110101011101001111101110101100111001110111101101010101100101010110100101111100010001001100101010001101010111010000101101011101011010111111110110001011000101101101101100101010000100000000101111010001111011010111011111101100110110100110001110101111111001110011010000110011110100100110001000010100100010000101100111011101011011001011001110111010111100001110101010010000110001101001100000101101111010000010101101101100110010010100111100110001011110001011010110101011111000110100011100011000100110011000010100100000101111111001001011011100010100000001000101101100111011010011011000111101100011101110101000110000100010101101010101011110010100011011111011001111011000010001010000110100011101000000000000010100010111000100010101101101000010011011111010110100110100011001101101001010001000100000000111110001000110100111010010111111110100110011000110111110101101000100011000111101001001111110000111100001101110000001100110000010001000000110010100111100001101110110001001111011001000011111000001011001110100111101010000101111101100010011111110000111111111000011110100010110011100111110110100011100001011111010000000101100100000010011101011111011111001001100101111100001011001000100000001010100011011110110011000001101001000111001000011100010000010100110111001001011001000111001101110010100010110010--------------------- +0001001011100110100110011100001110010110010100000011101000101110100000011001010011011110001101010111000101100001010011000100111000010011101010001000011000101110100111010000100011000101011011001111111100111100100100011010101000011000110010100100000111000101011011011000010010001110101110010001111110100100010001011111110101010100101100001110111110000111010000011110001110010000000111010011100101101100001010101001100010001010000000000011011101100100000010001101010011001011000011011011100110111000010000010100111001111001100010111001000010001010001000111000111110111100011000000100001111001100010110001010000110011001101000010001001101110110011000101110010001110100101000000000000111101011101000100001110100010100101111101010000010001100010110001101111011011010001010001111100000110111010111110011100010011000010100000011110100110110110010001001111111010111100010010111011100000110001001111000010110110011101110101100100101000000100101000110100111111100110000100001101001101100100101111001011110110000110000101000111101110011111001101000000000111101101110111000000001101000110100101011010111010110011001100000000001111100101001010010111110011011010011001001101011001001001000011101010110100001001011001110001110111111010110110010110100111110110110111111000110010101011011110010000000011010011100001000001101101001101000010001101001111001100101101100110011111111000011010100110011001000111110000000000111100101000101111101011100100011000010000101000110101110010111110011011010111101010011100011001001000110000101111010111001110001100111001011110100000010100000000011111000101100111001001110001111111001001010101101101110100010000101011011001110100111111000000111000001101100100101111001001010010100110011000110111101101010110011110100110000111110110110110010100011111000000001110101101111011001101010101001101011111111011011111100000101011101110011001011010011000001111100011110110001101111000010110011010110010011110--------------------- +0011000100000011100001101110110010001011001001001010111010011111100110000001101001100010101010010101001100100010110101010111001101001001010000111011010101101111101110101100011110010100010110111101010001100010110101001100101001100100101000011110011110000010100101011011110101101011101001101010100011000111101000111011010010001101000011010100010000011111011001000000100010101110001010010100101100010110101100011010010011011011000111000101100001100100100101000100110010010111101010110110010001101001011110110010111001010001101111111100100011011100100011000011110101101101000011001011011001010110111010001110001100100100001011111101111100000111011110111001010010100011111010000110111001010010100111000001101011111010010011010011101100000011001000100100110111101001011101010001111101001111010001000110101011001011000100000000010101111010101001100001111110011000010101111010101001000110101111111100001110000110011010011111001110010111100110000000011001110011010101001110001000001000101101110010110101110011010101001000100110101101010100101111010001011110001000100110000101000101001110011010101001111000000110011110100000111110000100111001101001110111111110010100001001001001101110000011011110101011000011110101101101000010110000111000100111101010011110010101101100010111101111100101110011000101010110110111100101111010000101100011010111001111010010001011001010011000111010001011001010010111010010111001010010010011101110110001011100111101001000000011010110111010100110011010110111010011111010111010000111000000110100110111010000110110001101100011110100111111010100000010000110100111101100010001101011000011010110011100111101100101000011001000100001001001110111011010100011111101111110110100011100111001101001011101111101101000010111111100111010001110101011110000001111101010110101101011000110011001111101100100111000011101010101111001010000011011010111111000001011101100101010010011110000010100111011111111111000000000100--------------------- +1001001111100101011001101111010000110011011010011011111011010000000011001100110011001110010001111110110110101000101110011110001011100000101001111100110010111001000110000010000011111011111011101111101100110010001010101000110100010000111010110000011000011010111011011010100100101000001000010101001011111111110101111110111001100001010010010110001100000100011000100111010010100011001001000001100001011000011111010111101001110111001110000010010100110110110001010010010100011110101110100000010111100000011111110011001001111100010000111001111010000100000001101010011011011110110101011011101011010001010000101001110011111010111000000101000110001100000010001011101101001110110100010101111001000110011011010000000000011011111000011111110111101111110100101001010101000111111101001111101011110101010100111110001111001010010100111011111011101000100011100110011111100101110111110111101000010001101010000010110111000100000101100101101001000011101011101111110110000000011100110001010101010100111010000000100100010101001010111100000101100100000110101010100000001011011111101111100111111110111110110001100001101101111010101000010011101001111010011011101111000111100110110000101110011001001010000011011111100101101110111101000000000011010100011101100011011100111111110100111011010110010110101101110100011101111101000101001110101010000111101110011111110100110100100001100010100011010011001111100101011011111011001000010111010110010110101110001010100011100000111101011001010010010111000111110101100001100100000111001011000010101000110010000000000001110101110000100001111000100101001100000101001011101010000101000111000000001101011011000110000001101000111110110011100000110110011100000001011000000011001010111011101010100011111110011010001110000111011011011011111010001111000000100101010000110110000101010110100110001111111110100111100101101110010001101100101001010111001100111110001100011101011100000110010010101011011011010010110101000--------------------- +0001000010111000100001110101000000100000010001011100111001110100010010101001100011100101110000111101101000111100010111010011100110100110011011100000000010001011110000011111011100001110111001001001101110001001011011111010011100110111001010001001101010111011001011001010110011100110111101101011100110100011100111100101110010001110011100010010010001100000001111101101111000011000110011111111111101000111110011110101001101110100001001001000100110011011011110100101101100010111010100111000000001111001000100000101110101111111001111111111001101110110000001001011010001001011100110110011101100010101000010101101011111011011011001000011010111000100011011100100011010110100010000001011110010101000111111101101111111000110111110001011111111101100001000101111011110101111011001111101100000111010100111101100110111100110111010111011111000010101100011011100111000101100100011001011000010111100010011110001001111010101111010010010000111110001010000111101001011010110101001111111101100010111010100001101010011001100100011100010000001110101011010011000000111101100110011000111010101010011000110011001101010000000010101110101010111001010111001000101011110101111101000100111011100101100011000101100000000010000011111100010000010110001101000111011000011110001011010100111010011011101011010100110010111000001001100111000001001100101100100010101100110101000111000001101011111110010110000000111111001111001001001001110111110000110111011111000010111011001101011100100101010101100100101110100100111011110000111000111111010100000000000110001110100000010110110101100001001101011101101100000001011110001001000010010110111110100101001101110010010001111000110010001101011000111100010111101110111110111001011011101101110100110001001110010101101110101010010110101110000011100000011011001110100001010001110000100101000110011001111011110001011010000010100000010010011000100001000011110010001100000100111010010001001101001001010010110111000100000011--------------------- +ls88cwds +01101010010001010100110110000010010000000100010110011101101110101100111011111000110011111111101111100011110010111010010101000110100100000001011110001010011100101010011111011110110110010101111101000101000000110100100110011110010111010110111100110100110111101001111000100001110011010110110001011100000101100010111010101010101000101000100101001010100010001010110111101111011101011000011000010000010000001111100101001100111100110111100001010001110111100100010010110011011011010111101111011111111111000000000001000111110000101111110010010010011111001100110000111000000100000110000101101000010000101101110101100001100111101111000000111111000100011001110001010010101110100010000111010011100010101110010111111100001111101000110011100010110010101011111111101100110101001110001101100010111111100010001111111100000111110010011101101011110100011011111010001110010111101110010111000010111011100111110100111000110010000110100010001100111100111001101101011100100111101100110111001101111110011111000110101100000001000011100011011000111101000110011011101101100100100101110001011101111100111110100100001110000000000000111111111100000001000100101010111110111110001001111011000010101000100110100000100000101101100111100110011101001001111001000010000011001000101001011100010011001100110011011000101111111000010000001011110111001011111111011000100111111010111010101110001010000101110001010001100101011100101100001111111001101001001110011100001000101010110001000000000011010111011110011101001100001100001111101011110000110011011011001100001100111101001100000100100111001101101101001010101111111010011100011100001010011101010010111010110000110001010101011100001111000100110001011111101111111001110001100011011000000110011100101111100101100100100001111010010001101---------------------0100100101011010110111011111010110101111101010110111100110011001111010011110001110100000101010001101010000110100000011001000101110101000010101101110000111101110010001001110111111001000110110110100110010101110111001000011101011110010100000100001101000001110010000000110100111010110110110100110010000111100011011000101100111001110101100000100011000011000001011011101000010010011000011101101111100100110010110010110100011100011011011111110101100110111001010011000011010110000011101100010101011111111101011010101001000001100111111000111010101001001111100011001000001010111011111100111101100110100000010010001000001111100000000010001010101101010011111101001101110111001000000100101110000000010101000100001001010001011101011101011111110100101011001001001110111010111000011001001110011111011011110001100000111000000001100111100111100101001001000001010010001000001000011111110111100011011000101001101101001100001111011111000111110101110001100111101110000100110110101000010111100011001111011000010101100110110110111010001111001000101101001010001111111111111110110001011100000101110010110111000010111010001011001000011010011101110010001111011110000101101111100000110011001101110010111100000011110000100000101100001000100010110110111011000101111010101101111101010000110001011100101111101110100011011000110011100101011110111001011011010100001110011011001000011101110100011111000100011101000011100001000001111110100000001111110010000110101110010100110011011010100111010101011111100100010011010100110110101010001111110001010110101001110001111101001101011010010110110001101011000110010011010011101101100001110111011001110001011001111101000010110111001010001000101011100001011100011110011001001101100110111001100010000101100000000000110011010110110100011111010101001101100111110010000100111111000111110100101000011011010010100111101000110100000000001111100100111000011000010000001001101111011011011001110111110000010001110110010100111111000100010101001010100010111010011111111111110100000001110010101100001010001001001110010101110010001111101011110001010001101010000111011011010101010001100001111101011100111101110100101101010001000110011001101001111001101101001000110011011100101010010100101100100101010000000101101010101110001100110100011110000110101101111000010111110000000111001101111011100000101100001100111111000010101100111010100000010100100010010110011111100110011001101010001111000011001111100111110010100011110101100111110010100110001110011110101111100101101010111011000111010010000101010100011111100111000011100001000110101111000001111011101011110110101101110110110110110011110010000000101100100010001011100011111100110011110100010110001100001010100010111100111011110100100000011001010100101111001111000000101011100111110011000100000001111010010111010000110110010101101011010110110000010000010100000001001110001110111110011000010100110001100010001100110111001000101001011010001000100000000111010011001001000111010011011111110111000000110110100110100000110110010101001101000000111111100010110010101011011101010111111110110110101001110001101000110111010101010100110110101010111100100011111001110111001100101111101110010110111000100000010010001001011101010110011000000110100100100101110000111000111110001100011111101001101111011010001011111110110110001110101100100000011100000000011101100011010000010011000101101000000101111111110100100011111100101010010101001010101110111010011110101110010010111101100011110100110000011000001001011001110111000101101111001010110111010100110010001101000000101001011101111100010100011110001001110001100010111010101010111100010010001101001001001111110000100101000111011000111001101111110001000010010011110000101100101101110101010100000110111010011111100011101000110100100010101010111001010011010100011110111111010111011110100000100110100011100101010101010110000010100001100011000010001000001001000010111111001000110100001101101001000000011110010111001001101011000000011001010001000100011000011110101011101111110100001100101010001101111011011000110010111011010100011010110001111011010101110101010101011010101101011011010111001 +01011110000010000000110110011110100101001111110010101010111110001100011101010101001011001010101010010010111110000001100101000111110010100001001010010000111100111010011010111101110101101000010110111110101110100111011100101101010101010010011100001000000110111001110011010101001001011100110111101000111100101110111100101010100011011110000011100000000100100101001011001010001011100010100010111111010001000000010001111010110000001001011001110110111011010111110011101011010111110010011110110111010110000110111110110111010110010111100101001010011011000010011001100110111011000010010110100111010110001011111101100001100111110010110110111010101100010100101110110000010000010110010011011110011001010010010000001011000010011000000110001110110011100010101101000011100100111001011011110000111000100110111110001101100100100110100001100101001010100011000101010110101101101011011110010101101011011011001000100110011101010110010010001001011110110110001100101110100101001110010101001110011011101100110010101100011011101111011000001111011011001110010010011101011010000100100101001101100101100101011101100001101110110100001110110110000111101011111000010111010011011011110011011010010001100101001000111001011110000011110001011111001011000100010111011010111111110010010100010001100101111110110101000110001000100110100100110110101001010001000011001010000101100101010001010100101111111011001001111011111011111111101010000100101110111110010100101001111010101011010001101111010000111010101100100010101001000011000010000100000001001110110000001111101100110000100111001000001101011111001000001101111101001010100101110001111000001000000111110010110010111010111100111110111110011101010111100011001011101011011110111001100001010011001101011010010111100100100000000100100---------------------1000100010000011001010010001010100011001111000111100011000110101000111110001101000111001001110011001110001000101110111010101101100010010111000000111010110111100101101101101110101011010100101101011110101001111100000100111100001110000000110001010110011011101000100000010001000001011001011100010110101010001000101011000101100000100100011001011000000000110000101100101100101100110100000010000001100001000010001010000001101111101000111000100100101010010100000111111011110001111110011101111001111100000001110110110000010100000101101100100111011111010001110001000100001000000011011111100111000110101111000010101100001101110000011000001010101111110000101100010111001101011111101110001000101100001001111110010111110010101100110101000101011001000000110111110001010010110101100010100101001101110011101000001010010001001100101101111010000011101011101100001110101000000110100010010000011010001000100010010110111110011110000001110100110100010110011000101111010111110110101010100111010011100101010101111110101101010001100101000100010101011111101100100100010010110000010010111000101100001110111000000001010010011100110100000010110001110010011001000101001100001111110101101101011011010011101100010001111010100010100011101101100110100110110001100101011011100010110000111011001000101010001010000001010111000110111001011000011110001010010110111011011100000011010011100001010000010110101101111000011111011010110010011111000001001001100100101000001011110000111110010000110011100100001100000000111110010111101100110000110110111011110111100010100100100111111110011010111001011000101110010111101101010011110111101110101100100101000010110011111001011110111110011010000100101100000000011010000111010011001100101101110100000111110111101110111110001100100011110011111100010010110101100110011010100010111001000111000011001111011000110110111101101101110001101101100111001000010001000001010111011011101011100100100011101111010011111001011000001101001101100010111110011101111101011101010001000100011100101001010101001011001100111101001100010101011010011110101111001010010100001110011111000111101100000001111110011000010001100000000100100101000001010101000000110011111101011110010000101011101101010101101110111111100101001111001000001001000100000111101001011011011111110001011011010011000000011111101111001011111000001010011110000011000100100010111110000011000011000001111011111011010100010110101010110000010100011101010010100111010100101110101110000101010001101110000011011100100101000010100101101000101011100101111111100000100010110100010010000000011111011010101100011010000001001001000011011010010110111110100000110101111110010011110010111000000000000011001110101000100010001111110001011010100111010011110001100000001001101101001111100011000010011111110100001011101010110001110000011000000110110100010101110000000000100101000011001010110100000101110110010111010011000100000100111011011000011011000111111010011100010100010110000011100000110110100101100110100101000000111001000000100001110000100110000010010001100000101101101011001011111110001011111110010100110100001001001000100000011101101011110001110110111001100111000001001011000010101100001011101110101011001100010010110111001011100000100010100011010100101000111011001011100101001111110100110101110010001001111001000011000010101011101110101010001111001010101111100010011010101101111101010111111101110100111011001111000011110100100110011101010011100101110000110101101000001000100101101111001101010101110000111101100111100011101011111010110100000111100001101101111111001111100100110101001011000011010100000011011010011110100100100111101110110011011110101010111111001101100010100011000110001101001010001100100011101000110010010011101010001010100110111000100101011111110010101000010011010010101100000101010101000001001101100001111111011101001000010100111110000110011000111100101000110011110111001110011101011110010010001110100110010000011000011100111100101111101101111111110001110110100101111001000100000010011110101100100010111110101001111000101000010100010100110000110011011001110111111010000111100011010101001011110010110000100 +01110011110010110010010101000101010111100110110100011010010100111001011000011010101101000001000100100000000110100100101010101000010000110110101000010111100011011001010101001000101000010000000111001110001111101010100100111010001011011100100000000011111010110110110111000101100101011001101011011010100110011001101101000101011100001101101011110001100001111010000001101110100011010011000001011101110011000111101010010111011100001100101011100111110001101111111100001101011000110010110000111011111011010111101001011100011101111100101011001011100110100111100000001100101100001011111010100111001000011110100111001010100110110011100001110111100001110001110101110010111000100001010100111010011100010101101100000001111001111100111000010111001110110100100111100000000100110010101111101010111111100100001010001111110101111100011100011001100111101011110111110110010001100000011001010010110101001011111010010001000000111100000011011011100111111010101110011000101000110101100111001000010011110000111111101000100000011000111011111111100011001110111000111111011100100111101001001010101011101011100000011010011111001100000000100000100011111110000101010111010100100101010110111010110111011111101110111111100101000110110111110110100000010001100011110101000000001000010001111111110100101010110011101110011100100101101011011000011101111010111000110100011011100000101101000010010101011011100010111011100001010101010010100101011010100110000001101100111000001001001001100000111110010010010011010100110010110000000010111101110011101001100000011110001001101000101011000000010011011000011110101111100010100111101011000011001100000000100011000101011011110001111011010111000001000101010101010111001010110110101100010111011111010111101110100100000001110111011111010011101---------------------0000001110001110011100011010011001001110110001011101001101110011010011011010101100101100111001101010111111000101111010000110110110011010110000011101010101010111101000001110010010101100110101000100001110100110010100101111010010010100100001000111011101011101010101000000100110011101000001100100011101110101101010100000101110000111111010110100000001101001111010100000000001011011100101101110001100001010001001100101010111101101000101110100001000101101011000010011000001010000000100110100000001111101001011011101101010011101000000111110000000110001101110100011101011010010011110111110101111000100011111101000001001111010010001110111001100100011010100101010010000000011111011000100110001010001001111110101111110101100010101111001110011010010100010110101011111010010011110110000101110101100101001011010110101111111111101001110111101011101100111000011111001001100100101010011001111000011111100000111010110110111110001000100010010000000101100101000101010101001001100001010101010011111100001000010001011000100101111011101110010101010011111001011011100111101010100101001001111011110110000010000011101110111110111100010101110010101101111000011010011010000000111110001000000000010000100011011101110111111110000100101101000101110011111001001010101110000011000101111001101001000011001100011110001111110111101101111100000100000101100001100100001101101000011110011101101010011110001100110011011101100100101101110100010111111000110000001000111100011100001010000100110001110100000000110010000000011000111000001100001010101100010010001100100010000001000110000001010000000110001101010000111001100000011101010011110111011100101011101111100111110100101001001000011100011010110101001100111100001010011000111001010011011011101001100110001111111000011011100101010011111010010110000111110101001110101100010100100100101011110000110001111011001101010110101011010011001011011100000000011000110000011010000111101110011101011000000111000110111100110001010111010101001010010100001011111010100101110111010000011101100001001111011000100111111101100001001000001001001010001111001010000011001001101000010101011100101101001000011011001011010011100010100011100000110111101000111010000111110100001000100001001110011001010111110001100001001110101101101001101100001101110010010010111010001000111010101010010110110000000100100000111111011100010001011011011110001000011001010101000101100001101010001000100000111100010010011111100110110010011111111001011111101100100000001100110101111000001110001011100000110100100111110011100110101000000101111101101101100011010010011000001100011010110011000011001111010111110011000111011101000011011011111110111000001111010011111101100100111001101101101000010111100101000110101001110001101100101010000010011111010101000000001000011111110011011111001111001000000111100010010111110001010110011111011101101111001101110110000000101110110101000111010110000011111001011110001110000111101111101000001100000110001110110001011111010101000111110010100111110001110111000001001000111110010001010110010010010100110010111110101011000101110001000111100100010100001111100000110111110110111010010001011001000010111001111011000111100011111110000011111110011111110101010100110010101001100001111000101001111000110100010001101110010101100001111101011100010010101010011010101011001010001000001010100110001010101000110000000100011100111111001110100111101011011110100010100000011010000101110110101001000010110101000011000001011111101001111111100100101110000110001100100001110010010110100111011010101010011101100010101100011000100001111011111000110101100110110101000000100111010110101011100100000011000110100011100111111110000100011001010110100010010110111100101010111101111001011000011001101110101111111101001000111010101000011011001100011010001000100011110001000011111101111110011000110011001000011100001101010110101010111001101001011000011110100101001110010010100110101000110110000011101111011001001110011000001101000101110011010100101010000100110010011111100100101000111101011110100010000101101011010101101100111101010111100100010111011111101011110100111111111111010000001110010 +01100111100010010001011101001000100111001011111000010011001011101110011110100010110111011011100000111001110111011100000101011010001110010101101110011111010001111111011100001001000100100000001011001110010100101100111001010001001011011000100001101010100010110010110001100110010100111010001010110000001001001101011100110110011001000001100100000010100110111011000001111011101011000100100110010001101000000010110101011111110101101111010100010111100111010101000110101000011011010000100100111100000000011100011100011001100101001100101000011101000000101000001010101100001110010001001011000111101111001011010111110011110101001011011110010000000010111101000010111000000101001001101001100000110010100011010001111000001111011011111110111100100011011100101111000110011010011111110100110001100111110000001000001010100101111010100100010111111000110001100111111100011100010000111011101111101010001101111100101100001000001101100011111100010011100011110010111011111010111101100101010101111101001000001111011111101001101000101111100110011001111001100000001101001101100111011111001100110000011110110100100101000110010111101101000101110010011001001000101010100010011111011111011101001010011101100111101011011001010101100011101101101011010011110010100100011010100001010010011110110010111000100110000011111111010010100111110000110111010010011100011101000000001101001001110111000000101000000000001110000111010010001000000111101111011110011010000110000110001010010001100110001011100100011000000100000100010000011101111001100111111010100101011000101010100110100101111111110001110110010011101010000011101100010110001110110001111110010001111100100011110010110100011010001000100101100100000010111011011110011110100100011001110011001100110010010100110110110000001001010---------------------0110101100110010000100011010011110101111011001111011110011111000101100100110100001110110010000010011100110000011100100110010000011111100001000111011001001111111100011000010111101101000110011110000111110011010100001111001111011011010100011101110110111010001011011100000011000101000001100110011011110111111111110000101000101011011110011000111110000111111110011011011100100111011100101111110101110100111000110100010111011111010101010010100100011111100100000101110011111101100111111100011101000101010010111011110100111011101010110100011110011001110000101100010100101010001001010100101000010010100011101000001001011011111110010101000010000111111110110110100100101110100111110101000110011100110001011110000010010100110010111000100111000110010001111100000000010011011111111101011100011010111000110011000010111011001011100110011111111100011111010111011100000100010110101100100101001101010101101010110001011010110110100001000001011101011110001101111101010000110100001011111101000011100001000011010110101100001100111110101010010000001011111101011111101110110101000000110011110110011001100011110110111111001110101101100000100001011000001001001101010101001000001100010001100010110010000000110010011101111110110101000001101010001000000110000110110000010001010110101110111000010100010101011000101111110101101111001010100100000111010010110001011101110111010111010100100000001010110111010001111110011100111010110110110100101101000000000110101011011101011010011010000010110010001011101110111010111010111001101111100010110101001000011010111100010000000011111111001001001111110001011001000001011100010010100000111001101111110111000011010111010111111010000000010110111011101000000111000000111001101000111111000101110001000001000111000110011111010000110100000110010100111110100111110110010100011101110001100110001111101101001111111001010000001000010100011100110100101111011010000001010101010011110001101111101000110101110010010001001010111001001101000011001001110001100100111110101001111100010000100001111001111000111101110101000110001000101000001001010010101000110100010101000111010010000100111100101001000010111100001100001010010110000111111110000101111000110010110100011000110111001001011111001111111100111100100100010101010010000110000101100100100000100001101010011010111111100110110110000011011110011100101011100010110111100111101001000111001101100111100010010110100101011011010000000110111000000000111110011000011000110111111010001100010000001101111011100110110000100011101100001010100001111110001100000000100100011111000100101100110001011011110110011110100010000110111100101001110111111100110011010011011000000111001001110000000011101111110010000011010011101110100101000001100010000010011101110100101011101110110101110000001110100100011101010100101110111000000100110010110111101111101011101100010011011111110010000010101100010110011111101010000010001110001010000000011001110100010000001111110000101110010001010000111011111001010101001011110110111011000101010100000100111011011000011111000001111111010111001010001001101010001111110110011100111100010111110011100110000011010100101110011000101110100111111101000001100110111001000110101101001010000101000010111101000010000100001011010011010011110000100111001101100001001011010111110111101011110101101010000001010001000011011010011111100101010100000000110100101111001100100000110000010101011110100011100110000101111010010011000010110101001111010000111100101011000000011101000100000110111110011100011111101000100111111101011011010010101011111101010111010101001011111110000001010000111010011001010010110011110000110010101101001111000110101111000010001111000110100111011001001111010011000000100001111100000011010101110001000100001011100111011110111110111010010010011110100101010001100101000011001100001001110101110011011001000100101101010110111010111101010101000001000001001111011100100110001110010101000011011011110000110010100111110110110110111001001110001011110010100100000111111101110100001111011010111001110110010000000000100001110010110110110011101101010001110010000101100001000111101011010011001101010111000001001 +10011011011010010011101001100110001000110011111010011101111110101111011001001011000001111100111100011100011011100100111101000000010001010011011010011101110101100000111101001000110110111000111000111010010101010110111110111011010010001101001010000100111100010010100111100001001000000010011010011101011110101011010101110001000001010011001110000100100001011110011010100100101111010101100010101100011001011001111010010110011100010001111010001100100010000101101000100001011001000110110010100000111010000100010110001110111111010111011101001101100000001011010110100011110000000010100101000110010001001001110010000000010010000110001111111010001111111010000010001011000110010101001101100111011010110101110000110011100101110101011010000110100010011111011101010010111000101011000101100101000010100101101101100111110100100010011000110110001001110110000000100100011110100111011000101011010011111101000000100101010110000111000000000110001110001010011001010101110001000101010100000111010100111101111111010110101110010010000111010110011000100101011110101000111111101010010010101000110010000000100001101101000110111100111010111101100000011000001111001011111101101010110000100110111111000111111010000101100011000111010000101100011101011111101001001011100000001011011011011101001110100111100110011011001101100100111110100100101001110011101111010011000010101000100110000101110100000001011010011101110000001111010101010001000101110000101001111111000110001111000100001000010001101001001011111001000110101010000000011001100001000001010100011011001011011111110101111111011100111101011000000100010011111101111100011111111101001010110100111011010100111111010011000110101000011101011100010000000110111100001110111000101111010000010001101000000010110101111110101011000---------------------0110101001000011001101100000011011110010101011100010000001110100001110101001101111100001111111101100011001110110011111011111111000100010110100110101000011100110100111011010111010000101001100110101100111010100011010111111110111110101111010001101101010101011100001110010111011010110110000011100110000111011110101100101101000110100001111111010011110001110001001001001001010101001110010111010010110010111010101010000111110110010110010100010011001110011111000100001101010101001010000011110010011101000011000011100111111001101100111101100100100110111011011100110100001111101101101101110010001000101100011010101011100010011111111000000010011010111010110100100110111111001001000100000001111011001010000001111100100000000000110010001111101000101101001001100100110101101011010011100011011000010110010101101111100001000111000111010100000001110100110111111101011100100111011000010111110100001011100100010110001001111010101100100101101010010001101110000111101011110110011011000101010100100011110001001011100110000010101100010011000110001001000001101010010101010010101010100001101001110100101010111111010000101010111001100000010011110010111101010011110000111110011000001101011111110010111100001100101000000000101111001011001000001000000000010011111010001011101100100111111000101110101111111110001111011101010110000100101010000100101111011111110001111101000001100011001011111000001001000101101010000001000110100000100000101010101111000010000111100011010011111111100000010100101110100001101101111110110110110111000111111001010100100110100111001110000111010110101001011111011000010000100010111001111001101011110110011110111101011100001011100000001110101010000010101001110110010101011100111010101100001000010011001110111100010011110101100001110110011110000101100100001101110000111110000010000111110101011010110101110111111010000011000000011001100101101001010111101001001011101010110111110011110100000001110111010011000000011010000100111101010000111111110001101001001010010000010011100100001101101100101110001011110000111000110110101011101111110010001001011000111101000111101101001111101100010110001100001100011100111110110111110111110110101010000011100110011101010010100110101110101000110011000011101110100000011110001011010001100000111101001101001010000000011100100000111000000001011001011101101111001110000101000101010000100101100100011100101001011100000100001101110011010100101000101011111010101111010000011001101110100010000111100100110010111011000010111111101111011001100000100101110111100100010010001001100100001000110000010000100110011100100011101000101001011101001100000111111111001110101001010010111000111011011101011111111000000011101000000111100001001110111011111011110110011011101111110110000000111011011101110111100010011110011100010111010111111011010100000011010010110011101011010100100110111011001110111011011010111011100000101100100010110111010000011010100010001111011001010000000000011111000110100111010000010100011010111011010001001101001101111010100010100011001100111110011000111011000011000100010111111111110010011110100001001010111110001100010001111010101000100000000110111010001001001101110011010100011011101100110001011111011111100001111001010010110000000011010111101111111100100001110100100110100101100100010110010010111001001010000001111100010110011111000100000010101001001100010001101001110010101110011010001110000011000110001111011010010110111011110100100010111100010010110111100010111110011111000110111010101100111000010001010010001010111111010110100100111010101000001111000110100010001111100111011100011001001110101010111110000001111101011011010000010010110010111010110110100001000110110110111110001000000001101010110010001010110011001110111110001101100110000000111101110011001111101011110011011001011101011100010010100111100101000001111010001111000111101110111110000100000010101100001001111110100100010101001100011100011101010001100001101111001110010011111110100001001001101000111110011111100011011001000001000110000100110101101010000100100100010110001000101010001010100100000111010111111100101010110000000001110101011001111000011001110 +00001000000010010001011110100101010000000100011010000011110100000000010000100110010110010110011001110111000001010011010110011000100011001001101110010001000001000111111010010011011101100111101011001111101110011000101100000001111010000110010000010101111111110000111001000000010011011000010001111010110101111011011001010100110001001110111011111101011110111001100011110000101011010000011101110001110101111010010100100110110110010110010111000110110010001000110101011101001111101110101100111001110111101101010101100101010110100101111100010001001100101010001101010111010000101101011101011010111111110110001011000101101101101100101010000100000000101111010001111011010111011111101100110110100110001110101111111001110011010000110011110100100110001000010100100010000101100111011101011011001011001110111010111100001110101010010000110001101001100000101101111010000010101101101100110010010100111100110001011110001011010110101011111000110100011100011000100110011000010100100000101111111001001011011100010100000001000101101100111011010011011000111101100011101110101000110000100010101101010101011110010100011011111011001111011000010001010000110100011101000000000000010100010111000100010101101101000010011011111010110100110100011001101101001010001000100000000111110001000110100111010010111111110100110011000110111110101101000100011000111101001001111110000111100001101110000001100110000010001000000110010100111100001101110110001001111011001000011111000001011001110100111101010000101111101100010011111110000111111111000011110100010110011100111110110100011100001011111010000000101100100000010011101011111011111001001100101111100001011001000100000001010100011011110110011000001101001000111001000011100010000010100110111001001011001000111001101110010100010110010---------------------1000011100010111100101011110111011100000000110011110101110011101100011001010110011100110011100111100000100111010010001010001000111001011011100100011100101000011111100110001100001000011100000000011111110101010101011010010001110011000110010111111000100111001010110011000100001010111011001110010110110100000101011011001000001000111010111010011000110011110110001000011110000001000001110110110100100001111011000000001110100001011011011011001111110110000100100110111010101010010011001100101010000110000100001011011100011100110101110111110011111010000111110011100101000100100110001000101110011110111001000110000001110011011010000000011101010010100111111101110001010010100001010000010101001001110011000101010000000101001000111001000000101100101000111100111000010110100000000011101100100100000100010000110001001001010011001111111000100010100000101110000101111001010101111101001000001011010111110101100001111010100100100111110001111111101010100011011111100101011111100001110001110101110100000011101110101000011100100100101100011100010110111100100100111100000001101100000101010110010101000010100000110111011110001000011100011011111101100010100110011001010000100111000111000011001001001010010000111010110001100001101000010001111010001000110101010001010011011001110011001110001001011101110011000000010000001101000111100100101111010000011100010110100101111100010001011001101110111101011001001101101100101010111010010001011101001101000100100001001110101100011111101001010000110111111110101100000110110110011111001010110111101101011110001010011001001111101001011100111001011110000100101010001100000000101100010000011110000001100111010110001111110011110101101010101111110011001111111100000111011011111010010100011011110011101110001010101100110111000101101101011111101001111111101110100001001111100000101011011000111111100110111000010011100101001011111101010000001010101101000000101011101110010111000001010111101101110101111011100100110000011100101101101001101110100000100011100000010011010100011101110000011010100111110111010010110001011011100100001011111101000011000001010000100110111011100101010100110001100000110100111000011111100001010011101100100001111111010000101100101001001001010011001011111111110001111001000011000111000111101100001111110010100100101001010010000101100111100110110111100011011011010011001001001110000111111110110010011001001001100101111001010011110100001001110010011101101000010110011101010111000111000110001010101000110000011111111010001001100011110001011001010100001110100110110000010011001010011110010101011101001011100010100100100110100111101100001110011010100000100100001000110110011110011100010011100010000000101010111101100010110101111101001100100100001001100000100001001101110100000000000010100000011110011010001011110110010100001101010011010100111001011100011001110000110101101110100000111000000101001001010100010010100101111000100001111001011010100100100000100111111100011011101111100001000111000001001010000011110011011100011110001001000100101100100101001110110001001101110010010001110111011111100101010010110101110100110110101101001010110101010011101111010011101011100101011101011010010111011010000000010011100000011110000001001110101011110011011110011010100100000001111011110010111011011011001000010101111000010000111101010010001000010000101010001001001011000110111001101111000010100001000001111011101011001110010100001001101111101001001011110111100010101110010010101001000101000110100001011111000001000011100111110111011101010110011111001100011010011101011101011011100011000101000010111001001011100111101000100000010111101010011010110101011010010010011101000011101011001100110111110001111010010111011001110110110110111001000111111110010001001010110101100011000111000010010000111111101101010110100000010111001010001110001100100110110010011010010100111101111001100101000010010101010100100000011111001010000010101111010111000110101100101110010111110101110011100001101111000010010010100001001101110001100100010000011000011011110001111010111111010000001001101101100111100011001000011000111111001101000001101111111101011011100111111 +11000101011011001111111100111100100100011010101000011000110010100100000111000101011011011000010010001110101110010001111110100100010001011111110101010100101100001110111110000111010000011110001110010000000111010011100101101100001010101001100010001010000000000011011101100100000010001101010011001011000011011011100110111000010000010100111001111001100010111001000010001010001000111000111110111100011000000100001111001100010110001010000110011001101000010001001101110110011000101110010001110100101000000000000111101011101000100001110100010100101111101010000010001100010110001101111011011010001010001111100000110111010111110011100010011000010100000011110100110110110010001001111111010111100010010111011100000110001001111000010110110011101110101100100101000000100101000110100111111100110000100001101001101100100101111001011110110000110000101000111101110011111001101000000000111101101110111000000001101000110100101011010111010110011001100000000001111100101001010010111110011011010011001001101011001001001000011101010110100001001011001110001110111111010110110010110100111110110110111111000110010101011011110010000000011010011100001000001101101001101000010001101001111001100101101100110011111111000011010100110011001000111110000000000111100101000101111101011100100011000010000101000110101110010111110011011010111101010011100011001001000110000101111010111001110001100111001011110100000010100000000011111000101100111001001110001111111001001010101101101110100010000101011011001110100111111000000111000001101100100101111001001010010100110011000110111101101010110011110100110000111110110110110010100011111000000001110101101111011001101010101001101011111111011011111100000101011101110011001011010011000001111100011110110001101111000010110011010110010011110---------------------1111100000110001000011110100011100011001111110001100111001011000111101111010101110100011100010111011100010101111010100010001001101001100000011000001111111000000011111100011000100001010000010000011100000110100111011101101000000101010100100111111001010101000001010110010011101011000010100010111001010010111001100101101101001000001101110010110001100111100010010001101110111001011011001110001111100110110010110000011001011100001001000001100010000010001111001110001000100110111100001100101001010100010100010010100001101000000000000001010101000010100101010100100111110010011011111011110100111000001101111001000110111010111001110101000001100001111001010110010100110111000000010111101101000011011111001010111101010110101101101010111101111010111111110110100100010001111001010101100011100110100000010101000110010111101010110011101101011000010101010000001111011011110101011000101000100011111000111001011000011010001101001100001001101101011111101010100111001110000110111001101100000100000010110001110000000100100100101101010110011001001110111011010111101010100001111000010100111001011101110001100000000111110111011001111010001001101000110100000011001101010010000011100110000001111010011100110101110000100010100101000100010110100110110010101011010011100110101010011010110011000011101000000100010110001010001011001010010001011100000110001010000100010100100011000101001111010010010011100100101000001100001111101000010110100101110011000100110011110000111100101110001000111000101001010010000010011110110110101010000010101010001000110001010010101110001110100111111001100101111011001110010000111001011100110011010001001101010011011100101000010010101010010110000010111100111011001000000110011100001011111101100101011001000100100110010010111010100111000100010110101100010001101000111001010000011111000100000010101101101111100001001000110011101010011011101010000000100000101001000011010000100100000001001100111101101011001010010011111111101010100000101001000111001001111110000101110100011001110100110101000111100001000110111001000001000001110000000111011000010110010011111010011100100001110000011100110001000101110001100010110010100100000011110101100110110100001001111100100011111110000001010000001010000101111010100011100110100010011110010000010001000000101110011011110000010100000010011101001011101110101010100100110100101111000111101001011101100001000110100111110110101101101101101001100000101001111011001001001011001001100001111011111111110000000010101010001111011111000110101000011010011110010001011101001011010000101000101001100111001110101110001111110101010001011100010011011010000000010100100110101001001100111101010011001001111011101011110001001010011001110001101001011110001000101101101110010110011111011110001101100010000000011111011001011110101011111001100101011011001010000101001110001010100110101000000001010101100111011111111110111011101100101001100100100000001101100011100100000001110101111110011000010000101000110111011011011110111010001111111111011001111000010111011010110101010010110100001001111100001010000001001101001100010010101011000000111000000000010001011111100001000011101010011110001001010111000110010010001110001000110011111001000010110000101111010110100000100001000111100011010001010110011110011111001000001000110010000101100111110110010110000011101010010011001010111101001101110101111000101111101101000110011100010000101000101001101110010010111010101011000101000101001101011000110100010110011101001010100101000011001110000001111101001100111101001011100111011101101110111110001000110001100111001000011000111000100110011100111110011011010011101010111000100101001000010001011101010111010110101101000110100000011001010101001111101111011111011011011110110000000111110000010000011000000001111000000100111110000100100010001101010010010011011010001000011011010100000001010001010001000011011000001100000011000011111110001001000110010011001010101011001111011011010101010011001000010111111101111110110111110110111110100110110111110011010101110010111101001001010111010101000111111000110011101000001011100000010011010111010010111010100001010000010110101 +10010100010110111101010001100010110101001100101001100100101000011110011110000010100101011011110101101011101001101010100011000111101000111011010010001101000011010100010000011111011001000000100010101110001010010100101100010110101100011010010011011011000111000101100001100100100101000100110010010111101010110110010001101001011110110010111001010001101111111100100011011100100011000011110101101101000011001011011001010110111010001110001100100100001011111101111100000111011110111001010010100011111010000110111001010010100111000001101011111010010011010011101100000011001000100100110111101001011101010001111101001111010001000110101011001011000100000000010101111010101001100001111110011000010101111010101001000110101111111100001110000110011010011111001110010111100110000000011001110011010101001110001000001000101101110010110101110011010101001000100110101101010100101111010001011110001000100110000101000101001110011010101001111000000110011110100000111110000100111001101001110111111110010100001001001001101110000011011110101011000011110101101101000010110000111000100111101010011110010101101100010111101111100101110011000101010110110111100101111010000101100011010111001111010010001011001010011000111010001011001010010111010010111001010010010011101110110001011100111101001000000011010110111010100110011010110111010011111010111010000111000000110100110111010000110110001101100011110100111111010100000010000110100111101100010001101011000011010110011100111101100101000011001000100001001001110111011010100011111101111110110100011100111001101001011101111101101000010111111100111010001110101011110000001111101010110101101011000110011001111101100100111000011101010101111001010000011011010111111000001011101100101010010011110000010100111011111111111000000000100---------------------1110000011101100011101111000100011101000100110010001110111100001101101011001001100000111001110110010110000001000100110000011110101011110101000100011000001100101000000011001011111100101111001101010010101010100101010111110111101100100001001000100000110100111010010111101100000100101010001100000110101111000110010100011101101001000101110000100111111111110010101010001001100101101010000101011110011111011100011010100110110101110110111011001011001111100010110000001000101000100011111101111011000110101010110010100111010100111101011010000011110001001100111010100111010111000100010101100000010100011000010101100000000000011100010010000001110010010001100110001111100001010111101111100101000000100010010000001011100110100001101101000110010101101111101101010111001111100011111101111010001010100110011111100101110100011110011111011100111000010001011101100001100100001011111111011000100101110011110100100101000000111101100110111111111011011111010010100010100000100011000010011101000111111111111000010000011111110100011011010010010010101101010100100011100001111000100001110000001111000000011001111110111100101010011001110101010101111011000010000101111111100101100111101011000010111110010111000111011100100100001001010001100010001000010000011010100010010011111101001010001110011010001011010011111101001001111110010001100000110011001011001101101100010000001000010000010010100000000000100001010100100011001001101100111011001000101101101101110010001111010011011000011001000011011101111110001110101000100001100110001010010011010010101010111001111101010100100101111010010111010001011011001100100001111000111110111001010000000001001010100101100111001001111010100001101011110111011110010000100010100111001100110111100100110111011110110001101111110111010110010101011000000111110000110111010000110010110011000000110100001100011011111010011110101011110011001101001110100011000010100101110001001010111111110010101100111000001011011110100011111001011000100110100001011011110001000100101111011010011110111001101000000111111100110100100001000001101110001101001010110000101000101110011111001100100001010001100100111111100110101010011000110110010001000011001111010101010010011011100101001100001110011010001101000011111001100011000111010000001101011011000100100110011001011011011001010010100111010110000110110000110101000110110001101010001000110010101000100101000000101011101110000000101011110111001000011110101010001110010011011111010101110001001101101111000010110100001110010100000111111100111010000011011010011000110010000011000110010000011000010011111011100010111010100010010111100100000011111100011101000111101100101110101011110101010111100101111000111100110010011111000100000110011011100011111111100110011101011000100010111011111000101011110111010100110111110000000101100100100111010101111110000001000010010100011000011100110010101011001100101101101011111110010110011101101011111001010000000000101011000011101110001011001000000000100000001110010000100100111100110010101000100000100001100100000110011011010101011111111111100010100001110111011011001111101100010011000001000000010110110011110101010010000011001000101100010110011011000101110111111111101011010000111000100000011110001110000001101110000100000011101011100011100100111000111100101010011100100001010100010001010010010010110100010011111111001100100111011110100011100100110110111101010111111001111101101000110011010100111110001100101001000000100001111111000111010010011100101110111001001010110011001110011100011010100101000101100011101101001010011010001001010101111011101100011110010101101000110001110111101100111110101001000101100100101001110001101110111010100010010101011101111010000000100010011001110000101100101001110100111010100011011010111010111011100001110010110010100000010001101100000000100011101100010000010110010100001100000000001000010101001111000111100101101000000011010001011011011011011110111011110111110011011001010111110111001011011111110100110100000100101000101011101101010000010011001011011101100101111000010000110101000100110110011011101100001001111101100001111110100101001001011001011000010011100 +11111011111011101111101100110010001010101000110100010000111010110000011000011010111011011010100100101000001000010101001011111111110101111110111001100001010010010110001100000100011000100111010010100011001001000001100001011000011111010111101001110111001110000010010100110110110001010010010100011110101110100000010111100000011111110011001001111100010000111001111010000100000001101010011011011110110101011011101011010001010000101001110011111010111000000101000110001100000010001011101101001110110100010101111001000110011011010000000000011011111000011111110111101111110100101001010101000111111101001111101011110101010100111110001111001010010100111011111011101000100011100110011111100101110111110111101000010001101010000010110111000100000101100101101001000011101011101111110110000000011100110001010101010100111010000000100100010101001010111100000101100100000110101010100000001011011111101111100111111110111110110001100001101101111010101000010011101001111010011011101111000111100110110000101110011001001010000011011111100101101110111101000000000011010100011101100011011100111111110100111011010110010110101101110100011101111101000101001110101010000111101110011111110100110100100001100010100011010011001111100101011011111011001000010111010110010110101110001010100011100000111101011001010010010111000111110101100001100100000111001011000010101000110010000000000001110101110000100001111000100101001100000101001011101010000101000111000000001101011011000110000001101000111110110011100000110110011100000001011000000011001010111011101010100011111110011010001110000111011011011011111010001111000000100101010000110110000101010110100110001111111110100111100101101110010001101100101001010111001100111110001100011101011100000110010010101011011011010010110101000---------------------0111100111101010110110000010100100100011100010101110010101110101111011101110111011000011001011011101000110101100110001000100001100010010101111111101101110000110010100110110001011111000111111101000100000101101101111011011111001101000000100010111100000100010110100001000101000111000001100101011110001101010010110110101110010100101101000011101001101011010100001101011110010101101100110111000101011011000101011110011001001010111011010011101010101011001101101000001011101100010011101101011010001101010110010101110111101111000110111110100010110011010100101101110100000000101010011010110010001011011001101011100100100101101011001001011110100010011000000011100111010110101001111001110000010101000110110010000111111001110111100100110110111111100100010010110001111100010101111100100101000100011011100000011000101110110100111101110110100001111100011101010000011011000110100111100111010010111100110011011101111011111101100000100010001111011001010010011001001001101000110110111111011111000011001000100111100011101000100100111010000001101100101100011111111000100111110100011111010100110000001100100010101010110011110100010100101110000101101001011001011001001111101011010000010011101111000000110100110111100111001011000100111111000100100100100110010011100111100110100010010100000000110100000111100110011100101101000000011101010001100011110110110110010000001010110010011100000101101101111010110110111001000000011111111000100110010001010011110101001001010011001010101011000100101101001110110010011110100101101001110101010011100000010111010011101001010010011010011010110011110111100010101101011110110110000000110011111101011111000001000101101011100011100010011011011110011110001110000110000101111000111001011011110010011001000111101011011100111010110000010011100110111000001001110000110100010010001011110110111100111110010011011001101011110011010100110001101110100011111101110010000011100010011111010101001011101110000100001011111010111101100110110011010010100100001011111000001001011101111100010001000000001001010001101100101000100110010010111111111000011010010010100011010101101000101101101010000110100010011110001110111111111001100110100001110100111110010000010110001111110110111101100110101011111110110001111001100110100000101101011111110100111000001100010010101110100110110010010011110000111010011100110010011011001100011101101010110011101010101000100011111111001000111000010100101101111101101000111010101101001011001010110011111010100001110100010011101110100101111101010000111000100110010111000111010010100101000001111000100101000111011001101101101110110110101010111001110011001101011100101001100001110000011101101001000010011111110010110101010101101111110111010100011011001000111100001111111100101100010101000001011110101011010000011011101011110001011011101100111010100010011110000111011111011111001100001101001101101101000111110010101101100111100001011110110100101001101010101001110100011110010100100000001101100000100110001000100110000000001110000100001000010111111001001110101101111001011001101010000011000110001100110111111111110101011010101000011101011101001110100011111111000111111000011100111101100111001100010101101000111111110111000111011011010110100001100111101001001010110000100111111111110011100110110110011010100110110000111000101110101100110001000010010101000111101001110100100000000010001101100101101000100010010010011111111111000011000001000101101011100010001010100110100101011110011111011110001000100000000100110001110001111111010010110001001000001110111100011000010101100001100111100001111011010101110000101100011110010101010101000011010110010100110010010010000011111111000111100110100101101110100100111001010011101001011011000101111100010101100110011101100001110001010011010100000000101011100111101111011101101111101101100100000111011001111111101100000111000011010110101011010011011011100100110100111001111100000001011111111010010011110110011011000110001011110000100110110010100000001100101101001010100111101001100001000101110010001001010011010100011000111100111111011111110101111101110000110110100001001010011011011010011010010111110011101 +00001110111001001001101110001001011011111010011100110111001010001001101010111011001011001010110011100110111101101011100110100011100111100101110010001110011100010010010001100000001111101101111000011000110011111111111101000111110011110101001101110100001001001000100110011011011110100101101100010111010100111000000001111001000100000101110101111111001111111111001101110110000001001011010001001011100110110011101100010101000010101101011111011011011001000011010111000100011011100100011010110100010000001011110010101000111111101101111111000110111110001011111111101100001000101111011110101111011001111101100000111010100111101100110111100110111010111011111000010101100011011100111000101100100011001011000010111100010011110001001111010101111010010010000111110001010000111101001011010110101001111111101100010111010100001101010011001100100011100010000001110101011010011000000111101100110011000111010101010011000110011001101010000000010101110101010111001010111001000101011110101111101000100111011100101100011000101100000000010000011111100010000010110001101000111011000011110001011010100111010011011101011010100110010111000001001100111000001001100101100100010101100110101000111000001101011111110010110000000111111001111001001001001110111110000110111011111000010111011001101011100100101010101100100101110100100111011110000111000111111010100000000000110001110100000010110110101100001001101011101101100000001011110001001000010010110111110100101001101110010010001111000110010001101011000111100010111101110111110111001011011101101110100110001001110010101101110101010010110101110000011100000011011001110100001010001110000100101000110011001111011110001011010000010100000010010011000100001000011110010001100000100111010010001001101001001010010110111000100000011---------------------0100111100110101000111100100011110100001111111001000110001111110010010001010011000000010111110100010011000100010011011001001010010011111101010000100001001010010110110010111110000111011000010011101100000000001111110101011001000010100111110011100100011010011110001001000111111001111101101100111101101000110111100100100000011100111111001110100101010011110111000001111101000001011000101100011111010101101111001001000110000011101110010110100000001101011101001010101111111000101101001010010111000101111110010110111111111001110010001010101101011101100011101110100101001011111110011101010100000000001101001100101110111010111100100001110011001111001001000101100001001101010110011010101101101101110110010011111101011000001110101010111110010111101001100111110101100010100110101100110011110000110001111101111011110101011001010100110011110101010011111100001000011100100110100001111111011000010011100000101111010010101001101101010101011100110111111010111101110111110001100000010101011110101011100011000011110101101100100011000100101000011110001011001100010101110100101001111010001100001101000000111111011110000110101001010111011001001111011001111001110011010011110111011001000001010001011001110101110110000111010101001000110101000001100111110010100001001101110011100000111001001010111101110010101000001010101001111110101111010000001100011110001001100000110000101000011010111011000010110110011000001011010101010001010101111100111010000111010111110111011010110001110011011011001111110000111001100001011100100000111000011111010111111110000011001010101010111010000101110001110001101100100100100010110101001110011100010111111111000111011101101001011010100011011101010000000010100011011100100100100110101000100101010000010100010110001001111100101010011110010001110010001010100110001010000000011111100101111111100001001010101111001010111011100100000110111101000101110111110101101000100000001000010010001011010110011100000100011001101010000000111100000011010000000110000101001110001001100101110011000110000001111101111110101001110101010000011110010110011001100100111111001101101101100100001000010110010100011110000001111011111100011010110111101000010110111001111001100101001010100000000110110000111100110001101101001110001100010000001010011100100100101010100111100101011011010100010010110011001111001110001010011010101101101101011100010100101100010010011111010111001000110111010001010111011110101100011001111101111111010101101011100111111110010001010101101101011001110110110100010010111001010010101000101010101110111000001000110111011001101010110110001100111000110100001011100101101100100000101111011101011001011111110011110011101010111100010111010110110101011000110110111011011100110110011011101000111110100111010101100111100000101010100001110011010110101011111100100001111011000010111110110100001011110000000111011001010100001101000000111010101011001011111101111110100110011000010110001110101100111110010011101101011101110110001100100101000100110011101000111010111110110000010010000100000001100111111011110000011110000100111001100001100101110000111111010011001100110011010101010101101111100001101110110110010001011001101100100001110111111000010000010000010001010000011011010100100010100000000000100111001001010110100011000100100110000011101011100000001111110001001110011110111100101000001101100011111101111000101010000001100001011010000101011010111100011111111101001100011101110010000100110100101111111001110001110011001110111001101100101000011101011001010100101110100110110010111101111110100101011010010100111000111010111100101001001100101100010110001001000100110111010101101011100100010111011001011001001011000110010001010110111001001101010110001001111001001110010010011100001101011001001110000011000010110001101111010100111010101010000000110110000100010010000110011011100111000000000110110111110110000100011010000000111101001000101011010001001111110100010001011110101111010000000100000010100001010110010100101010001100100100110010100110010101111010111010110010011110001101111100001111100000100100010001011000010111100010111011001010010101101110101000111110110110001 +ls176msgs +11101010101100110101000001110001001101101111001000010010100110100010010111111100011001101010000010100111000000010001001101100100010110001111111101011010110010100001111000111101000100011010111101100100010111000010100101001000110111111100101000001100011010000010010000011110101001011000011000110010100001011100101110010101001100110001000111001011010010100111011001000011000011001010110000011011101100111000111000010110010011100010101101100011111100010101000010011011000000000011111110111110111011101001101101100001110101110010111011110000101110110000110010001100011010111110000010101110001010000100001101000100000110011100110100111000010001110101011010111101010001010111100010001101101001100001110101101101011011100101111010001111011100100011011110101001000111000110110000011110010100101100001011100001110101110001001010000101001010100100000010000010001110101010100010101000011101000001111110110110100110000110101000110001011101000001101101000111111111011001100010010011010010011001010000011011101111010001001111011001011101101111001011101110010000011011001010001111100100011011011000000010101101111000100110101100101100000001100000101101011100111100000110101110100110110110111101101111100110101101010110001110000010010101100011110001110111111110100101100101010001100010101001110101000111001000011111000000101110101011110101010100111011001001101010111010100111110001101011100001010011110101000010011101100011100111011010011111000101110100111001101000110111101000001111110000101000011110111101011011000001010111111010110110110000000010110101100100110011100011101101000100111001100100000111110011001001100111111100000010110000000101100110111101000101100100001101101000001100010100010101011011100001001110101101001111010010011010011001100000110010010000110011000111111111111111010100010010011010001101001000111010111010101010111001001001000010010101010100101001101111011111100011000101101111010110010101111111100011101111110100101000010011101101000110001100111101010110111010001100100010010010110100000011111110110011010001010110111100111000000110100111110101010100001111011101110100101110010111011011110011110001000001111100010001100110001110101011000111001100000101111011101000100111100010100101000110110010010011000110011001001101010101001010101101111011000010010101110101100000000011111001110010011100010001101110001111010010000010000100110001001001011010010011101001111011101101000111011011010100011110110001001000110101101001101010100011000000111011011110010110100000011110110100001010101110110000000011101111001000000110110011101100110111010011011101100111101001000110010010011010000111001100100101110011111111001000110110100011110111011010100110111101110010101010001110011001010011110110000101110110111011110110110010011111100001110110010101000100111110010000011111000010001011110110010100010111010000110100001010010111111001100111010110110100010111100010001111001000110001010010111110001111011001100010001101010100110101001110010101001100101000011001111100000000000000001001000000000010111101010010010001111100110011000110010010111010010000100100000110001011110111001001111010101110100100100101110100101011111010011000110111100001001010001001101011111100110001100010100110000100111101110101000101001001011110110100111111000000010011000110110010100010001110001000111100100000111101001001000000011100110110100100000100000101000100111011010011011110001000111000001000000001010010111001011110000001011101110011001010101101110000111100000011001001100101011101001101110011010000001011101001100111110100010010101000000110011110011111110101001000101000010011100101100111000010010011000000100100010001110111111100011011011111010011110100011111011011001011001101101100101110000001011010110110111001011111001100000110000010000110010111010101101001111100000101001110010010100101001101101011100100110111110110000100110000100100110111001110100010010110110110010--------------------- +11101111000100110100101101010111111101100111011010111011001111000001010111110000110010100011110010001111011001100100010110110110011110100000011010010110010000001100110011010000100000111000001100101011010111100011001001111111100101000101101010001010001011000010110011000100000001000111110100100100000101011000001010010011000100001100000111010001100100011011110110001010100100010010111111111100000010111000101001001110010110100110011110110110101100000001010110111110100101011001011110010111100100111110000110010010111110100010111001010011000011011100001000000100110101100001010101001111100101111110101010111011000110100100011000110000101001011000001001010110110000011000000101100000010100011001101110001111100111011110101000101011010101011110011110010000001011000101001001110100110111100011100110101101001101001011110110111010111100111111110111110100111100000100011001101010101010101101101011011000111110000110111101011101111101111010000000000100100100000111011101000101110011001000001101011111010011110000111010111010111010011000111001000101010111001001001110110110011101101011010010111011101010000100011110101000111011111111110000011110100100011101101011111101000001111100101010101101001010000011011001001111000010001101011010100001010100100101010100010001101000001111111010110110111100110011101101100100111001011101000011101111001101101111100010001011110101100000101010110001101000111000000011111010011110001011001111011010111010001010101001011000101100111111101010110110000010111101111101100111100100100010010100111110110111011101001111011101010001000001011011011100101001100100010101011000110101010010010110111111110010100000111111000010100100000011110001100111100101011000010111101001101000101010000011111001000100001000101010001100110110110111011110100000100101001000111000000001010111011000011101110010101101100110010000000011110101000011111101000011101011011111011000111100100110001000101101100010000110001100110011111010100010001001100001111100000110100011101111001100100001101110010101110000100111011110110000111011011100110110101110010000011011010101100001100110001011010110001100001110110010011111001100111000001011111100110101100000001010100001100001001101001111011010110001100011011100100010111000010001011111001010111111110110010011110100100101100001010100010001100011001000000001110000110111001110011100000100111011110111000011111111011010110001011101100101110011110010011111101001101111100110010110101011011011111110011110011001010101100011110111110100101101100001100101101101011010100100001101011001100111111111010000010101011001000001111011011101101110000010110010000000011011011011011111011001010101000011011001000010100100011100110010011111100111000101011000111001100000100001101101001001001011110010001001100101000011010101000110000100111100111001010101111111100001101100110111000010011001000110001011111011111100101101000111001011011101001000100011000110111001010001010100111101011000100101100111011110001110101000010101100100011010110000000100100011000101010110011001111010111010010010101101001101000001110111101111110001011000100010011011010011010010000000011000011110010011010010111100011000111001110000000100111000110100011000110100101111110101111111010111011111000001111011100010110011000011000100011011001000000100010111110101001111000001010001010101111111001101010010101110010111010111011101001011001000011100111011101001101100100100100011101111001010001101111011010111110000110100110001101011110110111011100101111100111010000100001111001100010011111101101000101011011010111011010010101101011001111110011000011110000110101110100000000111101110100001100101000011000111001100111011010101000100001010100100100010001101000001101010000111001001001011000100100011001101010100010100001100101100001100110001001110111110001111001100011101011001100000000111010111001001100000001110011000101101111011001100000001001100101000111001111--------------------- +10110011000101110001100110000111011100110000100011001110111000111011110100101111111111011001010011011101001011111101001100101100110000000110000110111101010101001100111000100001000000011001101001011000101110001000011111001010010000101100111010101101011101101010011100001100111000101101011011010101111101101100110001000101011001111110100100101000001100001101111011011110100011000010011000100011111001110110010011100110100010110110110010100000010110010001100000100101110010001101001111101111001010010010001111000000110000010111111010111011111000001101001011111001000111001011100101000101000100110011110001101000111001011000001111100010010110111000101100101110101100011001111001100110111111000000010110010100001100000001011101110010011000110100110000011011001111000110010010101101011000011101000111001001010111001100010011001000101111000000110010100101011010100010111110100100100110111111110101001110001011111101100011100100110110011111011101101011111011010011000001110010000100000000110010000011001001010100000111011010010010010000000101000100010101111001000111011100011000001000100110001011011011000100010001010011101100000111000011101011001001101111011111010010011110001011100000110010111001011010011111111011001101010100101100011101111010100001111100101001111001111101100000000111000100001100001010101000110011001110110011000001000010011010001111111110101100000110111010001010100010000011101001101001101010110100000100111100101111001110110010100110100011100001100011011001000111011001111011011100011111100001101110100111010001000001111011000011101001001101000001011101100111001110100101110010101110100000010110001011101100100100011111110110000111000011101101000010010111100011011110111110100111101000010011000011010010100010111101110111110010011011100110011111101001100011110111100000111001110100100101100001010000100000100001010110110111001000000000110010110100011010010011001000100110111010100011110010111111110001101011010011011110101000001010011100111011011101011100101101100000011011110011011110010100111010110111010110011101000000011010101011000100001000101011011011001001110000010100100111011110000111001000000100011011010100110101011111011001001000100010011001011101110111000001110011010000100010001011010110010100010100010010010000011101010001100101001101010001000111110110110000101000000100010110011001101011110010111001001000100101100010100010100110010110101111010010100100001100011101001110010001111111010001101011011010000111000011001011100000011110001001111010010111111011011001101011100100100111100100110011011110111001101011010111010011000010000010101111011010110001101101011001011001100010101000011001000100100101011100011100100000110111110101101100101000110101001010100111111110110101011010101101101111010001111010001101010011001001101111111100100101000110111101111000000000000000110001111010110101100000111111101001101100000101000000011111111100111100011101001001010010101011000100001001111111010110111011110000110001001011011101001010100110000011011101110101101101101101011011011011101100110110000001010010100101000110101001111101001000101100001010010110010000011010001100000100000100111011110010001011100100111100001101010101000010010101000111010001101101100111110010010011000011010000100000011110001110111000111100000101110110100100010101011000101100100110010100000000101010011100111101100100100000111011001111010000011110111110111011001011001001110010110010000101000111100001110111000110110101010000011111001100001111001101111100010000000101000000001111111110100001110111101111011101001110001101001010100011011110100110110111101010001010000100000100011101111110001010001101101001010001100011111101000011111111001101011111110100010000001010010001010101110011001001101111011001110101001100101010101100111001101011000001101010011001111100010110001000011111100000011100010000001111000000111111010010000101100011111110100101010101001--------------------- +11010010001010101101000010110110000001110101110110001000111000100101011000001000001010011001110011000100100000010001011111110001111111001110001000000111110001101110011000000111111001001101101011001111100000111100100000101100111110011110111001010101101100101111100101000011110001110001110011110000111100110101110000000100010110010100001011110010101100010111101000000111111100001010110000111111111011111010001010100001000010100011111010110011110001101110111011000011011000110110110111111100111010001001010101010000000010010100001101111101110010001100101100000000011000001000100110001100001000101001111011001101111010011100001001000101001101100000010110001111101100000100101010011010111101000101111011001110101001011100000000101111110111100000000110111001001111011110000111111100101101100001010111011011101101100011111111010010010101001000111100110110111011100111110010101000101110111101111001111001010101110000011000010110011000100100011110000010101011111011010010101010101111011000010101100011000011101100010011111101011110010001000100010110111001000100010001101010011110000100011111001101111110010010111101100011011111000110001001000010010110100000011001011100010100011011101100110101001100011011100101011111110010001001011110100001001000111011010000011100011101100100111000011100111011001000010001110000110001010110101001110110011000100010010100110001110001110111000010010000110100011001010110011100100011111110000001010111011111011010010100111111100100100111011000010111010010011111110111100001100101001111110111011011110100011001000000111110010110011100101110111011111001000110101011101111101001000000100100001010011100100101110001010101101101101111010011100110100110101001111000011111100100000001101011111111110100010010000100010111010010110001101111111010110001010011110010100110001011111011001011111011001000101101000000101011100010111110100101000101100100011100111111111000110111000110101101110101100010011010010011111111111111111111101101000110011100101000101111110101100011000111000011001101101111101101011001101010100111010100101011011100100111101100111000111000010010111001001111101110000000111111100011000000000100100010110010001000111010101111111110101110110111101000010000100011100101001110000111110101001010100011000001010100001001000110110110101101110011011111010110101010111011111000010100010111100010100101110011101010101111111001001111000001100111010101000001000010011011010011011010001100001101100000101110010001101110111010000010011001111100110001010111101111011000001000010000111111101111001001101110001110101000111010010110010101100100010000000110101111100100110011110001000000100001000011110111001100010110100101000110010110011101011001100010011100101101000011111110011110011010011011001101001110000010000110100110000101111111111110001111001010000000001101010111100011000101111010110000000001011000010000001001010110110011011110011011010011111110011001011100001001011111011101101010000111111100010001010010100100101110110010111001100010100010100101001101100100000101101010000101101111010101111100001110101100010110101101100100111001100101111100100011000000100001001000111010110100011101111010101001000100000101111101100011110110101101110010111110101110100010101101111100110100001011111111111111110001101111000100101111001111110101000100101101001010000100100101100001101100000101011001011110101001110000100100000101100110111100001110111101101100110111100001100000010011000110101101111110011001010001111100000111000001101111101111011100101110110100011111001010101001111111010010010100000100001010101011101001101100101110010010001100011111010011101001000110100100110111011011101100110110101110000010010001111001101010000101100010000101010111001101110000010101001001110100101101000000100101110001010011111100110001110000101000010110101000011101101011001100010110110100000001010001001101001011100110100111100011111011001101001100001--------------------- +11110011101110110111111111010101111100000001111001110100001100011001010001110010001100011011001001001010100101000110110100010001010110101010110001011111111010111110100100000111011000100001001010010001110100100101101010100111000011010100110011110011000000010111011000101001101101000100100001111010101010000000010100110110000010010100000011010011010101111101010011110011001110001100110100000000000001101010100101000111010001011100101000111111111100011000011000110000100001010110001111000000011101011110100010011110100111100010111000100000011001011100100010011111000101000100000001100010111010111110011000001101000000110000010101000000111110010000111010011011110111000100000001000101001110001110101110101001101111010101100011110111100110001000000100011100110111111010010101000001011110010001010000111001100100000100111100110101110100000010010111011101100001101110011011000110011101111010110010011111100000011001101100011011001111110000011100010010100010100010010100110111101000010111100111101000000100111100001111001111110010110101110100001110000011001100011011101101100101001111010010110110000111101100001010000111011010101010010110100011000110000110000100001001110011101000101011010100011100000100111011110011111001110010111111010010111111001001000110100101111001001011000000011110011111101100111100111110011110111110111011010111101111111000000101010011101001011100001110101000010110011000010101110100110001101110101100101101011010001110110010011010101001001101001110110001101000101111100001011100010101001111011110110001101011011110010100110101010011100100100011100010110000011101101000110011100011010001010101111010101111100010001111101100010010111101100000001100011110010101010111101101011111011101100100011100100111100110100000100100101100011100100001000101010001111010100010000100101101101110001000100011111000101111001011011001011000001110110101010001100110110101110101110110011010000101010011101100011010111110101010000110000111110011001011001111000111110000000101011001000101010100111110010101001110100110001101001101000011010010000011000101001011010101110111000101000110111100111001110111101000011011011001010100011010000010110100010100001010000011011011111100010011100101100000001110001111110010000010011110011011101111100001111110100101110000011101110101101011001100110101001100100111001011001000110000111010010111111001111100001000100001110001111001011011000010101100101011101111000011010001000011100110100101001111001001000111001101000011011001100100000101001101010010100110111100110001001101110100100110011101011011100100101000000110111111101101100011101010110001100011101010111110111001001011101110110000011000000110101010110000000100101010000011111011010000100100010111000010110010000001000100111101011001011101011001110001000111011111011000010001101000011001101001111110000100100011110010110101000100011010100111011100100111111010010110110001010100011010011110010101100111001001100011001000011001000110100100100010110010011011111111101101010000000101001000011000100000111100110010100010100000100011110011000001101100001000110111011110100001000010101100111110010101011011110011101100111100110111110101100101000100110111000000001101101000011110000010101100110111001001000101100110101110111100111010010000000011110111110011011110111010010010011100110011101110011011001110111000111101110001111110100011001000110010010000000101001110010110001111110111101101100111011100010100111110111111001111010110000000000001111000100101110110100011110000100100001110110010100101000011011111110000001111000001101100010101111101110001000100000001100101011001011010101101010010100111111000110010001100011111011010011011000000110110110001001011000000011110010011110100001000101000001011101001110011110001110101011001010111001101010001101110110010100000100011111100111110110101111110001111001101101010111111010011100000110100100101101110111101110010010010010--------------------- +01010000110101111110110011010110110010101101110111111000001000011001000000110001000010101001110001111111111011101100001101011101001001010000100100101001010010111010110110100100000101000110101100111000011111000100011011000101010111011101100110011100101010010011110000101010110101111110000100000101010010011111001101100010000001001010100111100000001011100001110111111000111010011101100100110000100111110001010110100101111001110011111110011111001000101111001110101011111010100111000111100010111010001100001000110100100111000001000000011010111001010101010100111111111011010111011000000110011010000010000100101010010011000111100100011001010111111001001011011011111111100110101010111000000001111110010011010101000010000001001010000001001111110011111101111000011101001011100101111000110011001010010111111100000100101011101010000000001001010111010000110000110110101111000001010000000010111000110111010110111001000001010000111101100001001100011011001110111110011011010011100001101101001000111011010110000110001000110110101000010101111011111111001100010001011110110000100110010000001111000100111101001110101110111111110111001001101101110110110000011101010110110111101101010000011110011011110110010110001010101110001100011001001100001100100010000111001011101011101100011001111110110010101110001010100001000001000011101101000111100110100010100110101111001000000000111001101101111111110011010111101100110101100100111110100100100101000010011010011000010101001111011000111101100011001010110000101110001110011000011100010111110100110000110111110101000011101111011000101011010110000101000000100001111111010000010111010000001010101101100011111001000110011011100001110010111111011110011111001001111110010001000001110011001000010001011100101110001100011010111111010111010101010011000000101101011100110000101000010010110000100100000011101000110011001000001101011100010110001101001110011111100101110000110111110100001101010001001011000101010111101111010101110001111111111100011000000110001010010101001111100001001001011000011110010111001001110101011000010011100110110011011001001010010110011110011000100011000010000101110000000111101111011110100111001100001001010010010100011110101111111110100100001010111011001100000100011101101101101000111101101110100011101101110100000100001100010011110000011100100110110111001010000010001000111111001111110001001101100111000111010000110110001101000100001000110111111110111110000100000010101101011101000000011000011110011111010001101101110011100000101010011110001000010001111001101000110010010010110110110000100001111100011111111111111001100101010111000010001110001100010001110111101100111110010100110110011011011110011010010001111110101101110001001100000101011110011110010011010011101110010110011100011111000010001110010110011011100000011101101111100101101100001010100001010010101001011111101010100001110110110100110011001111110011111011010011001000101001010110111100010111101110110100001100001011001000000001010011100000110011010110010101111100111110101000010000101110001111111111101110111110011011110100001111001100110000010101010001010000110011100010101111000010000101101000111111011011000111110001110101100000010101001011100011110001110110111001110110000000000000100111011000101001100100001011101010000111000001100001110011000000011000110001110011101111100001010111000110011111011010011101001001001001100101010000001010111110011100110100111000101001100110010010000001010101100001110110101101011000001010111000010000101100011100000100011011100000001011110100010110110000111010100000000111101101000111000111001000110110111101010100101000010110001000111000010001000000000101110001100011000100101110100010100000101111000100010010000101111110000101110100110001000111110111111101101010101101101011110111100101011100010011110000001100100111111100010100000010010011000000011111000000000000110110100011111101100001010110111101001001001110110--------------------- +01101011110101100101111010101001110110011010001001010010010011010011010001101000111000001010111001001001000001001100000010011011110011001110011011011100101100110110101011010000001101011110000101011111111101100100001010111110100011111101011000111111111001011010111000100110011001110000000001111010111010100000011001000000100011010001100010111101000111110001111101011101011010001100110001111011111110101000011000011111101111111001001001011100010100000100110000110101100101010010100000100010111101000001111001100000101111110010000100111111010001110010110101111110011001000111100010001111111110100010011111110111010100001011001001010101011111110000101110100010011101011011000100100000101001100001101011011110111011001001101101101000100111010011000011000100110100100101011100011110110110010010001101111000110101100111010001001101010110110010100110000110110110111010010101011101101110101001100101101101000010111001010110011000100101011000110101100011000101010001000111001100111110011000100100100110111100101010001110010001111100110110000110111010100100111010011010011111000101010011000011100001000001110001011101000011110001011000001000101011001111001100000110001001010010110110010001100110111010010001110000100011110110110101100001000001010011110010000010001001110101100101010111000100111001000111011010100011011101010111001111001101100111000111110110011011011100110011011111110100111010010110011011110010101010011010001010000010010100101111000001110010010110010000101100110101011011001001110011100011111111011101011110000110000000110100000010010111001101000110101100100110101010101101111011010101101100110101101111001101011011010111011110011010000101100100010001001110100100001101101111101000010011111100110001100100011100011010100000111010001011101011110001010101011111010100101111011001000010011101010001100001110100001000100111011110010000011010011000011110110010010000011010111010010001111011000001000000001110101000000010101000101010101110010000101001000001010011100111010110011000111010110110001011100010011111100100011011110100001100100111110010101000101011011011110011110000011010001101011011101100000111000000101110000100110111010000100001000110101110101100011011101100111100011111011110000010110010001100001001101110101010010111010110101110100010100111100001001001001001101111000010001100100101011111011011100010100011000000011011001001001001001111101001100100101000100011001100010011001111011110001100011000000101000000000010011010100110111101010111100111001101111011000101001010100001010101110101000110011000111111110011111100010010100000010100001100010101000010011000000010111010110100011111100010111111101001110010000100101110100011110111011111100110101110011010001111011011110101010000111001000110110000110011011111001100110110010011110111101110001011111101001010010111101001101010000011000011011110111011010110011111011011001100000101001111111001010010000000101101000011101000100100010101001100000100110101110110111100100100101101101101111010010110100100011011100111001111100000010101001111001011100010001011101110111100101010010010000100100100010000001011000000101010001011011010111111100111011111100111101110010011101000011110010111010001100001011001011111100101010000101000110011111111100001100001010010111101001001100001010000101110100001110010000111111101011100110111111011101010000101110010101110110001100111111000010111010101101010101011001110101110110111100010001111011011011110011100101001101111111000010011111000100011011010110011111011100101110101111101000110101111101010101001011011000101111110111001100110000110101010111000000101100011010000111101000010110010001001101011110111000011001000001111101111001101011011101101100111100011010100101100011010010101110001111100111000101101001111101001100111001011000000111101101110111110010110011110001010101111000111111100110000111100101101110010100001001110001010101111010000100000001--------------------- +00110111011011011000010010100101110101001000001000110000010011000011100101001011110001111010011011100011011100110110001101010111010101010110100001100101011000110010001011110010010001001010000100101100011001100100001111011010111100010000001101110011000011101111001100101011010011011101110100001001001000111111111101110100001011100011110110111000100001110111100101100111001010110111001000101001010011100011101011101001110100101101011111000001100000000000100101000001111000001111110011100001111100110100101011001101110011011101110011100111100101111110010010111111101111010011111111110111000100011111000110110111111100101001010111001101110001110111011001111000101110111010111110000001100010111101001000111100111010111001111110111100111110010000100100000001001100001001100110111000111000110000111010110100011010110011011100001101100111001001011011011101110010001001010011011100110001010100000101111010011001001100000111001110001011011001000010111111101101010000010101100000111111100101010100111100111110011110010101101101110111000111011000110001101111100110000101000000000101011101000000000011000100111111000010110110100111001010001011111000100011101100100110100111110001111111101101010100000111011101101110011011011001011001100010010000111110110100111011010101101000010011010100111100010110001000100111001100011010010011101101001110000110000110110100011110110110001011110000111111111000001111101011001101010010011010110011001110100010100001101011011010110011101111010110100000010110001010010010010101110010000001101011000100110110000011001010001001111100000001011110100110001101111110101000001011011011001000000101101010100111010001101111011000100111101100000001111000000001101101001000011010001111000111001101001110011100101110010010000000101110100110000101101001010110111110011101111101110100011110100100000111010010001110010110101101000101100111011010011010101101110110000011001100000110000011110110001100001010000011100001001000010001001100001110111000010001010101001101100111000110011001000011101000100101110000010011110111001101101000110101110100010111101111100110100101110101101100000000011100011011000100000010110000101100101100001111011001011101111111110001001111101111001001110011100110110111100111111001001001001100111100011110110100000101011001101011000010110101000100111110000011100000011101100011100000100101101010010110010000001011101010101000000010111101001111101010100101011000000011001111111010111111011010111000111101011000001000110001010000000001110000100000000111000101001101001100011111001110001000110011001011110111111011000010101110100100000010010000001111001001001110010000000010000011011000001110111000110011111000111011011001110101000001011111101101110010001111011010001110011011011000001010101110011100100100101001011011011110111110100010100100110000000100100100100100011011111001001100001010100000011000111101000100111001100001100101111011101001001101100011001101110011000001100101010011010110001000100111100001101101100110101101001011010110111001100100101111010000110000000011101011010000011111110100001001000100010001100111111111010100101001000000011000010010101000101011100011101101001101010101001111101011101000011011100011110010011000101010101101101001101010100100011000000010101101110101111100011010100001000110010000000010110101001010011110101101111100000100110000100101010000001000101001111100010100111100111111010000001101011000110101101111110001001101110001100001001011100000011100110010010110000011100110110100111100110000001110001011010001011010100100111011011111110101000011110001100001110011100010110110111001100010000001100101000110100110100111111011111011011111000000101100001010011110010100101100000110101111011101011100000000101011100011110100001011111101101100101101110000111011100011010111110111000100101000010101011010001110101101111001111111100100111011111110111010110111011000011000011100100000100011100--------------------- +10101110101001101010000100001100110111110100000011101011000111111101000111000010101100100000001101000100111001000111011000100100100001111111000001110010011100111111000110101010100111110101010101000111100111011101010001100000000110011011000100101110101001101101101001101001110110111000000111101111011001110010101011110011101010100001110000010111000011100010110110111100010111110110100111010001110111000001100111010101101100111100110110111110001110000111000001101000100010011000010110001010001001000100111111000010000101011110001100100111100111101100001001010110100100110111001101101001010001000001000110010111110000101000011110001001110000010101100011101001000011001011101011000101100000100011000000010001001101111101101011011100110000111100101110110100011000001000101100111110100010010110111110001101100111010101001011111010100000011000001010100110001010010101011110110010000011011110111010001010110001101110011111010100010111111100011110111000110010110001010101100001010110110010001100110110100111001101110101011110111101101011101110001010001000010001000111001001111011001000110101111111101001011101110101000100110111101111000011000111111010001000101110011001101100110011110110101110010111011011011101000001011101101000001001000001101111111011010011100110111100111010110101100110100100101011110001110001111001010010001110000000011111100100001111110100011100010011111110001010010000100000111101101011011111000010001100111000000111110000001100001001001011110011110111101010101101011101100001110111110100111011001001101110110001001010100000100000110011011001001011111111010011010010011001101111011111111100100101000110011111010101100000010010010001011001101101011011011001100000001001001111100111100110000011000100001100010010110011111101001111011101110010001001110101111110110111010111010111101101111010110101010111100010011110100111001111010001000000100111010010000101111001011001100100001001010101010010101000011111011100010101011111010110110000110010011010111011011001000011000111010000110011101011000111110011000110011010111111011101110000011001010100111111111001011110100110000011100101001111011001100001101101000011101101111110011010000000010100101001011011110010011111010111100010011111001110111010100011111010101111110100101110111100000001101111001010101111100111011001101011010010111100011100011001100100001110100011000000001001000110001011000101000111000000111001100101011111000111011100000110010010001100111001011100010010111100011101101001110011111100111100011011100100101001100111100110001001010000011111110011010111111101111001111101000001000110000111000111010000101000100110100010001100101101111100101111010001111000101101001101101101101110100011011111001100011010000111001001010101010011100100001100000000011110001010101111010111000001100011010000110101001110100101000010000001001000010011000101001010101101101111000100101101000000010111011111110011001110111111011100100010001010010111000010101000011101011000111010000110000111101111000100101001111010101010101100111001100010111011001111000111001101101110001110101111001001000110000010111101010101111100101000100010011110101111000010011001001010001011000011011000000110101111011001100100111100100101111100110110111110000010111001011111110010011100111111110001011001111110101011000010011101111100110000000100000010110110101100111101000110111001110000100110111011101010110011101011000100101110100100110011001001110111111101011011011000100010101010110001011110100010110000000000000001111100100110011010101001011110000011010010110100110010110011101100101011111001100111101001110110000111100110100100111000011000011000111000010000001110010111111010101001001101000010100001100101111001111110101111100100111000011001101010001000001010001001101111001100000101010001110000000101101010111001011111110000011101110001110100001010100100110111101101010101111011010111011101100001011000101011000101110--------------------- +00111011100101011111000000110100001010100100001010101100100101000001011110100000000011001101110111100101100011001011111111111110110001011111000101100100011100110010011110100001010110111000101100101011111010100111000011000111000110000000111101010101111001001110001111010001000100110000010011000111101101110011010011101011111111101000111000110101100101001111010101111011100010010110101000001000011110101110101110110001100111001100110001101001010110010000110110111111111001110001101000101100110011101000011101111010000100010000110110100110010111111111001001100000011010011101100100010001101111000000011101011011101011010111010011110100101001010111101010000000101111111001011010101001111011001110000000110100001010110011111101100001100011110010010011000100110010000100001001111000111010110001110000110101101100111100011110010000100100100111000001001010001000000110111110010000000101010001110000011011100010101100001101111001110100000011111110010101111100000110101110010100000011001101001010011101001010001110010101110011001001011000101011001110111000001110000010111100001101100111011111100110001100111111101000111110101100011111111010100001111100110101100000101100010010101000101101011000110010011100101100010011101100011100100101110011111111110010000000110110001101001011100001011111011001011001000101000100100011111000000100101000001111100011001101110011101010101111111111000110110000110111110101001111011010100010011011001111010101000100101111111000111000101011010100111101101000011111100110101000111000100111010111110000111001010110000011110100111110111100010000001100001010101011000011101100110000011001111011011010000001101000100101011111111101100101111001011001110101110010001101100100010111000111011001110000101000000100011101111001000100011101011000111010111010010000110000101110101000111011111100011110010110011001110000101001101010101101111000000001101011011000111101101011100010011111110110111110111100011110010100011110011000010100111111010100110101110000011010111011011011101111100101101000111000001100101000110110001110110100010100000010101101010011111000011110100010110011111100000001000001011111011001010001010000000111110000100100010011001100010000101101010100100010101110010110100011110100001101101110100111011111111010011100000010111111011010000000101111110000100111100101011010001100111001000001010100111000111101100000001111111010000001100011101001001000110110110111011010010111010110101010010010011101001001010001110100010001110111000010000101000001101111011101001000011010110101011001010001000001111010001001011110011100111011101000101011111111100010111010100011101011111011001100000110011001010110100110100100111110100010010110110110011011011010110101101110001101110111001111101111000111000111011101011101011111001101101111011110111110100000100101101011001011111100100100001001011011001000101101100111001100001111101101011100100100011011001110110010110100110110010110111111000001101110000010000001110001100010010000000001010001011000001100111000111101101101001000101110101010101011111010111010011011110101011110101011010110001100011011100000110001101001010001011101110111000011010000001011111001000100101000100000111000111111000100000011010101111011011101100000010111010011001010000101110100010001010101100011100010010001011110000100000010011001101000111001101101101011100000011001011101110000111100100100111010100110001100011011110100001100111100111111010110010000110110111100001111101100101011101111110111101100100010110001101101111011111100110101001000000001000010010111110000001111111001111110000111101011111001001100111100011010001001011101100011011000100011101100111110101010101111010000100001000000101010100001001111001001100010001011001001101000111101011111010101110111100110000001011010001001100000001100001011100111101111011000001110110101010100011111100011110010101111110101011100110001000011111101011001100101110110111--------------------- +ls176cwds +0111011001000011000011001010110000011011101100111000111000010110010011100010101101100011111100010101000010011011000000000011111110111110111011101001101101100001110101110010111011110000101110110000110010001100011010111110000010101110001010000100001101000100000110011100110100111000010001110101011010111101010001010111100010001101101001100001110101101101011011100101111010001111011100100011011110101001000111000110110000011110010100101100001011100001110101110001001010000101001010100100000010000010001110101010100010101000011101000001111110110110100110000110101000110001011101000001101101000111111111011001100010010011010010011001010000011011101111010001001111011001011101101111001011101110010000011011001010001111100100011011011000000010101101111000100110101100101100000001100000101101011100111100000110101110100110110110111101101111100110101101010110001110000010010101100011110001110111111110100101100101010001100010101001110101000111001000011111000000101110101011110101010100111011001001101010111010100111110001101011100001010011110101000010011101100011100111011010011111000101110100111001101000110111101000001111110000101000011110111101011011000001010111111010110110110000000010110101100100110011100011101101000100111001100100000111110011001001100111111100000010110000000101100110111101000101100100001101101000001100010100010101011011100001001110101101001111010010011010011001100000110010010000110011000111111111111111010100010010011010001101001000111010111010101010111001001001000010010101010100101001101111011111100011000101101111010110010101111111100011101111110100101000010011101101000110001100111101010110111010001100100010010010110100000011111110110011010001010110111100111000000110100111110101010100001111011101110100101110010111011011110011110001000001111100010001100110001110101011000111001100000101111011101000100111100010100101000110110010010011000110011001001101010101001010101101111011000010010101110101100000000011111001110010011100010001101110001111010010000010000100110001001001011010010011101001111011101101000111011011010100011110110001001000110101101001101010100011000000111011011110010110100000011110110100001010101110110000000011101111001000000110110011101100110111010011011101100111101001000110010010011010000111001100100101110011111111001000110110100011110111011010100110111101110010101010001110011001010011110110000101110110111011110110110010011111100001110110010101000100111110010000011111000010001011110110010100010111010000110100001010010111111001100111010110110100010111100010001111001000110001010010111110001111011001100010001101010100110101001110010101001100101000011001111100000000000000001001000000000010111101010010010001111100110011000110010010111010010000100100000110001011110111001001111010101110100100100101110100101011111010011000110111100001001010001001101011111100110001100010100110000100111101110101000101001001011110110100111111000000010011000110110010100010001110001000111100100000111101001001000000011100110110100100000100000101000100111011010011011110001000111000001000000001010010111001011110000001011101110011001010101101110000111100000011001001100101011101001101110011010000001011101001100111110100010010101000000110011110011111110101001000101000010011100101100111000010010011000000100100010001110111111100011011011111010011110100011111011011001011001101101100101110000001011010110110111001011111001100000110000010000110010111010101101001111100000101001110010010100101001101101011100100110111110110000100110000100100110111001110100010010110110110010---------------------10110110110010001001110010011111000110111101011010011101111110001010110001011100110001000111111011001101001111110000111101100100010100110011101011111100010000011110111000010001111100101001000110100001110000011101100111110110010100001111100010101101100000011100010111000001110101101000011010100001111110101101011111110011110000100011010011110000010110001010111010001100110100110101011001010111001100111110001110011001010001001010101010100111000001110101001000101010010010100000111010000011111011110100001011110010011110110010110001100100100001001111110110000101000110111111000101101111110011011010000101000011111101111101001010100001000011110001101101101110110111011000011111000000111110110111101011100001111011000101010011001101000100011100001100011111010010010000100100110111010111000101101000101001111011001100010001001100001001001101111011100010000100101000101111001000101100110001000101011001101100111001101011110111101011111100010101001011101101101101111001110101110111011000011111000000011011010100101110000100001100011110100010101110001001011110110111101010010011110110101000111111011011111001110111010110111100110011100011110100111101110110110001100000001011100110001100010000011100100011001000010111011011000011110110110011000001011101101100111100001010010101001100010000100110110110111001001111010111110000000101000001010001100110100100100001100011001010001001100000010100010111011100101101010101000101011100001011000101100011111011001001011011000100010011111110101000111110101100001010101011101001110000110111010010010100100010000111110010010011111110101111010011001001011011101010110100010100001100110010011111000100000011100011001001011001101011110101000101101000001010000100011011001010000000111010010011001111110100111100011101101101010000001110010001011001100101011101000111011001000100000011110000011000111010100000010011001011010111000101101100011001111100000010111100101101111001111110010110110010101010010101110001000011001101001110111001111100001000101011100110000011100000110110011000111101110011100001000000110011100101110011011100110000111000100101011100010111110101100001101111010000010001000100110111011001111001011100100110111001001010100110111000001001010111101101111110100111101011011100101101000110000001000100111011101001000100100000110111011100010010111110000000000000010010001011110110011110101011101100011001101110110001101111010000010100110100010001010111011101111111010000111001110110001111101001000011111100111110100001010101000001101100110011000111100001010000111010110100000001110110001101001110111100101100110010011001000100110010100011011110111110001000110000010100011100111010010010000111111110111100100100110111010111001111101100010001110110110011000101111101001100111100001000111101010100000010110111011011100001001101010010101100111101111111111111010000000101011011110001010110010000001101011011100011110001010001110100010110010000011010110110101100100111000110101011001101010110001010010111101100100100101110001101111100010011111000000001001000101011001100101000110010100011011001000001011000000111110000110100111000010001001011000111010111101000011110100110111000011100011000000000001101100101101101011101001111000001101100011111001111001101010011101011011101011010101011100000000010000011100110011111111010111000000001101010100000011001111001001000011111101100101011101011010101000110001101111000010001110100000001001010011010111110010110000110001000010010010011000100000000000011011010000010010110100000010001000000000110001110111100111000011100001101000001010110110000111111101000010000110001100110001110111010101011010010000011101111101111010100010001001100111001111111100000110010100011100001100011110111000010110011110011100111011000001000001101011000110010011011000011010100100000100111100101111110000111111010100011011100011000111000111110110001111100101010110011101100101010110100011000010010101110011000010111001111111101110111101001011111011011010000000100101100001101001010010110001110000110111011001011100111000110100110010111010100010011100001100010001011100011011110110001101100101111011000110001111000110001110010101110011010010001010100011111101001111001101100110111101010100101100110110011001110101001111010010101010000111100100001011001111011010101101011111100001001111111000011101110011101111110011000010100000000011100111010010101001011010110011011001101010010111100110111001100101011100101000011001111110010011011110000011010000001010010110101101011000101111011111011110100100010011011111101001000010001001100011011101010010101011100010100010100101100101011001011001110010101000001111110000010011010001010010101100000011001010101011001001110001000110000101101101110000010010011100101110111100011011001101000101110000101101000000111110101010001010001011011001100111111100010100000010100100000100100010110000111110101000111000111110111001010100000010010001001010101011010111110001010000001000010101111011110101100000010000001101010000001100110110000000111110011010000101001101000010111001010000010110000100000110001101111101101111000000001100100001011000010011111010000110011111011111111001010010101101000100101101001101111011101111011110010110000101011001001111101001110000010110000010001100101111000011100001111111110010000001110100111101011111001010101011111000010001011000001000101110011011010101110111010110100111000101000001010100110111100100001001000011011101111111011111100100110001111100110101100011111001001011011111101001010000001011111001011101101110011100001100100011111000010010010101000011101001000010111101011001100010111111101110011001001110101100010000110101010010111110111100000111100010011011011000010100101001100001101011101111011001111001110111011100100110111111011100001000011110101110100100111100111101110101011111010001011010101000111101101110101011011000000110111000010110110110110110110001001100001101010001010011111101010001110001010110001000000100101110000110010100110110111000101100011101111001010000010010011010010010100010101110100000100000110111000010011011111101011111111101011100100010010001001101110001111110001111110111101010110001001000101000100100000100000000010001010001101100111101001100000100000000100010100000001010011000110111000100100010100100110010111011111001110100011000110000101000001110001101001010011110110110010010000101110001111000000100000110100001000111000001001000101011000000010010111010111001010101101111001010001111110111000110001100001010010011000000100111101100011111001011101011001000101001100101111000000000001111000111100100100001010010100010101110010110100011001101101111111100100010010001000100001001110110001010100000101011001001101110100010001100111100111001100110000111011101110011110010110000110101010000010101011101010110101000101111100011001101110111001111011000001101100101100001111011101010100001010000101011100101010100010001100011001011100100010101001011110111001100001010110000000100011111000110000111110010100101000100100000101000010100001100000100010010000101010001100101110011111001100000111101010000101011010110011110011100101001110100100111100101000101110110011011101010011000110111000100011100011101001001110000100010100110011110110000001011110100100111101100100001000011000010100011110000011010100010110110010000100101101100101101101110100000100110100010000000000011001010001100110011011111010101000111011011000100010110001010100101011101111001010001101001000101011101100111111010110001101111001100001010001000101111010111101111111011110000010100010110001100100111000001100101101001010101010010011011110010111000111111000101101111000011011010000000110110110111011010101000111010101000001110011100110010000100010001110110010010111100110111101100011000010101100010011111000000001001011001001001010101100001010100110110111110001000100111000001010100110101111011101001011011110101101010001001100001001110000101101101111010110011000001010000000101110000100110001100010011010111110101100100001111011101000011100111011111011000000111111111001010010101011101011011011100110000100100011010110010100001010111100111100110010001110010011000001011111000111000000101000010001010101101000011100111001101000000010101111011010010110000101111101001000001101110101 +1011110110001010100100010010111111111100000010111000101001001110010110100110011110110110101100000001010110111110100101011001011110010111100100111110000110010010111110100010111001010011000011011100001000000100110101100001010101001111100101111110101010111011000110100100011000110000101001011000001001010110110000011000000101100000010100011001101110001111100111011110101000101011010101011110011110010000001011000101001001110100110111100011100110101101001101001011110110111010111100111111110111110100111100000100011001101010101010101101101011011000111110000110111101011101111101111010000000000100100100000111011101000101110011001000001101011111010011110000111010111010111010011000111001000101010111001001001110110110011101101011010010111011101010000100011110101000111011111111110000011110100100011101101011111101000001111100101010101101001010000011011001001111000010001101011010100001010100100101010100010001101000001111111010110110111100110011101101100100111001011101000011101111001101101111100010001011110101100000101010110001101000111000000011111010011110001011001111011010111010001010101001011000101100111111101010110110000010111101111101100111100100100010010100111110110111011101001111011101010001000001011011011100101001100100010101011000110101010010010110111111110010100000111111000010100100000011110001100111100101011000010111101001101000101010000011111001000100001000101010001100110110110111011110100000100101001000111000000001010111011000011101110010101101100110010000000011110101000011111101000011101011011111011000111100100110001000101101100010000110001100110011111010100010001001100001111100000110100011101111001100100001101110010101110000100111011110110000111011011100110110101110010000011011010101100001100110001011010110001100001110110010011111001100111000001011111100110101100000001010100001100001001101001111011010110001100011011100100010111000010001011111001010111111110110010011110100100101100001010100010001100011001000000001110000110111001110011100000100111011110111000011111111011010110001011101100101110011110010011111101001101111100110010110101011011011111110011110011001010101100011110111110100101101100001100101101101011010100100001101011001100111111111010000010101011001000001111011011101101110000010110010000000011011011011011111011001010101000011011001000010100100011100110010011111100111000101011000111001100000100001101101001001001011110010001001100101000011010101000110000100111100111001010101111111100001101100110111000010011001000110001011111011111100101101000111001011011101001000100011000110111001010001010100111101011000100101100111011110001110101000010101100100011010110000000100100011000101010110011001111010111010010010101101001101000001110111101111110001011000100010011011010011010010000000011000011110010011010010111100011000111001110000000100111000110100011000110100101111110101111111010111011111000001111011100010110011000011000100011011001000000100010111110101001111000001010001010101111111001101010010101110010111010111011101001011001000011100111011101001101100100100100011101111001010001101111011010111110000110100110001101011110110111011100101111100111010000100001111001100010011111101101000101011011010111011010010101101011001111110011000011110000110101110100000000111101110100001100101000011000111001100111011010101000100001010100100100010001101000001101010000111001001001011000100100011001101010100010100001100101100001100110001001110111110001111001100011101011001100000000111010111001001100000001110011000101101111011001100000001001100101000111001111---------------------00001011010010101100001010111101110000101011000001010011001001000000011011100001011100111001111101111111010001100111000111011001000110010111101110010010011000101011001011000110010001000011101101110100010100100000011110110001000001001010100001101111100001000101001010111000001001111001001011001011011110111010101000011011000110100100001011111000001110000101111001010011001101000000000001111011110000101011101001101010011110011001000100000111111101101000001110110000101101010110111110101110000000100001110100111110101010000001101001100100111011110100101010101101000111100011110010011111101001000000110001010101011100101101001011001100000100010111010100101010111111000110110001101110110010111111111100010001111101100010100011110100001010101110011100111101011100001010111010001001110101110000100001111001100110011101101000101000011011010111000111000011110110010111011111010101111101011000100011001110010110000100010010110011101100100101110011010010001101000111101000011010010010101011010001010101001100010000101100110001011110011011011010001111110001111010011000100010100111000001000101011100011100101111001110110011101000011110111011111001111001011101000101011101010100011111101001010000110110010111111011110001001111010001001111111010100001010111111011100011010000101000011011110111010000101110111000101001100111011100011011111011010101010100101011000001111110111001110101000110000011001001011100101100011111001011011101001101000110000011111100110000111011111101001100010111101010101110111111010001100110011111000100011011001101101100000101110011010001011010111011111001110010111101100001110110001000011100100000011001011101100110001100100101101001011011011001010101000101110111001110110000000011100111001001010000000010100101001101100100000001111011001101110100100111100010100101100101011011001101011001001111000100111000000000011011000000100000110011110010101010110001001010100010001011101110110001101111010101101110011100101010110011111010010001010001000000111101100111010010001111101111010000011111101101010001011000110111100111000101111111111111111011001100001110001100000010100101111111110000110111011001010110101011110111110110110111101010000100100001110100011001001110100000101101110101101010110010000010101001010000101110110011011101011001110001110100010110000001001101110110111011101100000010110110001101111001010110010000000000001011000110100110110110101111011101000010110011110110001101110111010111001010111110000001101010001001011101101110111110000101001000010100100010011010010100000000000110100111101101111001001001001010010111000110100101001011101001011100100111011010010100000101000100011011111001110000101100000011000100011011011011011010010100111111001111110101000111000100010100001000010001100100010000010110000001111110110010010110001000001010111100000100100111100011111101011011001110011001111011100011111001001001001100001001101010010011001111111110011011000111011110101101100110101011001111110110110000000001001010011001011010101001000101111101111110110110111011111011110000111101011001110101101110101101101000000010011110100111100000110111011010110100110011001110000101011001111110010100001101100101100000000011101111110110111101000111111000101100001001001001000010111011001101110011001100100100111101010011111101000000111110100101001110011000110100100101001100000011100100011000010011011110100111110010011001110111000000000011010111101010111111110110011011101011010111110011001100110011010100100111001100000110100100011001011100100101001010101100011000001101110101101010000001101101100011100111111101100110111010010110010011111000011100001011000111111010110000110000011000100001001100000001001111010001000011010001011110001101110011011101010101011000111001110011010111101100000100110000000110101100000100010110011110111100111110011101000111111111111010110110000110011001011100110110100001010000101100101011001011111001100001011011111100010111011001110011010101011100110100100101111100001011100010010111100001000100101111000000100010100011111110100000001111000001101000101000001010111101100101001111010000111110101001111111111110011101101001011101001001110100111010111001010000100011111011101000000000000111011110101101001000010101011000011111011010111100011111010011000110101000110000001001111110001101111011001111101100111010001000001110111000000111101111100100000011100111011010111010100000000011000111101111100101001011110010000100001001010000010001011000000111000111000001010011000100010000100100100010100000011001101000011010010111110111000111110110011111110101110000010110111010000000010110010110001001001101110001100111111011111100001010000101111011010100101100101110110000000011011001101110101001010100010110000101011100101011100101100010000010100011000110010111011111111111111001011000011110100111101100000010001110110011000000010001011010110010010000000011000110110111110111000000011101010100000010111011001101111010110000011101000010001010100111100000101111101100011111101001101001101010001100100110010001000000101111011001010111100101110110110111001000001001000110010001001000010100011001100110000010110001110111111101001110011101001000001100001000000100010110110101010000100100100101101111101001000110010001011110101010011110001010110010101110000111110101101000011101000100110010010011110111010001110100010010101011000000001001000000010101011100000101010000110100100010100010110010111011100011110101101011110101010100001000111111101101101111011111111110100100110111011110101011010100001001110011101100101111110010010110101001110110000000001110011011101011001011101011011010101100001110100110010111000010101111100010010000110111001110011110110101101000101111001000001110011111101011100001101001111000010010111010011011001111011111100111100000100010111110011010001001101100000110110000111001011110110100000111001011001000011111110011100101111000111011011101001110010000100110101101001000111100110100000000110101000110001001111111111010011111110100111111001101011110110100111110000001010011000011110011110101100101101001000110110011000111010111000111101001010111110111101100000000111110111000000110011001110000000111100110010000110110011101111001010011011000010001000000110000010011010000010010111001101111110001011011110111110111101000111001110101010011100000100001001100011001000101001011010101110101101111111001110101111100011010100011101111011011101000010000100101001111110100110111110010001110100100001011111001101100011101101011001111110101111111010011100110010101111010000000101010100100001100111010111111111101100010101101101110110000010000101111000010100000011101010011101101000111001101111111010111101000100101011101011010001010100111111010000011110010101010111100100101000100010101101100010100100010100011111001000000111110100001000001001111001000000011001011101101101000010011000100111111110010001000000110011000100010101111101000010100011000100010010011110001001010011000111011110010110111010101100011101001001000111011001011111011010000111100010011101101010101010011100011011010010000010000010110011000100101011101100101010100111100111110001010001101111111110100001111110000000001100010100101101100101011101111110110110110111111011010100000011111011111001101011000110001001010101100100110001111101100001000111001110010111010011111011011101011010000100011111101110110001110000110011111101100100100010100100111110010110100011000101011101110011011100011111000111111100001010010011001111100100011100010001001001001110100100001110111011010101100110011100000110111110010100001101110001101010000101111010000010101010110001011001101000110010110001001110011111110001011110110010111000100110000110011111000100110111001010100110001101100010010010101101100110100000101101001110001111001001101001100100011001110110010010101111000001010011010011111101110011000000000110100000110101001101100000000011101101001100100101100100111001010011100100011001111010001101110011000001010010010000101100011100010110101000101001101001001000100000100110100111110111000100000000010101101011111101000010101110011111110100011111011011001011001010000011111101110110000011100011011101110001011101100011011011100110101010101101001101001000111000010100111111111011011001111101001111100 +1101111011011110100011000010011000100011111001110110010011100110100010110110110010100000010110010001100000100101110010001101001111101111001010010010001111000000110000010111111010111011111000001101001011111001000111001011100101000101000100110011110001101000111001011000001111100010010110111000101100101110101100011001111001100110111111000000010110010100001100000001011101110010011000110100110000011011001111000110010010101101011000011101000111001001010111001100010011001000101111000000110010100101011010100010111110100100100110111111110101001110001011111101100011100100110110011111011101101011111011010011000001110010000100000000110010000011001001010100000111011010010010010000000101000100010101111001000111011100011000001000100110001011011011000100010001010011101100000111000011101011001001101111011111010010011110001011100000110010111001011010011111111011001101010100101100011101111010100001111100101001111001111101100000000111000100001100001010101000110011001110110011000001000010011010001111111110101100000110111010001010100010000011101001101001101010110100000100111100101111001110110010100110100011100001100011011001000111011001111011011100011111100001101110100111010001000001111011000011101001001101000001011101100111001110100101110010101110100000010110001011101100100100011111110110000111000011101101000010010111100011011110111110100111101000010011000011010010100010111101110111110010011011100110011111101001100011110111100000111001110100100101100001010000100000100001010110110111001000000000110010110100011010010011001000100110111010100011110010111111110001101011010011011110101000001010011100111011011101011100101101100000011011110011011110010100111010110111010110011101000000011010101011000100001000101011011011001001110000010100100111011110000111001000000100011011010100110101011111011001001000100010011001011101110111000001110011010000100010001011010110010100010100010010010000011101010001100101001101010001000111110110110000101000000100010110011001101011110010111001001000100101100010100010100110010110101111010010100100001100011101001110010001111111010001101011011010000111000011001011100000011110001001111010010111111011011001101011100100100111100100110011011110111001101011010111010011000010000010101111011010110001101101011001011001100010101000011001000100100101011100011100100000110111110101101100101000110101001010100111111110110101011010101101101111010001111010001101010011001001101111111100100101000110111101111000000000000000110001111010110101100000111111101001101100000101000000011111111100111100011101001001010010101011000100001001111111010110111011110000110001001011011101001010100110000011011101110101101101101101011011011011101100110110000001010010100101000110101001111101001000101100001010010110010000011010001100000100000100111011110010001011100100111100001101010101000010010101000111010001101101100111110010010011000011010000100000011110001110111000111100000101110110100100010101011000101100100110010100000000101010011100111101100100100000111011001111010000011110111110111011001011001001110010110010000101000111100001110111000110110101010000011111001100001111001101111100010000000101000000001111111110100001110111101111011101001110001101001010100011011110100110110111101010001010000100000100011101111110001010001101101001010001100011111101000011111111001101011111110100010000001010010001010101110011001001101111011001110101001100101010101100111001101011000001101010011001111100010110001000011111100000011100010000001111000000111111010010000101100011111110100101010101001---------------------00001010010001111010111010010101100001010010000111000000100011101110011110001000000111000101110101110011001000110011111110100010001101110000111000001110111011110100100100001101111101000101011110000100101011110011000101110100101100001100100010111100100101110110110010111010111011000000000000111100111100001011000100011010011111111001001000000011001011101110101111111101010110000101100111101011110100011101000000100100000100001000110011100011100101101110110011111010110100101110101000101101101000011101011011001001110100110100100011011110111001011011000111000100001110110011000011100100101111001000100010101010010110111100101011001101111000000010000011100000101110001011101001110011011110011011100101100001100001000011011101101100001000100110101000000000100111110011000111011000101001011001101100110001100001110110111100001011100000000000000100000110000111101010100010110000101110101000110101011011000101010010111001011110000101110111111101011101101111001000101011001011101011011110010001011001010101100111110010010001011111001111001101110100100111000011101000101101101010010101000001101001000111001100100101001011000011101101000001000010101001011111110000110101100101111101010011000010001001110110100110111111110011000100100001001000101001110100000110001100110100011000101001101000001100111000000100111001010100011000011011010010110001100001100001010001000010010101101011111010011101000010110101000111101110111101000010100010000101001100010110100010001101000101001101111011010110000011010010110100111110110111100111001110001101011101011111001110111100000111000101010111111111110000001111110110001101011010000111111011100111001111110111111011001101001111001001000110101111100111000110010101010001011011110101111011010101010011101101101000001011101110000001010101100111110001111001011101110001101011010100100000111000001000111111001100100000011001001100010101010010000011011010101011001011011010000011110001111110111110100000011110111010101010111101011101010110110000111001110001011010001001100000000100001011111100101011010001001001111110110101110111111000111111100100101111100100001000011100010100010000110101101101000000001100100110100111000001100110011011001110000011011011010101001111001100100001100001001011000101011001011110001100110011000100011001011110110001001111110011100001101111110110001010101111100111111101111001000110110110110011000111100001110010110001001001111111110101101001000010001111110101000000110111111110011100001100110011011101111011000101111100010000101110110010100000110010001101011010011110000111101111001010000010011101000101111000011110011101011110000000010001110100011110100001010001100011111001101000001011000110000110011010110010111010101100110111010111111010001000001101010101001100111001110011010001100101101101001111001101000000000111111011010011010000111001101111110010110011010111111000111100000001010011011010010100111010001000100110110111011001100101001100011100100110111100001110010011100100101101101000000000001001100001110011100011011010111111011000100011011111100100010000001110001101110011100101100000011100000001110111000001101000110010111101011100111011000010000001011000011001010011001001111101111000111111100110101000010011010110111111001110010011110110101111001100100011001100110001101011000000001000111111011001010010001110001000011100001111111110010110100111110011111100011000010001110011111111001110111010111000010011000110100000101001110101111100110111110000000110010101010011111111001110010100100110010011101001010000010101010100101010111001001001100101110011011010100100011100110010011110000101011110011110010010001000011100001111000110111010100011110010110110110011110100000000011011101010011001001111011110000111111011010011100010000010001110010010111010100100111001111010000011011110110011101000010100100100110110001001111000111111011000001110100111001101100010000010111111010101101010101000000010011101001110010100111101000100010101001010111001100010000110001111001010011010100110001110111010011110100011111101100010110000010111100110100100011111001111111110111100110110101110110110000111100110000100100100001010101010010000101010110101011010000011101101101110000100100011011001010000001110010011010011110101111110110111011010111001011001111100110011011101101010000011111001101000110110011010111101001000010000000000011110011010001011111000111000000101101011010011110010100011110111010100011101100111000010001001111000011001010111011100100101001100001111000010001000011010111111100010111101010001000010001110100101000000111001111011110000110011110101010101011000011000100010000011101001100000100101001000011101010001100011001000001100110101110010111001001100100101010100101001101101010011111001100111010001101110100000111100101111100100111111111010011010011110001100001110010100110010110000100101001011111111100000010110011001010000100111101000000100111000011000000110011011111110000000001100100011110000101011001110100010001011011011010111101000000010110011000100000001011011000110011111000111000101100101110101111100001011111000000111101110000110110110100101101011100110111000110000100101111111111101011110011001110110011100001101110111001000000001010111011000111100101100000010100101010111010100011111011111000001111100000010111110001100001010101010111111011110100000010010011001001001001010110111011100011001110100001101001000100010110011101100010010111111000011001100100111110111000010001001001010110100001100100001111000101110000010110111010010111001101000001100110010011010001111111110000000100100101011011101011000111110001110110110001010011011100010110110110110111011101111000100000010110011110010110110000010101000011111000011000110100001001011100010000110000101001101011110001110001100111100001110111000010101001010101010011100110100110101100110011110010100101010011111000111001110101111101100110100110101011101011101000000000111001110000100100001010111100010101011011000011000001110010100110001101100011001111101010100111101110100111000100000100011101000001011110000100001001111100010000001010000110110000101110100100111101110000110100100110010001011110111111110100010110101101111111100011001110110110000001010011000000001001000010100000010000110100001100010110010110000101011110111111001010010000110110101000001100001001111101111001100011000011000111001001011110110010010011011010000000100001101111101011000001110100101110110101101101010010100010000111101000100110010010001000100000001101010100101000101010010001011111001110110111101101000011111000010100110101101011000010001110001110000011110111011101110101100010100101100010110011010110100101011101100110010111011010101011101110111000110001101100000110001100000000010001110010101111010111100100100110001001100011001000000011001100111100000010000100001111101101011010011010010110010000110011010101111000000010111001010000011010001111010000101101011111011001111111010100010011101100101010110110010111111011110111111000110110001011000101111111001011110000100110010110010101110000001101010000010110101111011111110101010001010111011110111101001101010110010111101111100001111101011101100001001101101111001000000001100111101100110111011100011000111111100010011011100001110001011011111100011001011101000010110010001001100110110010010011011000111110000000101111001101001110010111000100110000001010001011001000100101111100110001011001001110011100010111111001001101111100001010111100100010100000110100110011100111101011100111101110010001011001111111011000000100111001101000111111111101101110101011111000111100100010110001111110010001010000100110010010101000111111001001010101101010110011001110000011010111010011100000110010110111000001000000110000111011011011011000110110100110111100100000100001011100101000110011111101101000101001100110110101000101000000101000000110001100101000101111111011001001000101011011101001111110011011000111001100101001110110110001100101110111101100100001011011000110111001010000100111101011111100001111010010101011110011010111001011110001111001111001100011001111111000111010011000001011001110111000101100011100100010100101001001111010110110001100110111111011100111011101001001010001000000111000101010011010111101111000111010101010011010100110010001001001001 +0111101000000111111100001010110000111111111011111010001010100001000010100011111010110011110001101110111011000011011000110110110111111100111010001001010101010000000010010100001101111101110010001100101100000000011000001000100110001100001000101001111011001101111010011100001001000101001101100000010110001111101100000100101010011010111101000101111011001110101001011100000000101111110111100000000110111001001111011110000111111100101101100001010111011011101101100011111111010010010101001000111100110110111011100111110010101000101110111101111001111001010101110000011000010110011000100100011110000010101011111011010010101010101111011000010101100011000011101100010011111101011110010001000100010110111001000100010001101010011110000100011111001101111110010010111101100011011111000110001001000010010110100000011001011100010100011011101100110101001100011011100101011111110010001001011110100001001000111011010000011100011101100100111000011100111011001000010001110000110001010110101001110110011000100010010100110001110001110111000010010000110100011001010110011100100011111110000001010111011111011010010100111111100100100111011000010111010010011111110111100001100101001111110111011011110100011001000000111110010110011100101110111011111001000110101011101111101001000000100100001010011100100101110001010101101101101111010011100110100110101001111000011111100100000001101011111111110100010010000100010111010010110001101111111010110001010011110010100110001011111011001011111011001000101101000000101011100010111110100101000101100100011100111111111000110111000110101101110101100010011010010011111111111111111111101101000110011100101000101111110101100011000111000011001101101111101101011001101010100111010100101011011100100111101100111000111000010010111001001111101110000000111111100011000000000100100010110010001000111010101111111110101110110111101000010000100011100101001110000111110101001010100011000001010100001001000110110110101101110011011111010110101010111011111000010100010111100010100101110011101010101111111001001111000001100111010101000001000010011011010011011010001100001101100000101110010001101110111010000010011001111100110001010111101111011000001000010000111111101111001001101110001110101000111010010110010101100100010000000110101111100100110011110001000000100001000011110111001100010110100101000110010110011101011001100010011100101101000011111110011110011010011011001101001110000010000110100110000101111111111110001111001010000000001101010111100011000101111010110000000001011000010000001001010110110011011110011011010011111110011001011100001001011111011101101010000111111100010001010010100100101110110010111001100010100010100101001101100100000101101010000101101111010101111100001110101100010110101101100100111001100101111100100011000000100001001000111010110100011101111010101001000100000101111101100011110110101101110010111110101110100010101101111100110100001011111111111111110001101111000100101111001111110101000100101101001010000100100101100001101100000101011001011110101001110000100100000101100110111100001110111101101100110111100001100000010011000110101101111110011001010001111100000111000001101111101111011100101110110100011111001010101001111111010010010100000100001010101011101001101100101110010010001100011111010011101001000110100100110111011011101100110110101110000010010001111001101010000101100010000101010111001101110000010101001001110100101101000000100101110001010011111100110001110000101000010110101000011101101011001100010110110100000001010001001101001011100110100111100011111011001101001100001---------------------01011000100110000001100000101110100100111001000000010000010000010110001000110110110000010110011101110101001101111001010010000100111000110001101110111100110101100011000101000001011111101111110010101010111011000100000010010110001010011101110000010011001001011001101011100101110010110111100011000110000000110101010111110100100001000100111010000110001111100110111010011101001001110010111011010010111111101001000000010110111101111010001010101011100011011010010000000111001000011010000110110001110100011111101000110000000010101010000100110000001100100000010010001101111011101001011100111111010101000000010010010011111001110010101000010010011000111100001101101101011000000011010000100101100110010110100100001001100011110110000001001110010001001101000001010101001011110001011001011101000111010011010101000010011011001100010111010100000110111101011101100100010100101010110010001101101011111100100000011101111000011011011000101001001001010011111010011001011100101111011000010000111010111000101111011011011011001101000110100101111001100110100010110011001011000111110110010001101110101101111010111111101010000001101111000001111100010011100101000110001011100011110010011011000110010111111110110011110001000001111011111010011101011011001000110100101110110101100011101101111111100010101000011000010011001110110101101000111111100001010000010100010111001011001000110010011101100010001011010100111110000101111101001010100001110111110101111001111001110011101110001101001101001111111100010101010000111100010100001101100011111000011001101000010001111010011110010001101110111001011100000111011111111000000001111101101010011101111100000101000000001011001010011011010010010001010111100001110111010000001000111111001101101000111110000100001111011000111111000011110101000011000110001101111100100000001111111110001000011001110110000010101110110000010111000111100010000011111101101111000011100000101010011111101001100011001011000110101100001010101100000100100111111101111010010111101000100010110100001100011111010110111011100011000011111110011111010010010100000000101000010110110100101111010001110100110001011100010100000011000000000011001110000001000011111101111001010011001111100001101001101110101000000000011000001010011101101100000000010100101010100101000011110010011000000010110101110011100100000001101000001010110011100101110001000111110111101001000001110101110101011010010101100101101000101111000010010010101110010100110000111100110110111101000111111010011000001101110110001101001110010101101011111000000010001100011000010011101101011011000111110100101100000011001101000110110000011110111001010100110100110110011011001100101000001010111101000000001011001100001000010111101001000110000000000010110101100001011001100110001101000001101100011011001000000101100001001100101010001110010010010100101010001001010100100101000111001100110100101001000110010000000010100101010100011001000101001001001011100000010011010110101010000000110001110001110111000101000100000111110110010100001110011000101001101101011101010100111101101111110001100000011101100010011001011000011100001111101010100110111101100010111011111101101010111011110111100110001101100111011100000010000000110110001110010000111110100000111111001001011011100101011010100001010010111101001000000111000010100000011000010011000011100110011101111101010011111010000011110001101111110011011110100110001010111110111001001011000000111000111000110110101100011011011111110110011010011110111010011101010100011011101000001100001001101010001010011000110001011001101100110111011001010100111010011100110000000001010101001111101010110001001010111100100110011100000000111000010101100000000001010110001010101101101110100000001111000011000100001001001010011111010111010111000010100111110011010111111110001001101101101101011110011101101101001010110101010010101011001101010011110011001001110101101000001001000101111111011001000101011000100111110100111101010010111001111011001110111111110100110101010011000010101000110111010010010111010000011011100100111001101001100101011011000111101111101001101101101010110101101010000110001110011111111011000000110111110000011001111000100000000010010100110000101000000110110001001110101011101010100001011011101101010110111110110010110011100101110101001110000001001000011001000010000101111100110010101101101011011110001011101100011101100011001111000011100100111001100101001101110011100001010000010101010101010011010011101011100001111101001111000001011110111111110110000011000000000110101010111101001100111100100111000000011010101001110111000000100110000011001000001100000011010111100111010100100000000111111111001111011001001110111101100111010010100110011111001010110010010101011001111111110110001101001110010000011100111011011111110011001110111110110000010011000101000100101101110000000001001000111000111100110110100011110000001011001011000100000001110001010001001101000011111110001000001011111111100011101100110001001100001100110000101111010101001100000011001011011111100010011110000100011110001111111100110111110100000000001001010001110011101100111111011111010110110001011011011100010010000010101111001100100100111101111111001111011010000011100111111000010111100110000111001111000101001111110111001101100010110111011011110111010100010100101011111000111000110111111101111001111000010110111000100100111110101110111000110110101111101111011110000001110011001010001100001010111011010000100010100010110001101111011101111110001111010101101010001000001000101110111010111111111100111001110011100110110111010010100011000000001110010110000001111100100111011101111110100110110110011001100101101110011100110110001111000100110101111000111110011111001101001101101110100011110000001101100010101010000001000001111111010110010010111011111100100100111110110110111101010111000011110101010110011010110100110110010010110100101001011110010111011010001010010011110001001100011111100000111001000110010101111101001100100111101000111000010100101100101001100111110101001001101001110100110111001000000100011001011111001011000101000110100110100111010110011110000010010111010110010101101011101100111100110010110111001000000011000001010100101101001101100101000110010010100101110011011101000010110101010010011110110101101010010011000000111011010101111000011001100110101011000111000101110001100010010110011011100111100111100100001100011101101000000011110111111010001101111011100110101111000010110100100110111011111001111000110011001101010011100100110100011111001010110100010111000011010010100100001101110000100001001110001010011011100111001111110110110010110010100001010011111010000110011101110000000100010011000000000111000011010001000001010011010100101100011001001000001101011111111010000010000010111111001101001100011111110100011010000000110011111001100011010101100001010010001001110111001001011110101011010101001101100101001111110000110011000111110011000000011011010001101000101001101010010011011100001011010110011010110100010000011100011111011101000001011010011101001010011111001110010110011100010100110110011111001000000100010010010000111110100010011001001001000011010010001101101011100100111111110001110110000100110101111111000111100011000111000000101011111110111001101100000111111011001100110110101010110001001101000110011010001010010011101110011000101000010001101111001110010100100010001100000100010111100100101110100010101010101110101111010110100001110111011000111110000111101100011011001001111000100011100000000001100001110011111100010100001001000110101100001010000000011111110111011100011110100011100001101101010100111101110000111101011111011011010100110111010110010101101010000111111001010110110001101011111010000111010011110100011111110000001011100110111011000000110001001011101010111111001010001000000110001111110000000111011110110011110100010101011111010101011101111001101101111000111000001111010110011100101101111101100011001001010101011101011000000010100011110100110010000110001101110011110010111000010011100011000111001001000011011101100101010001001000010110000001010001001010110100000010011101110110010000011001001100001011000011011100111011010110011111100000101110011010100110001100111000001001100111111001001111100100111110111110110101010011010101011001010000111110 +1101010011110011001110001100110100000000000001101010100101000111010001011100101000111111111100011000011000110000100001010110001111000000011101011110100010011110100111100010111000100000011001011100100010011111000101000100000001100010111010111110011000001101000000110000010101000000111110010000111010011011110111000100000001000101001110001110101110101001101111010101100011110111100110001000000100011100110111111010010101000001011110010001010000111001100100000100111100110101110100000010010111011101100001101110011011000110011101111010110010011111100000011001101100011011001111110000011100010010100010100010010100110111101000010111100111101000000100111100001111001111110010110101110100001110000011001100011011101101100101001111010010110110000111101100001010000111011010101010010110100011000110000110000100001001110011101000101011010100011100000100111011110011111001110010111111010010111111001001000110100101111001001011000000011110011111101100111100111110011110111110111011010111101111111000000101010011101001011100001110101000010110011000010101110100110001101110101100101101011010001110110010011010101001001101001110110001101000101111100001011100010101001111011110110001101011011110010100110101010011100100100011100010110000011101101000110011100011010001010101111010101111100010001111101100010010111101100000001100011110010101010111101101011111011101100100011100100111100110100000100100101100011100100001000101010001111010100010000100101101101110001000100011111000101111001011011001011000001110110101010001100110110101110101110110011010000101010011101100011010111110101010000110000111110011001011001111000111110000000101011001000101010100111110010101001110100110001101001101000011010010000011000101001011010101110111000101000110111100111001110111101000011011011001010100011010000010110100010100001010000011011011111100010011100101100000001110001111110010000010011110011011101111100001111110100101110000011101110101101011001100110101001100100111001011001000110000111010010111111001111100001000100001110001111001011011000010101100101011101111000011010001000011100110100101001111001001000111001101000011011001100100000101001101010010100110111100110001001101110100100110011101011011100100101000000110111111101101100011101010110001100011101010111110111001001011101110110000011000000110101010110000000100101010000011111011010000100100010111000010110010000001000100111101011001011101011001110001000111011111011000010001101000011001101001111110000100100011110010110101000100011010100111011100100111111010010110110001010100011010011110010101100111001001100011001000011001000110100100100010110010011011111111101101010000000101001000011000100000111100110010100010100000100011110011000001101100001000110111011110100001000010101100111110010101011011110011101100111100110111110101100101000100110111000000001101101000011110000010101100110111001001000101100110101110111100111010010000000011110111110011011110111010010010011100110011101110011011001110111000111101110001111110100011001000110010010000000101001110010110001111110111101101100111011100010100111110111111001111010110000000000001111000100101110110100011110000100100001110110010100101000011011111110000001111000001101100010101111101110001000100000001100101011001011010101101010010100111111000110010001100011111011010011011000000110110110001001011000000011110010011110100001000101000001011101001110011110001110101011001010111001101010001101110110010100000100011111100111110110101111110001111001101101010111111010011100000110100100101101110111101110010010010010---------------------10100110010010000010110001011101001010010010100100000010011110001101001101011000100001100111010100000000110010110011110011000011100010001000100000010000011101110111000100001000010010110100000000100000000111110111111011101110000111111000011001001100111101001011011101100011011111111010010101101111010010110011110111100100011011110110110100100111001000010101010101111101011101011000001001101111000110011111101111010001000100101111100101100001101101111100101010111111010100010110001111110110111111000001110110110011100010000110001101101101100000100111000011001101111101010001010100100000010110101100100111011011100010001101001001101100110110010011001110110010100000111101100110011111110100111000000010111110000011111111100101110010000110011011001001101110110011000001110001011000111101001001011000111101110100110110110100111110011101100100010101101001111000001011001110100100110000011100010010100011111111111110000001110010000000010101110111100011011100010111001001100011111110000110100000011111001101100110110111011111000000011010111101000011011111111010101010010100110000001001111101011001100100000001001001100111100011111101000110010111101111000011111001101101000101000110010100001110010101000110100101100011101101110000010111100110100101101001111011001110011111110011100111010110111011010011010110011110101010101100110100100001001101111100011100011110011010101000001011000010000110001111101001001111001101010111011001011000100111001000111101111101000111010001000010100111111010100100110001010011110111110001101101111100011110110101100010100101111100111101011011010110100100010110111010000110001110110100110111011001011000110001011110110011110101001101000010001111010110000100000010011111110111000001100010111000100100101000000101001011100001001010011111001110010000111101011001101010101000001011100101001011011011101010001101000001111011111100110101010101010001100011010100110100110111111001100100011010100100110111011101110001001001011100101111010000011010100010111101101001100011001011101110111111110111110111111100000111010101010101110100110011001100110001000010000010100110110101000101110101100000001110111010101101010011001101010111010111110011110100110001011011110101111000101011010000011110111100100100100000111010000110001110110100101010111111010101100101010000110111000000111100111111001110001001101001000111110011101001101000000010101010010011010101001011010011110011001101111001011001011100001000101011111010101011011000110110100110000001001111001100100000101001111000011100110110100010010011111100011011110001101110000101011011011110011010111101100110000010101000000101100111000100011010111001010000110011101100001001011101100111000001110101110000000110101100011011111111101011001101011001001111100011110101111100000000100001010111110001100000111110010111010001111010110111100001001001010110110111000010101000110010001110111001010011111111010001010001001010101000001000110101101001010101101001100100001110000000000111100111101100111101010100100111101011010110011011111100001111100101010010100100010100010011011111110110101110110001111101001001101110110010000101010010110111101000010101001101000110001011110100101100111010100100110001101111000100111010010010001000001010101100111001101110000011011111001011100000101001001001001011000001111001001010110100001001101001101100011001010111110110111100011000111100111100000100111100010000000101001101010100001101101001010111010001110010100101100011001110010111101111010000000111111001100100010011001000111010000110100000110100000010011000101101001001001010111000101100101010110011100101110000000011110011011010000110010000111000011000011011111011110011000111000011101100100110011011001010110001101111010010010001011110011101100100101101010110100101001011001101100000100011110111010101110111110011010011011000110101010101101010001111011101110000010010001000000110111011000100010011110100010111100110001000011010110110011101001110000011010000110111010001010011101110110110101000000000101100000001111111111111010011110001111100101111101011001100001101100000001010000111011110100011101000101001110100100101111111000001111100100101110001101010111111010010101011110111111001101001110100110101110000111011110000101101101001100011101100001110001111100111000110001011100010101011001101000111011000100111011000001110010010001000100001100001101001101010010101101000011111101111111011011101011100001010011010011001000011000101011111010110111110010110110101110101110011101110010001010111100001111100100010100011100100111000000111111001000000011111101000110000011110111010111101101011101110001010000011110001110111011011101101010100101001111110100011100011011110110000101111101110111010110010111011101111110000010001100101110101000001000111010110010110000111001110111011111011010101111001110010111000000110000011111011000100101010110110110000011101100100000001111001010000111001101000100110110011110000101100101010110001100100001100111101000001101111001111001000101010111001110111001000111000010110110011101100010111100000011001111010101001110010111000110011111101101011001111100010011001110111110100111011010101111000001001011011000000101110010101011101101110001010110101010001100000001001000010011011000110011110011101110000110001101101011111000011011100001000101000110000011101110000100101011010001100100010011011011011110101111111011010010100101011101010010100000001010010110000000010111111110101011010011011001111010100101011011010010011100010011001001110000010011101100000010010001111100000010101010101010011111011110000000011010110000000010000101000010100000001010110110110000001000110000000111111010010010011111101011010111110001100111111100101001010111111110010000110000000010101001101111111101110011110101010101011100001000011111011010001011010111000110101000110001001011011011010000000100011010110000000110110000010110111111000100101110110110011110101011000011100100010011011100101101001000010100101000100110111011010011011101111100100001100110101001100100100111011110001111000001101111101110000010101011110000001100000000110011010001011001110100010000010101001110000011101111001000000010100011001110111010011011011001011100001110010111000010100101001001000100110111100000110101101010010001101101011010010110000011100100000010001010101000100011111000101101011010011111111100111000101100001110011011010111001110100101111000011110100010101010110110001010110000100010011100110110110010111010101110101101010110000000101100010101010001001001011011001101010101001010011111111111100011100100101100000100001110110001000010010011000010111110010001101011011010011110010001011110101100101011111101101001110001110101101101100000101110101100101110010111111001101000010000111000001110110110001001100000010010011101001010110100111101001011110001011000000000000011100110101000100101100010000100111010100010000100110001000010010000000010111000111010111000000100000100000100001101011010011001111011010110001111000110111001001010001000110101101100011100101000001100111110011101011011101111010000010010011000101111001011111000111110000011010110001110010100101000011010101010111011100011111110100100000110111000000001111001011100000010111010110001001100101100101100100000001000001010010100010100010111001111111001000111110101110110111010010101100110010010001111010111101011011110001011111101101011001101100011011000001110111000100010001000010100011001101101011110101000011001101100111110011110100111111010110011010001001011101101111110000100010011011001111001000100111110110010000011011100110000001101100100011100010000110010000011111100010110110010001011010111000000111100010010100001101101001111111001111011100010111101110101110100110000111011111010100111100000010011111000111000001110100001000000000000010110011000110101010110101101101101000101111110011001000111010101000010111111101010110101011011101100100101101110000111111001110011111011011010000001011001000111111011011000101011101101001100101110010110101110110010010110101101010001010100101101100111100001000011010000011110000010001100011011101010001010101000011001010000000111010101001110010001110010111010011101100010011101110100010111011011101000111010011100010110000100101110100001101101110100001000111 +0001110111111000111010011101100100110000100111110001010110100101111001110011111110011111001000101111001110101011111010100111000111100010111010001100001000110100100111000001000000011010111001010101010100111111111011010111011000000110011010000010000100101010010011000111100100011001010111111001001011011011111111100110101010111000000001111110010011010101000010000001001010000001001111110011111101111000011101001011100101111000110011001010010111111100000100101011101010000000001001010111010000110000110110101111000001010000000010111000110111010110111001000001010000111101100001001100011011001110111110011011010011100001101101001000111011010110000110001000110110101000010101111011111111001100010001011110110000100110010000001111000100111101001110101110111111110111001001101101110110110000011101010110110111101101010000011110011011110110010110001010101110001100011001001100001100100010000111001011101011101100011001111110110010101110001010100001000001000011101101000111100110100010100110101111001000000000111001101101111111110011010111101100110101100100111110100100100101000010011010011000010101001111011000111101100011001010110000101110001110011000011100010111110100110000110111110101000011101111011000101011010110000101000000100001111111010000010111010000001010101101100011111001000110011011100001110010111111011110011111001001111110010001000001110011001000010001011100101110001100011010111111010111010101010011000000101101011100110000101000010010110000100100000011101000110011001000001101011100010110001101001110011111100101110000110111110100001101010001001011000101010111101111010101110001111111111100011000000110001010010101001111100001001001011000011110010111001001110101011000010011100110110011011001001010010110011110011000100011000010000101110000000111101111011110100111001100001001010010010100011110101111111110100100001010111011001100000100011101101101101000111101101110100011101101110100000100001100010011110000011100100110110111001010000010001000111111001111110001001101100111000111010000110110001101000100001000110111111110111110000100000010101101011101000000011000011110011111010001101101110011100000101010011110001000010001111001101000110010010010110110110000100001111100011111111111111001100101010111000010001110001100010001110111101100111110010100110110011011011110011010010001111110101101110001001100000101011110011110010011010011101110010110011100011111000010001110010110011011100000011101101111100101101100001010100001010010101001011111101010100001110110110100110011001111110011111011010011001000101001010110111100010111101110110100001100001011001000000001010011100000110011010110010101111100111110101000010000101110001111111111101110111110011011110100001111001100110000010101010001010000110011100010101111000010000101101000111111011011000111110001110101100000010101001011100011110001110110111001110110000000000000100111011000101001100100001011101010000111000001100001110011000000011000110001110011101111100001010111000110011111011010011101001001001001100101010000001010111110011100110100111000101001100110010010000001010101100001110110101101011000001010111000010000101100011100000100011011100000001011110100010110110000111010100000000111101101000111000111001000110110111101010100101000010110001000111000010001000000000101110001100011000100101110100010100000101111000100010010000101111110000101110100110001000111110111111101101010101101101011110111100101011100010011110000001100100111111100010100000010010011000000011111000000000000110110100011111101100001010110111101001001001110110---------------------11001011101001100100100000111100111110001000011101001110000101110101101000001011001100111101111011110000100001100000101001100001011010101011110001100001011011011100011011100110100000010100111110000111101101000001101000111011100110110001100101100101010000001010000011011111110111001000101101110110011011100100000111100011111001101010100000011000110101101011111111001010111101100100000001000010001010001101110010111110101100011011001001011111110011001101100010001010101000010101100100110101111100001011100101101111010001101001010111001110001111011000000101010111001000011010011100000110111010100110100111010111101111011101100100111001110001110001100100011101100000111110001100010111010011101011011010100011010010111100101001010001101000011100000101100011100000101001110110111111101001001001010010111010001100001100111000010110110010101101011110000110000000100110101011000111100000100110111000001100010001100111001111010010100100000111101001111010001011101011111011100010110000000001100011100000001010101000011111010101111000001011000010101101010111001100110010011000010001100100101000101000111110110111010110010000010111100001101100010001001001110011111011010011110011110001110110100100010111110010100110111000100010010001011100011111010110110110000100101001101001110101011011101000100000010111100110111100000010001111110000010111100010100000110100000111111101100111100110010001101111111101111010101100100011101001011011111101001100001111001110010111000011101000101101000011000010111001001101111111111110011001111111100101100100110001101010000001101101001011011011111111001001111001000010001100100101000010111100011110001100100101010111101100000111110101001111100001100011011100011011111011011111100011110111001110010100010110010111100110000001000101110110001100000100100001101000101111100111011001101100100010101111101001001100100000100001001101101111000000000011000110101010110001111010101100100110110001010101111101001111101110111001111001110011000001111010000010110110110100101111110101101011010110000101111000110101101101111010100111000000100001011001001111100010101100110100111101000110101110010111010111010011011111101111000001011111111001000001111111111100100000100011110101100000010011111000111101111010101100110010100010000010100010000110110100101100100001100010110000001001100001010110000111011011110100010000110101000001011000000000100110111010011110110010100000100011000011011100100000101001110111000101010011100001100111010101000010000101111100110001111011000010111110000110001100111100011011010101011000000001111001001011000010101111000101101011001111110111111010101110110001001001100110110111110000010111101100101001101000101110000000000001010100100000101101111011010011100000101111100110111001000110110000100000110001010010010110011100000111000010010100101100001010011011110110100101101101100111011100110111100001110000010100011110011010001110010001100111111111000011000000001111101011010111011001111011001111110001001011010110111000001010001100011010100100010111110101100110101000000011101000110001011010011010011111100101000110110011000011110000000000110010000010101111000011011100100000010100011101110110001010010111100111111000111110010110100001110000000111101100100101100000101000110100000101111011111010110101000000101101000100111011111011111010111110111011001010100010000010111001100100101111011000001000010011101101011100100010100000000100011000010000100111101110101111011111100111001001000000001101101101001111000101101101101101100001000101110101111011110100111100010010111111001000101010011000110011100000000111010111100110000000101101010101001101110100110111101111010101000010001011000101001100100010001001100000110100101001011111100011111111001101010011110000011001101000101010100101000111000000011100001000100100100100010100100110100001100111011001010111100010111010001000101000110001111010011001100110000111000100011000001101010000100111101110001100010001111001101110100000000000111100000100101111000111110001101100100111111111101101100011011110100100101100111010110001010100001100101001111111100001100110010000011000011010110011111111001100001110100111010110100111000100101001000110010011111101110110110110001001010100011111110101010101101101100010100001101011100110100010100111110011101101010000111110000010000001100101101010100011100010111110011101101110011110101000000110001111001010001000001100100001001011000100001011100001000101011000000001000010000100111111111010110000100011101101000010010111101000100001000011111010010101010010011000000111100001110001101101101111011000101001100110000100011011001001110010011101010101000010100100000100011010101010111001100011001001001001110110011101010011001101010000101010011110010001001000001100000011101000101100000101000011100110101010101000111100101111011000101000011101100001011000010111001100110101010110110100010101000101110100001100111010010011011101010011011000000000010011010001101110110110111011010001110001101111011101010111010101101010000101101111100100010001101001110100111011100100011001000101100111101000100110110011010001100011000110010110000010110111011011110001100100110011011011000111101010110011111110001010011111111100111000111000111000011101111011000110000110101101100100001101000001100000000000001100110100011000110011111111101100001001111000010000001111111010010001000111001101101101001100100010100000111000010011101000001111000011100101101101001111100001100111101100000010111111010011101101000010101000001100001000101010000010011100001110100111110101000001101100110010000011100101010000110100011111001111100110011001011111000101001110001111000101100010100010000111001100010110001000110010101111100010101101011101111001000110010010101000011001001110010000011100111010101010011011110001110010011111001100000111011000011001101000010001111001110001101101010011011110010000010010001110001111101000111101010000111001100110001000110011111100101100101011110111000110101000111100011111001010011000001001010011111110011000111000100110011111100011001011010000010011110001000110011010001011100000100010000001100001001110000010110000110001000010000011000011010010000111000100011011111010101111101111001111110000001000011010000110110010111011101101000101110110101011101001010110100000110101011001111111110110100010110011110010111101011111111001010101001111110110011001111100011010000111000100000101011000111011111111100110101110001110010000011000001001001111000111011011100000110011111101001011000010110101111010010100110110010000110001110110111011011010000111011000110101001011000110010110000011101110001000001000110101111101110000010111111001101001101001100010100001111001101010101001010110110110000000000101001111101101010100001001110001001010000101000000111101110000000100001011111000100000011101010001101111010001100111111010010011011000110011111110000001010110001010001101011000000010101011110110001110000101001011110100011011010000001111110111101011111110010101000000001100000101010100000110111001110111010001011011111110100100101111100010101110001110100110101100010110101100101001010010011101010010110111011010100101100011001110110111011101000000010101110000100100100010101010000100110011111111100101000000101001010000110111001111110011000111011100000000010101101100111110000100110011101011001110111000110100110110111101001011001010001110011000011010011011011010110101111111101000000010001100110101111110010000110010101101110101111110001100001100110111001001101000110010110100010010110101010001011000000000001111010011010010001100100100010001110101101111010001100011100011001100110111011001101111001000111110111001101000111001000110010010110000100010011111001100011000011110011100000101011110001111110101110001110011101100111110001111111010100100100001111101110011101001000100110001001110100000100100000010010111010000101100010011010000100000000001000000110010100001111100111101110011111011100111000101011111111110101001101101011010100100000100111101110111000101101101011010011100010110110010001111111100001011011110100010010001111011011010010101101011000111000101101110011100110001101111000010110111100001011010101111110011100111110001110110101111100000001010110111100110101001011110001110101111100110 +0001111101011101011010001100110001111011111110101000011000011111101111111001001001011100010100000100110000110101100101010010100000100010111101000001111001100000101111110010000100111111010001110010110101111110011001000111100010001111111110100010011111110111010100001011001001010101011111110000101110100010011101011011000100100000101001100001101011011110111011001001101101101000100111010011000011000100110100100101011100011110110110010010001101111000110101100111010001001101010110110010100110000110110110111010010101011101101110101001100101101101000010111001010110011000100101011000110101100011000101010001000111001100111110011000100100100110111100101010001110010001111100110110000110111010100100111010011010011111000101010011000011100001000001110001011101000011110001011000001000101011001111001100000110001001010010110110010001100110111010010001110000100011110110110101100001000001010011110010000010001001110101100101010111000100111001000111011010100011011101010111001111001101100111000111110110011011011100110011011111110100111010010110011011110010101010011010001010000010010100101111000001110010010110010000101100110101011011001001110011100011111111011101011110000110000000110100000010010111001101000110101100100110101010101101111011010101101100110101101111001101011011010111011110011010000101100100010001001110100100001101101111101000010011111100110001100100011100011010100000111010001011101011110001010101011111010100101111011001000010011101010001100001110100001000100111011110010000011010011000011110110010010000011010111010010001111011000001000000001110101000000010101000101010101110010000101001000001010011100111010110011000111010110110001011100010011111100100011011110100001100100111110010101000101011011011110011110000011010001101011011101100000111000000101110000100110111010000100001000110101110101100011011101100111100011111011110000010110010001100001001101110101010010111010110101110100010100111100001001001001001101111000010001100100101011111011011100010100011000000011011001001001001001111101001100100101000100011001100010011001111011110001100011000000101000000000010011010100110111101010111100111001101111011000101001010100001010101110101000110011000111111110011111100010010100000010100001100010101000010011000000010111010110100011111100010111111101001110010000100101110100011110111011111100110101110011010001111011011110101010000111001000110110000110011011111001100110110010011110111101110001011111101001010010111101001101010000011000011011110111011010110011111011011001100000101001111111001010010000000101101000011101000100100010101001100000100110101110110111100100100101101101101111010010110100100011011100111001111100000010101001111001011100010001011101110111100101010010010000100100100010000001011000000101010001011011010111111100111011111100111101110010011101000011110010111010001100001011001011111100101010000101000110011111111100001100001010010111101001001100001010000101110100001110010000111111101011100110111111011101010000101110010101110110001100111111000010111010101101010101011001110101110110111100010001111011011011110011100101001101111111000010011111000100011011010110011111011100101110101111101000110101111101010101001011011000101111110111001100110000110101010111000000101100011010000111101000010110010001001101011110111000011001000001111101111001101011011101101100111100011010100101100011010010101110001111100111000101101001111101001100111001011000000111101101110111110010110011110001010101111000111111100110000111100101101110010100001001110001010101111010000100000001---------------------00011110001100100011101111010001101011101111111011111000111011001010100001111101000001101000011011100001101000100110010001010100010001111111111101010100000000100001110101100111101101110011110111100110000101110010011101010010110101100000110010100000000111101001001111001110001110101011100101101110100110010001010000001110011011010010101001111111000010010010011001110000100100001011001111000111101000001000101001100010100001101110111101110100001001100001011001001010110100100101001010001100011010001001001000000101111100111011010111010101110111010010101101111010010000100110011100011011101101001010100111010010000001100010100010110101010010010000110010110010010010110000010100000111101000001011111000101000001001110110111101010011110100011101100101101000101111110110010010011110000110101101001000101100101011101001001110010010010111010000001100010001110101101010110010011000100000110000001011111010101110111100100101110100000101100001110101110011111110000110001100010001001001011111011110110011100010011011100011001100100010101110111011101001100101101101111001111011101100100011001011010010011011100001110000010011101100101101010010010010100101010010001101110101001111001000010000010001101101010101111111110011101101101100101100111100010010101111010100010100000010001101100110110010011111001001111010101111100100010000011000110100101111101010001001000001001110011001000101101011110001110101010111111100110000010101111001101010111100011010011110011011010010101100011110011110011100110011010010001101011011011001010110000000000010100001000111101100111110110111100011111011000000011101001111101100011100111010000111100110000001001101010001011100101111101000101100110100011111000111010000110110100001100011100111000000101110010000100001001101100111010110100101001111100111110100001100100011001100100110001011000101010001001011110001110101000000001111000001110111100001010100001100001100000000111011111110001101000100000110100000110100010110000111100110110000001011011111010111001010100010011001110001110001111001110010110100010101011101001111001010001111011100011101011101011110111101010001110001110001101011100011111011011111010100001100100000011101101000000111101101010000001011111010110010011001110111110011110010000011001000110111111010010011100000010011001001111001001011110010001000110011010010111011110000011110111011001101001111100001100010001110100110111011101010111110101100010011010100101110100000110101010011101001011101000110100011101110111101000110110010110000110011110011111010100011110100011101000000101011011110001100110100011110001001011001111111010100001011101110000001101011101100000110111011101101010111110100000100011010001110011001101100100010001001111100110001000101100000110100111000111110111111010011101000000010001001101111010001011110000110000010010101010111101101110100110111101110001111000110101001111101101101000011111110000100001000110001001101111101111011011111111110011111000011100000010101011111010010010110001001110011110100000101100000110011000001101000000100011100011001111011100110010011101111110001001001011010100110000101000100000010011100110111011001000001000101100100110110011000000110101000001111010001001010100111010111101001010111100000000100010101101101001101001011011110010100000110000001010110110011101110100011000100100110111110000000001011011110001010110100001011101010101110111110011110100110101000000100000001100011010101101010101000011101000010010101000010101101111010111000001101110010100011100100010010011000100001000111000111111011010010000111011000101100011101111101001001001010110000000001010111111110110010100011001101101101011000101101010001010111111111000101111111101101110110011001011110111110110100111111111101000010100010110110011010100010001110110100010000110011111110010001110111011011100100010100000111001001101111001001110010001110110101111010100010001101010000111001001110110001110100110001001011010010101111010101011101011011010001110000011000011100110100111000111101111100010001100010101001100101110100111001001001011001000010000010001110010101010110010010001111111101111111111010100001011011010011101010010100000111001000000101101000110000000000000110001100010111001101110111110111101100111100000011111101001000000110010000111100000100110101011101000110011111101111110111110011011001101110010010111101101001101110011110100101101000101010001100101011101011000010000010010101010001010011110111100101110011010110111111010010110100011010001011110001100001100000010110011110101010010010101001111000011011010010101000001111101010011010100000101100110100001111001110111000100001100100011011111000111001011010011110111101100111101001111111101100011101101011101000011110111110010101010000100101100011010011101000010101101111001111100110101101101100011000101100111001101010011110000001001010001100011000100101100111001110000100100111000000110101111010100110110110101010010101111000101110011110100101000111111000010101010010001101100001010011111110100011001010010001000110010000110110100110100010111010100101110010000001010001101100000010011011101111000011001100111000010011110010101000111111011100110001110011111111011001001100110001011110110001001011111100011010111100111001110001000100110111011001101010000010011011010001001111001011010011110101011000100101100011100011101100101110111011111111011101001011110000011000011000000110001001000000011010001100110110001011001010111011100001010000000011011110101100100000000011100011010000111010111000010110010011011111110000001101100011111010100101000111000100011011111110110100110001010111101111010100110111011101010100010010010101101001101101011100110111100011111111101010011000010101001100000011000100111101000011101100000100111001100101101011100100110101110101111011011001001100110111000110011111001110001110101101000000100110000100101011111001011000011000100011111101000010010011101101110101111100110101010110010001011000010000000101110110110100011100111011100000001011100000000011111010010001010111010110111111011111100010101010011011110000110110111011110000100000110001011000100100011100110101111001110100110100101011010111000010111011101110000000100100000000101001011110110111000000010001000000010000000110011101000110010101001100101110101011010001101010001101001000010100001010101111110101010001011110100100111101100011000001000011110011101110000101011000011100011011110010010101111010110011111001011010011000100000010001000100100011010000011001110001111011100001011000010110010100100101010010100001110001011100010101101101011111011100010100101010100110101011001101101111001000101110100010000000000001000000011101001000100001001011101000110100011101010101101111000010000001000100001000000001111011000011010011011111010110110100101010010001100010010111111110000010110010101110110100111010010001000000111100110110011001110100111110011101011111001100010001100011111111110110110101110010101000011110110001001111110010010001010100101101100001110011101110000100000010000010010100111011101010011110110000010001100101101010110100110000110110000100100011101110011100101111111000001000111111010000011001001100010101111111000001101101000100101100011000011110101000000011100001101110001001010011100111101000010001100100010000000001010110000101010011011010111000001011011011110000100111101101001111000011011100001101001101110110001101110111110001100100011111001111111001101110100111000111001110111000001011100101000111011110001010100000100011000000000001101000001001110101000010101001101011111111111010001110101111000000000101101000101010111100101011001110000101111010110000100111111110101100011001110111000000111001110101100101100100010110010101011111001111001100101100011101011110010000110100101110100101010000011000001100111111110011011111100111010111111111111011100001011101000100001111111011101111000110111100010001110011100000010001000110110010101000101100010010010000100010100101101111001000111111111000101110100001101101000100100110001000101001011101001100010110101000000000100010101100011001101000110100100010000111100111001100100111011100111101010101111011101100001111111001110100000100000001111010110111001000010000110011001101010010011010110100110011101001001001010000011110111100111110 +0111100101100111001010110111001000101001010011100011101011101001110100101101011111000001100000000000100101000001111000001111110011100001111100110100101011001101110011011101110011100111100101111110010010111111101111010011111111110111000100011111000110110111111100101001010111001101110001110111011001111000101110111010111110000001100010111101001000111100111010111001111110111100111110010000100100000001001100001001100110111000111000110000111010110100011010110011011100001101100111001001011011011101110010001001010011011100110001010100000101111010011001001100000111001110001011011001000010111111101101010000010101100000111111100101010100111100111110011110010101101101110111000111011000110001101111100110000101000000000101011101000000000011000100111111000010110110100111001010001011111000100011101100100110100111110001111111101101010100000111011101101110011011011001011001100010010000111110110100111011010101101000010011010100111100010110001000100111001100011010010011101101001110000110000110110100011110110110001011110000111111111000001111101011001101010010011010110011001110100010100001101011011010110011101111010110100000010110001010010010010101110010000001101011000100110110000011001010001001111100000001011110100110001101111110101000001011011011001000000101101010100111010001101111011000100111101100000001111000000001101101001000011010001111000111001101001110011100101110010010000000101110100110000101101001010110111110011101111101110100011110100100000111010010001110010110101101000101100111011010011010101101110110000011001100000110000011110110001100001010000011100001001000010001001100001110111000010001010101001101100111000110011001000011101000100101110000010011110111001101101000110101110100010111101111100110100101110101101100000000011100011011000100000010110000101100101100001111011001011101111111110001001111101111001001110011100110110111100111111001001001001100111100011110110100000101011001101011000010110101000100111110000011100000011101100011100000100101101010010110010000001011101010101000000010111101001111101010100101011000000011001111111010111111011010111000111101011000001000110001010000000001110000100000000111000101001101001100011111001110001000110011001011110111111011000010101110100100000010010000001111001001001110010000000010000011011000001110111000110011111000111011011001110101000001011111101101110010001111011010001110011011011000001010101110011100100100101001011011011110111110100010100100110000000100100100100100011011111001001100001010100000011000111101000100111001100001100101111011101001001101100011001101110011000001100101010011010110001000100111100001101101100110101101001011010110111001100100101111010000110000000011101011010000011111110100001001000100010001100111111111010100101001000000011000010010101000101011100011101101001101010101001111101011101000011011100011110010011000101010101101101001101010100100011000000010101101110101111100011010100001000110010000000010110101001010011110101101111100000100110000100101010000001000101001111100010100111100111111010000001101011000110101101111110001001101110001100001001011100000011100110010010110000011100110110100111100110000001110001011010001011010100100111011011111110101000011110001100001110011100010110110111001100010000001100101000110100110100111111011111011011111000000101100001010011110010100101100000110101111011101011100000000101011100011110100001011111101101100101101110000111011100011010111110111000100101000010101011010001110101101111001111111100100111011111110111010110111011000011000011100100000100011100---------------------00000100111100101100001001001111111100110111000110100100010110100011110011101101101010101111100000011110101001110001001000110100111000110000110111010011011001100010111001100010110011110011101001010101011011011100000011100110011000011110010011100111110011011001101000001000001101001001001010111100001001100011101101011001010101010101101011110010111101101111001000101000000001001100110111011100100110001001101000111011010111101101010100100100110000100110111111111110001001100011010110000011111010110001111101100100011101111101001000100011110111100110101110001011000101110001100011000110101100000110100001011011000011100100110001111001000110000011011011001010110100110011111111101000001101000101010101111100111110111110101001111101001110000010011000111101011001001111100111100011101100001110010111010010111001010011010010100000111011011000101100000111010001110001000111100100010111000010010011010111101001000000011101010000001101011111100010110100110100001111101100110000101111000110001100010100110010010011100111001110000111111101111110010100110110010111111110101000010101111101111111101010101101110001011100000011011011111011101011110000001100001111010111010010101010100100111100011011000100101101010001111100110000110000101100010100001011110011010111000110001100000110111100110101110010000110001101111100001101011101001001010011011001100101010100110111111000110010000101000001111010000110011000110101111010010101100101100110010010010001100101011100110000001111011111100100111111001110100001100001001101010010010010111111101001110010110000010101010100000110000101110000000110011111011100101101101010000111111111000101001011110010100111110111111000011010110110010110110111111000010010001001000010010011001001011011011111001010011010001110101111100000010110111001101111001010111001100010011011000111110010111001100100111101000101101001110000000000010000010010101001111111100011011100011010100010011011100100011001010100110110110101001110110000011000010001010001101010111111101010110110111110010011100101010001000000101000110001111110001001001101001000110010010101000001111011010010101110001001010100011000010001100110010011100101001111011111010100011110111000110000100100101111101011110011110011010001000110000111010001101101000111001101001011111101100011110111001100110000100000101010111101100010100110001110000000111111010111110011000000011110001101010010000101111001101010111010101010011101000001100111010010000100101100110110001100011011011011010111001001111001101110110000010011000111011101011011101100010101110111101011010110110110110000010101001111111110111010011101100111110010001010110011111111100001001111111101110110011111101110111011001000101101101010110111100000001110111000001111000011001111111010001000000010000011110110111110000010100101010010000001111110011100000001011101101011100111110110110001101111000101001001110010011101111011010101001000101011110100001010101001100111101111101111101110110010110110010000011001100001011000000010111010101011010100111100111011111111000011000111110010001000101010101100100010010000100000111010001100110000000100010111110011011100010010001001010100001011001101001101011011011100110011101000010110100010100100100010010000010010010001101111101100011111000001100110110111011101000010101001110000111111111111001000110000010001011110000011001111101101011111101010001110011000100001111000111011101101110111110101111100110011101111100100000001001000001101111011001100111100101101010010010100100111011101011001111111011110001100101011000100001100111111110010110010000010001001001111000100110001010100011100100000001001010100011110110111110111001101010001101111010100001100010100001110001001010110110000101011110000001010110110000100111111111000111011001101100010100001001111011100001000010001101001000001010000010000101101101111011000010010000001000001100111100111100001010001101110001101110000110110001011110000010001000011101100001100110001011011110001101101000110101111011010111000010110011010100000111101011010101111101010101010010011100100000000111101010001111111100110100100111011100011101001100101000000000110111110010000000010110111111000010101011100011101011100011100101000101110001110111111011110010010000100010100000111111101111110111100111100100011010000101011000010000101000010110010010100110001011010100100110110101010110000101111110100100011010111000111000110100110101001001100110110011010110111011101101110110100101001101110001010101111110011000101000111101111110000001010000001001111001001011101010101110001001010101101110111010101101110011001111000011011001010101111111110111110110000011101010101011100000110110011110000011010101110100011111111001010001100111000101100011110010000011011011110110000100110001001000000000110110101101000000111110111100011000001101011001101000101011001111000100000000010101001001000000111011010001100100001000010100000110011110111001010010111001101111100000101011111111000010010110111011011110010010010110011001011000101010100100000100011011110100101010101001111101111001111000011010100011001111011110000101011100101000011110111101100101001110110101100111011001000000001010011000101111100011111110000101111001000001101100110101000111110100100100011111001100101000100111110011011101101100000100100110010100000001010101010010110000101000011100111100010010110111101100000101010111101101110101010010101111110101101101111101001010111000000110101000000111101001100000010110001010010101110100110110101111110010000001000011001111110001110100100101000100101010111001101111111011010001111110001011011110110010101111001100101111110010001000010110001111100110001101111100001001010011000110111000101010010111101011111110001000100011101100100000110100111011111111100001111111110100011000011100000100010100100111000011001011111000011011000100100111001110011111100111110101101010001011000100101011111111001001001100100101001001000111101000101111101100111001010111010110001111110001011011100110001000110010001100011111110011001110011001001110110100010010101010000101110111011011010010001011000011111000110010000101101000001111000010101011111001010001110110100110010000111001110101100111011010010001010010011100011100100001011110100110101010111100001011001010011101001100010000000000001100000110100110011100001101000110001001111011101001110001011111101100001100111111111001110100100111010000010001110000000111101100001111110100100011110111101101011001011011000000100010011011111101100110111001100111111011100101101101010010100011101111011001000001111111101001011001010001101001000111011001001101010000110010000000100001001011110101000011101111101100011011100000001101111100111000010010100110000101011011001010000010100001111000001010000100110111100110110101100001100000011010000101011110100100101010000000100111000111101001000110011101010010011110011010101011011000100111110010011011000011001001100011010010110001101010101111101011001011011111001011000000001100000100011001011111101000111111011010110101110100011011101010000010101111110010111111011001011011111101001000000111001011100010111111110001011111100011111011111000000001011011000000000110111111100110000100010100010010011111110000110001111101110010010101010110110011100101100101011000111110101111011111010000010010001100000100100110111100011001110100000110010011111000011010111010001001010101000100100111011100100100010101011100010011111010010101100000100100101100110011101000110010111111010000111001001001101001110001000100101100110011100001010000001000010111100011111011011111011010111100001001111011111000100101001101101100011101001001111101111010111011011000100000101001101000001010010010011111000101010101100110011101100000000111011001100000100001000111110000010011010100000111110101100001111000000100111001100100110001111010111001000011000101011011110101010110110100111111011011100101011100010001010000000000101001000101001100010111111110011000011001110111011100101111000101100101011110110110111011101001010111000011101100101100001011000011011000010001010110101001101011110010100111111110110000000011111001010001101110011110000101100100001000100001001011111000110010110000111000000010100010001001001001111101000101101001001110111010100110000000100001010011001 +0010110110111100010111110110100111010001110111000001100111010101101100111100110110111110001110000111000001101000100010011000010110001010001001000100111111000010000101011110001100100111100111101100001001010110100100110111001101101001010001000001000110010111110000101000011110001001110000010101100011101001000011001011101011000101100000100011000000010001001101111101101011011100110000111100101110110100011000001000101100111110100010010110111110001101100111010101001011111010100000011000001010100110001010010101011110110010000011011110111010001010110001101110011111010100010111111100011110111000110010110001010101100001010110110010001100110110100111001101110101011110111101101011101110001010001000010001000111001001111011001000110101111111101001011101110101000100110111101111000011000111111010001000101110011001101100110011110110101110010111011011011101000001011101101000001001000001101111111011010011100110111100111010110101100110100100101011110001110001111001010010001110000000011111100100001111110100011100010011111110001010010000100000111101101011011111000010001100111000000111110000001100001001001011110011110111101010101101011101100001110111110100111011001001101110110001001010100000100000110011011001001011111111010011010010011001101111011111111100100101000110011111010101100000010010010001011001101101011011011001100000001001001111100111100110000011000100001100010010110011111101001111011101110010001001110101111110110111010111010111101101111010110101010111100010011110100111001111010001000000100111010010000101111001011001100100001001010101010010101000011111011100010101011111010110110000110010011010111011011001000011000111010000110011101011000111110011000110011010111111011101110000011001010100111111111001011110100110000011100101001111011001100001101101000011101101111110011010000000010100101001011011110010011111010111100010011111001110111010100011111010101111110100101110111100000001101111001010101111100111011001101011010010111100011100011001100100001110100011000000001001000110001011000101000111000000111001100101011111000111011100000110010010001100111001011100010010111100011101101001110011111100111100011011100100101001100111100110001001010000011111110011010111111101111001111101000001000110000111000111010000101000100110100010001100101101111100101111010001111000101101001101101101101110100011011111001100011010000111001001010101010011100100001100000000011110001010101111010111000001100011010000110101001110100101000010000001001000010011000101001010101101101111000100101101000000010111011111110011001110111111011100100010001010010111000010101000011101011000111010000110000111101111000100101001111010101010101100111001100010111011001111000111001101101110001110101111001001000110000010111101010101111100101000100010011110101111000010011001001010001011000011011000000110101111011001100100111100100101111100110110111110000010111001011111110010011100111111110001011001111110101011000010011101111100110000000100000010110110101100111101000110111001110000100110111011101010110011101011000100101110100100110011001001110111111101011011011000100010101010110001011110100010110000000000000001111100100110011010101001011110000011010010110100110010110011101100101011111001100111101001110110000111100110100100111000011000011000111000010000001110010111111010101001001101000010100001100101111001111110101111100100111000011001101010001000001010001001101111001100000101010001110000000101101010111001011111110000011101110001110100001010100100110111101101010101111011010111011101100001011000101011000101110---------------------10000111101101101101000111000001101100111010011000001111100100010110011011001100101001101001011011111011000111110100111011110011010001101111101100000100000111010101110001010110001011101111101001001000010100001001010100110110010100001000101011000001110100000111001010101000111111001111000101110111101001011101011000101100010011111111001101101000100110000100010101001001100000111111100011000001111011100001101011010011110011110111110111011101110100001101011000100001110101010101110011110011110010111100001100010010001010001111110100011111100001100100000111111010000011011110010001010101111010111010011111111111100100000011100101101001000100110111001100001100001001010111100000110001101011110000111011111100110110011100010110100100110001101110010110101111001001111110000000111011110001001000010100010001010111101001110010001000010110110111111011011010100000110011010100011101110110111111000011001100101110100110010100010111011110001000110000000100011110100001101010011011111111101100011011010110101001111000101010100111100000111010000010111100111000010110101101110101110110111010111101000000011010001111110101110111011011001111110001111101100011001101101000001001111000110110001001100101000001010000011100000100100101010101011101101000000000000101011000001111010111111101000100010010010101110011100101000101001001010011111100010011001100001001011111011100100100011110000001111011111100101001000101001000101001001011001110100101101100000011110110100010010111001100000110101100010010011011110000101100101101000001001000100000110000011000000110011000110000011010101111011000101011010010000100110110101000110011110010100110110100100011111011000110101000110011000000101000001010111011011001001110111001110101110110111011000111111000101110111110110100100001011110011010000000000101001100010010111101011100100100001001000011011001100101001100100110001010001011010001100000110001101010100101010011011000000100110111110001111110011000110000000001111101001111110101100110100110011010001111111111100011110100001100110100100111110111010011111111100000101111010000010101110101111101101111101101011101111000010010100000110010000011001110001101000001011101001101001011110010101111100011100110111101111100011010000101100101101000110111101010101101000101000101011101101111101101001110101111110100011100010100100101111010100000011110010110110011100101000000010000100111001101011001010110110011111111000000010001001111001100001001100010000011001111111110001000001011111000000101100000011111101110100100011101000000010110111110111110000001101001010101000000010110001111101100000111111101011101101000010000011010110111101001100011011110000000100111110011000101101001001110101000101100010100000011001000111110001111111011101000000111110101000001011010000101010100001001110110110010101011100101100100011101010111110101100100100010101111100110110100000110111101011011101000001100111000100111100100011100000110000111011001100000100011000000111011010101011000100111001111111101101011001110110101111111110001101100001001000101101001011111100010000011011000111011111001111011110011111110001011110011010000100011110011000101000000100100000001011101101011010111010100110001010100101010101011001110100100110101100011000000101011011110000111000111110001100000101011010101111000001010101110100001110011100010000111110111001101000100001000100111101100000100011100110011000011001010010110001010010101111111001110110110110110110000100110000101001111001010011000011100000001010010001011001101010011001010000100110100110000101000101100000010111101100001111111110101010010110010001010101010000100111100111000010111010010011100011010010100000010110101110010010100011001011000010001101101111000011010000011001010100011110001010010101100010000011100010011000010111110011101110100101011101010000111111010001110111111111011110001110010010101100000000100001000010101100001110010100100000111111010001010010111101110010100000100100011110111100101010100010001000110110111100001000011111100101010000111100100101101101000000100101101110110100001110110100011111101110001101001011001100100100110000011101001011101000110010001101100000101101011100000100011110111111011010100110011010100101101001111010101110100010010000100100111110011111100111110111001011001010110110000010001100110010010100000110011011111000111100010000001111010110011010110001001001101100000111111101000010010000000100001000011101100100001010001100100101011000001110110001001111101001000111110110111011100000111010110011000000000011001111000010100011011100010000011011011010100001000000010001101011110001011000111001000101110100010111111101010000000100011110100001000010011100110000101100001001011010111011100011000011110101101111111110100111001110001110111111101000000000100010001011101001011110011101101011100111011111110100111001001001000101000010110100111001101000011110000000111100000011011100101100110001100111011001000010111010100011010001101101111110011010111100111111101110001001001101111111101110001111110000011011111110110000010001111010010100101010011000010101100001000111110110011011110100101000110100011011011011110100010000011111000001101101000000011100101001000100011101101001010101000101010011010010000100100000011111110101010010001000101110000011100011011011111011101100100000110000100011111000101001011001011010101000111000011110010111011001101010100010010001010101000111110011000000001001000100100000101100001011011010101001101111100001110001001001101000101101001111111000101100001100100010001100001111101111011101101000011000010001001111101101000001111011101100100101111111011100001011101111111100111101101111111000100110100100010110111100100010110000011001100110000001000100000101000000010110101110110001101101111100001001000110100100100101011000010101110001001001110000001101001100100000100011110001110010010111000110011001111101000110011100010011110001001100100100000101110010110110101011011111001101011101000001110011001011001001001011111000000101101011001011110000111101000001001100101101111000110101010001100011101001001010001100110101111110010101001000111001110001000100001001001010001100111101101101001000110100100100101011010010011101010101111111011000101001011110010001010011010011110111110011100010100101111001001010111010011011000100001010101000111001011101000010111011101010111000111101010011110111110011011000011111111111100011011110111010010001110000000000000110100100001010001001011010101101010011100101010101110110110110011000010100100010011011011011011100110101110111110010111010010111010111010110111111110110010101011000111011100000100010011011111110000111101100101000110000110101100001111000100101011001100011111110110010000101101001011000011000011000000111011110010010101011000001110100010110101001001010001011110101100111110111111000001010001101001011010011001101011010101001111001000111011110111111111011100111010110001100010101011001001000010111100101001111100111011011110101011110111110110111000010010000000111110011110000110000111010101101010001100001000000111000100001101010001001110101101110100100010011101110111011000000111010000001010101010110111011110101100010110010000101100110111000011000001001110111100001010100000111110100101011010100011010100110000101111111100101111010111000001000011110000101101001000110010011011011010010101010111001001111101010100100111110110101101110111000101011011000011111100010101001111010110101111100010100010100110001000001000000011110000010000101001101110011000111101101111101000000001010001011100001101101110011110111010111011100100111101100001111010011000000101111110111010100111010010011011001011001011111110101010010110000010100100010111100111101000000011101000111100101101001111101110010101101000010000000110000100110001010101100111101101001111001011010010010011110001101101101110001100010110001000110001100010010111111110110100111100010100111010010011001010111100010001100100111110011011011001000111011011011100100011001001110111010110101001101001011011010100001101110101100100011001110000010101100011100101100111110011010010101000011100001011011010010010100100011110110100011100001100000101100000110000101000000111010111111100001011111110101100010101001100011110111110110110110011011010011101 +1111010101111011100010010110101000001000011110101110101110110001100111001100110001101001010110010000110110111111111001110001101000101100110011101000011101111010000100010000110110100110010111111111001001100000011010011101100100010001101111000000011101011011101011010111010011110100101001010111101010000000101111111001011010101001111011001110000000110100001010110011111101100001100011110010010011000100110010000100001001111000111010110001110000110101101100111100011110010000100100100111000001001010001000000110111110010000000101010001110000011011100010101100001101111001110100000011111110010101111100000110101110010100000011001101001010011101001010001110010101110011001001011000101011001110111000001110000010111100001101100111011111100110001100111111101000111110101100011111111010100001111100110101100000101100010010101000101101011000110010011100101100010011101100011100100101110011111111110010000000110110001101001011100001011111011001011001000101000100100011111000000100101000001111100011001101110011101010101111111111000110110000110111110101001111011010100010011011001111010101000100101111111000111000101011010100111101101000011111100110101000111000100111010111110000111001010110000011110100111110111100010000001100001010101011000011101100110000011001111011011010000001101000100101011111111101100101111001011001110101110010001101100100010111000111011001110000101000000100011101111001000100011101011000111010111010010000110000101110101000111011111100011110010110011001110000101001101010101101111000000001101011011000111101101011100010011111110110111110111100011110010100011110011000010100111111010100110101110000011010111011011011101111100101101000111000001100101000110110001110110100010100000010101101010011111000011110100010110011111100000001000001011111011001010001010000000111110000100100010011001100010000101101010100100010101110010110100011110100001101101110100111011111111010011100000010111111011010000000101111110000100111100101011010001100111001000001010100111000111101100000001111111010000001100011101001001000110110110111011010010111010110101010010010011101001001010001110100010001110111000010000101000001101111011101001000011010110101011001010001000001111010001001011110011100111011101000101011111111100010111010100011101011111011001100000110011001010110100110100100111110100010010110110110011011011010110101101110001101110111001111101111000111000111011101011101011111001101101111011110111110100000100101101011001011111100100100001001011011001000101101100111001100001111101101011100100100011011001110110010110100110110010110111111000001101110000010000001110001100010010000000001010001011000001100111000111101101101001000101110101010101011111010111010011011110101011110101011010110001100011011100000110001101001010001011101110111000011010000001011111001000100101000100000111000111111000100000011010101111011011101100000010111010011001010000101110100010001010101100011100010010001011110000100000010011001101000111001101101101011100000011001011101110000111100100100111010100110001100011011110100001100111100111111010110010000110110111100001111101100101011101111110111101100100010110001101101111011111100110101001000000001000010010111110000001111111001111110000111101011111001001100111100011010001001011101100011011000100011101100111110101010101111010000100001000000101010100001001111001001100010001011001001101000111101011111010101110111100110000001011010001001100000001100001011100111101111011000001110110101010100011111100011110010101111110101011100110001000011111101011001100101110110111---------------------01000110001110010000001110100111001111001110101000100110101011000011010010100011000100001010010111001100000001001100010110000100010000100101001101100100101001110011101100011010111011000111010010001111010110111111001011101001110110010001010100110101111001011100001111110011001111011011000001001101101011010011111110100100011111010110100101001101011001000010000100001010011111011100011001011111101111101111010111010100000010000111010110100100101001000100101010111110110100000000011110001000010110011001000000011101101011101100000000010011100110110011111101001000011111100010101100010101011001010100011110010000110001011000000011101000011011100110110110011000111101111011001101000110101001011010000010101011111010010110001101000011010110100100011110000100010000110111110111001100011100011100111010000011100111100001101011100111011101001111010000101001010011111100111110000101010011011100010100001001010000011000000111111111011011001100011010011110001001000100111010010110010001110010011011100010011100100100111011100010111011101011010101101010011001110001011100011110010000110110001111001101111100100000001110001100111011100010001010111000111010110000001100011001101011101011000111011110110001110110001011011010101011111101100101100111000100000010010001110101001110101101101011100001011000110100010100000010111001100101010101011100001101101101000111111011101110101011000000000010011010010010000101100100111100110010010100101000001101010001111000110011001101100001111110001011000001110111100101100101010101001100100000100010001100100110111011000011000011010100100110101110010110000101100011100101111000101111110000110011100011000100011101111010001101111010110010100010001000110110001011100101011010001111101011010100110110100011110010101101000001111101111001011100000001001101010001000010010001101110010011111100101011111000101011111100101000100100010100000101011110110001110111001001001000000101101010001011111100100110110101111011011011011001101101001010000010101111100101111000110010101111010010101111011100011011111101010011010111101011010110001110001010011100101011100101110101101110101001100011110110101000011011100000111001010111001001101111000001111011011111011000110100100111101001010001110110111011001011000010100001010000100000001001000010001010010100111010010100100011111101100000011101100100100100100010100011011010110101100111000110110100010111110000010000010101011111011110001110110100110111111010000011111011101100101100011100101000101111000000010000010100011111100110011101000110111101111001011001111111101101101010010100101101100111101011001011100100101000011111101110011110111101110010111010110111100110011101000011011100110101110100101000101101010001000010011011110001110001111001101110100010110010101101011111101011100100000100010101000111111111010111001110100111000010011100011110011000111001100111011101110100100111101000100000111110110111101101011000000111100110110101110010011001010111000011000011110111111011000100110110111011100100101110000100111001010101100101011111110010100011101111011010001000011111011000001100111010111001110100000100110101100111100000000100001001010001110001001110001000110001101101000001000110100111110000011111110110101011010100010110110001100100011010110110011101111011000001010010111010110010000011110000010011001010000101011010011111100001111011101100101000110000010001101111101100110000010000110111001000110101000010011010001010111011011001101110100111110111100111011000100110101010010101011101100101001101101011011001101011011111011000001001011100111000101111111111011111100001010100011111101110111101000101001101000101000000110101010010000010111101100010001011010110101011000000000110111010110100111100100001110101100111111110100011101100111011000100011001100011110010101100000100000110000101000100010110001100000011111101111010001011110001000011001100001000011101100111110011110000010010111000011011100101100001100010001101001001101101001101001100011001011111111111101110101010011011101100010000010001111011101001100001001011100110101111110001001100100111100101101110110110101011101111101010001011010100010010011100010111101000110100110000000101010111110000111111011100111111001101001000011001010101000110010000000100010101101110011000010101110010010000001110111000110000101111101010001101110010001000010000110011010010100000101001010000101000110001101010010011000100101000101000100000011111000101100001101010111111101100000110010110011110011101011000000100010011000001111001100111101000010011101010101110100110010011110101100011110001010011000111101010100000010000101100010100101101011000010001101110101101011001110001110000101000110110000101011101101100111001011100111011001000110100100001011100101000001001000000001111001100001000010010110100010100001111011100000011000110000100101100010000010101000011101101010111010010000100101110110111010100011010001110000100110110001000000011001100111100000100011001110011101000000011000000010011000101110110100000101100111101010100000000111101001011000101010101011011101010110011111100100111110001110111000100101010001110101000001101101000110101011000100100000001110000000100001001110101101110011010001101111100110100011011011101110010110010101101010000011010000110001001111101010100111001010111010100001111010100011010000100010011000000110101000010110101100100101111110000110110100001101000001010101001100011111011100101101011110010011110000001000011010001011011100110011111011000100001100101010101111000101011111101000001100010110100001101111110101010001111111100100101110011101000101001010111111100110011011011011011111011100100101000100011100101111000110000011011001000100111010100111000110000010100011100101011101001010001101010010111000110010101111110010110010100101011101111111001110010010111100011110000101101011101111101101101100011010010000110111011111000101101101011101000100010101000101010111111100110111110110000101100101101011001101110101100101010110111010111001110100100101111111111000001110100110101100110110101100101101101011001101100111100011011111001110010010001000110101011001100001000100101100011000101100010000001011110111110110100100110100100111110010110000000001111110010101100001010100001111010111001010111001010111010101000010001001011000100001001000110101010111100110110011010100011000100111101111101111000011100010101000101010111011111110101010001011011101100110000000010101010010010001011110111010110011000000010111001110001100100100110100110000101000110101000111011110000011111010010011111111110101010100000000101000000111001000101111010111101101000010000000011111111101000101011111001100001110001101011100100000110001110111011110101001110111101111000001000011011110011110110001011111110000100001011011100000110100011000010101100011110011000101100100101001101110000110000101100101100100010100100001000000011010101101010110110000111011100100111000111000101100010100011111101111011110110100101011011001000011101111110101011100000101110011001001100100110001010010110111011100000000011110110100000110101101010000000111000100100010101001001111000100011100010111001001110011101100000101111010100101100101001011110011000001100000000100110110011011010011100011001001010010110100100110100110000000001000000010001110010101001000000001110011110010100010101110111101100111100101000011100100001110011010001000011100010000010010011111101010111100111000011101000010011011000110010011010101010111011010011100110000001000111010101010101011100000001111111101100101000001101011100110110100101110111111110010010110000000010110100100010110101000110110111000110100001111001011110000011010011101101101011000001011110000100011011110100010011010011100110000011000000110000010100111001001101111100101100000100010111110111000111100100010101010111001011000100101001101110010110101001111100101111010001101001100011001100000001011101010000001001110100110010000110001011010010111011011100101000011111101110101101111011010111110000111001011111011011100111101001110010000011100010011011111111000000001101110011110010011110111110011011000001101000000000100010011100011110010011110010001101011111101110001101101111000101000000001101010000100100000101010010000111010101100011100010000101000101000011010000 +ls352msgs +1110001011110100110000000101000110010100100100011011000110111110101000010100011010010011000101010100011110110101001000111010100101001111011101000011000100100001011011111110000110000000100010100001010000011100100011010001000101101100010001010000100000101011001000011010001011111100101110011001110100110111100111111101010111110010000100111010011000101001111100010000100100110101100100101001000010001100101101111100011010110011000111000101110010111101000111011110000010001001010111010011100011111111000001000101110010100101111101100101101101101100000010010000011100101101000110001000100110000111000101110101011001000010010100101001101010101011110110100100001010000000110111000000010001111001101101110001101011100100110011010111111110100111111000101000100100000001011001111011001001010010111111111001000000100000111100011010101001100101110001001110011001101110000010110011011110010010001000101001011110101011011010110101101101110111001110000111011000010111101011111001111001011110010011110000101110000111100100110101111011110001011101010100001111000110010011110101001001001011010011111000000110011111111011110100001001101011100100000010000100111010111101111011001100110111100011110000000101111010111001001010011011101111110101011110101000010011011011110100010011111110101011011100000101101111011010101111111011101011011001110000011110111101001111010011111001110100010101000110010100010110110110011000111111011111111010110100100001011001000101010101010011001001001110110000001001100000011011100000111110111100001011101100010100001001111011010000000001000101000100001011101101100111010000100000110110111000001110111100001010110000010001110010011110101101010101100110110010111010111000111100110111010111111001101111010001101111100111010100010000000001101011000101101000000010001100001110101000101101011101100010111100001101111001101001001111010001011110011011101111110100100011101110010111100100100000101100110110010000100101100100111110001000111001111110100110110000011011010111110001011101011110101010010101101110110011000000000011011000110001101111000111110010110100110011000010100001110001011000100100101010111001111000110100100110110001111101110110101000101101000100000111101110010001101010001011011111010001001111001111100100101001001100100100101001001010110011010101000010010001100001010110010011001110111001110000011100000001000001110001001000001110000011100101101000100001001100011000000100000000010101110110001101111010100001011101100000100110011000101000100010010010001000111101111100001001010001010101000111111111111010000101001001100001100101000000001011101100101010001000001101001111100001101110100010000001110001010001011000101000010111000000101011000010111101011111011001111001100100000010111011000010110000000010011001000100100101101001111111000000111011101011100111110001011100100011111000111101111101011001111001010101011010011100011011110000010110000100000100011100011001111011010101001100100011111011000000011111000011110111001110100011000000011001000111101010101011010011100001101010111011110101001100011000001100010010100100000101111111101000111111101011110101110001110000010111110101001110100110001111100010101101000001000011100011010110111010010011001010001110111001001001000110000001000001111000000011110010010111101111110001110110110010011010000100100110011111110000110001000000100101011011001101010110100101011001101011010011100001010101010010110001101000111010111111010000110011011110011100100110010111011001111001111111000011000111101101001000100011010101010110111010011010110010010010110111011010011010011100101011100001010011100100000101111100000010000001000000000100110111110100100010100001010111111000010110101101001000001001101001110100111001100001000110101001000011111100100101100000010011111101110111101010100101001011111000111111110101101010101101110000001110001011000111100111000000110110100100000100001110010101100110110001000111111101011010010110011100000111101010001010000011011001110110111001100001001000101011011010110111101000101001110000100010001100100100011110010010000101011110011110010000010101010101100110111100111100011010011010101010000001100110001100101000001100100100100111101011111110111011100001001000001000110100011010101001101101110001010001101111111011011010001100000110100001110111011000001001000000110110001100001010100111010011001011000011001010010110111110010011001111001010010001111100101000111101001001101100011101010110001100000001001011010010101001101101011000101100100010100011010011001110111001001101001111011000101100011000111100000000010111100100110101101001010011011101111011001001111001100111100010011011011101101110001001011101000010010011100000011001010011100011101100101011001110011001011111110011100010110110101110110110101110011001101000100010001111000000111110010111001010111111010010001010100111110011111011000000100001101010000000100001101010010100000001111000000010000101011100111100001010111001011001111100010101100110110100101100111011110110101110010001100100110100010101111001101010000111010000100110110110111100001001000010100011110001100011110011111111110011100111101101111100100101010010110110110000100100101110100010100011011010101011001111111101000001101011000110010011100001110000101111010010111100011101111001010101010010011001110000011000011000000101101101001111001101000001010111101101011010101100100000010001101111000000100000001111010001010111100101100010100110101101101011100111110010001000001110110010101011110111001000101011010100000011111001001100100000100110001110000000011101100100100110000101111110100100101010100100101100100011111100110011110000001010110011101101000011100101111000110110101101001001100110000111001000010011110001100000101101001110000110101001011011011100001001101110000111011010011011000011110010111110101011110000011101011100000010010001110010111101011100010111111000101011100101010001011001110100101111000110011111011100111110100000111010010000100000011100001010010101010001000101010011101110101011011111101000110010100100101001101000011110010011101000111010010101011111101000011110011110000010000101110010111110011010100010010111011000001100000010000100011010001000001101001000101011111001100010000100110001000100101100001011011011110010101101100010110111110000111111100101000011100111010100010101001010011101100011111001010101111001011101111010110101110011110001110000011101100111111101010100110001111101010100110010001011011101011011001100000001000001011001000001001101010001101100000011100101010001101100010110000000100110011110001111001001000011101100101000110010000111000100010001111000110010100100110000001100110101000110111110101010011110110110010111000011011010010011000000001011011011011011110000010001111100101011010010110100010111110011101000100101110101011100101000000010111110111110101011101001011010010001001111000111110111010001010010100011110000110000010111011001110111011000010100011010110011010000010011100001101010000111010011101000011110101000110001001000001000011111000101011000100010111001011010110010111111100000000101100101010011110011100000010101010010100111110011110010000110110000111110001101110000100101110000010111111111111100001101110101000101011001100011000001001010110001000011010101001110010001100010101111101000100110000010011111010010010100011111111010100110100100110110111011001010011100100111111000101111010000010011000110011000110001010100100011011111101010010110001110001100010010001100110001011111011110111000011000001100110111110111010000111111001000110011111010000000101100111101101111110001001110111001110001010011001110000110011110000010111100100001110110110101110001000000100000101011011001100100011011111000110100011011011001101011001100010010001110010110011011010001111000011010000011100110100101000101101100110100100111000001110111001000010000111100011111001--------------------- +0001001011110111011010001001100001101100110011110110101000001001000100000010001010000000011110101001010000011110011111110010101011010010010100110101011010000010110001000100100111100101011001011000010000000100001101001010110111000001011001010011110110111100010100001001110001011010111110011000111100011000111111111001110101111101100001101111111111010001000011011000011110110010010011110000001000000011100100100000111001101100001000011100010011011110111010101001110111000010010000010111001110010011111101001100011110101011110111010011110011110110111111001111011000110100110101100100100111001001001001011010011010000111111000111001011001010101011001010010001010111010010000000100101001111111010000101000100101110100010011010111101010111100110111101010100011101011100000011101001110000010100101010101100101110001010100001010010011100101110000110111101011001000100111101001011111010010110010100100111101010001001111110111000101111010000001110000101001001101010011110101111110010111111011001011001101111001110011101111100110111011011111000010001010100010001000011101110101100001101101001110001111111100011110000011101010001001010100000110111100100100100011100110111110010011011011111101111111110101100100011111001011010100001001101010110011011010001110010010001011100010001111101110110010111010001010001100111101101001111011110001100011010001111010101101011010010011011010110100001111001010111100011000111011010110010100001111010000111000011010010001010001010000101101000111110110000001101011100000101001001100010100001100110110101111001001000110100101100010111110011111011101000111101011101100010011000101000110010010100001110111101000101001010111100111011110011001011011100110011100001010110001101011011101111110000110111010100010011111100110111111011000110001100110100001101001010011100101100001111110011100110100001010000000011111111011111010011110110001001111101100111101100101110001100101111101010101010001110011110111101001100000110011001101101111001111101011011000100000100001100001101000011111011110000100110110011111011110011011011100001010011110101111010110001110101111110000110111011100001101001100110110100111101100101100110011010110001001011110101001101011110110110100110010100011011100100110010111010001110001000011000111000111100001010000111000110001101100011010100000110010010110101101101001101100111100110011100111101011011101101011101011111010110000110011001100100101100000100000011010000011101000011001010101101010001000011110101011101111110110011011110000101001110101010110100011011000000110111100101110111010011111110001100110111110011001111000000110110100011010001100101011010001011110110101111101110011111000111011111000110010110100001011110111011000001101011110111010001100111100111011101110100101100100010010001000011101000100011101101110101111111001010010111100000110110100101111011111100111110100110100001100010010010010100111011011001000011010000000110111001001000111010001110010010111010000010001000111011110100101011101111110011011001001000001010111100011100011001110000100110110001111000001000111101111100110100111010000000110010011111001001011001100100111001101011011011100011010010010001101110001100100101100011010001110011000110100110101111010101101110110000001011001111011101101100011000011100110011100101110101110101011111100100011100001101001001101000011010111010011100010110010010110110011001111001100100010000100111110011111011110101011100011011110001111110110101100101001101110100001101011001110001111010011000000110101100001010011100010111101100101101001100100111110001110010101101100010101010111110001001101000011101101110000010111010101100000101111010110110100101100010011000110011010111101001011001110011010111000110010110000001100011010011010111111101010101101010100111000110001010000010100110000001000010001100010101001010000001001100010100111101001111100100011001101000101110000111110011110101001110000110101010100110000011010011000001110111011111011000101001010110101111010100010001011001100100000010101010010100001101111001110010011011001001100001001010011011101011111001111000001011011111110100000010111011101101010110000111111110000001110100011111011000001001000011110110100011000001001011011010101000111010111001111110010001000100011111001010101100110101111110100100110100100011000010100100010101000100000000100100011000111001010110100100100001110101001110011111001000011101111111011000101000100011100100000100110110111110010011010011011001000011011110001000010101110100011010000101010110000001101011100000100010010001000000011100000001010010111010001110110001111000001100101111111101010011010110000101100110010101000110100101111101100001100010010001011001001110010000100000011100110100111101100001100101000101000010010011101010001101101011000101010100010000101101111010111010000110101010111000011010011101000010111110101000100101011110001100000001010011001000011010010010010101100011010000111000011010101011001001101011010111000101001100001101110100000101001111100011000001011010110111001101000100001111011001011010110010011111101001000011100110110001011011110001011001110011011011001100010010011001011000111111000110000000110111100011101111110100000011110100000000101001000010110101001001011100100000011101101111111010000000010000000100110101011000110010111110001010001100001001010011010000111111000111000001111010011111111110100000100111101111110000110001010101011001100001110001001000111111011001110001010000001001000001100000101111100111011011000110111001000100111100110100100001001111000000010011101110110101110010010111101101101011010011000111000101001000001111101010100010011000001100100010100110110100001111111100101000010100110110010010011111111101000001111010111101110100010100000010100000100000000100101110100011110101100111011011000110111001011100111110110111110001000010111111000011101001000000010111111010110100010100100110110110110101010001111010100111111110011101010111010010011001011111011101100110100111001110111100010011111001001101010111101100011001010111101001111000100011101000110101110101100010011010110000000000101110110011100100100001000101011110110110111010110010110100010011010110011111110110011100100111101111011010110100000001010010011001000011111011000110000000010001110110101001011101011001000100101100010100011011100010000000101001101011101101110010011100100010111100101100110111110011011000001100010111010011111101011011001101011100101100000101100010011000111001111101100001111110011101010011101001111110101110011001111010110011110011001110000101100110110001011010110001111100110010001110000001001010100110100010110001000011111010100101011111100001111000111111101011100100011001001011000001101110001101000001100100001000001000001010011110010010101001001110000010101000011010111000110111100001010110111110011111110011011000101110001000110010100000001000111100010101010111011010111110000000011110100100010001000001010000010101001010000110011011101000011110111111001111110101011001001100111101100000100101010011101011011110001110001111010000110110101000011010011000100011011000101001010110001000001110101010100111101011110001111101111101111100001001011101111000110001101010100101000011001010001011101000000111000011000001111000111011001000110100011001110111100110101010111010001101011000110110101110101001011110101101011100001000000000001001101001100001100010101110001110011100011001111110111100000011011001000110011110100100110100000111010010000100010110100100100000000111001110010001110111101101100111000101100100011010100100001110001100100011100010010111101111001100001100100010100111011001100101100100111001110110111100110010011001001001101000110011011011100101000000101011000101111010111110101000111111110110111010010110101001001010000011100111111000000000101000001101011111101100100000000110110001011000101000001011100000100110110110011111--------------------- +1000000011001101010000011101001001110110100001001001110011011001110110110001110111010011010100111010010011001011101100000101100111110101110100101101101011111011011000101010010110100000101011110110111110111100010111010000000101110100110000011100110101001101100101010101001100011010101001000010111010100100110001100011000101001000101111011101110011110000001101000001010110010111100001011010000010011110011100100011111011100001100001100010111100000001000010001000000110000100010011011110010111111111010111101001001001000101001100011000001100001000111110011011100110101001111000110000101000011011111010111001110101001000100011110000100000101100001011110100101010110010011010100010111010111101101001110110100001100100000101111011111011111111011110110110010111111010010110010100101100001000011010100111010000100001011111111011001111011111010100110000011001110011111000010101110110101011001110110000100000011100011000101111010100000111011010010010110100001000101110010000111001001111010100011010010000100011110010101000011111111100101101000000011100011000000100101001010001001100100001110011101100010010101110111001000001000101000000011110100110010000001101110111110111001000001111001100011011001010000000010010000100101101110100000110101010101010000010111110101101100010110011101010111111111001111001110111101011001110010100000110101010111001101011101101111110010111111000100111000101010001011000110000011101001001111111011101101110011110101001100000110011100101001001000011000101000101110111001110000110110010011011100011101100101101111101001010111101110100010000101010001101011111011000000100011101100111000110010001011001110000100010000000010010000110001000000011001100011010010100101001000001011000111100111101100001100111110011000101100000100010000000100100111111000000010010111100101111101110111000110010000000010000111000101101001000010010010111010011110110100010110001011111011000001101011111110000011100111010000000100011010010111101010010010111111001000001100000011000101000001010010001110011100001101110110111100010010111100001000001110101111011011000001001100111011101101100000011111111101010100111101011110100111010001000100000000000000011111110000000101010001011101111100011000011001011010001001110011000001111101100011111100100100011001111111100111011110100101111011010001111000001100100100110011001000111110100001000111000100011000000001110101011111011001100010100010111101111000101111110110100000101100100010001111100101010001000111011001100111101110000111100100000001011111100101001001101001001100110100010100111011101110000000001010001111110111001001101100111100110010010100111101000001110001110010100101100011111000100010110111110011011011011101011000001111011110111100011001011100110100010010000111000100100100010111000010011011010111010001001011110001001100011110110010110101011010101101011111010110111010100011000110100011101011111000010011000110010000001100110100011010111101000111101010001110110000010101101011111111101110011111111011011011001001010111111000001011011010011010011001101000101011110001010010001110011010111101000011010000010000101100110101010111110010011001001110001001111010000001001001100111101110111010000111110101111010110111000110011010000101101000000100100000101111011000000000110110011000101110100110001011001001010100100001101111100100011100011111010111110111001001011001010001001000011001101100100011001010111010001100011000001111110111111001010101001000011111000001111010110111110100101100101001000110000001110101010000100100101001111111110101011011011101100101010011001001100010101100010111100011000011001111001110111000110101001001101000110110111110011010111000111100011111011100011101001001000100010001111100110110101010110111001000100110110111111001110110011010010011001001001000110110001001110001101101010101001100001101100011010010011111001010010010011011111010000010010111011000111001011001110100111110101110110000111100111110100101011011110001101010100010100110011101111110011111001110100101110100101111001101011011010011001110101100111011001100100010000000010100001101111101011101001010001100100011000111011011001110111111010111110110001001001101101101110010101100001101010001111111000011010001000000100011000101110101100011110011110010110111010110011110011100101111001011000001010001101111110011010011011001101011000000111010100111100000011000101111110111000110100010001111000001101001101010000111110011111000110000001000110110000011101001010111011010010110110101010011011110100001010001100110101101010101001101000101111100011111010010000010110001010010110000100010000011000101111011001101101000000011111011100111010010111110110111010011000001101100111000101110001110110011001110010000011110101110100010001101101010110101110001010010110101001110101111110111111011000101110110110101010111110100101101011011000001001001100011011001010001010111101111111011001011101100110010111000000100001100101010010000111000001001100110110100111101010001101001100110001011101001101011001001010000111001000001011111110111101101010101100000001011100000111011000101010101011101001110110100110010110110000110111101101000100111010101001010001101111101001011001001100011000101110101011011010001110010001001010101010110101111101100100110011001100011011000100100101010100000101110001010111101100111010101101000101000101001111101101010110010110101000110111010101111001101101100101101110011010111001101101101011100100011001000111010100110110101101001111110100111010001011011111110010000001111011001110111010001011100100101100011011101110101001101100010011010111010001101001000100011101000101001111001100110000000001101000100010101101110010010100111110101011010000100011101011111011100011110011011001111111011000101001101011101110100001010101111110000110110100001111001010011100101110111111010000111010101101011111010100111100011001000000110111101110001001110100101101011110001001011001000000001101001000011011101100110000000101001100111011011101111000101011000001110100011110111101000011111110100010010110010011011011101111001000011000000000101110111000111000111100101001011110000011010011010101000110101010011100111011100110000101011001101101111110110111110000001010010100101011000010110101000111000101100111100101011101000000110011110110111001001010011011111010100010111111011110010110111101001100001001110110010010010011110101010001101000111111000111000001110010001000000100111011101001011110001000011010111110010110101001101100001100110111010011100011001100000000010010100110110111001001000110011100100010011111111000101111001000101010011110011111011111011100101111110010001000001011010111000111001100111010110101110111100110100010110010101100101001001010011000101100011000001111010000111010000000000010111101100111001000001110101010011101010100110101111000001101101110110110010100110000101100011100010011011011010000111011100011000101010000110000011100011010011010111011010111111101000000011110010001000011111010010001011101011100010011001111001001101110010001011101101100111010100111010111100010000010101001000101111011111001101000100111011101100001111000100110101111111111000000100101110101111100100111111001010001110010100011011101000011110101011111011001111000111101111010100111101110011101000101111001010100111100110110111000100110101000110101010101111100000001000111000010111011001010010111101101101101011000000110011101010000011001100110001011111111000001100111000001110010101011010101100010100011001110000101101011011011001100010010101110111100100101101110011011100011001110111011010001010000001101111001011111111000111001110111000100100011110101110111000000101100111100110011001000111100010001111100000101010000111010000011111110001000110000011000111010000110010111111100110010110110010011111110001111000010110001000010110111011100011001111111110110110110000110001001110101010111100--------------------- +0110101010001101100011101100100111101100110011010101001111000111010000010000101001111101110100010110000110000010000001100100000001001111011110001111001000010101011101010101110010111100001100000111110010011111111111001111000110000101111100100100010000100011101010001000011011111100111010001010101011001110001111111111100100011001111001101010111011101100010111001011011110001001000010101000111100010000100100001010001011101100101011011001111101001100010001000000111111011001010001100110101000010101010010100000101001000111011101111101011110110011001101110000101111110101001010010010100111100000111101000000000100110110001001000111100101101001010100100111111010110011111001100110110110010100011001111111100101111111001111111100011011001101001110111111001101011111010011100011011101111110000110111000011001010010110000101000101111001111010110100111101111000011010010100101010111011000111010101111101110001100010000111001110101110101000110001001101000010111001100101011001001011011000001000001010110101000000101110011010101001000000011010100101100101001000011110001100010010011001101101011001001100011110101101011000011010110010010101111101001100100110110011001100010011011011000100011001000100001000111001011000101111111101011000110010110011110111101011111100110101111000000010000110011110100011010001101011001010110111100010101111001011110101111101010111010101000101110101011111000001011000100001010001010111110111011110110101010110001101101001000001111011000100010101000111100010010001011101101100000011001011110111000000100110011000100110100000101001000011111000110110010000011001000000010110011010011100111100010111110101110110111101001001111000101000001101001001010010000000101011101101001010111101001111011001101000010111001110110100110010110010111111100000100100010000010110100000110011100100110001110111101001100011001100100011001101111000001111010101101101011010111100011101000110111110111000001000100001001110010101101110101000010001011010110100100100100110000011111001101010100111010100110110010111000001111001000100011011011111101110110010111110101011110100001111111001000100101110010111110011010110000111111001010110100110010010100101111010011110110111000101000100110000000000010101111011110001010010000001010100100111100101000100010110101011000001010101001100100000110010010000001001011110101010111110010100001010000101001111011110100110011100111010000100000100111110101000111110111100101110010000011001000001010010000011101100000100000011111101101111101010111000101111111101001010110101101011111001010100101111101011011100010101000110111001110110010111101110110111001001101010011001000110011111011011111000000001110111000110000010000011000100000101000010110001000110011111101100111011001101100100010000001011001100010011110110000100101000111100110111101110010000100111111111011001010001011100101101000001000010000110010010100011101100111001111100100111110010011100110010010110111000110100011101000110011001110000010011000110010001000110111011101101100111001010101110010010000111001010011100111011000000111101010001010100000010011111011010000101000011110101101010010111110010000000001111110111001000101001100111111011001010111011000111010100000110101110001011010101010101101101011000110000100111010100101011100010001001000101011000111010010100010111001100001100100011111000001011100100100101110000001100001100001010010001111010001000000000001111101110110010100000011111000100010111000011101101001111011100001011110010100000111001100111101000101110101000110011110101101101110110110100101000111011110100001000011010100001010011100001011000000001100111011010100000000101001000000000010110100011100100110110110010001100100101100111111111100001000000101010011001100001111011101011010101010001011010010001111001001100110001110011110001011010101111111111101110111011000010000111001011101101110110111000111010001101101101100101110110000111001010011111110100100110100000111001100000100101110001101100010010100101100110000010001001101001000101011111110010101111001100101110011000101101111101001010110100111101111111101101100011001101100001000110011100101011000101001001110001001110100010100010001111010001001010010010101110000101111011100100110101010111101000111110010011110111111111110001010011001010110101000110101101011101100110011110110000101011000110100010100110101111101011010100101001101000100110000011001001011100100100001011010010011101100001111100101010011000100000111110011000000011100100110010000011000111001001011110000001110101100001010000001101101001011100001000010100111000011001001010111001100100011011010100000000110101010000101010110010100001001001100010111110011001011011111000011111000010011001100101001100101000010111101101010110001001100101001000110100010001110010111011100100000001111110100010010101001110010100110010011011110001101101011100101011000001100100011110010100000100110101011001001101100111100100011010000001110011110011111100010110001111011001011001000000000101010001001101110001011011011011011010111000111110111100100011110111100111010001111011000111111100101010111111101010011011010101100111001110010011110110111101111100111111101100111001000010001111111111001011011100101110100001010000100000001101000110110101110100110011001000101100010111101111001101001000101100000100110101010001010001111001110100001001100001111011010011000010110011010110001110100001100100101101000111001000011100011111000000110111110110011101010101111111010111011001100110001101101001001001100111010111001000100100100001010000111110111001111100000001111000111000000011001000110111001101101000011101000011010001011111011110111111100010000010110100101001010101010010001111101001010001000010110011100000100100000010001010010001101100010101100100110111010101101100110111000011010010101011000011000110100101011010100110110010101011011000100110110100100110010111100111011010001101100100100111100110101111101110100111000011111110010011101101111011000100100110100011011001001000000100011101011110000000111010000101001010011001110010110000101101111000111001110001000000101100100001000010001011000101110010111010111001000000100111011110111110001010001111011011100001011110001100100011011001011100011010111001001011001011110101100101000100010010100011011101101111101000110011001000001001001001110110100110100101001011110111000011000110100011110000110010010000100000010010100101010110000101010110001010011000111111001111010101000011011110100001100110101010100111110000101101011101101001011011101010001000111100110100111100010001011111001000001010100111100000100110011100010110101000001101011111000100111100001101000000111101111000011000100110000000101100111110111111110000111101100110000110100011100110101111010110111100110010000111111100000101011010111010000001100110010110110000010100001110110111001011011100010110111110010010000011000110010000010010000010011101111111001100100000011001001011111000110100111111101100110101010110000110110100100110100101000000111010100101101001001101100010100011001010001001000010111010010001100100110101111110101011110001010110011110101010101110111100110000100000100010101001100000010101011011001000011110010111001101000000000101011101010000000100110000010000100101000110001000100101101011110010011011111111011011000010000100001001100111011100110011001001001101010111000110101100010011100101101010101001010110000001100011111011100011010101100011000001101011011010111110000000111100000011011110101000100010001000111000111011010110110011100000111000100001100001111111101110110010001101110011001011001101011100111011001110101111100010100100101110100110110101101010100011110101010111101001101000100001100110101011001101000110111001110001111011010101101011101001000000010101100011001100000010011000000000110000111100110001001001101011111000100101111010111101010110100001101100101110110101011100--------------------- +0100011100101110100101111101001011110011011001000101010110011101111100100000001011110110001010101100011110000110000111010111000001110100011111000011000000110100010000100010001010000001000100000001011001110011000100010000011001110111011110101001101110100101101101010000010111000110110001001010100010111001101100110011111011101101000111011011101110101001110101000011100011111100100000001111101000000101101111001000101000011001101001010101111111010000010011010100010011111111011110000000000110101001000111100100001110001101100000011100010110111101100011111111001011011010101001001100110101001110011010100111111010101010100100000010101001001001001100111000101100100010011001110110101100100100000010010101000000101101101000110011001100001010001111101010000100111110101011110101010011000100101101001001100000110110101100011010001100001010011110111000000100001000011110110110101000110101001011101111000011100111110000011111010100110110101000000001111111100000111011010010011000111001000001111111111000101011000111111101110100000001110101110110010100101111001011101100001110010111001011011110100011110110100111001000101000111111011101100110101100100101101100110110101100000011100011001111101010010001110010000011000101010110110111001100010110111100010010011100100001110111110101001011110001011101001000110010111001000101100011001010100011100000011000010001111000111100110000000011110101001111110011010101111110011001101010011110011100001011010111001110010111011000000111101100000101111001001110101011100111010000001000110110111110101111110100101101110101111101111100100111100010100111011101111110000101101010100010111110011110100101100100011100001111001010010110010010010001100011001010001001110000000001000011111010110001100000000110111101010101001011110111100011111100111000111111000101011010101101100011011111100010111111001101010101110111011000111111000111111001101001101010001111000010100011111001111010001110001101001100010100111000100100010110000011011000001101001110000010001101110000000111101000100011110010110010101101010011010010110111010101100010100101111111001100101001010101111011100100101011110101111000001000000001010010000010101001001001111110011111110110011010100101011100001000111001011110001110100000000010000110111000101011100110011011011110110110110001011000110001111111011100100011010010000100000111000001010111101011010101110101110100100111000110010100011000011001000101111111001011010000011011111101100001100111010101111001001100001101110101010001000010000111011000101101001011001100001000001001111110011111001010111010100001111011110000101001110100100100101110100011110001110001001000010110011111100101011000101101101010001111000110011100101011101101101100110101001111001111000100011010001101011111010000110101001101110000000110011101001001011010110000111011000011111100011001100001110110101000010011110011111101110001110010100100011101000101000100001010001000101010110100110000010110011000001101100110101001010010001001111100100010101110110100111010111001011100111010010001111111110010100000101101110100011110100010100100011010110011100101110011100111101001001111110011000000100101111100000111000111001000110101011010110011011101101100111111100110100010110111111101110100001100100110000110101011111001110100100111100110010000110100101110001111101011000010110110111111111111001011110010001101101000100111010111100011101010100010010000010001001001111110000101101001000110101011010100100101110100100110111000101000000110101101110101001110011101100000010010001011101011000111110110010010001011001101110010001001010110101100110001100111110001101111110111101011000110010110111011000101011110000100000111110010111100011011110100110011001001110011000010000010110101011110001011010010111010011010110001001010101110111101101101101000100000001010101100001100000101100111001110100101110000100010011111001100000011101000010100000011011001011101100110100100101011101100001010011111010011110100101001100111111011000000000111111100100011101110000100000101001110010100111110100101000110010111110001110011010010111000110011001101101101000101110101011010011011010000100001101010011001101010110101000000000111011001001101000111110010100111000010110111001011001100010000111100101110101110110011111111100010011101011000100010111111001001111000111110001011100101000011000100000010011110011001011010010000101011010111000010101111111100010011110011100001101111110000000110011001001101111101101001000001010000100111101101110111101110001010110000010001100001100001001010001101000011101001110101110100001000011011011000111100101101110111000000000001011110001010100111100001011110001001101000011011101010001101111111110011000101001011001000101100111100110001000110100010010101001111010110000011011001001110010010111101100111101100011110011010011010011110000011010001000101100101100011011100101100111011000111000001110001100100100001000100010100101011100100011001010100111100011101100110001110010101100101001100000001001110010000111010101010110011011010011101101000110011101000101111100001001011101000000010010001000011001101010101101000000000011011000010101001101110011101000111101111010100111000011100111111111001001010001101101101011000001011100100001110110101001111100100100000110011011000000000101101100001010000101001110000000100011001000011101010010100011100111111001111001001010101011100000000010101000001001111101100111110110100111001011111000010100001110111101101000010111011101111000100100011110100000011110111101101110000101101000001000101100010110010010100001001101010110110001001010111111110001101101000001100100110101011010001100000101110010100110011000110101011000000001101011010100101110011111111000101000101100111111000101110011101010000010111100100101100101110110010000110110011001000001011100000110110001000100110011111010110110011010110111010010100000000000001110000110011001101010110100011101011100000110100100010100100101111011001111000011010010111101000101000001001111011111111111100101000100101111110011011101000111010011000110100101011111001111011011011000011110100010010001101000010100010010100000011110010011110001100111000100011101010101010101110001101001000011011010001001100000010001111100011100000001010101010100111101101010001111010100100101100010011001010111100011111111011110101011001010101110101110010101010111010001101111001111110110011110011110010110110101100110100001000110010000000101001100101101100111111001001100101001100100101111011010011010111110110100101110011101110110100011100011000111011000101000010000111001010011010001111010011010101000011111111000001000011000000000101000101100011110111100001111010101101100001001110001000111000001000111101010101011001110101111100000110101111001011110011000010101110101111100000110010100101110100010010011001110001111010011001000110001110111011111111100000011110010000100110110111100100110010101100010101010000010111000101011000111011110000110010110010010101000110111010011101000000000001011111111100111010001011000001101000110110111000000100001010100100111110000011110110101011110111100100110111011010110110000101111100110011000111011010010011010110010110101001101000110001001001011001101011101111100100000000000111001001010100110110001100010001101011000100010001111011110101111011010000010000110111001000111010011011000101111110001001111010101010110101000111000110101010110000111010111010011100011101101110010001111111010100111101101011001001001000110010111000011011110101011001001000011100011001001000110111100001010101100110101000010111010100100110011000011001101111101100011110000101111101111101100000011000110111000111010110111010011001111011101000100110110011010100011000101001010011100001111101101110000100001111001111010110111010101011111111100011000101011110100111010110000001000001111000011001011101111011111001111100110000001111100100101--------------------- +1000111011100100100001011110010011101001000000010001111000000111010000001000110001100010000010011111000100111000101101111101100100110100101001011001011101101000000100100101000101101001011110011000010000000110001001110101001100010100100110010100101110011111011000011011001110101100011100111111101000110001111110101110001000101001101111101011000100011101010011110111110110111000000100101111100010101100010001000110011100100011111000011101101110101110110011101011010110010000100110011000100010010110001010101001101111000111001010101111111111111101111001111010001001000101110100010111000010001110011110000011110011101010110101101000000110101111100101010000001100100010100011001000011000101011100010011101010100101101000000110000001011101100000010100011101000101110110100011000101111101100101111100000000101101101101100011101011000100110101100001111100111111111111100110101001111010110111000100101101000000100011000000101010101100100110100000101000011010010000111111100111001100001100111110110101100011111101110001011111011010111101001000001001111001011011011110100110110111011001000110010110010010110001100011100001000101011001111001110100111000111101110000100101110100001000100110010100100100001111111011000010011011101100111010110110011101011110011110100011101001110001100001010110110100110001100011011110100100101001110010101100101011010001100010110110011100101100101100011001111010010110001111011101011111111111011000101010000100011101000011111101110010011011011001101011100101101111111111001100101010011111100001110111001000010000110010010101101100111101111001000111100010001000110010000101100010100100011010000110011101011100011111000101100000001011100110101000010110001101010010001110110100101111000101101110110101000011001100011110011111111101100110111010010101100001111110011101011011001101111000000010110101101011110100111000100111011000110100000010111010101100001011101101000111011000001101110100101000101111000011001111110111100111010010101001010011010010000110111000000001010011101111011001101001010111101000010111001000110101101111111010001001000100110100100101101100101001010101000101110000001011011100000001010101000101110111010101001110101011011111110111001010010011011111100111100010110101011100111001001100111000001000101010100000001110111011111001010011111010001100100010001001110010101000101000100111001110000000010100101111100111001111001000100101010100000001110100110101111010011010110010100111101110101110000001111100111111011000010110110111001100100101100111100010000100001111110001100001010001111111110100110101011001111001011011001011010000100001001110111010000101101010101000011100111111011011100100011100001001010101011011000000110011001011100000011111011000000100011100100100100100000011111110111010011101100010001100000111100011011110111001111000000100101001110010101001111110001000011010101011110011101010101011010100111101001110110100010101100001100111101110001101000101111111011010110000100010001010010111110001001010011111011010000111001001111100011010111101000111101111001010000100101101011010010100111100011011101111101111111110101001010001010001011101100001011010000010111001101110010101100001011101110011000100000000000111011101011111011001001101010011010100110000010001110110010101111010111110100011101101100100011010110011101111111100001100001101100100010100100111001110000010101011001101001111100010010010010001001010001001100101111101101110111010110010110001111111010010010110010110000101111000100111101010101100011000001100110010000101011000111001110000000101011011011100101110001111010010011111100100100100001101011110110010011011101001001000101100111110010111110111110001010110001010101111111101111001000000100001011100111111111111010011111111000000111111000000001000111111110001010000010101010000011101001000111000000111101110101001110100100101110101011100001110010100111010011001110010011101010111100001111101000101101100111010001000111101100101101101011001001011101000111100010111011100100111111001011011010011001000010011001100111110000110010000000100100000101110011101101000010000110010000000011001000001000001110000101111011111100111001000110100001010011000100101100010011001110001001000000100010000110111100001010001110101011111110010100111010110001010000011010111010101111110110011000011111011010101000011010101011000001100111101110101101000001000111011110101010000000000101110111000101001111010101000101100111110100111111011111110100100010010100101011001000110100010100110010110000010011010111010001110101000100101101000000101110000111000001001101011101110011101101111010001100000111111100111011000100100011011110101110001101110100010110010110010100010111111101010000110000011100001101000010100010100010111110000011111001001001010111110000100110111110111000011011010011100001111110110010000011010001100000000011011101011010000101011100000101000000000011010100110011011000111000110110110100101000101000001101111101111110000011001010111010110011000001000011001000010000001110001000110010011100000011001001000000110110000101001000011010010110010101001000100101110110001101111010001111111001010000000011111010001010010010011101000001011100000000000111010011010010100111101101101111001100110010111010000101101010011100011000011001000111101111110001001101011101111010001001001111010011100001010001101010011111110011110000110110000101000010110000000110110000101000001000000101101010001110000000010010011110000101000101010000110110101011100110101110010001011001001011101001101101100000110000001000101000001101000010101101010011101001010011000100001101111101000100000111011001110100010101001111000011100111110101010101000000110011111011001110000100000111110010011100101001010010100010100111011011000101110111011010110000000110100000010000100111110111001001010011000110001100001101110110011011101100010001101100100101110101110111100101010101011110111110000110001010010110011010011111000100101000111010010101000101101110010000010010111001111100110111001010010010111000110001110111011100100001001110110100100101010111000111110011111111000001111011100001010100111010110011001111101011110101000111111001001011111001100000110110100010101000111010010111010100100110011011001000110010100101101111010010100001001011010001001111110111001000001000110010101110100110000001100011110101111010110110011001011110100001101000011011101000100011110101111010110101000001110110011001010111001010011100001000101111110010101000011001100000111001111001010110000011110111010000001100011111011111111011011001001100101000001001111000011111110110101011100000101101011101000101000000101011100111110010111011001100111010010110001001010000100011110011000001101000101111110011010110010110010110110110001100100001011110110110010000011101001011001000101101001110011010010111000001100110111001001111000011011000101000111010000000001000100101000011011011001100110001011001011000101010001110001011000001101111010100110101010001101100111100110000101010001001110101000110110100100011010010001101101110011101111100100101101001000000011000110110011111010000000000110000000111001111101101000011101001010001101110110000001000001011100000011001000110110001100010000000010110110001010001011011000010011101000100100111000000001101000001100110001000101100110000110011100110101111101011111111010001110111100111110111101010111010100110111100001001001001110000111100001000001100000100111100001001010010000000010110000011111010010100110101100100011011111010111111001010011001001000011110100000000110011111001110100010101110100100100001100110010111110001010010110000101111101110111101010111010101010101001011010101001101100001011100111111001010001111011101100101011011111010011010011011000101111110001010001100100010111001011001001100000000000001001111010100000000010010110111011110100111101001110101011110110101000000101000110111011--------------------- +0110110001101011101100001010000000101100001010010000110001101111110010000101001000101111000011100100110110001101011101010011011100110101101110001111110001010100001101001010110001100011100110100111111000100110011101100110110000101000001011010010011101100010111101110000010001101010010111110001110000011010001100101010110101010100000110100110010011101001010111100111101101100010010010010100110101011011101001000100101000000110001101011001111011001011000100011010001001111010001101110110101000001111100000000000101011111000011010000111001100001110000010001001111100101110011110001100100001001111100011111111110111111110011001111101100001111010100100011000001010001011101000011111100100011000001010001100001100010111111110100010001110100101000100100111101000100100011110110010000110010100110111110000000111011100000011000010000001010100000111010001011101011100010110111100101011100100110000000110011110010010010111000110010011001000010000100010101000111010000011010101100000110111000010011101110001100011101001000100011100010100111101100110001110011001001010000101010010100000011110100111001010100110000010010011000011011101011001111010010101000110001110001101010100000111100100101101100100111000111011010010101100111010010111000001001011110111010000010111111110110011010000110010011111010001010110111011011100010011111010110101111001010000010110101010101000011100111101000001011000110000100100000100101011000111101101100000001110111101011110110101100001000010011100011000011000101111100110010001010011101000111001001100100010011101101101111101110110101001001010100110110010011100110101011111001111000101111001100011011010000101110000001101111101001001111000110100101100011111000001101001110100001011110011010101011110100001011111100000111100001011011011011000111011001001111000110111101101111110000000110111001111101111010011010010001010111110001101001100011011001100011000110010010101101110010111001011101101100100000110010001111001011010111010100100010001101110011011100011011100001011001001011010101101010011001100110011101001101001101100100101011111100110011100100000101110001000101000111111111100000111010000010001101101101111111001100001000110010000000111010001101101001101010001011110000010010110011101111110011010010110010100000011100010011100110010011111010110000111001010100010010100100001000110100110111011010000111011101111100110101001000110011000110011111001000000110110011101110110100010111010101110111111000111110001110111100100110010010110110111111010101001001000110001001000000011111010100000001000100001011010111000011100110001111000101100101010110000001011110010101101100101000011000010000000001000100101101011010100111111000100111001011100100111110010100111001111011010100001111110010001010101100001101101110010010100100101111100100011110100110010010010110011110111100011010101011100010010101100001010111101001001010000000101011110101001000100101011100101011001110110001111001001101000111000001100011100110010100101110110010101001100001010011000001010011110111011100011111010010001111010100101100001000111100101111001011001011010111100010010110000001001110010111011100001100111111100000001011110101011100001001111010111011011110100011010001011000110101001101011001101010001001011110110000101101000100001100111111000111000000000010010000101110011010101000000010111110100100000001110000000101001110011100010011110000011100010011101001101001001110100001110101011000010010010101111000110110010110100100000110000111001010010100110111110000100011000110100111100010011000111110001010111100001110110110111100010101101011110010101110100001110111010010100100000011010100101001000111010011101101110100110010010011011011011000101100101110110010101101011111100011111011001110101100001011001000111011000100110110011011010010000010100001101111000000100001100110100110110111110110010100010001000010110110100010110001011110100110111111001100010101110001001011100001010100110111110100111010100010101101011100000100000000001001101001101111001011001010001010101010001110001110001100010110010110001010110101001111000000011110010001011000100110101011011011111100011100001110111001000001111001001110010011111111001011111011110111000011110110000110001001010110101001011000101010001101101110000011110001010011001110001101100011100100011101000100011110100010100000010001110101011000001011101010011000011000010010101101111000100001111111111010101111100111000001101001000010111000100111011100110000100000100111011001000110000001111011110100110100111101111010001111110001100100011010011010001111111100000100110111011111110111001010101111001110100011101111100000101001000000011111110010100101011111011111101000011011110010001110110101010000000011101111101011101011011111110110000000110010001111100110111010001000010010101001011010001001011001101101001111111110101111000111110001100011001110011100001100011010011111001101010100101111101011110100111001000001011101000100010010001100101010101011101111110010001010010000001000101101010010010101011100111110111110101111110000111110011110111001110001011101110010011011111100101001110100000001010100110011101011011101100011111000110000100001000011010111110010101101011001010000001100001100010110000100001100000101101010001000101011111011011101011110010100000011111101110101001001111000010101011000001010111011110110000001110110110111011000111100000010100000111001111010101001011001101100011011000001101010000101000101101010001110010100111110011110110011100111000001111010010101011100010110111001101110100110000000000010110010110010010000000101100000000010111101101100000001010000000101101001101010000100011011011010100001101111101111010101100111100000111011100010001001001110100000111011000101100111010111100011001001010101110011001010011100110001110111101010000100001000101011000000110110110001000100110000000000100110011001001010000111011110101111100101001100111010001011111110011110000000000111000011011111111100101000011011001011101101101110000100111110001000101000011101010111000010010010100100111000100001011001111111010000010100101111001100100011100001110101000100011101000110001000100100000100011000010110100000100111001011011101101010111000111011111010010011100101100111100000111000110110111001000101010010001001000110101111010010001000010011101111011011001010100000101000001011101000111010101101000111011111111111000000011001000011010010111101100110101111100000110001101001000000000100011001010101100000000100110100000011010110011010111001011100011000100100101101100111100100001011101110001010101110101001100010000111000111100000000110001001001011010101001101001001111001011111111110101011101001001001011101010100010011111110001101010010000000010111010010001110101100000100011000011000100100110001000010000100101111001001101101011011101110111101101101011010011011010010011011011001010111010001110101100111010010110110101100111100110011100010000001111010011001000101011001010111010011000001001001101001000101010000110010101110000100110100110001111111011111011000110101101000100100100111001001011000010000001010110110001110000110001011001000011011111100010001011011100110010100101101001101000110010100001001001110101000100010110010110011000011101001101100011000000111010101011001000011000010001101001000000000011110110000110100011101101000100101101101001011100101001001100000111011000001110011100100000001101000000011010000111111111111101100111001110101110011100001111110000011101001010010000101111100001000001110110010000100111000111000011111000000011000100111110010100110000010100100111011100101111010010000001101011110111010110011010010001101101101101101001110111010101110011100000000101110010100111100000110010110101100110000000100000111001000000000001001110111001100111111010110011111001011100010010111101110001000101001010001110000101010000111110100111111110010110100001001011111--------------------- +0110110101001100110000101110001000100011010110101101100010111111010000110101100001110001101000011110011010100111100100011100101001001000110001100100011111000111100101001010101110111101111111010101101101000111110011000011011101001000001100101011111111110101001000001110011100111010010000011011111100001011010111101000110101001111110110101010101001001010101111011110000000111000100100010110111000001110010100000011111011000010011000010101010111011010001010111010101000101000000111010000010111110110101011100011101111010000110100101100111000011100010110100000111101101011110111010101110111110000011001001101000011101000001111011010001100100110100011110011111001110100100100100100011110001010000101110100001111101011000100101010100001110000010011010111001111010111111010011001110000010001001011111100101101110001010011100100110100001110100110110110000000010001101011111001000010110010101000000011001101011110110000001000100110010100101011010001110010111101101101010100101110010110110000111010001111100001111101011001101000010001011010110110011110110010010010001000100101010011010010110111110010101001000011110010010000100001100110000011011010110000001011110000010100110111111101011101100011000011100001000000011010110011011000100000100100111010010101101011001110110000100110010100100010101101010110010010110100011011011000000011101001010101111011011101111100111010100110100010110111001100011100000011110010100110110101101110011001101001001011001010011100000110001001110110101001101011110111110110011111111000010101111110101011111010101110111000001111110101101011110111011011110011100100000001100101111000110011110010010101011111100111101100111011010111001110110001000011101010110100011011100001011111111011111100000010101101000110011101000000100101010111001011100010010001101011011100110101111001110010101011010101100101111111100000100001111111010001111011001101011101101111100001111110011110111111001111001000100110100101110011110110101001110011001100011010001000111000110011100000101000001010011011001100000011011111100001110101101111100111000010011110010101011010100110111111010011001101010100111111110001010110010001100110001100111001110100100010000010100111101100100000110110101111001000011101111001110101000000100110001111011111100111001100110001010011101100010001100111001010100111100111110100010111101110011100101001100011001010101010011000110000101011001101010001111101110011111101011001001100100110011100101000101111000101101100110111001111100011100001101101001100011010100111100011101000000110101111100111111101010110101111110101101100110110010001000100001111011101111111010110111111110101110011101011011111001111010101101110011000001111100010100111100101011110001010010110000111100011100111010000101100010001010000001101011111011110100100110010010101110100000110100011101110100110100000011011000010000001101000100100000100001100100100000000111111000111111110100101011001011011010101111010101101110011100010010101101011111011001111001100111100111011011110001110010111110100111001101101110110011110000111101100110010010100011011000001100010101111100010000110101100010111001000111010110100101010011111011010010011111100101011110101111010000010111010010111110011100001011101000011011100100110101100011100000011111011111001010101111010100110000000101110101001011011100100110000101101110111011010010010101010011111100111011110101010000000011000101000001101101000100110101110111110100001000010011101110101011100000010011010111011001100000010100100000001101101000110101111100011101011000100001001010010111111101000000110010111000110001110100001101011101101110000101101110100010110010000100100001101100011111011101100001110111000111101110001100100100100100111101011011011000111011100110000101100110111011100110110010100001001001011100011010001000001100100001010100001111000110110110110001010001011100100110000001101111010111110000100001001010001111000010001110110011101100010111000000001100100110001101111101000101000110100000001101110010111000100011000100001111101001100001011001111001010010000111001101101111010111111001110010011011100101010101100100000101111000100101010010011101000111010010101101000001001011000001000111001111110000111110110100001001000111111011001011011010001100010101010010100010010010110110011110110001100011111011110011011001011110101101110010111010011100011101011000100101100001101010001100010100111111111000000000101100100101010101111001010001100100101000111101011010101101110000110010011111111010010100010101101010111110011101100011001000011110100011000100101100110100111010101011110010010001100100001011111100111100011000001100101000111100111001000100000100100001101010101000110100111110110101011011010000110001000011000010010100101100110111100001101001000010001010110011000101000011011110110010111010110101000001100110111000011010111010101001011000100000011011000001101001100110111011111111001001101001111110000101110000001011100011100010010100001100010111001110110000010010000111101111110011011100010111010000111001101100011111100001100001001111100101110100101101100111101001010110101010010110100000100100111100101101011111000100100111000111010000000110110000111110001001010011110101011111011011011101101111111111111101101010101010010111110110010010011111011010001011111100111001000100100111011001011001110011110100101000111111111111000110101111110001100101111000100000010101111100001101010011010110111111101000010010111001010010100001011000010000011011100011100010001001011100001110101011101000101000111110100011001101101111011000000110100101100100100111101100000111010000000111011110111001100000110110111111101101010110001111111101001000101110001000001101001011000000010001001101001000011100000010101100111110001111010100111001101001000010101011110101111111001100010111001111101011000110111101001010100000011011010000010000001011111000110100110110111101001001011011110111100000110010000001010000011110110000011100111101001000101001011100101011011111001000000010111111111110110000111010010111000110001001100010111010111010101000010101001010001101010111011010010011001011110011001001011101111111001110101010100111100111001000011110111111010011000001110000000100000100001000111100110011010010101101010111001100100001110101001000001101011001101110101001111110101110010101111100110101001100110000011011011010001101000111010101101001111001101010100100101001110110010100100010001100111100011000010001111011001100101011100000100100111101110000000100110110100110101110011111000101011000010011110110011011000110111010001000101100010001110010000110100000111010101011100001011001100101001001100001100010001100001101101111101111011110100011010011011111010000011110101001111010001000010001111011000000111110001001000111000111110110100011110001111011101110011011111011010001100000010100011000111110010011110000001011111011110100111000010111010110000001000000001101100010010111100101000001101011011110010000101101000001001001001100001010100100101010011011011000101100001111100101100110001001011111110000101101111101101100000111101001000100111000000001011110010001011011101101101010011110001100011111011010010001101111100000010110111011110000100010000001111110100001010000111110110010100101110011001111100100101101100100111001001110110101011000001110000001101110001001011100101111100011100111110001011111101111101001001101110011010110001000011101001000100000111111100110011010010010100110110101011101010110001110111010000010110100001110011101100001110110010100011000100101100010110011000010100110011000101101011111101110101111111110111010001000110101111001000000110010111110001100101110100111100111101010001101010100010000111001101101110110101011001010011111110001110111001100101111010110111011101111000100011100101001101100100101111010010111010011100110111111011100010001010100001001001011010100001100011110--------------------- +0101011101010011001101111100011000101011001011111001000110000100000000010001011011101100010110000100010000001010101010111110101000101100111111010101100001100110000111100111001011100110011000001001010001010110010010001010101101101101110100111111111001101000110000110101111100111000010011001000111011000000000100101001001110101110110100110010011000010100111010111110011011001101001001001010101111001001101000000000110000101101000100001001011011011101111111010111010101010100000001110011000011100110100110111011000010011011001010010000100101001111101101001111110010001000000101110011011011010001010000011001000000100000100110101010110010100110101101001001000110111001100010001100111110001101100110110000010001101001000100011111101001110001101000010110011110111001000011100100111110010001110011110011010100001110011010010010100000001001001001100100110100101000000100101111110010011111111000110011100000000100010000001111000101000100001011001000011111111001010010001111001011001110011011000101110110011111100011011000000110100001001101000101101010101101010101010010100010010101100111111110001100001110010110101100110100001101001101000011011100111111010100111101110100000100110001000011000000000000001011100001111100010010111101101001000110111111010110111101010101111100010111110101101010011001000000100010111100111110001111011011011111110001110001101101101010110111000010111001000100101001101110100000101111101101100101100111110110001101101010011110010011101011100011010111000110110110011110110111101110100101101011111110000100010011011111111110100110001001100011110011001100010001110000100010110101101000100101111010001010001101111101011111001010000101111110100110000110000001000001101010001001011011100110111001001100010111100111010111100110110111001011010000101101111000111110100110000010011110001011011110100101000101000101000110011100111100110101101001011101000010010100110010011001100101011011000101110110110111000101011111111010011110101100100011110110101000000000010101001010001010011111101100010000110001001101100101010011101100100111001100010111110110110101001010100101100001110111001011100100010111011111000011111100011101111101100100110000001100001100000000011100011110001101111100001110111000100110011001000101001000011110111000000011100001001000111100001111010110010001110101011001100001010111010001101000010000010011000001100010011101100111110100001010100010110110111110010001100010010111011010100001111010111001111111111001110000000100001011011101001011101011001101100011110011011011000001011100000111001100001101110001011110100000000000100111110110100101010011010101101111101100101111100001001001000001101110010011011011110000100011100010110111011101101001101001110010101010110011110000110010101001011100011100111110010011111001010110111010000000111000001100000101001001101110100001000001001010010111011011100001011101101000010011100011101000111011110000000010100111111111010011100000111110000010011110011101111110100001101110000101101111101100110110110000010010110100000100000011111001010101010001010101100100111001100011100100100010100100010111011010100010010101100110001111000011111011000011001010100000101011110001110000100111110111000010001100100010010100100001010001011011100110101000010110001010001001011111011011110111000010110101101100010001101101100001010110001110111100101001011101101110111001100111110010101010101001101100010010111001111010001011100010001111010001111011101110000110101010111011010101011110110010001000111111010100111100011101010110000010111010010011001110100011001001111010000011000101010111110000110000011110011000000001000000001110100010101001011011001100000110011100100000111000111100000001111001000111100101111110000110011000111100100001101011110000011011111100011000010000110000111110010000010110000010100110000001011010001010100010110100011111011101111100010111000100111000101000110010100000011011101111101000000100101010011100101100110101011110011001010010000100011011000011101101101011111101101001110100000110010110110110101111101101101101000011010110010001111100001011010000111000101001111010111001001100011011001001100111110001000001011000100010101010011110111011000010100000010110101000111110010010001110110111000000101101101111000010011100101010011011101001011110110111011011111101110001011011011110110100010011010000010011011100100101001110111000011100011000001000001110111110101111000001010001100101011101101011011111001011101101110100001110010001111010011011110010010000101001010000100111011010101111001100010000110000111001001101010110010000111101010110110101011101010110011100100011101101000110110000110001111011011111101111010111110000100100001101100010100101011111100111010111010001001000100100000100101110101001110001010001011000110010101000001010100010000100100100010001000100111101111010100100001010000111111000010010000101011000101000100101011100001100100110110101011101100110110101100000011010101000101010000110011111110110000110101111011011010000100110101100000011111101010110111100001000110001111111001001011110111010011000010011001001011000111001011110010011011100001101110111100100101010010011011001111101101101010101101101100010101001100101110001001101010000001011010101100110111111011110001001110001111001011111100010001110100111101000100011001101011011100100011000101111111110001000001111001101110001000000001000111011110110011000101011010101100110010001001111000101001111110111011000100110110001100011010000001000110100000110101110101001101010001100111000001011101101001100111011110011010010110001101010010111101010000010101000011010111110111110010110100101111111001010000100011111010110100110010001100001011110010010000110110111010100110010001000111101010101110111010101011010010111111010010011000000011010110110110100010111000000000100010001101001010010000010001000111100010101101011011101001111010110000100001011100001101110110001110101010100000101011111001101110100010011100000100011110111111010011000101110000111110111011100001111110101010101011001110010010110100110000110011101111010011001111110110101101111010110001001110111101001000110010010110011000101000001011110010100100101101111110110100010011000010100100000010111101001011000010101010000000101010111010010110011100101010100111100000010110111100001111001111011110001001101010011011001100001011100101001110110001000000111111100110010010001001101011100110001001111000001111111001010011100011110100111110110010101101100110011001100100101100000000010001001110111001000111001101000111011000001111010001110100100011110010100011010111010011001010001000101101110101101011110111110010000010111101110011000111111001110001010001111001111010011100101101011010000010111110100001010010000011010101110110011011011001111000010010111001001100001101010001110001100001000010000110111110011000110011000100000001111011010100000010001001010110010111111101111100111101100011100100010101100000110100100010101010001000011101111111001100110110101001101101111111001111001101101011000001001001011011001001001110101110100111010100001011100100011100111011010000011011011000010111011110100110001011000001011101001000001111000010110110011011011100010010110110101010000110100101000001010000101001010001001011010101001000011011010010101110111011010000010011011010010011001111000100000100001110010010100101000010001100001011110111010101000101100101010111101000110101011010110101101101001101000111010100111101011001000001011101010111001101110101101010000111010010000001110010011000110100101001000000010110011001011010011110011001101001100110010011101100011011100101100100000111011111110111110110000100101110111001110011100011011001011100101110100001111001001001011011111101110101001110010110101111000111010111111000110000110110010000000001010001100110001110111000000010101110001010101010100100110010011100000101111011000000--------------------- +0110010111001000010000110001110000011000101010100110011000110100000110110001000000010100100011110011101101101100011110011111000111000001100111010111100010011011001001000010000110010000011100001101100000100110110111111111101110010011101111011110000000110111001111011100000111010001011000000011100001001100000101100110111111101011011011000010011111001110010101111100110110010000000110010001001000101010101110101111011110011011101100100100101111100010010011011001001100000100111011010001010111101011111100011000111110001010100110000100001101000111100110111001001001000010100111010101110101010101010010010101100100100101111110010011001000001000000110111011001010111100111101001000011011010100010011111010110100111000100011001100100111011110100001000100001110101011010011100101000010111000101101011101010100111101010001011000000110000100011100011111101101110010010001111111111101101111010000100111100111000001100101011011000100100110101111000001111101001100110101101110010110011100010001010101100100110110111001010011101000000111110011010110100001110011011110010010110000010001101111110101111111100110011100000010000011110001000000111101000101010011100100100011101100110111010110111011100110011001001111111111100010110100010001111010001011000110011010001111001110000010100101100101001110000111000100001011011111110010011110100001101110010100011010100011010111000010111100101011101101101111111000000011110101010001101111011101111110100000000011101000101110110000000100101110111111111101110011110110010101101110000111000010011000001101000011001101001011000010000110101000101011111101011100111010111101001101110011010010001001010111000000011111011101011011000001010110010010010001010011010101011001000100011111100000101100100010011100000100001111001101111111011010111011100000010001111001001100101000111010101101011111000000100010010000010001111001101010111100100111001001011110101111011111011111001110010100111101010010100011111100000100000000101101000111110100010001000111100000110101001011001000010001001011001010011111000100001111001001000111101000000111100000011110000011101010001111100001101010000101010010010000000111100010010010111010110000000111100000001101100110000100111100010010101010101000110010111100100011000110101110001100110101110010000111011100100111101110000101000100001010100100101010101001011011000110101001000011101110011111011100101100011111100010011111000001111010001101001011011110100100100001100000000011001110100101111011110101010000100100011110010110101110000111001011100110111001000100011101101100010001000100110111110011011111001111010001010101111001101011000101001001001000001111011111110111100011001100101000000000101010001101011011001110000000110001110101001000100000001101000001101100011101111010000111100011100010011100100001010110111001010101010010011100100001101010011011101010000111000110110101001110101101111110001001000110000111111101111011110101010110010100000111110101111100001100010100111111101101001010101101111011111101101010100011101000101010000010100001001110001101011110100010001000010011101011100010101010101000010000110100001010010100110111010110001001001000011101011001001111111001001100111101001000111110111111110101100101100011001001001000000000100111101111011000110111000111001111001000011001011101011011001111101000000011110000111101100100110010101110111100011011100010111011101100110010001010001100000001110111010101110100000011011101101101111000001000100000111010101110100101100000100011111001001100000001000011001011010110010000101101011001011000010010001100000000101111101110110000000000010111000101100010111100100110110011101100111011000001111101010101110000101001101000011110000101110111000101111101001000101100010111111100010011101010010010110001010010010101000111111001100111111111110101100000001111001000110101110011001000111100011100111101100011101101000001101111001010101100000001100110101111011001001100101011110000101110010001100010001101010011111011011000100010100101100011010100001000111111101010110011110101011001101110111001110101010101100001011111100010010111000000011111101110101001010001100110000011111110011010110100000101001010010011100101000110101011001011101111001110101011000000000100000100011010001101110010101100111110010001010011110010011110100001010111001000101110011110111100011001000110010010110110010010100001110111000001011101001100110111010001010010001001011101110000110011110010011110010111010011100101010111111001011011010000100001011000011000001000001111111100010111111100010100110010001001011011000111001111011110011010010111000100001001111100111011100100001110011010110111110000011011110111001110100011001110101010000000101100110010011010010001101110000001011101001111111111111000111011010101001001100011101100011101100110101101011111010101010011100010001000111001101000100111100110010010000110010010110111110100100010001010101101110111000010100001011011000110110110100110010001000010001110011111001110011000011111010100011010001001110111111000011000101101101000101101100110010101011001111101011110001011001000010110111010101110010001100011101011110100100000010010111001101100011010010011101011100010010000111111010101100100100110111111010010110001011011100010101010110101111001110110011010100111000011001110100111110101100011111110100000100111101111001001110000111111011101001110101000000110000111011110010011011001001110100101000000011110100001101001111100100110011011001000000000101010111000100001001111010111110101110011101001110111011011101000110011000010001011110101010100111000010000101010000011001010111101000010000011110001000000011001111000010000000101101000010010001100011000101100001010100101001111000111000000111000101111011110100010111011110001011101010101011001011010101000010000001001010000001000111010111010010000110001011101100010010100011000111011110000011011101110000100111011000010110101101001110111010110011010001000001011010110111111100000110101000001101100001111001000000111011111100111000000110110001101001010100011101001100000011110110101101101101110011101110000010111010101111010010100111101100000001000000101010001110101110111001101010001010101000100000010001010101001010101001011001101111101010110000011111111110101110101110000011111111110011110110001000011110010001000000111001000101011110100100010010101100000011011110101110111100101011000011000100100010010100001011010010001100101010001100100101101100000101000011100101101110010000001010011110101000001110110010100111001110110011011111110110101111100011110101110011010111001101010010010110001100101001011101001010101101011001010011101011010010010100011101011001011011001010111101100010001000101011111001000000001100001010101010000111000100100001010101011110000110001011101100001110101111111100101100110101101100011000010100000110000101000000101011101101110111111000100010111001011101011000110110101110001110011001011101010000111101111011110100100110001001011010100110011110111000100000110111011111111100101100101000001011000100001000101101110110111000100001011111111100001101011101001001101010101011001110111000110001111000110101101110111100010100010010000110000101101110010101010111001011010100001010101110000100111111010001111001001110100011010011100100100011111100100000100100010011000100100011010110111100111000001110001100110011001110111101101110010011010100101111000110001000110010011110011100000110001101100111101111000011110100000000100100101100110001111001100011100001110001000000101000100010110100010110011111110010100100010010011100101011010111000000010101111101011010011010110101101000001111000101010000100111011000111010000001100010110100011001001010001001100000111000110111001100100010110100101001010010010101110100101010010001100110000011100010100110010000101111011100110110110001010001001110100111101000111110000111000110000011011001110111--------------------- +ls352cwds +11100100110011010111111110100111111000101000100100000001011001111011001001010010111111111001000000100000111100011010101001100101110001001110011001101110000010110011011110010010001000101001011110101011011010110101101101110111001110000111011000010111101011111001111001011110010011110000101110000111100100110101111011110001011101010100001111000110010011110101001001001011010011111000000110011111111011110100001001101011100100000010000100111010111101111011001100110111100011110000000101111010111001001010011011101111110101011110101000010011011011110100010011111110101011011100000101101111011010101111111011101011011001110000011110111101001111010011111001110100010101000110010100010110110110011000111111011111111010110100100001011001000101010101010011001001001110110000001001100000011011100000111110111100001011101100010100001001111011010000000001000101000100001011101101100111010000100000110110111000001110111100001010110000010001110010011110101101010101100110110010111010111000111100110111010111111001101111010001101111100111010100010000000001101011000101101000000010001100001110101000101101011101100010111100001101111001101001001111010001011110011011101111110100100011101110010111100100100000101100110110010000100101100100111110001000111001111110100110110000011011010111110001011101011110101010010101101110110011000000000011011000110001101111000111110010110100110011000010100001110001011000100100101010111001111000110100100110110001111101110110101000101101000100000111101110010001101010001011011111010001001111001111100100101001001100100100101001001010110011010101000010010001100001010110010011001110111001110000011100000001000001110001001000001110000011100101101000100001001100011000000100000000010101110110001101111010100001011101100000100110011000101000100010010010001000111101111100001001010001010101000111111111111010000101001001100001100101000000001011101100101010001000001101001111100001101110100010000001110001010001011000101000010111000000101011000010111101011111011001111001100100000010111011000010110000000010011001000100100101101001111111000000111011101011100111110001011100100011111000111101111101011001111001010101011010011100011011110000010110000100000100011100011001111011010101001100100011111011000000011111000011110111001110100011000000011001000111101010101011010011100001101010111011110101001100011000001100010010100100000101111111101000111111101011110101110001110000010111110101001110100110001111100010101101000001000011100011010110111010010011001010001110111001001001000110000001000001111000000011110010010111101111110001110110110010011010000100100110011111110000110001000000100101011011001101010110100101011001101011010011100001010101010010110001101000111010111111010000110011011110011100100110010111011001111001111111000011000111101101001000100011010101010110111010011010110010010010110111011010011010011100101011100001010011100100000101111100000010000001000000000100110111110100100010100001010111111000010110101101001000001001101001110100111001100001000110101001000011111100100101100000010011111101110111101010100101001011111000111111110101101010101101110000001110001011000111100111000000110110100100000100001110010101100110110001000111111101011010010110011100000111101010001010000011011001110110111001100001001000101011011010110111101000101001110000100010001100100100011110010010000101011110011110010000010101010101100110111100111100011010011010101010000001100110001100101000001100100100100111101011111110111011100001001000001000110100011010101001101101110001010001101111111011011010001100000110100001110111011000001001000000110110001100001010100111010011001011000011001010010110111110010011001111001010010001111100101000111101001001101100011101010110001100000001001011010010101001101101011000101100100010100011010011001110111001001101001111011000101100011000111100000000010111100100110101101001010011011101111011001001111001100111100010011011011101101110001001011101000010010011100000011001010011100011101100101011001110011001011111110011100010110110101110110110101110011001101000100010001111000000111110010111001010111111010010001010100111110011111011000000100001101010000000100001101010010100000001111000000010000101011100111100001010111001011001111100010101100110110100101100111011110110101110010001100100110100010101111001101010000111010000100110110110111100001001000010100011110001100011110011111111110011100111101101111100100101010010110110110000100100101110100010100011011010101011001111111101000001101011000110010011100001110000101111010010111100011101111001010101010010011001110000011000011000000101101101001111001101000001010111101101011010101100100000010001101111000000100000001111010001010111100101100010100110101101101011100111110010001000001110110010101011110111001000101011010100000011111001001100100000100110001110000000011101100100100110000101111110100100101010100100101100100011111100110011110000001010110011101101000011100101111000110110101101001001100110000111001000010011110001100000101101001110000110101001011011011100001001101110000111011010011011000011110010111110101011110000011101011100000010010001110010111101011100010111111000101011100101010001011001110100101111000110011111011100111110100000111010010000100000011100001010010101010001000101010011101110101011011111101000110010100100101001101000011110010011101000111010010101011111101000011110011110000010000101110010111110011010100010010111011000001100000010000100011010001000001101001000101011111001100010000100110001000100101100001011011011110010101101100010110111110000111111100101000011100111010100010101001010011101100011111001010101111001011101111010110101110011110001110000011101100111111101010100110001111101010100110010001011011101011011001100000001000001011001000001001101010001101100000011100101010001101100010110000000100110011110001111001001000011101100101000110010000111000100010001111000110010100100110000001100110101000110111110101010011110110110010111000011011010010011000000001011011011011011110000010001111100101011010010110100010111110011101000100101110101011100101000000010111110111110101011101001011010010001001111000111110111010001010010100011110000110000010111011001110111011000010100011010110011010000010011100001101010000111010011101000011110101000110001001000001000011111000101011000100010111001011010110010111111100000000101100101010011110011100000010101010010100111110011110010000110110000111110001101110000100101110000010111111111111100001101110101000101011001100011000001001010110001000011010101001110010001100010101111101000100110000010011111010010010100011111111010100110100100110110111011001010011100100111111000101111010000010011000110011000110001010100100011011111101010010110001110001100010010001100110001011111011110111000011000001100110111110111010000111111001000110011111010000000101100111101101111110001001110111001110001010011001110000110011110000010111100100001110110110101110001000000100000101011011001100100011011111000110100011011011001101011001100010010001110010110011011010001111000011010000011100110100101000101101100110100100111000001110111001000010000111100011111001---------------------0000111001101110110100101000000101110011101001010000010010111101101111100101101100010011001100111110011101101101011010000010010101100001111000011001110011111001000101101111101011010000001100011000100100000000100101001110001000001000011101110101110011100101001000111100110010001101010011101100000100111010001010001000110000010111010000100011010100011000010001100110111010101010111111111110011110111110010100000100110111011110110100001110100001101000111001011010011101111000000001100001011110011100101111100001011100010001101101001110001010111011001001001110001100001010111110101000010010011011000000101001000000100111000001101010110010100010011010011010001110000000001010101011001101001111011001110110011111010110000111111101011001010110101011000011000111111001101110110101111111010101010011111010111011001000001101001100101100000000000001001111000110011101101011111001101111110000001010100001001011001101011010110010010101001010110010011110001111001010101110100110010000001111011101101100101110010010011011100011001010111100010001111011000011011100111111011110000111000010101110000100100011011100010111011011000100111000001010010110011110011000100000000101010101011101011100010001011110111101010100001011101011001101011010001000001000100000101101111110100000000010111010110111001000111100100110001011011101110011010001011010001001001101101001101010000011100100100111011100100011011011010011111101010111001011000001001001010001100000001011101100000000001110110101011100001011010000111101110001001000100111001000011100110110110000001011010001011010001110100111111001011011000001001010000001100100001100000010011100000000100101110110111011001100001101111000100010100001111011100010010000110010100100010001111001111110001010100100110101101010000110010100010000010001011110000001100010110101010001100001010101010101110110100011100011110011001101110101111011101101000010001110001010011011100011001110110011100100101101000110110111110011001000011001111101011101101001101010111011111110100111111101100101111001110000011101111011111101010101010101110010110001000111010011111110011010000000101001100110000101011001100101111010111101101010010011011110010111001001000011001101100011111010010101001101010001011010100101001011010000000111000000001000110010000101011101101110001111000010100011111000010000000101111010101101101100111100101101100001101010000011001010011001100001010101101010110011010001100010100111010111100101000011011011010010101000011011100011010011001011100001011000110101000011110100101110100001011001001110111001001011000101000111111110111010101001000110010000111001111000101100011011100010100001001011100111110111011101001000001010100110111111001001000110001110001000110011111100100000011100010010011000111100100111110001000100000101010000000111011000010001111111010100100110111011011111001100001001001110110110110111010101100010101100111001101001001100101000010011011011110011110010011101000001100101101001001100000100000110001000000000101101000110110111011111001000001001010100001011111101111101010100110110010011101110000011111101010010111010100011110110011001100101011110000101110100111100000111001110011111010011000101010000101111001010100011101111100101001100010111001000111001010000010011011000001100100100011100111000000111010011100101011101011100000011011000100000010101111111011001000011011111001010110011010010001111000111101111110010001010001001011101001110100011001111011011001101111000011001110100110000101000100011110010111000000110011000110010000100101000011001010001110101000001000111101110010110100010111111000111011001100111110001101011110111100110011011100101001101111100001101100001100001101000000001001110111000010111110011101001110110001111001011001111011000100111110010101001011010011010000100011101001110001010010000010010001101110011100001010101101011010011110110000001110001010010100100111110000001011001010100100100110110001011011101011011010101001111000011000000100000000100010010101110001100101111100010110101011110001001100101011101000110010011110100100100001001010011101110001001101001000100100111101011001001011100010001000011110100110110010110000010011100111000110000100001110011110011111011010101110011101110010000110011001111011010010011010010010100100011110001010000100010000001110001010011001001000110001101100001110000010100101110100100111111101000110100001010101110001000011100010111100101110001100101100001110011010011000000111010110010111110010110100000111101110010001111110111100101010001111011011000010100000001111100001110001100111100110100010011100000010011011110110101101111001000000110011011100000011001100001011111100000101000011100011010111111111110101111101010111100010110010111010001100111110101000011110110110010010110010110101100011000001011010000111101001111011001110111001100001100010111000111110010011111111101001111110000100110001111111011001011100110101010001010100100110011010001111111011100101010100110000010111101110001100011101000010110010100001100111111111111111001010011100011001111010101111110010111010101111010011100110010011110010010001010100001111101100010001111010110100101111110101110000001010001111010000110110101000000100001110000001101001011100001110000011111011001101011001111001011000001010001111001101110010000111100010010111001011110100110011110111100110011010101001010001011010100111000111111001110000000010111101001011100011101110011111000011101001100010000101101110111110100001110111000101011001110011101001000011110001001011001101000011011111011100011111011101110101101010010000101010110000000011111100111011111101010000110101111100011001110001001000001101100001100101111101000001100011001101101011110010110101001110011110111001011000110001000000111010010000110000000001010111000011011100011001001001011011111001000011011110101101010100011011111010111001011110111000111001010110111101101011010001100100000110010110011110100000110111000000100110110011001010000010011011011100000100011000010110001001100110001010110000011101110111111111100010101100100101100001011000111000000111110010000000011111000010010111001111111100010011110001000101100011101111101110101010110011110000010111001111111011111001000100110000111111101010110010000000110001111111100000110010000101011101001110000100100010000000001000110110111000111100101000001011100110111110000100111010100111000010100010000000001111001111100111111110101011000101001011111100110010100011001111100011000011010010110110010010111010100011101110001100000100001011101000101111111011001111000010111111011110100100110010111101111100100010001100111101010000010101001110000011101101100010101101110010100111111010011001010001011100111110001000101001011000001000010001100010010010010010100101111110101000101010011011000000100111011110010110010110101110100000000001111110011111001100111000010001111000101111010110101111101110001111010100101100110111001011110101000110101110111101101010000011000101011100010110110001001110101011000010101000100110011000101100000110011101000101001110111011010001010000100000101001111110000101101110010110011010100100011111110101000010001111001000011110000001011110001110000110110000100000111111011110001011110011111111110101101010111011111100111100010101001001101111000011111001110011101000100011110000111100101101100001010101010100110111011100000011001001000011110011101010000000010100100100000001111010011000011000001010000101000010010001001011111010101110001111110000101111100010010100110010110111111010110001110011011010111011011101100101100011110011000000001010101101100101001111101000110101001001101110101110000000000100110100110100111000010111011010000001110110101111110100100000000111010100000111010111111000100011111110010110011111001011111010100111110010100011111000010001110100001101000001011000110101100001010010011110101010010110010001000111100100101110100010100011000111010111000001100111001100100101010100110000000111101100101010000001010111001011001011010000110011110000100111110101001110001100001000110011000000101011101001011101110110100001000010011111010011101111001101100000011111011001000001110001110011101000101110110001011011010101101010110000000100110000110011010111100000001101001101110001101001001000000101000111010000010010110011010001111010101011100101001000111100101001111000000001100110101110011011001100011110001100100100001100111111001110000111001101000101010101010010100111101100101010101000000100101100110101110001001001111011111111001100001110010110100000000100001001110110000111011010000001001110101001001111110001110010001100101010110111001101001000011110110101111110000100110101111100110011010101101011101011110111101011001010111100100001011001001100111111101011011001101111010010011010100010010100010111001000010001011001110111101100110000101101100001011100010000010100001001110100011101111001011010100001111101110001101111100010110101100100000110111101101010111101011100000010100111011101001000111010101101011010011010100000110011000000100110001110001000101100001111001011010000001001000111100001100010001111001001000101101001100100001111001111100101000111111110000110100000000011101110011001111000110001111101101011100110010001010011000101010010111011101110111111000110100011100010111010011111001110000001101010001000100010011110110111111101011101100010110010001101001010111010011100110110111001100100100100110111100011011100010111011110100111111111111100000010001001110010110011110010000100111111001110001100100111000000101011110001000101001101101101000101101010010111010010100110110110101101010111011010100011101010010111101010011000010111001000100111011111010100000100110011110111111100110111001101110111100101101111000101101101000101001000010110000100001111110101011100100111001101100001110110111111001001010001110010101000100001000101101001000100001001100011101101010111111110000101000010000110001100001101010001100100010000110000011010110000110000111100100110000110011110111000111010010111010100101001111001001001001011011110101000110001001001011111010011101011111111000010011011001010101100010000110011111001100111100000110101001110010110110011100101000100101000100100100001111100110010011011111000001001111010110110100001001000010000010011000011001110110111001101010000001001010011010011001111100100101001100010110001101110100110000011011000001110011111111011010100010100111011100011100010111111011101010100100001111000111000001001100011101111101011000001000000001011000011001110101011100111011110110010000001010101001100110100011001000010110011011000101111011010101110100111110111000000111110100110100110011110011010011100001100001110111110100011011100111110111110001100110000000101001010010011000000010000100100011100010011001001001001100001000000100011101010010010000010110001101001100000011100110010100111010111000111010010010011110110001001110000111011011011001001111010100010010010001000001110100111101101101001100000011000100100100010100001010010111101100010001010000001000000100010101111110101100001100011010010011010001000111011010100111010011110100011010111010110101111000010000010100101001110110111000011001100000010000111111100111100101101100000101010111011010000100000011010011011110110000110110010111000011000110011100101001101011101101011111100011011010100000101011011111001110110110000101001011011100100101110111111010010000001010100101000110010001111001000001011101000000101010010011001010010001001010011001111100111110101110001101010011111010111001100010101001010001111111010011010000111111101111100001100101101001010000011011101011111101011011111101110001111010101100001101001111011110010101001000010110101100010100110110110101011000110101011110000011111101110000100001100010010110111101101101010101010110101011110111001110000100011111010001001010100010010110001100000000001110100101001011100111110000011010101011100001110110000101011010111000110000100011000101100110100000000100001001110010000010111110101001010110011011011111011110000101010011111011001000110100101111101110010010011110011100101110000101100010010101100010000111001010100001011001110010010101101000100100100111111100100001010000010100001010011000100110001000010000000100010010000110101111111001110101001100110100101000111011111001001101001110011001010000100011000101111101101011100101110111000111110100111111001111011111111000000100110110010101011111010010000001111000101001110111010101001111101110110111100101011000000110000111110011011100110001101111100111110010010011000110010110010010110110001101110001001001100001101100010001011111101110010011000010111101000000010111110100100110110001010111001000110001111111001000101100000111100111001111100101000111001011000100000110101100111100100110010110101101000101100111011000010100010000001110011100001101010001100110101011011101001101011011101000111011011100010110111110011001000000101110100011011010001011010100000010100100001100010110001111010010001110101000110110000110000010101111000001110110110000001100011011100001011111000101010001001001000110011101011001000101000100010000111011111000101010011100110001110101001011100111000100011011011000111010110001010110100110101110100101010111100111010011101010010100011001011011100100101101110000011011001100101000110100011100110011000011101010100010000110001111010000110010010010110110110001110000011101111011111111011101100111001100101100110100010011111001101101101010010110000100001101111010101111110110100101111100111000011101100110010111100000110100011010001101101100110011100101111110100001011000000101010001101011010001101011001111111111000110011001001110011010000000000110101111010101100110101001110011101110011000001111111101010000111100110011000011001011111100110100100000010010000111001011110101100000011011010000110010010011111001111111011110101011110111100011110000110110110010010100110110000110100000100010100101000011101110000100001011010011010101000110011001010110001100110111101111101001111110010000100010001111010101110000101000101011000100001011000110011011001010111110111111100001110100010111010001111100011000111110010001101011010000010110101001010101010100010010001001011010110011101011001000110111111101110101110011110101110100000111000110011110000000011000101111010011110100111010101010001010011001001000001001101100010000011100111000111101100010111011110000011101001011010100001011011000001111010000111111101100000110001010000010110011001111001001010101111101111101010101010100011011011100110000110000100100000011100100011110000111100011110010111000001000000111000110001100110011010011100110100011101111000011100001110111100110110110101101010001010000011000101111000101010001011001001010000111010101110010001011101100000111010101110110111101000100010110011100001111010001010101010000010111100101011010010010110000100010010110011110110101000010001010111110010000101111011110101011101100011100001111101000001010111111000011011100100111010101000110010100100000111110010011011111010011110000011011000001000001101101111011111110101111010100011111100000110111011000000100101100000100110001111011101100011001111001001110000011010001101110101011111110000111001001101010001010000110111101010000011001100100100000011000001000001001100110011111101000001111010101101110011000010110101101011110100101010100010110000110011111110110100010011001100110110101110011110011100011111100000110010111001000010000001101000000010010100101001111110110110111111111111011111100000010111100010001011101011011101010010110101010101101100001001101001111010001001101101010111101011111001000111010000011100111010101110010101110011011000011001001110111000000100101101111111001100011000110010011101110010001000101110111010100011100011000000101100000000011010001010110111010011011101110000010100001001010001000111100110000101001110101111000010110010001111000110100110000000000100010011011110000101110100001100101010011101001110110001110101011011000111101001000010001000011110101111011001010100011011101110110111011010110000011000111110110010101100110111001111111011101101111111101111101100011001110101110011001010000110100110110101110111010011010011000011011000001011011100101010111110101100010010001111111110111101111110110101110000100000000101011110111000001101101010111100010000011101000111000000011100010000111010011110101111111001101100001000010001010001011011011011010010000111111110011000010011101100100010110001110011111111001011100011000011110001100000100110111011111101010000101110101111011000110011011110010 +01110100010011010111101010111100110111101010100011101011100000011101001110000010100101010101100101110001010100001010010011100101110000110111101011001000100111101001011111010010110010100100111101010001001111110111000101111010000001110000101001001101010011110101111110010111111011001011001101111001110011101111100110111011011111000010001010100010001000011101110101100001101101001110001111111100011110000011101010001001010100000110111100100100100011100110111110010011011011111101111111110101100100011111001011010100001001101010110011011010001110010010001011100010001111101110110010111010001010001100111101101001111011110001100011010001111010101101011010010011011010110100001111001010111100011000111011010110010100001111010000111000011010010001010001010000101101000111110110000001101011100000101001001100010100001100110110101111001001000110100101100010111110011111011101000111101011101100010011000101000110010010100001110111101000101001010111100111011110011001011011100110011100001010110001101011011101111110000110111010100010011111100110111111011000110001100110100001101001010011100101100001111110011100110100001010000000011111111011111010011110110001001111101100111101100101110001100101111101010101010001110011110111101001100000110011001101101111001111101011011000100000100001100001101000011111011110000100110110011111011110011011011100001010011110101111010110001110101111110000110111011100001101001100110110100111101100101100110011010110001001011110101001101011110110110100110010100011011100100110010111010001110001000011000111000111100001010000111000110001101100011010100000110010010110101101101001101100111100110011100111101011011101101011101011111010110000110011001100100101100000100000011010000011101000011001010101101010001000011110101011101111110110011011110000101001110101010110100011011000000110111100101110111010011111110001100110111110011001111000000110110100011010001100101011010001011110110101111101110011111000111011111000110010110100001011110111011000001101011110111010001100111100111011101110100101100100010010001000011101000100011101101110101111111001010010111100000110110100101111011111100111110100110100001100010010010010100111011011001000011010000000110111001001000111010001110010010111010000010001000111011110100101011101111110011011001001000001010111100011100011001110000100110110001111000001000111101111100110100111010000000110010011111001001011001100100111001101011011011100011010010010001101110001100100101100011010001110011000110100110101111010101101110110000001011001111011101101100011000011100110011100101110101110101011111100100011100001101001001101000011010111010011100010110010010110110011001111001100100010000100111110011111011110101011100011011110001111110110101100101001101110100001101011001110001111010011000000110101100001010011100010111101100101101001100100111110001110010101101100010101010111110001001101000011101101110000010111010101100000101111010110110100101100010011000110011010111101001011001110011010111000110010110000001100011010011010111111101010101101010100111000110001010000010100110000001000010001100010101001010000001001100010100111101001111100100011001101000101110000111110011110101001110000110101010100110000011010011000001110111011111011000101001010110101111010100010001011001100100000010101010010100001101111001110010011011001001100001001010011011101011111001111000001011011111110100000010111011101101010110000111111110000001110100011111011000001001000011110110100011000001001011011010101000111010111001111110010001000100011111001010101100110101111110100100110100100011000010100100010101000100000000100100011000111001010110100100100001110101001110011111001000011101111111011000101000100011100100000100110110111110010011010011011001000011011110001000010101110100011010000101010110000001101011100000100010010001000000011100000001010010111010001110110001111000001100101111111101010011010110000101100110010101000110100101111101100001100010010001011001001110010000100000011100110100111101100001100101000101000010010011101010001101101011000101010100010000101101111010111010000110101010111000011010011101000010111110101000100101011110001100000001010011001000011010010010010101100011010000111000011010101011001001101011010111000101001100001101110100000101001111100011000001011010110111001101000100001111011001011010110010011111101001000011100110110001011011110001011001110011011011001100010010011001011000111111000110000000110111100011101111110100000011110100000000101001000010110101001001011100100000011101101111111010000000010000000100110101011000110010111110001010001100001001010011010000111111000111000001111010011111111110100000100111101111110000110001010101011001100001110001001000111111011001110001010000001001000001100000101111100111011011000110111001000100111100110100100001001111000000010011101110110101110010010111101101101011010011000111000101001000001111101010100010011000001100100010100110110100001111111100101000010100110110010010011111111101000001111010111101110100010100000010100000100000000100101110100011110101100111011011000110111001011100111110110111110001000010111111000011101001000000010111111010110100010100100110110110110101010001111010100111111110011101010111010010011001011111011101100110100111001110111100010011111001001101010111101100011001010111101001111000100011101000110101110101100010011010110000000000101110110011100100100001000101011110110110111010110010110100010011010110011111110110011100100111101111011010110100000001010010011001000011111011000110000000010001110110101001011101011001000100101100010100011011100010000000101001101011101101110010011100100010111100101100110111110011011000001100010111010011111101011011001101011100101100000101100010011000111001111101100001111110011101010011101001111110101110011001111010110011110011001110000101100110110001011010110001111100110010001110000001001010100110100010110001000011111010100101011111100001111000111111101011100100011001001011000001101110001101000001100100001000001000001010011110010010101001001110000010101000011010111000110111100001010110111110011111110011011000101110001000110010100000001000111100010101010111011010111110000000011110100100010001000001010000010101001010000110011011101000011110111111001111110101011001001100111101100000100101010011101011011110001110001111010000110110101000011010011000100011011000101001010110001000001110101010100111101011110001111101111101111100001001011101111000110001101010100101000011001010001011101000000111000011000001111000111011001000110100011001110111100110101010111010001101011000110110101110101001011110101101011100001000000000001001101001100001100010101110001110011100011001111110111100000011011001000110011110100100110100000111010010000100010110100100100000000111001110010001110111101101100111000101100100011010100100001110001100100011100010010111101111001100001100100010100111011001100101100100111001110110111100110010011001001001101000110011011011100101000000101011000101111010111110101000111111110110111010010110101001001010000011100111111000000000101000001101011111101100100000000110110001011000101000001011100000100110110110011111---------------------1111000100000110100011011111110011111010010101110100010101110101110001010001011110010001011101111100010000100110000110111101100001101111011110110011000110011010110110100011000010100110011110001001010110101100101101011010101001010100010000010101111000101000010010110111011101110101110000100110111001110111111111001011100001110110100011101011101111011111110100001011011100001110010000110100110110101011110001100101011010000111110101000010101101101001101001010111011000001111101110100111101000000110110001010110110111111010110100101101110010010111010011111110000011011101111001111101001001101010000001001000010000110110100000001100100011011001010101101111001000000011000111110000100101011101110111000110101000110110110001011010011000001001011110010001110111010110000000110000111100111101010000110000100001010001001111100010011010001101011010001110000011101111001101110001100100101110001100111010010110110110111000000001001100010101100100001000010000011001111010010111111110000001010110011011011100001011010011001011101100110000110101011111110101001010001111000011001011110110110100100101010011101000000101111000011001010011000010110000101101100001001000110100010011001000100001001010111011011001100000001001110101101100000110000001111011011011111101010101110001111010010011101101110101011110101000110001001100010111110010010010000011011110100010101011110001110110110100000000010100001111010111110111111011000000101110100100101110110010000101011110111100100011010100000001000000110011100000111110100111000000010000001101110110111001010111100010010110010110000001000001111001111100111100110111001111011011011111100110101100110011000000110000001011111000000100101111101111001000001000110100100100000000111001110000100101110000100111011001010001101011010001000001010110001000100011110011100100110000100000001101001110110110011110100011110100001101010100111000111101110101011100110010110100101010010110011010111101111101110100001011010101011010111101100100111000110001010110101101001010100101000111000111100011100010111111000111001110010100111100010110100010110011011001011101111000010010011000100011111100010011101110010000001111110100101001111001110001110000011111010001111011101100011110000111001010111100010111000110010100000100000001111110101000100110110110100110101000101100010111010110100111011101111101011110100100100001111110110010111001011011001101011011100100101000011110100010101101110101101111100110011111011001011101111011100110110100001011100011000111111010111111000001110011110110111110111110111001111111111100011010100100000101000101101010000101011101010011011100101111110110011001100111010111101010100111101001001101001011001001110010110101010111110011110111010100011010101000010111101100111000000101010011111100010010110010001111110101110100100111001011011100000010011010011100011010110000001101111111101011111001000000010101000001101000001110100010001000101111100001010111100001111110110111011110010101110101001101000000001110100001110110011110001100100000110011000011001111001000100011001111100000011010011111101110101110001101101000110110010011110100000001000000100000110010110011111111000100011001001001110011101000101001101101001101011001101000101001000100001011011111110000011000001100110100110011011111001010101010001111111010101010000100100000100010111011010110101010000100010111011001001000100000110000011101001001110100010111101011111110000010011100000010010010011100000001011100001101011010111000110100110001111001101111011101010101010100001101101011100001110000111011010010011111111001101101101100100100111011011110101010011011010101011001010000111000000110000010010101101111010111010001010011110000110001110100011111101111011110111011100111000100011000001001101111100010011111001000101000100101011001111000111110110111101011001101110011001001111100010101110111100010111111111110110111111110010011101001011100110011010101100011110100100000111011100011101110101001101001110110111001010111100100010011010010000011010111000011001000011100111111011001010000001001001001100001010100101010011100001110001110000101100001110000100111000110110010000110100001101100010111100101001101100111011000011101101001011110011100010011100010100001100111101001010100101101110001100101100101011011000010010110010110000100010010010000000010010111101111100000011101111101111001010010010011000010010101111011001000000110011000000001110101010110110011010101011001001011011010001000111010111000111001110010000111100000001100011011010011001100111011001111110000100111010010010010110011111101100001001101101101000011111011110101010000010001111101111010011101111001100010111010110101010110011110000000110010110110001110100000111000010010010101001000000010010001101010100011010011111101001001000101010110000101100001011110010000100101111110111100110011010001101111011111111010000000111001000101001011110110111010111001001000001011010110110000101010000011101100001100001110010100000000011110010011000111001111111101011110110101001011001100001000100001001100010100000110111101011100010100010000011000101111111100010100010110011011000010000001011011010000001100100001111101001001111101000111101010101011110110011001011011000011111001111110011111000111101001110111010100110111000001010110101110010000001111100011111001000111001000011110011001100011111101110101001111010001110101010101001000100111100010101101010111100111101101110010011100101100110010001000100100100101000011000011010000010001011011111100010111110010101001000010001111100110100000001010011010101001101110100110101000011010110011101101110101110100001111001100111000101111100101011000000110010001001111110101100011001100001010100111010110110110100110001001010100001010101111111110000010011001110111011100001001000110010100001110110111011010101001101100010111101110110010111111000111001110111011101110001000111100001100101001011011010101011111001101101111100010000010110011111111101001001110111111011011111001011010100101001111001011000110011100000100110011011101111010010110101011010101111110110101001110111110100100101010101000111000100001001010001110101100011000000110110000111011101100001100000100010111010110100111111100100101101110101001110010110001111000110010110000001010111000100010111101010111100001011101000100100110111111000011010101000100110011111100101011011000010101100010010100010100101100111001101001011100011011101111100010111000100001100000010111100101100001001101001000000010011101011001001100000101111101000111101011010000010000101010001100010100110011000011011010101000010100100010001101110001110010010011110101000110001000111011110110110101010111100001100111001000111110000110111001110010100110000001000001011011010110110100010110101111111111100111111011001101111110001111111100101011110100110011111100101100010110100000000001110000101010010100101101110011010011110000011000110100100110000011011110000000111110110001000001000111100011001011100110100101100100101000101011000100101111101010011011011000001111000100001010111010010010000100000110000011110101111011100011111000010110111110111100001010101111100111000001010010101011111011101011110000010111011111101010101101010100111110111100000000011101110000111010111110100100101010110001011110011110011010000000010110101101010110000011100010000000000011001100000011110011000001100100100110011100000110010000111110110010010111010100001111000000010101110101101100111000111110000101111101110010110110101100000110001101101010001100110110000001001111100011011110010000011100001000000101000100001100001011101111010101000011001011011010001111111100011000001000100011001111001010010100111100000000101100001110000010111110100000110100000001010000100000110011100111001100101011110010111100110011110011001110100100011000011100110101111010001010000100000110010110100011100101011011010111101111000000100010111010100101111011000110011100101111000011001010111011001101000110111010001101110100101100101011001110100100101000001011001000110100110100001101110001000101101110010110101111010101110110100000110101110010100011101011000011000001111000110010001111110010111001110010010111101101010001100000010010101101010111000111001010101101110101010111001111110100101110001000010111000101110011000000101001010011111100000101101111010010111101001100110110001101111101111111110000100101011110110100011000010000010100111100101010101010011111111001000000100111110000110111000111101111111010000001110000010010001101101010111010101111101000001101100111111111000101011001010001100110100011101001001101110000100101010100110100011001011001001000011001011010010000100111101110011011110110101110011101010011000011000100001000100101000110001101110101100011011010101101000100100110100100100001010010100101001001111010101110011010110100101111011001101100011101101110010011101011110000001101110011011001110110110110100010101110110111101000000100111100100001111101011001101010010111011001000001001011010011110011100011111010010001000010111101001110001111111100000000111010110100110101101100101011001001001110111010001010001001100100000111010001011110000111001100011011100000011010100010000011011111110110110000000001110111101011000000110001100011000110000010110010000011010111101111100100100101000000101000101001010100000010111011100000110010011101111110011001011010001100010110001100011000111110110101111010001010001100011110010101111010001010111100001110010010111111011000110110111100100100111001100110111001110000011011100000100100111111110111001010011111100111111110000000000101111110101010110011011000011110101010101110100011000001001111110001101101011010001001000011111110111100100010001100010000001000000010011110001000101000110111111000011110111110110001001111010000000110111111111101111011110011110111100101100010100001100100010100000010100111001010100001001001111000100100000100000110111010011011000000111011110011010111101000111111101011101010101000011011010001000010010000101011000100001101010011110000000110000010011100101001100010111010101001100110101000111101100110110000011110011011010001111001010100100011101000000110010011001111100011001010111000011001000011111100100110000110110010110000110101001001101111101000101010001110101110101111000001010010110100011000000100011010100010000010010100010001011101001001010111100111111100110000111001000000110011100001000101001111000011010111110001001010110000110110011000110001110110010101101111101000111011111001110100010000010101001100110011100011110101000111111101111101110010100111001000100100001100010101001010001101100110101010111101101100010110111000101010011110001110000010000100001100000101011010010100000111101111100000010111010000100110100101110010110101010100011111011101000011010111111111101000110010100000001001000000010111111011010011001011000100110100101110000101100110100101111111110001111111011001110001011011101111001011110000100010011101111100000001110101111111110000011101011101110111011010010101111010010000000110001100011000001110011100111100110010011110011011000111101000001000001100100000111010101110000001000001100011100111000110000110111100010001000110011000001001010111110011111000001011110001000100111000111100000001111011111011001010011011010110100001101100100001001110001011100010110111011110111011101111110000100011000110001000011010111000010100110001010001101011101001010111101101011111111110001000111100011000010110100101111111111001000010101101100101101110111000010010100001100010001010010110000110100101111010001100000111100001100111001011001110101001110100010101111110010111010011111000100001111111011110110011110111000000111100000011101011000100100110010101000010101100110011111110000100110100011000101011101100011000110111011111011000101001110000100100100011010001000010000011011110000101111001110110001110000110000011100101000101100000110011001100110011001100101000110001011111101001110010111011011011011110000110111010001110001100010110000011111100100011101110011101011111100010111101000100010101110011100100011010100010000101101110001011100101010111000010111100010101000000110010100101110110100001000110111011110000000000001100101001101111101001101100001101001101100111101000011101111111001111010011010001001110010100111011101001111010011011100010001000100110000110100010100000011001101111000110111001101011001100000010010110011111111111011101101101101011000100001000001010100111110100111000101101011001001001110101001011001000001001000001000110110110001000101000111110010111100000011110100000000011101001001111111011110100001001100000111000000101000010111010101011110110110101000111110000000101011100111001110001101101011010011111101000110110110010011011010100011011011110001111110010000011111101100001101110110010011100111000011111011101101000000110001100001110010110010111111000111100010010000101010111010101011000000110011110110001111100001011110111101101011011001000011111100000010001100100100000010101101101010000011101100000010010100011001110001111001001011111001100100100100010011000001000001000001110010010101110000010100101001111000001001001001000011011101100011010010011010011100110000111111000001011001100000101010001100001000110101100111110110010010000011110000001011100011101010101110001001111001101101001001110000101111001010001011011001010011101100111111101011010010011101000010011110100011110001010101001010011001111111011011000101111001001000101011110001000000100000110110111100111000000010000111010001001101010110000111001101000110110010100010101100111111100110010101101000110110111011101100010111101100000000110011000111100011100101111011110011011111001000011001111101010100010110010111000011011010111001101100001000001101011011100110010100110001110001110110010100001100000110001010001011001100000111111101111010000010111000010110011101011110000011100101110111110111100011000000111010000110010101100100110011101110000001000000111001001110011100111101001101001011110100000101100010100101110111011100110001001011000010111110110000001000101011101001000110001100111000111010011000010000101111010100111000000101010111110011010010001001000111011110101001010010011110101110101010000111111001011110110110100110110010101000101001100000100010110010011010011110111010110011100110100101110001110101101110101100010110100010001000110010111011001111011010111100000010101000110011100011111010111100110111010000011100000110010011111011110111111100001000000000011001101010111111110001101001001010000010101101000111110000110000001011110010010101000011011111111011011110011000010110010111110010000111011101001100000010100010110000101101111001011101101111111000110010011010100001010101010100000001011011100001111000000100010100011001100001011101000010010000001000111110001100001010111001111011110010100000100010111000011100001111010110111001000010111111111111101100110001010010111101100010100100110010000011011010011100110100010100011000001011011011101010100111001110100110011101111100110001110001100101110001100111000010011111100110010110110000011000001101101100001010100001100110101111110101100000001001001000101101000100010111100101110101000101000111010101010111100010110110101110111110111100100100000011111111101011100101000101101110011010110000001110100011101001111111110001000100001011011111001011100100011110010001000011100100011110101001101011110011100001011111010000010100101100101010111010001001100001101001100001101100111000010000011101000000010010011111101011111100101111111101000000010110110010001111000100010011000101010010110011110000101001001111001000000010010010110011110001001000110100100000101101001110001001000100001000101101001001011111110011001000111100011110000100001011100001111001100011001000111010100110100011110101111101011101011101001101101010010001000110001011100001000100011001100001100001100001100110100101001010011011110101000011101110101110101000101011000111100100000100000101001000101010010001000010111011010101010010010101111101011011111110001110111010110110100101000001000000010001000010101111001110000001010001011010000000100011111011000011100101111010101000001000101100001101011011101110100000110110011100000101010000111110000100011000110010111011010001011010101010110110100010100110101001010001111001101001111110010100100110011111011101011000100010101001000101011011010010001111111011100010101011100100000101000010101110110110010101001001001010110101111101110001100000010001000011111101101111011101111001110000100011011110011101001010011010010010100100011010101010111100100 +01100100000101111011111011111111011110110110010111111010010110010100101100001000011010100111010000100001011111111011001111011111010100110000011001110011111000010101110110101011001110110000100000011100011000101111010100000111011010010010110100001000101110010000111001001111010100011010010000100011110010101000011111111100101101000000011100011000000100101001010001001100100001110011101100010010101110111001000001000101000000011110100110010000001101110111110111001000001111001100011011001010000000010010000100101101110100000110101010101010000010111110101101100010110011101010111111111001111001110111101011001110010100000110101010111001101011101101111110010111111000100111000101010001011000110000011101001001111111011101101110011110101001100000110011100101001001000011000101000101110111001110000110110010011011100011101100101101111101001010111101110100010000101010001101011111011000000100011101100111000110010001011001110000100010000000010010000110001000000011001100011010010100101001000001011000111100111101100001100111110011000101100000100010000000100100111111000000010010111100101111101110111000110010000000010000111000101101001000010010010111010011110110100010110001011111011000001101011111110000011100111010000000100011010010111101010010010111111001000001100000011000101000001010010001110011100001101110110111100010010111100001000001110101111011011000001001100111011101101100000011111111101010100111101011110100111010001000100000000000000011111110000000101010001011101111100011000011001011010001001110011000001111101100011111100100100011001111111100111011110100101111011010001111000001100100100110011001000111110100001000111000100011000000001110101011111011001100010100010111101111000101111110110100000101100100010001111100101010001000111011001100111101110000111100100000001011111100101001001101001001100110100010100111011101110000000001010001111110111001001101100111100110010010100111101000001110001110010100101100011111000100010110111110011011011011101011000001111011110111100011001011100110100010010000111000100100100010111000010011011010111010001001011110001001100011110110010110101011010101101011111010110111010100011000110100011101011111000010011000110010000001100110100011010111101000111101010001110110000010101101011111111101110011111111011011011001001010111111000001011011010011010011001101000101011110001010010001110011010111101000011010000010000101100110101010111110010011001001110001001111010000001001001100111101110111010000111110101111010110111000110011010000101101000000100100000101111011000000000110110011000101110100110001011001001010100100001101111100100011100011111010111110111001001011001010001001000011001101100100011001010111010001100011000001111110111111001010101001000011111000001111010110111110100101100101001000110000001110101010000100100101001111111110101011011011101100101010011001001100010101100010111100011000011001111001110111000110101001001101000110110111110011010111000111100011111011100011101001001000100010001111100110110101010110111001000100110110111111001110110011010010011001001001000110110001001110001101101010101001100001101100011010010011111001010010010011011111010000010010111011000111001011001110100111110101110110000111100111110100101011011110001101010100010100110011101111110011111001110100101110100101111001101011011010011001110101100111011001100100010000000010100001101111101011101001010001100100011000111011011001110111111010111110110001001001101101101110010101100001101010001111111000011010001000000100011000101110101100011110011110010110111010110011110011100101111001011000001010001101111110011010011011001101011000000111010100111100000011000101111110111000110100010001111000001101001101010000111110011111000110000001000110110000011101001010111011010010110110101010011011110100001010001100110101101010101001101000101111100011111010010000010110001010010110000100010000011000101111011001101101000000011111011100111010010111110110111010011000001101100111000101110001110110011001110010000011110101110100010001101101010110101110001010010110101001110101111110111111011000101110110110101010111110100101101011011000001001001100011011001010001010111101111111011001011101100110010111000000100001100101010010000111000001001100110110100111101010001101001100110001011101001101011001001010000111001000001011111110111101101010101100000001011100000111011000101010101011101001110110100110010110110000110111101101000100111010101001010001101111101001011001001100011000101110101011011010001110010001001010101010110101111101100100110011001100011011000100100101010100000101110001010111101100111010101101000101000101001111101101010110010110101000110111010101111001101101100101101110011010111001101101101011100100011001000111010100110110101101001111110100111010001011011111110010000001111011001110111010001011100100101100011011101110101001101100010011010111010001101001000100011101000101001111001100110000000001101000100010101101110010010100111110101011010000100011101011111011100011110011011001111111011000101001101011101110100001010101111110000110110100001111001010011100101110111111010000111010101101011111010100111100011001000000110111101110001001110100101101011110001001011001000000001101001000011011101100110000000101001100111011011101111000101011000001110100011110111101000011111110100010010110010011011011101111001000011000000000101110111000111000111100101001011110000011010011010101000110101010011100111011100110000101011001101101111110110111110000001010010100101011000010110101000111000101100111100101011101000000110011110110111001001010011011111010100010111111011110010110111101001100001001110110010010010011110101010001101000111111000111000001110010001000000100111011101001011110001000011010111110010110101001101100001100110111010011100011001100000000010010100110110111001001000110011100100010011111111000101111001000101010011110011111011111011100101111110010001000001011010111000111001100111010110101110111100110100010110010101100101001001010011000101100011000001111010000111010000000000010111101100111001000001110101010011101010100110101111000001101101110110110010100110000101100011100010011011011010000111011100011000101010000110000011100011010011010111011010111111101000000011110010001000011111010010001011101011100010011001111001001101110010001011101101100111010100111010111100010000010101001000101111011111001101000100111011101100001111000100110101111111111000000100101110101111100100111111001010001110010100011011101000011110101011111011001111000111101111010100111101110011101000101111001010100111100110110111000100110101000110101010101111100000001000111000010111011001010010111101101101101011000000110011101010000011001100110001011111111000001100111000001110010101011010101100010100011001110000101101011011011001100010010101110111100100101101110011011100011001110111011010001010000001101111001011111111000111001110111000100100011110101110111000000101100111100110011001000111100010001111100000101010000111010000011111110001000110000011000111010000110010111111100110010110110010011111110001111000010110001000010110111011100011001111111110110110110000110001001110101010111100---------------------0011011101010000111111101010000000111000111010010110110101110100000011101011100001100000010101101010001010101110010000110101110011111000100010010001001001011111101011011101110011110110100000010010110000011010011110100111110010101110110011011000111101100000111011010110010111111001101101010000111011100101011111011011001001000110001110101000100111011000001101100011100010100001011011010001011111111101101011010001000110111001110101101111010100100000000011100000010000110100001011010100001000110111011010111011011011100111111111101101000000011100001101001000010110000010100110111011011111010001000110001010100111000100111100011010110111110110100110010001110100100111001001111010110101110000110100001010010111000010001000100001000110010010010010001000010101000100001111011101100000100001011111000101101000110101001000011100010010011010010110000111001100110011010001100010100100000010111011111111001110110001111101000000111010010000110001011011010101010000011111111000111010000000000011100010011001111110100110011001100110000111100101000100000000010111011010100011011010110000101111111110110000110010110101000011101010001011100010100001001101111011100111010100101111101100111100001101010111111001100011011110010011100001011100001101111000000110101100010011110010010011011100111110100000110001001101111101010010010001010001101110011100100101100010000101000011010110001000111111011110000001111000111100010000100010010110101111110001101111010000000101100000000111111111001111100100000000011111001100000010111111011111110111111001111010000011110011011000011100110011111000000000010000111100100010101011010010000011111011010010110010000110001010100110010101110011100010100011010110001010010100011000101010000011101100101001101011111000000011111100011100101000100100011111100101100000101001111110000001011000000001001110111100011101001010101001010100100010000010111010000110110101010001101100011011101110111100101011000011101110011010100010111110001010000100111111001101000111110101100001000011111111100100100101001101110011111111110111001000110111100100000100010111110111101110010101100110110101010110101011100001111001100110111011101000100011010101110111000101001010110011110000010001101000110100011010110111000110111100001111110100010110010001101010001101011000111110101101000100110011100111111010001101000011110010111011111000111011111100010010000010000111011001000011000100000111011001101100001100111010011111100011111001000011011100010001011101000110100011110011001110100011010001011101100100000000000110001000000010000110010000100001011110010110111000000010011011100111100010100110111000110001111010100100110000100111110101000100100000101110001001011011100001011010101011111001110001011110000000010111100001100101001101001111111110010111100011010110011011001101010011100001000011101111011010010101110010101010011001100010000010011100111110100011011100001110101101010100001010010100011101010001110011100010100011100110110011110101011010100001110010111110100111000001110101101000001000100110001011000010110111000001111101011010100010001101111101111110011100001000110110100100001010000010000011101111010011001011101011100011110010111110110001001101111100101000001110100011000100100001010111000100101011010100111001110111100000110011000000110011000111111100001101101110100111100010010000100000111011001101010011100100011100110110001100001011100011000100101010100011011111111111100110001000011101110111111101010000000010000010011000110111111100111001000001011000010010000001111100011010111001100111101010000011101010101011011110101000101000011110111111111011100001011010001100010000110111000001010011010111001001010111001010100101110011110101010100011001100011011010011110101010000100000010010101110011001001000010001111000111011010100110110011110111001001101000111110111010011010110101100111101110010111000001011000000001100000101011010110111011111101101000100100111010000111010111000111011110010100000100001010100001100110111011100110000000011000110000111110100110100110010001100100100001001010100010100010011000100111111111001011100001010111010010001111011110100001111110010011101100001101101111010011000110001101101110010001110100001011100011110101011101000111111110110011110100010001101000001111101100010011111001001000100001100101000010101001111011110111100011000000011001000101000010010010000100011000001000000001110000010100100111101000010000111110011000011010010011010001101101000001000011110101010111111011101110101100100011101111110100011000000011000111100111110011110000101010100101100001111110010101100110010111100000001000100101100001101100010000001100010010000111101000110101110011011010111000111010010000101011110100101100000000100100000011101011000000010000110011010111101101011011010011101010111010000011111100100001111101100110100011100001011111010100110101010001100101100100001010101111011111111101000111111011010110101101101100110011000110001101001111011100111101100100010111010011011101100100000111100101010100101010110100001100100011010010101101010101010110110001000111000100101100001111111010001100110101100101001001110010000111101111001101100010101010110100101100101000011101111011111000100100110100010000101111100100110000110100111110110101100000010000011111110100100100010011011100101110110000000101101101010000100110000000001110101111101100100010111100001110011010111111000111101101001100001000010001011001011100010010111011011100101000101110110101001101100111010101000010010010111000110110010101111010001110110100101010101110100100001010101101100110101010001001110101001101111101011011110011001001000100001011111111110001110011101100000001110000101100001110011110000110001011100101011010011110001010011100111101010100100101101100101011101100100010100000010111111111110011101000001101010011100101110011110101100110001001101110000100001101100111011100001001101010111011101001111111110011000000110001101110010000011011101000011101110010100010111110101010000011111010001110010101000110111110101100101011110001110010111000010011011111011100000111101110011010001001101000011111011011000101011010111101000010000111010111100000010101110111000011100111000001100101101000111111101000000100000101101000100010111000010100010010101100100100001010100110001010010001010010110010001011111101001010101110100101100110001011100001110001011000110110100011000011110101010101010001110110101110010111111000110111100010100111001100001110001011110110010000110101001000010100100111011010101001001111000010110111101011111111100011000110111000011111000000010100101001010100011011001010000001010100110011001100000100011000101011110010010001001100001111010000111101011011111101110010101100001101100111000011111000011110111011101110100100000100101011100111100110000001001111010111010010100000100011111110111010000000101111100111010001010101111100010011000011010111111100111101000000111000110001100111000111100111011000010000101011010000111001100011101101110001011100001011110101100101011000111000110111100010101111011010001011010110011111110101011100110010110001110111110011001001110001101001010110000000101001110100100011101110010110111000001001100010101001100111010011111101001011011111100011010011011000110101101110000100011101001011011010111001101010110001011011001101100101110111110001011100111001001001010100101101001011111000100101101011001001111100111010110001111100100010110111101111000000110101101101010000001111001111110110111010100000011001001100011111111010001000100100011100101111110000001110110000101111010001101001010010111001011110000111101101110111110110100000101011101100100001000011011101011010101101000101001010100111110110011001101011111110000100110011001001010001011000010011110001111110001111011011110011001101110110010100101101100010101000011000110101110011111101111001000101111001101111101000100111001110111000100001100100101101111001101010100111010100011001101111100010100001100010111001010001110100010100100110011100101100001000111011001110101111110010111010001000110011100001100100110111010000110001101111001100110001111111000001100011011011010010110110100010000101101011001011000101100100111101000100100001111011011100000000100100110110110001001111100100000010110011100001101101011101001101100000010111100100011110111110011010100000110100110001011000000001000100000010011000010101001000011101111010000011000110000011101011110101110100101101010101001101011111110111111101000100111011010001100111100011101010000001110100111011011001000101000101110001101000011101100110111000100011101100001011110011001111101010100000001011111011111111001101100011101100101001111110101101101000110000001110100111011101101000110101101110101110000010100100000101101101111011010111101001101101111110010100000000010001010001010001010011001010111100010100111110000100110000101011111101010111001011011101100101101101001001110101110000000100011001010101110111001000110011111101101110101101000011010111011110111100001000011110101100100010100110011010100011001011111100010111010010001110110001111001100111011101110011011010010101110001101110110000010110100100100011101001110000101111011010100110011100110011011111101000100000111001000011110001110110100001011110001100011111000110010011001011001110110101001010010101101100000111001100111000001111001100111100100111101101101101000111010110100001011110100110101010110000101011110101000010111011111001110110111011100111100100101100101011001011110110010101001100011111111100100111110000010110010110011011010001010100010100110100000011110100100010111010001111100101110111011100010101100111001111111010000010010011000000001111011100110010011000011100100101001110100000110000000100000110111011010011001110000001111110001000111011110101101011111110111100001010101111010111111100001100011100111011011100101011010101101110111000110001100110011111101011101011101100000000001010010100010011000010110001001000110100101100111001100110011110111100001000001010010010101110001000111000111101110101101110100110010001000110100100100011110001011111001001000101000101010011101101011111000011001000100010101011111101111111110111011010101101001000000010001100000101111100010010100100010100010011000100111101011010101100110111000011000010001000101000100110000100011101101100111001010111011011001000110110110010110100001110011101001001010001110000011110110001101011100101000100101110101100010100100000011000000011100110101101000110001101110011110110100000100100001001000010000001001110101110011011111110011001100000001110100100000111101110111001000101000011001110101101100111011111101101100000110001000000110100001010100100101100011111001011101111100001101000101111011010110101100110001010101010000010000001000011000101000000010010000111010000111000000000111100011010010000010110110110001011010000100111011110110000101010010100110000000011011101000011111101110110011011101011110000001000100101001000100000000010111101101111111000001000110000000101011111001111100001000000000001101011011001010111101000111011100011001101011101111101011000000011110111100001011110010111001011011111010001111111010001000000100011110110111100111100111001110000101110010111011000101001011011111001110000100000111001010010100100010101010111001111110111111011101001011100100000111011000101001000000110000100000001101110010000101101011000101000110001110101010100100010000001000010000001101010001001110111000010001101010010100110110010111100100000110111111010111110100110110011110011001011011010010111101101110100000001110100010000011101001111110001010100101001000001010100101011101011010100000100011011101000111001011010010010100111100011001101001001010010100000100100110110010111011111110001100000111011001010100011111101011111000001110111101011000011000101111100101111110001100000111001001100100011011011001100010011111101111011000101110110100001101110001100011101100101000000000101110011100010010110001010101010110101100001010011100010100111001101111011101111011110010010010101011000111010011001110000011001011101011100010011010110011111111001110001011011010011011101110010101011001111010011001001001011011101001101101010101001001101111111111011110100111011000100111101010011111000010000000010100101000110011101110110111001110111110011010100010011001010000111111101010110011001011100101001010100010100011101011100010100101010110100110111001110100111011111010101111010001010010111110100010001101011110111101101111010000011110101111010011010010010011010000101000010111010101100011010101111101010100000000011101011110011011000100101101110000000010101001010110001101001100010101111010111101101111010010001000100111001001010100110101011100111110101001011010111000010010100011010110111101000010001101010011001110111011101010011110000001000110111000000000001010111001110010001000101011001111000011101111011111111010010100110100010001111011100011101000000111101111000010000101111110000111010110101101110001000100001010011010100010111000000111001101100011011110101001100011001001100010101001000101000011111100001010000110010110011111011101001111010101001111101100011110000000000100011111000101011110101101110011100011101011001001000011110111100000101101110000100000000100001111001001111010101010110100011000111111001110011000111000011000111011010101100100000010001001010111100110110111110100111100001100100111000001100001000101000000000101000000001110010101010100010101011011111101111111111011100001010000001101101010011111000100001100011011111111010001001101010101100001010110100000001000001011000011010000111011001100100110011111000101000010111101000101110001001110100111101000111001000111010110111001111100011010001100011010111100101011010101010000110110000011001010001010010100101110101101100110110110010010001111010100010000010011111110011100101001011011011000001110001110111110011000001001101100011110110101101111110010000110101111110111000001011111011101001000101110001111111011111111110101111000101011111110100111011011010111011010101000001000100001100101100110011000011001000001111110100110111110110111101010110110110001110010000100111001111111001001001111011100000000100100110100010011101101000100000010111000101000001010111000100100101110000101000001111011101001010111001110111100110111010000100001100011011101101100000100100110010100001101000000011111000110111001010100001000110001101111011100011000111010111101001111010000111111111001100111000010000101101001010110111000111010100000011111000000101001101000000111100000100011011000000100001100110100011111110111011000100011000100011111001110011100111011011010100110110110001011110011010000010100001000100001000000100101011000010000000110001001000011011100010110110011011101110111111101000001111001101110001010100101001100000101001010011010011101110000000111100101110110101011111010010100010101011100010100011111000111101011110111110010000101000010100010000110001010001011001111111101110010011010110100101011111001101111110110111101010011100101110111110110011010001011101001001101100001101001000010011010001011100001011110001000111100110000000000000010011001001101110001010101111011000110001011100010000011011010110001111010000100100111100010010001000111001001000110000111001110100011010010101100111011110101011010000000001001001010110101000110100110011110101001011111100001110000111110010111111011000011000111101001110111011101011001011111110100000101110010010011010000011001011000000000111110111100000101101101010100100111101010110111110101011101010011111001111110101101001101111100010111100000110101010001101101001000111101001011001110001110111011110010011110011100100010101011001110011100110101111000000110111011011110111110110011001011111001100101011001000011001000000000101011010000000101100010110111010001110001101101110001110111011010100001100001010010000111111001000101110000110100000101011011100110101110010010011011000110111011110110100001001010011011110100010111010110111000011000000101010111100010111110110100111011010000100010000000010011100000000100100100100000110010111011001101000010011101101011010101111001000101011001011001100011110001110110010011100111000000110011101100110111001000110100100100111110101010100100111011100101001111110110010011100111110110110011010111100101110010101100011000010001001101101010000111011100000100011000111100110101000011001011001111000001100000011100001100011011000000100010000110011101100001101101111011100000001101000100010011000111100110100110100000100010101101010110101011001110101011110110001 +01111111001111111100011011001101001110111111001101011111010011100011011101111110000110111000011001010010110000101000101111001111010110100111101111000011010010100101010111011000111010101111101110001100010000111001110101110101000110001001101000010111001100101011001001011011000001000001010110101000000101110011010101001000000011010100101100101001000011110001100010010011001101101011001001100011110101101011000011010110010010101111101001100100110110011001100010011011011000100011001000100001000111001011000101111111101011000110010110011110111101011111100110101111000000010000110011110100011010001101011001010110111100010101111001011110101111101010111010101000101110101011111000001011000100001010001010111110111011110110101010110001101101001000001111011000100010101000111100010010001011101101100000011001011110111000000100110011000100110100000101001000011111000110110010000011001000000010110011010011100111100010111110101110110111101001001111000101000001101001001010010000000101011101101001010111101001111011001101000010111001110110100110010110010111111100000100100010000010110100000110011100100110001110111101001100011001100100011001101111000001111010101101101011010111100011101000110111110111000001000100001001110010101101110101000010001011010110100100100100110000011111001101010100111010100110110010111000001111001000100011011011111101110110010111110101011110100001111111001000100101110010111110011010110000111111001010110100110010010100101111010011110110111000101000100110000000000010101111011110001010010000001010100100111100101000100010110101011000001010101001100100000110010010000001001011110101010111110010100001010000101001111011110100110011100111010000100000100111110101000111110111100101110010000011001000001010010000011101100000100000011111101101111101010111000101111111101001010110101101011111001010100101111101011011100010101000110111001110110010111101110110111001001101010011001000110011111011011111000000001110111000110000010000011000100000101000010110001000110011111101100111011001101100100010000001011001100010011110110000100101000111100110111101110010000100111111111011001010001011100101101000001000010000110010010100011101100111001111100100111110010011100110010010110111000110100011101000110011001110000010011000110010001000110111011101101100111001010101110010010000111001010011100111011000000111101010001010100000010011111011010000101000011110101101010010111110010000000001111110111001000101001100111111011001010111011000111010100000110101110001011010101010101101101011000110000100111010100101011100010001001000101011000111010010100010111001100001100100011111000001011100100100101110000001100001100001010010001111010001000000000001111101110110010100000011111000100010111000011101101001111011100001011110010100000111001100111101000101110101000110011110101101101110110110100101000111011110100001000011010100001010011100001011000000001100111011010100000000101001000000000010110100011100100110110110010001100100101100111111111100001000000101010011001100001111011101011010101010001011010010001111001001100110001110011110001011010101111111111101110111011000010000111001011101101110110111000111010001101101101100101110110000111001010011111110100100110100000111001100000100101110001101100010010100101100110000010001001101001000101011111110010101111001100101110011000101101111101001010110100111101111111101101100011001101100001000110011100101011000101001001110001001110100010100010001111010001001010010010101110000101111011100100110101010111101000111110010011110111111111110001010011001010110101000110101101011101100110011110110000101011000110100010100110101111101011010100101001101000100110000011001001011100100100001011010010011101100001111100101010011000100000111110011000000011100100110010000011000111001001011110000001110101100001010000001101101001011100001000010100111000011001001010111001100100011011010100000000110101010000101010110010100001001001100010111110011001011011111000011111000010011001100101001100101000010111101101010110001001100101001000110100010001110010111011100100000001111110100010010101001110010100110010011011110001101101011100101011000001100100011110010100000100110101011001001101100111100100011010000001110011110011111100010110001111011001011001000000000101010001001101110001011011011011011010111000111110111100100011110111100111010001111011000111111100101010111111101010011011010101100111001110010011110110111101111100111111101100111001000010001111111111001011011100101110100001010000100000001101000110110101110100110011001000101100010111101111001101001000101100000100110101010001010001111001110100001001100001111011010011000010110011010110001110100001100100101101000111001000011100011111000000110111110110011101010101111111010111011001100110001101101001001001100111010111001000100100100001010000111110111001111100000001111000111000000011001000110111001101101000011101000011010001011111011110111111100010000010110100101001010101010010001111101001010001000010110011100000100100000010001010010001101100010101100100110111010101101100110111000011010010101011000011000110100101011010100110110010101011011000100110110100100110010111100111011010001101100100100111100110101111101110100111000011111110010011101101111011000100100110100011011001001000000100011101011110000000111010000101001010011001110010110000101101111000111001110001000000101100100001000010001011000101110010111010111001000000100111011110111110001010001111011011100001011110001100100011011001011100011010111001001011001011110101100101000100010010100011011101101111101000110011001000001001001001110110100110100101001011110111000011000110100011110000110010010000100000010010100101010110000101010110001010011000111111001111010101000011011110100001100110101010100111110000101101011101101001011011101010001000111100110100111100010001011111001000001010100111100000100110011100010110101000001101011111000100111100001101000000111101111000011000100110000000101100111110111111110000111101100110000110100011100110101111010110111100110010000111111100000101011010111010000001100110010110110000010100001110110111001011011100010110111110010010000011000110010000010010000010011101111111001100100000011001001011111000110100111111101100110101010110000110110100100110100101000000111010100101101001001101100010100011001010001001000010111010010001100100110101111110101011110001010110011110101010101110111100110000100000100010101001100000010101011011001000011110010111001101000000000101011101010000000100110000010000100101000110001000100101101011110010011011111111011011000010000100001001100111011100110011001001001101010111000110101100010011100101101010101001010110000001100011111011100011010101100011000001101011011010111110000000111100000011011110101000100010001000111000111011010110110011100000111000100001100001111111101110110010001101110011001011001101011100111011001110101111100010100100101110100110110101101010100011110101010111101001101000100001100110101011001101000110111001110001111011010101101011101001000000010101100011001100000010011000000000110000111100110001001001101011111000100101111010111101010110100001101100101110110101011100---------------------0000011101011111111110001101110011000101011011100010110101101100100110111001110110100101110000011010111001010101101001011100101010101110010011001011100110100001000100110111000001110110000110001111110110101111000011010011101111011011110000000101101000011100000010011001101010001100011000011111000101010111011011110101000000110110111011011110001101111100010001100101011101111010110010110100111010000100110010110111000010111101110100110011011000100100101110100000100101001010001000000001000000110011010001010100001110100111101111110110010010111110000010000011101001010101010101101110001000111100001001110111000110000001101001101101011011101011000101110101001000001100101110101010010110100000010100010011111110111000001010010111011010001100011110010011001000011110110011100100111010100101011010010100011110000101011010010000101011011010010111001000001000011100000100010000011100001101110101001000111011011110111101001000001011100001011111010111000001111011011000100001011000101100100010110111001000000010110101100110001000011000101111100101110000111010011101011011011000100111100000110000011100110001001000100001101010100001110000000000011110101111000011100101101010001111100111010110111000101101000000101000100011100100010100010000011110000010111001010100111001111101111101001000111101011010111011110011010000011001101010011110010011101100001011101111000101000100101001100011101000001101010110000011110011011000000000110110101101100100011011010111101110001001111101100110000001100101100011010110011011000100101111110111111111011100110111111111110111100000010100010101000010010011010111100101100101011011100011010001111101010111111001000111000111100110111010001010000101111111100010000011001111010100101011011011000001000100100000110001111111011011110100111011001000100100101001010111001100010100011010010101101011101101101111000110000111010111111100000111001110001001011111101101100110000001011000101000110110101000100010010011000100110110010001100011111111011011000100001111100010001010010100001010001001111100101101011110001001011101111010110111111011011101010111100111110011010101011000101000111111110001100101000101101001111101001011111001000000000101100011000110000010100000111101000101001100110001011010101111000000100100100010110110111110101110000000101101011111001110000101100001111101001010011000010111011001011110011110110011011011100010100101011100101000111100010000101010000011000111000111010000011001100001110110110110001010110001100001100100010010111110101000010101011011010110101010000100111111000110010110000110100110111000000011011010111001101100101100100000011010100011011101111110110101110011100000011000101101010111010000101011011000111001001110110101011101010011010110000111100010001010100111100110000111000000110001100011100100000000111111001001000010000111111001010100010101111000101010111000010101110110010010011110110100101001001010000100010101011010011011011101001101101110000011010111001011101110101011111001101100011111011010001010001000100011101011010110011110000000001101011001011000001111101111010001001110111011010111100010001111101111111000010110001000101110001100000000001111010000101101000010101011011000101001001110101011011000000110100010010001000011010010100011000010111100100010011101110100011001011111110010000001111111000010111010001001000100010000111000011011011100000011011100011000001111100111110111010011001011101000111110001001100110010111101000001101011111111001110110000001001101010011110000011001010100110100010101100011100011100111110100001100101111110101111010110101111011001001001110100100111011101111101111000011011000010110101010101001110111100101010110110101111100100001011111010011101100110001000011011101001011000011001101000000110110111000110111100011110110110110011111111111000100011000000100000100100110101100110011111001110101100010100111011111100011100110010000001110110001010101001011110110101101000011111010011001110011100110111011000111101011101001011101101100010010001010110101010010110011111011110011111000001101010011110010110001111000011000100101110000010111101011101110000000000001010000110110110101011101111001110010110010011011000100110100101110100001010010001101100101011100111011110111010110100110100011110110110111101000011101110101000110011001000010010110011001000111111011101010000011100010011110100111000011100011101000011100111010011111001011101010000101001000110010100011011110111000100110010100100100000101111100000111100101000010111111011111111010111100000000001110110100101010100011111101100101111101000001111000001001001000110110111101000100011000111001001100010101011011001001001111100111010111001011111000010110111000100101001001010110010000010011100111101111101010010111000011010011001111001101110111101010001000101001110101111010011101100111100110001111000101011101011110100110010011111001100010001111011110100001001101000011001011100101110100100010001011101110110001101010000011000011110111000001101011101110111001100001001100001010001000001011111011111001101000010001011110100100110000010111100110001101001100101110100011101111001101101011110011010011010110100100101110101011111101011001010001000101101000110001001110110001101000000111110110100101011011001100000000000110001101011100001000100011011100000010001111001011110110101111100101111110110011101000101010100100010011000111111110011110000000010110010110000110011001101111101011111111000010101110100100000010011001111110011011000000110100110000011101011011000101110011100001011000000110101010000011100011111011000110000101000010001010001011111111000000100000000001110001011111100110010000001011101001110001110011101110000001100100011011001011011010101011000110110001110101100110010111111100001000101000010001111010101101011110000010001001010100100011110101000010101110100110111010001100100101000001011011110001110110111100101110111110101010100011101110110001010011010101000100010011000101111101110011011110110111101100100000000111010110011100110010111110101001111000011011100101111101001001110100000011001011111011000101100110111010111111011100110100111001010010111001001001000000000010111101111111100110111001110110101010101111001000111010001001101000010100000100100100011100100110110110111110110110110001001110000100111100011001111100011000010110100010000000100110100001000001000100010010111000010001001010000101001110101011100110000000001010100000111110000101101010001001001101001011010101011011111101111001010111101100111001001110011100111100010101111100111110000000110011011010011001000100010000110100100101001001010101111100101001011000110000101110011011100100010100101010011001000011100010100110011011110011001111110100110100101110110100110011011001000001000110010101011001010000111010010000010101101011110010101101100100001110101101001111011110010101111001010111110010001000101010110111101111000111111110000000100110010111001110000001010101000000111000110010100011010001111111110100001100010010000111101111110110011011010101100011000101001011000100101100100010111100010001010011100110110001011000001001110110101100000111010101111100001110010010110011000101011101000101110111011110110101010011001011101010111011010010000001100100010111100001100100010111101000101100001101110110011001010000111011110011100111010010111100110110000010000000100010011000011110111010001011001000101011110110100001110110110110101110001001000000011011100101011010111011010011000110101110000000111001101111000111001010001001010101000110010100001001011000110010111010110011111101011111001110011001010101011110111100010100001101101010110010001100001011010110110100010101101000000011000000011000010000100110111010000010001001111100001111011101111110101000010011001010100111001011011001111110101110100001000010101111101000011000010110011011100101010110011001100000011010101010111001000111110010011111100111100001100101101000011110000011110110111010111001100100010000101011010000000101011001111000000100001011001011101001101000101101100010100000101000101100110000001000110110010011111101000010101000110011001101001101101011011101001111101101111100001011101011111001100010110111110001110111001010011100010101110011010110101010101011010000001010001000111000011011000111100011001011010111010010110100111110110100000110110101011011011101101101010100000111010001101101001100001011011010000000101001111010001111100011001000010011000000110011001011000010010000100101001111100110111110101000101011111001011111101000110011110101111111001101000101001111010001011110111110100111111000011100001011110101101010011001000101110101101011111101111000010011001000110001101110011101011011101111110111110011010010111001110111001100110101100011001011001100001001000001101111000011001101100010111001111101001111000101010011100010000000100101101000100111111011000110101101011111110001101110111111000101110101011101000110101100001010010001101110001010111001010111111000010111010110011001101011010101110101111000100011001011111101101111001011011110011101011100001010101110110100000110010000000010111001011101000001100101000001001111100010110000110001101000110100001001001001001100100100000101001110110111011111111000111011110001000000111001110000010011111100110000110010101010011010001001110000111110111101101011100111101110101000010010011001101110110110110101000010011000101010001001101101000101101000010100010111000100110001110001110000110110000001100001101010101001110001001000111000011111100000110100001010101100101111011010100001100100110101001010110110111111110001110010100101100011011000110000101101101010110111010110001000000011010001100110010110111000100010011011000111010100011110101111000001001111000100001000100000010001011110010110100001000001111000111010011110001001111000010101100110001100010000011100111001101001100000110100011001010010100011011101010001001110010111001101110110001011011001101001001001100011010001110110101000101010010111011011000001011011011001111111010100000101010000101010000100010111111001110110000100100001000111111111011011110101110111000110001101100000000110011101001100010111110110111100000010111001011011100101010101000010111100010101001001110100101011100101010001100101110101011110100001101011100100001010000110101110000110100100101101100010011010001000100111110110010001100101000110111101100011111101111110010110000000001110100001011001110001111011111010001000001001000100100110011101111010000011111111000101101000101111000001010110111100001111010010101101111100001111111110001101101101001111000101010101101000110010111110001010111110011011110011011001100101000010111010001010011100101011011010011100011000001100110110001010010101101111000011101110011011110101100100101111100010101000010100100110111101100001000101010100111000010010000100011101000111011100110101110111111011111110100010001001010000101100011011000110111001100111111000010110001000011111010011001101111100100100010100100000010010001100100101111001110111110101100110100111101100110001110010010101010100001100110101011101011101011111100100000001100110011001110101001011000100111110101001010111100111000101100110110111101011000110110001000110011001011111100110000010000000101001010011011110101100010110111011100110010110010110110000110000001110000100111101110010111101101100110100100010100001100001001001001011000111100010110110001000110111011010101010111000010000100111010101101010001011100000000010101100101010111000111000000011010011111000111010110101101101101001000010011110111101010000111100000001001111101011000001110100001000001011010010011111101110101011001110001100000000100110001010001010001010010010100111100001101101100010010011010010101000001010001100010010000111111100011011011111000000010101010000101101100001111100010000000100010000110000001000110110110111101110011100101100101100000101010001111111011101100111111101000000101111101010010001100100001111010000111001111101000111111001000101000100011000011111100111001011010100111100011101110001110101101110111100010001111110111101100001100011011101001001001111011000111001011010101111110001011011100010110110000101111111011011000001011010010001000101010011111001010000111011111000111111101111000000000010000100110001001000111111010001101100111010000110110111100100101110101110011110000110010001111011011100010111011111101011011001000101011111000000000010101011110101111100101001111000011110111010100111101011010010010001011110000010011011010110011111011010111001100101101110110100011011011101001111101010100101000111101110011000101000110100100011100001001101110101110000011000111001011110000010101000011000011100100110011001011010000100100000011111011110011110001011111100100111001001001000111010101011011011110001111111101010000100011011110111011011110011100100010010000100000100110010000001100010101101010000110100010011101001101111001110111110000010001010001101110010001011111011100110000101000101110001001101111110011001011111111111101011101000100111110000100101100101110011010111011100101001001010100101011110111001110000001101000100000000010100010100010110010010100010101011101011011101001101101110000001111110100001100011011101101110011101110001111010100011011111010111000010101101100101101101111110100101100101010101110010101011101100111101111110100001011010010110000111111111110101100111010000100111111011101001011011000011011111001001010110011011000000110100110010100100001001111111010011100101101110000001010101000010011110000110011101110011101100100111110101101001000101100101000100011001010000010100111110011001011010100010100111011000010011111101010110111010001000010100100000000000110001010011100100101001000010000101001010001000011001000000000110010000000101100010101111001100100010101101110100001001111100001011010000101000101110001111101011101111000100001000101111111100101001100111101101001111001101101011101100100100001010000000101011001101100100111000001001110110111100010100011010000001010010111110100001111000111111110011000100011111110010001001010100011001100010010111000110111111000101101001110111011001011100100110100110101010110001101010100011111001100000111100011101111110001001001010100100010000010001100010101110101100011011010010100011110001100111100001110101110100000010010001100111100011000000011110011101111111001111101101001000101001100110110100001111000110100001001011000100011110100010011011101111111000101101111101100011101011100100010000101101100010011101011001101011101010101000100111001110001011111000111001110000110101100101001101111010010101011001010100001101001111111011001001000011011011000101010011110011010011100011001011010010111100101000001000001111111010000000111111101011100100111111100111111011110000001100111101110100001010001001111011110100101011000000100101000100011111000100001010001100000100110101110001101100111011001011001101111100010001111110101011101110000011001011000101110010111100101111000010010001010100110011001101101101001110011110111110101000000101010010100110100100110000010010111100101010111100100001001110010101001110111111110101101110011111100100111000011100011101000100011001010010111100111000000011100111100101010110110110011010011101000110101001111111100101000110111011111000001111110111001110110111100010111111000000101100111011000001111001100000000111001101010110111110010100101000111101110011011011100101000111010010000010000010001100110001100111001001100101111110001000000101010001110111001100000011000001111100101111010011100110011011001111110111110001001001011101001101101011011000011111110011110111010111010110111100001011001111101010011111111001001110100001001101010111101000000011001011101111111100100001111010100111011111000100100111001000110110010110010011000001011101011110000111001110001111100001100000000011111111100101011010101000000000000000001110011011101110010010010110111011010010100100111011001000000000111000000110010110111110011100010110011011011111001010110010000010110101111001000011101101100101011110111010010000010000100000010100101000011110001000110100001001010101101110110110000100000100101001000000010011101000011100101000100011000001001111110000101111111101101101001111011001001010000011110000001011110011000111010100000000011000100110010110100101101001010010010110000110001101010100100010000000000100001001111101101011010100000010110101100110001111111001100000111001000101100111010001110111000110010000001001110111101001100000000000100110110100010011111001001111010000101000000011110010111111000000101001101000100101111001 +00101101101000110011001100001010001111101010000100111110101011110101010011000100101101001001100000110110101100011010001100001010011110111000000100001000011110110110101000110101001011101111000011100111110000011111010100110110101000000001111111100000111011010010011000111001000001111111111000101011000111111101110100000001110101110110010100101111001011101100001110010111001011011110100011110110100111001000101000111111011101100110101100100101101100110110101100000011100011001111101010010001110010000011000101010110110111001100010110111100010010011100100001110111110101001011110001011101001000110010111001000101100011001010100011100000011000010001111000111100110000000011110101001111110011010101111110011001101010011110011100001011010111001110010111011000000111101100000101111001001110101011100111010000001000110110111110101111110100101101110101111101111100100111100010100111011101111110000101101010100010111110011110100101100100011100001111001010010110010010010001100011001010001001110000000001000011111010110001100000000110111101010101001011110111100011111100111000111111000101011010101101100011011111100010111111001101010101110111011000111111000111111001101001101010001111000010100011111001111010001110001101001100010100111000100100010110000011011000001101001110000010001101110000000111101000100011110010110010101101010011010010110111010101100010100101111111001100101001010101111011100100101011110101111000001000000001010010000010101001001001111110011111110110011010100101011100001000111001011110001110100000000010000110111000101011100110011011011110110110110001011000110001111111011100100011010010000100000111000001010111101011010101110101110100100111000110010100011000011001000101111111001011010000011011111101100001100111010101111001001100001101110101010001000010000111011000101101001011001100001000001001111110011111001010111010100001111011110000101001110100100100101110100011110001110001001000010110011111100101011000101101101010001111000110011100101011101101101100110101001111001111000100011010001101011111010000110101001101110000000110011101001001011010110000111011000011111100011001100001110110101000010011110011111101110001110010100100011101000101000100001010001000101010110100110000010110011000001101100110101001010010001001111100100010101110110100111010111001011100111010010001111111110010100000101101110100011110100010100100011010110011100101110011100111101001001111110011000000100101111100000111000111001000110101011010110011011101101100111111100110100010110111111101110100001100100110000110101011111001110100100111100110010000110100101110001111101011000010110110111111111111001011110010001101101000100111010111100011101010100010010000010001001001111110000101101001000110101011010100100101110100100110111000101000000110101101110101001110011101100000010010001011101011000111110110010010001011001101110010001001010110101100110001100111110001101111110111101011000110010110111011000101011110000100000111110010111100011011110100110011001001110011000010000010110101011110001011010010111010011010110001001010101110111101101101101000100000001010101100001100000101100111001110100101110000100010011111001100000011101000010100000011011001011101100110100100101011101100001010011111010011110100101001100111111011000000000111111100100011101110000100000101001110010100111110100101000110010111110001110011010010111000110011001101101101000101110101011010011011010000100001101010011001101010110101000000000111011001001101000111110010100111000010110111001011001100010000111100101110101110110011111111100010011101011000100010111111001001111000111110001011100101000011000100000010011110011001011010010000101011010111000010101111111100010011110011100001101111110000000110011001001101111101101001000001010000100111101101110111101110001010110000010001100001100001001010001101000011101001110101110100001000011011011000111100101101110111000000000001011110001010100111100001011110001001101000011011101010001101111111110011000101001011001000101100111100110001000110100010010101001111010110000011011001001110010010111101100111101100011110011010011010011110000011010001000101100101100011011100101100111011000111000001110001100100100001000100010100101011100100011001010100111100011101100110001110010101100101001100000001001110010000111010101010110011011010011101101000110011101000101111100001001011101000000010010001000011001101010101101000000000011011000010101001101110011101000111101111010100111000011100111111111001001010001101101101011000001011100100001110110101001111100100100000110011011000000000101101100001010000101001110000000100011001000011101010010100011100111111001111001001010101011100000000010101000001001111101100111110110100111001011111000010100001110111101101000010111011101111000100100011110100000011110111101101110000101101000001000101100010110010010100001001101010110110001001010111111110001101101000001100100110101011010001100000101110010100110011000110101011000000001101011010100101110011111111000101000101100111111000101110011101010000010111100100101100101110110010000110110011001000001011100000110110001000100110011111010110110011010110111010010100000000000001110000110011001101010110100011101011100000110100100010100100101111011001111000011010010111101000101000001001111011111111111100101000100101111110011011101000111010011000110100101011111001111011011011000011110100010010001101000010100010010100000011110010011110001100111000100011101010101010101110001101001000011011010001001100000010001111100011100000001010101010100111101101010001111010100100101100010011001010111100011111111011110101011001010101110101110010101010111010001101111001111110110011110011110010110110101100110100001000110010000000101001100101101100111111001001100101001100100101111011010011010111110110100101110011101110110100011100011000111011000101000010000111001010011010001111010011010101000011111111000001000011000000000101000101100011110111100001111010101101100001001110001000111000001000111101010101011001110101111100000110101111001011110011000010101110101111100000110010100101110100010010011001110001111010011001000110001110111011111111100000011110010000100110110111100100110010101100010101010000010111000101011000111011110000110010110010010101000110111010011101000000000001011111111100111010001011000001101000110110111000000100001010100100111110000011110110101011110111100100110111011010110110000101111100110011000111011010010011010110010110101001101000110001001001011001101011101111100100000000000111001001010100110110001100010001101011000100010001111011110101111011010000010000110111001000111010011011000101111110001001111010101010110101000111000110101010110000111010111010011100011101101110010001111111010100111101101011001001001000110010111000011011110101011001001000011100011001001000110111100001010101100110101000010111010100100110011000011001101111101100011110000101111101111101100000011000110111000111010110111010011001111011101000100110110011010100011000101001010011100001111101101110000100001111001111010110111010101011111111100011000101011110100111010110000001000001111000011001011101111011111001111100110000001111100100101---------------------1100011101001010110101111001111010101100010101011000101100110011011001100100100011111001000111000111100001110001011001000000100010110110001101110110001111011001010110010100011001111110010000010100010000110110001010110010101101110111110100000100101001010110100011001010100101111111001101001100001001110011101000110000110011101101111001110001011001101101101011011110111001000001100111010000110010000011101011100001101010010000101011001111110010101101010000110100000010011110110010100001000111000011100010011000111101011010110101101011011011000101111010110000001000000000000100010111110100111111101001000110001111101111101100111110100101010110001000101001111010011001101011100001001011000101000111011001101110101110001111110001010010011101001110001001111101010010111110110101001111000110001101001110000010000110100011000001011001111001001110010001010010001001011100000000110101111101001001110110001111000101001100011100111111011110010000000011101000110011000001110000011000100110101101111110101110000010111000111000000000000011111010101010101101010101101110010101000010101011001110000000001010111111110111011001010111010001111001110101000011111101010111010101010101100011010111111010011010010011100101110101100001000110000011100101010101010110110001000010111111010100111001011000100101101100011000111111101001111010100001100110101101111000100100010011111110101010000111001110100101100000101000110101101110001100001110111100011001011101100000010011100001010011100010010111100101110011010100011100100010000001001001001111100000101101100010000111000000000001111111001101001111010101111000010100011000001101101001110010101001101001101011000001011010110010000011001110000101101011010011010011111000001001111110010001110001111111101110000111011100010001001000011011001100100110010010101001111110110111101010111011001001101010101000101000001011111000010111000101100001111000110000110011100101101100110011010110111101100101101110010100010000000001100111010100011111110010100001001100011111111100100000111101101011110001110110101011110000001100000011101110100110010111010111111000101101100100011000011110111010100100111100010011111111110010100000011001010111010101010101011101001010111011010110100011110111110010100101010001000100100100000001100100000001011001100000011100111000011010010000011101100011011100101110010111100001111100010001000100010110101011010110001111001000010001011000110011011000001001000111001001111000111001110111001101010101100000110100110100001111011010001011101010011100001000100101000000000111100011010011011011100110101010100101011110111101110010100100110110100100011111110101111001001110100110011100000010110101101110100001010100111011100110000101101000000010000110001001000010101001001110111111110101101111010011000111111100000101100110010111110000110000110111110111010111111101011101010110111001001101000111101101011000000010010000101001001011000001000011010000011110011010000110010010101111100010111111111011111010000011100101011101101011110110010101110010010111011010010000110011101100010001001110001100111101101001001101111111110100011001011001100010101100010100000011100101111011110110000000101111011101110100101011000000110110001101001000000000010101010000101001010001001111101101000001101110101101110011101001000101010100011110100101111000111100011110010000000111110001001100011110101001000000101111101011001111110110011101001000011100100010110010001101010110000111110101110011001111100011011000101001110111000101111010100011011001000100000001110011011010001101001011010001000000001010011101101100001100100111110001100111101010011010101010101010111010001000111010000010011001101011001001110001010011011000110001010010000001110001010011000111111000011010110001110110011100010011111010001111001100110011100001011011000001100100110111100100100010101111001000010010000111111000101000011101011001001011111011100000110010001011001100100100011101000000011001000101100111110111010011111010111001010000011110000111111100111010111110000101010000001011010110011110000101100010110010011111111111110010001101010010110001011000010100101100000001000110110011111100001001001010101000111000111001101101110110011100010101111100110000110101010110100001001010000111011100000001001001011011101101111100000010100011000110110010001101000100001000110001101110100111101101101001101110001110111010001001000000011101100110010001010011010111001110001111111010010000101110101011101001111101011010000110000101011011110000110110101000010100010100111111000000111001110010010000001001100101111101001110001100111000000110111001011000000110111111001011101101001001010000011100111011011010001110101011111110011000000100001000111010010011111010111000010000101011001100101100111110111111111100001001111011110100001110101101110101110000110111000010101001010111111011000010001011010101111010101000100100010011101011000101111101000001011111000011001000010011010000001001010010010101010011011100100100101110111101110011000000100111111001111000100100100011110111100000001011011100100111101110111110010010101110010001101101100111010010001010001111111101011001110110100010010101100101000010000101110110011010110110100011001011001110000001101111110110110000101110110100100110100001110011001010111100100110010010010010001101000010100011010101011111001110110001000000000100110100101101011010001001011000111000001010010001100111011010111101100000011011010110011001101001010000010010000010110001011010011111111010000000010110101101000000001010010011100010100010010010100011111111000001111111001110010111110111100010001001011100001111000001101110100000001111100010010101001000100001000000001110111101110011100111011101001101000101000000101111000101100010100001110100000111001011110000111100111011101010011000111010011100010100101111011100010001111111110100111111111111001000100000000000011100010100001000000111001010101000111110010001110111101110111000000010000111010100111110010010101000011010110111010000000110111111111011100011110000000111100100111111000010110101000010110011101100011000000100111000001110011110010010111010101010011001110000101100110111101000010101111100000111010011100111000110001011111011111011011011001000001101111101100111101010011101101010111100011111101011100100100000000000111010100010011010001110001101101011000010100001011111000111111100000000010011010001000000011001011101001001011100001110110110101100011010101111000010010010110011011101001110011011010111011011101000110010011000101011100110000110111001110001111110011011110111111101101101010101110000000000101000110010101010010101101001010010111001101001100110000001011011011101000011101110011100101111111111001101011010111110100010111000111010000100011110001010000011100111100000000110010100101110011011111000011100110011001100011110011000010001101010000111011101011010110000111000000000100010001110000101010011001111011100000101111111111001111100001000100001001010110100100010101000000101010000000111111011100110101010111101100111101011111100010111111000101000000111100000001111001011011101110001000111010100100010011011111100001110011101111100001110111001000110111011010111100100110101111111110010111111110100111111000000001011000011111101110111111011100010010011001001101001010111111001100110011011101000111101110101100000100110101001101010100101000010110000001000000001011010010010110010001010011011110001111100011010000001001010110010101111001000101101011101001111100001110111011101101111101110000111100110111100111000010111010111110110010110110110011101011110111100111011101110001101001110111101111111001010010100011011011100000000100011110001001010100000010001101110001000001100100011000110100001101100101001100000000010000101011111111010011011000000001100100011000001001010000011001101010100100011111101000010101101100110101011111111111010100011110000000110001010011101111110011010011111111010100101101110101010011000011110100101101111111011011111111110010111100000000001110001011101101001001100100011100110110001100110010010101011010001110111110111110000011101101010011011011010000000101110010011100101101010000100111101100000011111100010110000101010101101001111010110111110011001111000001110110110000000000100001010010101000000111111110010111001101101001010100101110010000101011000000001100010101101001011100001000101100010010100011110100000000001001010111110001000111110101011100101110001011010010000101101111110111001101101011001010011100000011000110101010000010110101111101101000110001000001101111110011100010101101100000010101000001010001101100101001110011101011011000010101100101000011100001000010101100111101101111100100101100101001011010100011000100100110000011100011010010101010110100000110011001011111101001110011100110100110001010101000010001111011101101000011010110101111000101111100010100001001111011110101101010011101011010010101100111101100011100111010000100100010011100001000011010010011110000100001111000001111011001011001011011011101111100011110000011101100101100000010111001110000011110111101000010011101101001110001000101011100110000001010100000101011000011111011100001111011000111101111000001000110110111000011110011100011010011110101100111010011000111000011010111111101100001110101101101111010100111111110110110001001110001111010110101101011101000000001001111110100011111100110010110101101111011101011011111010101011001010111110011010001101011100110101010101111100110110111000110101110101111011100111111110001011100010111001100011001011000010010101100011011100110111001001011100000010000101100110110001001000100011010110111001110111110100101000011100010001000101101110100001110010100001110001001000010110100110100110001111111001111000100000111110101000011100010110100100000010110000001100000100110000001000010011101011111000100010010111110001000000010111011100001111011111100110001011100001011110100001000010011110011001110011010000111010110110011000101000001101000111111110111011011100111100100000001000010111110100000101101000000001011001111000100101010101111010011111001100000011010111111011011000011111100111010100101101011011000111101010110001010010011100100101010001110011110010001011100101110001110101011011101101100100001001000101101010001001001110010001010010010111010100011101111111110010110111001010000011011100101010111101011101111110000010100010111110110110001111110010110101101111011000111110010101010110010010001000100010111000001111110011111111001010000110000010100000001011000101011010011111001101111001000011111000101100000000110010100100110101001000111001101000000110001001010000000000010100000100010010100011001101001001110111100100100011010010000100010010100011100101111001001110110011001010111111010111000100000011101110001101110011001100100100100101010111010001101000101111111100001011101000011010111101011000010110000001000110010001000000111001000001110000100001100011101011110010010011011001101101110111110000100101110111011100100011101111010000110110011000011000111001111000111100110110100110100000010011001010000110000010110001101100010010101101000011010100100111000010011101100010111100011011000001001100011001000000110111110000111101000101111010111011011100111000100101011010111100110001100100011110101101011001001101110010100010101100101100111101100000110111100100100010011001101011000100001000000001011111000100010100001000110010010110011001111001000110110101001100100010010011111001011000101111001011000100101111010111101000011011101011011001111110100101111100110111010110111000010011001011010101000110100111101010000000101110100100100001010001111100010001000101010000000000110011010011101011111010111101101111111100000000010110111010011100110000100101001100100011000110000001100101000000011010111000001001001010000000110100011110100011101111010001110011110000110111010110101010010001011111100001001010101110100011100110111100100101000001001100110100111001111101110111110101001010000000101110011100110101101010010001010110011010100011000010110101001010011110010110001011111001000110100101000100001011111110111110110010110001010100011001100101111100011110101001111010100001101010010101010011111001111010110110101101010111110000010101100001101101101000111010101101011010110011101010010101010111111111100010111101011000110100000001010111001000001111111010110011100000110001100011100010101111100011001101000111010011100101100110000000001110011100010110111111000011110111010101010101010101010011110000101100101010010111101100000111011011000110000010011010010000101101000100100000100010000110111101111011101111100101001111110110010000101101111011111011011000101011111011011110111111011110010001110100010000010000001110011010010011110110101011011110001100101100100010011001111100011101010111110010001110101100111001100101001111100111111101001100001110111010110101010101011000010011110000010111111011110011010001101111101111101101001100110111000010101111011100001100010001110111101011010000011100101100110010001011000000001000101101110100011100011000000100000011010101100110100000010010101111111011111001101101101010010100110000111001111100111100110010101000011010101111010011010100110010101001100000011011101000011000010010111010110011010011101110100111100111010010001000101110100000010111000010010101000001101010011010000111111000111110000000101010101000001101100000010101011101110101101100001100100010010111001100000101010101100101101100111000110001010010001010110101110000111110100001011000101001001101010011100101000001000100100011101001011011011111100010000110111100010010010010001110000100010111101101111111111111011101100011011110100100100110010001010110101000111011010000111000001001110010100101100000010011001011000000110110010111000010001011100011011100011011000110010011011110100110111001000011011010001010000100111000101101100010110000110101011010000010011001000001110110001110111000100110010000101011110111010001110110110000101000010000111010100000011110001011111001011000101001100011000000011000111001110100001010100010011011011011111101011101100011101000111110011011011011001001011101111110000000100001101110011000110101110110111011100100001100011110011110001001001011101101101111101001001110010100111011110100011011000101011000111010100000011010010101100111000111101110010100111100111100101001000101010100011101101000011111111000011111000000011100011110110010000001111011100101111011001000100110111010001111101001001100111001101001110000011001110100100111000011101111011000000100110010101011011001110101110101011101100101100101010011100011011011011101111011001001010000101100001010000001001101000001101100101001000111110001101000100111111101111100110101101011110011110101110110001111000001110101000001111010011000100110010100101000000110100111001100110111100011100110011011000101000101101110011111111011100011101100111111000010010100111111000011000010001010000100001001111001111111110000100000010010011010000010001111100000010001100111111010010110111000101001101011110001001101001011110110011001010010011111101001110101101000001000100010111111100101010101100100111100000010110110010111110100110110011111011111011111001010101111010010101010100001011101011101010011000010011110001000100111001100011011001111001010000010010000000110001010001110010101110000101111001000110011010010001100100100111100100010011100000011100010000101100101011011111110010010110110011010011000000011001111101000011111010101001101101111011101011100110101001010011111100100010100111010001100111010110010000000100001110001111001101011011011011110110000111100101000111000100000001000100101110100111000100010100110010100001101010000100110110011110101011100101101001010010100101100111101011100100001110001000110001110111011110111000110111010001101101001101000001101110100011000100111011010010001011001001001110010010011111110011111010111000011100011010111110000000100110001100110010111011011101010101001011000010011111101111100001101100110111010101111000011110100111010111101001101011000000011001001101111110000100000010100110010010100000110001111001011011001000011101100000111010011101011111000011101010011000101001111100011100111000011001100001001101010110001000010101011011101000001100100111110101011101001011100100111010100111000011110100001110111011010111111001010001000111101000101010011100001001101101110100000101000001011001110110000101010100111000010010001101010001001110101111111101111011101111111001001111100000110001101011010110110100110001101011101001001111010101111100100001110101011 +00101101000000110000001011101100000010100011101000101110110100011000101111101100101111100000000101101101101100011101011000100110101100001111100111111111111100110101001111010110111000100101101000000100011000000101010101100100110100000101000011010010000111111100111001100001100111110110101100011111101110001011111011010111101001000001001111001011011011110100110110111011001000110010110010010110001100011100001000101011001111001110100111000111101110000100101110100001000100110010100100100001111111011000010011011101100111010110110011101011110011110100011101001110001100001010110110100110001100011011110100100101001110010101100101011010001100010110110011100101100101100011001111010010110001111011101011111111111011000101010000100011101000011111101110010011011011001101011100101101111111111001100101010011111100001110111001000010000110010010101101100111101111001000111100010001000110010000101100010100100011010000110011101011100011111000101100000001011100110101000010110001101010010001110110100101111000101101110110101000011001100011110011111111101100110111010010101100001111110011101011011001101111000000010110101101011110100111000100111011000110100000010111010101100001011101101000111011000001101110100101000101111000011001111110111100111010010101001010011010010000110111000000001010011101111011001101001010111101000010111001000110101101111111010001001000100110100100101101100101001010101000101110000001011011100000001010101000101110111010101001110101011011111110111001010010011011111100111100010110101011100111001001100111000001000101010100000001110111011111001010011111010001100100010001001110010101000101000100111001110000000010100101111100111001111001000100101010100000001110100110101111010011010110010100111101110101110000001111100111111011000010110110111001100100101100111100010000100001111110001100001010001111111110100110101011001111001011011001011010000100001001110111010000101101010101000011100111111011011100100011100001001010101011011000000110011001011100000011111011000000100011100100100100100000011111110111010011101100010001100000111100011011110111001111000000100101001110010101001111110001000011010101011110011101010101011010100111101001110110100010101100001100111101110001101000101111111011010110000100010001010010111110001001010011111011010000111001001111100011010111101000111101111001010000100101101011010010100111100011011101111101111111110101001010001010001011101100001011010000010111001101110010101100001011101110011000100000000000111011101011111011001001101010011010100110000010001110110010101111010111110100011101101100100011010110011101111111100001100001101100100010100100111001110000010101011001101001111100010010010010001001010001001100101111101101110111010110010110001111111010010010110010110000101111000100111101010101100011000001100110010000101011000111001110000000101011011011100101110001111010010011111100100100100001101011110110010011011101001001000101100111110010111110111110001010110001010101111111101111001000000100001011100111111111111010011111111000000111111000000001000111111110001010000010101010000011101001000111000000111101110101001110100100101110101011100001110010100111010011001110010011101010111100001111101000101101100111010001000111101100101101101011001001011101000111100010111011100100111111001011011010011001000010011001100111110000110010000000100100000101110011101101000010000110010000000011001000001000001110000101111011111100111001000110100001010011000100101100010011001110001001000000100010000110111100001010001110101011111110010100111010110001010000011010111010101111110110011000011111011010101000011010101011000001100111101110101101000001000111011110101010000000000101110111000101001111010101000101100111110100111111011111110100100010010100101011001000110100010100110010110000010011010111010001110101000100101101000000101110000111000001001101011101110011101101111010001100000111111100111011000100100011011110101110001101110100010110010110010100010111111101010000110000011100001101000010100010100010111110000011111001001001010111110000100110111110111000011011010011100001111110110010000011010001100000000011011101011010000101011100000101000000000011010100110011011000111000110110110100101000101000001101111101111110000011001010111010110011000001000011001000010000001110001000110010011100000011001001000000110110000101001000011010010110010101001000100101110110001101111010001111111001010000000011111010001010010010011101000001011100000000000111010011010010100111101101101111001100110010111010000101101010011100011000011001000111101111110001001101011101111010001001001111010011100001010001101010011111110011110000110110000101000010110000000110110000101000001000000101101010001110000000010010011110000101000101010000110110101011100110101110010001011001001011101001101101100000110000001000101000001101000010101101010011101001010011000100001101111101000100000111011001110100010101001111000011100111110101010101000000110011111011001110000100000111110010011100101001010010100010100111011011000101110111011010110000000110100000010000100111110111001001010011000110001100001101110110011011101100010001101100100101110101110111100101010101011110111110000110001010010110011010011111000100101000111010010101000101101110010000010010111001111100110111001010010010111000110001110111011100100001001110110100100101010111000111110011111111000001111011100001010100111010110011001111101011110101000111111001001011111001100000110110100010101000111010010111010100100110011011001000110010100101101111010010100001001011010001001111110111001000001000110010101110100110000001100011110101111010110110011001011110100001101000011011101000100011110101111010110101000001110110011001010111001010011100001000101111110010101000011001100000111001111001010110000011110111010000001100011111011111111011011001001100101000001001111000011111110110101011100000101101011101000101000000101011100111110010111011001100111010010110001001010000100011110011000001101000101111110011010110010110010110110110001100100001011110110110010000011101001011001000101101001110011010010111000001100110111001001111000011011000101000111010000000001000100101000011011011001100110001011001011000101010001110001011000001101111010100110101010001101100111100110000101010001001110101000110110100100011010010001101101110011101111100100101101001000000011000110110011111010000000000110000000111001111101101000011101001010001101110110000001000001011100000011001000110110001100010000000010110110001010001011011000010011101000100100111000000001101000001100110001000101100110000110011100110101111101011111111010001110111100111110111101010111010100110111100001001001001110000111100001000001100000100111100001001010010000000010110000011111010010100110101100100011011111010111111001010011001001000011110100000000110011111001110100010101110100100100001100110010111110001010010110000101111101110111101010111010101010101001011010101001101100001011100111111001010001111011101100101011011111010011010011011000101111110001010001100100010111001011001001100000000000001001111010100000000010010110111011110100111101001110101011110110101000000101000110111011---------------------0110111001100111110110101001000110001001011011100101001011011110111001011010011111000010100010101100010010101011111110001000001111000001100111011111010111110111010001111101011111110101010000001011101000000100100011011101100110110111001100100101001000010010010010011111101100101000100110101100010000111101011010010001001111100111000011100110011100110001001011001111001101111011000001100110101111011111011010010100000111000101100011011110001110101110000101111001000010110110001001011111100110110011111101100011101011011111100010101010111010100110010011011111101001000001000110010110110111011100011100101111101011111111111111011111111100101101011001001010110011010010011010110101110010000111111010101100010111000110111001001110000011101011110011101010010000110110100101010101011011110010110110001000100010101010111101000101101010010111111101000000000000110101011011100111010110000101011100101000000110000101111010011100000000101110010100011010001000010001011011001010101001100101011010100010001011000001011111000110101111101110001000010000000110001001011111110111111010010110101011011100001111111011101110000111110011000101110011110100011000111001001010010011100100100101100011110111111000101000110101101001101100010111111010110010111010011010110110101010011001000101011110100010000100000001000000011011101110011110010101101010101000000011011101010101000101011001001100110000011101101010000000011110110101101010111011101010111010011100101011011010010010001011000001010100100001100100111101001110110100000111110110010010000000011000010110111011110100001001101000100111011100111011011111001001011111111100101010111001101111101101000111110100011000100111111001010111001100000000110000010111011101011011000111010110011000110011111010101110001010011001111010111001100001011010010011011101111101011101111001110000000111001000000110000100101111001001000101010001001001110010010010010100011011111101101101101011100010001110001001000111101001000010010110100001001001100010001011101010111110101001010110111001111111010001101101001110111110110100110110011000001010001011100110101011100101100010011001100111111000101100001000110100111011111110001111011101110011010110110100010101110101000101001101010001011000100111000110100010111111000000101100101100011001000110011000100100000010110100010011000101001000011100111001011000101001001111011110011001001110101111101101101011000110111000001101100011100001010101010100011000000101000001111011011110011111010110111010100111100011001010100110011101101011111010001010101010101110000001110100100000100010011101100001101101000101101001100101001111011010001110010011100100100100100010001101011010100111110011101111010110110011110010101110010110011011001111011010111110100011110101000010110011111001111010011111010011110100111101110111101011011011101010010100011010000000101111001110100010001001101101101001000010000000001101101001100101010011100011101100101011001001111001111111011001111010011010001111101100111110101010001001110010000111100011100001100100111100011000011011001110101010001001110001100001011110111010100000101111110111100000000100000111011000010000000000100101100001000010100011010011001110111011010101011111000110000101110010001000000001110001110110100110011110100001100111100100110111111001001010110101000011110001010000110000000010011110100011001111011100011001100000011000100110011000110000000001010100101110100001000111001111000101011001100011000011100111001001101001001011100000100010101101111011101100100001000001000001100100001101010100011000101100110011101010010100001100001010000111010000001111000110000010111100110100000101100001001101010000010110010000101010011111001110000010000011100000111000100111000011111011000011001010110110101001111000001011100000110111110100011110101011110100100100010101111101001001101001111101000011000100110000101010110101011011110000100101011010100001111010100101010111011111011000001110010001101111100001101000000100000010101100010001011100101011111110100111111100000000010100110010010010100011011000111011101001111001001000001101011000101001000110100010111000000000111101111010000001100011110011010011100110100101110000001100011100010000111011101110000111011001010100001100011111101011011000100011011000011111001011001101100010000111101111101011000111101010100010111111001010001011001001100000001101101010100011110010100001110011101101100001000011011010111001010001100100010101101011100011100110000101101101110001010100110000111111010100011101001110001101111101100010100001111111111011000111011110000001010110101000010111100101000110011001001110000110001011110110100110001010110100110011100101100111111001111010000001010011110010000111000101011100000010100110000000011001011101001111110011111110001110100111001000110110001111101000010111110110001111011000101000100001001010110101111111111010101011010001101000001001110000011111100001001011111111111010010100001101101111011011010011011100110011010111001011000000101101110100111100111010001010111010000110000001111101111101010110111101111101101010100000000111110100000001110111000111111100011000011100100011010000011000010100001100000111001001000010111100111101011100100101101100011111000110111010101111111100000111011000000011001101111010110001011001010011011011001010110001100110000001111111110101110001100000011111100110010000011110010111111010111100101111110000101111111001001010001011011101010111100101100010000010001101111000001101110011011100111001110101101111010111011010010100001101100101110100010011101010010111110000111100101001011110110111110010111101111101010110101001111001101101010000010001111100111110110100000000011110000010100100000010001100010010000001000110100000110100011101110011010100011111111001101111001101001100111110100101111111111101011001100101011110011011000010001000101100111111110011111011001101000101111010011110010001100001011011001111001110010111100000110110111100001000100101111001011001011111100011000010111000111101101011111001010101001001110100000101110100011001111111111011010101110101001111100111000101000000100111000011010111010111111001011000001000011111111100110111011000100010110001101111100000100101100111010100010010110100010101010011000011111010100101010101100101001100100000101011110101001010101100100111110100000110101011101101101111011111110001011110010111101101110010000001100000010110100101001000000011111000111001101110100100111100001001001110100001000111011010100101101111101101101000000001100100010101111111010010000110110110001110011001000111110101100100100110111111110000111111111001100011110101110111101011011010111001011100001101111001011010100001110001000110000000110011111100001110011111111001010111000011110100011011000011111100000010010000101110110101011101001100110011010100011000100111011100100011111000100110101010001000001110111001010001101111001111010011110000011000000101111100010110011000101011011100100100000110001110000010100011111100111101001011101000100101101000001111100111111101101010111100000111010101101001011101110110110111000111101100110110110111110100111111110010101110001111001100010100100101011101011110011010110110011000101101110100011010100100110011000011000001100011010100011001110010110101110100100110010011000100011100010111101000001010011100101100001101010001101101101100011101000111100100011011011111100000100100110111011111110110110001110010100010011101000110111111001110001010110110111011101011001000000000011010101100110110111100000001001010101010000110100100001101000110110110000000101001011100010001101110101110010001100101110101110101000001001000001001001001000101100000001101000001011111000111111010000010100101011100000110111100011001101001100110111100101100111011101011000001001001011001000000011011111100011101100011001100100011010000111010001110110101110011110100110101010100011110101000010011000110010010110100000110010111101000100111000111010100011010000001000000000000001100000001100001000001101011111000011000111010001011101000111010101011011100100000110001101110111110010010000101110111101001000110111100001100101001100011110111100110111001100010111001001101011010111000111010110110010111110000110010101111111011011000000010011101011011010110111000001010010111011100110001100110000010011111011110110000010000101001111000101111110001111110011110111101010101010100010011000111000001111000001110000101101000011111000100011011101110111000110011110101100101001110110001111000011100011111110111011101100001110000010111010010110110111101111001001001010001111100110000111010100011010101010110111101110100001000010111010011010000110110001111001010101001001001110100000111110101000010001001001111111011100101011011001100000101011000101010000010110000101111000101100100111100010000011011110110010110011100101000110101111110111101100000000110011000001111111000100101010110111110010111000001111000011000000111001000100011000110001111101101011011011111010110011100001101101001111010011011000001110111001100100011010110011010011101111001000001111100110110001101001100110000101010011010100101100011101101111101011100000011001000101101011111001101111101001001011110100000110100100000001010101000110001011100011110000100011101101101001011001111000011011100100010000000010110101101110011101110101110100110101100011101101111110001110111010010010100110001100110101111000101110100010000010001010011010010001101011011101111110110011010111111011111001011001000111110110000010000100111010110011101010011011101101010000010101001001111111110000110110101111100011010101111100100000111111110000010110100101010110101000100100011001111000111001100010111100001111001010111101010100111000001010001110100111110101110100111100001100011001010010001001011110111101001100001100111100000110110100000110100100110010010110000111100010010011000100001100101101101000111000110111101000101001011100110001011111101000011000110001111101101101001110100101011010101001111000111001110011011100101001110100111111100110000100001100000011110001001001110000100010000001010110001011110101001101010001001001010101100010000100100000010010000101101011011010011101110001011001001110000100111010011100100111111100010100110001011110101000011011101101101110111110101100111001011100011101111000110001110010001011000101000111111101010001101111101001100011010111000110100111001110100100111011100000110000101110101011111001101001010110000101100100101101110101000000101101100101010111110101111100011000001000110100111010110010110101101000110110100110010110000110101010111111111100100011011111100010000101001010010011110100101100001101111001010110101001111000000100111010011110111001100001111011011000010100010111000111010010011000011110000111011101001111110111101011000111001001111111111000011111110010110011110001110111110010000000010001001101011001111110001100101100100101001111110100111100010001010010011111010111011111101000101010011011011011010101000010010001010111111001010100001101101101101100001001100001101111111010011010001000110001010000110101010111101011000100101101110101011101010011010100111001011100011100100100000011101001101001111000001000101001010101010001001000100010100001111111011001110110111100111111000111101010110011100100111001110100101000010111001100001110100110010110010110111011010111111010001010110011110010111011000111010000000111000100010010111110111101111100100011101000100001010011010001010101110010010101001101101001000110111001011111010111110101011100001101111111101110111000100000100101101011100010000001111010011110000110111100110000111110011110111010000110001001111110100011001100000100101000011111110111000001100010110100011011001111000000110000100110000100000100000011001001001110010001100010011100011110010010000101011001101101100101011001001000100010101010101110110000010110101000111110001001111110100001110101100010001101001110011011010000100101000110101101101000000000111011000001111010111011001011000011011100000110000011101111010000000100111001110010010100001110111100100101010110101111100101011111110010100111011001110011111111010100101100010100111010011101110101100011111001100100011101000000000110110111010010011011000110100011111011101101110110001100111110011001111100110000000011010001001110001111011111011001101101111001111000110010010101111101111001110010110110100010111011110110100011110000100100010010100101100010110001010110011011001010110011100101110010110100011001111110110011010011111011010110110111111011010100100011010000110110001001011010101111100110110000100001011010010101111001010010000111100111101110011110111100110101100111100111100010101000110101100100101110011100100111011100110101111111000100010010001000111011111110100000100111011010111010000111100010010001101110011100100001110110000000111011010000101110001001110001101110000101101110111011111110010011001110111001100110110111110110111101110110100011010000011101110011100000111100101110011110100010011001001000000101011000010001011110011001000010001111001100000011010001001111101111110110001101111000010110101011101001110001100100100111100000010010100000011100000001111001001011001000000100001110001110011001010111110001100100111011000111001010000100100100000000101010000011100100110001000110100101111101101100000000010101000000001000000001110111111101101101101100100101100110110001101011111010010010000101000010001001001101010110000010011011101111111100010010001110100110010100011101000000110011100000110011110000011011010101110000011011001111000001100110111110011010101000010100111100011011000100111000110101001000101011101011010101111101101101111111001001011101001001000111010100111000100010100010110011010010110001000111110000001010100010010000000111000110101111110000010101001000110001111100000000000001100011001001000011100101010110110010001111100000001110100010001110001101011110100101011111111010001011101111101000011111001010010011010110110111111110101010111000101000100100000101100011100100000000001011000001101010111001110001101001110011001001111000010010000000011010111001110110111001000110010000010111010111010000101101101110000100001010011111111110111101101010001010001111101001001100000111100011000000010110100000101100110000100101101110010000101100001011000100110100010111110101100011000111011101100100010100010011001000000001111000000011101001101100011111011110110001101001010011010111001111111101110010001001101010011011101100100010010000000100010010001010010101010110011111011111000010110010011111100010100001100000110110110100011001000010100011000001110000110110100110001101011111101001010010110010101011110110010100010011100001000100010000100010111101000010011100010100010100010010011011010000001111100111100001010111110111001001010111100000001011011011000000000001111001111010101010001010110010111010010001111111011000111000100000100111110001011100001101010110100110100001001110001101110101001111001111111110111111011000000100100001100111110101010001000010110100111010011111100001110011010000011110100010111111000010001110000011011001011010100011000001001000110101000001111000101111001111000001101100001010100010111010100011111000101110110111000110101011000110001000000010010001010100111100110000001110110001011001101000100001000100011101011111000110001010000100101100111010110001000101100000101110011101110011101101001001110110010111110010011000111000010101101111001001010110101010000011100010101111101010100111001000110011000110110100111000110101100101010010010011010000011110100011111110011111110011001011000101110100000010000010100001001001010110000001010010010101000000001011110010110011011100101011100101001010101000111010111101011011111000000001010101111110101000101000100100101011000110111001001001011000100000001000001000100001001000110100011101111001101000110000100110100010101101000100111000000101001001000111010100100010101101110100010000110011111111010001011110100001010101101100100010010100100000001001110010001101101111001010111101001100000101001111001110011001100011111100001100110001001110100001001110101111011110000110011111011110000110110110001010010011010000000100110101010111001001101100011001010011101100001011101111001000100101000000000000100100111011001010000011001001110000001110111010110010011101000100001100110010010110110001001100111101011111111011010011110100111000110101110101001001100000101111010001111011110000100110101011100101001011010001010100110001001111100100101101111111111100000100100001100000000000010011110111111101100111000100110011010 +00010111111110100010001110100101000100100111101000100100011110110010000110010100110111110000000111011100000011000010000001010100000111010001011101011100010110111100101011100100110000000110011110010010010111000110010011001000010000100010101000111010000011010101100000110111000010011101110001100011101001000100011100010100111101100110001110011001001010000101010010100000011110100111001010100110000010010011000011011101011001111010010101000110001110001101010100000111100100101101100100111000111011010010101100111010010111000001001011110111010000010111111110110011010000110010011111010001010110111011011100010011111010110101111001010000010110101010101000011100111101000001011000110000100100000100101011000111101101100000001110111101011110110101100001000010011100011000011000101111100110010001010011101000111001001100100010011101101101111101110110101001001010100110110010011100110101011111001111000101111001100011011010000101110000001101111101001001111000110100101100011111000001101001110100001011110011010101011110100001011111100000111100001011011011011000111011001001111000110111101101111110000000110111001111101111010011010010001010111110001101001100011011001100011000110010010101101110010111001011101101100100000110010001111001011010111010100100010001101110011011100011011100001011001001011010101101010011001100110011101001101001101100100101011111100110011100100000101110001000101000111111111100000111010000010001101101101111111001100001000110010000000111010001101101001101010001011110000010010110011101111110011010010110010100000011100010011100110010011111010110000111001010100010010100100001000110100110111011010000111011101111100110101001000110011000110011111001000000110110011101110110100010111010101110111111000111110001110111100100110010010110110111111010101001001000110001001000000011111010100000001000100001011010111000011100110001111000101100101010110000001011110010101101100101000011000010000000001000100101101011010100111111000100111001011100100111110010100111001111011010100001111110010001010101100001101101110010010100100101111100100011110100110010010010110011110111100011010101011100010010101100001010111101001001010000000101011110101001000100101011100101011001110110001111001001101000111000001100011100110010100101110110010101001100001010011000001010011110111011100011111010010001111010100101100001000111100101111001011001011010111100010010110000001001110010111011100001100111111100000001011110101011100001001111010111011011110100011010001011000110101001101011001101010001001011110110000101101000100001100111111000111000000000010010000101110011010101000000010111110100100000001110000000101001110011100010011110000011100010011101001101001001110100001110101011000010010010101111000110110010110100100000110000111001010010100110111110000100011000110100111100010011000111110001010111100001110110110111100010101101011110010101110100001110111010010100100000011010100101001000111010011101101110100110010010011011011011000101100101110110010101101011111100011111011001110101100001011001000111011000100110110011011010010000010100001101111000000100001100110100110110111110110010100010001000010110110100010110001011110100110111111001100010101110001001011100001010100110111110100111010100010101101011100000100000000001001101001101111001011001010001010101010001110001110001100010110010110001010110101001111000000011110010001011000100110101011011011111100011100001110111001000001111001001110010011111111001011111011110111000011110110000110001001010110101001011000101010001101101110000011110001010011001110001101100011100100011101000100011110100010100000010001110101011000001011101010011000011000010010101101111000100001111111111010101111100111000001101001000010111000100111011100110000100000100111011001000110000001111011110100110100111101111010001111110001100100011010011010001111111100000100110111011111110111001010101111001110100011101111100000101001000000011111110010100101011111011111101000011011110010001110110101010000000011101111101011101011011111110110000000110010001111100110111010001000010010101001011010001001011001101101001111111110101111000111110001100011001110011100001100011010011111001101010100101111101011110100111001000001011101000100010010001100101010101011101111110010001010010000001000101101010010010101011100111110111110101111110000111110011110111001110001011101110010011011111100101001110100000001010100110011101011011101100011111000110000100001000011010111110010101101011001010000001100001100010110000100001100000101101010001000101011111011011101011110010100000011111101110101001001111000010101011000001010111011110110000001110110110111011000111100000010100000111001111010101001011001101100011011000001101010000101000101101010001110010100111110011110110011100111000001111010010101011100010110111001101110100110000000000010110010110010010000000101100000000010111101101100000001010000000101101001101010000100011011011010100001101111101111010101100111100000111011100010001001001110100000111011000101100111010111100011001001010101110011001010011100110001110111101010000100001000101011000000110110110001000100110000000000100110011001001010000111011110101111100101001100111010001011111110011110000000000111000011011111111100101000011011001011101101101110000100111110001000101000011101010111000010010010100100111000100001011001111111010000010100101111001100100011100001110101000100011101000110001000100100000100011000010110100000100111001011011101101010111000111011111010010011100101100111100000111000110110111001000101010010001001000110101111010010001000010011101111011011001010100000101000001011101000111010101101000111011111111111000000011001000011010010111101100110101111100000110001101001000000000100011001010101100000000100110100000011010110011010111001011100011000100100101101100111100100001011101110001010101110101001100010000111000111100000000110001001001011010101001101001001111001011111111110101011101001001001011101010100010011111110001101010010000000010111010010001110101100000100011000011000100100110001000010000100101111001001101101011011101110111101101101011010011011010010011011011001010111010001110101100111010010110110101100111100110011100010000001111010011001000101011001010111010011000001001001101001000101010000110010101110000100110100110001111111011111011000110101101000100100100111001001011000010000001010110110001110000110001011001000011011111100010001011011100110010100101101001101000110010100001001001110101000100010110010110011000011101001101100011000000111010101011001000011000010001101001000000000011110110000110100011101101000100101101101001011100101001001100000111011000001110011100100000001101000000011010000111111111111101100111001110101110011100001111110000011101001010010000101111100001000001110110010000100111000111000011111000000011000100111110010100110000010100100111011100101111010010000001101011110111010110011010010001101101101101101001110111010101110011100000000101110010100111100000110010110101100110000000100000111001000000000001001110111001100111111010110011111001011100010010111101110001000101001010001110000101010000111110100111111110010110100001001011111---------------------1010111011110001110101011111011001010101111010001010111000001111011110111011010101110101100101011011100111001111010001000101010111001000010001001100010100110100001100110100101011101001001001000111011101100010101100010100010001000000100011000010111011100000110010111001001010110010110110010011001100100000011010101101000000101101110000110000011011111011100101100000101001000000101010111001111010110101010001111010001001000011011111101110011100110110101010001101011111101110110111010010110100000101101111110010010001010000100011111010001100001001001010111001110001100001110010101011111111000000110011000110110110010100110110100110011100100001111101010011010110000010101101101001101011101101100100010110001010101000000111110001001000011000100100100010000001000111011000110011000111111011001010101111001001110110101010110010110110010010001000111100011100001111001100011101000001001100111101110111011111011000001001100010111010111100000111110010001001011001001011110100000001001011010000110000111110111000110101100100011111001011011001100010000110000010010100110011110101000000011100101101110110000000000010010101111011011001100000100001110101111000010010100010111111010000000000011111000011101111000111100000011001001111100001010101010001101110001001010100110000001101100100001111011000100010101100010111000100101110110111011010010000101111110001001010011110011111001101101010000111101100111110101111100000111100010110100101011001100111010110111101100100111110101100101001011111001100110011001111010000010101101111011000101000110010100110111111110011010101110011011011001010011111111011000010111001101011101001010011111111110001111010110111101110100110111111000111101010010000101000101100011001011110011000010000110010001011110010010110011010001101000011110100110110100010111100111100000100010000001001101100010010010011101001100110101000001000000010110101111000001010001010001001011100110101011000011000010001010101101010110101010111101010110110010011001110100000110101110001101111000001000101011111000101000111111101100000001100100010000000101110011011011111011101101010101101101000101100001000100111001111111000101100001100111110011101110011011101010101001111111111100000101101001010110100010011011100001111101010100110110011101001001101111001000011001101100001100110110100110011011011011110110110100001010000011101100001001011111010110111111110010011010111100010110100110001100001100101001101001010101000010110011111000100111111011100101101100011100101110010110110101100010011111011111111010101100010000000010001000011111101110001111001100111011001100111011101111101110100011001111011100000100101101101001000011010100111110001011011110000011111010110000100010101110110111111000011000011101110011111110101011000110100101001000011100001100000001100010101011110011100010111001000100110001100001110001011110011000110110101000100100000001110001010110111111110001010011011010100101100101011011110100000011110101111101000111010100101110100011001000111100110111010101101010010001001001001001001101101001100011010001011101111000001011000000101010011111100100001000110111011011000011011101011100101001101000100001111001111000101111100010010011001001001000010010110000010010111011110001011001011001001110000111100000100111101011000001110101101010011011001100101011100011111011001110000110100001100000110101011000000000011001101010100011000101010011000000001110011011011110011110010111010110111111101010110001010101101100001001010001011010010000000111011110010001000011000110011111111010010100001100111000110110010001000110010111100001111110000000110111001100010100110111110100000000011011100010001000001010110110100100110010011000100000000000101101011001110111101011001010010000110111100101011001110010000101001010101000111001000100000110001011101110111000111100001111110011000011110101111011111110111001001101110110101011001110110000010111110010110001001110011110100100010110011101101010010000101011011000101010100111100110010111010000010011000101101011101101000111000000001011001110100101011001010110010001011001010111110000100110111000011110010110101110110000111111101101000111010001011011111111110100011101000000110110010111111000001110010001010000010011100101111001010101101111101011000101100001000100000110001100111010010100000101001011000011111100110111010100011011100001011000110011000111010010000001101001010011001010011101000110110011000111000100101111010000011001101101110011111101010010101000111011001010110101001001101010011001000100001100011011000011110101010001110011000101011000101011010001110100010101100010111101110001000101000001100010110101101100001000011101111000011001100110010000000110001110100011101100000101001111011100100010110000011100011100110101010111111100110111100111001100011000011010011111101111110110111110010101000010111100101101001011101010011010100000100101110101111110010010010011011001101110001000001001100101100110110000000010101100110111100000011101100101001101110010101011001011110011110001111111010000001110001101000010001100111011101111100000100000001111010101010100010100110010011001110000001101111100010101111000011010110100001000100001010101110110111111010001001100000001011001111110001011100000100010010100011000100010100110010100000010111110010010111100100000001010011101010100000010000011110010111001100110100101110110000011101010110110011101100100001011000100110010111111011010011001110101101000111110001011101101000110010111000110111000111010001010001010101000101110100011100010111111101111100000110100110011100101110010010110011001010011111111110001110100011110111010100100010110110000000101010010110000001100100011110011101000011111100010010001101110110110000111110000100100010110101011111100100011110100100100001111011000100001010110000011111010001000011010000110011000000000111110011111101100000111010101110011011001111100010100101100101001011101011101000011000010001111101111001011010010101011110000111001001101011011100101110001011000101110111010110010000100111110100001001110110001101100011100001100000100100111010101011100101101101000110001111110100111000100111011010011011101011111000101000110101011101011101111100110010110010010100011011001101100001100000000101010011100111001001111101010001111011001000000001100001111100010010110001111110001111010110101101101010010001111111011110010111000011000101101101111011100100001111000011101111010011011111011010111001111110110101101100001101101000101101111101000101011100000000001010111000001011000010000111101001111111101010101110001101010110011010011111111010110100011100010010100011011110100000100010000100001111111000000111010000011010111111111010010010000010001111111111110110101101000111100011001001010100101101010110000000001111010000110010001011011101111011010101000100111011010000011010111100011011100010111100110010101011111011110010001011110101111101111000110010000100000101111101100100011001000011010100011110000010101011010100111111101110110000000001111100011011100011101001101011101111111100000010110011101011000011100110100101011101110101110100111000000000101110111000101000111111001000111111100111011101010010000111110001010011100001011000110001000100010001100011100101011011100000000101000010110010100000010100000111000010000110111110110010100011011100000111111100010011010110100100001011110100101101000100100101001101100000111101101101101110110111111111000101010011001000011000100100110001101011110100101010011100001001101011011011111010101111011100010000110001110001110000001000001100100110001011100110000101110100111011111001001100000001000010111110000111001110000000011011010000001100010111001011001010000100100011000110110001101100100111011000100001101101110110111111011001101001100101001101010111101110011010100111000000011000100100100110101000000011101011000010011111010101110111011111000111111110011111000010001010010111100011010101000011001101100111011100111100101001111011111101001000010011000011011011110100010011110101111011110111010110111111001010110100001000010111100001100011111001010111111110010101000000110111111100001011110111001111101010001101111010100101101001101110000010011101010101010000100001111000100011101000101011001001100100111110011100101011110010101000111111110001001010100010010100000101010101001011110011100111101000101111001001000001000000001100000001101100011110110001100101010111111001001111110011011011001100010010001110110001100001111111001000111111001001110001001111010001000000001110101111100110010111111111010001000010011101101001011101111100000001110011100110001010101010110100101101010110111011101100111101101100000010100011100111100101101100010010010001100101011000010100100010011010101101000100010010010011100111101010100010001111001001010111010001001100000011101010010111001111111111101010101101001011110010010000111100101001111011000001100001100011110110101011000000000000110000111100110110011010111110011000001000001110111001001101110101111110000001000111110010011011000011101001010010100111111101001000101001110011001000111101010001011110011100001111001011100011100100111100000000101100000011111100001000111100101011000000111000101110010000111001000011001110110110110101001001010011010111011110000111011010000111111101000010101111101010011010001010101001000011110000111000010101010010010010110001011111010011001011001101010011000110010000001001100000111011100010010111011010100001101101111101010011111000100010011110010000011011110000111011100111000101111111100111011010101101010011101011101010111000111011000110011011011000000001100111010000100110001111011111110100011000110010000110000101000111100101001010101001010110100110100010111001111011110111001100101010011010001011110110000001100101001000111010010000001110000011010000111011000110110101100001110100100011101100111011001101100000000000010001100100010001111011011001101110110001011111100000011101000000011100110011011011010101001100010010100011111110001110101001110011010000110111011001010010111010010111010011110100111101000001100101100001101100011111100111100000100011100110011110101111110110010110010110110100111000111011101000001010011000000111111100100000011001000011010011101110100111100111111010110110011101111100010000100010001110011010110100100100011011000010000110010110100100000010111001101111001000101011101001011000110000101110010011101101101000011101100100110010011011010100101101000000100100111000000110100100101111010000100100111011000000100010101000000011111000110100100011000001011100000111101110000011001110001001000000001001111100000111101101100001011010001001000111100110100001101000000100100001101001010110101110010110111110011000111110011000010111010110011010011011001000100111011111100101010000000011110000100010010111111101111100000000011011000111000001100010011111011100100111101110100011111011100100110000101010110000100110100001111100011010001101000100011000000111000011000001011000001001111111100000100010111111010100101010001000001111110110100100000010010111001011101101100110100011000110110111000111010010000110000111100101100000010001101110100000010110000000100001100110010001110100110110111110010010011000011010011011100110010001000001101011101100101111010011100000101111101011011001011110001000111000001010011011000011001100011111011111101001011100100111011110100111011010111101111001101100101001110100000001000101110100110101000011101010110111011101110010101010110111100010001110100100000101101011001100111010000011101100110101100000010101011110111101110011100100011011110010111111001100111100011000100000000000110010110100000110001101100001010110110110111001000000001010001111001000010111011110010100000010010100111010110011100100001100101111111001010000111001010001100101101110100110111010111000001011000000001101101100110010111101001010111011110111110011111010100101110110111101101011010101011010000100101100011011110100111110110001101000010101001110100010001101110010000011101110111011011110001000110110111000110000110010000010010100111001010101000010101101100011010100110101111110011001101110010110110110000010011110001111100000111110000001111100110100010001010100101000000001111110001001110010011101101000101011010000001110000000011100000000111100000100010011010011000100101110000110010101101101000100001110110000111100101101000000110111011111011101011010110111001101010011001110101010010100101101011110111000100111000110000010111001111100010001110111110000010101100001011111111011101011001100111101111110100011111111111001101110111111101001101101110001100001000000110111110110000110001110000001011001000010000010101001011000011001110010001011111110110010111101000011000101001001111100001111100100001111000110011001011110101111100001111100000101100100010111110100001110000100101110000001111001010010010100101101110111111111011101101001100011001101111101101010010100001101111100001100101001111010100000011101010011000011010110011111110101100100010001000100000100101111100010111101000100111000111000001110010010010001100101100010010100001111111101100000101111111100111100100011110100101010101011010110111001111100000001001110101111000100010001110001000110100011100101101011011010110001000100101110110011011100001000101111100010100010100100110001010011111110001000010011010001010000011110010010000111101001110000010001000010001100011000110101110000111001000111010101001110001010110100010110000100100100010110110001010101001101100010011000101010001010111010011111011001101100101011111011010010111000111110001100010111111010001101011010101110001010000101001011100100101011100011111100111001100011101010111101110100111010011001101100011001100010101101101100110101101110100111011110101010011010110011100000011011100100001000101001010000001011110111010010000010001010010100110100001100111101000111000110010001100101010110001100000000010001010000011101111100010010111001010110010110001111011001101001011101101001011000011001101000111111000111111100111010001010100100000000111100101010101111100110001111010111011101110010111100011111001100011001000011000100110111000111011101011010000110011110101000101001010110010011001110000011011110111111100111010010101101001000110001111000011101111111000011010100010110110100010010010010111011010001100001111100011110101010100000010101100101001110110101100011010100010100111110011100100001011101100100100100110111100101010011110100110111100101111011111111000010000100000100000100001101000011001101011110011001001110001010010111001100100011110110100100111111110000001101000101101011011011100010000011010111000010001100100111100100110101110000001011101110110011010000100011011100010101010000100100110101100011110010000000010101110001101011110110110001001011100100000110101100011011000101100000011000100000001000111001001001101110010111010111001100011110000001111100101011010110100010101010111000111001101110101011000100101100011000100110100011010001110000010000001001010001011100110001001011101010100011101001111111111101100111010110010100001101111101110000011101000101101110110001100101100010111101001001111101101100001100001010100100110111011000101110101001010110011010101110101110111011010110011110100100100010011110100101010111111000001101110111010111011000101110010011101000111101010011111000000010011110101010001010110110001101000000101001101101010111100101000100110010110111110111010100110001100001001010010011001001111111100100100100011010101001101110111111011100111001101110100100110111100011100000110100010001100011101100011010010110110010111010011010110100000001010001001110000110000011111101001010000000111011010111101111111001010111001010111010011010110101011111101010010101100100000010001010001010000101110111010100100000000000110001100001101101000100111110110111001110001110110100100100011101100011011000001011111101001001110100101001101100111001000001110001110010011010011101101101001111111100010100100001110100100011000101010101001101010110100000011011111000111111010011100100010111010111001100010101111001000010110000011100100000110101101011011000101110011100101010111110101101010101101101001010001000011000111110110100000100010100100111110011001010110011100010001010001010011000010000101000101100111111000011111101101101111100110001001101011010010100011001110000000011100100110001011000101111011010011101000110100100001111100001001100110110011101011000010011101011111000010100011101011001011000011001101010101011111101001101100111000111101011001100111000111100110001011000010111111010110100 +11101011000100101010100001110000010011010111001111010111111010011001110000010001001011111100101101110001010011100100110100001110100110110110000000010001101011111001000010110010101000000011001101011110110000001000100110010100101011010001110010111101101101010100101110010110110000111010001111100001111101011001101000010001011010110110011110110010010010001000100101010011010010110111110010101001000011110010010000100001100110000011011010110000001011110000010100110111111101011101100011000011100001000000011010110011011000100000100100111010010101101011001110110000100110010100100010101101010110010010110100011011011000000011101001010101111011011101111100111010100110100010110111001100011100000011110010100110110101101110011001101001001011001010011100000110001001110110101001101011110111110110011111111000010101111110101011111010101110111000001111110101101011110111011011110011100100000001100101111000110011110010010101011111100111101100111011010111001110110001000011101010110100011011100001011111111011111100000010101101000110011101000000100101010111001011100010010001101011011100110101111001110010101011010101100101111111100000100001111111010001111011001101011101101111100001111110011110111111001111001000100110100101110011110110101001110011001100011010001000111000110011100000101000001010011011001100000011011111100001110101101111100111000010011110010101011010100110111111010011001101010100111111110001010110010001100110001100111001110100100010000010100111101100100000110110101111001000011101111001110101000000100110001111011111100111001100110001010011101100010001100111001010100111100111110100010111101110011100101001100011001010101010011000110000101011001101010001111101110011111101011001001100100110011100101000101111000101101100110111001111100011100001101101001100011010100111100011101000000110101111100111111101010110101111110101101100110110010001000100001111011101111111010110111111110101110011101011011111001111010101101110011000001111100010100111100101011110001010010110000111100011100111010000101100010001010000001101011111011110100100110010010101110100000110100011101110100110100000011011000010000001101000100100000100001100100100000000111111000111111110100101011001011011010101111010101101110011100010010101101011111011001111001100111100111011011110001110010111110100111001101101110110011110000111101100110010010100011011000001100010101111100010000110101100010111001000111010110100101010011111011010010011111100101011110101111010000010111010010111110011100001011101000011011100100110101100011100000011111011111001010101111010100110000000101110101001011011100100110000101101110111011010010010101010011111100111011110101010000000011000101000001101101000100110101110111110100001000010011101110101011100000010011010111011001100000010100100000001101101000110101111100011101011000100001001010010111111101000000110010111000110001110100001101011101101110000101101110100010110010000100100001101100011111011101100001110111000111101110001100100100100100111101011011011000111011100110000101100110111011100110110010100001001001011100011010001000001100100001010100001111000110110110110001010001011100100110000001101111010111110000100001001010001111000010001110110011101100010111000000001100100110001101111101000101000110100000001101110010111000100011000100001111101001100001011001111001010010000111001101101111010111111001110010011011100101010101100100000101111000100101010010011101000111010010101101000001001011000001000111001111110000111110110100001001000111111011001011011010001100010101010010100010010010110110011110110001100011111011110011011001011110101101110010111010011100011101011000100101100001101010001100010100111111111000000000101100100101010101111001010001100100101000111101011010101101110000110010011111111010010100010101101010111110011101100011001000011110100011000100101100110100111010101011110010010001100100001011111100111100011000001100101000111100111001000100000100100001101010101000110100111110110101011011010000110001000011000010010100101100110111100001101001000010001010110011000101000011011110110010111010110101000001100110111000011010111010101001011000100000011011000001101001100110111011111111001001101001111110000101110000001011100011100010010100001100010111001110110000010010000111101111110011011100010111010000111001101100011111100001100001001111100101110100101101100111101001010110101010010110100000100100111100101101011111000100100111000111010000000110110000111110001001010011110101011111011011011101101111111111111101101010101010010111110110010010011111011010001011111100111001000100100111011001011001110011110100101000111111111111000110101111110001100101111000100000010101111100001101010011010110111111101000010010111001010010100001011000010000011011100011100010001001011100001110101011101000101000111110100011001101101111011000000110100101100100100111101100000111010000000111011110111001100000110110111111101101010110001111111101001000101110001000001101001011000000010001001101001000011100000010101100111110001111010100111001101001000010101011110101111111001100010111001111101011000110111101001010100000011011010000010000001011111000110100110110111101001001011011110111100000110010000001010000011110110000011100111101001000101001011100101011011111001000000010111111111110110000111010010111000110001001100010111010111010101000010101001010001101010111011010010011001011110011001001011101111111001110101010100111100111001000011110111111010011000001110000000100000100001000111100110011010010101101010111001100100001110101001000001101011001101110101001111110101110010101111100110101001100110000011011011010001101000111010101101001111001101010100100101001110110010100100010001100111100011000010001111011001100101011100000100100111101110000000100110110100110101110011111000101011000010011110110011011000110111010001000101100010001110010000110100000111010101011100001011001100101001001100001100010001100001101101111101111011110100011010011011111010000011110101001111010001000010001111011000000111110001001000111000111110110100011110001111011101110011011111011010001100000010100011000111110010011110000001011111011110100111000010111010110000001000000001101100010010111100101000001101011011110010000101101000001001001001100001010100100101010011011011000101100001111100101100110001001011111110000101101111101101100000111101001000100111000000001011110010001011011101101101010011110001100011111011010010001101111100000010110111011110000100010000001111110100001010000111110110010100101110011001111100100101101100100111001001110110101011000001110000001101110001001011100101111100011100111110001011111101111101001001101110011010110001000011101001000100000111111100110011010010010100110110101011101010110001110111010000010110100001110011101100001110110010100011000100101100010110011000010100110011000101101011111101110101111111110111010001000110101111001000000110010111110001100101110100111100111101010001101010100010000111001101101110110101011001010011111110001110111001100101111010110111011101111000100011100101001101100100101111010010111010011100110111111011100010001010100001001001011010100001100011110---------------------0010000101000011100101010100000100110111110101011010101101110000110010101101100101110110100110111101011111100101001011101011111111111111010000101011100110010000100001101010100101101010000100001010000100011110110110110111011111111111011011111001111100100011001101111011010011100101011001110110001110011000010100010101011110001110010011001100000101001001101011111011110110110001011011001001111111110001110010010011011001000110110100001100110101011110101000111011011010100010011110011011110000011000010011101111000101111001010001100101000001010010100111111000011001111111110111000011001001111100001111010011010000011000001110010100101000010100101011001011110100010010100011111111100111011011101010110001101101011010100100011111011101100000100101000000000101010011100111010111011110100010011011101111100110010010011101011011011111101011111010011100110111101110011110101001100101000111110000001010011111101010000000001101000011011011100010110010100100100000011000110010111010011110101100001011111100110101010011100010101110111000001101010011100011011001111000011001001010000001001100100010101100000100111010101000001111101111110110000111110110110110111101111010010111001101000001101001000010100111000010010100000001111010000001111101001111110100101011100010001011011000110011101011000001100001101111001010001100101001000110111100100011000100100101010011011010111111100111110011101001010111000110010100111110110011100000110101111101011110001010111110111011111000111100110000100011011001110011010011111001100000101001001111111100100110110000111100000011111001101001010101001111011101010100011000100011111010111000010101010111111100100111101001100100011111101010001100011111111101101010001111101100100011001100001010011001000010011010000110111011111011111011000101110111101100110000001010101100000110111110011001100111000000011000111111101110001011000100010010000101011100010010101100101000001111011000100001101100000010110111100011001110110111101001101110001001100000001100111010101111100000101110100000010110101000111000011010001111010111000100110110100101110001101111010001100000100011111001011100001110000100011110011011110100111010011100001011011000010000111010100001100101111101000001100001001010111110010101010001000111001011110000001000010110100101111101100001011101011010010000101101111100011011011011000010110111010000111111011111111111000001110100110110110101011010100111101011010110000010111111001000100101000111101100010011000010001100101111110011110010100000110111011011000001100001011101111100000010010011110111111100010111010011011000110011010101000000100100001111001010010000110110101100110000000001111000000001011011111000101001100110110000000110110111010010000100111111001111001010000100000001011110001010001111000001111101100000000011110111011111010011110100010000110110001000010000010010100111101100110100000110001110110010111100110001100001110111011101111111000111100000100000101000100011110010101101110100110111011101011011010110111010101100011011000000100101001111101010001100100111100111011000100001010111111011000100001101111111110000110011101000010000001000101000100111011010111111010001110101001111011000011100010110110100011100010111000010110101111010111001011111010011010001011111101100110001010101010001010111100110010010101100010100011101101100011101100111101111011010000100111000100110001000101000110111111100011100011111011001111001101101111111111001100100101001110100110000011111001110111010001000100100010100110010011011011101011111111100101110000100011100111000001111101011101010110110001101111101010011001101101101011000100010110100110110011111000000111011101011010111000010101000001001111001110001001111001111101011010001101000111101011001100010111011010110100010100001100111011010101000100001000011000101100010010100001010000111111001100001010000010100000001010001100010001100000100010100100011001000011011100001101011010001110001101101011111001000110010011011001111111101100101100101101110000000000101101001111000010111100110101010110010001011011011100101010010110111101001100100011001101100100010001110010110000111000100111100110011000101110100111001111000111100001101101010111100011000000100000101110011101101100101001101010010010111100100001100000001000111110001011111010100010101101110110101010000001101011010000011010000110011100100010100111010111000000011100000101001001101110010001011101101010000101011111101000111100101001001010100000110110110000101010110001010000001100010100100111100111101000110000010000010000100011101101100101111110000111001101001001001001011110000110101110111100010101100000010111110100010101101001111010011110010100011101011111110110000001001011000000110111111110001110010110011000111011000100001011110010010000000110001001110001101100000100100000111110110010101010010100010100110001011111000010001101100110001000111000111001010100010001100010110011101101010111001010001111010101011000101000111011110000111001101000010001001010100111110111100100100110011001100111010100101111101011101111110110010000111101011001100000011001011110010111100101011001101110001011011110001011001011001100111100001010000001011010011110001011011101101100000110001001111001111110000110001000011000010101010010101100001001001110101100000101010101100100011111011011011011100010101100001011100011001011010101101011101101111101100000111110001111110010011101011000010101011111111110001000100100010011010001001001000100110001000110000010101110000111011100111101100001011111100110101100101011001111000111001110110111000101110110010111011111111100001001100110001011011001011111110100010010101111101011111000001111111111001011110010101000001111000100100010111110011011101100101011100110101001001110011010101100011011101100100011111111001100111011111000100111110110101100111100011011000001100000101100000110011111110011010010101001111010001111000010001000010000110110111110100000110100110001011111110011100110011111010100001110100010011110101100010000010010000110000111010010100100000110110011100101000101100110000100100110010100001111100100101010110001110000110101110100110101110100110001011001001001000110110011000111110110000100100010010001010101001101101011000110010110110110011001110001110101010000010011101101101111111101001000111001100110011111001110010100000011000011011010100010101111001000000011111001110001111011001001110000100001100100010000101001101100011101101010110000110001111000010011001000101110111101000101001111000000100100001010100110010111011001100001010100101000110100010011110000100101100100101111110101001011000011011101100100010001010011011000101101011111001000111111111100001001010101110010110010110101010001011110101100001001100010000010101011110001110110001010001100000100011111010110100011110101001101011011100110000011010110100010110111000000001101010101111010100101011010001110010001011011011001011100101011101000110011010110001001111101111101010100101111010011101100001100010010000110101100000011110101010000110101010011101101000001000010100011100100111001101000100101001111101011101001110111000110001001101100000110000101101110110011011000001111010000110111100101111100100010101000101011010110110101110001000010100001111100011011011100110011111001110010011101011011110110100101011100110011101000000010101110110000010110001011001110011110000101101101001011011001100011111110001010110111111001011110111011100100111110010111111010110001001111101010011010111110010000000110111101010000011001001001001001110010000011101011011010111100111101000101001000011111110110000100101110000111110101100111001010011010110010011100111111101010110101001100100010011011111111111010000111100011011011001100010110000101001111111110110000000110010011101001111001010001110001111111001010100111010011011101010100000101011010001000000111000111011001011000010000000111011001111001001011010001001101101001111011010011001010110010110001010011000000110001011100111000010011100000101110001101101011010001100011110001011100010100100100100100001100011111011110011010011111001110110111110000100001101011010001001010000101111110100111110010011000111110100100000000000010000110110010000101111001000001010000100100000101001000011010111010111111001000001101100111100101100111011011000100011100100000001010000110101011110000101101101100011110001110101101111111011000010001001000110010000110110101011010101110010101110011110110100011010011100110110110111001000001101111101100001111010010111000011111101001010111001010000000111100101101111101011001111100000011110100000001010011110001100111100110100100001101101100001111011001000111010011100101000110001101100000111001111010000010011000010100110000010010110001100010110011000010110000111110011101010110011010001111000100100011011011110010010111110010011011000000001011101100111010100101110011001011110010011100100001010010111001111100000000010101000001011000111111000010101111111010101011000111110000101111001001111011110111011001001100001010001001111011000111000111110001100000010111000000011111000001101101100010101111011101110010110000101111010111110101010100100010010101111111111000010111100100110100000100110110010010010000111010101100111100001000010001100001100110110001011100110000011100001100011011111100100000110011010000101000011100010001010100100111011011111100101110110100001000001110001001011110111011011011101011000101110100010111011111001011010010111110111111001100110001111001010100100000010000000100001111011010011111000101110100110110111111100111001110111110100101011110000000010011001110010100101000111001001100000100001000010001110011110011110111001100100010011000011111100111110010001011011000001110011110010011011001111111001001101111010001001110111101110010011100111010011100100000100100001111001100111101100111110011110000000011001101101110011011001100100010010111101011111111000001101111101100010010101000100111000001010110010011000100000101110101000111011111010111100001101110111001011011101011101000011001010001001101011011110110100010101110000101101000000100100010010110111001101101111010000001001110011001111000110101111111101001100000100100000100010110001011001100110010111111000001100111011100000101100100001001111110101110111111000110101001100001110010100110100111110010110000001110011111000111111100001101000100100110000110010000110000101011000010111100101011111111001100001101010101000101011111000001001011010010110010100001011001001111011010101111100010110100100010010000101100100110011111011010010111110011110100000101001100000100111011101011110110101001100100101010111001001000101101110011100011011001111111101111001100110001011110001111001100101011000010011000100101000100001001001000101111110101110111000100000000011000101001111011110011111000100001110101110111011101011110101010010101010010011000101100100101001101001101000111011011100100000000110010111100011011110111000010011001110011110010000000110111011001011000011000101001000011000111001100110001000001011101101101010101100110011111001011110110101010001010010001000001110110010010110000111010111011011000001101011101101101111011110110000010101010111011101110010010011100100100110010111110000111001000101110010100000101000011100010101011000101110110101101000010101011110011000010000000001001100100101011100110100110010001100100000000100100110001101011110110100011101010001000110000011101100100100110101011000101110011111000100101101010110101010001101100101001001101010111011010101001101100011010101000101001000101110100011101001100011111111111000010001110011110100000011010000010111100100101000011110000000011111000001000110011100110010110011100010101101010100110010001110010011111101110101000010100011011011011111101011010101111111111100101101110110000010000101001011000001110011100001010011110011110001101000100111011011011110100010100110111000100111001110000100110010011110101010101001001100110000100110101001110101100011100011001000101111000000001001111110000010010010010110010001100110111010000011100001010001111010000011011100111001000010001100011000000011110001110100110111001100011001010011101001011110010111110110000010011101110101010000001101011100001110101010011000000010100001001010110011111001000111001011000111100011100001111011010111110111001110011001110110001000110000111010000100011010110110001101110100001011000001111010001111101010010101101010101110011001011001001101111101010010000100110110101001111010001000001101001110101001101111100010100011101100101111110111111000000011010101111111100000110000001110110010010011110111100111100001100011010010110011111100000100011101000001100110101111011000000001011010111111010001001011101001110001110001011000000110010110011010001010011011101001110101101011011101100010111000001000011011110011001111111000001110010101001000100111001011010110001111110100111101101110111101000110100101100101100010001001111111000000011001000100000011000000000000000011110110110001110111110110001101001110000000110100001010011101100001011101000010000001101010010110111010100010101100110100000001111101111100000110101100010001010101000110110001111111100100111100111000101000101101111101000101000000111001110010110100101010101101100110000110110110101111011101000110001010010010101101001010100100001111011101111100101101011101100101110001000010011111100001000010110110010110111110000011100010101101011000001010010110101101001111100011010010000001101101101100000010111111000101001110010010111111100111000110110000000011110110011100110011111001000011100110011110101001101111010010101000010110110110010100010011100110101101000001111101011011100110110011010100101011001000110101010000111110011101011010111100001110000111001101101110110101001010001101110001101101010111111001101110111100001000010010110011111110001110000101100111001111001111000000000100100010101001100011010100011000000111001100010101011111001101110011011100100000110001010001000011101010000100000000001011111101011100100010000101101111010101000101000111001110110100001000010100011000111111100100000101000000101111001101101010000110110100111101101101001100101010100010011001001110011000010110111010110000101001100101001010111011111000110101001011001011100001010111010001011110011001000010101101101000100001000111100010101111010010100000011011001110001010111000110110011011110010010000101100101000111111001000101110111000110000011110101001111010001101000011001000111110001010001011010000001010010110110100001100001110100010101100100100100111010011111000011111100100111011101011111000111100100111011010100110000010010110011100110101011101110111100101110111111000001110111011110011010101101101100000110111011111110011110111011100101111100101001110010001011111010110000000110000000011010101100010010011011100001010111011000001001010100001111010101110001000010111010110111110011000000010000001110000011101011100000001011000110001011100111110101010101101100001001001110001010111100111010011000001001011000111100000001011100100011000110100000001111001111100101100010010001010001001001110010011000001001011100010100000100000010110111000001000110010011101100000111101001111000101101010100011110010110000100001111010100010011000011101001011011100100000111001100011010110110011010110010111101111110110111100010011010001100010101110001110001011111001000010111100101000110110000111101010110111111111111100010001100110000101011000100111111011011011010110101000011101101101000110011001001000010110111110011101100000101011100110111111100011001011001010000001111000010100010010010100010101101111100100010110111111010000011100110100111100011000000001110001101100100011110010100111110100101000110110100101010111101011011011100000011000101101101101001001101001011000110001111001101111011011111001010001011000011110010110011111101110100010000111111001000001101001000100110100001000111110100010011110111101110011000101100010001001111100010101001011111010110100101001010101001110110110100000000100000010000101100111001000111100100111001010100010111000111100011011101111011110011110011011101001001000101100010110111100001100111010010010001010110001111010001110110110000010101000101110001011110010011110011101101111000011011011100110101001110001100110010111111110010011101011100001001000100000101110010101110000000010000010100110001011001101000110010001110100001110111101110100011011010110001000010010010111100101001011011010010000100000000110111010111110101111111001110010001101011011011011010110011011001100001111100111000011000101110110100011111000 +01101001000100011111101001110001101000010110011110111001000011100100111110010001110011110011010100001110011010010010100000001001001001100100110100101000000100101111110010011111111000110011100000000100010000001111000101000100001011001000011111111001010010001111001011001110011011000101110110011111100011011000000110100001001101000101101010101101010101010010100010010101100111111110001100001110010110101100110100001101001101000011011100111111010100111101110100000100110001000011000000000000001011100001111100010010111101101001000110111111010110111101010101111100010111110101101010011001000000100010111100111110001111011011011111110001110001101101101010110111000010111001000100101001101110100000101111101101100101100111110110001101101010011110010011101011100011010111000110110110011110110111101110100101101011111110000100010011011111111110100110001001100011110011001100010001110000100010110101101000100101111010001010001101111101011111001010000101111110100110000110000001000001101010001001011011100110111001001100010111100111010111100110110111001011010000101101111000111110100110000010011110001011011110100101000101000101000110011100111100110101101001011101000010010100110010011001100101011011000101110110110111000101011111111010011110101100100011110110101000000000010101001010001010011111101100010000110001001101100101010011101100100111001100010111110110110101001010100101100001110111001011100100010111011111000011111100011101111101100100110000001100001100000000011100011110001101111100001110111000100110011001000101001000011110111000000011100001001000111100001111010110010001110101011001100001010111010001101000010000010011000001100010011101100111110100001010100010110110111110010001100010010111011010100001111010111001111111111001110000000100001011011101001011101011001101100011110011011011000001011100000111001100001101110001011110100000000000100111110110100101010011010101101111101100101111100001001001000001101110010011011011110000100011100010110111011101101001101001110010101010110011110000110010101001011100011100111110010011111001010110111010000000111000001100000101001001101110100001000001001010010111011011100001011101101000010011100011101000111011110000000010100111111111010011100000111110000010011110011101111110100001101110000101101111101100110110110000010010110100000100000011111001010101010001010101100100111001100011100100100010100100010111011010100010010101100110001111000011111011000011001010100000101011110001110000100111110111000010001100100010010100100001010001011011100110101000010110001010001001011111011011110111000010110101101100010001101101100001010110001110111100101001011101101110111001100111110010101010101001101100010010111001111010001011100010001111010001111011101110000110101010111011010101011110110010001000111111010100111100011101010110000010111010010011001110100011001001111010000011000101010111110000110000011110011000000001000000001110100010101001011011001100000110011100100000111000111100000001111001000111100101111110000110011000111100100001101011110000011011111100011000010000110000111110010000010110000010100110000001011010001010100010110100011111011101111100010111000100111000101000110010100000011011101111101000000100101010011100101100110101011110011001010010000100011011000011101101101011111101101001110100000110010110110110101111101101101101000011010110010001111100001011010000111000101001111010111001001100011011001001100111110001000001011000100010101010011110111011000010100000010110101000111110010010001110110111000000101101101111000010011100101010011011101001011110110111011011111101110001011011011110110100010011010000010011011100100101001110111000011100011000001000001110111110101111000001010001100101011101101011011111001011101101110100001110010001111010011011110010010000101001010000100111011010101111001100010000110000111001001101010110010000111101010110110101011101010110011100100011101101000110110000110001111011011111101111010111110000100100001101100010100101011111100111010111010001001000100100000100101110101001110001010001011000110010101000001010100010000100100100010001000100111101111010100100001010000111111000010010000101011000101000100101011100001100100110110101011101100110110101100000011010101000101010000110011111110110000110101111011011010000100110101100000011111101010110111100001000110001111111001001011110111010011000010011001001011000111001011110010011011100001101110111100100101010010011011001111101101101010101101101100010101001100101110001001101010000001011010101100110111111011110001001110001111001011111100010001110100111101000100011001101011011100100011000101111111110001000001111001101110001000000001000111011110110011000101011010101100110010001001111000101001111110111011000100110110001100011010000001000110100000110101110101001101010001100111000001011101101001100111011110011010010110001101010010111101010000010101000011010111110111110010110100101111111001010000100011111010110100110010001100001011110010010000110110111010100110010001000111101010101110111010101011010010111111010010011000000011010110110110100010111000000000100010001101001010010000010001000111100010101101011011101001111010110000100001011100001101110110001110101010100000101011111001101110100010011100000100011110111111010011000101110000111110111011100001111110101010101011001110010010110100110000110011101111010011001111110110101101111010110001001110111101001000110010010110011000101000001011110010100100101101111110110100010011000010100100000010111101001011000010101010000000101010111010010110011100101010100111100000010110111100001111001111011110001001101010011011001100001011100101001110110001000000111111100110010010001001101011100110001001111000001111111001010011100011110100111110110010101101100110011001100100101100000000010001001110111001000111001101000111011000001111010001110100100011110010100011010111010011001010001000101101110101101011110111110010000010111101110011000111111001110001010001111001111010011100101101011010000010111110100001010010000011010101110110011011011001111000010010111001001100001101010001110001100001000010000110111110011000110011000100000001111011010100000010001001010110010111111101111100111101100011100100010101100000110100100010101010001000011101111111001100110110101001101101111111001111001101101011000001001001011011001001001110101110100111010100001011100100011100111011010000011011011000010111011110100110001011000001011101001000001111000010110110011011011100010010110110101010000110100101000001010000101001010001001011010101001000011011010010101110111011010000010011011010010011001111000100000100001110010010100101000010001100001011110111010101000101100101010111101000110101011010110101101101001101000111010100111101011001000001011101010111001101110101101010000111010010000001110010011000110100101001000000010110011001011010011110011001101001100110010011101100011011100101100100000111011111110111110110000100101110111001110011100011011001011100101110100001111001001001011011111101110101001110010110101111000111010111111000110000110110010000000001010001100110001110111000000010101110001010101010100100110010011100000101111011000000---------------------0000001001001010010100011000110000100001001000110001101011000010001011110000011001111100010100000111100000111001011101110010000100110000101000011101011110001000111101000110011100111111101011110110110101001111111111000011001011000111100111011111000110010010101111010111011001011111000000111011101000010100111001101001110000010101010111100010001101010111001111011100100111000010110010000000000101100000011111001001111100101100100001001111010110101110010011110010100111100001111001111101010010100100001100000010000010011100000010111011100100100010110100110111001111000101110101010010010111000101011101110110011101111011111100011100111010111110011111000100101100110000110000001011010001110100111100000010010110100011011011011110010111000100000010111011111000100101010000000101010011111101101010001011110011110001110110101010010100101101011010110000101010011011100001100010111011101100110011101110111010001011110110100000110011000100101010111001001100001010001100111101000011001001001010001010100111000101000011000110100100001101000100000111101111010010001110011100110010100110110010000100010001011001011010110100011001110111001111110001111001001100110111000101110110010110100111001010000100110100110001000110111100110101000110111110110010000101110110111011110000100101010010101101000000011111010000101111111000110001110100110010001111010100001011110101010100101100011100111100111100000100111000111000110000001000100111101101110010111100101000101110111100100000110110001001100011100101001000100011001110110111000111101000011101010101010111010110000001010000001000100101110101110100001100100011101101101010101100101000110011110111000010100100110000000111101010011000101110011011011000110100011111110100111110000110010011011001010010100111101000001110010110010011110011100000110101101100100100001111000110010110000010110111110011110000000010010100100010100001010110101111110000110101110111001001101010110010011101101110010000101111001101100010000110100101110110010001010111010011010111111011001101011010111111010111100100000101001000001101110100111000111001010001011001001110101101100010010011100101001100101001101101011000011101110111110101110101111001011111001010001000000001111111111000000111101000000000010010000100110101111001010001100101101000001000111000011011101100111000010011101011010011010001111001110011101101101001011111011110110010101110110000110110101001001101110010110110100001010011000110100011000100111001001000010101100110101111110100011000001110011011110011010010010000011000011011000100000110111011001011101000011001110101100111111101111011010011110111100011111011010010010101101000100100011111010110010100100101010111100010001000100101100010110011111101111011111100010000110100001111011101111010000000000100111110111010010001000010110010101110100100000100110000000100111111000110010000011101101001110001111011100001101101100110101110101010000100000101110011111100100100000101011001010100010110101101100100100010011001100000000000001001000111001100000011101111111011010001011011011001010101011001111111101010111101010010011110100000101101000111010010100110110101100000101000110101101101110110001111111001001111001011111011010011010011111011000110111101101001101111000110101011000110001000000010101111011101010101100111100100011010111110110100001100111101010111100001010000000011010001000010101100100000011011010110110111100111000011011111000111100000110000100111010011010011000100000001011001110011000111010111001010100110001100010010000111100101101011010101010001001001101100011101011101011100001001101011111101001010010111011011000111000010000110010011111001110111001111000110001111011010010001111001100110100010111010011111110010100110101101100100100101010011001000110101101100110000010000111111001001100001010001000101000011101000011001111011011111000010010011011000111110110100110001101100110100111000010001011101101000010011001111001110101111010010101100000110010111010110101101011100001100110101011101000010010101110011100101100010100100101000111101100011001000011011000100100111001100100111111111010010011001110010011101010110100101101011011000010110001100001010100010101011000010110001011110111100101101100010110110001000000010110101011100011010100010101100101110111111001111000011001001111101010101101111110101010100101011001111000001110110111101001010101110011111001111110101110010110011110011110101001010000000001100110011101010011100001111010110000111011100110000100011101101001101011101010101100000111111110011010001111111101111000010100011011010111001100011011011111111100000010110111001110111110001000101011001100101011101100110001110001111000001100100011001011100110101111111010110000011011001111111010010110111011010110011111111001110100010110000101100101111110010100100010001101011000001111110100110001010011000000100000001010110110001111101000010101000110111001110101101001111111110110010110010011110010000110110110010101000101111011011110001111110111000100101000100101101010000111001010110110010010100000010000101110110010010111000111000111010010101100011000101000100111101001100101101110101000011101101101001001101110111011001011101000011110011000011000111010000011001010001000101001000000100101111000010101110010101011000100111110010111101001111010101100110101110011101100101011110010010111101101011010110000110110011111000100110101100100001100000100101001010010101001100111010001100110110100110111100001101100100101010101101101000111010001101000100000000001111100100101100010100001011001001101101111110100011011101001011100100110110000010001010100011110011100110111000111111010100011101110101010011011001010011101101000110001101010100110011001111010111110101011000100101001100000001110010010101111001001000001111100110101101101011000111011001010110111101001011111110110110110101101101100101100111110100110100100000111100110101111101110101100011100010001110001010011011111011111010100001101010100111010110001100000111001000000000110111110110000001000100100001100000110011000100110010001110101111111111110100111101001101100011011101100000101111000100111101000111011100111001001010110100111101000110100011100101100011111101101101110011010000000010100001011011100010101000110111111000101100100000111110110110101011011111100000100100010101000000000111011111011111000111011010111010010101010000000000111100010001011101011101111110000010000100111101000110010001111001000111000100111001000111000100011110101101101011001000000111101010011001111000100000110111000010001110110001101110011101010000110001111000001110111101011101011101111011101101000101101011011110110111101010100010101011111101111000101011111110111111100111100111111001001001001111100111010101011011111011110101111010110110100001110000101111101001100100100010011111000011111100111100000001110011110100010011110010101011001001101010101011000001100101100011000001000100001101100111011011000110000110101000010000011100110111001010011111011000100001101110100110100110111110110011100000101011011101111101101011111110100010000100100100110010001001000100001000111100000111100000011111000000111101001101000011010000000010011010100011000110110110000111011001101101111011001101011000110011010101100101101011110111010000110010110011010100110010001111001000100110001010000111101101100000001110100010000101111101111100011100010001011000110111001011010111011111000011010110111111010010011000001011101100011110001111010100010110010111000010001110001111110101110011100010010110101111111001001110001001100001100000100100010000110101111111001111101010101010110011011001101000100010110111110010010110001101010010111001100110000111111101001100110100011100010000000110111000110101100010111111111001101100110100110100001111000101001100110111010001001100110011100000010100010010100010100001111001110111110110000100001100100101100110010001011101110100110001110111000100111011110010111001011110010011001100001011100111010111000000110100011101011110100010110001111000010010100100011011000100111000110111011001010111100110011111100011000100101111000000111011011100011111001111101111101110110101111110101001101001100011111100101100010001111010011110010011000011110000100100000100001011011111100100001110001010110000111011010001011110011010100101100011001100010100001100011101001110100010100100000110011011011011110101110010010110110101011111000101011000011011011011000101011111111100000001110000011110001010001010110011000101100100111111011111100110101101011101010100110000111001100101001100110111101110011011101011100010010010100111110111011000010011000110010000111010110100001110010011101110010010000000110100011010110100001111001100001011001101111010011110100111110110011110110000111001011110100011100010100110011100010100101001111110101000101110000100111011111110011010001010101010010001011011111100010101100001100010011111010000011110100011011111101110100101011000110001110110011111100111001010110000111100111101100000011111110100000100010011110110010011111011111110101000011111110101010000110111101100101101010111010001010101011000010011100010101011100010101001011000111001000111111011010111010000000111000100000000111001000101100010011111010011010001011011000010110001110001110110000100000010010011110111100110110101010111101100001000110111000111000000111001011011100000110111001100010111011110001010100100000101111110111001111011111010101010101100111110110110101110110101001100001111001000101010011001010000101101010010001000000010010100101101110101110001100010010111001011110010101110111010111111101011100000110011010101110011001101010100101000010100101101100100001110101101010100110010000100101010100010011010010110000001100001110001101100111101011101001100011111010101001111011010111000101001100000000001000000010001110100001110010100000111111110000001111100101011100000011001010101111010110001100111011001011001001010110100000110000100100000010110011000011001011010111101111011101111011111101101101011011011100001101110010111001000100100101100111000100010011110011110111010110010101011110010011110100000111111001011010000001101000101111101010110111111010010001011100001011001101100011110010101110111001110110000001000110101111110000000111101110110000000010010110100101111101100100011110100110110010001010101010111110001000110110110010000001111111011000010100001110001101011111100110101010001111101000101110100111101101010011001011101111010011011111100111111101000000110101101110011010111011001001011000000100011000101000011101110000101000001010100001101110111101011011101101110101010110111110111101011111111100001110110111001010101010111001010111100111000010101010000010010111010111010001010001001110100101001011110111001100000011010111100101100011001011011100011110111011011101100001000100110001011001001001000001001111111000100000100010001000100111011001011101011010100010111111110000010011101100100000001110001101011010000001000110111000010110010010000001101011001000000110000100111010000101011000000111111100100100000111100010010111111011001000001110101110011000110001100101100010011110010101111100100110010110001001011110111111011001011101010110101111000110010011010010001000011110000010101000010101010000011011100100000000011100101101101100011001000110101001000100000000101111011100000000101000111111011000011110000000000010111110110010100111011011100101010011011011101100110101100011111010010101110110100111011011110010000111110011101100000011101110001101101101110010001100010001101100010001101110101011011110111100110001101111100010100010001011011001100000011011101110101011100100000001110011010000111011110000101101001110010001100101000011110010111001100110101100000000000001101001000100111111000111000110000111001100101000101001110101101110101101110110101111001111110110011000010011101011110100000101100001000101111000101010000000101001100101011111010111111100000110011010101011111000101011001111010010111100011000110001001000111111011011000001101011110111110010000100111000001101101101111000011110010111011011010100100010101011100100000000000101101001011111001010001101101011111011111011100100101101111111101110010111101100011101010010011011001101111001011111010111110000110101000111011001110100001110110011101100010001111110000010010100011000011110001000110110000000011100101111001110010111111001100010101011111111001110111010110101001000010001011010111100100011101001011001101100100001010011110000001111111100000110000101000011011000010010100000101011101100000100101001011011000000011110010100100010100000100101110001100100101101010100011100011010001111000011010001100110000001101110100000001000111001011110010101011111110111011001111100110100001001011111001101101111000110000110001011110000100110011010100100100100100000001011000000110001110110110100001110110111111111110111011001011100101111011101101100010001101101110100001011011111010011010001100000011000100011111111101001100000011010101101111101001011011010100110101001101110100111001001111001101010111110010101101010101011011011110011010111101010101000010100010110010110101001000010110000000101000011001111001001110001010010010000111011101000100000001011001011100101010101000010000000010101011001011001001101111000000000101011001000000110100110100011101110110001101111101101011000110111011101001011110110100110010100101100011011110001001001000101110100101101111111000011100001110110111111000101110110000011000011001011101011100000011100010001101010010110111011101101000100111101110000110010001100100001010000101000010110000000001110111010110110111100000101000101110111011010110010100000100010011101101110000100111011010010010101011100111111100001011110111101010001000110100101011011010100001100101111111100011100001000110001110010010011111111001010100001111010110101100001000111011101110111100000110011001011001101010001001101011110101010101110001111110111110000011100101110000110100011101110101000101111111110011001111000111010010101111110001011011100001011111111111100010010001111110001111010101110101001110010111111100101000000111111011110011111001100101001011010100111100111000001101101101011100101111000111001111010010101110001110011000100001111001110110110110010000001000110101101100000000110111001100001101001101000110001110001110011101100001110101000011001110001010111110001010000100100111011110111011101001110000001101001111001010010110100100100000011111100110110110011010010110001111001110010011100101100001111001100111010011000011101101101110100010010011111100111101101000100101101110010010001100000011001010011111000101001110110110100010001001101011011010101101000000001010101001100110000000101011100101010111001101010010111101011010111001110000101111101101001100111010001000010000111110100010100010011101101000101001010101110011001111111101000011111101011100111000100111010110001011111110011110011000011100100111001001010110111011100111111011101110011001110001111011010100001101100001101110010111001101110111011000101100110001001101010000010100110010111100101110110011111110100010111111010110000001001100110101111110010111101001100001100101011110101110011101111111101011001100001110100011011111111011001001011010011000100000101000110001111110101000010101011001101101010010010110101110000010101101101110110100011010110010011110101000110100111101100010110110111111101000101001001011101011010101100101110001010111111101001010000110111110011100001100001100101000011100110101001100100001011011011001011000000010101010100100101110000100111000000100100110101111100011000010110100010001100001111011111000011100001001001110101011001101000001111100101101000101000111000110111101101101110100011000011110111111000101011001100001000000001010010001001010111100010111001000000011111111011010110110100001011010010010101011101010100100101011001010011111100111010000100001110001001110010101101011101011011110011101011100100111010001000010001101110000110001000101110111111100100011011111101101100001010001111000010001100110100010001101110111000011000111010001101011000010011101101000110011111011011010101001111010101111010110010001100000101111111100110110000100000010011101111010010010010100101011111110111000101111011101001011101000110100101001111010011100000001001101100100100001111111110010010101111100011000111000011011000100010001010111010111011110000011111010110110101111000101101001011110111010000000110001111011010110100110001111001111001100111001110111111000100001010110100111001100000110000101110111110101111010011101001100100100110111111111 +00111000100011001100100111011110100001000100001110101011010011100101000010111000101101011101010100111101010001011000000110000100011100011111101101110010010001111111111101101111010000100111100111000001100101011011000100100110101111000001111101001100110101101110010110011100010001010101100100110110111001010011101000000111110011010110100001110011011110010010110000010001101111110101111111100110011100000010000011110001000000111101000101010011100100100011101100110111010110111011100110011001001111111111100010110100010001111010001011000110011010001111001110000010100101100101001110000111000100001011011111110010011110100001101110010100011010100011010111000010111100101011101101101111111000000011110101010001101111011101111110100000000011101000101110110000000100101110111111111101110011110110010101101110000111000010011000001101000011001101001011000010000110101000101011111101011100111010111101001101110011010010001001010111000000011111011101011011000001010110010010010001010011010101011001000100011111100000101100100010011100000100001111001101111111011010111011100000010001111001001100101000111010101101011111000000100010010000010001111001101010111100100111001001011110101111011111011111001110010100111101010010100011111100000100000000101101000111110100010001000111100000110101001011001000010001001011001010011111000100001111001001000111101000000111100000011110000011101010001111100001101010000101010010010000000111100010010010111010110000000111100000001101100110000100111100010010101010101000110010111100100011000110101110001100110101110010000111011100100111101110000101000100001010100100101010101001011011000110101001000011101110011111011100101100011111100010011111000001111010001101001011011110100100100001100000000011001110100101111011110101010000100100011110010110101110000111001011100110111001000100011101101100010001000100110111110011011111001111010001010101111001101011000101001001001000001111011111110111100011001100101000000000101010001101011011001110000000110001110101001000100000001101000001101100011101111010000111100011100010011100100001010110111001010101010010011100100001101010011011101010000111000110110101001110101101111110001001000110000111111101111011110101010110010100000111110101111100001100010100111111101101001010101101111011111101101010100011101000101010000010100001001110001101011110100010001000010011101011100010101010101000010000110100001010010100110111010110001001001000011101011001001111111001001100111101001000111110111111110101100101100011001001001000000000100111101111011000110111000111001111001000011001011101011011001111101000000011110000111101100100110010101110111100011011100010111011101100110010001010001100000001110111010101110100000011011101101101111000001000100000111010101110100101100000100011111001001100000001000011001011010110010000101101011001011000010010001100000000101111101110110000000000010111000101100010111100100110110011101100111011000001111101010101110000101001101000011110000101110111000101111101001000101100010111111100010011101010010010110001010010010101000111111001100111111111110101100000001111001000110101110011001000111100011100111101100011101101000001101111001010101100000001100110101111011001001100101011110000101110010001100010001101010011111011011000100010100101100011010100001000111111101010110011110101011001101110111001110101010101100001011111100010010111000000011111101110101001010001100110000011111110011010110100000101001010010011100101000110101011001011101111001110101011000000000100000100011010001101110010101100111110010001010011110010011110100001010111001000101110011110111100011001000110010010110110010010100001110111000001011101001100110111010001010010001001011101110000110011110010011110010111010011100101010111111001011011010000100001011000011000001000001111111100010111111100010100110010001001011011000111001111011110011010010111000100001001111100111011100100001110011010110111110000011011110111001110100011001110101010000000101100110010011010010001101110000001011101001111111111111000111011010101001001100011101100011101100110101101011111010101010011100010001000111001101000100111100110010010000110010010110111110100100010001010101101110111000010100001011011000110110110100110010001000010001110011111001110011000011111010100011010001001110111111000011000101101101000101101100110010101011001111101011110001011001000010110111010101110010001100011101011110100100000010010111001101100011010010011101011100010010000111111010101100100100110111111010010110001011011100010101010110101111001110110011010100111000011001110100111110101100011111110100000100111101111001001110000111111011101001110101000000110000111011110010011011001001110100101000000011110100001101001111100100110011011001000000000101010111000100001001111010111110101110011101001110111011011101000110011000010001011110101010100111000010000101010000011001010111101000010000011110001000000011001111000010000000101101000010010001100011000101100001010100101001111000111000000111000101111011110100010111011110001011101010101011001011010101000010000001001010000001000111010111010010000110001011101100010010100011000111011110000011011101110000100111011000010110101101001110111010110011010001000001011010110111111100000110101000001101100001111001000000111011111100111000000110110001101001010100011101001100000011110110101101101101110011101110000010111010101111010010100111101100000001000000101010001110101110111001101010001010101000100000010001010101001010101001011001101111101010110000011111111110101110101110000011111111110011110110001000011110010001000000111001000101011110100100010010101100000011011110101110111100101011000011000100100010010100001011010010001100101010001100100101101100000101000011100101101110010000001010011110101000001110110010100111001110110011011111110110101111100011110101110011010111001101010010010110001100101001011101001010101101011001010011101011010010010100011101011001011011001010111101100010001000101011111001000000001100001010101010000111000100100001010101011110000110001011101100001110101111111100101100110101101100011000010100000110000101000000101011101101110111111000100010111001011101011000110110101110001110011001011101010000111101111011110100100110001001011010100110011110111000100000110111011111111100101100101000001011000100001000101101110110111000100001011111111100001101011101001001101010101011001110111000110001111000110101101110111100010100010010000110000101101110010101010111001011010100001010101110000100111111010001111001001110100011010011100100100011111100100000100100010011000100100011010110111100111000001110001100110011001110111101101110010011010100101111000110001000110010011110011100000110001101100111101111000011110100000000100100101100110001111001100011100001110001000000101000100010110100010110011111110010100100010010011100101011010111000000010101111101011010011010110101101000001111000101010000100111011000111010000001100010110100011001001010001001100000111000110111001100100010110100101001010010010101110100101010010001100110000011100010100110010000101111011100110110110001010001001110100111101000111110000111000110000011011001110111---------------------0000001100010011001001111101110011110010110000000000101101010011000011011001111010000101001010100111100110000010000111100110111011111011100000010110101111111111101000110011101001111011100111101011100001011110110100111101000110111100110100011111111001110110101110101001010100110001110110010100001111110001110101011011101100011110100101111000111000001010111110000101011010010011111000011010011000001000000111101010101110111011111100000001100001101001010111011101011001000101100100001101110010001110000101001000111101010001001111001001110001101011101011010010011100101001011100100011111001001000010111100010000001011011111011000010001011011111110101110011011110110001010011101101110100110001101110000110111001101010111111001100000011111110101001100001010010100000111010100001010110100011101000111111010101100111010010011110011010101000100111000111100001010110011001011111100101111101111011010110110101110011011001101111110111001000011000001100010001100111111000010100100000001111111000101110001110010011001101100100010100111101100110011000100010011110111100001100010101000110110011011110011110001001101001011010000110110001110101111101000111111000101001011100010001000011101100010010000010010010111001001001110101100101000010010101001001011101010011010101000000111110100111010111011001010001100000010100000000101110000000110110110100000110111010000011010110000100100010000001100111100011100010011011000111110110100011000110000111100010011001000101101111100000100000000001100100110111001100111000100010101011001000100010111111111100100010011001010001101011011110011001011100000000110011011010010110101100101110100001001111011000000110100001001010101110011100010110111010111010110000011111110011101010001010110000110101111011000010100111110001011001001110010011101110011000000001000010110011001110010110110100111101110001100001010100110111101011110100100100000100111110111110010010110100101011101011111100110011011110101110111110111101011101101000011000101000100110111000011001111010010010110001001011110110110011101010000100111011110011100101110111001000100111010010011100100111111001011000000110111110010000110111011100001001011000000111100100101001110101000000100111011101101011110011010001010110000110100110000000010010001010100110001100011000010000110000000101011110100111111010100000100000011110001001101000110110010100000010011001110100010100000001011001101111011011110000101110110010001001000101111010001111101011011010100111000010011111110101000001111101000110100001001100010111011011011000110101111101001100001001011111001110000011100100111101000111110111001001100000100101101101100111001010000111100100110000000110110011000101111111111011011010110101011111100110010001001011010100111101110011001001000011001101011111011011011000000000110000101011100100011010100110000110011000000110001110111100011110010101010011010110010011000000010100111010010101110101001000000100011101111110110110100010000010110010010110001100101011111011111111011100111000001010110001000111011010100000001110110001101000010111010100011001001100100001100010101011101011100101000000100110100101100000111101100001010110011101111110100110110110111100111111001110110000100010001011011110010101101111101110001110101001000011010000010111010110101110111011100110110010110001110101010011001010010110110010010011101110010000010101100100011000011011001010100100111110101101011000101010000111010100011101011010101000100011010011000111001011100000101000011111111101001000001101000000101111101100010011010001011101110100000101000110110111111011010001011111111000001000111000011101101111011110011101111010010011000111111111011111010100101000101010000110011001100100100111001111011101010010001010100010010001101101111010101101011111011011010100101001011111101001000001011111100001000101010011111110101000010110001110011100111010101011011101001000111111111110001111000010011010010000111101010110100100011011010011011000101100100110101001000011111110010100001110001111111101111101111001011010101000110000001000101110001110110110100010110000110110100111001001000110001010001100001100100010111000011001100111101100000000101011001100111000010000011110001000011010011110110110110001010101001010110011011100011001111011011011101100100001010111111111111110010001111001000011110000011111110010000011100010011000111011000111000111111100001100010001111100010000101011111111001110100101100110001001010011001010110000011000100000010101011111100000110010000111101101100010110010100100100001100111100100001011010001000000011100101111010100100011111010110110100111010011100100100111111001001110111100101101000001111101001011111100110010011001101111110001111011011010000010000101101100101111101100101100010001100110011001111111001101100001110001110001101000000011000111101110101001101011110000101101010110000111010011001111010111110110001001110101111111000110110111011110000111000110011101000000110101101110010000001011000100111011010001011111100001010100001110110111010011010010010111100011010000100100100010100011000000011011100010000110010001101000000010011001001001110110010001111000010001000011011101000110111000011101011101001111001111000100000000100101100001100101101101110010110001101001111011100001101101000100101001001100011001110101110110101101111010010010010001000110100001000100100111001011110101111001101011111111010011010111001100011100001011000001101101111010100010011100001111010010001111110010011000111011101101100110110110111101110111101000001010000000011101001000011101001010001110000110111101101111100011100100100100001111100111011110100010111010110011011100101001011010101000010010110011100010011100111111001000110110101000101000110010001111111010010111101000000111101010110111011010110110011111000100101111011011111001000101000101011011000100101010100000010010100110011001001001011111111001010101011111011000000001010101010011111110100000011100111110100111110011111011001010000110010010111011110110101111011010110101011110111111000110000010000000110001000111101001011100111011100101100100000011011110101101110100011111100011110111111111010111110001100110100001011111010111010011111010001110001110111111000101101010001011000001110100001110000100010011110111111111100100100000011001101011011110011010111010011101100101010000100100100011111111011111100010111000111111001001100111000011001000000011011000010001100001110000101111001111111000011100000100000111111000011000011001110001011101011011010011010101110010100100100001110010100001011001011011011011000001101000010011110011001000110100010011010100101101011000101111110111010110110100111101110000011001011011011001011001000101110011011011110010000011010111111011100110011111100001110110101000000001011101100101011001110011111000110010100100101010010011100000010111101100110111111001101001000001011100101111011111010111100000110100101001000110011000101110101000010100110110000001010001100000110100100110010001000011011011111100000101010001111000100000111100100111011000111011110001110110000110001001001001101010011111111001100110011110010010001000000010111000111100110100001110101010001001111011101010001000100001001100110011110001110011100101111110111101101110000111001110010100000011001101100111110111011110110100011100010100010101101000110110010011111011000100010010100011000111000010010001011011001111010100100110010001001101000001010011001111000100010110100011001101010110000010000011000110100100111010001111000000010110011100001111011100011011010101010100111100010100010000101000100010000001100111010111111100001101111010010111001101010110100011000000100101010011001001000110111011100011111010110110010000111110101111110000110010111101110110010101110000011011000100000011101000001011000111000010000011101111101011000010110011100001001100011100111100000011001001110000011101011011000010100100011111110001001101010001111010101010001010010000001100010011011000001000110000100001000110110010000101011100001010001101100000110010000001100010101000001111101011000101011010010100111010010110011100100001111100101110100110110100101100010011000010111110011000110111001110110111110001011000001110000110010110110111110000110111111111011011011101000011111111001101011011011001110011111001110110101010100010100110101110110110010011011000011000110001101010100010110011101110110010101111000010111011110001001110111001001001101001011001101110110100101100101001000000110110111001111011010111000101101010110110000111010110001100001100101010101000011001101100010100010110111000100110110000001100111001110010100000100101101001101111000100010001111001001111101110110100000001110011110000110110110001110011001001101111010101010011001010010101011011011000111011110000100011111100100110110110000000001010111001000000110100111000100110101110000011101101000101100001000000000101100100100000010100101011111101010110111101001000001100101110010011110110101001010101011000001111110001010111100100111000101001011011100110111101010011101000101111011101010000000011001101001100010100100000001001011101111011111010000001001010010100000110011100100011001101000110110001001011101101010101101001101001010111011000000110100000001000111011101101111110101100111110110010111101010010011010111110000000010111010010001111010010011011100100110110001010110111110011001100110010101000100011101100100011110111100100011110001010011100101010111011100001100000001110111101111000010111000000010100110010010110110101011011000111101100110111000110000101100011010110001010100011110000100010111010001001011101000101100011100000111111111111011000011111111100011111100011111100101001001101010001010010011001010010011101010100010101010101011000010101100110101010100010101010110101001001100100110111001010100011101001010111100110010110110011101110101000101111110001111101110110110110110010101100111011011010001100110100011001100110111000011110111101111000100111011001100100010011110011000110000000010101010100110100110001011000110011001111101101101000011110110111100111100111000011110011011100010001100010111100010010001111100111010110000110101011101011000010100001101101001111100000110101010101000111000001111100000100110101110101110100110111101011100001110010110101101011110111000000110010110111010111111000000100010101111110110011111001010001001010101110001100101011110001111110101011100101010110100001000000011110101111111011010011010000111101101001001101111001011000001011101011001001000111001110000000011110001011011101100001100001111011010111011101111101100000000100100110001111011101101001110100001011010011111010001111111101001001000110101001011110011101100100001001011111001011100110001010001101000000111000110000000001100100101010000011001010101000101100001011110100010010000100001110110110110101011111110100111001101010110011100010100011011100001010110110010110001001101111100110000000111001110111000100001000111011000001001001111101010011001000010101111100110010111001001101010011011100011100010111100000011101000001110110001111101110001010001011111101100101101101101011011100111111011011010100010111101100100001001100001010101101010011111000000000010111010001011101101101011101111010110110010011100110011000111111111111010001000100110111111011000101111101101111000010100110011001111101011011000011111101111110011010000101100111100010110110001001000110010111000101000100001110001100101010111100001010101111010100111100010100011011001011111000011100010100000000010101010101110100110011101101100010000110111100000110011111111011010101010000000001100100000111100000011000001110011010011001001110010010011000010000001011100010101010001000111111010001010010110110100111000011010011100000100000010111101010010010111101111100000111000010101000100101100010111010110010011110101100010101010011010100100011001000010001100111010110000111111111100011011110010101111010011011010100111110010001011000001000110010011001100001000101011010000011010111010110010100001000000011110000110100011000001000101010001100110010100101011110111111010110011011111000011010101110110000110100110001010010000010000000111010010001010000110110001101110101110101110100001100110000000110011110110110101100001001001110111010010110110010010011001100010001111001100011100111110001010011111000111000001100011001101001001101000110110111100010000010001110101000110101001101000010111011111010001110010101111101111101110100111100001110101111000100101000101101110101110100000010100110011001000111001101011110101000010111010010011001110011000010101110010101001001100010110001001110110000001110000001111100110101011000000110010000110000000110100101010001000001101100110001011001110010101010101011000110110111101110110001001001110110000001110000101110111000101010110101110110011111001000101100011001110010111101010110010100001000100110100000101101101011001001011001010011111011101010110010010010010101000100111010111100101110001110010111000001010100001110111010110011111010100001100111101111000111111001101000010110011010000111100010011011010110001010000100110010101010000100101110100111110011110101110010100101101110110110010100111001100111001100000011100001101110011110010100000010101111011110111000011111001001111011001001011111010110001010011111110100011100101101111001111100011001100111001011100100111000001100011000101011111010111101100100010010010100000001100100000110010110010110111001111000101101101101100010101101110011001000101110011001111011010011101010100100001000000010010000011000010101010101110010000111000110101011010101111000011100110001010110001001100010011011110000100001100101011000111100100000011001001111010011000000100101001111111011010001010101000010011010001100110010001110100010001111010011100100000110011110010001010000010100101010010110011101001010100101001010010110000000110101001001010000011001000000001100010101111011100110111010110011110000101011001010010101000100110111011010010110100000001110111010010011101110110011010010011101001001010010111011001010111111100111000011101011000000110000101011110100000101101100100110100001101110111110100111011000111110110110110010101111001000101000110011101111110101110011111100110110010001011001111011100111100111101110111010010101000000101101000100010000110001000000111000011111011101100101100001000111011011100100010001000001101100010101010001111010010110101111011011110111101000011011100101000000100010001010010010110000111100100100001010101110111111001111101100011010010011001101001000101100100110000010111110001101001111001110100011001100100010000001111100010111110100111011100111011101111111100000110110001111001001011000011101011100000101001101000101110100100011011001010010100110011100101011110110000001010011110001100001101110111111110000111010110001010000100000001011011110111001001110000101101101110000101111010100011110101010000011110001111000110100110111111110111100000100001011101111001000100000011100100010001100100001101100111010100000110111001001010010011100001000010000000110010011110010011010101000011110010110100101111010000000110001010100000100001101101011110100001001001011000001101110110111011011000010110111101001101010011001111101100111010101100110000100101010111110010101001101111101011000001111110101000101110010101100110010101001001000010101010101101000100000101110010010010100101011111000011000010001111000000000111100001001010000010111011010100001100110110010100011101010011010010111010111101110101011100010011010001001111000010011001100111011110110011110110010011001010010111100111000010110111110001100010101100010111000000101110100100101010101000000111110000101101011101000011111000110001110001010001010010110111111101010100011000111000011000001011001101010100000101000101011111010110001000010100010110111110111011100101101110100100110110000000111010001000101111100101111101111110001101110100100100100111001000010111010100101110001100110011101111100001001110011011111110100100111000011011001111100111000100001100111001110001110010000111111101100101001000110000011100100001110010010001001101110000001010000110110100010101100100101110100010101000111010111100110010100010011110011110110001000010100000011100000000011110001100001001100000011111000000000000000101010010101111100011010001100110111000101000101110100000111000010110111101011110010000111100001011011001100010010111101101001110100100101000100110101111111011011011110000001011110111011011010101100001010001011100000101110001100110000100101111101110001010111101110000101100100100101100100111101011100110101 +ls13msgs +0101000010011110111111101001111000101001100101010110111010010101111111110100001101111111000111001011101000101100101010001111001110010010001100010111110110010011010001001110010001101000000100100000110001011110100101010100110100001101001110001011101010011011000001000--------------------- +1010011000111101011111000100101010101111001000111010111001011101101111100001100011001100000111010111011001000110111011111011110110000100010000000111000010000011101000000101101000101101111111101010110000100010111000000101011011111010110011101111001001101111011110101--------------------- +1001110011000101111001010000101100000010010010010111110010011110001000001010001001010001111101000111001101001011000100000101100010100011000001101011101111001001100111100011100010101101000101000010101010010110010000000010100111010111101110001001111111110000001000011--------------------- +1001100110101111010010100011101111101010111001011000001110000111101101101100010011111110010011001001110001101110010011110000111111100101000100001011000010111100000111011110111110000110110010011100100010000000101111010100100000011000000101001101010100000010101011000--------------------- +1001010000111001001011001010010011000001011110100111011111110001000011011000000011000000100001000000110011000111011101010011101101001001011010000000011110011010100001110100011001011001000011010011100100100001010110001100110011101010111101110101000000110101000100010--------------------- +0000100011110010111101010111100100101110110001100100011111101000010010010001100101001001110011000100011010110101011100011011111000110000010110101101111001011000010011000100010101111101100011101010000101001010100100101000111110101111010000110011101101100110011111100--------------------- +0110101100001011101101100011010010010001000101100100101011100000110111110010000100001100100001101100001100111111000001110011101111010001010001000010111111110101010100110000101100110100101001010011101100001100001001010011101011010100101010010101100000010010011010111--------------------- +0100101101110000110111100011111100110101110101111100110000010111101001101110100100111011011101111111011110101010001010010110111100011110100000011100100100000101011011101001001111011111000010110001011000000111111000110001101011111110000010111011100100001101110011100--------------------- +0001000001100111111101110000100101111100011010011100011101000111100000111011101000101100111000111100001000111010100100010000010110110100100101001010001001000101100000000101110000100110101110111010001000110111101100110110000101000011100001101110001100001101011110111--------------------- +0011001111010111001110001100111000010101001111001010111101101010000000110001001001101010000101010111011001100010110111011011001010100101111101001000010111101001010001010001110110100101000001100100110111000000110001100001110010010010100100000100010111000010100101010--------------------- +ls13cwds +01111000101001100101010110111010010101111111110100001101111111000111001011101000101100101010001111001110010010001100010111110110010011010001001110010001101000000100100000110001011110100101010100110100001101001110001011101010011011000001000---------------------0101100010111010010001001000011011111111110101001000011110011101100111000000011010001000101011111100000111110000011111110001100111010100000001111001011111100000000111100011110010110010010110000001001010010100101110100110100011011011110111101110001001101110110001101000001011101101111001100010101010000011100111001110100001001010011000010101010000001101010001001001010000000001010000101110010110000101011011011100011001001000101010110001010111100011100000101010011001000110101101000110011000111110001010111100000110111001000100001001111010001100011100111001011110101010100010110110100011001011101001 +00101010101111001000111010111001011101101111100001100011001100000111010111011001000110111011111011110110000100010000000111000010000011101000000101101000101101111111101010110000100010111000000101011011111010110011101111001001101111011110101---------------------0010011010100101011101101001011001100001111101010010111100110111010010101110100001111001101110001111110001111111000000010010100110011000011100101110011011000110011111001010001101000111010000010111000000010101000110010100010100111000100111001101110111101111000101111011010101001101001110010011010011001100011110010101100111111010110001111001010000100110001010010110110001110001111111111001100000011000010111110011101100010010011001000111000010110101010100000010000101111101010110100111100110000101010110010000010011100000101000011110011011001001000000001010010111101101010111000000110100001010110000 +00101100000010010010010111110010011110001000001010001001010001111101000111001101001011000100000101100010100011000001101011101111001001100111100011100010101101000101000010101010010110010000000010100111010111101110001001111111110000001000011---------------------0111000111101101010001010011110110000010110001101110011011001111110101000111101101000000011011111110110101000101001000010101111111100011000000100111010111100111010001110000000101100101010111010001000100111111000111011000001011101110001101001110001000001111110000101101110001010111000110111001010001001100110000001111000100011001110111101110011001000101000010011001101011111010101101110111110101111011000011001000001110101110001110010111110111111101111000100010110110110000010100101000110111001100110000001100010111011101110010100111011101011000100111100010100101010101101010100001110110011000011111 +11101111101010111001011000001110000111101101101100010011111110010011001001110001101110010011110000111111100101000100001011000010111100000111011110111110000110110010011100100010000000101111010100100000011000000101001101010100000010101011000---------------------1111010100000100100101110010011010100111010011010000111010001111111000011111010001010011001010100000000001000010001000011011011111100111111011001011101010000001000110011000011100010111101111000100101001000001111110110101110011100101000001001000100001000011111010001110100010111001100110100110110001001010000000110100100100001010110010100010101100000110111001010110111010001001010100011111010011010010101010011000000000110101110111111000101101000001111101100111000110110001001010001101101001101101110111011011001011000011001000000110111001111011011001011001011011001000111111111010110001000001001010 +10010011000001011110100111011111110001000011011000000011000000100001000000110011000111011101010011101101001001011010000000011110011010100001110100011001011001000011010011100100100001010110001100110011101010111101110101000000110101000100010---------------------0100100000010000111110110110111101100000101000111001110001110101001100001110000000111000110111010001101000001100000010110010010111000111010011100101111000011010010011111001100110101111100010101101101100111110110110011101111111111010111111001011110011101011101110110100001001111110111001001011001100100011111100010110100011101000101000011000011110111111010001011100100010001111110011110000111010001011010011001111011101110111100011000011011111001011010101001000101110111011110001001100001101101110000000000000000001111110111000011010010000101000000011000011001100011011110111001000101011001111000011 +11100100101110110001100100011111101000010010010001100101001001110011000100011010110101011100011011111000110000010110101101111001011000010011000100010101111101100011101010000101001010100100101000111110101111010000110011101101100110011111100---------------------0100101011100000010111101011111100110001110011000101110101111101000110110000011001011110011001101001110000001100100110100010111010111001110111010011101100111010011000001000101101011000011110000001010101001111000010100111100000001111010100110000001011010110100010011001110011100111110000010011100010011101000001011100000001000100100001011100100100100010111010001100000101000111111101111111110000010001001001101111010110001111010000010101011111100100001111001100011011111101011110100101110110101010010000001011110111100100011001101000010101110000100100011000001000001001110001001111001101000101111011 +11010010010001000101100100101011100000110111110010000100001100100001101100001100111111000001110011101111010001010001000010111111110101010100110000101100110100101001010011101100001100001001010011101011010100101010010101100000010010011010111---------------------1111011101000010100010100110010010111001000011000100110111011010110011001100011010010100001011110110001101010001001110010000111000110001100010010111111100110001011100000110100000001001101111100100110011001110110111111000101001001001011111000111110101110111111110010001110101001001000010100011101000100100110001001010011000000001111011110000110110001001110101001001111111101100110100011010011111111001110000011100101010011111100111101010010011100110101010000110100000111101101101101000111001100111010101011101100111110001110000000101010010000100010000100101001000001100010001111111010111011101101000 +11111100110101110101111100110000010111101001101110100100111011011101111111011110101010001010010110111100011110100000011100100100000101011011101001001111011111000010110001011000000111111000110001101011111110000010111011100100001101110011100---------------------0001111100001100000101001000010000000100010100111100000100110110011000011110011110101100010110001101001000101000110010000110110001010011101001000101001011010001001101110110000000100111011111010110001110111010000010111101110001111100010000111001001100011010110101111110100010100000110000010011001101101000000001011010111111011111111100001000110100111011101001100010001110000001001000101110101001001111110010101111111000110001000011110111111001101011111100001011001101000101011111000011100000110101011000111100101110100100011011011101111101111001100100010100100101010011101110110110111011011010000111 +00100101111100011010011100011101000111100000111011101000101100111000111100001000111010100100010000010110110100100101001010001001000101100000000101110000100110101110111010001000110111101100110110000101000011100001101110001100001101011110111---------------------0001101111000101011000111100100111111011001100100100110010111111010100000000010001010100000010110010000111000101100101111000000000100110010000111100011110001000001011100100111001100011100001010100011000001111001100011000011011110000001111100000010101101010110100011000110010110010101011111001000000101011111001110110001101011110111011111111011010000101010000100110111000111000001100001100001010001010010001000011111010000010100001000100001101000101110001011010011011011100010110001100000001110010010111000010101000011101001100100100000101011101110010010010000010101011011101001100011011110101000101 +00111000010101001111001010111101101010000000110001001001101010000101010111011001100010110111011011001010100101111101001000010111101001010001010001110110100101000001100100110111000000110001100001110010010010100100000100010111000010100101010---------------------1010010010010110111101101001110111100110100010001101101100101000000111010101001111110000100010001111101110000110000001011011100101000010100111111100000110010111110011011011010101001101110011010001100100000001000001011010011000110110111111000011001001010010100001110101000011010010000101011100001111110110110101101001011000100001000111011111101011011010010101011100000100101100110110100011110001100110111100100111001000000000100110100010101111000110010100110111110010001101010001110010001100000101111111000110010110111001101110011001000000100110111001000011110111001100011110101111110010000000001000 +ls26msgs +01100110100111011001011000011111010100001000111010100000010110010010010111110001100000000111110010110001010100101011110110001010010100000001101101010011111000100010010000111001001101001001011011100111111100001100010111011100000000010110100000011001000110100010000010101011111100000010001000010100000010000001011111001100110000101100100100101011100110001010111110010011011100100001100100111100111010110100101100000110110011100111100110101011001000111100110010000011100100111011101100111100011010011110111111100101011011111000100000101101000100110111011--------------------- +00001010001110110101000000000001000010000100000001100011011111110110011111111011001011111110110000010011111011000100011011000111101111101110000000000000101000011100101101111010100100000101111011000001001000010000110011100010111010111011010011010111101000001100111000101100010101100110001001010101001010100110001110001110010000000010000001110101110101010000001111110000100101110100111010001110010110100100011000001001010100010011000110111010100110001011010110110011101001110000001111000001001000111100101111111001000100001000110110011100110100111010000--------------------- +01101111110010010100010001100110110011111101010101000100011111100001000011001011010100100101001011011000000100110110111110100001100001110001010100011101101011000101011010111001100100110000110100011001110110101101100110011101100100110111110101000001000111110110000010110100000011000111100100101010010001101000000011001110010001101010011101010000010010000011001010000101010110001011101101111011110011110010110111000110000010110101000001110011010011101000100100100001100101100100110111001111010011110100100100000001001011101001111111011110011000011100100--------------------- +11101010110111001001001011111011010101001100101110000110010010001100101100011101011100110000100101001010010111000001011011000110001000100110001101111010101110111001001111010000101110101101101001011110100011110001010010000111000011110000011011110001001111101111011101100001110110111100101101010101001100110011101111000010001101111110010010100101011001110110101010100110111000101010110111110110000111000111100111100111111010010001101011101000111111100010001001001011111000000101000010000101101010101000110111001111011101010011111010011010000110001111110--------------------- +00100111100110001110110101100110111011111010111001011110100101010100001111110110101100000101010010111101101001100010010011011111111001000110101110011101101001011000100000001000010111001101000011001100010010110111111010111110010110100010100001000001101110011011000111111101001010101101111110001010001010110100111100101110111100001111011001000111111000000010101101000010110001101001111001101001010000000001000110110110011010101010110010101010110100101110001100000010011000110110001011010111111101000111110111011001101110110001101010101000000101110000100--------------------- +01000100010010001000110111100111011101110001011111001101010010010100011101011100011000000111110001000000001110101010001001011101100010110111101101011001111101010010000100110110100010000110001011011001110011101101111011100011000110001110010100110100010111010111000011111101010111101000100010110100000110110101000010111001001110101111001010000100010010110001000110111010001000100100011011000010110100001010011101110111000001000010001111101001101000001111001010001011101100110111000111001110110101011001010010111111100101100010110011100000110010101100100--------------------- +11100101111001011000000100110010000001011101001110101011000010111100010101111011010111010011001010111101111101110001001101110111100110111000000110110000111000110101000101100101011000010000001110100101111111010001001111100001011111010111110010110001010001101001111110010001101010110010011100011000001011111100111100110001000101101101110110110011000000101110011111010001001110011101110010011110000011000110101000110110101000011010110001000110010101010111011110000101111001110100100011010011011010101010010010011011101011011011011001010101001101001001110--------------------- +11000101101001001110001100101011111101100000010100111010111011011110011010110111011011011110110111110111111100000100010111000000101000111010101000011000000010100010010110001101100101110000010001101101101001111100110011001110100011000111101110111010111011100011011000111010110101001101000010100000111111000000000011000101000000101001111101011001110100001101010010011111100110000001100010111100001101001101011000100111001011010100110110010001110010101011110100101001101100100111101101001010101011001011010011100001111110011001001111001000100110010000000--------------------- +10000011100001111110000001001101100001000000110111010101000111100001010111000110010010111110010000011000100111111011100000111100110000100000001001001101001010011001001101100010010001000100011110010000001110110101110101000010100111010011100011001011111011110111001111001001010100101110000111111010001011110000001100110001010001001110110100011001110100000010101100110101110111101110101011000011101000000001011110111101111000110111110110011110111010011001100010110100101100001011001001100010111010101011111101001111101100000110111101110110111010010011111--------------------- +00101110111001000001001000111010111010110110001111110110011000100110010100001100100101001010010011110011000000111111110010000100001011110001011001001001101101100111001000100111100011011000010010111110010111000011110100100111011100111001000010100111001100001100010100010001011010010000000010000000000111110000000010001111100100110111010111110111011000010011100101000111110001111001110011011110011101110001001010100100101111101101011100001110000001001010100100100000011110001010001011100101110011011010100011000001101111101000110101110110010110101101010--------------------- +ls26cwds +0000010110010010010111110001100000000111110010110001010100101011110110001010010100000001101101010011111000100010010000111001001101001001011011100111111100001100010111011100000000010110100000011001000110100010000010101011111100000010001000010100000010000001011111001100110000101100100100101011100110001010111110010011011100100001100100111100111010110100101100000110110011100111100110101011001000111100110010000011100100111011101100111100011010011110111111100101011011111000100000101101000100110111011---------------------01111001100101001100000000110011000101110100111111101101000110111110010100110000000100011111011000010111101111100111001101000110001111010011000011101111100000111010000011010010011100100110011111001110101010101011010111000100010001010110110001111101000001110000100001001000100111011110110100101011011100110000011000001101110111100110101100100111010000110100011110000101111001110110001111010010101100010100010011110001010000001000111011001001101001110001001111101110111100100010000110111010010000000001110110101100011000100101100011111000101101110110000010000000010100010100110110001101001001110011110010000110111000001000100110111010000000000111001101001001101000100010110001100111000000101010111100100011111011111001011110101010100110100100111011001010101011011101101101010011010000110111100001101100000000000010110000010000100001101101010001110001001111011100010001010000110111010100110010100011000000000011011010111001010010000111010001010100100110011110100000111001100000111010100110001011101010000111001101100000011101001101100110111000001000011011111000000110000001000101101101011111111111010111011101101001001101010010111001110110000100111000110110001010111000101010100101101100100111101000 +0011011111110110011111111011001011111110110000010011111011000100011011000111101111101110000000000000101000011100101101111010100100000101111011000001001000010000110011100010111010111011010011010111101000001100111000101100010101100110001001010101001010100110001110001110010000000010000001110101110101010000001111110000100101110100111010001110010110100100011000001001010100010011000110111010100110001011010110110011101001110000001111000001001000111100101111111001000100001000110110011100110100111010000---------------------00001110001001011100110110101011100011111010100011110001010000111110011101011000111010111000101100000010011000101100110011000100000011011111001010011011010100001110110011111011011110111011010111110010010111010000011101110110000010011101011010110011011111111000010100100000101101000011001111101101111100110101100111001100001100011111101001110000011010010110100000101110011001001010111011101010000001101010011110110011100101001111010100100101110000101001111110001011110110111010111000101001010011110001010010011010000000010011010000001110100000000010110001111100001000100000110000101111101110110001011111111000101001111011011010111001001010011010100001011011100100110100101101101011110110000101001110110000100110011110101011011000111010100010011110100000100110010100011010000110010100110001001010101010111011111111001001111111010100110110100100100110111010011010101001110011111100010110011100010001101010111100010111100100000001001000100101000101010100011110011001110110001001010001011010101111110011101111101011111100100100011001000000110001101110010001001101100001101001110111000111001011110100001001001010111000110001110110111111010100100010101101011010111010001100000001010110011100010100001101 +0100011111100001000011001011010100100101001011011000000100110110111110100001100001110001010100011101101011000101011010111001100100110000110100011001110110101101100110011101100100110111110101000001000111110110000010110100000011000111100100101010010001101000000011001110010001101010011101010000010010000011001010000101010110001011101101111011110011110010110111000110000010110101000001110011010011101000100100100001100101100100110111001111010011110100100100000001001011101001111111011110011000011100100---------------------10101101101000001000000101110110010111011001101110001011100111111000011111100110011000110110101110101100000100100100000110100100010100010100101100001100101000000011101010111100110101001100010011111001011110011100110111001001001101010000010100000101101011011010000010001111111011101110110111010111011100110100000010101010011110110110100111000001111010110111001101011000101111011101110100010100100111100111101101100100110010000100010011100000000000101010000110101001100110111001100111001001011110101001011011001101111101100000111111010000111100001100110111010111110110100101101101011010111111010011001000000000111111010011101111001001000010011100000101110111110011110111100100001001110111101111001111111000100001100100011110000100110010001010001000100010100001001001101101010011000101111010000101101110101110011010000100001011111011111001010111101110001101100100100111001011100101011010100000010011000010110001000111110100001100101101110011110010001010001010100010100110011011101110111100110111010000110110000100000000011001011110111011000110000010100001000101011010111110100010000011001010110100100100001110111010010100101101110000001010000111000000011111010110001101101101000101011111010110010101 +0110010010001100101100011101011100110000100101001010010111000001011011000110001000100110001101111010101110111001001111010000101110101101101001011110100011110001010010000111000011110000011011110001001111101111011101100001110110111100101101010101001100110011101111000010001101111110010010100101011001110110101010100110111000101010110111110110000111000111100111100111111010010001101011101000111111100010001001001011111000000101000010000101101010101000110111001111011101010011111010011010000110001111110---------------------10010000000011100101110000011101101010010100101011010000011000000011111110001110011111111110110001101000011101000110001000010110011000010101011010011010101011101111000110011010010100000110100110001110011010010001001011010001111110101001101011001101110000000101110011101111011001110001000001000011111110110001111100101010100100010000000111100011111100100010000110001101100011000001001111001111111100001000011111011110101110011101001111110100100000011100010011110110011111101010100010010000000001101010100000111010010100000100011010010010101010011101100010011111111101000011101000101001110000000101011100111010011000010111010010010000111010111111101100001001011110011111101011101111001110100011110010010111010110110100111000010101111000101010000010010100101010101111011110111000000011001100001100101001011101000101101100001000011010110100000111100101000100110101010111010011110100110110000110111010111110101111110111011001111001011100000101000011011100001110001110010101111110000100100010100100110101011101110000001110101000001110001000111001110000010111001111001001100011000000101010100010110010110101101011110001000100101001011000010110001111111100011111101111010110101101100101000110000101101010 +1110100101010100001111110110101100000101010010111101101001100010010011011111111001000110101110011101101001011000100000001000010111001101000011001100010010110111111010111110010110100010100001000001101110011011000111111101001010101101111110001010001010110100111100101110111100001111011001000111111000000010101101000010110001101001111001101001010000000001000110110110011010101010110010101010110100101110001100000010011000110110001011010111111101000111110111011001101110110001101010101000000101110000100---------------------00110000110010111101101101010001001111011101101110010111100011101100111111110111111010111001000000110111000100000101110111010000110001000100100101110001101001000000110000010000101110101100001111000001001010000111001111111001011001001001011100101001010001010110011001100111010110110100001011000100011010001001010010110000011011000111010100111000110011110110110101110100110101011011101000001101100111100110010011100001100100011111001011010010000100101010100100010001111110001101011000100110111011111100101001001100010100011001101001011110000010010011111101101001001111101101100000011000001010110100001001101011110110010010011000101101110110000111010101011011010000100100001000110100111101111110110001001000010011100100100100011111101011100111001010011100001101010110010110100110111010100001100110100001111011111101000011010001000001011100111000000011101101100011001101000100001001001000000011000000010010110010100001110001100000111101101100110000000011000000111001010110110000010011101000010100110011101111010000110001010000010001101100001110000011001011101010001110011111100010011101100110111001100100001101101101010101010101110111001011100100011001110101111010001110011000000000100101000000100000 +1101010010010100011101011100011000000111110001000000001110101010001001011101100010110111101101011001111101010010000100110110100010000110001011011001110011101101111011100011000110001110010100110100010111010111000011111101010111101000100010110100000110110101000010111001001110101111001010000100010010110001000110111010001000100100011011000010110100001010011101110111000001000010001111101001101000001111001010001011101100110111000111001110110101011001010010111111100101100010110011100000110010101100100---------------------10111010111111111101110010001000001101001101101111101110000110001101100111000010111011100101110110000101000110001100111111100110100111101100110001101011000011010001110111011010010100100010010100111010001000100010101001011100101110110101001110111010000011000000111010111001111011010000110010111101011011111001010101111111001010000100000010011001110110000000010000110101011010111001000001101001111011111000010110100001001000001100010011100110111101010101000100011111011101011011111100010101001110111101100101100110100100010101011011110110110001011011110110101011110001100101011011110100000011111000000100001011001001010000000011011110100011000011110001000000111111001101011001111001101011111101101010011010000010001110110001001011110010001010111000110100111010011101111001001110010110101001010000001100101010111111010001001000101100100101100101010111101010010101111001100011001100000001101010001000110110000001001110000110110101110101010011000101101110111001000010100000110001100100011000010100010111110100001010110111100000100011101010010011001110000001111101110110100010111011101011111101101011001110010101111101110000100101010001101011000100001010100110110100100010101001001011101100001011010001 +1011000010111100010101111011010111010011001010111101111101110001001101110111100110111000000110110000111000110101000101100101011000010000001110100101111111010001001111100001011111010111110010110001010001101001111110010001101010110010011100011000001011111100111100110001000101101101110110110011000000101110011111010001001110011101110010011110000011000110101000110110101000011010110001000110010101010111011110000101111001110100100011010011011010101010010010011011101011011011011001010101001101001001110---------------------11010100011011110000110001110011001111110010010101000101101000100011100011010010101100101010101010010001100101011111100000010100100011101001001000010000101101010011110111000111110100011111010010000001111110110010010100110000011001101110110011011001101001101100010011000101101111000000101110011110100101000111101111010011000001001011110010010111010100001010111110110111101001110111000000011010101100110101111001010101100101000010100101111101010111001001100100110100100000111001001001110010001000100000101101110001110010011011100100100111111100101000101110001001000000111000001001101110010100110110110110100000000010100010000100000000101110111011111010001100110000001010010011001110100101011011011110101011100011010001100111111111000010101010101001101110101100110001000011001100001100100111101010000000000011000011011000110000001110000010010101010111100010101011010100000001000100111010100110100111101001010100111111111110111110011000000110000111010100010100000101001011101100100000110000100011000011101111110011110110001000110100110110011001100011110010001011100011100101011000110000001010011000110111111111010010111000110100110001101101101010011001011011011000011011110011101011010000101101110110 +1010111011011110011010110111011011011110110111110111111100000100010111000000101000111010101000011000000010100010010110001101100101110000010001101101101001111100110011001110100011000111101110111010111011100011011000111010110101001101000010100000111111000000000011000101000000101001111101011001110100001101010010011111100110000001100010111100001101001101011000100111001011010100110110010001110010101011110100101001101100100111101101001010101011001011010011100001111110011001001111001000100110010000000---------------------00001101100111010110011001100000001011000001010011000101001111100111101000101010000001001011010001011111000010111001010010111001100100000001111010110100101111110100011000010010111011001101000011110011001011000011000011111101000011000101000100111111101101000110101100110001100110000000000111110000110010011011001101110101000001000010000101000101110101100110111110000110011010001001110000110001111011001000110011001111111101110101101111011111011111100100011100001010000001011001011111101001001001101111000011000111101101011101110010101100000110011010000000011011001010011011111111101100100001100111010011011000111111000100001010111011001110010101000111001010000101001010101010000101001101111000110010101000110001000101100010101011101001010101011101100001111011000011001111010100010011001001101110100010100000000111001011000011001100001001000001111000100010000010000010011101010001101111111100111111011010101011110111001111011001110110010000101011001110110011101111011101101000011001100011111011011010100001010101000011111101000111100001010110111010100100001101110010100011011001101101101011010000111100100110111100110111110111100100000111011101011100101111110000110001101010010000110111010001001001 +0101000111100001010111000110010010111110010000011000100111111011100000111100110000100000001001001101001010011001001101100010010001000100011110010000001110110101110101000010100111010011100011001011111011110111001111001001010100101110000111111010001011110000001100110001010001001110110100011001110100000010101100110101110111101110101011000011101000000001011110111101111000110111110110011110111010011001100010110100101100001011001001100010111010101011111101001111101100000110111101110110111010010011111---------------------00010100111101101110001101001111001000100000110110000110100101011000110000000101101110000001110111100101101100111000000011111011011011001110101100110110001100100110100001100100111000100101111000001001100011011011101011100100100111111100111111110011111010101101011100110110000101110011001111110111011111010001110001011001110001100011001000001001011110111101111100001110001110101100011010001101000100110100011000110011000111101101110000010000001111001101111001110101001010000001111011011001001011001101010110011010100110100011000101110000000110011000011111101111011111000101111110110011110111001101111001100111011011000110111101111100101110010001010000000000011110111011011111110000111010010111111001111011101001100111011111000000111111000001101110000010111101101100111110100010000000011111101011100000011111000111000000110111111010001101001000101001100011100011111100001101110100010010011111101100111011101110001010101101010110110001111011100011111000000100101011011011010000011100000110010110101011001000111110110011100010100111011011111000011000100000100001011111111011001100001001111110101101110101001100111011100101100101110000111000111110010001110100010101001000011010111111101010001101001000 +0110011000100110010100001100100101001010010011110011000000111111110010000100001011110001011001001001101101100111001000100111100011011000010010111110010111000011110100100111011100111001000010100111001100001100010100010001011010010000000010000000000111110000000010001111100100110111010111110111011000010011100101000111110001111001110011011110011101110001001010100100101111101101011100001110000001001010100100100000011110001010001011100101110011011010100011000001101111101000110101110110010110101101010---------------------11100010101110001001000001110000000110010011110010111110111111110110100001000110000010011000100101100110111101010000001111011100010111011010001101000111001101010011111010101010010001111110011011111000101010001011010111001000111110101010011111010101111000011110100110010000100110110010001110101001001100111010010101011000101100011011001100111000001100101101100110111111001000100001101110000100010100000100011101100110000000111011111101000111010010001111110010101011001010101000000010111110110101110011011010001011000010100110000000110001010000110111010000001100001001101100010101000011111001111010010100000001001001110110001110000110001111100100000101111010100101010110100100101000001011111001000000110110010101100111111010011000111100100101010010001011101100110110100010110101101000100010100010101111010001000111000111001011000000010100100000101100100101110111010101101011111110010000101111111010010100101010000101111010001100000001101100010011010100111100100101110000000101010100110101011010011010011101000011111010000111100101010000100100100100011000100010000111101110010010101001100001010001111101101110000001100011101110101000010011110011100111110001010001011011110000111001001110100101000100 +ls52msgs +0001101001011001000111011010011110001101100100010010101110101111000100111101110100110000000011000101111011010011010001011101000001010110111011000001101011000010101000000001011010000101100010101111110011010111001000110110000000101100011001101000011101100010011011000111000010110010111001110101010110111011100000110111110010001000100011111110100010000101110100101100001101101110010010101111001011011111110001100101000001100000010110001100001001101110101100110110000010000001001100111001110000011100101001000011001101100101100111101010110010000010010100100111010011010010001101010100011111101110101110110100011110010001010111101010110011001100101110011100111100110110001001011000101011111000001111011101111010110111110110010101110010110000101100100111001010100011110111000000001001111010110111011010000100110001010001000100011010001111111010110011100000111101000000000010010110011101100000101111100111010001101111100000110101001100110100110100100001110101100110101001001011101110001001010110101111111000011010110010111110010011000100000000101111111110110100010101101100100111010100000110010000000101010111000001010000001001010--------------------- +0101000100010001010001111001101001000011101001000100001100000101110011111010100100000111010101011001101110000100000011101001010010111000100000110011111111101001100010000101001111010101001001010000011101000101110001010110111000000011001000111100010001110001011010111100100001010100101101000101101001100110101001010000110010111001000111100111000100110101010000010101001110101000100001001000101001111100001001100011011011101111000001111011101101000001000011010100011101101101001111111110100101011111110001011100100011011010101111110000100011110101000110000100101000111111000111111000001100010110100010010000110111010110000111100011100011100011000101111110101111010001000100001110110111101010110011001101010001011010000101010110011000111010110000000001110000110101010101100110100010100011011011001000110010110011000010101001000111000111011011010011001111001100100011110010111001000011101100011010100001000111001011101110110101110100000010010011100110101101010010000001000101010010001011111101010001111011100010010011100011111010010010011100111110000011111111010001101110000001010010010011001100001001001101010011010011111101000--------------------- +1101111100101110101000110010101101000110101101100010110001001100100000001000011111110010010010010101110101111000011011110101101011011011100000011000100101000000010100001011011000011100110000100111011001110101010011111110010111011100000100010000001010010111110010011101100000000101011010111000011111001111100110100010111000111010100010100100100010010101010101100100110010010101001000011110100101000111011000011101000001001111101000000100000111010100000011110100111110100101100100000001110001100001100110101111110111001101010010001111011101011011111010100101111000101001001100110010100010110110001101011110101001001101010101111001000110001100010100101011001110010011101100011101011010111001000100000100010101110000110100011011011000000010100011111010000000000001010100101000100100101110101001100000001111111101100101111010101110011100011110111011010000000011101011000100101100011100010100101100000010110101000001011001001111101000011111110101011001011100000000100110100010001001011100000101001010110010000000000111010011110000110000101100001100011110011110100100011100011001001110110001110111100100001001100101001111000100000--------------------- +1100110000000101101101111111101010101010010011100101011011111000110001100001101011011101110101001100100101101101011100000101111001111100100110110111010100100010101110010100100101010111100000011111111110001000001000100101110101110111111001001011111011001101010100111000101011111101100101111001110011011010000101100111010101001010001110100101111001001000000000110110100010101101100010111100110001111100000011000000010001110100001101101100010101000101111001101000001111100111010101100000000111110010000011000001000101100110101011011000010101101110101010000010100110010011111001001111010000001011101011001100000101100110001100111111111011000101101001011100000010011000100000011101000010111100111101001001110111010000000111011000000010110001101000111110000000011101101101011001100100100100010101011101001100010001111001010100101001001101101001001000100001110101110101001110110010010010101011110100011111101100100001111011111101101100101100111011101111011110000000110110101111100110010001010111011000000011001011010001100010001010110111110111110110010001100000110111110001110100000101000111001001001111111110100111100110010001011--------------------- +1111100101110000100111011001001010011011001001111110101110000001000110010011110011101101001010101100101001011110101000011111000111011101000100010101001010101101000011101010111000000000111101101000001001101000001100001010111110111001110111101001111001011111000100101110001101100110000100011011100001111100101101010000110000000110001110011101001000010110000100000000010100010110101001101011111001100110001110000111110000001011110000110101000111000010110000100110010000001110101011000110111111011000010110011000110010010010000100010100011100111011011111111011001011110011011010010110101001111111001110000100011000010010111111011001001101010001101001001011001011110010011000111110010010100010001110110000000111000110110111101110111100111010011111000100010111001110011111001001000111001011010011101010101100111110000101011100100110010011010000011011011110100011100001000110101001011101100011010000001011011110111011000110010110111010010011100001010110000001101001001110111010010100011101100100111100001010000110000011010010001100011011000101011010001010110011010110101011001000001011110101100110101001000110110001001010000101110--------------------- +1000111111100110111111111110010011110011101111111100001010000110110001110100011001010000001010001111000001001100110110001001011110010001011010011101000111010010010110111011101000011110111010100001010010101100010101001001101111001011010110101011000010100001010011110000101100111101101100111010101111000111001111110001101000111111111001000011011000011101101001111000111000110111110011110010010110000110001011001010000101111001111011100110001101011010111100100000111010011110001111011000110000110001110100010010100010011110000100110011001100001110101010111010100010100001001111100001111111111001100111010101101000111011010101101101001011010010001100011011010010010010000100100100010110111001001111111000110010011110011001011011010010110010101000100000100001100100110101111001110010111111111001110001101010010110000001010110001110000011000010010101100010010001101111010110100110110101011100001010101000001101001100111101111010100100010100110101010001111100100010101101010011000100001100111110101111110100110111111000011011010011100000000011111001000001001111011001011000010101110010101011011011101101000001101111111101010111010--------------------- +1101010011100101000110000100110011001000010010101100000100010110000101011000001011001001100010000100000111111000001111101010010111000001110111110111100000111110011100101111000000101110110010000100010011111001010010000010111001001001000101001101110110010000011111100111101011000000010110010000001111001101101000110110100011101011100101111000110110010010111110101001001010001101011101101010010101110010100111100001101000011000101000000010101011100000001000101110000111010110111110001111001001111111101010011100111000000110100100101111111100110011110001100110000000000111011101100001100011011100001001011101100011100000010100110101011111111001111100101100011100010001101011000100101011010000000111110111010100110011011010001010010001010011010111001000000010111111011110011000011001011101011010111010001000010000010010101011001010000110100001011000011101111000010010110000011010011001101111110011101000101111110010100010000001111111100001101100011101101111111101000001001101000011101110010110010001001111000111101111111101100110011000100111110111001011101010001010000111010001100011111111110011110110000101111100110000101011100--------------------- +0000000110111101011000101100110000100000010100111001110001011101011011010011001001100011110101110111001011100101111010101101001100001001110111010010101101111010001001100101001010011000011010110011000101001010110001000000010101110100011111110100010011010010100100111001000101111100001100101010100100100000010101001010100110100010110101101100111100001100001000011101101111100110010011001000111110000010101000000011000000011110001000011010010100101001110000001010000111101100010101010111011111000101111100111011100111100000011111010010101101000011010010000010101100011110110100011001101000011100111011000101100100010010100010000001100010000101011001100011110000000011011100110111001001010011101100101000111100110100101010110110110110110101001000100001110110111110001011111000110011000100000001110000010000001000101100100010100111101000110111010000111101001101011110000010000001000010010001110100001000001110110011011110110001001010011101010010001011111111011111101110011111100000000001100101000101001111011011100001101001111110001001001011000011000000110011011111000000101000011101010110011010010001000001101011001000110011111--------------------- +0010000011100110011101001111001110011001001011010011111010101101111001101001101100110110010011011000100100101110011110101100110111010011101010001110100010101100101101011000110001110000011111111111111000110101000010000000010101100110101110001010101011111001010011110101101011110010110100111111101100101101100001110001101000111010001010001110001011100110111110001010101001001001100100010011111100000011111000011000001010000111011111110110000100001001001100100010101010001100001000111100011011101001101010001011111011111100010101001100101000101110010110100101111100011011100101100000011001010010100011010000000010110001111100100001011100101100111101110100101101010110100010100010110101110111000111111110100100001101000100011001010100000100000011111101001101001111010010110000100010111010001000000000100000001001101110010110001001001011001010110001010110111010011110111010001001001010001010110011100000100000111011001010011100110111010000011111111000011001010110010111001101010110110101111111111001010111001001110111010101001100101010000000101100010100000110000011110100011100110000110010010111110101111101100000111111001011001--------------------- +1011101101001010111110101011111111011000001010011101000101100111011101001111000000101110001101011110110100100110110001100101010110100011001011111101010010001010011011001110101010100101101000010110000100001101011100110101010110100100101001011100111010000011001011000000000101000011111010100111100100011101010100111011101010101011110111001101010110000000110001110000010110011001000011110011001001101000010011000111000011101101110101111101100010100100100000011010101111100110111111001010010101010001100000111111101100111011100111011100110011100000100111010111000000010110111110001111111000011000111100000100011100110010010010001100111101101001010011010010100000100010100001000110010101000011010111110000101001101110011110111101011110011100001001011001010111001010110110000000101000010000000100011110010101100001110100101011001101110100001001010111011110111101100100111101111100000101111000110100011100110011101010000011000011011100001010111111010101000100110101110010101101101101000100101000010000100000010101010001101101010101010100000111101010011111011110101011100001010011001100111011000001111111011100101101011010110110110--------------------- +ls52cwds +11010011010001011101000001010110111011000001101011000010101000000001011010000101100010101111110011010111001000110110000000101100011001101000011101100010011011000111000010110010111001110101010110111011100000110111110010001000100011111110100010000101110100101100001101101110010010101111001011011111110001100101000001100000010110001100001001101110101100110110000010000001001100111001110000011100101001000011001101100101100111101010110010000010010100100111010011010010001101010100011111101110101110110100011110010001010111101010110011001100101110011100111100110110001001011000101011111000001111011101111010110111110110010101110010110000101100100111001010100011110111000000001001111010110111011010000100110001010001000100011010001111111010110011100000111101000000000010010110011101100000101111100111010001101111100000110101001100110100110100100001110101100110101001001011101110001001010110101111111000011010110010111110010011000100000000101111111110110100010101101100100111010100000110010000000101010111000001010000001001010---------------------0011011101000100011111001100001010110011001011011010000101011000111010010100111000010100100000110001010000000000100000010011100110011010101011000101101000101111011101110011100010000001100101000010101001101011010011000010001010000010111111001001010110011101100011010100000101000010001010000101101101101111001000011000000001000101010010111011101010101010001011111100111010011111011100010011101111101100010011101111001111110010111101111101110000001110100001000101010000111101110101100100101011001000100001101011000101010010000100111111110001001111110111001110001100111110000101001001100000000011011010111001000001101011111010000001011010110100110011000111101111001000101110100000000101110111010000101001011111111101001111000001000111011010011011010101101100011001011111101101100010000101101101011010100001001111000101110010100000100100000110000010101101110110111100010101010000001101110010101010001111111110100110011000000110011101001101011011000100110101110100010100101000001011100011001000111100101000111001111100110111101010111010000110010101000011001100011101110011010110101010001011010000001001101001010001111010011100100101111001000101100011100010100110010000010100011011000000000010010101101010111111111001000010100000100111000100001011000011110001010010110011110010011111110111010101111100011011110001111101111101110010010101000100111101100000011000010101100100010110011100010001001110110000011110001011110001101011011000000101111001000010100010001001111000111110000011000010111101101110101011000101110011100100110111011011100000000011111010110010000001110011111000110000110001101110110100100001010111010011100110000011011011110000101011111111110100111111111011101111101101010011101111000011110001000010001111100110000001001110010011100100010001001100110101101011111001010111011001111001001011110110111001110000101001101010000100111000101100100011000011010000000001011111100001011011011011000100001111010101010101110101110110100010011010101101111010100100011000000111011010010110101001110001011001000111111011111101000000111100100001111010010101000101110111101010101110010001000001101010100000010101011111110001101110001111111010011000111010010111100001110110110100110110110001001000110001110001001011110111000001010111100100000000111101000110001010011001010000000011110100110111001101101011000011011011101111110101010111100001011011011000110100101101000010101000001011000001101101100101 +10000100000011101001010010111000100000110011111111101001100010000101001111010101001001010000011101000101110001010110111000000011001000111100010001110001011010111100100001010100101101000101101001100110101001010000110010111001000111100111000100110101010000010101001110101000100001001000101001111100001001100011011011101111000001111011101101000001000011010100011101101101001111111110100101011111110001011100100011011010101111110000100011110101000110000100101000111111000111111000001100010110100010010000110111010110000111100011100011100011000101111110101111010001000100001110110111101010110011001101010001011010000101010110011000111010110000000001110000110101010101100110100010100011011011001000110010110011000010101001000111000111011011010011001111001100100011110010111001000011101100011010100001000111001011101110110101110100000010010011100110101101010010000001000101010010001011111101010001111011100010010011100011111010010010011100111110000011111111010001101110000001010010010011001100001001001101010011010011111101000---------------------1001100101001101011000101011000001001101111000001111000100110111111101111001110011101011100000110111100001110111100110101010000001101000011100110010011111010100100101000100011001001100010101010011100010101111001010010100011001101011111011000001011001000001111000111100001010001000101100111000101111111001010100100110011011000000010011110000111110010011010101101011111110010010100010001010000011110100011011000010100010100000010011011010111111010001110000110001101111000100011001011110011000110011100101010110111100000100010100111011001110100001100010100001111100100111100110100111100100111011100101000111111111101100010010111111110111010010101100001111110000001000111100011111011111010000000100100000100111110101110010010101101111101100111100011111110101101010110101101010010111000100100110110111000110000010110111010111100001100000101010001101100100111111001101000000101110111101011111010001010111101101111110011010100010011111100010011010000001000010001011101111010011111000100110000101011000110100100100110110010001011110001010000100000101001000001011111100000110101111111000111010000100000111100110010011101011100001000110000011110000011010000111001010101110110110100010010011011101110001011000110011101110111001000000110100100111000011111011111111010111000000111010100101000000110001010001110100100001000100001110110001000010101100010011001011111101000011010000100111100011000101100101011111011001101110100010010111001011101000100011100011101110101011000001110010111001101110000000110111000001011100110010111000011101111011011101110010000000101100011001100100110111111110110101101011110111011010011111100001011101100010101000111001000111010000110001011000110110111000110000110011101001100110001110000001101011010101111101110110101010101100011011111001111001010001011000111110000110010000110111101100111110111101010100010111000101000111100100011000001000110000110000111101011011100010110100111010011010111001011111111010001110111111111010011001010011000000110101111101100000100100100111001011111000000001000111010000001001101101010101011101000011000001110000010101111100101110000011110111011111101010100010101110001110111010110101011010011000101011000001000100110111000110101011011101011000000111010110000010110011011110011001100000101011011011011111001001011001000101010010110111010101011010000001100000101000101100100110100110101000000011110100010010110111111111100111100000101100100011 +01111000011011110101101011011011100000011000100101000000010100001011011000011100110000100111011001110101010011111110010111011100000100010000001010010111110010011101100000000101011010111000011111001111100110100010111000111010100010100100100010010101010101100100110010010101001000011110100101000111011000011101000001001111101000000100000111010100000011110100111110100101100100000001110001100001100110101111110111001101010010001111011101011011111010100101111000101001001100110010100010110110001101011110101001001101010101111001000110001100010100101011001110010011101100011101011010111001000100000100010101110000110100011011011000000010100011111010000000000001010100101000100100101110101001100000001111111101100101111010101110011100011110111011010000000011101011000100101100011100010100101100000010110101000001011001001111101000011111110101011001011100000000100110100010001001011100000101001010110010000000000111010011110000110000101100001100011110011110100100011100011001001110110001110111100100001001100101001111000100000---------------------0110010010101011101000000110110101100110011110011010110110000100010000000110100111000000111101110101100101011010101010001100110100001111111010000101000100011100110001101000100100001001010110010001011001000000111101110000101000110110101010100000000010100011011000000101010000001011111001010011100001011011111100001101010101101111011010000010101110001100011011100000101001011010000011110100010011000010011010010111100011001100011110001010000110110001100010100011010000111010001010100100110101110011110000111011111001000101011111011010001110010111001001000110101000100101110110111001111111010110000111011000100001110101001000011111000011110011010100000101101110100110100010111101010101110111000000110000101101001101110101000101111100100111010000110000100101011110101000001000010000001100110000101100011111110011110100110000110000010011010101010101011110111001000101001001101101010111010000011101100100010110001001110000101100101100101100011010001101000011001100000110101111011110000001011110001000011111011110100100010011100011111000101110100110010110010010101101110100001111100001100110100110100111001100111001101000001010010101111010110111001101100101000000101111010000010010110010011011011001110000100000011000001100010101011011100111111001111000011011000011011001110100011111111010011101010011110110110101010001100100110110011111010111001010000010110001011101110110000011010010011010111100100000110100010101011101110100110111011111001001001000010110111100010000010001101101110100001100011001001010111101100110000100000000010100000001101110000000010011000000111101111111010011000101100100011000000000111111001001000000010000010100111010101101100100110010011111011011001010101100101010100100100010111110000001001110110110001010011111010111001000100100011011010001101001000011100101100010010101010011011000000111001101110111101101001110001111111100010100100100101010011000110010000000101110001111000100100101001100010111010011011000001101101110101000100011010011010001111000100000111010101111011001101101110101000101111010111110101010100010011001000100101100101110000001111010010110000000001100011010011010000010001010001110000110100001101010100011111000011000000110110001111010101011101010101000010010100100100101001100010000010000000110011110100001001010000100100010101101010100001110011101110100000001011111000011000101110001111000101001110101111100001011101101011101000101000011111011101000 +01101101011100000101111001111100100110110111010100100010101110010100100101010111100000011111111110001000001000100101110101110111111001001011111011001101010100111000101011111101100101111001110011011010000101100111010101001010001110100101111001001000000000110110100010101101100010111100110001111100000011000000010001110100001101101100010101000101111001101000001111100111010101100000000111110010000011000001000101100110101011011000010101101110101010000010100110010011111001001111010000001011101011001100000101100110001100111111111011000101101001011100000010011000100000011101000010111100111101001001110111010000000111011000000010110001101000111110000000011101101101011001100100100100010101011101001100010001111001010100101001001101101001001000100001110101110101001110110010010010101011110100011111101100100001111011111101101100101100111011101111011110000000110110101111100110010001010111011000000011001011010001100010001010110111110111110110010001100000110111110001110100000101000111001001001111111110100111100110010001011---------------------1101101110110100110000111000110011101001111111110110010001011000111001101001111010100001111110011011111100010100101011010110110101011100110110001011101110101101101001100001100001110101000101110010111000000010011011000101001010001000010001100001110110001111101110010001011011110110000111001100111110011111001110000011000101111010110000111111011010000011000110011000001110000101111110101111000110001000010110010011100010011110011100000101100011101101001000100110100001111110100010101111110101101100010001011001111101000001111000001111100110000110010000000111010001000110010110110101110011110110001001010101101011000100100100000101000100010100010111100010011111001101011000010001100111001100001100101001111010100111011010100111011011100110011001100101001001001101101011000110000011111000000100001101101000100111100010011010111010110101000000001011111110001010000101111001000011001001010100011011011101101101011101011010100010111011101111101101100011100010001001110111010100110001100111111100110010000110001110110110011001100011011001011010010110010101110000101001110100110010001101110111111100000011011001100010110111100011101011100111100100100100111111110001010001001100011010010001011001101011111100010010000010011010101110001100111110111110110001110111111001010000010010110001111101001111000000110101000010001100101001001000011101011110101010101100000110000111011000010111010111110001101101011101011100101111010011110001111001000011010101011101111100000110011100110010100001100111101111011110001100110101101110001110000101100000101000101111000001011100001010001011001110101100001001001101010000001011001111001000101000000000101101011011001011101000011011111101001010111011100001101011100011001011101101010111010000011100011101111010101101111011110011111010100011110010111000101001011110100111101010011000010001010010110001010011010011110110101010010110000111000010000010111001101111001011001001101101000110110001011010111110010101111010001111111000111001100100010110101001111010110110100110110101011100111011011110100010001001001000111111011001110111000000110101110101010011011000000111001101101110110010100001101110011011010011001000101100010000011110101000001101111010001111010111000101110001011111001110001001100000111100100011101010001011011001010101011111001010111110100100110101101011101110010010111000011110111101101001111000111110001110001011100000101000001000110001001000001011100100 +01011110101000011111000111011101000100010101001010101101000011101010111000000000111101101000001001101000001100001010111110111001110111101001111001011111000100101110001101100110000100011011100001111100101101010000110000000110001110011101001000010110000100000000010100010110101001101011111001100110001110000111110000001011110000110101000111000010110000100110010000001110101011000110111111011000010110011000110010010010000100010100011100111011011111111011001011110011011010010110101001111111001110000100011000010010111111011001001101010001101001001011001011110010011000111110010010100010001110110000000111000110110111101110111100111010011111000100010111001110011111001001000111001011010011101010101100111110000101011100100110010011010000011011011110100011100001000110101001011101100011010000001011011110111011000110010110111010010011100001010110000001101001001110111010010100011101100100111100001010000110000011010010001100011011000101011010001010110011010110101011001000001011110101100110101001000110110001001010000101110---------------------1110101111010000000111110000011010001111000010101111101110011001111100001100110001101011000110011000011101101101000001101110001101000100110001001001110101000111000111111100001000001111010110000110110001110100001110010001101000111110110100110111101000100011000100100101100011011011011011100010101000010110011010111000100100011110001110000001100110101010111001110101110100001110011100011010001101010000011000011010000100100001011110011110000111000100000000001000001001110101100110011011100010110010000101110011011100011111001100001111101000001010010110010010000110100101000100100011010100101011011011110111101010101101010110100010001001110111111010111010110000100111100011011100000110111110001001101100010001001110100111110110110001010011011000100010000001111101011010011111010011100100001001101100101010110101010110001100011010011001011010111001110100101100011100111101010001011101110110100111000111100101010010100100100100110111100001100101100001101111100110110011001101001101001111001101000111111010111100001011001000001001010000101001110111111011110110011001000101100011010100111111101000001010010111100010011001000101010000101011000011011000111010011111101011000000100110111001010001111010000011101000011100110100101000110010101001000111000100111010000000111011100001011000010101010111101010011000011110011011001111000111010100001010001110000001001100110001011111011011001110000011111100000110000001110011101101010000110100110100100100101101100101011110001100110010101110010110101010011011000111001100101111111001001101001110110001100101000110001011100100001101110100001000001100101011010011010100000100100100010110100011010001010111001111101011001011001100011010100110111110011100011001101100011001111010011010101010101111101110011010000011101011111011010111110010010001110100010011111110011000000010111111110111111001001010101010110100000001101111000100000100101111001000111000111100010010110001011000011001000110000010110001001110100111010111010111010000100110010010110111011000100111101101100110001101100011101011010010011001110000010011010001111111101110101000111001101001110111101111111000101111011010101110010001110010010100111011001011011000000100100111011000111110100110000100011100010001011000100000010111001000111010100101010110101001100100011000000011000010100100100011111110100001010110000111001110011110110111011100111000100101111110010101101100100100101101010000010000000011 +01001100110110001001011110010001011010011101000111010010010110111011101000011110111010100001010010101100010101001001101111001011010110101011000010100001010011110000101100111101101100111010101111000111001111110001101000111111111001000011011000011101101001111000111000110111110011110010010110000110001011001010000101111001111011100110001101011010111100100000111010011110001111011000110000110001110100010010100010011110000100110011001100001110101010111010100010100001001111100001111111111001100111010101101000111011010101101101001011010010001100011011010010010010000100100100010110111001001111111000110010011110011001011011010010110010101000100000100001100100110101111001110010111111111001110001101010010110000001010110001110000011000010010101100010010001101111010110100110110101011100001010101000001101001100111101111010100100010100110101010001111100100010101101010011000100001100111110101111110100110111111000011011010011100000000011111001000001001111011001011000010101110010101011011011101101000001101111111101010111010---------------------1100010110111100110101010100111011101101000111010000111101001100011011100011101001110001000110111101101100111000101101001001100010111010000101100110100101111110000001011000011011100111001000101111010011001110111001100111010101111000100011101010111001000111000011101001110110101101000101010111111111101010111101000100011101110010010101000011001001100111111000000010010110110110000110010110001001001001111110110011010011110000100010111101101111011001110101010100110111010101101111101000011011010111101010001101101110101010010110101111011001011000101010111001000111100100110010101101011001101110001101101011011110011111000000011000101011100100000001110010000010101010111011110101111001101100101100010111101111001011100100101110011101000111100001100000010011101000101110000110000000100010010100100001110000010001111111110000000001011110011111111110001110000101001101001100101111100001100011110101110000011000101111110101011011010100000010000101111111101111011101000111010101100001110111100100011011010000001101010111000100000001111000000001000110100110100110111110001111001110001100010011000110110110011000100011110001010110001011010111000101010001100000001100100011001111010010001101010011110111010111100001110110001010010000010001111001100111111010100100000000101111110011111010100001101001100100010010001101000110000110000110110010001111110000110000000111110010100000001101111000110101101001101101100000101100110001100101001010000100101110010111100001011010010101001010100110010001110110110111001011101101100000011111011101111000101000110101101001010010001001111010110111010001010000111101000110100011101001011010110000000100111011111010110110110001011000011000011100001111011110010011110110000100011110011101011100111001010001001110100100101010111011100100010011111101001101110010111111000111101011111110111010001101100110001000010010111101000100110010000110011011001100101000000100101101101000100111011000011101101001001110101001100011001011111100001000000001111110100001101110011010001111000100000111000111100000100000111101000011101101001110010010101000110100010101100101001101011001001100001011011010111101000100101000011100111100100000010111101100100001110011011011000101110111101011000101110100101101100011111011000000101011011011001101011011001010110011100100011011000100111010111010101110110011100100110101000011111011011110011100100101100001010111000000000001100000010100101000011110 +11111000001111101010010111000001110111110111100000111110011100101111000000101110110010000100010011111001010010000010111001001001000101001101110110010000011111100111101011000000010110010000001111001101101000110110100011101011100101111000110110010010111110101001001010001101011101101010010101110010100111100001101000011000101000000010101011100000001000101110000111010110111110001111001001111111101010011100111000000110100100101111111100110011110001100110000000000111011101100001100011011100001001011101100011100000010100110101011111111001111100101100011100010001101011000100101011010000000111110111010100110011011010001010010001010011010111001000000010111111011110011000011001011101011010111010001000010000010010101011001010000110100001011000011101111000010010110000011010011001101111110011101000101111110010100010000001111111100001101100011101101111111101000001001101000011101110010110010001001111000111101111111101100110011000100111110111001011101010001010000111010001100011111111110011110110000101111100110000101011100---------------------1101110111001010100001100011000011100111101001001001100101000110101000000001010101100001000001101010111101111011110110001111110001100000110011110000010000011101101111010111101000111000111010001000100001101011010111011101111001011111010011111000011111011001110011010100100101100111000011101100101001110110000110010000101011011001111100111100000111010000110000110101000011001111000010100101000000010000011000111011101011000011000011000000100110111101001001110000010101000010111011101101101111110111100111111111110000111110101010101011001001010101101110010111010010000011010111001110101111100110000010100001011101101111011100011010010110011111110101111111110000010110010001000110111001100011100001111100100110100100100100110000100001111110011110000110100011011101111110011010011100011100100110100101111010110001010110111000110100100111111010100011110001010010111111011000001100010101010010111110111100010010100000100001101111001100010010101111110010100101011001001000010110100001101011000100010101100110111001001111011000100011001010010011010001010010110001001111100111000000001100101001011000001100001101111001001000011111110001000011000001010010000011100100110110111110100011101011011011011010100100011111010100110011011110000011011011000011011011111101000101100010011010110010110000011011101010111101011010001011111001110000110111101101010111100010100001011110010010110111011011001001010101110100110011111001001111100100010101011111111101000111011011110010111110011101010101110110011000111001011111101010010100010101110000000111000011001111011001011000100010101001010000011000010100001011101111100011011111110111101101001011110011110100010011100101100011010010000010101010100010110111001110101110000001000010010111001001000111001000001111010010110101000000000111101101001000100100000011000000100100110100001011111001101111000111000111001011011101000111110000100011111101111011011111100011100111010100010100001001000111110100100110100001001110100101101010100000111101000011001010001111100000100010111000000110010001001000101100001010001010011011111001011000010010000101100010001100100110010100101011000010110101001010111101101000100100011000100111010100000000101101101100100111110101100011110110010111011011010010000110100101101100010100111110000010101010110100111101001101110111101011110110101101110001101001111010111101010111100000101011101111100110111111001110010111010111111011000011100001 +11100101111010101101001100001001110111010010101101111010001001100101001010011000011010110011000101001010110001000000010101110100011111110100010011010010100100111001000101111100001100101010100100100000010101001010100110100010110101101100111100001100001000011101101111100110010011001000111110000010101000000011000000011110001000011010010100101001110000001010000111101100010101010111011111000101111100111011100111100000011111010010101101000011010010000010101100011110110100011001101000011100111011000101100100010010100010000001100010000101011001100011110000000011011100110111001001010011101100101000111100110100101010110110110110110101001000100001110110111110001011111000110011000100000001110000010000001000101100100010100111101000110111010000111101001101011110000010000001000010010001110100001000001110110011011110110001001010011101010010001011111111011111101110011111100000000001100101000101001111011011100001101001111110001001001011000011000000110011011111000000101000011101010110011010010001000001101011001000110011111---------------------1001111011111111010101110010110001001011010001111001011010100001110111110111000101000001101111100010100111110100101100101110001111000001010011010101000000011100110010001101000101101101110111111110110100010101111000000111110100111110101000100111100000000001010110010011000001001111111011110000110111111010111100100011101010111101111100100011001000100010110101110010001011011100100010110001101001000000101001010000110011111100000101101111111100011101101101100111101100101011110110010010101001011000111000010001101010101001101110100110001001110111011100101101011001100011010101011101100101100110110100011101001100101000011010111000000110100010100100000011100010011000111110101100100011011010010111000011000100100111101101101111010110000110010101100100010011010101110110110011011011010110101010101001010000010000111111010010010001111111011011100100101001111011001110000110111111100100010101101010000100101010010101000011001011000111001111100111101011111010001110100101001011111110001100010001111101000100011101001011101010011110100011100100000010100101000001110111101100111111100000000010000001011000001100000100110011100110101001000000001111001010001000110101011111010011100100010100111001000000011001111001001100101100001110011000111000000100001101111000101001000000010110111101110000101001111111010111110001001010111011011100101000110101100000000010011001100011011110100101011111010100001010100100011010100100001101111010110110101001011000110110101111000100110110001101111110000110001101101111000100100010000111110000000110001101101011011111001001111111011001001011000000100100110100000101000010000000011001101101000110110111111111110001101110111011010010111011111111001100101000010100101110101001111001000001100111100100010001110100111100001011010000001110001111010011100010110000001011001101101110100111001101001110100110111001001101010100010011000100100000001101110001011000000000011000101111010111101001011001110110110000000101100100000000100011100010101001111000101111011101010100110110101110001011100001111001001001100110100001100010001110011001101000101110011100001000000100001110111110011100111101001010010010000101100110110111010100011000011101010111000010001110000111111011111110011111011000011010110101000000110111101111101101011100100010111011010101111100000001001100110011110010010010100111011011111011110111001011101011101111011101100010001100110000111001110000100001101000011111 +00101110011110101100110111010011101010001110100010101100101101011000110001110000011111111111111000110101000010000000010101100110101110001010101011111001010011110101101011110010110100111111101100101101100001110001101000111010001010001110001011100110111110001010101001001001100100010011111100000011111000011000001010000111011111110110000100001001001100100010101010001100001000111100011011101001101010001011111011111100010101001100101000101110010110100101111100011011100101100000011001010010100011010000000010110001111100100001011100101100111101110100101101010110100010100010110101110111000111111110100100001101000100011001010100000100000011111101001101001111010010110000100010111010001000000000100000001001101110010110001001001011001010110001010110111010011110111010001001001010001010110011100000100000111011001010011100110111010000011111111000011001010110010111001101010110110101111111111001010111001001110111010101001100101010000000101100010100000110000011110100011100110000110010010111110101111101100000111111001011001---------------------1100101100111100000101110100100010010011110001001101111001000111101110110001101000110101111001111110011110001011001111111001101000111010110110110011010001010111100000100100110011011010010101100010001010000000011011010011010011001011101010010011100000101010110011111001100000101011111001100111000100010001111111110110001110100111101011011010011001100001010011111010001100101010100001101100001111011101100011101010101110100000010110001101101011100111001100000100000000001100011100110101110000111101011111010111110111001111011010110101000000000000110000101000110100010100010000101101010000111001110000000101111101010111111001100000110001111100110101110010111000001000011110110111110100011011110011010010100100110001101011011010111000011101101110000111100001100101000100100000111011111010101100001000011010001000111100100010001111110010000100001001010110101110000010100001001110111101001000111001000110110000110010010001011001010000011010110001110010011100100101001101000001000001000110110100110111110110010010010111010100011110110111100010010010101010111101000010101111000010000010110010111111010100100100111010001100100111100110011000111110101100000010001100001011110001000011010100110001101001101101111110100010110011001110110010000100100001010000101011010001101000001111110001111111101011100101100011011100100001111110010000000000100000000011111011100101000010101110111101010001011000000000110100100000100000101001101101111010010011111011111000100011000000100111101101100000111001011100000010010000101101000001100010110000000001000100110011101101110101110010101010000001110011101001001001000011011000100011000111100110100110011000100001010000001110101010100111010000110110011111110101011101110011110110010100001011001000101011010011001001110010011110000101101001000111110010100100000100101010001100101011111111011000111001100100110111101100000110011001010100100111110110100001111000010100111110110000111011111001101011011110001010111100111011100010110010111110000001001110101000011111010101110101001001110010011110001010000110011000101110111010011011101010110111110001001111101110100010110001010111100001001001000000001101101011001010100000001000111000100001101101100100100101101111111010100101000110000101011101000110111110100011010010101000010111000110110111010010101110001110011110011110001010001100000000000110000011001100001001010101110101100001100100100000001010011111010101111000111011 +00100110110001100101010110100011001011111101010010001010011011001110101010100101101000010110000100001101011100110101010110100100101001011100111010000011001011000000000101000011111010100111100100011101010100111011101010101011110111001101010110000000110001110000010110011001000011110011001001101000010011000111000011101101110101111101100010100100100000011010101111100110111111001010010101010001100000111111101100111011100111011100110011100000100111010111000000010110111110001111111000011000111100000100011100110010010010001100111101101001010011010010100000100010100001000110010101000011010111110000101001101110011110111101011110011100001001011001010111001010110110000000101000010000000100011110010101100001110100101011001101110100001001010111011110111101100100111101111100000101111000110100011100110011101010000011000011011100001010111111010101000100110101110010101101101101000100101000010000100000010101010001101101010101010100000111101010011111011110101011100001010011001100111011000001111111011100101101011010110110110---------------------1101101100100010110000111011101010111100010101001111100100010110110001010010101011001010100111011010101110011100010000101011101110100101100001000011000100011110011010011100111000101000010000010110011001010111011011101011111101011101001010111001101010011010010010010101011011000010110100001010011011100001010100111101000111100001000010011010110111111111010100010001100111001010101000001011101111111000010001000000000101111000100100101011100110101100011000101111110010101110000001011000100011000011001111110100010100000010001011000011010101110110111000001001001111101001000101000111010110111000111011010000111010001110000100000110000100010101010101111100110000101000110100011011100110001010111011111001010111010011011111111100000100000011000000001101010110111001100001101011011111101110100000100011100001111101100100111110000111001001100000110010000111001000101011011100010010100001101010010110101000110110001011110000010000001000100011010010011011011011001011000101001010110010000100101010101110010001100111010111001000101111000110001111011001000001101100111100111010101100001100110011000110000100010100111110000011110001101111101001000011100101110001000001100011100000101111010010101000100010011111010100111101010111001100100011011101100100011010010010010100101100001000100010000100111000110010001011000011001011001011100100101101111111111101001110101000100100011010011100111010111101010001110001100111101001000100001001000011010110110001100000000001111001010101011011111000100111010011100110100101001110101011110100111100001000001100011110100001000110011100110110001111101100100100101100010110100001000011011110100000100100111011111110101001101101100100100000001000001110010000000001101100111100111110110101111101111110111010100101100110001101110000011101111100010010010010110010010000001011000100100001011101000001011001000101010110011011101000001001100111011010010010000010010011111101010011101110000001010111001001001100101111001110110100101010010010010010000101011100101110000110101011011011111001000110010010111110010101001010000100001100001111010111100000110110101111001010100110011110100100100001011000011111000111010000111010110011010101101001100111000000101110110010001110011110001101000001001000011011011100010100001101110111100011110000000000000010110110010000111101111101100011100101011010001100000010100000000001011001101111000001011100001010011101100000100011001011111010101011 +ls104msgs +00101011001011001000011111111101011010010100000000110011110101100010010001111101101100011010101110010001000000001001001011100011100101100101011110001001010101111000001000110110010111100101010011111100010100110001100010101110101110000011011001110110011011010101101001000001100100101010101001101101010000001011000000011011011010101101110101100011101111001000100100111111110011111011100010001000101010011001010100100011011000111010010010111111100100111001101000101100010011111000001001001000111000100001000101001010110111110010101010110001110001000100011101110011110000100101100110000110110000101011101000011100101010001110011010100000010001001001001110010111110011011001010011000111111100000111111010000110110011101011010000011110100111110110001111100100001010010001111110111010111110110111011110101011101010000001100111000101110011111111010111001110011111100011101000010010001111010001001100011011000101011101011011101101101101111110101101101000100110001000001001110001001011100011011100100000000000011010000000100001011111111110001011001000011000110011011000110100011010100010101101011000001011100001101000000110011111000111100001011001011110111111001111010110000001011001010001001010001100110110111001011010011101101101100000001000100011001110000110100001100111000011011101110011000111000000001011110111110001100100011001000011111001110001111111110110101000100001000001100110111000000110000111010010000011100010010001010000101110100001111100110111000101011110100011100101000100110101000011110011110001111000100010011001010001011001100101111101000111000110011101010010010100110111001000000100101001010000101100100010110001110001100100101100000100110110010100000001001011100100001001010001111000011011000100000011011100110010100110101111101100111001100010110000110010001001010110110000011110001110011011100100101000111011110000110011010110101101011110111101110010010101010000010111110000011111111000101000001110010001100010100010000101011101000111010101001101010001000001101001111100110100101101101011100110001100100101101101010101110011000110010100000100101011101000100110011110010000100100010100000100110101111100110111111011010011000000100100100111100001010110110001010000001111110000111000001101100110001001001010001100101111010100101100101011010010100100110010001--------------------- +00010100101100000010111101001001101100111000000000100001011011011101011100110011110000001001010010000001000000101111001101011101110011110001101011000100000010100010100110101010000011001110011010101001101111100111010101010111101010000111000110101001100000101000001001110111110100000011110110000011011011000101011011011100000001000100000100111000101100000001101111010110000010101010001001101000001101110101000000100011101110010001111010011101011110000111011001100110011100001111010101111010100110000011001011001011010011111101101001010100011100111110110111000011010110111100110110000101111100001011010111000111000100010001000000010100100000000101000010001011101010100001100110000000011011111110101100100011110101011010100000110111101101000000101110111111011010111100101000100111100000011101010000000101010011000000011001101001001111011111000011000111010000101000000010010100111011010110011100111111001011000101110101001001111110001001001111001111010001010000000000100000110010011110000101110110110001110111011111011101101100110111101001010100011001100000100110010011111101100111100101011100001000101010110101010000000111100001101010111100000101110000010101100011101001110010101011001001110000100010111111101001101110100111111101101000011011100000000101010010101001101011100110000100110111100001001100010101100000011010111001110010010000010010100100010001110011011011010011101011100101111110000101111010110101000110011110010001111010111010101010110011001111100001000011001110001111001000001110011110000100000000011011010111111011100010001100011000000010101010000010010011000010101110101111101101000000001010100001010010100100011101011010101010111110000000001110111110101100000000110000000001011010011110000010011000001011110001101110011010000010010110000011110000110101011010001010101101000000111011111100010111010000100110111111110001100100000101011001111000000000011011111011110010100110011100101110100011001011101011000100010100000100110001111111000111001110000110111110010011101011110110011111110101100011110110111000101001101101001010101111110010111101111100000001000011001110011100001001100011010001011100110010111001001111011001001001111100100000001000101001111111110101000000101101010101100110110101111011110100100001101101010111000101110010000001100111111010001--------------------- +11010001010011001110111101101100001110101001110000101110110000001110111101100001100111100011100100110101110101101010000000000100110010011011101011011000110110110111110010110011000010001110011001101111011100100010011001000001101100001111110001000110000000000010001000010110000111111100001111110101011101100110111001000111110110001110101001000010011111010110010101111100001011110101111001100000000101110101001101001000010110001010001011101110011000101000011111111001000011010010011011110011001001100110111000011000111100110100000000010010001010011011001010101100011001010101010010001110100001010000001001011011001011100110101110010110001011001001111101100010100001101011010101001010010111100111100111100100101111100011000000000100010011001001111110100011110001101110111010001110100111110111010010010111110101100011011100100111001111011111011010101100011101110011100000110111001111001001101010010000110101111111010011111010010111010111101110100001010011001011110001111001001111100110010111111011110000000111011111110011111101011111010101100111011111110100100110001001111001101111101000101110100101111000001101111001110011010111001111011000010010010000000001110100100010110100001000010110011110100000000010010010001000011110010000010110111111100100110000011100111000100111010111111100011000111100011000110011101101010100101000011001000110100100101010100010001111100010100101010010001101011111110100110000001111011110001110100011001011001110110101011011010100000100110000010111011110110000111011011110010000001011001101101110100110001001101101011000101011101010101001111010111111111110010001011001011011111011101110001000111001100111010110110101100010011111000110111110000011101101001011001110110001001100111111100000101101011110001011111000111010000010101000001001000000101100111111011100011111011101001101000100110101100000010011101001000010001100111010110101000001011110000110001111010100011000110101110110111101000110101111110111000111111011010011111111000011000111111110110111100100000100001011110000000100000100010100100110100000011110000010001111010100011000000101101010110001111110100001000010100111101100011000101011110010010010011101110010001000010011110011111111001110110001011000011111100001000101110000111110100110000100000011110101000001000011001011111111011--------------------- +00011110011001011100011111101110001011101011000100000010100110001011000100001111001000011100100101110100111011101011001101100101011011111100000111010110001000111111000010111100000000111110001110011100100010001110100110010011101001011010110100100000111001110011011101100100101001101001111010001101100001001001001100010110001010101101001111100001011000111010101000101010010010110111100111101010001110101100011011100101001111111001001001111010110101100101101011001101111011101011110001110000101001000001101111101111000110001110010000100100110000110011101110110011110000011010010000011101000111011011011101100000001111111011110011101110010100011010100101111001111101110100011101100001111001011101100110010100101111110001011101100111000000010011000011101110110010011001010010111000010111000000000011110110010110110011100111110011010001110110010110011001100001001101010111111101110011111010011000010001110100011001011000010100101101000000111010000101101000100010000001101000011101000100110010010010110100011100111000101110011011101011000001000010111110000100110101001011110110010110101100110110111011000011111010110111011101000000001100001011001101110011001101100110001000110000100101101101111011000101110111101100000001110001011000110011000100110110110010011010110011110101000000000000011000000101000111000001110001000010001000111111110011001010111000001001111101100111111011011010000000100000100010111000000001000011100110110110100001100001000011001110101010101111101110001111000001100000010010101001001101110001011100000100110010010110001011110010111111100010110111011001101111111001011001110110100110000110110101100110011010110011010000000111101001010001100100110110110000100110110000000010001110010000110110000101001011000001100111000010000100101011000111111010000000111001101101101111011001111100010101010111100111000110101101011101000110010110000111110100010100000110101100101001110010001100001111010000100101101101010101011011001000001110001100111101110101101100000111111001011001110100101011100100000011111101010011011001111110110001100110110001010000001101001001010010010111010100111010100100100011000000110000110110111011000101001111010110111010111110011011110100111101111010011110110100010100100011101011110011011100111001111101110100010111010011110110001001010--------------------- +01100001001101111000001010011100111100100001011101011011001110111001110110101000101110100111001001010101011100010111000011111100000101011000111001111111110011010011010011000101011001010011100010010110100011000110110001011000100101101100001000001000100110000111101111110011000100100110100111010001101111001001001110011100010001100000101101100101001010111101001111000011101110110000000010101101100001011011001010001000111101011101101100101110110001101100111111100110011011001011111010001110110000110100001110000001000000100111000101010011111101100010111101110010001110000101001110001101110110001110000011000101010111000001000110100101110100000100110111010000110000001001000000010000001011101010110000001011111011011001110011000011100101001010000111101000010110001001000100000011010110100000010110010011001101011110000010101001010011000100101001011010111101010100001111000111100001000111101010101100000000000011010100000100011000001101110011011011001111010011001110101100100000001010011111011000001001000101010010111110111110000000010100100100111100100001100100011011001100001000110000111010110001000001101110000110000001100000111100011101101100111000010101111111010000101111001011100010010011100100110000100010111101001010010000110110100110000111110100110000011100110010000101011111111011100001010000111011101001111111111111111110111010010110011101010110011100111101111100101000101011110101011111110101111001101011010001011110111010101010000101011101000111001100001110001010111110011000010011001101000010101010100101000010101001110010111001100000110111111011000101110011101011001110110011011111001010111111011101101000110010000111000000100011101001000110000110010111101110100000101011010111001101011001011100111011011111011111110111111001111000101000011011001111110100001011011110110000110000001111101001110001010101111110011001111011111101010111001000111000001000111001111001010101111010001111011100010101100000100111101011001111110011100101101110011010101101011000000010011010001100010001010100111010111001001010101101010101011100011100101110000011101011100110101000001101010110011001011000000110111000100110100010100010110001011000100001000001101101001000010110101000110110000110111110111110111001101011001010100101111110111010000111101000110110110111000100100101010--------------------- +11100110111110100000110010010010011011110101000010101010010100101100101000001011110111011010111010010001001001010010011101001010100000111011100110101101111100000111100111110110110001110100001000100111101101001011111001100010011001010000111101111110000111001111100111100100001010100110000001001001110101100111101100011110010100110010101111001010000101101001001110011100111001011001110000100111101011000101010101000101001011111010010111010000011000101101011101111010110011001000001101110110100000110111011000000000101010101010101111000000100000111000010110100100010101111101010001101101101101100010100011110011010010110110010011010001110100101010101100010101110010010101101010111000011100010111000101010111000010100010110000011001010010100100010011100011100000110111111110011111010011100001101000111000011000110001100010010011011001001110111111111001000001001110000111111010001100010000001111101101001001010110001100100100101010001111011010111110001111010100011111010000001000111001100010010000101111101110001110001101010100000110100010001100110111110001110011100010001000000111001100101001111111001100111101010001100001000001101101010001110011000111110001110000001100111100100101100110000010000010111001011011000111000000110100011111100011000110000011110100100001100000010111001110110101001110000000010001010110100101000110011101101011101110100101000100111011011001001000001010001111101101111100101001001100010000000100010110000001011000001101010110101011101001010010010001101101110100010010000101010010110100000110001011011101100010010011011101111000001110101111101000101000010111101001010011101010101011001010101001011111010011110000101001010111010110101100111011001110001111100101100110000010011111010110101101111111001110111010100100101110000000100011110100100111001010000011001001101110111101110110010110101010100111110100100011101101101111000010010000110011101010100100111001111111010001110000000101010100101010011111100100010101000101000011101011000000011011110101100010001010101001111100000001000110110110110100000001011100011111011100101011101000110000010111100111111010110000000000011110111110111110101001101001011010000111001100100110101110100110010001011110000011011011010001000000010001000011101111011010111001110101000111011010110001111001010011001010101--------------------- +01101111101110000100110111000011111010101010100111000011010011101001001000110001101010100001000101111001101100010110010101111000110001100101010011011001011111100111111101010011000110100010000110111011110010000010110001011111110110001100100111100011000000100010000111110110001001111000111010101110001001110100111110010111000011011101001110100100000110011101100101101101101010010001000110110101100000110000000110101010110110101101011011101101000101010101011110010011000111100001001111011000111010110010011000110000111010011100110101011010000110111010101100100000011100000101101010101111111111100101000101111111010000011011101100101001011011101111101111111100100010100000001010010000100011100011011011000111010100101101000000111110101010011010110010110101000001111000001110111011000111011011101111010001010110011011100010010100111101111001110110010100011011011100000101000001110010000011001110001001000011000100001110101101001011101001011000110101011001100110010101100001111010011001100111001100110100101110110011011110100110011011010001011101110000101101011010011111110011101001111101011110011101101110011000001011001000000101111001001000111111011010110011101100001010001011010011000001111101001010100110111000010110001010011100011001110011011100111111001100100111001001010010100011100000100111110101001010110100011001101011010011011111000010010000001111011111101111011100001101000101001100010001100000111111001001001110010001000110011100100100100101100000111111000010100010110100011101101011101111000101110000000000000101000111100011000000110101011010111001101101001111010000100011111110101101111001110110010110110110110110111000010010000000010011101100101100100011010110101100001100100011111101111010001101000111101010010010100110011101100011111111001010100001100000101010000110111100010000101111101000000011101001110001110000101101101101101001000110111100000111011110111011011100010001111001110001001010001111111110110011001111000100001001101110111100111001111110100000000010110001110101011000100100000011011010010100101101000011101111010001101001001100001101111100011101101100001010100010001100100110010001100011100110001110110011011011000111001111001101110111011111101000101011000100001111010101101111110011111011001010111110101000100111100011000101100001000000110--------------------- +11011000001110000000011100100010000011000101000000100000000001010111110010011111001000100010001010100101010101111001111011100001101111101100000101010110101110001100010111111010100101101101011010000001101010010010111011001010000101110100011000100101000000100001000011000011011000110111000110011100110100100111010100101000110001001010111011110010100110010011111111010011010111110010110100011101110000011110000011101110011110110000010100111000011100111010011111101010001000111100000001000100010010110011101000010011011100010010101000011111111011111110000110100010101011111000011110111101111000001001000001000110100000001100000011000110101000010110101010101011010010010010011111000101110101110110101101101100001101010110101100111000011110111011010011000011110111111110010010010110100010100100111110000100111111011110011110000110100011111000000001001001111010011101111000100010100100011111010010111101111000000111111100101011010001010100000000101001111110111110011010010111011100000111111100001000100100100001100101100100100111110100110011110111111101011101111010110011101001100000110101101001110111001101111010101001111101010110110101010111001100010101111111010011001101001010101110011001000110001101101010001001111000000000010111101111011111111111001111110001101100110010111110001011110010010111100110011011110110001011010100010000010000010100111110100001001100001000000111011000111011100010111111111101110101101111010000101111010101001111011101011111000000111111111010100111100000111011111111110111011111011000000010001111010111100000111010000001001000000110100001000010000100011101000110010011010100000110101010001000100110010110010000010101011111000001101010111001100011010111000101001010011101001000001000011001110011111100111011000000111110001010010110110100010100101011110011010110101000000001101110010010000110011001000011001000111001100011011000010101001000101110100101010110001000110101011110100111000101110011111001110100100011111111101100101101101000011011110110101010101010001111000110010010111111100110101010101000111001011010010000001111000011001100100111000001010011100101111100000110100101110001001011010010001110110011110110011000011111010111000001100000010000100110100010011000000100110010110100111101010001111110000010101011110110110101011001010111100--------------------- +10101110110011000101001001100101011000001000010111101111111110000111010110011111001111101100110110001001110011100111111001100011001010111000100100100100101100100101111001110010110111100111011011110100010000110110101100001100110101100111111010001000000100000001101100111000101011010011101011111110110011111111101100011110111010110011011011010100010010111100011000010111011011011111101110010110110110111000010101101011011110001110001101011110101101001110100100111000110000001000011001100111010001011100001100110111111011110101001110100010011110001101010100101001100010110100111100011110111101100100001010111010100010001001001110110001000111111111010011011000100110101110110001011111100011110100101010111010100101000110101001001010111110101000101111101001110111001111011011110000011101111010000111100100011111111001000011011100100000000011101100100101110100100111011010001100000100101001111000100000000001011110101100000011000001110100000010001100010100011010100111111100111101000111001101000111111100100101000000000110011111111000001111111110100111101100110110101001000111010011110010000100110011010111101001111110110000001000001000110011101010100100000011000111111000011101110010010101110111110110111101110001011111111100111011100010100010100100100110000001001100010001100100100001011011010001010100001011100011111101001010011000101110011000111011000101010101101100010011001010110000011110010011100011110111100000000010010010010111100110111110110110010100101000010110000101111100100010100110001011010101111101111110111100111010110001101010011100011001111100011011110001001010010101101110111011111010111010010111101111011011001111110010011111100110111111100001000111110110011101110100001001111101001000010011010101100011011000111010101111011011111000100001101100011100101100011101011001010011001000100101001111011011011011011101011000010111000010111010110110111000000000100001001101100000000101011101111101101101001011111001101111011001000100100110101100000011001001010011011001000110111100010111000101001100010011010001100100110001001111110011000111111100101010110101000101110111100000001010000011110000000010111101001101111000101101110010111001001010110111100100110111101100100111011101111100101101110101100010111001110001101010000110111111011011110001001101000011111--------------------- +11101001101010101000011010110101101000100100101100100100110111110100001101111010110010101101001001010110000100000001010011110001000010001001001100100001101000101100110000101111101000110000111000100100001001000010010000100010100110010000010110011001111000111101100111111000111001001110111110110011011101101110000111101000000011101011100111100110111001101010111100001100001100000000000100101011100101100011101010000011011111110101000110111011011101101001111100101001111001001011111001100011011011001111100111011000001001001011000010011000111111000000110110101000111010110010101110101111000111100110011100010101111001101001100100010101010001110110000000001100001110000011001010001101011100001000001110011010001001111111111100101001000011010010000111100010101100110101111000101111000111001111111010010010111001000100000111010101110111111011011110011000101000101001001001101001001110001010110001101111011110011000001011100010010000000111101001001110101011010110001101011101101010110000011110100111011101011010000011000010110001110011000011110011110111001100000111111001010111111110011101110011001100010110001110000100101110111110110010101010010011111000001001010110111011111001101101110001111000110010110010011010111000101011101000100101111011100001010101010001100101010100011111011100110010011000011010010001011111110011000100010011010100110111010101110001111011100111111011000001000111011110001111100001000011000000000011011001110010001101010101101100011101000101101001101111110011100100000101111111110010010000100011110111010101110111001011101011011011110101001001101001101000011100110101111010100010101001010101101010000000101100100011111100011011010000110100000011011011010000110101100110000000010001110000101011110101111010101000110011110111101001001000101110110010010000001001101110101101110101010011111000100100010101101101010100010010000010010111111000001010100001110001101000100101011100101111101101001110000000101111110101110100011000000111101111011110100110111010111010000011000011110110011101101000010111100010011101001100000101100111001111110011100110110010001001010101101100101111011111101111101000110010110110000110001110110001000001001010101111000110011001001001001111101101111101111111101111111111110110011101111110001000010011111001010011011101100101010--------------------- +ls104cwds +0001100010101110101110000011011001110110011011010101101001000001100100101010101001101101010000001011000000011011011010101101110101100011101111001000100100111111110011111011100010001000101010011001010100100011011000111010010010111111100100111001101000101100010011111000001001001000111000100001000101001010110111110010101010110001110001000100011101110011110000100101100110000110110000101011101000011100101010001110011010100000010001001001001110010111110011011001010011000111111100000111111010000110110011101011010000011110100111110110001111100100001010010001111110111010111110110111011110101011101010000001100111000101110011111111010111001110011111100011101000010010001111010001001100011011000101011101011011101101101101111110101101101000100110001000001001110001001011100011011100100000000000011010000000100001011111111110001011001000011000110011011000110100011010100010101101011000001011100001101000000110011111000111100001011001011110111111001111010110000001011001010001001010001100110110111001011010011101101101100000001000100011001110000110100001100111000011011101110011000111000000001011110111110001100100011001000011111001110001111111110110101000100001000001100110111000000110000111010010000011100010010001010000101110100001111100110111000101011110100011100101000100110101000011110011110001111000100010011001010001011001100101111101000111000110011101010010010100110111001000000100101001010000101100100010110001110001100100101100000100110110010100000001001011100100001001010001111000011011000100000011011100110010100110101111101100111001100010110000110010001001010110110000011110001110011011100100101000111011110000110011010110101101011110111101110010010101010000010111110000011111111000101000001110010001100010100010000101011101000111010101001101010001000001101001111100110100101101101011100110001100100101101101010101110011000110010100000100101011101000100110011110010000100100010100000100110101111100110111111011010011000000100100100111100001010110110001010000001111110000111000001101100110001001001010001100101111010100101100101011010010100100110010001---------------------00110000110111010000000110011011011110011111010100001010101001000001001110010010101011011011110011111101110000000001111101110010001010011110000001100111101101001110100000010101101011000011110010011110110000001111100000101110000001011101111100010100001001100101000100000001100011010001011101111110100010101010001011010101100000011110101100111101101111001000111011100110101111011110110000100000011000001010001101001111110011010110000001101110000010101011001101011100111010001100100110001000111101001100111001100011010000100110001110111011101110110010001011110110110100000001011100001110101110101010000111110100100101000100000110110101000111110101111100010101111110011100100101100100111011100101100100111000100110011101111101000101001101000011111101000101000110000101001010010101110100100011010100100111011001111010000111001110010000001111011101101101010101001111000001100001000011101000100110101100111011001000000100101101000111100111110000010100010101011001110011100100100100010111010111101000100000011000000101000101111001010001111111100110001101011000110010000011111101110011000110001000001110010100000011110010101010011110001010110010010001111010101110010110100101010010101000101101000100000001110000001100001011001111111111101001111000011101110011011100000110010100001000101000000101010011001011001101110101011001010011000001000101000000010011101000101101000011111011000000110010110101111110000011011000110110000011110010111001010111100001110011011101010001110100100011001000110100110001110010011011001010111010001000100001110111110001101110000001000010011100100111011001001010001011100111100101010110010011101101001100011010000111011101010011000011101011100101000010001111000011100010110101011100000001001010100110001001100000011001101110010000011101100111111010111000010100111111011011001110000010010100000010010001110010000101000011101001110110010101111000010110000111100100101101110000110001111100000110001101001111100000101001111110100010010011000111011011010001000111110001110010011101101111000111100100011011000100011101011000110101101100110101100111000010010011010001011000001101110010101000111010100100010001011110011011111000110000110011100100100101111010001111011110100001110010011100111010010000100001000000010010100101000110011010000101101010011111111010000100111000101000101011001000011000111000000000101010111101010100011010101111000011111001111101100010101000011111000101111111100111100000000000100111110110000000011011111000110101101101011011011111010111010010100110100000101100100011111101001000101000011100111111000111011001011001110001111100010010110010010000100110000100010000111110010000000110001110001011001001011010101001000010100000010110001100000011010001000111001010100111001000111000001110100100011010100000101111010110001110010011010010001001000011100011100110000010000111000000011011110010101011101111001101011101111111011110111011101001001000111100100111110011010001100100010010000110001101000100110111101010011111101110100111110110101011101010110000111100010111010111110000011001010000100110001010101101100111100010111011001001110010001010100101010100001000011101111100011001000100111010111000010111101101111011000111010100110111110000010001001001111110110101011001110110000100010101111110010000011001000100000110100100111011001101101010011001110111001110001111010001010000101101100000011001111110100011011011000000110000110010000010011100011100011010001110100110000100001000001110110001011110101100100011100101111110100110111010111010011000110000101010010001100010100110000101011010101111100001110011000001011001011110110100010101010000100101010110101001111001010101011011001101110101101000100001000101101000110011101010001010111100101111101101111000010101000100110011111101000111111001110111111011000110000100110001111111110111111011000101000011011111000101010101010000000111001000110000010001110101011010101100001010111000001100001101111101111100011000010000011111111000000000000111110101100111101110111100001110111100100001101001001010000111110011011100110010010010101111110100000011010111101010110101101000100110010101111100111111011011000010001110110000101111101100010000110110011001011110100100110110001001000000111110011011101110111100100100101100111101110011101111110011000001111101011100001010111000101001010000100110011110001011110110001111111000101110011000111111011001100010010010001101110111111110011010110100010011110100100101111010011111111000011111110001110011110010110000111111111010000011010010001100011110010101010100001110111011000001010011101101001001111001101001001000111001110010111010100011110000100111001001001100010110000100010001011110010010001010111101010010100100110100011010001010110110111000100110101100010101011100001110010101011000100101001000001110110011100000000111110110001001010111010000010101101110100111001001 +0111010101010111101010000111000110101001100000101000001001110111110100000011110110000011011011000101011011011100000001000100000100111000101100000001101111010110000010101010001001101000001101110101000000100011101110010001111010011101011110000111011001100110011100001111010101111010100110000011001011001011010011111101101001010100011100111110110111000011010110111100110110000101111100001011010111000111000100010001000000010100100000000101000010001011101010100001100110000000011011111110101100100011110101011010100000110111101101000000101110111111011010111100101000100111100000011101010000000101010011000000011001101001001111011111000011000111010000101000000010010100111011010110011100111111001011000101110101001001111110001001001111001111010001010000000000100000110010011110000101110110110001110111011111011101101100110111101001010100011001100000100110010011111101100111100101011100001000101010110101010000000111100001101010111100000101110000010101100011101001110010101011001001110000100010111111101001101110100111111101101000011011100000000101010010101001101011100110000100110111100001001100010101100000011010111001110010010000010010100100010001110011011011010011101011100101111110000101111010110101000110011110010001111010111010101010110011001111100001000011001110001111001000001110011110000100000000011011010111111011100010001100011000000010101010000010010011000010101110101111101101000000001010100001010010100100011101011010101010111110000000001110111110101100000000110000000001011010011110000010011000001011110001101110011010000010010110000011110000110101011010001010101101000000111011111100010111010000100110111111110001100100000101011001111000000000011011111011110010100110011100101110100011001011101011000100010100000100110001111111000111001110000110111110010011101011110110011111110101100011110110111000101001101101001010101111110010111101111100000001000011001110011100001001100011010001011100110010111001001111011001001001111100100000001000101001111111110101000000101101010101100110110101111011110100100001101101010111000101110010000001100111111010001---------------------01011000111010011100000111111111110110010110001100111011011001000001010111101100111111011101100000010001111100110001000011010000001010011101100110101010001110010101010010011011110101100110100001011001110110111010101111000001111010001111111111101010110101010011001100100001110010010001010100011010100011011100110100011010111101001000110011111111100111010111010111100110110100110101010110010001001001010101001001011111101010011001110010110101111111011001110001111011011100110110001000001110001000011101101011011010101101001010000110011010100000101001010000010001010100001000101111000101011010101111001101101001010111000100101011000011000101101100001100011110010110101101101011001011001111000100011001110000101000110001001110010000000110101101111100101111000101101010000001000110100011011000111011101100010001011100111101001100001001101011100011111101011011010000111110011111000111101101000110101000000001000001110011001110000101010001110011010011111101100010000001101011000110110100001011101110110010111010000011001101111100110001110010100100100011110111100101010011100011100101111110111111000011100011010001000110100110101111110000011110010010111110000100011101011000010111010101111011111111101101111100010100111000001100011110111110111100101011011000100000111000010100100000001011010101111010011001000110110010100001010110101101010101101100110111100011011010111110001111000111001100001101010011010111011001011000101101010011101011101001111110011011111100000110001001100100100110000100111100111011011001111001011001100111100100101100110000010111101110100001110101111110101011001010110110101010101010010010111101101111000111001101011111101110101101110011011100000011011000001011011110011100001010110000111001100000011001001000110110001000001101010000111111001111111010111111111100001100110111000111111011101000111000000011101010000011011101100100000000001001010010110010011010001100000000010101010001001101000011010100000100110011001001001111111000110000010010101000011100100000101010001000001111001001100100001111001011000000111010011100110010011001111100111111110010111101111011101011001000100100000101100001110111011011001101011000100011111100110111011000001100111010110010100111100001011011010000000111011011111111100101111010010101011000010111101000011001000011001101010000000011100101101000111001000011101100010110011000101010001001000111111110000101101100000111111010111101101100110111010111100000111111110011011101101101110010111000001000011111011100101000110101000011110011001010011100000010110100000000110001000110011010010011001100001110000010000110000010111011010000110011111111000010011100001001101110100110110110011001110000000101110111110101000111100010100100110000000101101001110011100011110011010100001011001101011011001111000010000000100101111000000001101011010000101001100111010011010101110111111001101101101111000011010000010000011001110101011101111110011010100111000100110010101010001111001100000100001000000111010110111100101111110110011110011011101011011010010000011010001010011000010101111000000111001010110100001110001000100111010101011011110101000011010011000110011101111111011011110110110110000011010101110000101110000110011101000101010011111000001010001010110011110100010100001110111100111011001101010110100001101010010001110111001111111111101110000100011011101010010111111111111100000001010110000000100011010111010011011101111111111111100010011101110011000110101010011011111010011110100011001101101001111011111111111110110000111111110001011110111110010001010001010000011110010101011100011101110011000001010110010000001111010000011101111011011000100101111101100011011010101001011110011001011111001100111001010011010100101011111010010000100000110100010100001001001111110101110011011100100110110010100000110100001111101101010001010010111000001111010011011111000100000011100000001101101000111010000000111111100000001010010111010000001010000001001010111111100000010101110111010110011101100110111010011111111000010000001100110111001100001100100110111111110000011110011110111111011011111101010001100110100001010001111011011111001111110100100001011100000001011000011110001111011100111011101101100011011001000000111001110110001101011100111001100011110000111111101000101101100101001001010010101001110001011101111110111100011011101100101011101011001001000100000100111101101110101101101111010000010011100011001110011101001010111110011000011000100001001010010011111010000010101110110111000010101111110111011111011011001011100101111001000110100110101100100011001110101100100111101100111101110101010000100101110010110000100010001010111111101011010011000100001100011111011011111110100100000100101010001101100101110110011001101001101111001000101100111101110011111100010011101001100000100110101010011000000100011010011010010001110011011101101110101100101110001011001010111010 +0010011001000001101100001111110001000110000000000010001000010110000111111100001111110101011101100110111001000111110110001110101001000010011111010110010101111100001011110101111001100000000101110101001101001000010110001010001011101110011000101000011111111001000011010010011011110011001001100110111000011000111100110100000000010010001010011011001010101100011001010101010010001110100001010000001001011011001011100110101110010110001011001001111101100010100001101011010101001010010111100111100111100100101111100011000000000100010011001001111110100011110001101110111010001110100111110111010010010111110101100011011100100111001111011111011010101100011101110011100000110111001111001001101010010000110101111111010011111010010111010111101110100001010011001011110001111001001111100110010111111011110000000111011111110011111101011111010101100111011111110100100110001001111001101111101000101110100101111000001101111001110011010111001111011000010010010000000001110100100010110100001000010110011110100000000010010010001000011110010000010110111111100100110000011100111000100111010111111100011000111100011000110011101101010100101000011001000110100100101010100010001111100010100101010010001101011111110100110000001111011110001110100011001011001110110101011011010100000100110000010111011110110000111011011110010000001011001101101110100110001001101101011000101011101010101001111010111111111110010001011001011011111011101110001000111001100111010110110101100010011111000110111110000011101101001011001110110001001100111111100000101101011110001011111000111010000010101000001001000000101100111111011100011111011101001101000100110101100000010011101001000010001100111010110101000001011110000110001111010100011000110101110110111101000110101111110111000111111011010011111111000011000111111110110111100100000100001011110000000100000100010100100110100000011110000010001111010100011000000101101010110001111110100001000010100111101100011000101011110010010010011101110010001000010011110011111111001110110001011000011111100001000101110000111110100110000100000011110101000001000011001011111111011---------------------11000000000101011100110001001101001110101000111001111000110000101010001111100100100010010110101001010011000100000001110011000111100100010100010100100111001101101001110100100001000101110010000000010011000101111101111011000100100011000110011011001111011110010000110111111100000000110110110100001101001110011100100000101100101001101101000000000111000100011011000000001000110011010100001000100101110011110001101011010000010000010101000010011100011000100101101101000010111011000010100111110010000001010101111100101010000110000010110011010010110010011111011011001110111100010101100010001010101001100110010110011001010000000111110001110010011001010110110110000011000000001101011110000000101010000011000110101111011101101001111111010010001101101100100100001010100011001011111101111100110111110110001010111111010110111101010110001001000100100110011001111101010010011101011010010101101100101010101110010100111110000101101010010001111001111100000100011101001010000101111110100001100000011010001011111010010000001100110110111110000010010101000100000101110111001100110000001111110000110011001101001101101011000101000110111010001011000001100100111100001110100010011011111100001110010110101011010111110111001101001101011011010001101101111100100010011011101000110110101100111111111110110110001010100011011110100010101010011001010011010100011011001001111111000111001001000011011011000110101000111010111101000101000010000111010100011100100111100101110000110101001101010110000010000101101010000001010110101000000101110000101010010101001000100101111111111111100110110001010000011001111001000100010111110011010001111010010110100001000111101010110100110001010000101111110101011011101011011101100000000011111111010110001111001010100001011101000100111000000100100110110101011001111110110000010111010000111010011101000011001011110100100100001111011100001001000100101010001111111101110010101101001011010111010111111101101010100100100011110111100110000011101110100010111001000010000000010100110101111010010101010111101110111000010111001101001100001101101100110001001001011101001110101000011100010111001100011100001110010001100101011001100001101010100100000100111000111010100010111001101011010011101000110011110001000101000001110011101000001110000101000010010101011000101000010101011011110001110101100001111010000101010110100001011000011010010011111111010110100001001001101100100110000001011100011111111110011101110000011100111111001001011111111100111011001100010011111111100100011001011111100000000100100101111100010011100011111001111111000110101111001100010010110000011101111111111001111011001000100100010111101101111111001100101101101101101001101001001100011000001111000010111010000001110111110111110110001011001110110101111001010100001010110011110100010101110001001101101011111100000100100000010111110101111010010011100000011101110001101110000000111110101011010010000111001001010101111101010100110010110011110000000101111100010010001000100000110000100100111010000000100111000001100010100101001001101000100000100100011001000001011110111111100011110110011111111011010111000101101001101011010001101000001101010001110000100011010000101111111011110101110010010001000000000010010100100011000110101110010100010111101101010101110100110101111001010111010010101101100000111010000000011000111001101110001011111101110000001100000001101101101001101110111111101101011010011000000010011100010100010111000000101111110000101100010000000111100011110010100100110000000001011010001100101100000000011010101110101110011111010010101111000101101001000101010110101111011100001001100101001110101010000011000000111001101110010010001110011011111001100000110110011111100100001011011001110011101001101110000110001111100110110110110011110011111100111101011001000101011000111111001001110100111000011111001101110111001101001010101110101001000100100111000101100001100001001100000100011011110110111010010010110000111000101100011000110000111110010001011000010000010110110001100100010101100100100111000010101010111000110111001100100010101010111110100011010000100111000011000011101110110100011011111100000011110110110111001000100011100001101010000000101001101011100101011100011111101001011011010010111101110110101100111000010100011011011100111011110011011101011110000110000100000100001010100100100000011011011110110100111101111011010110110000000100101000111000110110111011011011110110110100101100001110110011011000100010001111101001111100110011110011001011011010110010101011100101101010101110011101001101000010100010101100100000100011010001100100111101011111111010001001011001000100010111111111010011011000100110001101110010000100110111001010101011110110100101010000110000100010111010111000101001100111111101001110001101001110000100001101111110011010100000001101001011111100101001000111011000001011010110110000110110011011010011100011001011101010 +1110100110010011101001011010110100100000111001110011011101100100101001101001111010001101100001001001001100010110001010101101001111100001011000111010101000101010010010110111100111101010001110101100011011100101001111111001001001111010110101100101101011001101111011101011110001110000101001000001101111101111000110001110010000100100110000110011101110110011110000011010010000011101000111011011011101100000001111111011110011101110010100011010100101111001111101110100011101100001111001011101100110010100101111110001011101100111000000010011000011101110110010011001010010111000010111000000000011110110010110110011100111110011010001110110010110011001100001001101010111111101110011111010011000010001110100011001011000010100101101000000111010000101101000100010000001101000011101000100110010010010110100011100111000101110011011101011000001000010111110000100110101001011110110010110101100110110111011000011111010110111011101000000001100001011001101110011001101100110001000110000100101101101111011000101110111101100000001110001011000110011000100110110110010011010110011110101000000000000011000000101000111000001110001000010001000111111110011001010111000001001111101100111111011011010000000100000100010111000000001000011100110110110100001100001000011001110101010101111101110001111000001100000010010101001001101110001011100000100110010010110001011110010111111100010110111011001101111111001011001110110100110000110110101100110011010110011010000000111101001010001100100110110110000100110110000000010001110010000110110000101001011000001100111000010000100101011000111111010000000111001101101101111011001111100010101010111100111000110101101011101000110010110000111110100010100000110101100101001110010001100001111010000100101101101010101011011001000001110001100111101110101101100000111111001011001110100101011100100000011111101010011011001111110110001100110110001010000001101001001010010010111010100111010100100100011000000110000110110111011000101001111010110111010111110011011110100111101111010011110110100010100100011101011110011011100111001111101110100010111010011110110001001010---------------------00011110111101110001011011110111100111010100000111101101011011101100110001110111101111100111100111100001100101100111001001101111101011011111110100000101001111111110111101000010110111100011001000001001001111000000100001010010100011000011100011110011000111100011110100011100001011111011111100001100001011101100000110100110111101111100111010001000000111011111001100111111100110001100111010110000111100010001000111000011011000001100010110000111010101000110010010101100011011010001111011000010101101000010000001011100000011110100010010010110100001110110000111110111111010100010001010100111101001100100111011101000010111111010100000011101110000101110101100110101111101011011110110111101011011011100010011000100100010100111010011000001111100110011000111001100111010000010011111010011001100111100101010001011111001101100000101000101101101001001011110100100011110001100010111110011001111001000001011100000100111010101100110101101100010010110101000010101010010110001100101011101111101010011010100111100000010110010011000011011000101000111100110101011010011111011111110011001010110111010100000101000000111000110011010101110100111000111000010110010100011110100000110111111111101011000101111110111000101101100111011111101011110011010011101100001111100011001001010101001000011010011100101110001011111011110011010100000101111001000010011100101101101011101101111100110101110010100111101110000111101011011101101100101011010100000110001101001111100100100001000110111011001101111110010011101001001000111000000000011001101001100001000111110101101110011100100010000000001101110001010100100111000101111001110000101000101110001111000100011010101100010001101111110000001001010111110110011000101100110010011010001110000100111110011000101000010100100011000010001100000100110110111101000100000001000001110101101010001111011001101111100000100001000001000010101111110011111101000101110101011110100010100001001110010101011110111110111001101101111011110001101011101000011000101011110001011100111010010001110010111000001111010000101001001001000100000001001010110110110001011111001001110000001010000011111010010101010111111101111110011011110000101001001000110101010010010111011010011011011110111100010111001101000111100010001111000010111110001001001100111100010000110000100110101000110010000110001010001100110111011000010001000100011111101110111011010000100010000101011111010111001110100011111101010101111110100100101101110100101011011100101011101101110001001000011111110110001111011100101010111010011001010111011111001101101011001101011001101001100111011101000100001100000101100011001110000011001101011101101101000000110010100011100000111011001000011101110101010111011010010110010010000111001100011000110000011110100000110101110101110000000110111001011000001110110100101000000101100000001011110100001111000001001000010011010111101110100100001100010101100111010000000100001101000100011100011001100011111001001000100010110100011000111111110001100010000001001010100011000101110000100000000110111110101010100000000011101010101110111111001101110101001010111101101101001010100010111011110111000000001000110010100101100001100100011101101010000010011110011000011001111111101011101010000011110100110001101101110100011000100100110110011111110111011100111111000001101110010101100101010001001101010001111100101111101010010000011001010010000101111001011001111111100110110000011111001010111101001110110011100011010011101110001010110101100101010001111001010011111111000000111100101011100001011111111010110100110101001010000100000100011011001111010101100101011000010101000010111011101001000100110111001101110101010011111010010100110111101101111111011000111011101110010010111110110011100010101100111000110111000110101110101101101001101111111001110011100100010011011000110011010101011110100110100010001000110010100000111111001111101010010000010110010000111110011100110011101110000101111110100100111101010010000101111010100010001010100111000011010101101101110010100011100110111001011100011111101011100101101000111011100011110111100110010001101101010110000011000001111001100010011111111100101001000011111110111111110001101001111101100011110100100111011011111100001111101001111101010111001111111100001100101011101001010100010001100001011100110101001101011110010111011001000111011011001101000110011111001110000101011100010100010101001110000111011111100011101011101101000000100001111100011011100111101111101111110110011001011111100110111011101110001010101110001110001111000100011101001101001111111111101000001011001000000011110110101001010001111000110011101001111011101110011001100101010011000001101111011001000011001100010001110010100111011111011110011110100100010100100100100111110111011010000010001001110100100011011100100111001010001001000001100100100010011000111010001111001100000101110111101010110101001100110111000111111111100000101 +0110110001011000100101101100001000001000100110000111101111110011000100100110100111010001101111001001001110011100010001100000101101100101001010111101001111000011101110110000000010101101100001011011001010001000111101011101101100101110110001101100111111100110011011001011111010001110110000110100001110000001000000100111000101010011111101100010111101110010001110000101001110001101110110001110000011000101010111000001000110100101110100000100110111010000110000001001000000010000001011101010110000001011111011011001110011000011100101001010000111101000010110001001000100000011010110100000010110010011001101011110000010101001010011000100101001011010111101010100001111000111100001000111101010101100000000000011010100000100011000001101110011011011001111010011001110101100100000001010011111011000001001000101010010111110111110000000010100100100111100100001100100011011001100001000110000111010110001000001101110000110000001100000111100011101101100111000010101111111010000101111001011100010010011100100110000100010111101001010010000110110100110000111110100110000011100110010000101011111111011100001010000111011101001111111111111111110111010010110011101010110011100111101111100101000101011110101011111110101111001101011010001011110111010101010000101011101000111001100001110001010111110011000010011001101000010101010100101000010101001110010111001100000110111111011000101110011101011001110110011011111001010111111011101101000110010000111000000100011101001000110000110010111101110100000101011010111001101011001011100111011011111011111110111111001111000101000011011001111110100001011011110110000110000001111101001110001010101111110011001111011111101010111001000111000001000111001111001010101111010001111011100010101100000100111101011001111110011100101101110011010101101011000000010011010001100010001010100111010111001001010101101010101011100011100101110000011101011100110101000001101010110011001011000000110111000100110100010100010110001011000100001000001101101001000010110101000110110000110111110111110111001101011001010100101111110111010000111101000110110110111000100100101010---------------------11110110110100100111101011111101100100100011010100101001010111101101101110001000110111101100001111100011101010000100010011100111011001001110010000001011000000100001111011110110001101111011110010101000101110000010000110001000001110011110010101101011010001000010100100011001011011010011001001111011111001100011101100010110001001010011010001001010010111101000010101101111111010010000101000100100110010101101011010111001010110111110010100011000100110100110001101111010010101000110100100111110000000110011001010111110111010100100101000011100010001101111011100011101110011000011011100111110011001000011101100001101111110011001111101100110010101011000111111111000111010000000100011101111000101111000001101111101100110010100011100111100011001110001001000000111011100011000001010011110111100000001001100100101110000111000011110010100011000001110100001001000110101001000011101111001010110101100000100011001011111110011011111011000010000010111111101001001001000010101001100101100000101010100011110011000100010101010100000111110011011010101001111010111011110000010100001111011001111011001001101111110010000110000010100000111111011011110010111000000101110010010111101101110110110101001111111111011111111010000001101100011001001001100100001011101110010001110100111010010010001100011001001110100001010010000001100110100110011011011001011010100011101011010001101110111001001100000100011001101011101111000111001100101111011001111001100000101100100111110001111110101101101101110001100111110101001011101010110111010011010110001111100010000010111001000010101110010111100011011111111111101011101010101101000001110011101001000111100010011010101111101100001010010111101100000011100100001101010000100110110110111001011110010100010111010100100101000001001001111001011011110010110100100111000010110110011100111111010011111100101101010110110011000001111101100101110010101111111000011100101101100101000001011010101000000011101001001001011001110101011100001101100111111010011110011110010111101011111001110110010100110001010010111001011100110111000001000110110010100101100100010101110100010111100100000101111000111111111100101101000011101100110101010110101001110011101011100101000100000110001000001111000000000110111001101111111110010011001101011000100111011000100011011100010001000010111110111101010100001111101101001100001001001100100101010110101100001100000101111110111111101111011111110100000111110001101100101011010100000111100110011100110011111110110101000100110010101010000100100010101100110101101000101110010010001011101011001100110110110001011010111011011001011010100010001101001111011010010010101010101110100111101110000100111000011000110001001110000010000000011001010100100010011011101001111101001101011110111101001010011101100011001101100001111100110100101001000001001000110101100111000111000001110110000000011001000011011110101101000001101010010000000000100001111011000011100101011101110011111000101111111100000101010100111101011101011011010100001100011000101110100010001101100000100111010000011101101011101100011111001101011111110000111101100100011011100001000110011001110110001100100001001011000100001011101011110111111000001100010000111011000000100111110001101111111101101110001110110000111101011011110011001111011100000001100101110101010101001100101001011111001000000101101110001011100010000010110101101110010010110110110111000000011101001011101011111011010101001100001111100100101010111100010011100000110010011111111111000100111110001011011001000011110000011010001101000010110100000100110001000010101110110010001010010000011111110000101111100010100101001100100001011010001101010001011101011011110101000011100000000000110010100101100000111111001011000110101011101110011001110100101001101101000100010101100001100111101110110011110011010011010111111000110001101101101000101011001110000110111001100111110111000011001001000101101000000100000110110111100100101110100010111110010001100010010011101111110011100111100000100101011110011011000110010100111010000010010010101111100100111101110010001011110101000000010111111101110000010000010000011000100001000100101100010000100010101110001010110100110010101100000001001000011001100000001000100000100111101111010111000000001101100000101100101000000100000010000011110001000110001011111011011010101100111000110110000010011000010111101101011111001010110011010000101111100100000111010001010101111010000000110111111010101111111100110100000011110001111010101111000101001011100000011100100111111010101110101101001111111111001111100001110011010000110101010001110111101100100111111011101001110011100010011100010011111111011100101100100101000111001110001101010011010010001100111111000010001001011011111101101000111100101100010111111010111101000110111100000100100110000101101001000000000100000000011010011011001011101111101001000010100011111000110011111011001100011001011 +1011111001100010011001010000111101111110000111001111100111100100001010100110000001001001110101100111101100011110010100110010101111001010000101101001001110011100111001011001110000100111101011000101010101000101001011111010010111010000011000101101011101111010110011001000001101110110100000110111011000000000101010101010101111000000100000111000010110100100010101111101010001101101101101100010100011110011010010110110010011010001110100101010101100010101110010010101101010111000011100010111000101010111000010100010110000011001010010100100010011100011100000110111111110011111010011100001101000111000011000110001100010010011011001001110111111111001000001001110000111111010001100010000001111101101001001010110001100100100101010001111011010111110001111010100011111010000001000111001100010010000101111101110001110001101010100000110100010001100110111110001110011100010001000000111001100101001111111001100111101010001100001000001101101010001110011000111110001110000001100111100100101100110000010000010111001011011000111000000110100011111100011000110000011110100100001100000010111001110110101001110000000010001010110100101000110011101101011101110100101000100111011011001001000001010001111101101111100101001001100010000000100010110000001011000001101010110101011101001010010010001101101110100010010000101010010110100000110001011011101100010010011011101111000001110101111101000101000010111101001010011101010101011001010101001011111010011110000101001010111010110101100111011001110001111100101100110000010011111010110101101111111001110111010100100101110000000100011110100100111001010000011001001101110111101110110010110101010100111110100100011101101101111000010010000110011101010100100111001111111010001110000000101010100101010011111100100010101000101000011101011000000011011110101100010001010101001111100000001000110110110110100000001011100011111011100101011101000110000010111100111111010110000000000011110111110111110101001101001011010000111001100100110101110100110010001011110000011011011010001000000010001000011101111011010111001110101000111011010110001111001010011001010101---------------------11000111100111111111001000111101111011011101111011011011000101101010100100000001000000110000101101010011010110010100010010001010110001001110110101010001100000111000000011000000000111100101011010100100011001011000001000111100001001011010011110000101000100011101101110010010110011010111100011001001100101110110000001011000011100111010011100001111010110010001111011101011001010111101010001000010101010111010001110111111110100000011110100100100000000100110100101010000110101001101101000110001111111011001001011011000011101110000001001110100101101000011110010011110101111110101110010111100001111101110001100011110000010001010000111111011111001110000100000101101111010101000010000101111100100110111100000011100010100111101001111010001000001000100100000101101100010010000101110110010101011001101100011100001111110000000110000011001011011101001100101011110011000011011101100111100010010100010100011000010011111101001010101001101101001010111111111100011111101101101110100011101110110110110100000011111100010111100011111100010001111100000001110101011100110110001100111010100001110100000100100111011001101010010000100011100111111110010001111111101010101000001010011110101111111101010100111000010101110001110010101111010001100000101111110100110101101011111101011011101100110101110010101110011100110010100111010110100111100110000010000010111100110000110100010001100001101100100100000010010001101011111111000111010100010110100000100101101101110010100110010111000001111001110011111100111110001001011110001000101001011001110101010010000010001101011000001000001011001000110010001101110100111111100111101001001100101111010000100111000010101111101101011100110001010111100001101100010100000101000010011001101101000100001111100000000000001111101000011110101010101111000110010001110010000100000010001110101110110111100011011101001010110011101011100100010101010001000001110110100001111101000100000011000110000011000100101100011000011001011000101010100000011011110011100110111011101001011100111010100111010110100110111011001010111100011000011011111011110111000101100100011101100011100001011000111100011101101101010100110010110111101011111001110111111100011011100010111000001010101010001101111110110100000001010100110110111111100101110001100001111100110001101000100101010011100100111011110110101101001011001100100011101000010101010101101001101100000000100100110101010011000110101010111011011010010101010100011010001100000111010011111100010001010011110101111111001100110000011110101110110100111001111111111010110110100100011111100100100101110110011100001000100111010000001011110100011100111110100010101010000000111111111011110101001011000101111010011110110110010010011101101110111100111010101011111001101001110111011101111101101110111001010100100101010001001010101001000010111001011010111001010101110010110111001010110001101000100010101111101010000011001011001111101111000001101111101001101110010010101000011111011100011000100011110000011001100011001001010010110010011111000001110100110001100011111101000111111110101101010111010100111001001110000010100010100101000000011110011010011001110100001110010011011101111110000110100010011110110010011100000000010010101101000001010010111110011110111111100001100111110000100100000010101011110011011001101110011000001110000000000000010111010000101010100010001100010110101000000101000011101100000110101111101001011000010110001011100001000110111001001001110010110000110110010001110000000111001001011111011000001101111111101011110101001011100011010000101100000101111110000010110011101000010110011011001101010011111101111001000011111011111010000011010010010110000100000101100011101101110101101001011000000111011010110001000110111100101001011110001100011110111011100000000100010100111100101111011001001010100001110001101100000010011000100111000100011111100000111011100000110011110000011000000010001011001001100001100111111011010100101110100110010000111111000111001101011111000000110000001111000011011000011011101011110110100100011000100110001001010101101111101110000001101110010001101011111111000110010101000000101000111100001110011001001100001001111100101111111110101001100110011110000001110010100001000110011010010001101011001101001111001111101000111001110010000000011111110001010000111010100110101011011111110010000110110010001001000001010001011101001010100101010001001000010000111101010100011001010100110111010010101111111010110110010000111101110110010010101001010001001000011011010010110110000100011111100110010111110101111111111010101011011000110101010000010110100111100010101110011001111001100000001001011011000111011011011010000000101110111101110000011111010100010010001000011100101111010111010011111011110111110000100110100110111111111110010110111100111101001101001000110110101000111101110100110011100110000111101001010111100110011011000101111001011010110000110100000 +0010110001011111110110001100100111100011000000100010000111110110001001111000111010101110001001110100111110010111000011011101001110100100000110011101100101101101101010010001000110110101100000110000000110101010110110101101011011101101000101010101011110010011000111100001001111011000111010110010011000110000111010011100110101011010000110111010101100100000011100000101101010101111111111100101000101111111010000011011101100101001011011101111101111111100100010100000001010010000100011100011011011000111010100101101000000111110101010011010110010110101000001111000001110111011000111011011101111010001010110011011100010010100111101111001110110010100011011011100000101000001110010000011001110001001000011000100001110101101001011101001011000110101011001100110010101100001111010011001100111001100110100101110110011011110100110011011010001011101110000101101011010011111110011101001111101011110011101101110011000001011001000000101111001001000111111011010110011101100001010001011010011000001111101001010100110111000010110001010011100011001110011011100111111001100100111001001010010100011100000100111110101001010110100011001101011010011011111000010010000001111011111101111011100001101000101001100010001100000111111001001001110010001000110011100100100100101100000111111000010100010110100011101101011101111000101110000000000000101000111100011000000110101011010111001101101001111010000100011111110101101111001110110010110110110110110111000010010000000010011101100101100100011010110101100001100100011111101111010001101000111101010010010100110011101100011111111001010100001100000101010000110111100010000101111101000000011101001110001110000101101101101101001000110111100000111011110111011011100010001111001110001001010001111111110110011001111000100001001101110111100111001111110100000000010110001110101011000100100000011011010010100101101000011101111010001101001001100001101111100011101101100001010100010001100100110010001100011100110001110110011011011000111001111001101110111011111101000101011000100001111010101101111110011111011001010111110101000100111100011000101100001000000110---------------------01000010110000000100110010010101110111001010100111101110000000101101111101110000110001110001101001011000100000110000011000011000111110001101000001101100101111111101111011011011011110111011110000001010110010000100010101111110010111010000011010100100111101010000100001101101111000011010101001001100000100111000111011001100101001100011101011110100010100111111000110101000011000011010011110111010000000110110000100000100010010001111110011111110010011110010101111011111101001100100110111100100010010001100110110100011111100010000101110011101100011100101010100110000001111010001101000110100000010111000000100010010001000011111111001110100110101011011001001010111001110000111001000011000001011101010100010000110010100100101100110110001110000100000010000000011110011000110010011000011110110011100010011010100110100110101011111000110101000101000110011111101011001001001010110000011100010111101100001011111111000010000111000011011101010111001001101111111001011110100101011001110000100000100100100011110111101100111001000001010101001101000011110000010011110101011101010011100010010010001010110001010101101111111001001011001111001001001100100100101101011000001101100001010011001001101110011100111110010111000101111110111001101010100101101010101101111111111100111001111110001001111101111101100110100010111001000010101111100111010001100011001110111101110100000100000000110100011001001010001011111011101001110111100001011100010010110000000001001010101110100111111001010101100111100000111111110001011000000111000011111000000101100110110111110111001001111000010001101101110000001011001101110001111011010010010011101101000110001010100110110001100010100001000010001001000000010011101001111001001000011011011111101000011011100000000010110000110111001101000011111101011100110011011101001100110011111110001110110011010111010110110100101011001001000011110011011101000100000011101111010111011100100111011111100101000111000111000111011101100000001101101101011110110001111110011110101100110010110000111101000001000010000010110111011000100110000001011100100110011010001101110100010010001101100111111110101011110101100110110101010001011001101010011100010100011001000011101000110100111001100111001110001110100100011100111101101101011011001101101010011011111110101101111101101001001110110100000010110101001011101001010010110010101001100011111110000001010100101101110110011110010000011010000011100100010001111110101101000101000100011011001111110001100000100000000101000110010111000111001000100100101010111000111011011001001100011100000011000000011111001111111001111111101111111110001011101101000110010100011100101000011001001101101000100001110101000111111001001101010010001110100110110100000100000011000100000111010010000000000111000010010110001110101000110100010000010010010110100000111010011000011010011000101101110010011001001111000111011110010101111001110111100001100100101110110010101011000000100010101010001111111001000000101110000111100011000110010011000011000101000101010101000000000011010000011101010100100000100011100000101100011111000000000101100001100110110100110111010010001100011000101110011010111111111000111011011010100100100101111100111010001011110111010111001001101110100110100101100011011010100011110011011010001011000101011000100100000001110111000100010001001011100110001011100110100101010010111100000101010000001011000001000001011111110011001100110000001101110100100110101010101001100000010110010110111101010010010011000011000101011101001100111010110001010010100100101110001010111101000001010000110011100011110101001001110000011111010101100011100010001011111011100100010010001111100111011100110010000100000000101000011000101111110111000000100000000010101000010100001100001100001110000101000100110000101011100011101111011000010001100011100110110011111101100010011000001101100000010110000000010010010010011111011111010011010010110000011001110111000110111000110000101010000010101001001011110011110100111011101001101010001100001000101110111110101101011010110000110011010010010101100100110001001101111111000101010100011000000011011110110111011001011110111100101000101000010010011100001111011011000111010110010011010111111010010111011011101000011010011001111110110110001001001111101111111000111000110010010011001000000010011111101010011110101011110010100010000101111001011100111110100010111000001001101100011100111001100001101101011010100101101001001111111100010101110101110000100100110011000101000110111000100111110100010011000101000100111010110001011011010011101000001010011110101010000001010111111011000101010000100000010010100010000100010100011111010111011110010100101011001111000000111001110000011011000110011011100101110010110101100100100011100011100110000111010101100100101101000001100010011111011111010101010100110001110011110100110010011100100100010100001101111001111001011010100010110011111 +0010111011001010000101110100011000100101000000100001000011000011011000110111000110011100110100100111010100101000110001001010111011110010100110010011111111010011010111110010110100011101110000011110000011101110011110110000010100111000011100111010011111101010001000111100000001000100010010110011101000010011011100010010101000011111111011111110000110100010101011111000011110111101111000001001000001000110100000001100000011000110101000010110101010101011010010010010011111000101110101110110101101101100001101010110101100111000011110111011010011000011110111111110010010010110100010100100111110000100111111011110011110000110100011111000000001001001111010011101111000100010100100011111010010111101111000000111111100101011010001010100000000101001111110111110011010010111011100000111111100001000100100100001100101100100100111110100110011110111111101011101111010110011101001100000110101101001110111001101111010101001111101010110110101010111001100010101111111010011001101001010101110011001000110001101101010001001111000000000010111101111011111111111001111110001101100110010111110001011110010010111100110011011110110001011010100010000010000010100111110100001001100001000000111011000111011100010111111111101110101101111010000101111010101001111011101011111000000111111111010100111100000111011111111110111011111011000000010001111010111100000111010000001001000000110100001000010000100011101000110010011010100000110101010001000100110010110010000010101011111000001101010111001100011010111000101001010011101001000001000011001110011111100111011000000111110001010010110110100010100101011110011010110101000000001101110010010000110011001000011001000111001100011011000010101001000101110100101010110001000110101011110100111000101110011111001110100100011111111101100101101101000011011110110101010101010001111000110010010111111100110101010101000111001011010010000001111000011001100100111000001010011100101111100000110100101110001001011010010001110110011110110011000011111010111000001100000010000100110100010011000000100110010110100111101010001111110000010101011110110110101011001010111100---------------------00101100111000101001011101010010100000001010101000010111011101110010000010110101111001000111111010110010111111011001011100111111010111100010001010101101000011011001011111010010000101111100010011100000001011010111111001101111100111000010000000010011001100001001001101011000110011010101110110001000100111101010011001000011000000111100001110100000000010011000011101011001011011001001100001010111111111000011001011010011101101110111010110111110001110111110100101101001111101001010111001111101000011001011010101010000000111010000110001110101011011000110111111101101001110100001010010011001101100100011100101110110000011100110010111011010100110010011000011011110111001110110010011001000111010000111010110010110000101000001101100111100100001101010110000011110001000011011001000001100001000010111010110101001001111110100000111010111100000101110010000101001000000111010110100100000000010000100000000100111001111100100010111101011111001000011000001101101101101110101111000110110011001110100110010010100110110000101101010110011011101011111011101001011101111101100110000010001000111011110001110100110111000001101010010111011010000101100110010100101000100111110001100001110110111111100101100100100001010000010101101101111000100100001011101100010001010000001101100110100110000001001101101000011110100101010000111101100110110001100111000110110110001100000100111000110110111011101001110010001100110111100100110101000001110000110001011001010001000010010011110001011011110001000100000111011100001010001110110010101000100011001001100001010100000001001010010110100100100000000100111010100100000011100101101100010101110110000000110111000000111110110001011110111101011101101011101101010000101101001011110000111001111011110110000101111111100000001000011110000001010010101100001001010010000110000110011100111011010001010110110111110011000010111011010011100110000011101000101110100110111011100101001110111001000000101001010010010010010100100100110001111101101001001111100110110110001000101000111101111000001100010100010001100111110111110010001001010010100110001000111011111111101010100011010001111100011001110110111101001010010011000000110000110010000101101011100011111000110000100011000101010100001001011100011111001101111110111110000011110100001011111011010111001111011100001101100101011010101110110000010111000000001001111101100101101000100010101101100101001000011111110010101010110111011100111001101110100110010010100111110110100100000111110110100000010001100010000100101110001000011000011100001100100100100111110001000100110110100011000011101101000111000110001100111111001100010111100000111110101010000001110100101111001111101011001001110001011100100010111000001000001010010100001110101101100111110110001101001000100101101111110000010011100100000111110001111010110110100010000110111000010001111110000101011111000001100100011000001000000101010101000001010001101011000101011111000010011100110100100101011010000011011011110001011001000110111010111110010100100101011010010000110110111011110101000110010010010111111110000111000000010110101010111010110010101010011111111111101111000110011010001110101010010000111011110100010000100101011001010111001110100000010000011010001110000010010101011110010101100100010111111001110111111000110011001101000110011010011000110110000001011010110100011101000000010101000100000100100101010100011101111001100010000000110101000000111110101111001010111110011100011110101101100001101010110001000100011000100101101111000110000001100000110000000101101010011100001000101111101110110101100101011000111101011011111000011101010010001011000010001100111000000001000010100011001000101110010010111100001011100000110010110011100001111011100001111111111110010111001110100111001011111110111000110011111110101101001101000101010011110101010101010010000001010111111101000110010010110101011010000101101000100110010101010111011100101011001001010100010001000100111100010010101011101000000001011010010110101111010010000101010010111110001010011100000000100001001111110001101111100101100000110111101100010011011001011010101101010101101001010111010000011100010101111100010110010111010111100010111011110101010011011000100010011111111000110111011011001101001010101000111000101011001001111100100100100111001000101000100011100010001011110011011100000000010100100010111101000001011010111110000100010100001100110110111100010010101101000110110101000011111010101000111000101101111011110010100011001011100001100000100000110101100110001110011100000111001011011110110010101111000011000111000011010100001110001101000011100010011111000111001100010100110111101001100000001101011001100011000111100110000000010100001011001100110000110111100101110111100110101111111101100110010001110010101101000011001110110011100111010011011110101111000101110101101101011111101111100110011001010110100001110011101000000011100110010100101 +0110101100001100110101100111111010001000000100000001101100111000101011010011101011111110110011111111101100011110111010110011011011010100010010111100011000010111011011011111101110010110110110111000010101101011011110001110001101011110101101001110100100111000110000001000011001100111010001011100001100110111111011110101001110100010011110001101010100101001100010110100111100011110111101100100001010111010100010001001001110110001000111111111010011011000100110101110110001011111100011110100101010111010100101000110101001001010111110101000101111101001110111001111011011110000011101111010000111100100011111111001000011011100100000000011101100100101110100100111011010001100000100101001111000100000000001011110101100000011000001110100000010001100010100011010100111111100111101000111001101000111111100100101000000000110011111111000001111111110100111101100110110101001000111010011110010000100110011010111101001111110110000001000001000110011101010100100000011000111111000011101110010010101110111110110111101110001011111111100111011100010100010100100100110000001001100010001100100100001011011010001010100001011100011111101001010011000101110011000111011000101010101101100010011001010110000011110010011100011110111100000000010010010010111100110111110110110010100101000010110000101111100100010100110001011010101111101111110111100111010110001101010011100011001111100011011110001001010010101101110111011111010111010010111101111011011001111110010011111100110111111100001000111110110011101110100001001111101001000010011010101100011011000111010101111011011111000100001101100011100101100011101011001010011001000100101001111011011011011011101011000010111000010111010110110111000000000100001001101100000000101011101111101101101001011111001101111011001000100100110101100000011001001010011011001000110111100010111000101001100010011010001100100110001001111110011000111111100101010110101000101110111100000001010000011110000000010111101001101111000101101110010111001001010110111100100110111101100100111011101111100101101110101100010111001110001101010000110111111011011110001001101000011111---------------------11001010011011000011001110010000001100000100001110110010001010011001100110101101000101011001011101101000101110001010111100000100001100010001100101100100011010011001000110000000111000101111101011110011001001001010111011011000110000111000110001001100110110100101001111000100011011101010101011111100010110010000000100100101010101010011000110110100101101111101000110001110111011111110111000000011010001101110001011010101010110011000011101100011110111010100000011100111110101000001101100101010101001000100100110100011000101100010111111011011110101000011011101001110110010010111100100110100111111011100010011011000001001001000110111110010100111000011001001101011000100011100000011001111000100001111000010011111111001010100011110100100010010100100010111001011011010101001111111010000101010101010111111100001100100001110010111010001110100011110001101000001011011001000000110101111000100101010010101001101011001010110000100100110001101110011110101010111101010000100110111011011101110110010100111011010101000101000001000011100011000000100001011110101111011110000000101000101110111010011101001011010000101110110100111001000110000011101100100001111101100000101110100011101111000001101001111000110110000111000111000101011100000010101111101110100101110111111100011111011101111000111100010111001000101101101000010001110101000101110001000110110010110110100001110010000111000000110000011001000010011001101010111100001101111001010000011100110111100111011101001010111110110111011001100001110001101111000010010000001100001001001100111010100011101100001001110000100001101010101010100111100110001110001110011111010000101011011011000001011001010010111010101000011101011111000110011010010100110100010001101010111111010001011010110011000011100011000111001000110110110010101010011011011100111000001000010101101001011011101000111000110011011110111011010011000011011110001101000011110011001011101101000101001010010111110101100011011101101000001110101000011110001001110000000111011000110111010000001011111001110010111001101110111100000001100011010110001010110101111000101000111011011111100011011110010010111011100000001101011011100001100010100111110011100101010001011101101000101100101100011010000110100000110000111000100001010010111110000000010100110111010000010010001011100000101011101110011110011100100010100000110001011000101110100000111011111010000100001010010110100000101011101010001010011111111001111011011011010011000100010100001101001111011101111011110100110111101001001000111010010101100000010100100110011101100101110001011100010110001110010001001010011100010101010010010111000101110000101000010101000101100100011110101011111001101111000010000100110011110111100100100101110110011110010101010111000101100100111011100101111110111011110111011100000110101111010011000011110001001110110011100001011100110101111110100111100001001010000111100010111110000010111011111100011011000110010101110101011010001001100001010100010000101111100101100011110011100100011110001000100110011111110111010111011110110001001100001010111111100011111111010011100001010110000100110000010001000000111111111001110000000100001000110010001010000001100100010111100110110101001110100100101011101101100011001111101001001001001101001010110001000000011111001001010010100100101111110111100011111011101100111011001010011000000010011110011101111011010110011011001100111011111101001010000011011011000000110010111111000110000011101100010110111000001100101110101010010101101100010001011000111111101101010011101110001010010111010010001011100000001110000001111001000001001001000100001001001011011110110101100011011101000101010111101111110100110011010110011001111010101101001110110111000110010111101011010001001010110100001101100111111010111011101001000000111110111001000101010000001000010110010011011111011010010111001110111011100111001101000100010101100011010111000011111110110000001101101110011001100101001010000000011000111000000010000111101101010101001110010101010110101111101001001111011001001000010010000001010001000111011111111101010110001100100111100001110010010010000001101001000001000000111100100000001100110010000100110011110101000100111101100110011111010111110101111001001011011100011101011010101100001100001100100100101011111010100000010110001101001000111101101000011001101010110111110011101110011011011110100011111101110111001000000111001010000110110110110000111010011001100101000101000101000010001000111010000011011100101011111011011001000000110100011111010110100100111010100100111001000101000010110111010001111101111010011011101110111111011101100011010010100111010100101000111110001010000110111111011011010011000111011110001100000000110001111001100010111111000110111110000010110011001001101001010000110101100011101001111001101111111011111110110111001110010101111100110010010011001111001000110101001110000111010111010101010010000001111 +0010010000100010100110010000010110011001111000111101100111111000111001001110111110110011011101101110000111101000000011101011100111100110111001101010111100001100001100000000000100101011100101100011101010000011011111110101000110111011011101101001111100101001111001001011111001100011011011001111100111011000001001001011000010011000111111000000110110101000111010110010101110101111000111100110011100010101111001101001100100010101010001110110000000001100001110000011001010001101011100001000001110011010001001111111111100101001000011010010000111100010101100110101111000101111000111001111111010010010111001000100000111010101110111111011011110011000101000101001001001101001001110001010110001101111011110011000001011100010010000000111101001001110101011010110001101011101101010110000011110100111011101011010000011000010110001110011000011110011110111001100000111111001010111111110011101110011001100010110001110000100101110111110110010101010010011111000001001010110111011111001101101110001111000110010110010011010111000101011101000100101111011100001010101010001100101010100011111011100110010011000011010010001011111110011000100010011010100110111010101110001111011100111111011000001000111011110001111100001000011000000000011011001110010001101010101101100011101000101101001101111110011100100000101111111110010010000100011110111010101110111001011101011011011110101001001101001101000011100110101111010100010101001010101101010000000101100100011111100011011010000110100000011011011010000110101100110000000010001110000101011110101111010101000110011110111101001001000101110110010010000001001101110101101110101010011111000100100010101101101010100010010000010010111111000001010100001110001101000100101011100101111101101001110000000101111110101110100011000000111101111011110100110111010111010000011000011110110011101101000010111100010011101001100000101100111001111110011100110110010001001010101101100101111011111101111101000110010110110000110001110110001000001001010101111000110011001001001001111101101111101111111101111111111110110011101111110001000010011111001010011011101100101010---------------------11011000000101111100001011011010011011001111000110100101100111110010010111111000010100011011010010101010001100011010111001000110100100001011001000101100111100001110110010110111100101110011101010011010011110111010010100101111101001001010001000110001100110101101010010010111101010101110010010001010000000000011110001111110110010011000001101000100110011100101111111101100001011101001111111001011110011000010001000011000111101001010001100000100001101000101011001110001011000001110011000010000101011001101100101001000110001001101010011011100001001100000111101011000100111111010001010000011010111010101000101101000000001001001011011011000111101010000111010000000110111011000110000101100100101100001101001001010011100100000101001101100110000110010000111001001100100010010100000010011100010000010111011110011011111000010011110111001010010101001101101101100000011110001010111000110110100000110011001100110110001100100010011011010011110011101011111000101010000010100010010011101111111100101011011101010011010101001110100000110001101101011101000110001010010111000110010000001111010111010101001111001000110010110100110011110110001101100100001110000101100100001010010101000110000001101000111010101111010101001101100010010111010000101100111100111101000010101101010000111110011110111000100100111011101010000100010001001100001111001010000110101011101000100100101001000101011010110000111101001001111100110111100101101001101110100010100111111011000110100100101011111011011011001001000011011110001001111111111101011010101010110001010110000100101111000100111011100010100101011000111000111010100010000000011110001101101111100000011010000011001100100100110110110010111001001111100000000111100000110001101011011010010101101001001010000101001111110100100011001101011011001110001000011101011001011001010001110111010110110100100010010000111100010111011100000111010110111100111011101001101110101010010001100000111010100110011010010011110101101001101011001110001000110001011000100000001100011110101001010101111101000100110011100101000100110100111101011011011101001010001001000101001001000101010000100110101011110000101110000100011001000100001000100101010110110000010010010011110011011101111011101001111100110101011010110011110001101100010110000110010110010100010010000000000000101010111111110110110001001000000110111100111101100001010110111100100001101100001001110011011111010111101100100111010001110011111001110110111110000100010110001100011011101001111101101111011000001011010101011011100111010011010011110001110111001000000110111001011010000010101011111010111111011000000010001111101110101111111010110101000000101111000110111100111001001111100100010100011010000111010001110000100001010000010101110000010101010111001110001100010101101011000001011011111000011010110110100001000110111111101100101101101111010010100000111100101010110111010110111111100101100101011100111000000000011000010011001110000010011000111110100010101111101111001111011111110010011010011111011101001110010101001000011111100011001110010000001111011100010111110011100010111100010110110111111111101110011111100110000001011110000010110010100100010111101011001110100110000100101010100111000000001111100001001011001110110000000010111011010100111110101010001011110000010011101010010100011111010111001111001010000010100110000111101000110000101001010110100111111110110101010000011010011110101110111110000001001101000001101011000101101010100101110101010101011100000110101001011001110001001100110101010100000000000001110110100000001001110000001110010000100111110101010010010101011100101011110011101100001110110011001101000111011100001001100100100011000010000010101000001000001100010100111001111010000000110111100001010011011000001100011111100101000001100011110100001111110011011010101111001011011000111111100100010011111100011110101010010101111011110110010011000010001111111100111100001100001010011010001001010000100110110000111110111101100010000011000011110001011100011110000001011011100001100001011001000101100000101111011010010011011111011100110011101011101100000100000101011100001110100001010000100000111101111010101111000000011100011001101011011100010001011100011000100011101111110101101110110000011110001001110111011011000011001010110100000110010011110011011001100001111000111110001110000111110011011110001111100000011101011100011000000110011110001101010000011101101110000110110011101000001001101101110010101101001010100100011100011100010010111011001111000000010001101011101011100100000011001110001010011000010101101001010001110001001110000110000100010011110110100100010101011110001000011011110110101011001001111101010100111110101000010001101001110000111000011000011011011111000010010011001001010010101011100101101010100001101001000001001000101010010101011011001110110000110100111110011010101011011100010010100111100101010111001111100110000010100 +ls208msgs +1111010000010110101111000110111111111010011100010010110110011000010100101010011101111000001000100010101001100011111100001010011001110011101010100100111100111100000101011110100101100100110011100011010010111110001000011000110101001101101100010000100100001100110000100011001111110100101011010000001101000110011011011110100000001110101010010111010010101100000000011001101110110100011110110110001110001110000100001101100010011110111101011110011111101101000011001100110000110100110000011111110011011110000010001011110001110001001111101001101111101111011011111000111111110110101111000001100111101000010101111111100111100001001001111011011101011110100110111011000100101001101001101111011110000101000100101100100101011110000000110010000000001010111011010100000110111000100001010000100111101110101000111000110011000100000110100001101100001010010111011101000100111101110101111010101011101111011011110111101111110011110001000000101110100101000000010011101000010010100110011001000010101011000110000010111101000010111000110010100011111100100110001100111111111111100110101000100110011111110110001110101110111001010000101011110110010100001100010100001111101001010011111011100010100110000001100101010011000110011101110100100000011101011011001101111000101101010101001001011000010100100101100111110111000011111011010001001000001110100111011110101011000110011011001100011111100010111100110100001111110101100010000011111001110001001110111100110011011011011110101000110110001001010011111110100001111010010100110011110111000001111101101011111101101111101111111100010000110111101101111000111010100000000011100000101110011010011000000000101100101001111101001101010110110010011010111100100000000100101000011010110010101011101010001111010111101100001010110011010110100010110010101110001001101011000110011110101011101111000001011000101001101001000111101011001011011100011001000100011010100100011111001101010001010011001011011111100001100101001110001110011011110111111000000011010011110001010001011000111011011011110111111000100111101000010101101101110111110010010101001010111010000100100111011101101000111100100001010000010010110101101011110011010001010011000010111100101110100110000011111100011111000001010111010010111011001110001010000111101000111110100111010101101100110000000010010111110011100011110000001111111100001000110011000110101000101111000101100101011010001101110100011100010000000011001111011000100111100100000001010110000111110111010100011101101100001111100100011001100110010000010100000110011101110100000000111011110000110101011110000110000001001110001001011100111111000011010110100110100111010100111111001011101110111100001011000010101011001101100110011000111010110101010111110011010100011111110011101110011110001100101100111010010001001001101110111001000101111010110001100101010011001010000000110011011101111110010101111011100101101100011011101001001100001011101010110001101011000010001101101011111011000101010010110000100000110111011000100011010111010110100011011100000101101001110111110000101000011111011011011100111011011110010101100110000010000000000101101111001011000100101100100110110111111111010111010111111100001010011101011101001101010011100110000100111011000010100111100001101110000110011111110111000100100001100110100101000001100010100100110111010000011000100010000001100101101000100111010110100101001010111111111011011110100101011111110001010111001100101001110011101110010010110101110111111010110000011011111000101101110011010010110001100011000001010001101100001011100111010001111000100011110111011010011000101111101010111110101010101100100111111010110010111101100100111010101101100100111000011001111001010000000110001000001011001001001100100011100111101110100000001110010111010110001010101000010011101100101110100110001000110111101101100111010110000001011110111001010001100100001110010100101010010111010010011001011000001010000010100001000010101101000001111111111010101111111101000010100111110111101111000011111111100110000111111101111011010011000010000100000100110101100110110110001011110001011100000110101111101011111110001000001110011001001000110101001011000010011011001101110111110010100101000101011100010111101100111111011001111111101011001010010000111000010000010010010010000111100011101011011100110010111000101110001000101011010010011001101111011110110011110101101111101110111000000001000000001011100110000110000001101001110001100011011000000110110000011100101111011110110001101100100110101011001110011101111100100100010100000101101110010100100010011111010011000101100010001010110101011000111111000110011101011010011000111011011101011101100011110--------------------- +0111010100101111010100101010000101001010111111111100101001000000011111110110110111111010000011110010011010000100011001001101000001000010000011101101001001100100001101011110000011001001000110101100000110011011000010111011100110111111100001001011101110011111110111101101001011000000101001101101001110101010001101000111001100110011010000110010011111110111001010000000101100101000110000000110011111110011010011000101000010001100000000011000110110000001100000110110111010010011111101110101000111111100000011111010110100010101000111010010000000111010011000100011100111111100110100101101010100101111101101000001001000001101001100011001011010010011001001011101011000010100101110100001100100111111010110101101110000001101001001111100011010001011110001000010001001111111101101000011010000111000011100001011001000000110010110000100010011001100011101111011011011000010000001001110110110000110101110010010100111111100000000111111101011101011011100110001111110001110011000111000110010101001111111101101001000101100000100111111011110000111000110011000111011000110011100001000010011001110010010101000111110111100010101000000111000011100001100111100001011001000001011001101011100101010001011111010111110110111100000000100100110001111111101000011111101000000101100001010110110110001100111010001000101000101101100000100101101111110100001110010000101011101001110000000010011001101010011011000001011111110110001000000000001111011000101011100010010000101100011001000011010110011000110111100101000001010100110000011011000010010111100011111000111101001010111111010001000010111111010010101111001100001101011010110100101101101000000100101010111100001100111111110001001101000100110001111000001110010100010111100111001000010110101001011111010111101110100010111011110001101100111110011110010010100111101011010101110010100001000001010001001100110110101101110100010001101100100111100011110000100110110100011010011111110001010000010100100101001000011001110000000110110001010111011011000011011100111011111111001010100000101000101111111011100100000011010110000100011110000011111100100010110001110110010011101100111000001010101110010001011100111111111001100000111101101111011010111000000001100001001010001000000111000111011111011110000111101010110000011000111011000011011000011011111010010011101101010110000110011100000101000101101100110111111100100001110111111100010001000000100100001010010000000011110110001110100100011001000001100000011101001101001110011110110000010010111001100100001101000000111100000001110001101101101000001001010101101011010101011011101011101011101001000111110111011001001110000100111000111110011111001111000100010110100000101000011011001100101111110001010100011100110001110110010000110111000111011000010011011111011011111111111111100001010101111000010111100111010100011111000010011110111000000010010110010111001011110101101101011101011111111101000100111101101000101110110001110110011110100001100100100111000001001000011101101011110100111011100100010001011101111010010001011111000010111001011001110111001001110110010010111010100111000110100111000111000111000110100000100011011011100110110110111111010110100000000011110000111110100100100110100100000100010000100111011001111010011111111001110001001011001001010101001010001010100010000001011101100001100111101010011111010111000110110011010101111101100110001110110011100010000110100010011101001111110100110111111110101110011111110001101001101100010001001010000000101100100101010001111000110000101010001000100001001011101001110100011101010110011110110011011000110100110101010111010101111110111101000101111101011111100101100101111100100101000111110111101110010011101001001000111101001101100101110110101001110010010101011011110010001111011101010101010001101010101001110100000111000001000101010111111011110110010100101011011011110011111000101101001000000000111010001111000101010011111100110011110010111111100110011000110000100111010010011011101000001111110010000001111110100110100001100010100100011100100101101001010111010100111111111001101011101100010110010110000110011011111001000011110001010001010010000000101111110101011110101100011011111111111000010111101010011100100001000000000011110011000011000110010011001100110001100110101011111100101011000101100110001000011001011001100001100111001000100101100001010011000011011100010010001011100000000100001101000111100000011101011101110011100000011010100100101110011011000010111001101010100010010100110011100100110010010110000000011000111001011101110110110111111110100000001010110011010101010001111001010000010000010110000110110001001001011011111111001001001011011010111111010001--------------------- +0001001110010001010001000100010111011110100010000101011010010011101001100011111110000010001111110000101101010010001100011000111010001111000011100011010110011101001111110111001001011001010010011010111111111101101101101110111111110010100001111001110101011100100100010101011001101000111100010000101000100110011111100111001010011110010001001111000001101110010011100111011000111000101001110010011010001001011111101011100111001101011111111011011000101010101110110111001101100010111100011110101001011000011110110100111010001110110000111110100000111100001100000001100011001101101110100111010111010111101110101001011111111011110110011110101011000100000001010010111101110001110010000000011000110000010101110001011101000000100011110010100100110101100010111001001011010110010001000111011010101011001111011010111001101011101100101011000100000110010011111111000101001001111010100001100011111010100001011011101001100001110100111101000001100111110111010111010101101101101001101000100010000111110000111000101000000101000011000011000000001100010101010011010001100110101111111001111101010000001000011000010100011001000000001110110111101000011010110011001011110000100000100110110110010100010111010101101010111001111000100100110111101001100111000100001111110001100000000001000010000111100100001000001010010100001000110111000110100110111100011111111011110001001011101111111100100101101001010110110010110010100101011110001011010110111111111001010100001101100111010011100110111010001110000110011100101111101001011001001010000010001101111001110101010011011101001000010111110101011111011111100010100100001101111100000000100111111100011011110100010101110101100001101111000100000111000110010101011111101000100110011111010011101110010110010111110110011011111110001110110111000000010100110111010000001100001001111001001001110100010110100101101010010010110100011010110010100010011001111101011010000110101010011010110111011110000111110111100111110101000001100101010001101111010111110100000000011010011101101000110001011111011000011000001000101010001011011010000000011010100111000011110011010011000010100000101110111010010010011011010000000011100011000100101000000001010101111001010011001001010000100001001111101011111011011011000111111010111000111101010001000111011001001101011100010111001111101110011110110101001000000010100110100011100011100101011110111000011001011111000110001000001001110111001101111111000110111001110110001001010010010110110101100101001110000001010001001001111011101110111100100000000110111010110000101011111000101000010011000001011110001110100010010111011101011101111000110110110010101110000101100110011110011111101111110111101010100101001111110100101000001000000111010010011001110100010100111111000010110100111110100100001010111001011111100011000111001100100011010001111100000110001110100011111001111011010011001000111110010100110001110111000000001000010010010011011111010110101111001111111101010101101100111001110011001000100010101101000100101111110100111001111011110000001001101110000101011110111011011010101000100010011001110100101100111001110001011110000010000110101110000101111011001000010101010110110111011000100001010010100011101010110101101110101111011111000011101100111010010110110001000001011000011001001111011101100100110000101001111110110111111010111000110011100011110001101010101100100100100011001100011001100001101110011110000100101001100101001111101010100101100000110000001000000000101000111010110101111111011000000110111101011010111001100100101000001101101001010010101011000011000100010111001111001100010000000101000010100011101011101111011010011000110111101110110111011011010010001000011001011110101000011001100001110110101010011101101110010001111111000000000011001001100001010100110010001001111001010100111010110101011100111101001011000110001111001010010111011001101110001000101100101100001101111111111001010010110011001011000100011000110110100110100110100011111111101101111011111000101111100111111101011011011111001010100001101111010110011001011001100100111000100110010101110100110110010101010110010111000011111110010111111010001001100110011100010011101110101001101100010001001001100010001101111011100100111101101001011000010001111000000010011110010000001010110011011010000100110111011010010001010101000111100110001000000010001100111001110110100111001001010101001010010110001110110111111001110001000010100100110100001010001110101110010101110010100010101000110111111110001000000111111110110010010101110111001001001010010011001001001110010100010111110111101001100110001010001111100010101101010010111010100100010010111000101111001101111101100001000--------------------- +1101011001001101111010100100100100101101011010100110110011000011011100011110100011100101011101100110110111001001101111110011100000110101101100000111001010111000001010000010101000011011010110001001111100011100010011011010011010000111001011011000100101110011101000001110111011001010001011011111011000011111110011010101101100100100101001110101000000110000110001001011011111011010101001111111111010011100011010110010010100101110111010001101000011010100000111001001000000101100000001011010010101000101001111010101010101101100001011000101101101100011101000010000010101101101100010110001000101010010011011010010111010100100100000011101111110110111111110011001000001111011100101010101001000101100001110001010011001101010011011100001110101011011001111001101110011101111000111011011100101001001011011001010011100001010101111010000010110110100100111010011101100111111110001110000011111000110100010110100101010001100100001110000101001010010111000011100111111010110101000000100011001110011000010101101100101111000010101100111100110011111101001010001110110011100000001101011001011111111001000101101101010010111101101110110101010110100110110110001100000000100010000110000111111010111011001100101110000001101111111111101000100101100010001100110101111111010001001011011000110000110011100001000101110010001101001110001100000010110100100111101001111111110100100111001101010011101111111000011110111110001100010110101100111011110100001100000010101001111010110001000110111111101000100110101111011010110111110100111101010100000100111001000100111111110010101100001111110100001110100010110000001110000111110111100011010100010100000101101001110011001111011101010001001011011010100101100110101011001111110101011001110010010111110101100000111001011011100100111011100110101111111110011101010011111111000111011101000110101100111000011010101101000100000011110100101010011100000011000110000110011101110101000111010001101101000001101010111100011110011011010010000011101011100111010011000111001100100001101100011011010010011110000011001000000100000001000000011110100110011110101100100100110000010101001110110011011101111110101100010101011100111001000001011100101001111010001110100101010010101011000011111101110110110111100100001001100010101011011101100111000000001000001001100001010011110111100101101110001010110111001000011100110001011111001011111010011110010110111110111100110100100111001001110000011101110001011101111111010001001000010111000110010011001100101110111000011100101110111101001100100110100001011110101100010101001010111101111000101111010111111011101000000010010111010001110010011100011011001010110101110001001010001100110001100010100011101110001110111011101010001000010100100010100100001010001000101100001111111100000111111010011000100011000110010101001010101100101011010100011011001111111110010101110101010101011100101001001110111011101000110001111001110111001111011110110011010111110000100100111010110001010100001010110100110010111100011100000011111011111001111001100100110010001000111110010010101000110000100100011011111011000100110000101010000000110110101011110010010101001111100011001010111110101010000011111001101001100110111000100111011111001110101000000110111010011100001001101010101110101100001010010101000010000010111100000000100111000000001011100001110010110000000101001011110101000111010010000101010000001001110001111011000111111111001101110000110000001111110011010010110000110000001001110101111001011000100000101001000010001111101110011111011100001101011111101010010000000000100010101000010111100000100100110000000101010011101111010100110111001011001010110111011000110001111100110100100110101111110110111000111110100111111010000010111101101010010001100111100110101010000000011111110011000100010110100110010001011100100000001110001110010011011111110001001101101100000111011001010010110001111101000011010010110011110111001010110001100100010001000011100101100110111111011101010100011001110000100000100110001101110111110001111000011111100011111000101010101001001010111000110111100001111101100001100110011100001000100101101101100100011110011011001101101000101010010111000100100101101011101010101110000000111000111011101010110110110001000110001101000100101010011100100100000010100011111111000101110111000001101100101110011101001101110011100000011011100100110111011001000001001010100101100100010001001111101111100110011010100010011011110101100101100011110100001101000000011000010000110001000000000001011100010101001001010000000100110000011010100110110010010000111111000011011000111110110101001100110010010011100100100110100000000101101011011110000101001111001010011101--------------------- +1011000101110011000111000110000000010001110111111011000000000010011011111010010110000100000100001110111010001001011111110010011010001110010100011010000101100111101011110000101000000110001101000010000110010010100011001100111101100100001011110110110011001001011111010100001000011100101111111010001110110111010101000110100010011111000100111001011111110101011011001110110010110110010000110110101011010111001010110001110101111100011010111001101110111000000110100000001001000011001100000010011010101101011101100000010100110011011010000010100110101010100001000000000000010010010011101000010001001101001111000111101111101001111111100011110111001100001011111000111111111101111110001110011111100011101011011110101010010101100001111110010001001111110001010100000011111111001001011000001010100011100011001000010000011011111111011010111111010000111111011110011100111101011001101001110011110000010110010111110011011110010011101011011100001110110001010100001110111101001111001110101111001110111100000110001110000111111110100000000111011011101010101111110010111111110011000010011011000011001111011111101000001111100000101011001101110101000101010110100101101111010111001001001100101001000111011011100000001010101110011011100001011110000001000011100110001100111001111000100010110011111101110010101010000011111010110011100000110101000110101111011100111000100111010000011111000011000101000001111000100100001010100000001100101111010001100011111000010111110110110001001010100111110000000111100001011001110101011100011111011110000001101011000001101111111111100001101111010110011011000001000010111000000001000111100010011110111110011011101110100111100001111000101100000000101000001100100011101001000001101000010111110011011011001111110010100000111010011010000110000110111100001110110111001001001001010100111111000110011100110100110101001001101111111111010001101111111100000111011100000110100101111011011100011100111110001000001010111001100110001011100110010000010111011100010111000010110110000001000011010000101111000011111001100001101010011011100010001101111011010010100111100100011111101011110011100011010011111010001001100001101101011001111010110000010101001100000100101001010101001001100101001100010100001100000101101000101111110010111011001010100111111001001100001100100010101010000111000101011110110100000010100000001111100101111100000001000010100000000001100101010110011101001101000110111111101000100010110001001011110010100101100011110100000110001000011110111000010000001010110011000001100110110100111000110100000000010000101101101001101010100010010011111111101111001111111000101111000111101110111110100010101001101011111110010010111111101111100100010011011001011100110111110111010101011100110000100100010100011001000000011111001110111110001001011010111000011001111001111011101101001110111111110000100110000100010000101011101010010001010010011101010111101111100100110111000110111101111011011011101100000110100011010110010101110010111011010111011110110101101011000100110100010101010010100000110000101101111111001000011011111110101011111000110000101111010110010000110011010001100000100100110101001111001010101000111100010110011111101101011110010101011101111100001000100111111011100001100001001110011000101000110101111100110110001001110010000111011101011110101101101001011000100111010100010010011111111010011011101101111010001011110011100000011011100001010010001100110010100110011011101001111001010101010100100001011100001100110011101001001110101011111111100110010011000111001011101010000101010000100100110110001011101101101100110111110000000000000001000000100111101111110100000111110000000001001000011000010100101101100010011101111101011100111101110111011110100000101100110101001001100101100011111000101011001000010100101001100000111011001011100001001111010101000100110110010001011111100001010101011111010001010000100001010000111010111111101100110000111101000111101001011011111000111111000110010110000110111101101001001001101100111010001111110100111110111101000001010011111110000111011111111000011111010100110100010010001111110000000001000101100100100110110101011110000010101101000010000011100100001101111110101010101001010100011111011101101110000010011010000100011100111001001101101110110000000101000001011011111111011100101001111000110011000101100000110100100101011001011000000011111110000010110001011010001000101101100110001111010111000010100110110000011010001000001011110000001000111010010000010101001010100010111001101000100110111100101101001011100010001111110011001001001000011010110001111001001110111010000101101001101010111100001100100010001111010011111000010100100--------------------- +1111000011001101010011101000010010011100011001111010100010110010001110100000011010110111101110111110101100101111100011000100011010100011101001010011011001111000100001101001110101000011001111011010101011011000010000110011100111100000001111101011101010011101110110001011100011101011011000000101000110111000100101011000110000011010010111001001010010011100100010100111101010000011010100101101000101110100110100000010100111101000111110111011111100110101101101000100110001010101001100111011001011110111010011001110010000011001000010000111000100111001000000011011101110111111111111001000001011000110111011000000010011001111010010000000100100110101000001000010111101000001110101110111100010110111111001011100010010110000010011101100000111100101000001001100100010111000110111010101111110001110101011010100001111100111111100000100100100011101111111100000011100111100111000101010011100010110011000101101101010001100100001001111010111000011001100111101000101011011111001001001011010100001001101000000010001100110010111100000011111101101111010111010111111111000011001101110010101011001111101100000101001100100000010111101111011101001100000011100011000000000110111011000000101111111010010001011100001010000001001011010011111101101001010110011000001001000110100101000111001000110011010100011011101101101011000100000001111011111010011000001001001100000110010110100111010000001001101000010000100011011010100011101110111110010101000100100100110110111101001111111101100010011111011000001101100111000100110100010001011011011011001110010101011000100010101101111100101000000011011111000111000110100011110101010010010000111101111100110011011000011010001010100010000100110011000010011011010111000100000110001011000001011000110100011101001101100010101100111010111101100100010010110011111010111000100000000001001101110100101101011110000111010100101001110100111101011101010110000011111001101000001011111111001101000101110110000100001101111100000101110010110110111111111010110100001110100000100111101101000000101101111111000010010111110011011001011011111100011011000010111110010100000001011010101000011101110010010011110001010100011100110001000010000011010100011110101101000111101001100100111001000110100110100001100100010011111000000001111101100011100100000000011001101101101101001001001001111110010101110001001000011100000110000100010001011101010011001000011100100000110100011110001001000001000010110000011111100110011100010000111101100001100111100111110110001010011100101001001011100000111000010111000010001110110011011011001000101101010000101001111000000001100111010000100110110011011010001010000000110111010110011011010110011101010010101001010110101100001011100000010101000110101110110111100011111100100011010100001001100110000011110100011000100110100010100111011001010111111000111110010000111011011111001011000001100010100011011001101010110000101100100100010011110011110101101011110100111101001011010101100000101100100001010011110111011000001011110100111001000100101100110100111010010100001010001001101010001100111001000010000101001100100001111001111110010100011110101001001010001000001111011011110001000001000100100110000100111011110101011100110110001100010101000111011110110010100010100100010011010110000000010000110101111110110001010111110010100110000111100110001110100011011110000010111000101110000010000111110101111000001111110000101101111110100010010110111100001001100110000100001011100011010100010100010111101101001000000111011101100101101010000001000000110011011000111111000000001110111010110010111010010011001010001010000100111100100101001011010101111001111000011100001100001111110001100101101110100100111001010110100100110000001111101010100011011111001010110011011001010001101110010011010000100100110001110101011110010011001001101110111111001001011010000110100011001010011010001000010010001111111011101101000101100011101100010111000000111010111001011010100101001100001110000100100011011111000101111110110101111001101010010010111101100001000000011110001110101010011101100100101100001100001111100110101011111010111111010110001001111110000110101101001110100011111001001111111000111110111100010000101000110000010010000101011101110011011101101000100010111111100101000100011000001111110111001100000101000011010010111000000101111011011001010010001111101011100111111101111100000010000111110100001110010101001011010001001110100101110000111011101100101010111011000000101111110010001001111100101101001100000010010011000110100011001000000011000011010111110111001101000000001011011110101100111000011000110000001010101100001110011010011100110001100110010110010000101101000011100000--------------------- +1100100110101001001100010111101011101100100000101011100000110010101111000011101100111010101010000001110001101110011011010011111111011111101011111110010101100111111000101110111101010110010011110101100110011100010010010100111011000010001001101101110000010010001000111001011011100111111000100100000100111110111101110101001001110000111100010010011100110100000101011011110001011111111001101110110011101110110010100101001011000101100010100101100101001001011101011010011110110000111001101011101011101100111111001101110111001111000001010111100100101010001111110011000110110000001111010000111001110010100011100101011111100100010111001100010011001100000100000101101001110000000100100110110111101110001010011101100110100011101111011111001001110111011100110100011100010000000001110110101000011100011001111001111111110001110010000111000000001110101111110101110111110100100111111000101000000111111110000111011001100010100101010001001010010101001110111111110001100011001110000110001000011110101011010000001001100000101010101110010111110100001100110000101110100001010100100111010010111001101010110000110100110010111100010011101100111110101101100111011011010010110100011000111100100011010110011000100101100100000111101001010110111101101100000101001111000000111001001010101010001011011111001110100111001011001010010101011011011000010101011111000111001011011001100101010101011111011010100111101010110111110010010000011111100011001011111111000100100000010010001110111001010010010110001010101010001001111011101011110000000110000111001000011001110101100110101100100111101010010001001110101000110111111011110001100001001010010001100001000110101001101110111011101101001101001000001011110001100010001100000110111111010100110011000110111001110001100001101000010110101010111111111110000010111011101101000000100011011110100011001110100101011010010000010000101010110011100111110001000000010101111110110010110110011010001000001010100000001111001001100010110101010100000000101101000001011001101101001001100111101100111110111011001000011110010000110011011011001001010001011000001011110001101110110011101101101100110101110101110000101111100011111000111011101101101110001011010000111011011000100010011011011101010010010001010100100000010001101110000100011100110111011000001111111110000011110000101000101010110110111010010111001000010010000100010100110111000001101001101001100001000110001000101001001001111011101011000001100100111110001111100101100110001110011000011011000101110001010011000010101010100001001111101001010011111110101000111010010101111010101110100011110000000001101010111000011101111100011111010010001101000101000110010111101011001100001101001110111000010100010011011100011100100100000011010011101010010010110010100110111100010000000110001010111101111101000101111100000001101011100011000101010110000111010011011000111011100000100111111000100101000100111000011111110011111100110011100100000100101011111011100000011100011101100001001001110001110111011011111111011111010001011001001000110100001001001111000000010000000000110101011010010000001010001001110111010001001011000101011001000010011000011101010000000011100110011110011001001110111110100110111110100011010011000000000010100001000011100100110110111110011110101011101010000011111001101011010000101001100000000001111111001111100100010001110100000011001011110100001111001001100000101110001001010001000000111111110011101100110101110001010010001111100100101000011100000011111110010000111110100000100111010110100001110101100100111110000101111011111111000110110110011011010100011001001111010011010100000100111100100001110000101111001010111100010001010010100001110111010100101001011001100110100100101100101110010101101011110100000100110001101110100010001111000011101001010110001111100110101010101011110100111100001111001101111000010000010111001100011000111001010111000100010011000010001111100101000100101001111010011110011111001000001101100101111111001001010111111101110110110001011010000100010100110101000101110011100011100111001100100000011011001110001001010000101100001100001001010100110111110101101001111010001110011111111000111101010011111110101101000000001101000000011000101010000101001010110101000000100011111100011110111111010010100001111000111010011001110100110100110011100100000101100001111110000101110110010011110110010101110001010101000001001110100001001011111101000101110100111101110110101000000001010001010101001101000110010111010010100010100001100011111110111001111011100011111111101110100000101100011111100100110000101101010000111101011000101001001111001001000001000111101101011000110010100110110001110011010100011--------------------- +0100000001100011001110110001010001110110100101100101000001111011011010101001010010101011101100000100110001011000001001010111110111010010000000101011000101101111110100101000111000111010101001001011000011000100101000100100011110000000100101011001001010010101001001110100010110000011000111010111010100001101000101110000010100101110011011011011101111010010011110010111110100111110100111001111111001110110000000010011110011001011110000010011110010011010100110100011011010011110111010011001001100011000000111010111100001111110000010101000011111110110001000011100010110000101011001000000100111001101000100110101011011101011010111010000111100101100111110010101000110111010111000010010100100011011110100001001100010010101001000111110101111111011001010000111110001000010110001111110101011111010011011000100110001010001010101000001011011010101111000010101111001010100111110000101011010111100101101010010111101011000000100001010011011010110101000111000000110001101010111111010100000110100100010111110000111000000000100010001101001100000011010000000111011100011011111110011001000111000001101000110101001001001100001100000010011011010001001010000111000011011110111000000010111000011100010110001000011111110000000100001001000110000001100100000101010000111100011110001010010000001001111101111011011110000111110000110110101000110011111000010111100100011111010111111101010011010010001100010001100111011101111011000010111000000100000111100000000101101111010100011011101101100110101101010001110010111001111100110111100000111001110011111101001010011100001010111000111100100010011010100111010000001101010011010000101100111110011111000110001011111001100100100011111011011011011011111110011111111010011010111001101010001001011100010110011001010101010000010010110010010110100110110110010101010110101000100111101010011111011001111001011011110011001111011011110010011110000010110001111110100111010000101011011010110100101111011011001110110101010001111000010101011011101011001000000000000111010010100001011001011111111101100010100010100000011110100011010111110010101100111001101011110001011100001100100000011011101010100001000010100100101101010101110100101111100111001000011111101000011000110111010000100001101001000000010110011011001101101100010010010111111100000110001000101010010111100010011111111101001110011000001110000110011111001011110111111010101001111100010100111101110001110000100110010001001000111000111111110011111110111001000101001101011011110001111100001111100100000000111100011001110010111111100101000011011011110111001000011101000101101000001110010101100010111001110011010101111001110110101000011101101010101001001111010011011110001010000100110111000010110000010001001101110110001101001000011111101100111000001101110010101001101110101101110110110100111110001010101110110011110110001111001010111111001110110101101010111111000110100001110001010110100101001010110101000010110100010010101001001010110101111010011001110000000110110111111110101100011111010001110101000010100000000001011010100010101111111010100001100110111100110100100000001011110001010110110010001000011101010111011110101100101001110101011011100100100110011001011010111000001101000110111100100000101110111111101010101110001101100100001001111101011100000010100101000100111100011011111001110100101101111110011011001001010010100000001110100001010001001011110111110101110000010000010000011111110001111101101011111111101001111001010111011001101101100101101011011010011111010101001100100111000111001011100100111011100101111000010101010011011110001011010110110011110001110011001110111000001111101100000111000101000111001011100101101011010001101010001101010001101111000110101010111010011001011111010100001110011010000110100111100011011101001011000101001111010110000111111100010100101000000000010110000110101101101110011001001011000010011110101100110011010110111100100010001100000100011010000011110100101101011010100001000001100000011000110101011100100010011010100010000101010010110011110101010001000111010111101101100011001111001001111100001001100110000111010001000110001110010000111011111011000010100100100000000111101110010111100101110101001001001111000100001011101100001101011101010111101111100001001000000110000001100011001000010111111111110111110110101111010110001111100001101001110001110000000100110001011111101000101111000111100111100100110101011011000111111001101011100110011001010011001110111001101100011111111110000000000010000111110011010011010111101111100111010001101010011101111111110110010111110100101010001010100101011101010111111010101010100010000010100011001011110011100110010000100111111011101100--------------------- +0111011010110001011111010110010010110000010111000010000001101000000001110101110011001111010011000011000100101110011111001110110111001101100111110001110111110110100100000000011110011101110100011100111001110111010011000001011011010110001101001011111110111101110000010111011101001010111101100101010100110011010101101111000100011000110100011001100010100011110101100011001100101001011101010010000001100101100101111110011111001000111100100111100110110001111100000111100001110110111111111100110011100001100110011000010011111110000010101101000111100100111101100001100110110101111101011011110000111010010111011100111101100110101101110100111100010111100110101000111010111110000011001000000000001101010110101001010111000011001111010110001011000111111010110100110100011010101111110001001110000111011100010101000011101111001100111100011111110000110111101001010010010101100101111110110101111001101100010010111000000111110000110110000101001111101100101111001010111111001110100011011011100111010100001111110100001100101110011100110110010000110001101001000001011010100100011110101111110001000101101011101100100110100000001000001011001000001110110111111100101100001000101001000010001010110110111111010010100110000000111011110011001110111111101111010111110010011000100110111001100110001001000011110011001010110000101111001000100111100011011111011000101110111111011110011110011110101100000110110000100000010100001100011110110110111110001110010110110100010001110010101001010001100101001010001101001111001010111101001111000000110111101010110010111110011101010000100111110000101101000000011110111011011101010100010100111111110101111011111111011001011110001011000011000101011110110010111011001100100100011101011011000001000101000111111101010111101001100010001000001110001011101011000010000111110111111111001101010111100110110000110011000001111001001010010111111001101011001110011100111100100000111001010111010000011010111001110010011101100111001110010101001110000111111010111100000011110000100000110111010101011011111001101010001111110111101011001001001111111100001011111101000100111101000011010111111001111100111101111000001010011111110110001000011010011001001100011110001001110010001101101110011011011110100110011011101000111001001001110001100001001000001000001011101111010100010000010111110110001010010100110011000001110110001000001000101001001011111000111010111111010100110110000011101101101010100100110110111000111010001101111001001010010010111001101100110011101001010001100011010100100011010011010011011110110100001011110101100000011010011110101100010001101001100011110000110101100110111101111001010101011111100000111100110010111111111110100010111011110011010100000010011001110101000000010101010000000010100110101000001101010100110001111100101011011100101100001011011001000011100110110000100011011101111101110011011010001101010010000101000101010011010110101111111010100110100000000111011000011110010001001101100010100010101010010101011100000100010000010011000010001001110011100100111010110000110000111111011110110111101010000001000000100010011101011111001110010100100011011011100100010001010011011001101001101011010101111011110011111100100111011101111111001101101010100110001001001000110110010111011100001101101001011100010100100100101110111010011101010000100100100010110000110000001100101101001011011001101001100100101101010000011101011000010000100001111110100000011111110101101100000110000010110111100000011010111001001100010101001011011110100111000001001011000101100110100011111000010011011011001110000111001100011010001111010000000011011000101111000011101101011010100000110101110110001101001001110010000000011111110011111001011001110110110111110001000110001100101111110100001110101011110010001111011101001100110001011111110100110000010100111110001110101010110100100000000100111101000000001101110011100100101000111110001100001110110101000010111010110101111000110101001010100000101110101100110000001010011100010100011100110110010000011001000000001101111010101111011011111110111000000110011011101010010100110000101010000000000010111111001110100101000110001111100000000011111011011011011110101101110000011000101000101001000100011011000110100000101110010100011001100011011110111000010110111111001010011110000111111100110011101001100111010101000100011100101010011001001001011110100100111011010001101111000011000010101110111011010000111111100010110001111111001110001111101001000010010011100010100010001101001110110101001000101101110110000111001110001011100010101110011101010100101000000011000010111111101111000011101010011111010011001110001110011010000000110001001101010101111--------------------- +0101001101110100001001001010001111000001000100111010010110100001110100110110111000100010100011100001000110101000100101110000011000101001000011111110000001100011101001111001000101110001100111011111111100101011100111100011011000001100100000101010111110011000111100011011111100110101101010001100010100011111100010010110100110101111101011001011110001000000101001111011111101101111100011010101110101000101000010011100101100110100101010000010110111000010110101010000101001101000101011000110100010000110111110010110110011000000111100111001101111100111001001010101010100000000010000101101111101100111100010110000110001100110100110111011001101101010111000101111111000001001010101011101100010011001011010111101001010111101011010111001101101001010001100010000000011110010100101000110010001000001111110001010001001001110011110110001011000001111011111010001011101101011100010110010001000001000110010011010011111011111111110100000011001110111101110000110001100111111000011111001110000001111100110110001101111010110111111110100110011001100101010010100111100010110000100111000110001011001001011000001101111010000000110110101010101011101000010100100110111011011000110000010111101100000001100000011111101010111001101101110110100101101010100111101000010101011010101010100001101010011011111110010010110000111000100011011101100110011011000001001100000000110001101010001000111011011001110100101101101100111000001000100000001010101110011101100101100101101111101111110110111011010110011101011001010111011101100110001010011010001001011111000111110000111001000100100011010010110000000110000110110110111001111000111110110111111100110110011010000000111111010100100010011111001011101111011001010011010110100101010011110011100111010000011011101011101111000011101111001001111000110001011000100101110000000011111000000101101110100001100110101010101010010001101010101000010001111101110010101000001111011001100011101101101011111011101111000000101010101010111000100010010100100010101111010001000000100101110110010100000011011111110101110010001001110100011000001101111001001111101111010001110011100011100110010000111011111000010000001011000010100011110011101011001101000001010100010001101110011100011100110000110000001011110000011111111110011100110110000101011010010111011100010011110001111010100101001101010101001010001000111111110100111011100110011010100000010100101100001000110001001111000000011000010010111101101101000110101111101101111100110111100100001101010001100100010010110110000010010011100100001110101011011110111001010100010111101100010101101101101000100011100101111010111100000010011100111011011011101101001101101111100001111101111001101100100110101110000000111110100010001111001011110001001001100011011100011001101111001110011110010011101100011000100110101001101101101010010010010100001111001011101110000000010001101101010011111001011001101010100001000001001110011111001001010000001010010111000000110000111011110101011001000110010101011111011110010110001010000011111011010011101001010100111111011000110000110100110001111110010000111001110111000010111010011001100000110111110101111110010001110010010001111011010000001010001001000011010000010111101011110100111101000111010010001000001111111001110100011000010101010001110110010110110100101010011010110111010100110110010010010100100100101110110110111111101101101101001101001111111111110100110110000101111111000111000001101111100000011011111011001001110110001101011001100000111110101101001100110101100111000101001101010111010011011010010011100101111101010110110111000001100110011010010001000010110001011011011010111100101011011111110011110011001010011001011001100001011010011011010100001110001100010111110110110001000010100101010101011100101010101010101100110101101110110000111011001111100100011000010100101111111100100010101001100101111100110101100000011111000101011001100111000001011001101001101001111110100000101111000100000010010011100000110001111001011100011101011100110100100110111111100001100101001001110110001111110101001000010011000100110111000001110000111000110000111001010111100101110011110000111110010110011000101101000110101000101000010011101001000011001010101010100111100001100010001111011101010110111111111001011101001100000010000001000011001000110010111010110110000110111010011110111000011001110101100111100100001111010110111101011010111100110000111110100001111011001010100011110001100101001011100111010010100101010010101001011001000000000011001100110001101100111100100010100110101100011001100010000000110001100010101111000100010000010001110101100000011100110100110001110001100010011111100010111000100011110101011100--------------------- +ls208cwds +10011110111101011110011111101101000011001100110000110100110000011111110011011110000010001011110001110001001111101001101111101111011011111000111111110110101111000001100111101000010101111111100111100001001001111011011101011110100110111011000100101001101001101111011110000101000100101100100101011110000000110010000000001010111011010100000110111000100001010000100111101110101000111000110011000100000110100001101100001010010111011101000100111101110101111010101011101111011011110111101111110011110001000000101110100101000000010011101000010010100110011001000010101011000110000010111101000010111000110010100011111100100110001100111111111111100110101000100110011111110110001110101110111001010000101011110110010100001100010100001111101001010011111011100010100110000001100101010011000110011101110100100000011101011011001101111000101101010101001001011000010100100101100111110111000011111011010001001000001110100111011110101011000110011011001100011111100010111100110100001111110101100010000011111001110001001110111100110011011011011110101000110110001001010011111110100001111010010100110011110111000001111101101011111101101111101111111100010000110111101101111000111010100000000011100000101110011010011000000000101100101001111101001101010110110010011010111100100000000100101000011010110010101011101010001111010111101100001010110011010110100010110010101110001001101011000110011110101011101111000001011000101001101001000111101011001011011100011001000100011010100100011111001101010001010011001011011111100001100101001110001110011011110111111000000011010011110001010001011000111011011011110111111000100111101000010101101101110111110010010101001010111010000100100111011101101000111100100001010000010010110101101011110011010001010011000010111100101110100110000011111100011111000001010111010010111011001110001010000111101000111110100111010101101100110000000010010111110011100011110000001111111100001000110011000110101000101111000101100101011010001101110100011100010000000011001111011000100111100100000001010110000111110111010100011101101100001111100100011001100110010000010100000110011101110100000000111011110000110101011110000110000001001110001001011100111111000011010110100110100111010100111111001011101110111100001011000010101011001101100110011000111010110101010111110011010100011111110011101110011110001100101100111010010001001001101110111001000101111010110001100101010011001010000000110011011101111110010101111011100101101100011011101001001100001011101010110001101011000010001101101011111011000101010010110000100000110111011000100011010111010110100011011100000101101001110111110000101000011111011011011100111011011110010101100110000010000000000101101111001011000100101100100110110111111111010111010111111100001010011101011101001101010011100110000100111011000010100111100001101110000110011111110111000100100001100110100101000001100010100100110111010000011000100010000001100101101000100111010110100101001010111111111011011110100101011111110001010111001100101001110011101110010010110101110111111010110000011011111000101101110011010010110001100011000001010001101100001011100111010001111000100011110111011010011000101111101010111110101010101100100111111010110010111101100100111010101101100100111000011001111001010000000110001000001011001001001100100011100111101110100000001110010111010110001010101000010011101100101110100110001000110111101101100111010110000001011110111001010001100100001110010100101010010111010010011001011000001010000010100001000010101101000001111111111010101111111101000010100111110111101111000011111111100110000111111101111011010011000010000100000100110101100110110110001011110001011100000110101111101011111110001000001110011001001000110101001011000010011011001101110111110010100101000101011100010111101100111111011001111111101011001010010000111000010000010010010010000111100011101011011100110010111000101110001000101011010010011001101111011110110011110101101111101110111000000001000000001011100110000110000001101001110001100011011000000110110000011100101111011110110001101100100110101011001110011101111100100100010100000101101110010100100010011111010011000101100010001010110101011000111111000110011101011010011000111011011101011101100011110---------------------0010001101000110111100100001000100101100100011110111111011101110010101101011011101011001001010100110010111101100000100011100100111101001011100010010001111011001001110010101110011100000010101101111100111101001110110110101111111100111011100110101000101000101100100100100101111100100000011011110000111111110111000000011010000000100110111110011011101011011000001101111011101001111111011011111110100001011001001011000101101001110011000011100101111011000011101001101100000100110111001000011110010110111011111010010100000110101000110010110100001000001010010011011111001001101100001010000101111100100101110010011000110111111111001101000111000001000001011100101110100111001100100000001011110001001010110000010100011110001111000100010001011000000110011000010000010000111111110110011010011111001110111110101110001000100001101100001001010111111111011011110001010100101111101101000100011000010011010110101101100011101011000001011001111000100110000001010110100101010101001011010101101011111001010010111110101110101011100110000100011001100111101111011000110010100011011101001001111000111111001000000101100011010011100010111000000111111100111111010110011010111111001001111110110000100111100011110000110101111011101111010000101001110100100001011111100011001100000001101011100110101010101000000001111101001000101010110111110110100001010111100101110000001000001111010001101110100011000101010110110110100010010100001010110110111100101110101001100000001000001101001011110101100011100110110110101100101000110100010100000100110000101000011111101110001100011111100111110101101101001110000110010101010011011111100101101100011010101111000100000101011001010100101000101010010101110111000001111000111001100010010111110110000110111011111001011010010100010101111010011010010011101101010000011111001100101110001000111101110000101110010110111101110110011101111011110101100111110100110000110000110000011000001000111101010110010000000011100110011001001101111101010110010111001001110111100111110011101011101101001100111011101011111111010001110001000100111100000011010010010010101010110111011101110111111111101101101100011110101000001001000001101111100101000001010001111000010111100111101000101000100110001010100111011100001001101100101010110111101100000111111000010111001000100100110001101001111010100111101011101011101001100000100111110000001010001011000000101001010110000110011010011100111110010011100110001101001011100011010000011000000111111111000001001101101100010111111001011010110100110110011000100101000101010001000111010011000100011100111100100100010000010000100101111001111101010100000010111000010001101110010000100011100100010001010111011010011100111110011100101100010101110100000010000101100110101011011100001110011101101000111010011000101000110010110011110000001100110110110101000011100101100001000001011000001000101000010111010111110111001110101010110110101010011000111101010001111001101101001100000110100111000111000011100001011001010011101010101100000011001111001000111100011011011101101011010011000111011111111100010101010010000011100110001111011011000011111001110001001001010010111010000101100111000101011111010010000111110010100011001011100111010110100001101001111111010000100000011010010000101100110011101100111111010000001101110010111100110000010100100111101010001100101111001010111010011100000100100101011111111010011111100101111000100110101111010001111111000011110000111111000000011101000100011110000110100110101110000011010110010110110000010100101100011011010101101111010100101001100111001000001111100000011010011101010100110011111101010001100001001011000100010100001111101010100101010110111101010100010101010011101111010100010111101111001110000000100010010101001010100101010001111001110011000100001101111010000110100101100110110101010101000010101111010000001011110101100100110001110100000001111010001001100010101101010100110001011101101011101000011111111100011110001101001101010001110010010011001000010001100101101010111000101111001111110011001001111101100111010110100110111101101000001111110010101100010000001110000100100100010111000000001000111101101110010101010111111100001101110011010101111110011100000100101100000000101001111110100100110000011100001101110011001011000101000010001101010000110100001110111110011010010101011010100000101110110000000010010001010100100100011000111001011000000100011101000011100001011000101010011000111100000100110001110110001110011010010000001000100101000101000110001000001100011010100101010101011101101101111100100000001111011001111101010111000001000100011010100010000101101101100001011001011000010100011011101110111111111001100011100101011011011000000100110000011001011011011000110110101010011000010111011010110110011010100111101111111000011001000001011000100011000000110000000110111011110111101010110011000011011100010110010111101000001101000000001000010001100010000000001000110001010101001101000110101111100101110000010011101001101000100110001010101111111111001010110111000100001101110010110111010101100100000011011000111101011100101101001111110110010010000001100110111011011010110001111001011011110010111010111101111010100011100100010011011101011110111110110110001111101011100001010111100110111000110111100111110000101101111010101010110011001111100001010110000100011010100101000010100001001000011010100110001110100011111101101011000101001000011111110110010000100001111010011001000110000100111011100000010101001001100100101111100000110010101101011001011010000010111010110110100000000011100001001010111111111111101100100101111101111010101100010101111110001001100001010000110010101101111000100100111010100010001111001001010111110111110101010111011000010110101110111101110111100101110001111100001111010101101000101000110001000010101110010101100011000000100111100000001011000000001001001010010010010011111001101011000111110011000101101100011111101001100110101010001100011100010100000010001101000101010000000001111111100000010110001000001010111001001011101010111010101100000110111100100111001101100000000010101111011110100010011101101000000100000011100010111100000101100011000101101001010100000000001101000001000010001111011110000101000111101001001011110010111100001011110100010001001010011011100100101011010001110001100100011000011000100100100010010010101111011000111011001110001111010011011101010010011101111011011001100000011101110000000011111100000000100111001111000000110111101011111011110101111110011011010100111110111111111111011110100001110000011001101101110101111011011010111011011011010010001100001000110110010011001100000100111101000011000001101001000011011111100001101100110100010001011110101000110011110011001000001110101110000010111111011000011111011111011000110110001000111100000101001001111110110001011111001001110000010001110010000011000001100110110110010101110111011011010110100001100100111000111000101000100100001110100000011110000111101001110110001000000100100111100011001011000011010010110101001011110011001110110010001001001011000001001011000000110010010111010011011011010010011100101001001100101000010101011000010010111101010000001001010101101001011011011100110010011001110101110100011010100001010000111010011010100101110011000101010100101101100110001111000111010010101110001111100111110011011010011001101111110110100101011110111110101101101000100010010100001101010101010000111111100100100011101000110001111110000010110100011001000110000100010011110010001010000001100110010010101100110101100111000100110101000001011101100111011010101110100101001101111000011110001111101010011011101100111111101001011110111111110100000011101001010111001011000000111000001001001100001011010110011111000011101011011011010111010111111000001010101111111000000111111101100101111010001001011011100000110011111111010011010001111111010100010011000001001001010011010001000010111011011100000101111101010111010011000100110110000010011100111000111101011100011111010001111100111011010010111010101010000000100111110111111101001100111000101111111010011100110011110100111011000100100010000110101110101010001000110110101000001000011110001001101110010011001110000100101000001111010011100101110101101100101111111101111011001011000111100010111000110011110110000111001101101000000110110111110101010000011010110110011011111100101000001111101011011100011000101100000100100001000111100100101111000001010011100001010010001001110000000100011001110111100111001110011100111010110101010110100110101110111011100101100110110010001100010000101000000110110101111100111000000010000001010110001101110000000001000000110100111001011000001001011011101100110011011101110001100001010010101111111000011010001010010010010111000011100111000001010000110101100111100011100000000110111011000011111110100011100110111101100101101110100110010010100101101110101111101110110010010110110101101010110101011011000001011100110010010011001010010011111101110010010001100010000101110100111000001110011100111110100110111011011111101110111000011000010010100111011010001111100011000000000011010010010011001110100010011101001110001101010001001010101001001110010000111001010000011001010010101101000001001111010000011000011111101010000000101011010001110110111101111010101111111100011001100100010100100111110010010001101111110110011110010010000010010011101101001110010010001110011100101111000010110001111100101011110010010000100100011001111110111101000110100010100101000100011011110001001110011101110011011111000010111011011111011100011010011100100111000101011110010110101010010110000001100101000000110010111100011110110100100000010101110111001011101000111010111011101101001101101100110101001110011010001111001110110001111100000111001111000010000011000100101111110101101111011110001010011010100101000101011 +10001100000000011000110110000001100000110110111010010011111101110101000111111100000011111010110100010101000111010010000000111010011000100011100111111100110100101101010100101111101101000001001000001101001100011001011010010011001001011101011000010100101110100001100100111111010110101101110000001101001001111100011010001011110001000010001001111111101101000011010000111000011100001011001000000110010110000100010011001100011101111011011011000010000001001110110110000110101110010010100111111100000000111111101011101011011100110001111110001110011000111000110010101001111111101101001000101100000100111111011110000111000110011000111011000110011100001000010011001110010010101000111110111100010101000000111000011100001100111100001011001000001011001101011100101010001011111010111110110111100000000100100110001111111101000011111101000000101100001010110110110001100111010001000101000101101100000100101101111110100001110010000101011101001110000000010011001101010011011000001011111110110001000000000001111011000101011100010010000101100011001000011010110011000110111100101000001010100110000011011000010010111100011111000111101001010111111010001000010111111010010101111001100001101011010110100101101101000000100101010111100001100111111110001001101000100110001111000001110010100010111100111001000010110101001011111010111101110100010111011110001101100111110011110010010100111101011010101110010100001000001010001001100110110101101110100010001101100100111100011110000100110110100011010011111110001010000010100100101001000011001110000000110110001010111011011000011011100111011111111001010100000101000101111111011100100000011010110000100011110000011111100100010110001110110010011101100111000001010101110010001011100111111111001100000111101101111011010111000000001100001001010001000000111000111011111011110000111101010110000011000111011000011011000011011111010010011101101010110000110011100000101000101101100110111111100100001110111111100010001000000100100001010010000000011110110001110100100011001000001100000011101001101001110011110110000010010111001100100001101000000111100000001110001101101101000001001010101101011010101011011101011101011101001000111110111011001001110000100111000111110011111001111000100010110100000101000011011001100101111110001010100011100110001110110010000110111000111011000010011011111011011111111111111100001010101111000010111100111010100011111000010011110111000000010010110010111001011110101101101011101011111111101000100111101101000101110110001110110011110100001100100100111000001001000011101101011110100111011100100010001011101111010010001011111000010111001011001110111001001110110010010111010100111000110100111000111000111000110100000100011011011100110110110111111010110100000000011110000111110100100100110100100000100010000100111011001111010011111111001110001001011001001010101001010001010100010000001011101100001100111101010011111010111000110110011010101111101100110001110110011100010000110100010011101001111110100110111111110101110011111110001101001101100010001001010000000101100100101010001111000110000101010001000100001001011101001110100011101010110011110110011011000110100110101010111010101111110111101000101111101011111100101100101111100100101000111110111101110010011101001001000111101001101100101110110101001110010010101011011110010001111011101010101010001101010101001110100000111000001000101010111111011110110010100101011011011110011111000101101001000000000111010001111000101010011111100110011110010111111100110011000110000100111010010011011101000001111110010000001111110100110100001100010100100011100100101101001010111010100111111111001101011101100010110010110000110011011111001000011110001010001010010000000101111110101011110101100011011111111111000010111101010011100100001000000000011110011000011000110010011001100110001100110101011111100101011000101100110001000011001011001100001100111001000100101100001010011000011011100010010001011100000000100001101000111100000011101011101110011100000011010100100101110011011000010111001101010100010010100110011100100110010010110000000011000111001011101110110110111111110100000001010110011010101010001111001010000010000010110000110110001001001011011111111001001001011011010111111010001---------------------1110110010111000111111100100110000010011111101011010101111111001101100101110001001111101110001001100100101011001100001001111111100001001011011110011100011011101010110101010101111101111011001100001001001101110001000111000101000010001011111110110001111001101010111100010000001010000111000001111110000010010010110001111011010000000111110001000010111111110001110111011001110011001101010000001010110001000100010111011011000011100111011111101011100110001010010011011101111111001010111011010101001011110011110000111100011110000000001110110010000101100010111101010001101110011001101111110111100101100001110110000001101100011001101001111011010110101001010101001101101110011110011011100000110011011110000100001101100000101101101100101101001001001100001011111010010010111010100011000000100101010010100101011111110011100011100101000011011010011101000011111000101100100001100100000101111000110100100000001011100100011001011001110100101011110011100110000010100111101111001100101011001001010100100100100100110101000010011011001110100001010000110111001011101110100011001101001010101100000101001111100011101011110001111001100000000001100101011110100001010011100110000100111110000010010001100110100100101100101000100111100110001100100011110100110001011001100100000101000000101001000011011010101101110100000111101000010100000000101010010000010001111101100111111001000000100101110000100110001110011111010010100010110010000001110110010110001000001101100010011011000011101010111110011001010100000111111001100100000100001111111000011110100101101110100011100100001000001000111110001110000111000100110111001101111111111010001011100001010110011111100000011101000010010001101011100111000010100000001001101000111001001000101000110010010110110010000110110110011110011101000110010011111010110001110010010000100100100111101111011101111011000000001010101100001001111101110100110101010101100001000110000111000001011011110110001110010111111011010000011111100111111011001111101001111011110011100111101011001000000000000011100011001001110111001101111100010101110001001110001000011100110000010100001011000011000110010001100101111101110000101111101010011110101010000110000101101111100101011000011001110101001011001101101110101000111011010000001110010100100110101000111101100110101100101110110101100111110101011000100101100110000011111101010011011110100111001100100100011101110010100010010000000011011011101000010101101101010000011111000011111100110000101111000101110011101101011110111010000000010101100000011111001101110111110010011010111011000000101001110100101011010100110100001010100001100110010100101111101010010101110011110010111010110000010001111010011010010001001010111010000010011100011000011010001110110001110000111100100101000111111111011101110100101111110111101001100110111110101011100001111011011101010101001001111101001111101110101111010101101000010111111000111111010000100011000111110101011100000111100111000011011011000111001001101101100100011111100011011100111001110001100101010000101101100110100010110110111111110110111000100110101011111100010101100100011100110101010011110000101110111001101010001000000000110101110010000110100010000111001110010010011101101010011001100101110101000011100011001011001101110010010101011110001010110100111110111100011011011010100011100100100110000010111111001000000110011100000110111000001010000111101100011100110111101111110010101001000100111000110111011010101001101111100000000011101010111101011110011001001010100010100001000101101100111111001001110110000111010000011110110100011011001111000111110010000110010110011010010101000010000110110110110001110101001000000011100011111000111001101111110110110010111111011111101010011000010100001010100011011010001010111111001101010100110101001100101100101101011111110101100001010111011100110110101011010110010111010011011010001011000101100001001001010011100010101111101011110110001001001111001010010101001110110110011001111011001000101111001111100100011011010011011101101110010001001011001000001011101110111000011110010110111011110111110100101010100111110101001001100110101011111101010110100110110111000010100010011001110010010100001100011000111001100100100111101000101011011001011001011000110010101101110001111011010000111110001011010111110110001101000001001111111101111000010011111101100100010001010110111010011001010000111111010100101101011000101111011100011011000000001011100100001111101100000110010101010110111011100011111101011101111000000111101111010000100011111110000100011000101000110001000100100001101000001001101111111001000110100011100010101000010011101011101111011101000101000111001100000100100111110010011111010100010010100110111110111000100001100111100000000000100111010011011111001011000000100011011101001000000000001111101100110001011000001000110111101000100011111110111111000011010100011000101100000100010000110000111011001111001001101110111010111011111101010010110010101001111111011010000101110010111000110111111110111101100101011000001100011010000010100110100111111111011000111011110010110110111101010000011010111000100000101110001001001010011001000010100111111111010111010010011101110101110111110010100000000000010100101101110010001111011010010110111100011110111001010101000111100001000110111010001000000000001101001000110000110100011111010010100000001110011111011011000000001100111000011101011100101001101010000101101001001101110101011110001111110111100101000010101001110000010100101100101010011000001010000001100000000111110000101111010101111101110100011100100010101011011101101011001101010100010111110101011100001110110101010010100101010000110001100101110111110011011000000010101101111001101110100110100111011001101001100000001000010100010110000000101111110010100111111111110100011110110011000101100100000010101101111111110111011011101101100000000010011000000101100100010100011110110101101100011001000000010101110011011100000110111111100001110110111110110101001110101101000100100101101101100110100001111100000010001110010101100010001011001001111110111011110100111010100111011101100101100010111110000100001110001011100110000100101001000010111101010110100101001011100101100100011101110000010110111111101000011000000101101001111001010011101101111010110101111000100010000100010011010010111011110100010101111001100011011101101111000100111010011011011101000101101111000100000110010110100111001100010011101011100001001101111100001010111000000111101111110000101101010110001011111100101011110011100111101001000111101001010101100100100100101110000001110001110010100111000001011011110101000100001101000010111001110111111110011101010100011010100101100001101000101010011110110000010010010101000100000011100010101010001100100001110110110100100100011110000100000111011100111010001111010000111000011111000011000101000010001000110010011101001000111111100110111110010010011101111111001001101000011111110010101000110000101101100100010001001000100110100000111000101000010111000010010010100110111010001000000110100101011100111010101010010111011100000111001110010001011011110010010111110001101101101010011110101100001001101111010110100000101111000010111001100110100010000110010001000100011111001000111100110011100100011110000110101111001110000110101000000100111100010111110101001000110000101101110010010000011001011000111000001011001010111110111111010100010100001001111111000111101100010100001010010011110111000000111111011000101011111011010000001100101010000000110000000110100101111001111111001111111010111101101011111000011001010000001011010111011101011101110110100001001011010011000100001000110100100000011101000101101011100010100110100100111111101111011111011101110010010101100010011101111110110001111100001101101100111111011111000010110000110110100110111101010010111100100110010100100101010001011000010111110000010110111011101010101100001010011100100100100100010111100001010010111101100011001011000101010100111001110011101010011101100110010110001011101111000000101010001100101111010110100111110001000101000000100000010010011101011111011100011010001011011010000100010110011111111110001000011001000101101010000101010001001000101001010001000110001101000011101111001011110000100101111011101111111011101010011110101011011010000110111111001111000011101101011011000111101101001001011010000101011011001110000100010001100001110101111011000000011101101010111011111001110100110110111001101011101110011010001000011110000011100000011000110100101000011111110010001001010111111011000100011110110000000010011111011000101001100010000101100010101000001101010000110000010100111100001101001001000010010010001011011101100100000001110100111100101001010111001010100101111111101101110111011001011100100011111100011001110101100001001010001010110000010111111011011110010111111010100011111100101110111111001110111011100111010011011111010111111000001100000101111101111000010011110111001011111010101100000011100100010111110101101110110110110011010111011110111110100110101110001100010010011011100110111011100100101001100110111000010010010010110011000011011110010001110111110011110110101110110100111010110011000100000110001101010011101010100000111111101000111101110011101011101010111100011111001011101000001100100101000101101101100100110001101000001100101100001001101110100000111101101000110110111001111100000010010101101011010101110101110001000111000000111111100010110001101001110011010011111101100011011010000010010010000111111010100010011100110101011101110100011100111110011001101101001001100111110011101011010110101000001111001101001011010111000110010010101000000111101000011001110010000000100011000110101110010111010011001101001101110111010011111000111111001111111111111110111100101110101111101101011001011011000000001101011111001111001 +11001101011111111011011000101010101110110111001101100010111100011110101001011000011110110100111010001110110000111110100000111100001100000001100011001101101110100111010111010111101110101001011111111011110110011110101011000100000001010010111101110001110010000000011000110000010101110001011101000000100011110010100100110101100010111001001011010110010001000111011010101011001111011010111001101011101100101011000100000110010011111111000101001001111010100001100011111010100001011011101001100001110100111101000001100111110111010111010101101101101001101000100010000111110000111000101000000101000011000011000000001100010101010011010001100110101111111001111101010000001000011000010100011001000000001110110111101000011010110011001011110000100000100110110110010100010111010101101010111001111000100100110111101001100111000100001111110001100000000001000010000111100100001000001010010100001000110111000110100110111100011111111011110001001011101111111100100101101001010110110010110010100101011110001011010110111111111001010100001101100111010011100110111010001110000110011100101111101001011001001010000010001101111001110101010011011101001000010111110101011111011111100010100100001101111100000000100111111100011011110100010101110101100001101111000100000111000110010101011111101000100110011111010011101110010110010111110110011011111110001110110111000000010100110111010000001100001001111001001001110100010110100101101010010010110100011010110010100010011001111101011010000110101010011010110111011110000111110111100111110101000001100101010001101111010111110100000000011010011101101000110001011111011000011000001000101010001011011010000000011010100111000011110011010011000010100000101110111010010010011011010000000011100011000100101000000001010101111001010011001001010000100001001111101011111011011011000111111010111000111101010001000111011001001101011100010111001111101110011110110101001000000010100110100011100011100101011110111000011001011111000110001000001001110111001101111111000110111001110110001001010010010110110101100101001110000001010001001001111011101110111100100000000110111010110000101011111000101000010011000001011110001110100010010111011101011101111000110110110010101110000101100110011110011111101111110111101010100101001111110100101000001000000111010010011001110100010100111111000010110100111110100100001010111001011111100011000111001100100011010001111100000110001110100011111001111011010011001000111110010100110001110111000000001000010010010011011111010110101111001111111101010101101100111001110011001000100010101101000100101111110100111001111011110000001001101110000101011110111011011010101000100010011001110100101100111001110001011110000010000110101110000101111011001000010101010110110111011000100001010010100011101010110101101110101111011111000011101100111010010110110001000001011000011001001111011101100100110000101001111110110111111010111000110011100011110001101010101100100100100011001100011001100001101110011110000100101001100101001111101010100101100000110000001000000000101000111010110101111111011000000110111101011010111001100100101000001101101001010010101011000011000100010111001111001100010000000101000010100011101011101111011010011000110111101110110111011011010010001000011001011110101000011001100001110110101010011101101110010001111111000000000011001001100001010100110010001001111001010100111010110101011100111101001011000110001111001010010111011001101110001000101100101100001101111111111001010010110011001011000100011000110110100110100110100011111111101101111011111000101111100111111101011011011111001010100001101111010110011001011001100100111000100110010101110100110110010101010110010111000011111110010111111010001001100110011100010011101110101001101100010001001001100010001101111011100100111101101001011000010001111000000010011110010000001010110011011010000100110111011010010001010101000111100110001000000010001100111001110110100111001001010101001010010110001110110111111001110001000010100100110100001010001110101110010101110010100010101000110111111110001000000111111110110010010101110111001001001010010011001001001110010100010111110111101001100110001010001111100010101101010010111010100100010010111000101111001101111101100001000---------------------1110001001111001110111011010101010011100111001111010010000000101011000000010001010000111111101110100001110111001001010000101100010101110011100101011101100100011101001010110000001101000111100100000000010110011101111011100101100101100101101111110010001010110111011111000111010101001110011110110000110000001010011001010010001101011100111001001011000111111001111110000010110100000101101011000000000100100100110100110010111101111100101001001011011000100010000110011001111011001100001111001100100011111101010000111110010110110001110000010000011000001100110101101100011111000000010001001010111000110111011011111101111010001001110101101100000001100010000001010011101000010101011001000100100100100000111100100010011011101011000010101110110111101100100000010001011100000010101101100000001011101000101111010011111011100101110101011010111101011110111101011000001110111011111101110101001110011111101101001011101011001100001000100001010010011111010010110100000100111110100011101001000111001100101101011111000101010001001011000111101111011000001101010111110111111001001010100111111001011010011101101010001110001011101111101101001011010100011010100000110101010111010101111010011111101100011000010110001101110010010111110110100101111110101110100110100100101001011011100000101110011111000011110100100000110110100111101111011010111010001100100110100111001000101001100110001111010011011011010111100101010101111111101100100000111100110111100100001011000111011001011001001110010010011110011100011100101100110000011110000111011110001101001101110000110010000011001011000101111110100010111000011110100000100100111000011110001010000000000010111011011111100011010001010111101010011011101111010111010010110000110110101101101011111100011000101101100000101000000010011010001000011011100001001010001010100111101000100101101100000110101011110000010001010000001111101100100000010111000100011001100010011011011101101000000101100000110110101010001110000101101100010111101001110010010100001100000011001100000001001101011111101010000110000101000100110111001110000001100101110001011101101001111111010011110100011101011011101000010000010001010011101110010101000110101001110100100111110101111000011011010011110011001100010110010110100111110100010000001010101101101000111011000000110001101010110011001110110001100000101010110101011010000110010110010011111100000101001100011011101110110110011100100000110111001001010100101011000100101011011111100110001101110101110000101100101011100010111010110011011111100000110111000010111110100010001111101000011000010011110011111000111001101100011111010000010001110000011100010111111110100000001011001011001110001011100010000001110011001111010000101111110001001010111111111110101011111110110000000111001010010101101100111100100010010101001101100010010011001100000011000101100010101101011110011111010101001010001100010110100111001011110011000111011110101011111001100010110001101001110100100011011001101100100011011010001001011000111010010001110111000100110011101110100000010110110101101100111011010010101100010110010111111101001101100011001111010100001010111101100011101010111110001010110011110100111110100010001001101111010111111011011000110101001011101100100000100011111110110001100010000010101111001000111001110011100110111000001010011100011111010001001110110000010000001001011110101100100011010001110110000011000111010011011001111110110111000011000011110000000110110110011111110111010101000001110001000000100000000111000010010010100101011000101001001011011010100110001111101000101001000110001111100110110001100011011011110010001100000110110100110110111010100011111010010101000110010001000111000000110011111100010101010111011000100111111001001110111011010110000101110010100010101111100111100000001011000001011000010000011100000101100000001111000100110000011000100110010011000101001101001000100110111101111110100011100100111110000001100011110110011101100001111010010101011010100001111000010001000110011101100001010000101100101110010000000101101000100111101001011110010010001100011110001000000000101100011101111010001111101001010010111001001111111010110011010111100110100111110111001101101011011111110101111100010100111100110000011101101010000110100110111110101011101101110110000111101011101011100010001000010111000011010110010000001001010001101010101111001000111011101110011100101001011101001101010101111010111011111011001101011010000110111100110000010010010100000001011011101011111001111010000111101000100101101101101101110011001101001010010001110100101111110000010000001100000100111011010111010100111010100100100100001011000011110101110001111000010000001100001110111111111010101000010101000111000000101111001111101000111100100010000001100010111110011100010101001101100001101111011110011100010000110100011011000100100001001000010100010010111011101001101101111100010010001000100111100010101100101111110000101101000011000101100011011010001100001001111011010110110000000100111110000000000110000010010110010100101010010010111100110010101000001111101010110111110000110101110001001011100001001111101010010001010110100001101000101010111100011110110000011100011011001100001000011101000111100001011000111101111110001000011101010010001001101011010110111010000110000010111100111011010110010000101111001110000111110111101001110010111000001100111001111000110111010010000100111000011010100111100111010100010000110000000001010101001001010011011110110010000111010101110010100000011111001111100100101101100011111000011001000010010011101001001100101010100111001001010111100001101010111100010000000011100100100010101101101011010100001101000110110000100110000110010110100000001100001110110001100010001011001010010011011100011000010111000010101001100001001010011111001011100001010100110000000011110000011000100001110000011101111000010100100000111010000101101101111111100110111110100000011011011000010110011010111110101111111000001010000101100101001111000001001111011100000101100101110110010001111010011001010100010001100011011011101111000001101011011011111111001110101011010010100011110010101001101000111010110001011000010011101111000111000101000000000111111011111001100011110100000110001010011110101000001000100000101110110011110110101100001011010001001101001111001110000011010101001001111001110110100011110111101110101011111101111001010011100000001011101000110100101110001110010100101101111111101000100001000100011010110010110010110010000010111010000101101110010111100101011101101001101000011101001010000101100001111101010100001001111111010110110000010000100000001010000110000111010010010111001110001011010100000010010111010010011101110100011111110010010011101110100010010100110001111101010100010011000010101100111111100101111011010101011001101101000000100110100100110010111111011110000001111000011011110001111101001001110001000010111000101001011111101110100100110011100111111000000111001111000101100000000001001100111111100011100101100011100011110110111010010111110000011110101011110110101101100000000001100101001001111011000000011000110101100011100100111110010101010001110011110110100111100110110010010100011001010011101101001101011011011110100010001000110010101111111010001110111000111000101011101000000101000011001100001111000011110101100101100100100010101010111111010001010111011110001111110111100011010001000001000011011101000000100111111100000001001000011110001011011001001100111111111100101011101111001110111100110110110101111110001101101110110001100101111100001011101010111011000110010001001100110101001111111111010111111010011001110000000011110110101101000010001011011000011110100111101111110100001111010000010100100011011010010100101000101110000011110000101100010100001000000000110000000101001010010101101000110000100000010110010010100111100101000011110110000011100011010011001101101000010010011000110110001011101011011111100000101001010111110111101011110110011001111001000110001001110000111110001000110010011100100001100010110111000010001010010100010000110100111100000001001001010110100001011011111111100010100010100011011111000000011001011000101010100001110110101100110010111110010111100010110101000101100101011100111000011000101011101010001000001101101010101111001110110010010100110010011110111110110001101011011011010110000110111111011000101100111101011001100111010101011011100001101111010110110110001110110101101111001011101100111001000011100001010111101111101010101011000001101001010000111011100000101010111110101110000110001110010010001001011111001101010001000110101000001000001101010111111000010110010100011111011011110010000001100111110011011010100000100011110111100100000000010001100010001100011110011001110010011000000011100100010100001111101000010001000101100000100000100101000010011011001101101110001000101110011001010000110101110111110010110001001111101010110101100111110111100110001110010010010001111000010001101001101100000010010110110100110101110110101011100000111010001000101011100101101011111001101100111111001100111111110000000011100110101110011111010000010101111000001001010101001100101001111111011001000100010010001101001110111110100110011111111101101010100010100111000010101001110111010000010110101011111100100011111001100010000100001111101000010010100010101011011111010101010011111101011101101101011001001111100111111110010101100011111001000011110101100010101101011110001100100111110011010100100010011100001011001100000101111110000101010101111001101100101000110001001111001011101010110101111100100011101111100101100011111010110110001100001001010101001100110100011101100001111111000111110011100101000111011000101010100101001111110100000111111011111001001110001001001111001101100100101111100001111000011110110001000100101011011101011110010011110010001011011 +00101110111010001101000011010100000111001001000000101100000001011010010101000101001111010101010101101100001011000101101101100011101000010000010101101101100010110001000101010010011011010010111010100100100000011101111110110111111110011001000001111011100101010101001000101100001110001010011001101010011011100001110101011011001111001101110011101111000111011011100101001001011011001010011100001010101111010000010110110100100111010011101100111111110001110000011111000110100010110100101010001100100001110000101001010010111000011100111111010110101000000100011001110011000010101101100101111000010101100111100110011111101001010001110110011100000001101011001011111111001000101101101010010111101101110110101010110100110110110001100000000100010000110000111111010111011001100101110000001101111111111101000100101100010001100110101111111010001001011011000110000110011100001000101110010001101001110001100000010110100100111101001111111110100100111001101010011101111111000011110111110001100010110101100111011110100001100000010101001111010110001000110111111101000100110101111011010110111110100111101010100000100111001000100111111110010101100001111110100001110100010110000001110000111110111100011010100010100000101101001110011001111011101010001001011011010100101100110101011001111110101011001110010010111110101100000111001011011100100111011100110101111111110011101010011111111000111011101000110101100111000011010101101000100000011110100101010011100000011000110000110011101110101000111010001101101000001101010111100011110011011010010000011101011100111010011000111001100100001101100011011010010011110000011001000000100000001000000011110100110011110101100100100110000010101001110110011011101111110101100010101011100111001000001011100101001111010001110100101010010101011000011111101110110110111100100001001100010101011011101100111000000001000001001100001010011110111100101101110001010110111001000011100110001011111001011111010011110010110111110111100110100100111001001110000011101110001011101111111010001001000010111000110010011001100101110111000011100101110111101001100100110100001011110101100010101001010111101111000101111010111111011101000000010010111010001110010011100011011001010110101110001001010001100110001100010100011101110001110111011101010001000010100100010100100001010001000101100001111111100000111111010011000100011000110010101001010101100101011010100011011001111111110010101110101010101011100101001001110111011101000110001111001110111001111011110110011010111110000100100111010110001010100001010110100110010111100011100000011111011111001111001100100110010001000111110010010101000110000100100011011111011000100110000101010000000110110101011110010010101001111100011001010111110101010000011111001101001100110111000100111011111001110101000000110111010011100001001101010101110101100001010010101000010000010111100000000100111000000001011100001110010110000000101001011110101000111010010000101010000001001110001111011000111111111001101110000110000001111110011010010110000110000001001110101111001011000100000101001000010001111101110011111011100001101011111101010010000000000100010101000010111100000100100110000000101010011101111010100110111001011001010110111011000110001111100110100100110101111110110111000111110100111111010000010111101101010010001100111100110101010000000011111110011000100010110100110010001011100100000001110001110010011011111110001001101101100000111011001010010110001111101000011010010110011110111001010110001100100010001000011100101100110111111011101010100011001110000100000100110001101110111110001111000011111100011111000101010101001001010111000110111100001111101100001100110011100001000100101101101100100011110011011001101101000101010010111000100100101101011101010101110000000111000111011101010110110110001000110001101000100101010011100100100000010100011111111000101110111000001101100101110011101001101110011100000011011100100110111011001000001001010100101100100010001001111101111100110011010100010011011110101100101100011110100001101000000011000010000110001000000000001011100010101001001010000000100110000011010100110110010010000111111000011011000111110110101001100110010010011100100100110100000000101101011011110000101001111001010011101---------------------1010000000110000110011010010110010110110000000101001011100100011010111010111001100001111100010011100001000101010101110100011000001111101111010110011110010101011111100101000110000110100000100100000001001011100101100000001100000110101001010101100101010001101101000101010001001100110101011100010010100010010001111110010000000000110000110000010010011100101101101001000010001100010010010110010111011010101010110111110001011011110110110010000000000110110100111101111000111000110011011101100110101111000010010011011010000001011000101100110011001111100010001011001110011000011100101001111010111101101100011001000110010010110011110011001111010101010001110010011010001111010101100011100000101000011111001001000001011011110100110010011010111001110111101011111011101011011101010010110001010001000111111000101111000101011000000000001100111101010000111011111011100000010000111100001101111100110110100101110101110011010110011110001011011011110110001001110000000000010001110001100110100101011001001100101000000100101001101010110001100111111100010110101100001000101110111111010101101110111000111011000001010110101111100010010101100110011011010001001100110110001000110000011010110111110011001001100111001010110010110011001100001010110101010001011111000000101110010010111110001000001111100010011011010110001100000010100101110011011100111010000110000101000011100011010011011111100000101100101111010010100010011101011000001100000110100010000110001100001111001010011011010001011001101110101100000110010111000000110010001011011100101111110001000100001011111000000100000110001111110001100100111011000000110110010111100001010011111110000000011001010011010011110011100000011110000110000010010111100110001000001000100100011100011011100100000000100100111000100011101101001001001111101101110111100000100010100100100111001011110110001011101111001011000100110101001010100111110010011100111001101110001011000110001011101010100111101011010101101111101100110011111110101010101011001111010111011111000101110000101011111100110110010010100001000100000010001101011101111010000100010001011110101110110001100110101110100111110001100001111010011101101001000001011101010111001100010111100001110010010010010000011111110100110111001110110110101101010001010110111100000111000011000101101101010111100001111101001010110000010011011100100010101010010011001000010011001101110001000010010011101101001010001111100000100000101001110101001100011000001100110110000100100001101001011000110010110111011000101100001100111011100111110111001011110110111011111000001011010010000110011000001110110101011001000110101101100010000100110101110110011110010100011010111011110000110010010001001001111100110001100111100011011110100001100010100011010011100001110001110000101110000111101000101111001101101011001011100110010100001110011101001101000101001001010100010101100111100000100000000011101011010011110001000000111000110101100111001101011110001100000100010000001101011010000110111010010101100100110000101001101000001111011011000001011100001110001010111000111111000001111110101111001110100011110101000110111001100001010110100010001111110110011111001011111111110011110110000111001101000000100111011001101101000110000011010111100100110010111001001010011100110000011000110101101100000111101010111000001000110100001101001100111101000100110110101011010111111111100001010100010011010100101010100111101001010111100000111000010000111101001101001110100110010010111101001000011101011101010110110011111010000111001001011100010101010001101000000001111011110111101111100000111011010000100001110001100101010010000111100101100111100000110111001000111001000110011010010011000010010110011111001100011110110101111110010001010111011001100100111010110110010111000011110001011110000010101100001101000110100010010100001010111010101011100100111010010001110011100000000011010001101110010011011111110111110011010000011000100011101001111111001110000101101101100100010010010001110010011111101100110101001110000010101100110010011000111011010010111111011010101011000101010100101011110011000011101000010001001000111100100111100011010111001010101000110010100110101101000011100110010011011111110000111110110100000000001110110101000001010011111000001101110100011010100111110110011101110100101011001010101011101011011000101010000000010101010011010011101000010111101110111100010100111011010110000001110100100100000100001110010010100100101011101110001000100101010011111110001001110001111010101110100000011101110011111100011000110001011110100010101111101110001010111000010001100110110111110111011001101010001100011101111001110110110101010000001100000111111110100111101000011000001001011100010010000010001100000010001111101100100111001011111101001011100011110011010110011011100110100001000101001100100100101010111111011001001010101110000111001111010100001010000111111100110110011100010101100110111101100110000000010111001010010000110110100011101010001011010011111000101011010001111100010011000010010011110011100011100010100100111010110010111011011110011101000001101101010000101011111101101110010101110010000111101011111101010101011011111001100110001011100001011110101111011100010010001111111010100010110101110010111111101100000101100100110011011001110001010011010010011000010010100010111000000110010101101101100000100111000000010011011101110100101011011010011111010001111110010011110001001101010011111111001111110011001001001001001100010000011001100110011001001110000010101000100110001100101010011111001000011100101001000011011010011101010000010010100100111111010110101010100011100001000010100010100010000011100011010011110011001110011101110111101000100010000011000110110000111110110001001110110010001110110011111110100100110010001001111110010101000111111001000101010110101011101111111011111110010000001100101100101111001100011101000010010100100000101010101111100010100111011000111110110010001111000011001111000100111100111001011001100000000111100110011000110111111000000101010100111101000001011110110111111101111110011101011000110000001100110000111001101011111000100111110010100100011111001110110010010111011001010011101001101000011011110100011100111010011100100010001110010000011111000110100011001101000110100001111101010010000011001011100010100001100111011111001110111010100010101111000101100111010000000110111101101010010110110010111100100111111001010111001011000000000111101011111010100011101100000010000001011010100100000000101000100011110110111111111000001110011011011101110011111111000010100100101011111111110011010111101001100001110001100010011100010110110110010010011010010010011001011111001110000000110100100000110011011001110101010110100101100111101010000111000010100111100001010000011111010111110110001100111000100001000110100001111101111000101001100100101000011000111111110000101001110111111100001110110111000111010001111100011000011000011111011010001111111100111100110111010001001100011111011100010011101110101001000100001011011101110101100011101001101101101000100000111110100000100010000001010111001100101000000101100101100000001010010100010001010010000110111011000010011001001101110010010110101000000010101011111100010011110001101011000110111000001011111111100101001011100110110010111010011101110101001000000101100100111000011010010100001101000111111000011000001100101110111000011101110000001000110000011101001100000110010011011011000101001011001110010010000100110111100001001001010111001111000011010101101100000100111100001001110001110111100110110110100101101010011001011000110110001110010011111110110101000101010110110011010000001011001000001000001010010001001111100010110100001000111001110111110110110010011110000010100100101110000101011110011100111011100100101101001001001001100100010100000111100101111000010100001001000011100010111001000100110101101010101010010101011110100111111100110111011110110111101110010001101001001100000000111000001000100101001011011011100110100010001111100101100100111110010101101111101111001000110001011010001101010111110101001001001100100111101010011010011000010111100001000101011111110000100100010010000011001111111100110011110011111001111000111010011000001110011111000001000111011110101010110001101001100001101010111011100111001001001101111111110101011011101001100011000011100101010110110101110100011110100000100010001011110111001100001100110110000001010010101000110000010011100000111111000011001001000010001010111110110000111001101000011001100111100101010111100011001000011011111110001100000100011001010101101110100000111000010010100001011011111100111001111100110101100000000101110101011011011100011010011110001001100111010111010000101000100000000000001110011100100100001011001001111101011111001000001001111100100010011010101101000111111110110010111001110010111011000000100111110011001011011111001110000010110000111110100100111000110000101001111110101010100000010000001011010110011110110000111101000011001111101001110100110111011001011001110001100111001010011101011101001011011000100110100000011111010001110111011111111000001010010000010011111110101001110011101011011000101011001001110110111100110001100010000100111111000001011110101111110110101011010111000101001010001111011111010111111010100100000001100011011001000010001010000001001110010011000110110011011000011000111100100010000001000000111000101100010010010110100000100000010111111100001110001011111110000001101001000001100110010101010110110100111101101001000010111010111110110010000000001011111110100010111110101101101011110000100000000110011000000010011000001011010011011010000010100010100101001101101011011011110011100001000001010010010011010111011011110010011111111001010010110110110101001100000000101100011100010001000001011000011110011100111000101011011000011 +01111100011010111001101110111000000110100000001001000011001100000010011010101101011101100000010100110011011010000010100110101010100001000000000000010010010011101000010001001101001111000111101111101001111111100011110111001100001011111000111111111101111110001110011111100011101011011110101010010101100001111110010001001111110001010100000011111111001001011000001010100011100011001000010000011011111111011010111111010000111111011110011100111101011001101001110011110000010110010111110011011110010011101011011100001110110001010100001110111101001111001110101111001110111100000110001110000111111110100000000111011011101010101111110010111111110011000010011011000011001111011111101000001111100000101011001101110101000101010110100101101111010111001001001100101001000111011011100000001010101110011011100001011110000001000011100110001100111001111000100010110011111101110010101010000011111010110011100000110101000110101111011100111000100111010000011111000011000101000001111000100100001010100000001100101111010001100011111000010111110110110001001010100111110000000111100001011001110101011100011111011110000001101011000001101111111111100001101111010110011011000001000010111000000001000111100010011110111110011011101110100111100001111000101100000000101000001100100011101001000001101000010111110011011011001111110010100000111010011010000110000110111100001110110111001001001001010100111111000110011100110100110101001001101111111111010001101111111100000111011100000110100101111011011100011100111110001000001010111001100110001011100110010000010111011100010111000010110110000001000011010000101111000011111001100001101010011011100010001101111011010010100111100100011111101011110011100011010011111010001001100001101101011001111010110000010101001100000100101001010101001001100101001100010100001100000101101000101111110010111011001010100111111001001100001100100010101010000111000101011110110100000010100000001111100101111100000001000010100000000001100101010110011101001101000110111111101000100010110001001011110010100101100011110100000110001000011110111000010000001010110011000001100110110100111000110100000000010000101101101001101010100010010011111111101111001111111000101111000111101110111110100010101001101011111110010010111111101111100100010011011001011100110111110111010101011100110000100100010100011001000000011111001110111110001001011010111000011001111001111011101101001110111111110000100110000100010000101011101010010001010010011101010111101111100100110111000110111101111011011011101100000110100011010110010101110010111011010111011110110101101011000100110100010101010010100000110000101101111111001000011011111110101011111000110000101111010110010000110011010001100000100100110101001111001010101000111100010110011111101101011110010101011101111100001000100111111011100001100001001110011000101000110101111100110110001001110010000111011101011110101101101001011000100111010100010010011111111010011011101101111010001011110011100000011011100001010010001100110010100110011011101001111001010101010100100001011100001100110011101001001110101011111111100110010011000111001011101010000101010000100100110110001011101101101100110111110000000000000001000000100111101111110100000111110000000001001000011000010100101101100010011101111101011100111101110111011110100000101100110101001001100101100011111000101011001000010100101001100000111011001011100001001111010101000100110110010001011111100001010101011111010001010000100001010000111010111111101100110000111101000111101001011011111000111111000110010110000110111101101001001001101100111010001111110100111110111101000001010011111110000111011111111000011111010100110100010010001111110000000001000101100100100110110101011110000010101101000010000011100100001101111110101010101001010100011111011101101110000010011010000100011100111001001101101110110000000101000001011011111111011100101001111000110011000101100000110100100101011001011000000011111110000010110001011010001000101101100110001111010111000010100110110000011010001000001011110000001000111010010000010101001010100010111001101000100110111100101101001011100010001111110011001001001000011010110001111001001110111010000101101001101010111100001100100010001111010011111000010100100---------------------1000010100010000010010010110111011111011111100100010011000110110011111011001000000001001001101100001100000000011011111110110001100111011100101100001000001101000111100101000100010000010101101111100001010101100111100010111101110000011000001110010000101011001001011110011011000001001111011001001011100010101100010010001000010001110101110111000000011110110000000111001110101000000110110010111000101110110100110111100101001111001011100101010111001010010011001001000011010001110100011101010010101100111110110101011111000000111110011000111111111000010110101100011000100101000000110110100001010011100001101010001110101000010001011010110011101101000000001001001101000111101000100111110010110110110111100101001001010000111111111100101110110100011001110001000000100111000000010110100110001000001000001100000011101111000101011000110000100010100101110001101110100101001111100101111010010100011001100100101000000110001001001010111001101000100010100111100100011011000010100000101111011010000010111001100100011111111010001011010010000011100000000011010110101110001001001001101011111111101100100010111110111110010001111110111100001111100111011001110010101001001011010001100011000111110000111001000000011100100010101100001101111111111101101001110110110110100100101101000011001100000111011100111101100000111111101100010001001000011010100010110001000101110100110011000101001111101000101011000110100110111000110010001010010110110010111001010000101100000110011110011011101001111001101111100010011010000110101100101110100101011001100001000001101111011110010001111100110011011010011110011011010101001000010010101001100101011111010001010110111111101100001100110111100100000110011111101100010001101011100101001010100000100000001011001110001011111101011000101110110011101100111110111010011001110010110011011011111101111000100010011110100000000000000001100100110101010101101100001000011000011001100110000000101101001000001011101011000110111000001001011000000101111111010101001010100010100000101000010011000011010110010010010001010011000111110000001100000100111011010101101100110100110101010101001110101011011100111010000000011000011101100001010011001110110010001011001110100000010100110000100111000100011011001010100001110000101001001001011101111100011100101111011011011111110101111010101001000110101110100100011110111011011001101001101000101101110101101011100000010011101111110001101110100111010000010000000101111111101010001101101000101000100001000110000011010001000100111011011111101011100010011110001101100111100011000011101110011010011011010111110001110011110001101110000001111010100101111001101110011011111010011110101000001111011000100000110011110001110101000111110110010001001101000111010101110010110011000101011111100111010100011100101110001010010011000100100110001010110101000010000011001110101110011010100110100001100100011010010000111001101010110100010111000101010110010010010000110101110100111001110101011100101000000111101000011100001010111111000101101100100001000111011001011000110100101111101101100111111001101111001001101100110100000101011100011101111110011010100010010111000101111011101111110101111111011011111010010100011101110101101101000100001101110101011011000110001100111011110100001101011001111001001110000111011010101100111111011100111111100110011001110010111100010110101100011010000001011101011001011110000001101111101110001111110100001001001001111010000111001011111110000001100101100010111011110111100000101010011001111101011101101101100100011111111010010100100100011101111101111101000110101111111001011111111000101001011000111001011100000000000011001100101010000110100010110101010001110001000000110100100000101101110010110100101011111011010110000000100110010111000010011101011110100110001110110000101001100111110110011111110100100001110100111011011100011010111001111000100111101001101001010001001111001010011100101101110100110101111000111101011000100111100000011110001010001010101110011101010010110001011100110100110111010110001110100000100111100000101001010010101101101111010110101101100110100110000010101000101111111010100000110000110100110110111111010111001100010010110001011111000001111000110000101001110010100110011001001111110100111011100101111011000111101011011010010011101001010111011011110100011001010111101110100000100111110001010011111001101100111101011000101000101111011100101001000001110010101101011001110101101011111001010111001010110011110110100101100011110111111001010011101000001011010000111111111110110100100100010010011110100010100100001010010111110001010111111001101000001001000101101110111011110111110111010101001111011010010010111000111100000111110011111010001111001001111100000101101111100110010010110100101001000100001100111101100111001000011111101111011110100110100011011111001011111101110000101100001101110101110000111001000011101110100001110110110010100101100001000010111111110110110110111010100011010000111001000111101000100010111001101000010101100010100010101010110101011010011011010100010010010011110010101010011100101000110111101111110001101100110011000100000100111100000010000010100110110111100110001111111100010101110101111001111010101110011110110010100111111000101010001001010010010001010010100100011111110010101011110010011110010000011110000110001001001001111110110111110001111010110100100000111111111011011000000001100010101010010000010100111101101101011000000011000101110000110100011111001000010110111110011000011001010110000011100110000101111101011101111011110110001110100100001000100011100110010111100011000110000101011100010111111010011011101101111100000100110100110010001101110111010010000010100110000110010100101000100101001111110100111000000100010001010100111001011010111111000110101001011101101110000010110000100110000000110001100100100100110101111010011011101011111011111010111010100010100111110110010101110111011111101101101010000001110001011010111100110010001010010110100111110110010110100111110011011111111011001101101000011100101001011000111010001111000010111110101011100110010001011010111011011010011100010111111100100101111111101110100010101110001010110011000010010101010001011101111110100101010001111101001110101110110000100110011011000001000110101010110101101011110111001011000111100010110101111100000101000001000101110011110001101100011011110101000001110000001010001101110111000100010000011111011001111100000110110010011001100110101010010011110000101010001111101100110111111011110011111111110011100010101101010110010011100111010101111011100010000111000100110101010011010001111101110101101011101001000101011010111000010101001111111011100000010111010000001100111010101011111001001000010100000101000110010101000010111110001001100111110010101101000001100010111010100111001001100010111000100101100110011100111000101010011011010010101111110101111011010001000011111001010010011001010001011010010011011111010011110001111011101111110101100011001101111100010000010100110001000101001000010100000001100001011001000001110010010111001000000011111101000011110111010110111011011111110110101010000000011100010010100010111110100100010110110000110000111100100111110100001011010001100001110111001111010000111100000011101110110100001100111011010010101000101100101110011001100111111111111010000000101100110000011111100000000000101000011101000001101101100011000001000111010100111111000010001111111111001010100010001110001000001101101100100000110011010010011010001010010100111100100010010110001001010000100100010001110010110100110011011011111100011011110010000100000111001110000001100011100100110010100101000110100001011100100010011111110010111000111011111010011010101100000101100101000000100001111110000110000011100001000010000100111100111010000100110111000010110011000000010110111101100011110001101100100011010111101011110101000010001000101011001001101100010111111000001100110001010111010101011000000100100010001010111111101011010101001110000111110000010001110100100100101110101001001001101000100011110101010000101110100101111010100010110100111101111000010010010100100111110100101010001101101111000000111000011010001110011101110010111011011100111101000101101001000111001111011001100010000001101110101011000010100001000111010110110101101111001001010010011111111011000001100010001110110001100010000011111000001110001010110111110011101110101011000011001110010111011010111011000010111011110100001010000101000010011110111010111000100001001011000000110010110000000010000000011110011110011001010001101101011001000010010010110111110001111101100010111110001110111011010110100101101100010101101000011100101100001101010001001000011010001011111110101010010110011101001000110010101101011101001000100001101000110011111101010010000111010011100000001111011001110101001001100100110001101111111111000010000100010100001000011101110000000010001110000010001101001001001100000111001001000100010001110010011011111001010100000101110111011010101011111111010011111000101010001011001110100101011011000001001010100100111111100101011010011011101000110110001110001110001101111101110010101100101111011100011100001000100111000100101100010100111111000000111101101011010010101101000100111100101001100001101010000101000101100001101000111001011000001000101100000101110100101010001111101011101101010000111001000100000001111111001010000010111110111000000110101001111100001101000001101001101010011001111010000110010101101100000010010011001110000110000010110000010110001000010011000001011000010010110010110001011011000101000000100110010100110011101101110100110000101010001101111111010110101011010110011110100000010011010010110001010101111110110111100000111111110111011011100111000000111000111111111100110110110100001100010000111100011010110101010011101001011100000110100101111 +11101000111110111011111100110101101101000100110001010101001100111011001011110111010011001110010000011001000010000111000100111001000000011011101110111111111111001000001011000110111011000000010011001111010010000000100100110101000001000010111101000001110101110111100010110111111001011100010010110000010011101100000111100101000001001100100010111000110111010101111110001110101011010100001111100111111100000100100100011101111111100000011100111100111000101010011100010110011000101101101010001100100001001111010111000011001100111101000101011011111001001001011010100001001101000000010001100110010111100000011111101101111010111010111111111000011001101110010101011001111101100000101001100100000010111101111011101001100000011100011000000000110111011000000101111111010010001011100001010000001001011010011111101101001010110011000001001000110100101000111001000110011010100011011101101101011000100000001111011111010011000001001001100000110010110100111010000001001101000010000100011011010100011101110111110010101000100100100110110111101001111111101100010011111011000001101100111000100110100010001011011011011001110010101011000100010101101111100101000000011011111000111000110100011110101010010010000111101111100110011011000011010001010100010000100110011000010011011010111000100000110001011000001011000110100011101001101100010101100111010111101100100010010110011111010111000100000000001001101110100101101011110000111010100101001110100111101011101010110000011111001101000001011111111001101000101110110000100001101111100000101110010110110111111111010110100001110100000100111101101000000101101111111000010010111110011011001011011111100011011000010111110010100000001011010101000011101110010010011110001010100011100110001000010000011010100011110101101000111101001100100111001000110100110100001100100010011111000000001111101100011100100000000011001101101101101001001001001111110010101110001001000011100000110000100010001011101010011001000011100100000110100011110001001000001000010110000011111100110011100010000111101100001100111100111110110001010011100101001001011100000111000010111000010001110110011011011001000101101010000101001111000000001100111010000100110110011011010001010000000110111010110011011010110011101010010101001010110101100001011100000010101000110101110110111100011111100100011010100001001100110000011110100011000100110100010100111011001010111111000111110010000111011011111001011000001100010100011011001101010110000101100100100010011110011110101101011110100111101001011010101100000101100100001010011110111011000001011110100111001000100101100110100111010010100001010001001101010001100111001000010000101001100100001111001111110010100011110101001001010001000001111011011110001000001000100100110000100111011110101011100110110001100010101000111011110110010100010100100010011010110000000010000110101111110110001010111110010100110000111100110001110100011011110000010111000101110000010000111110101111000001111110000101101111110100010010110111100001001100110000100001011100011010100010100010111101101001000000111011101100101101010000001000000110011011000111111000000001110111010110010111010010011001010001010000100111100100101001011010101111001111000011100001100001111110001100101101110100100111001010110100100110000001111101010100011011111001010110011011001010001101110010011010000100100110001110101011110010011001001101110111111001001011010000110100011001010011010001000010010001111111011101101000101100011101100010111000000111010111001011010100101001100001110000100100011011111000101111110110101111001101010010010111101100001000000011110001110101010011101100100101100001100001111100110101011111010111111010110001001111110000110101101001110100011111001001111111000111110111100010000101000110000010010000101011101110011011101101000100010111111100101000100011000001111110111001100000101000011010010111000000101111011011001010010001111101011100111111101111100000010000111110100001110010101001011010001001110100101110000111011101100101010111011000000101111110010001001111100101101001100000010010011000110100011001000000011000011010111110111001101000000001011011110101100111000011000110000001010101100001110011010011100110001100110010110010000101101000011100000---------------------1101111111001001010101011001010100100010101001110001010001111010111010101110101111111111001110111110101100000011000110101010101011001110000000101010101100100000110010000001000000010000111011001011000000100000101100000101011101011100101111011011010110111011100000011111111001010001000100001100000101000100010100100111011010000010100101011100101010011110110011010100001001010111111000001111000100100011100010111000101010110100111111001001011011000110111001011010000100110100010001111101110110000010101100100010101010111001010101011001111000111000001010100111001101011111110011001100001100000100001000101011000100010111010000100110000000101110101001011111011011111111000011110100110011110101011100110110011111000100001001011111011110100111011011011011010011101110001010001110100000101100100001111000110010111011110011011100110010110100000100001010111111111001101010110101100110010011110110110011110000110101010111010010101010010111110011111111101101100100100100111011000111001111010101011110010010010101100111111111010111100111100000000100110001011000001000011001001101000001001101011111001110011000011000110101001101101101000011010000101111001101111000011011110111111100101000110111011111000001110010101100101101111011100001101010101101100001011001111000001100010110011101111100100001000100100110001111000110111110100111101111111101011100101011100001110011001001011000100010000101010110101000101110110110010001111011011111010110101011111000100100011001011101010001001110001111101110110010011000101101100001001000111011010101100101100111100100001100001111101110111100110110110110010100011110111110101101111111110110001010000011111110111010000110100110010010111011101010001010000011001001010111101011001111011101001100101000100000111000001000101111001100000010001111011110100011101010010111011011001010011011011110000010110111110000110011011011101100000101010001010010010011010101001011111001010101101101001011011110110101000110011111110001001000001101111000100101011100111010111001011100001110011011101001011111000110001110011010110000010001101111110111110011001101000001100110111000100110101110110010010000001000001011111010011001111000000111011100100100111111011000001101100000011101011101101000010000000111011111001000010010101011010100010011000000101010010110011001100001100001010010111110100011001111111010111100111011010101110011110000011100000100111000111001000110111001101011000011100101100001010111110001101011110011001011010001010001101001000110011101000001000001111001101000000010011101001110110101110101001000111100010011111111101001100011100101010111011000001000100101111110110111011111000111101011110100101010101101110110011000000011101110010011101111101110000010010001000000100101001000000100010001010000010101110011000011111110101011110010001111111000010001011011001100101000101111110100000110011101011000111001111110110100011010100101011010001000000101001001001111000000000001010001110100010111010100010010110110011011011000011100110000000100010001111001100111011111100010100000001111001011001011111010111001110111001010101010100100001000000001100100111010110111010001000111000011111110100101001011001110010110101111110000010011000001100100011111100000110101010011101110011101111000101110100100011010111011100101100001111110110110101111010011111100111001010111010101001111010011101110110010110001110110101101000101111101100101111010110110010100001010010000011001001100010101111110100010000100011010000010000101010000110011100011100101100000001011110001011011001101001010101111110110001011100011001110001111001000111010000110111101011100110110001100111001000000111100011011011001011010111010111011110110000010101111010110101100100100100111100011100101001111110000111001000111000111010101010010001101110101101000010000000111000110010111000000101100100011010111001101111000101001010011010111010110100001011100000000000101110111011011000101101111100111000000000111110100100110100001111011010111100100111100110000110110011101110001110101000011100100000100010001101110101110010100001010011100010000100100001111101000001001100010111010100010100001001110000011100111000100100111101111011100111001100101110011100010000011011000010001001101101111101011111001101110011110001111101010101001001000010010000010000010010010100100101101101011001011101010101010000110111000100000111001000101001010001100101010110010111000100000010111010000001001001111000010000001010000101101000000111000001101111000100011001101101001000011100111011010111111110011100101111001000001001001010100111111111111001000010010000011111000010000011010110010101111001001110110000011111001100110001001101101110001001110110011000011001110010001110010101010101010011000001010110000111001100011101000100110100101101011011111001011111011010011100110100010001110110111000110000001001110010110110101000000011010101101011001010000000101011110101100000100000011110100011001011010100100111010111001101111111010000110100110111001000101110111001000011000000100100011100010110101010100010000101011100001101101011011000011110110011001100010110001000111101010001110101011011100011011011101000000111000011111001110011011011001111110001000101010000100100100110001111111000001010100101111111001101111011101011110111101110101011001100011100010010111000110110010000001000110000111101000011101100001101110011010010110101110011100010111000101000100011101110010110011011010101111000110011110110111111101000111010100110001010101000001001001100011001101001001110110101010010011101101111000010111111001100001011001011110010101100111100110011000000010111100011011010101011110001111010000100101000110111110101011101110000111100111101111111011010111000111011001100001001000011100100100101001110011011100110111011100100101010010110101111001011011000101101011100111011100001010110111010110100000111101010011010001000000011011011010010001000101111111100011111111101011010111011110010010111010010010100101000010110101110101000010100010100111011101011100010001100111100101101111101001010101110001100011000011011101001010101001100101010100000000001010100101000011011011100010110000100000101111110110010001101110010100101000011010111111111010011011001001000000000011001100100101011000100110110111001100010110101100000010111001110000010001000001011101100001010100001011101111010001100110010100111110111111100001111000011001100011110000000010000000111100011000111100001001001110001011100011000110110010111100011110110101001100100011010100100010010001000110111000000101111100000000111010100001111101001011101000001101100101101101101001011110100110001101010110000100101010101011001001111011001000011000010011100000000111100010100101011001100010101001010111011000100000000011101100110010010011100000010100101011110010110100000001101101010100100110000100111100000110010111100001110011111011101100110110000000011111110000111101011100010110011111110000100011111010011011000000011111100111101101101111100000000111010100000100111100011111001101110100010111001101010110101000010010101010100111010101100011001010011001011101010000000101001001001000011001010110110011011110101101000101000110010110111001101000010011111011100110000010111101010000000100011010100011101100100111001011100000111101010000011100101100011100110000110110001011001100010011001010000111001101101101101100001111101110101000101010001011001110010110001000001101010110100110100101001100100101101101011000011100000111000101010001111111111010100010000011110010111010100101001001010111101100101111110001001000011111101100101101001010010111100111000000101110110011010010111010111011000111111010110000101010101000111010100000001110000111101010000011000111010100000111111000111100111111110011011111100010101000001110101010110100100001011000101110001001010010110000111001110000001010111111001110000001101111001110111000010100000000100110010101010101001111110110101111110011000010000011001001000010101010110100101010000101111110001011001011010110110110110101110111110011110111101101111101010101110000110010010000001101110111001000100001100011101000001111000111100011101100110011110010010001000010101001010101111100011100110010000101110100001100101101101101011010010011010011001011110101001100100010110001110110110110000000011111101100101100101111001010111101010110100110010100100010110110011111100011000010111010111000111011100110011100011110111001010101110111111000001111110111000000101010010011010001110110100001010011010001101101111000010000101100000010000000010111000110101000111001000101111011001110101100110001000001111010000011100101010110010100010110010011110000111010001011001010010110001001000101110111011101011101111000000000011111101111111100001000100100010101100111101000110010000101111011000100011110010110110100010110110001100100010110110010110010110100100001110011100111110000010111010011100101011011101001110110111001011000010010010101100010010000001001000110011011010101010010010001100011111110101010001111001110100001111001011101101101000111100001001101000110010111110001101001011010110110110011011000101100101000000011010010100111001100001111110000011100100000101011101111000010010100111001000101000110101111100101001110101011010011101010101000100010100011001110100001000100011010101011000101110111000010110101011000000011000011000010110000100000101111011001101010001011101000110111010011011001000010110110011111100101110100010000111111001011100000010010100011011011011011111000100101001111001110111010001110100000111010000100110100101100011001001110101010010000100000111010101001011000110111001110010101000100111010010100101100000111100000000101011111110110001010101010110101110010000111100011100100111101110101010001011100110110011110000011111000001011111011110110 +11000101100010100101100101001001011101011010011110110000111001101011101011101100111111001101110111001111000001010111100100101010001111110011000110110000001111010000111001110010100011100101011111100100010111001100010011001100000100000101101001110000000100100110110111101110001010011101100110100011101111011111001001110111011100110100011100010000000001110110101000011100011001111001111111110001110010000111000000001110101111110101110111110100100111111000101000000111111110000111011001100010100101010001001010010101001110111111110001100011001110000110001000011110101011010000001001100000101010101110010111110100001100110000101110100001010100100111010010111001101010110000110100110010111100010011101100111110101101100111011011010010110100011000111100100011010110011000100101100100000111101001010110111101101100000101001111000000111001001010101010001011011111001110100111001011001010010101011011011000010101011111000111001011011001100101010101011111011010100111101010110111110010010000011111100011001011111111000100100000010010001110111001010010010110001010101010001001111011101011110000000110000111001000011001110101100110101100100111101010010001001110101000110111111011110001100001001010010001100001000110101001101110111011101101001101001000001011110001100010001100000110111111010100110011000110111001110001100001101000010110101010111111111110000010111011101101000000100011011110100011001110100101011010010000010000101010110011100111110001000000010101111110110010110110011010001000001010100000001111001001100010110101010100000000101101000001011001101101001001100111101100111110111011001000011110010000110011011011001001010001011000001011110001101110110011101101101100110101110101110000101111100011111000111011101101101110001011010000111011011000100010011011011101010010010001010100100000010001101110000100011100110111011000001111111110000011110000101000101010110110111010010111001000010010000100010100110111000001101001101001100001000110001000101001001001111011101011000001100100111110001111100101100110001110011000011011000101110001010011000010101010100001001111101001010011111110101000111010010101111010101110100011110000000001101010111000011101111100011111010010001101000101000110010111101011001100001101001110111000010100010011011100011100100100000011010011101010010010110010100110111100010000000110001010111101111101000101111100000001101011100011000101010110000111010011011000111011100000100111111000100101000100111000011111110011111100110011100100000100101011111011100000011100011101100001001001110001110111011011111111011111010001011001001000110100001001001111000000010000000000110101011010010000001010001001110111010001001011000101011001000010011000011101010000000011100110011110011001001110111110100110111110100011010011000000000010100001000011100100110110111110011110101011101010000011111001101011010000101001100000000001111111001111100100010001110100000011001011110100001111001001100000101110001001010001000000111111110011101100110101110001010010001111100100101000011100000011111110010000111110100000100111010110100001110101100100111110000101111011111111000110110110011011010100011001001111010011010100000100111100100001110000101111001010111100010001010010100001110111010100101001011001100110100100101100101110010101101011110100000100110001101110100010001111000011101001010110001111100110101010101011110100111100001111001101111000010000010111001100011000111001010111000100010011000010001111100101000100101001111010011110011111001000001101100101111111001001010111111101110110110001011010000100010100110101000101110011100011100111001100100000011011001110001001010000101100001100001001010100110111110101101001111010001110011111111000111101010011111110101101000000001101000000011000101010000101001010110101000000100011111100011110111111010010100001111000111010011001110100110100110011100100000101100001111110000101110110010011110110010101110001010101000001001110100001001011111101000101110100111101110110101000000001010001010101001101000110010111010010100010100001100011111110111001111011100011111111101110100000101100011111100100110000101101010000111101011000101001001111001001000001000111101101011000110010100110110001110011010100011---------------------0111111111001011011011101010100001111011000100101000100111010011001011001000010011001001111111011100010000100011100101011111110111111110100001001011110011100101010000011111101010000110010101101010101011000011000000001100000111011010000101010010100100100010000111110001001101111100100011111100001100001101100101010010011011011010011000011011010000101000111000111111001101010111011100000000100011000110110110000010010001001110111011101010110011101001001011010110100100111101100011110011100001000001101100100111000011111001011010011111000110001010000011011000110110000100100011001001001010001101010101011111000010111000001111011101110111000000010001100100010100011000010111000011001000010010001110110110110111010100100110001111101101110010011100110111110101000011010010011000100101011110010001010110010011000011000101000011100110100011010111100111100001101110100110100101111101111101000110010000001111000110011000100100101001111110110100001010101010001000111010100111010110010001101011100000110110001010101001111111001000000111010001011001010001100001000000110001110110101011101011010000111001110011111001100010110011010010001001110101000011110111010110110001100010111001111000110000000100010111101011100101011100110010000001100111010110001010000001100011111011100000100000100000010001111100011101111011111011000100000000100101101101110101010010000001001111010110101110000100101011000110100001001010010001010111110100110011010000100000011100011101010010100101001100010011111100100100010011001110100111011010001111001110101011001100001001100001000100011101100001011111011011111100011000100101000111001101111110010101010001101100001100111110010100001011000100000100111111011110011010001011011111011101111010010010100110111110001101111111000010011001110000000100111011111111011111011000101101111101011101010010111010111000000110100000110111001101111100001111101001011100011101110101110100000100101001111110111100101010000000011001110011011010010101110111010010011101101111000110101011011000001011001111110001100111101001101011100100100011101101110010000110000001010100101111001000011010011110110100111100110111101101000000101001010101001011101010001100101000010111100001110000011001111010010100000010100100101100010010110001010100011011110001000100001101101001011000100010000111010001100000010000100110010111001110011101101011011010111001000100110100001001110111101110010010001000010111110110010111011101010100110101100110101001000101110000111110110110001111011110111110010100100100010001100110101110100111110111010111000101100000100001111110010011011111000110111011100111001110000000101000100110010010101110100111110111010011001000000100000110011100111011000101000111100100111100000101011011010000111101111001010000110010110111100000100010111010100110001010111110111010001111100111010101011111011110100111011101000110010011010100010101110110110001101010110101000000100000011111001111001100101111010100111000101100001100000010011101111111101001101110001100110010011111110101010001011100010100011100110110111000111100100100111110000011010100000000100010000000110100110001111010011000110000000010111101111100000100111011110010000110011100011101001100001100000010001101100001011011101101100010100010010100101000010011110110011100010001111001111110110100100001101101100110111010101111011101110101100001001011110001011000010101100001111010000111001111100100010000100000101001101100110010010101111100110100001011010110011001010001010010110011110000010111101001111000011001110101000101001000110000010000010100010011101110010000001000011110110111011111111001010000010001111011111000110010101111111101011000010101110011010100110010101001101010011001000000001101100100001111000100000111110101100111010111111011010100110110000010111100110010101111110110001010010000011100011011100000100100101110101011010110101000010000000111010101100001101110011100100111000110000011110000110100111111010111101110011110100101101011000010101111100011111101110101011101011010000111100011110100111000111011100100111110110010011110110101111101110110001010000010101111100101010011001000101010100100001111100011001100000110110111101001100001011011011001110000100000100110001010110111111010101110100010101100110100011111101010111101000010001011011111111110001101001000000000011010000010101010010111110001110010000011001000101000011001101001101000100100011100111000001111110100110010011101100000111001010000001011011101101110000001110000010100000011001001010010100110110101111001000111001011001011001001011000111101110111011101110110011100001001011110101001011110000000110001111011101010000100111101101011011111010011100100101001010100101000001110001110111110110110100110001001110110010001100110101011011010111011111011100010010111111000110000101101101110010011111011001110001111010101100000111001010001010101001010011011001101001100000110011011011110100001111111101011000001001100111000101000001101100111001111000100001000010000100110100111100011100100010110100100100111000011011001100101000110000001001111010111011101010111010110110010101101010101110010110011101100111111110010101011010001100010101000110011001001001001000011001011110011100110101111110110000011010001110011101010101011101110011001111100010000101001100001101001000110001101001011100111011000100100011111001110111100001100101001100001111011111010110100110101001001100111100101001000110001010000110001110110001010111010111001100001001110000110111000001110110000010110010001110010010000111010011101001001100011111111110100010100100111010101101111100010101111011000001011100101101010010100110100011010011100001001011000101000011011110010111000001011011101001101111001010000000001101111010000101011100000000100111010101010011111101111011101011011001010101011101011010001110111101001011101111000001001011000100010100000000000011101100001101100000000011001001011110000101100010111111101100010001110011100010010011110011010100111111110100011001110100100001101101110001010000001000001001010000100100100111100010111110010110001110100111101101100110110001111110111000011100100111001101011111111101100111111001100011011101001111111111010100010111000011110011001000011100110001110101111000000101110110010011010110001110000000001000010100010000011000000100101010101011011010000000010010101100000110001110100101000111010010101110001000001101100100000011010101111011111001000010111110010100011111011000000000100000101001001110000001110100000011101000000010000110101010110001001110011110101011011110001001101011000111010010110100011000001111101001011111100101001110001011110001111011101100000010000000000001100111010101010000100110101110001101011001010111110110011101001100100010100011100100000101111110011011111010111000000100110101000111100011100110010110000101100010001000100100101000100010011111100110011100111010110000101001111100000110110010011100000000110011111011101001011111100101000110101101111100001100001110100101010111011000101011111111111100010010010000101101100001100011101100100101111001100111111101001010000010000111111000100110010001111100000110001111100111001011111101010100001011100010000011110101101111011111110111111110000001011001011001110110110001111001010100001111001000011101110011111001110110101110100110110111110101100001010000000111101011011001111001110100101011111100000000010001011000111100100100000111101101101111101101101001000110000000100100111100010001110010100000101110100100001110100110110110110010101111010001000111001011110000101000001101110010110010111101001000001000000011001010110110000100111000111111110001110101100010101110101110111011110000100011110010101100101010010101001111000100100100110100100001010011001000011011111001100100100011010010011111010111110010101111011001011101011011001000010011110111101001100101000101011111110111000110001000100010000000011010011001100110000011111000110010001110111100100011100100001011100011110011000101100001101011100101100000010001011001101001010100000111001111011100100001111001111110101000111011101110001101011110101111101011111000011101101000000011110000101001110001111100000111100010100001100000100000000010011110101001011101111100000110011011101000010111101101000111011010001001001000001100100110110101111011100011011001010101111101001001001101000000111100111111100011011010010000101000011111000011111100101101111010100001011110101101011001100101101010100110010011101111101101100011111011101101111001100000110110000110011011101011110010110010100101000000000000001111101001011010000001100100001110101101011001000010010101111001010011010111011011010101010000010101001001101001111100100010001000101011111011011001101111010111001010111101100110010110110101111011001000111111111100101001101000101111001011101011000101100011111110101111101110010000011001001001101101011101000000000011110010011111010001110001001111110011111000011101001110010000010101010011101100110111001000000110011111100101010111101111001011011000011100110000101010111101100011000100101111000010101011101100110001101110000111101010110000001000100000100011011100001010001011111110000100110111001100101100101110111000111110110000100100100000011100011111110110001101000001011101000010110110010110101111001101010011100110001001001011010111010100111111101000010111100110100111100011010101110010010000011110110000100100000100010101011010101011000100010111101001100101001000001000101111101010011011110101111100000110010000001000111001111111000100011010100110110100110110100101110111110010001100111010100011011000011111110010111101110001101000101000000111100010111011110110101110101010000111011001110000000011111000101001010100101011000001010000010101011100101111100100110011001001101010101110101001111110000000011 +11001011110000010011110010011010100110100011011010011110111010011001001100011000000111010111100001111110000010101000011111110110001000011100010110000101011001000000100111001101000100110101011011101011010111010000111100101100111110010101000110111010111000010010100100011011110100001001100010010101001000111110101111111011001010000111110001000010110001111110101011111010011011000100110001010001010101000001011011010101111000010101111001010100111110000101011010111100101101010010111101011000000100001010011011010110101000111000000110001101010111111010100000110100100010111110000111000000000100010001101001100000011010000000111011100011011111110011001000111000001101000110101001001001100001100000010011011010001001010000111000011011110111000000010111000011100010110001000011111110000000100001001000110000001100100000101010000111100011110001010010000001001111101111011011110000111110000110110101000110011111000010111100100011111010111111101010011010010001100010001100111011101111011000010111000000100000111100000000101101111010100011011101101100110101101010001110010111001111100110111100000111001110011111101001010011100001010111000111100100010011010100111010000001101010011010000101100111110011111000110001011111001100100100011111011011011011011111110011111111010011010111001101010001001011100010110011001010101010000010010110010010110100110110110010101010110101000100111101010011111011001111001011011110011001111011011110010011110000010110001111110100111010000101011011010110100101111011011001110110101010001111000010101011011101011001000000000000111010010100001011001011111111101100010100010100000011110100011010111110010101100111001101011110001011100001100100000011011101010100001000010100100101101010101110100101111100111001000011111101000011000110111010000100001101001000000010110011011001101101100010010010111111100000110001000101010010111100010011111111101001110011000001110000110011111001011110111111010101001111100010100111101110001110000100110010001001000111000111111110011111110111001000101001101011011110001111100001111100100000000111100011001110010111111100101000011011011110111001000011101000101101000001110010101100010111001110011010101111001110110101000011101101010101001001111010011011110001010000100110111000010110000010001001101110110001101001000011111101100111000001101110010101001101110101101110110110100111110001010101110110011110110001111001010111111001110110101101010111111000110100001110001010110100101001010110101000010110100010010101001001010110101111010011001110000000110110111111110101100011111010001110101000010100000000001011010100010101111111010100001100110111100110100100000001011110001010110110010001000011101010111011110101100101001110101011011100100100110011001011010111000001101000110111100100000101110111111101010101110001101100100001001111101011100000010100101000100111100011011111001110100101101111110011011001001010010100000001110100001010001001011110111110101110000010000010000011111110001111101101011111111101001111001010111011001101101100101101011011010011111010101001100100111000111001011100100111011100101111000010101010011011110001011010110110011110001110011001110111000001111101100000111000101000111001011100101101011010001101010001101010001101111000110101010111010011001011111010100001110011010000110100111100011011101001011000101001111010110000111111100010100101000000000010110000110101101101110011001001011000010011110101100110011010110111100100010001100000100011010000011110100101101011010100001000001100000011000110101011100100010011010100010000101010010110011110101010001000111010111101101100011001111001001111100001001100110000111010001000110001110010000111011111011000010100100100000000111101110010111100101110101001001001111000100001011101100001101011101010111101111100001001000000110000001100011001000010111111111110111110110101111010110001111100001101001110001110000000100110001011111101000101111000111100111100100110101011011000111111001101011100110011001010011001110111001101100011111111110000000000010000111110011010011010111101111100111010001101010011101111111110110010111110100101010001010100101011101010111111010101010100010000010100011001011110011100110010000100111111011101100---------------------0110100000101001101110001111000010110111000110110101100010110101010000110010111010000000010000111011100111111010011011001000101111110000011111000101101001100000111100110010000001111101001100010100110100010000101100101101011110010011110100101000110000110110011000111001010111110111110000010000011011101011101011101000001100011101100010111001011001100100100010011101000110001110000001001001001000010000001000010101110110101110000000010111101001101011100110101011111011000100001001010100011011011100101000111110001000010011001001011000011111101101010110001110111100001111100010100000010000010111011010010001101111010001101011111111100011001111010011010000011111111001101000100010100001101111100000000011001110110100101000001111100111011111010001000011011000101011101110111101010001100101001001101011110110101101101111111111110000001101110111100101001011101110010110010010001001000011110001101101111111101000011111011000111101110101101011001010001001010000010101111011010001101111101010011010110101110111010110010000101110100111000000110010100000101000101111010000011000011110110101111111110000001100011000101001001011110100001011011111100001110000100011101110110110111010000111001010000110101010100100110100011111111101000101000010100011110011000111010000001011101001000110000010010010111100000110100011111000000101100001101010000011100111001101111110110101101101010001100001000000101111100010100000010000110010011000100101010110000101100011010110000001000100011000101101011100010110011110001000000110010111100100011010100010110010101000110000110000101010101001100111000011100010011101110110110010111101100010011100010100000101001110010000110000100000101011111010000001000110101000010111000101011011100101111010111011011101100001110111000001101110011010010111101010001001100100010111101100010101011000101001011011001111110011100100100010001010110011001110110001110100000110010000100010001011100101011110001011110000111100001111000010100011110001100101001011110111000101101101101101000011000110000001010010111110100111001000110000110110011010111110101110011100100100100100110011111001110001000101110100100011101101001110110111110001011010011111110110000111110100000101111010110100101001101001110101000000110101011100111110000001111111001010100011001110101101010110111000101111101111000100011011110010000000001111011000010010000000100101010101101010110111011100010000000010111000010110110001110101001010001000010110111011000111000001010111000001000110110011100100110001101001100110100010101000110101000101011010001001100000110001000110110110101011000110010000010111111010110101001100111010100110010000000000000111010110110000010011111100110110001011000110000100000101010000101100100111010100111100010110010011100110100111100101001111000010001101001000100100000010001111111011010110011011011010100100010100101101100011101110101101011000001000010110110111000000001000110101010111111000110110011000100111000111101010010101010011101101011011110101111111000111110001000000110011001001100010000111001010110100100001011110101011010001110110011000101110101100000000011001110101100110101010111000010011000110000100000111111000011101100100100111100001111110000011111010011110101100001101010101001011011010011111010000100111111001010001110110010000001101100011001101001010101011001101000010110111110011111100101100010101011101100100101101100110011011110101001010001100010000001101011100011100010000011010001000001001010111001100001100010111011111010001110111001000111010101011001110001010001010110110010101000100111000011001111001011111111011101010000111011011000011010010101010101011010111101110111101011001111001110101100010011011001001011101110100010001110110110010111110110110111110100111010010000010011111001100100100101001001101001111110101101111110101111000100111010110011000001101011010100100110101010111011010101111111011001101101001011101101100111111001100001100001110110010001100001001100000010011110111101111110100001100010011000010110010101110111100011010110111101010110001000110100010001111100001000011110010111101000010010111011111110101000011101101100110000001100111010001111110000010101101100111110011100110001010100011001001011100101001101101100110011000011110101000101101001100010000100000000000001000111101001110000101111110010000110110011001101101010001101000000111010100001011110010110111011110100011110111000001011010011010101111110100010010111110101001000110111111000000011010010000100100001011001011101101010011010110011110111001011100000100100001101101000000001001100101110011101100000100001011110101100100100110111100100111110111011011011001011111000111110001010110101010110111110001000011001110001010101010011011000100001011010100100100111000100000110011000011110001000111011011001000011010101101000010011100111001000110000111010101101011111101100001110110000110111010110101110010111011110011010001110001111010110101111111101100001111101000100101110010111100011111100111110010010010000010110110101000111010110001111001101110010011111110111100010100011101011110001110101100100111101000010100001000000100110100101100000011100100000101100010110110001001010101110110001010101110011001100001001110100000011101101111011001111001101101101000000111011100011011100001001111010010011101110111011110111001011101110111001001000000010110110001001101111010000000010000101100011001000100000110111011100101010000111101000100110111001010011111000011011110110011111010111001011000101010000011010100101111110111000101111011100110100111011100010101000101001111111100010100000111011101010111110001010010110011000000111011101011100101111110001010100011110001110110010010001110010110000011001111011011010010111101000001001010100101000000000011001110101011100001000111100111100010001000110110111000000001000101011111001001001011111100000110001100110111110111111100011110010101110010011010011110100100001010010010001010000011010011010011010101111111000101011011100110100001101110010011011110110001100001011100110111101011011110001011111110100000010010010101100011100001011010101000111001111010000010110001111011011111111110100001101011000011110110001000100110111100011001010001101000010101011000100001101101100001010111000001100100111101110101101100000011100100101100110011110101000111010111110010111001000001010110100011000100010110110110001011000000010010110100101010100011010101100001011111101111010010101111111100111100111110010111101111010100001110010011001111010001011010100010001110111010111100101110001110000001110010100111111101001110000111000011100101110110011011010011000110001000101110000011100001000001111110101110111010100110000001111111010101000010101101011110101001001000010100100101011111010010101010000011000101000101000010010011010101001101101010101000011000001001010010111101101111010110110000010000010010101101100010010100001101001110000011000010101001101111010111010000001110010000010100010011101010010100100111110110011001101101111110100001001111011010101101111111000100101100011111000001011111011101111110011000010011111010100101101101110100000001100000001100010100010111011001111011010101111101000011101101100001001111001010111000001010100011000101110010100111001100111010111101101111011010000101010000010111010011111111111110011110001100011111010101110101010001010011001111111110011011001100101101011111001001010010011100101100011110110100101011001111110011100100001001010001000010010001000001111100111100001011000010101001110001111001111111010000111011000101001100000111010101101001110010010011111110010001000110111100101100011000011111001101111000000011100000000100100101000011010011101011111100000001011101011001110110011010110010111100101011111101110100001000010101110110000011111011110100011100011111101011101000110101000110001101011110011100111111010001011100011111101100110011101101010000010100001111101110100100101010101000100000001110100010101110010100111110011100001111011011101010101000100111011011100110101010111111011001110111011101101011000101100111001111010100001010011000101100011100010010010110000000000101111001111110011100001010101010010011111100000000010010110001011111010100000101101011100000111011111101000110101011111010110010101001111110001111001100011101100101010001010010100111111111010011000101001111110110001001010100100011101000101111111001011010001001000111100111101111011011111000101010101010111000011101110010000001110011011110011010101000111110011111000101001110100000000110100100101100001100110111110001001001100101100101101011110110010011100001000001101001011110100101000001011110100111110110110111000101101110011000111100001001101100100010100000110011100001101101011111100010001001011010101101101100110001000001000001100011100101100111111010000110100000101010111110011100100010000110101100001101000010110011001101111011000011000100000011001111011101101100010101011111010110111111101101011111110101111111100100000001000000110010010010000000011001111100011100111001011010000100110001111001010101111011001100010111011100000000001001011010100101010111011100000011001001110010000010011000111011010011101000111001110000001011001110110101111001001111010001101010001011100010000111100011011111110110110011010000111000001111000101101001101011010000001001001100110101010111010010111001001001110001000111101100101000111110001101000010110011000101110001111111101000111010110010001000010011010111011001011110011111000100010110110110010111000000001001110101111000100110110101110010110111000011010010101010101101011110111100011101101111100010011111111001100001010011110000110000110100001011100111100100100110100010100100001001100011110001100100000010000011111101110001011000001100110011111110011011100111000101110010000010100001111100 +11001000111100100111100110110001111100000111100001110110111111111100110011100001100110011000010011111110000010101101000111100100111101100001100110110101111101011011110000111010010111011100111101100110101101110100111100010111100110101000111010111110000011001000000000001101010110101001010111000011001111010110001011000111111010110100110100011010101111110001001110000111011100010101000011101111001100111100011111110000110111101001010010010101100101111110110101111001101100010010111000000111110000110110000101001111101100101111001010111111001110100011011011100111010100001111110100001100101110011100110110010000110001101001000001011010100100011110101111110001000101101011101100100110100000001000001011001000001110110111111100101100001000101001000010001010110110111111010010100110000000111011110011001110111111101111010111110010011000100110111001100110001001000011110011001010110000101111001000100111100011011111011000101110111111011110011110011110101100000110110000100000010100001100011110110110111110001110010110110100010001110010101001010001100101001010001101001111001010111101001111000000110111101010110010111110011101010000100111110000101101000000011110111011011101010100010100111111110101111011111111011001011110001011000011000101011110110010111011001100100100011101011011000001000101000111111101010111101001100010001000001110001011101011000010000111110111111111001101010111100110110000110011000001111001001010010111111001101011001110011100111100100000111001010111010000011010111001110010011101100111001110010101001110000111111010111100000011110000100000110111010101011011111001101010001111110111101011001001001111111100001011111101000100111101000011010111111001111100111101111000001010011111110110001000011010011001001100011110001001110010001101101110011011011110100110011011101000111001001001110001100001001000001000001011101111010100010000010111110110001010010100110011000001110110001000001000101001001011111000111010111111010100110110000011101101101010100100110110111000111010001101111001001010010010111001101100110011101001010001100011010100100011010011010011011110110100001011110101100000011010011110101100010001101001100011110000110101100110111101111001010101011111100000111100110010111111111110100010111011110011010100000010011001110101000000010101010000000010100110101000001101010100110001111100101011011100101100001011011001000011100110110000100011011101111101110011011010001101010010000101000101010011010110101111111010100110100000000111011000011110010001001101100010100010101010010101011100000100010000010011000010001001110011100100111010110000110000111111011110110111101010000001000000100010011101011111001110010100100011011011100100010001010011011001101001101011010101111011110011111100100111011101111111001101101010100110001001001000110110010111011100001101101001011100010100100100101110111010011101010000100100100010110000110000001100101101001011011001101001100100101101010000011101011000010000100001111110100000011111110101101100000110000010110111100000011010111001001100010101001011011110100111000001001011000101100110100011111000010011011011001110000111001100011010001111010000000011011000101111000011101101011010100000110101110110001101001001110010000000011111110011111001011001110110110111110001000110001100101111110100001110101011110010001111011101001100110001011111110100110000010100111110001110101010110100100000000100111101000000001101110011100100101000111110001100001110110101000010111010110101111000110101001010100000101110101100110000001010011100010100011100110110010000011001000000001101111010101111011011111110111000000110011011101010010100110000101010000000000010111111001110100101000110001111100000000011111011011011011110101101110000011000101000101001000100011011000110100000101110010100011001100011011110111000010110111111001010011110000111111100110011101001100111010101000100011100101010011001001001011110100100111011010001101111000011000010101110111011010000111111100010110001111111001110001111101001000010010011100010100010001101001110110101001000101101110110000111001110001011100010101110011101010100101000000011000010111111101111000011101010011111010011001110001110011010000000110001001101010101111---------------------0101010100101111110110010100001011101111111111010011110111001100111110101111000111110000011001001100001011011111001011000100100111100111000010100010111001110100111100101000100100111110110111000100010110001011111010000101000000100101101100111101100010011101110100101010001111010111100111010111000111011100011000110001100011001101110111000000000001010111101011000001001001010011111001011110010100001110100101110011100101001010010000010100011101011101010100110101010101001110001010000100000000010010000111001000001101010000110101101100001100000101001100100000101110100111001011111101101001000110011011010011011101101010011001000111111000011100101001001011000000111100010111111001010010001011010000101000101011011010111000010110001111011001111100101100011101111010000110101111111100101100101001011111011111001110110110110111111000101000000100000111000100110001010000110010001111111100100000001101100000111000100111100100101100101111110110001010001010001110100100001110111100011010001110101111111011100011010110010010010101110000111010000000001111000001101011010000010101100001010001000001010110110111101111100100010111111000000101101010001000000010110110101110110101001110010100011100010011110010101111100001010111110000001010001110001110001001010010011110110000010000110101101001110110100111101010110111100110111011100010000001010100000010001111001000111011111000010111000111111110111100110100011011010001100101010000011000101000110111001101101110110111111101011101110010010111000100111010100011001100001101011011011100001111010000011000011100011110000111011010110000000010010101010011110010110110011100101010011100001000001100111100000101101101111110111100000011100110001101100001001001101100100010111010101010001000111100000000111011011101101000010001111000111011111100001101111101010001100001000110110100100010101110101110010010001001110010110010011011100001100101001011111011011100010011111010101100001101110001011100000010100111111000101000110001100101010100011100001001100000001000110001011111011001101100100110101000110111111010001010011010100101001000100111010111001000010001001000000010001110011100000000111001010110101011111101001111001001111100101111001011011101100010101110110000110101001000011101100101100001100001111100011100001010011010001100101011111010100101110100100000111001001110011010111001000000010100110101010001101001010011111101001000010110001110010001000001001110100110000000010011101011110001110000101100001010101101010001110000001010110000110111101010010000100010101010100110011111111100110011001101001111010001100000101000000111011111011011011111011110010111011111110110001111011101011111101001011000010001100101000100001100000011110000011101100001000001011110001101010001000101011000001101001001100111110000010001000111111111110011111101000010011101011010101011101010011101101101111100010111101000111011100010101001110000110110000101001010001101001101111010011010001011110001101011110011001001000101100000111101111111111100011101110001100000101101100101010001001111100110000000100001110100011011011001010010111010001010100110011010101001001010011000101001000100101011110000110000011001001010011000110100111110010100111100110111111011111011000110011110101010111111010000111101010110110011000111011011100110110000000010111011110100011111101010000000010000110000010111000000011010011000000101101101000000011011001010101101100000010111000001111110100000010011010111011010100100000100001011010010111011010110110111111000110000101001110011000110001011011000001111011011101001010011101010101101000101000111110010000100110100010100101100011100100100011101011100000001101100110000101011000110101010000001000000101100101101001000100111010011101111001100101001110100111110110011010100110100011100111110100111000010011010011000010001100110111011101100110100110100010100010010000000000100111001111100111111011111111100110011110101001110110110101110000110001100000010000011111001011001011111010101000111111110101111000011010110001101001000101111111101010100001101010101110111001000111010100001010110110111110110101000010001110100110110100100110100010001111000010010010000111010000110111111011000111101100101010001001101100101111010000110100001100101100000110101101111011001010100011000101100010001010110000010100010011111100011100000010110111111100110001111111110111111100011100000000001110011001001111110101010011010011101001000010010000001111111100011001010111111100101010101111001000011110011010100010111111010110000100000001011100011110100111010001000100010010001100011000111011101110010111101011111111001110101110110001101110101111011010000001111011011001111110000101001110101111000101111111110101010001010010011110001101100011010111010111100111011110111010100001111010111010011110000000110101000111100010101010000001101011110010001100101111010000010001011101011010101001100010100110000111000100010111001101101010101010111111101110100000110100010111101011010010100100111000101110001110010100001011111111001010111100111101100001101111111001011010100110111110010010111000011110111101111101011111111110001010011010101111000001001001011001110011111100000010100000110101101010000110001111101011101000110000001100010101000011000100011101110111100001000000000110010100101000001111110111011011101001000111011010100101110010110111101001100111101000110101011100001100000111010000110101101101001111001011010111010110010110100101101011101101110000000111100111011100000110101001101111110011001001010110011000101011101010101010111111000110110101101010111111011001000010001000100010010011011101000001000010010101101011100111100000110101110111100011001001000011011001011110000101010101001010000101110001110000000111110011111111010000100110001110111010000010000111010100111100010000111110001001100010100001010010100011011010111110111000100100101011001001001001110001001110011111000100110101111100000001011001011001010111101111110100010100100100101001011010001100010111011000110001010000010001100111101101110101111100110010111111010011011110011011111111001000110110000001000101010010111111001100000001011011011111010001010011000111010101110101010011101010001110100110000001101011000110010001001000111101101111101001001011111010100000000000001011110111111110101001001010001110100010100001100100011000101001001000010010100110001111111001010110111000100100111110011011101010001011101011010010011100111011000010001001100101111101011111111000101000111011100101101001000110001011000010100101010001010110010101010100111101111001010010100000110000000110011101110000111010010100010000111011110010010101100101010011101111000000011000100111011100111000100010100001100001111101101011100001000011100010011111000100101101001111100101010101001011110001010000001110001000101110000100101100101001100001110101000001100100110100100110001011010110010011110110000110001101011111010100000100000100100001111111000111100111010010001001111011100010110101111010000100110011100011011010100100101001001101101101111101100100101001110011001101010000110101011011111011000110111011111000100101100001111010010101110110000010111010101001011111001000001001101101111110011011110010001111110101100001000100110010011100001010001101110110001100010011001110000001000001010111011011000101111111100000000100010111001010000010010111101111110101011010000101111110001000010100111110001100010111001000111001010001011100000101100100010111100101000111000110101011011000000110001001110001100010110100000000010111010001111011010100001100111000100010111010101111111001110001000100111010010010100011001111001111001100111101101101100100001011001000011111100100001011101001010111110000001111111001000000010010100100110110110011111111010111100100011011001011111010100100101000110101011100111001010001111111111110001000010101100111010000001010110000000001100110110011111111111001001101001101011010000110111000111010001001001111001111111111010101110100011001111111100000100010000011100111001011010111111100110110101110001001000101100010000110001111011110100110011011110001101010111100100101100010000001011010100011000011100010100101011101001111111000011000100111000110010011011000011111101000110011000010010110010011110010110100101111101101101000000001000101001010111100100010100111101111011000101010011001101001110000010010010101010110011110101001101111110000011010010101000010000000101010011111111101010101110110000011001110110101101101010011111001111111111100011111100001101100011100010101010001100011101111000110111111111111000110011010011110000110000001010101100111101010110000101000010010101111110001000100010111001100001110010111000010101100101101100010110110001010000111110111000000010111110001000101011110111110010011001011000100000010000010001110111101010001111011010010000001111110110011011011110111000111010001001000000011111101110001110100110000110001100110011101000010100010101011011101101110011000001011110011000111100111011100010010010010001111110111101010111110001011111111111000100011101110100100111010110010101001011110011111000011010000011000100110011100111110011000011000001110001000111100101100111010000001101100000000111011010011010011111101000110100101101111001110010100000111110111010110001000000011111001001010101101000001000010001101001010000011101110110000011111110111101011111100101000110001010010010101010000111010110110010000101001110101101100101101001110101000100010010111100100010100101110100100010010001001010011011111010000011110010000100100101101001010000010100011010100011011111110101011100101000101011110101110010101011010101111110001110000011100111011010000101010100001001110111001011110101111101100110010111111001000111001100100110001101111101000110011111001011110110100111010110111101 +00110100101010000010110111000010110101010000101001101000101011000110100010000110111110010110110011000000111100111001101111100111001001010101010100000000010000101101111101100111100010110000110001100110100110111011001101101010111000101111111000001001010101011101100010011001011010111101001010111101011010111001101101001010001100010000000011110010100101000110010001000001111110001010001001001110011110110001011000001111011111010001011101101011100010110010001000001000110010011010011111011111111110100000011001110111101110000110001100111111000011111001110000001111100110110001101111010110111111110100110011001100101010010100111100010110000100111000110001011001001011000001101111010000000110110101010101011101000010100100110111011011000110000010111101100000001100000011111101010111001101101110110100101101010100111101000010101011010101010100001101010011011111110010010110000111000100011011101100110011011000001001100000000110001101010001000111011011001110100101101101100111000001000100000001010101110011101100101100101101111101111110110111011010110011101011001010111011101100110001010011010001001011111000111110000111001000100100011010010110000000110000110110110111001111000111110110111111100110110011010000000111111010100100010011111001011101111011001010011010110100101010011110011100111010000011011101011101111000011101111001001111000110001011000100101110000000011111000000101101110100001100110101010101010010001101010101000010001111101110010101000001111011001100011101101101011111011101111000000101010101010111000100010010100100010101111010001000000100101110110010100000011011111110101110010001001110100011000001101111001001111101111010001110011100011100110010000111011111000010000001011000010100011110011101011001101000001010100010001101110011100011100110000110000001011110000011111111110011100110110000101011010010111011100010011110001111010100101001101010101001010001000111111110100111011100110011010100000010100101100001000110001001111000000011000010010111101101101000110101111101101111100110111100100001101010001100100010010110110000010010011100100001110101011011110111001010100010111101100010101101101101000100011100101111010111100000010011100111011011011101101001101101111100001111101111001101100100110101110000000111110100010001111001011110001001001100011011100011001101111001110011110010011101100011000100110101001101101101010010010010100001111001011101110000000010001101101010011111001011001101010100001000001001110011111001001010000001010010111000000110000111011110101011001000110010101011111011110010110001010000011111011010011101001010100111111011000110000110100110001111110010000111001110111000010111010011001100000110111110101111110010001110010010001111011010000001010001001000011010000010111101011110100111101000111010010001000001111111001110100011000010101010001110110010110110100101010011010110111010100110110010010010100100100101110110110111111101101101101001101001111111111110100110110000101111111000111000001101111100000011011111011001001110110001101011001100000111110101101001100110101100111000101001101010111010011011010010011100101111101010110110111000001100110011010010001000010110001011011011010111100101011011111110011110011001010011001011001100001011010011011010100001110001100010111110110110001000010100101010101011100101010101010101100110101101110110000111011001111100100011000010100101111111100100010101001100101111100110101100000011111000101011001100111000001011001101001101001111110100000101111000100000010010011100000110001111001011100011101011100110100100110111111100001100101001001110110001111110101001000010011000100110111000001110000111000110000111001010111100101110011110000111110010110011000101101000110101000101000010011101001000011001010101010100111100001100010001111011101010110111111111001011101001100000010000001000011001000110010111010110110000110111010011110111000011001110101100111100100001111010110111101011010111100110000111110100001111011001010100011110001100101001011100111010010100101010010101001011001000000000011001100110001101100111100100010100110101100011001100010000000110001100010101111000100010000010001110101100000011100110100110001110001100010011111100010111000100011110101011100---------------------0101010000110101001101001101010110000110001001001111101111101001000011001111011101011110001100011111010000101011011011001010100110001000000111100010110010000101111001111100001001001110011110001000010110100110000101100010010101001111111101010011000110000110100100011101101111110110101111000100010001011011111101010011101000111010110010111011001001010010100100011010100010110100011010000110110101111000110000110011111100111111111011000110100000111101100101000001000001011110011001101000101101111010101011001010111100011010110100101011101000000111100100001001001100101001110010111001100000001011001000101101010001101001001100000111100000010011000101111101101001001101111111111101110010000111011000001101110110010110011010000111100101000001111110010111000110010101001010111111110001100111010111110000101110001000010100001001010001001111000110100010001001110011011011011000101100101010111000010011100101111101010010110010010011000110111111101011111110010101000110101010100001100011100110110000101001101011000001111111111010000111001001001011100011010110000100111111001000101000111000101011110001001000101100011111100001001111010101001010001010110011101100111111100101001011011110100001110110101000110010001010000100010100010100101000101110011111111100000001010110011001111100101011111111101000101101100010010011100101001011000001110101101011111111000100011101110011011101111000100001101111011111100001100110010011001110110101101110011000001001010100011010010011100000010001110101101101100101111001000111001001100000010100010011011100110100011110110101011010000101101100011100111010110111111100010110110001000001000101001101110001101111110010110110101101010100010011000101101011011101011001100001100010100001001010100110110111011000001011100001110011001010000000100111101011101001011111001000111101011111101000000011000001100111101101010001111011001001111001111101110011000100010011010011001100000011110111011001110010101010110111000011011010010010111000000110110111010011110111111001011101101110100011101100110011000010100111001011000100101110111100101110010110010110010101101110101100101101010001011101010111000111001000000000000111111011011110101011011001001000111001000111100100101000000110010010111110111111110011011000000011110010110010111100111000110110110000000110001010111000110100110111110101010111000111111001011001001111010100101101000100110110111010100001010001011011010100011101001011011111101110100001100111010101101011011000010100010001010010000111011101011110011011100000000001010111010011001000001000000001110100111111111000101100001101100110111101011101111001100110111101111011101111111010001101101011011000101011111110110011100000000010010010011010001011001000111100001001101101111101110000110100001001011000100010001101001011000001010001001110110000100110011001110111010101000100011011100101110110001000101110010010001111001100010011110101010001001011001110000001001000110100011000001101101011110011110101011110111110011110101010100000100010011111100101110011101111000110001001010111010001000101110111000111100011011111010010001100000111100111011010011001110110101010111001001101100010000010110101000111000000110000110011000111000111010011100010100101000001101000100111001000111101010110011100001001100100111101011001100100000110010011000011111111101001010110000110011011010111100001110100110110001001110101110010000110011001101110000100100001010000101001110000101011011000100011110110100010110011100110101001111000100101100101001000110000010001010101111110010010001110110011000101011100000100101010100010010100010010111011010110100110011111111101111001010111100011000110011000011011000111100001110111010110010011100011011000010111101010010010100111011100010000000011100101010100010011101111010111111000110010001001001110101110100011101110101001101101000011110111111010010100111000111100100111111111110010000010100000001100001100011100110101011000101011000111110000111011111111000111001011101100000001000110101110111101110011111000010100100000101001000101110000011011011100111001011010101100010001000110000011110101010011010110001010011000110010000111110010111100000011010110111000000011010000101001010011110110001110011010011101111011011101101001111111111110010110111010110100101010011101110010100101000110101101000100010110011011000000110000100010000110001011101010001111101100000001111101001100011100100011010101111010010011111000111101111010001111101100101101100000001000001100111111000110001001011001100000000100011110001000000100000000011010011010101110110101011110011001100010000111101100010011100111101000111011010111111011110101110100100010000101100101101011010000010100001110000000010110111010100010111000100010010011001100100101000001001110011101001101000111110101111110110001100101011001110100001001111100001111101101001010011011011001100000110011100101100111101010101011110000111100101001111000010010110101101111110100010111110101100011110001011111001000000100111000000011111111000110000011000010010010001010100010000010011100100100010010001100110000111010110011011110111101010100110001001000001001011100101010000100010011000011010001001101111111100110010101011100110011111011000010010000111010001100100101101100110100111110001001110010001010010010001000000000001110111000110011100101011000100010110000100111110011110011100100101011111100010001111101010001001010000010110011001010111111100111111000001010010000001110100100011011000100001011100100000101101010110010001011101100100011111000110111010001110001001110010010011111101001101001111101110100110100011010111111000000111010000001010101101011010011100111010011011100111001000010100101110010011100101110000001100010001100010100010100001000011010011001111011111000100100111011101010100111001111100110001101100100101111000010100110100111010000101011010100000011111001010110001101100110111010001111001011101011000100011110001000000001011010100111000011100101011010000000101100110111111011000000000101000110111001010011110111001010010111111000001111110001110011011101011011110111010101010111111100111010100100100111111110011000000111110010111110101110011001011110011000001101101001100100010101001101000010101010110001101100011011000010011010001010000010111010110001111000100101001010110001011011010000100110001010010100000011100100010010011101101100001101101101000001110000101100101011111000110000000100010111101011001001111110010010000111110000111001011100110100010110100110100000001000001011000011100011000001101011000101101101110110001111011110100100111011000011100001110111000100000111100011101100101001011100110010011000111101100001010110010111011110001101110111010111111100100110100000110111000011011101000011111000011010001001111111111010111110000110011101111110011100110000110010000001001010011101111011000110111101010110100011010110110010101100010000001111000110101111110110000001011000110100011110100011000100000010000010110100111001100101111000101100000110111010101010011101111110100000001011010011101001010001110101100101010100011100100010011001100111101101010100111010010001001001010101100101011100000110000100000000100001011111111001001111100111111011001000101101101101111011101001000110010000010010001110001000001101110010100001100011110011011000110100111111001001100100111011111100100010101010110101011111000011110010111000110101001001001101001000100110001001100011000001101111111010000010110110000101100110010001001111111000000000111101110000011100101010010100101100010100100111100111100011101100011001011110010011010000001010111000111010011010111100000110010110101011110011111111010001101111110100111101110110011000100001110101101011011011110100000111011011001001111001001111001010011000100110111111111111011010110010101011111101110111110001110110101111110111101100100000011010010101111011001000111111000110100101010111100010101011111110011111001101011001010001101001110110011101100010000100111011011111010100000110110100111001001110011011000111110011000111101001110011111110001000010101001101001111111101000110011011011111111010000001101011110010000110010110000001000101110010111100010100011100001010000001001110100101000101101011111110111100110010100000011000011000001000111111101101010111111110101000000001110100110100011111111011100110101000110000000111110101110011011111000000110110010001101101100101111111110011001010101001101100011100110010101101001111010011001010000101111011000110110101010110101010100001100000101000101001011111100111111011110100000111110011111111010100010001111111110100101110011011010011100000011001101010011001010011001110000000100001110110011100000011011100001110011100010011111000011000010101111110101010101010101001100001111010000011100100111011010010011011011100101001101111110011000101111110001100101100010000001100001011101010111001101100010101011111001111010000000101000000010010000011100001111000010111010000000100001001001010110011011001111110101111001111101101101111011011011111000110000110001111011101100001101000100010001110101110011000101000001000100101010101101011010001110000111000100101101001100111000111111111111001000101101111011011000011101001000100110000111101111000001001000010010101000011010011100010110011110000011000110111010011110010001000101010010011001000001110001101111010011000011110101100011111101010110110010111101100100110100010101101111100101000010101100101010110100000010010001000111001100111111001111010101000011001110101000110111011111000001101000100000000011010111100010011111011110011010111011110101110111011111011001011111111010000010011010011010001000010010110110101001110010111111000110010001000111001010011010010110011001111010100111110000000010000100111000000011000000100000100110100010001011111011110 +ls15msgs +111010010110101100001111010110100100100111010111111000101000001110011101000011000010000111001100010001101110100100101000101000100011010101000100111010011000011001100110101000001001101110101010110000100100101000111011011011000011011000101001110100110101000101101001000100001100101111011001101110111110111100001--------------------- +011010010111011101100111010111101000010011010010001100010101101111110000011011111001000000000110110110000101010110100001010001111010101010001001011100101111101001111110001011100100111101010100010110100110100101100101000100001001000100001101111100111110010011101101001111110111111100010111000000011111011010010--------------------- +001100111111011101111000101111110101110011001110111110111111110111101010111001101111001101101111101111101110010111100010010001110000101011100110111111110011100110001001100010001000101111110010100111001100110001010101101000111111000111000011011011011100000000111110011100000010011110100111100011011110001101000--------------------- +100010111010011111011000001101100000110100101111111000111010011100010000001101110101100000000101101011001110100100011101101110100000000010001101100001010000110101111000101101101100000111010001100111100111000011110011110111000100010011100000111011110100011111110111111000000100001100011100010101001101011110100--------------------- +001111010110100010010111011100010110100010111111110100010111100010111100010010010101100111100101110000110011111011110101100011000001001101111101100111011001000101100000110000100010010000110110010111000000110001000100100110100011011011010010111110111100010100111000010011001100101111111001100110111001100001010--------------------- +101000001100110111110101011111000111100110101001101001110011011100111001001000000000101110011110010010000111001010011001110000110000001011110000101111010110100010000000110111010000110111000000100110010111010011011000100110110011010010100100010000111011011010100011001101000101111010110011110000011001101110111--------------------- +001001110111001010010100010001000000011000100100000100100000001001110001111010011111001100100111010100011010010001001110001001100111001111010110001010100111011110011010000010011000011101000000000111111100100000101100010011100000001010001101111010000101100000111101100010010100110100100111100110100010101100100--------------------- +110001010101101011101111000010010101000000111001010100101010111011001101001110100101111110111001000111010010010101111010110011000000100001010000110001010000011000010111000010001111011000101101110100110010110011011100101011010011110100100011011001100100010000111100111001101100111100011100001011000000000110000--------------------- +000010101110101110010000010101110100010101101110001101110000001101111101011111011101110111111111010111011001110001111011110001001010100010101000110110111011100011101011100100110000010100111011001111101000101001011111100001000011011100110010101000111110101111010100011000101111111111101000000101101001111000110--------------------- +110000011111001000110100111000101000001111010001001100011100001101001001011000101111110001001100001101101010001111111100110111011000000110011000011111010010011100101111011011111100000101000000010000001011010010001100111000101111001000011010110100000101011000100101111010111011000111110111111000010111010111000--------------------- +ls15cwds +100100100111010111111000101000001110011101000011000010000111001100010001101110100100101000101000100011010101000100111010011000011001100110101000001001101110101010110000100100101000111011011011000011011000101001110100110101000101101001000100001100101111011001101110111110111100001---------------------001001101011010011000011000001100000111110101001001100001011100110011110011111001110011101010101010010110101100011001111110110101101101010010100010100111100011100110000001100001110011011000010001010111011100110100000011011100110000111011001001010100111011001001111100001100101110100110101110000000111011110010110110111000001000011111111001101010011011000110011111100001011110110000000010101000111001010001011000000001010010001000101011011001010111100001101100011100001010010100010111100110100000001000010100101110110010011100101110110110011101101110011110111101011000011111000110001010110010010111111100010101011100101011001001110110111110001110100100111111101010010010011101111010001111011 +101000010011010010001100010101101111110000011011111001000000000110110110000101010110100001010001111010101010001001011100101111101001111110001011100100111101010100010110100110100101100101000100001001000100001101111100111110010011101101001111110111111100010111000000011111011010010---------------------100110111011000111001101001100101011101101110001111001111110111100000011001011110110001011110001010100011100000010010001111101110001100001111011010011011000001010111010010000101010101101110111011010101101111011000001101011111011010111001010111100100000000101100000011001110100110010110111011110000011110110111110111011000000001100000000010001001111001001100010010111001100001000111000100101100110100111110010101101010101010011011110001101111100111000001101001100010000110100111010000001111101110100010100001010111110000100001111110001100001001101101010001100000001111001110001010000000110100101110101101100000001100111001100001000011001110010110010001101001010100110101011100110000101110001 +110101110011001110111110111111110111101010111001101111001101101111101111101110010111100010010001110000101011100110111111110011100110001001100010001000101111110010100111001100110001010101101000111111000111000011011011011100000000111110011100000010011110100111100011011110001101000---------------------110001010010100111111000010011000100110101001100011110110110010001111101100001001000110111100000111010110110011100011110101010101100100100101000111010101001001000011111111111011011111111111001000011110110001011110110000111100111000010101001100110011110010011100110001100011100010111101010101001011110011011001000100000101110000001101110100000011101101010111010001101111110101110010001111010001111001011001110101001111110000011111100111110101000010011100101011100000010101111011010101000100110101011101110010000001101101001110111000101111010100001011101000001001100111010111011010101101100000101000000011100011001110000111111111111001000101011110101111001111001101010101000110011100100110110 +100000110100101111111000111010011100010000001101110101100000000101101011001110100100011101101110100000000010001101100001010000110101111000101101101100000111010001100111100111000011110011110111000100010011100000111011110100011111110111111000000100001100011100010101001101011110100---------------------010101010110000110001011101111010011110111101100110000111001011000100100011011110111010000011100011010011000011111011110001000010100101010100111011101011100100100011011101101101101110101101010110111010100000011010110101000010001101110010111111000111110011110110001001011001100110011001100001001111001000011110010011111100111000111001101110011100110000101111000111101101101100010100101100100011010111110000101101111110010001000011011111100100100000011001100010100100110100110010100010000011111100000111011100001100110011000010100000001110111001010001110101000001011001111000001101011111110001101100111011011110000000101001000011101100001011101111101011000000011111010001101001110000110010110 +010110100010111111110100010111100010111100010010010101100111100101110000110011111011110101100011000001001101111101100111011001000101100000110000100010010000110110010111000000110001000100100110100011011011010010111110111100010100111000010011001100101111111001100110111001100001010---------------------101000100100011010011100000001100000111101001001100000010110010000011111011110011100011111101101000110001000010000011010011111011001001100001101111001010001011100111100100110100000010011001100100010101011111100101000100010001111100000010011100000000010100011001101010101101101101110101001111101010111010100010010010110111010100011010100111000000110000110010010110111011010001001110010011001011000100111001111010110001111001110010001110110101010101111011101010101011001100000110101010000001011110011100101101010101000100010000011110110111000011101011011100111101101011110011011101100101100110111100110001010011010010110000100101101011001110011001000101001101101001101110010110101100011110110 +000111100110101001101001110011011100111001001000000000101110011110010010000111001010011001110000110000001011110000101111010110100010000000110111010000110111000000100110010111010011011000100110110011010010100100010000111011011010100011001101000101111010110011110000011001101110111---------------------100010100000001010000010010110011111000111011000001110101100111110011010101001111110101110010000001001111110001001111100001100001110101110001000000001111110010000101001110001100000100011110001011100101010011101011001100110010110010011010110001110100111011100000100010001100011110101100010011100101000110011000010000111011010111000111110001010001000100110110011000010101100101111011011110000100010000010100011011011100101110110011000111010100100111010111110110110111001110101010011000101010011000110110000010100101000110101100110001001010100100110111101010110101100110001101111010101000001010010101101001011011000111001000001010011000100011000001000101010111101111011011001001011011111011011 +000000011000100100000100100000001001110001111010011111001100100111010100011010010001001110001001100111001111010110001010100111011110011010000010011000011101000000000111111100100000101100010011100000001010001101111010000101100000111101100010010100110100100111100110100010101100100---------------------000101011001001100011110100010101010101101010001011001110110111000110110000111000010100101110000111000011111111011011100011110101101001001010010000100110001101110111011011110001011001011110110101101010110001011001010100111111000000100000110001100011001010111111111110101000111100100110111100111101001111001001111001010111011111111000011101111011110001110110010001010000110010111111100111000011000100010101000011010010011001111001011001010010100100011100101010000101010110010000100111111100001100101110100101100110010001010010010011011101110100001100110100000011100001110000111000011001001011010100001001000000111110010100110110101011011011000101100101001010001110011001100000010010000000100 +010101000000111001010100101010111011001101001110100101111110111001000111010010010101111010110011000000100001010000110001010000011000010111000010001111011000101101110100110010110011011100101011010011110100100011011001100100010000111100111001101100111100011100001011000000000110000---------------------001011100101110000111101011001001000110100100100011010101010101110101011000110010011101100001101110011011111000100001100100000101101000000100101100100110100010011101011111111001010010000001111011100100110101101111011100111111010010001110111010110111000011010110000101111111110110111111010101001110010101010000001100010111010111101111110110000100100000111000111111000001101001000100100100010100011111101111010111100101000110111100111101010001110000000101010011110011101000110100000100010010011011000111010010111101010000000001000010001100111111000001101010011001000100110110111010101010110100001100100011110001100100101011101100001011000001110010011101101100010111100110000001101010010100010 +110100010101101110001101110000001101111101011111011101110111111111010111011001110001111011110001001010100010101000110110111011100011101011100100110000010100111011001111101000101001011111100001000011011100110010101000111110101111010100011000101111111111101000000101101001111000110---------------------011111111001011100110001010111111100100011110111011010101010001111101111011010101000001000101001000110010011101101100110000011000100100010011110001110001111101001100010101111000111100000101010110010110110110111000100100101001000000010000110101000001101011011110110101000101110010100110110100011111000101001011011100100001100100000110010001110101111010101101001100000101001010101010110101010100001100001010001000001100010101111000001110001110010010000110100111000011110111110010001001011001011010000010001110000111011111110111011101000111000111111110101111001110100100111111010010000111111000010111110011101011011101100100111110000101101001011001101101010110011110010001111001001001110010111 +101000001111010001001100011100001101001001011000101111110001001100001101101010001111111100110111011000000110011000011111010010011100101111011011111100000101000000010000001011010010001100111000101111001000011010110100000101011000100101111010111011000111110111111000010111010111000---------------------000101000000011101110000101010000110110101110011110110111000001010111101100110000110101101001000101101011001001001001000101010110110100011010000110001011101001101101010111101101111011010000000011110110011101101110011110001010001100110010000001000000110000100000100100101110101010110111101111011111111100010110011011101111001010101011100111010000010110100100001011001110110111100101101011110101001101101110011101000011011010011110001010010100111111000100110011101111111001100100011101000010101010000011111111000000111001111000001000001100111100100011000101111011101010101100110111100000110100001010011001110101010110011111001110111010010110100011101110100000100110010010010001111110011101100 +ls30msgs +000000110011000111010011100000110010110010111110101011001111101100001011011101110011111101010010000011000000101011110001100000100101110010001001000011001110000111010111111110111011000101101001001000111000111011100001100011111000111101100101001011110001111010000011110011101111110111010010011011101001001010010111101110001111111110001111011000011001011010111010010000001011011011011110100011100000110001011101100011100100011011001010101011111011110111110101100111100011100011011011111111011101101101010111101101101111100000010011000110011111100000110001100101011010111101100010000111001110011110011100110110101000010011001111000101101001101--------------------- +110001111110111110100111100010010011111101101111110111111011111111101111000110011111000100011011011111001111101101101000111000001100101010111000011110100111101101110100001100100000001101010001010000100101001110101100011001100101000101111110110100000010101001011100111110011010110110010110000100111100110101100001111101011011001110100011111100010111001101000111100010110001011010101100101010110010000001010000011111011100101011001010001001010100111010001111000111101110101100001000111100101000000011111111110011100101111000101011010000000110001100111001001100001010100010010011011000100000011000010110111011111000011110101010110000011111100--------------------- +111001000000111100111111110010101110010110101111100000000101010010100111101011110010111110001111101110101101001001100100001101100110000100101011110101111100010100011000001001000001010010111101000100000110000111001101111111011101011100010010001111011100100010000011101111000110010111010010110011000110001110101110000000000001100101011000100111101110110110001010010111010010101101010101110010101001111011100000000011111100111110000111000110101011001011101011010001110001111011011100011001101111101111001010010100111101110011010001111110011100100111101100100011010000111000001001000111110001010000000011100100100001110111000010001010000101000--------------------- +010001001011010101100010000110000101110011001011011011000000010010010011010001001101100111001101111001000100010111100100011100100011101110011111010111100000101010111000101011011011001101000110000110100110110110100000010010100110110100001010001011100001001000110111000001000111111100101010000110101001010011001101001011011000000110001001001101011110111010000010111011000001110110110101010101000110101010101001111111110010000001000111010110000110011100010011000101110001101100000001001100111110111101110100111110000011011110011111100101110100000000101100011101000001000101010111101011000110101100011010111010000011110110010010101011110111000--------------------- +100100111100010111011000100111101111010111110100101000011000111011111101111111000011000101011011101001001011000111011010100010011101001111111000001110100100010010100010001100001111100010011100011001101011000010000101100001101010010011101000101000011100100010011010010000001101011101111111100000110000011110101111111111110000001111001111010000010001100010000110001001101010101001100110010101011110100001000000010100110111110010111010111011111111100000110110111011000001100000011101100001010111111110111010110101101101011110011011100010010101010101001110101010010010000110010111000000100011100101110111101001110011100100101010100100010110000--------------------- +000101100101111011010011111111110011000110101101011011110100110000100001111000100111100010100110110100011100101011010010111011011000111011101111010100111000010101001001100010000101011101110100010011010110011111101100100100001010100110001111011001101111101011000001011001010010101101110110100111101011010000010001011100000111010000000011000111100001001011101101110111011001001000110101000110011001011111100111110011110100001011100010010010110011010100000111001001011011111011010001110011110101010010100001110111110101110111011011001011010100101001001101110000000001100011110011010000000011010011100100110101111000110100001010100000011011101--------------------- +110110001111011111110111010100101111001100111101110010101101010010001110000010100001110110001010010111011111000001111101001100010000010010111010001010001100101011111001100110011010011111110000010000000011100100001001001010000100000111101100000111010011000101110001110101010101110000010000000100010001101011001010111110110110010100001101001011011101000101110101011100001110010100111101001011101010001001110000010100010010001011101111010011101011001010000000000001111101101111101000101001011101001110011111110011000110000100110110101100101011111111110100111011001101110110111010011101001111101010100111010000101001110111010001101010110001010--------------------- +011111000000110000011000101001111111111000000100101011110100111001101100110110100111110111011100111000001100000110101100111110010011100000011000000000011110010101101000101010010000011111101000110110001110010110111101100011010001011111100011100111010010011001111110011000101100011001001100001010011100010001010100100111100111111110000000011110101000100100000111000100101101010010110100000010111000000100000100010110111011001110001100001010011011010000010001110111111011110101000010110101100111011100100110011010110111100110110100001110011100011010011000101110010001101010111010101011110001110111101101001010011111100100111100010100101101101--------------------- +101111010000111010101000010100111100010011101101001100110110101111010111110111001111100101010011101001011100010100011110010000010011011101111010000100011010111010100010010000110110011100101011100001010100110101000011100111001100001111100010011000101101011111000101011011000011010011100111000011101100111010100010101001001100101010111011011100100011101100110001011110110111111010010101100110001011111001000001101010111001111011110010011000101100001000110111010110010111100010111011101101001100111010000001001001101110100111110101001011111001010110000100000110101010100010111010110001001000001000100011011010011111010100101011001001101100101--------------------- +100101010011011011000011111110111011001010110100000101000001000110001101000111100100001101110100010000101100011101001001101011011000000110111100010001111011100000000011010010001111110000011011001101010111001111100100000111110010011101100111010111100101101001110100001001001010001110111111001110101010010001110000100000111010010111000101110010111101000011101110101111100101100000011010000100010011101110110101100110101111110001000001100010100011111110111101000011100001001000010011001101111000110000010100000000100000101100001101011100110111101011001010000100110100110010011010100001110010111111011000100111011011000001000100011111000111001--------------------- +ls30cwds +101100001011011101110011111101010010000011000000101011110001100000100101110010001001000011001110000111010111111110111011000101101001001000111000111011100001100011111000111101100101001011110001111010000011110011101111110111010010011011101001001010010111101110001111111110001111011000011001011010111010010000001011011011011110100011100000110001011101100011100100011011001010101011111011110111110101100111100011100011011011111111011101101101010111101101101111100000010011000110011111100000110001100101011010111101100010000111001110011110011100110110101000010011001111000101101001101---------------------010011110011101010101110100111010010001101100111110110010101000001001001110101010010000010000100001010001011111010011000101001010100001001101110011111011011100100100000001100110000100111011101001101000010010110111011101101111000100111001101110011111110001011010011111011101010110111010100100111010111011100100101001111110101000001111110100110100001001100010100101110111011110001110110110111100111001101000001100100011001000100001111001111101101101110100001101110001101110011101101000011100010101000110011000111101100001101100100111001010100010100000010101101010001000011010100011101010100100011000011001100110000000010001010111010111111000101101010110110011110100101110101101001011110001101001011001101001110001110010100111001011110000101110001010100110011000101011111111011000001101100010111110010010011010001110100111000111010011101000111011111111111000010010011110010010000101110101010011110001100101001101111000010011100000001111001011000000000100100000001000000101100111101111111100001010001001111101110001111110100010110111000100101111001010010011110110000000000011101001100100010000101010001110010101100101110000010100100100001000010101100110101000010101001111011001001001010001010101000000001010111010110000001101001111100111001110101111011000100101000011001110100100011010111011111111000011000111111011011011100111010110110001100000011100100010111101110001111000010010000 +111111101111000110011111000100011011011111001111101101101000111000001100101010111000011110100111101101110100001100100000001101010001010000100101001110101100011001100101000101111110110100000010101001011100111110011010110110010110000100111100110101100001111101011011001110100011111100010111001101000111100010110001011010101100101010110010000001010000011111011100101011001010001001010100111010001111000111101110101100001000111100101000000011111111110011100101111000101011010000000110001100111001001100001010100010010011011000100000011000010110111011111000011110101010110000011111100---------------------011110011101101011101110000000001001000011101100100000010100101000011110111111011110011000101110000100000001100001000010111000010100110110010111011010100110010001011000100000110111010111010011111101101100100111010000101011101001000001010110111110001011000011100001011011011010011101001000111101111101001000000110000011010010101100100010000011000111110110100000010100100011010011110110001010000001101010110100001101000001110110000010011100110110100110011011100110001110110101110110100001010111111111010011000010111011111011111001100011010000100101100110111101011110110000101001100001111010000001001011001111111011001001011101000111101101000100010011101101001001111011111000111001001101010001000011010011010011101101010111011010001110110101111000101001010111011000101010001011000010110000000111100111000101100011111000010111101001111101000100110011101101001010001100010011110010010000001100010110110111100000101101101100111010001010101000011101010001010110011001001001001100100010110011010011001000010001011100000001001100001101001011100111011011111101111110101001001100001111100101110111100100000000111110010001000011011100111100101111000011110000110111100111111011111111001010000011010111101111100001101000101110111111000000101111111101010011101000100110100111000000110011001110010111011010111001110111101001101111001011101100101011101000010000010111111000011101010111110111101100 +010010100111101011110010111110001111101110101101001001100100001101100110000100101011110101111100010100011000001001000001010010111101000100000110000111001101111111011101011100010010001111011100100010000011101111000110010111010010110011000110001110101110000000000001100101011000100111101110110110001010010111010010101101010101110010101001111011100000000011111100111110000111000110101011001011101011010001110001111011011100011001101111101111001010010100111101110011010001111110011100100111101100100011010000111000001001000111110001010000000011100100100001110111000010001010000101000---------------------010101110001100000011100110001111001110100001111101000011111010000111111110100010110101011001111110110001010111100101000001100100010010000111100100101110000001001100000111101101110110111010110011100110111000111010011111110111100001010100010101100001001101100000110100111001110101100010111001010011111110110010100111001110111111100001001000011011011001010101110010101001110110000011111111101110111010010011101000000001001101001010110100010011011110110001110101111010000000110101100100110110111111111011011100010010010010010110011110011000000101011001011001100001111101101000100111000001110101111111011100010100010000100000111110011100110011111010011100000001011111011110111111101110011100111001100000100101010100111011000100011010010100100001111010010001111101000100110000100001000011100101011001100000101110110111001100100011111011010001111101101010010111101111011000010100101000101100111101100110101101100010011001101011000000010000111111100001001000100010111110011000111011101000011110101101001011111101011000100010111000101001001100111010101000000111011010110100110111110001101111000100000010011001011010011001100010110100011101100111011110111100101001110000110010000101101001000010111001100110111101001111011000000011100001011000100010000110010110110011110101001100000010001001001001101000100110001100000001110001010111110011000111101101111000100011111010000001000110100101111 +010010010011010001001101100111001101111001000100010111100100011100100011101110011111010111100000101010111000101011011011001101000110000110100110110110100000010010100110110100001010001011100001001000110111000001000111111100101010000110101001010011001101001011011000000110001001001101011110111010000010111011000001110110110101010101000110101010101001111111110010000001000111010110000110011100010011000101110001101100000001001100111110111101110100111110000011011110011111100101110100000000101100011101000001000101010111101011000110101100011010111010000011110110010010101011110111000---------------------111000000001000100001001000010100010111010001111110010101011001010100110111010111111101001001101101001000100001101111111011001010011001110010111100100111110011101100111101011000110111010001100111101000000001100010101100011111011101000000011110110101111111111011011110110011110000011011001010000101011010001101010011111001100011001101010101110011110000111011011100110011100011010100100011011010001001001110101000010111101001011100010011100001011001100100000110111010001100100010110101010100110010010101110001110000000101001110000001100011111110000011001010111011101000011000110010011100001000100010000011011101011001101110000011101110001101110010011011110000111111100010110110011000000100100101111010100011110101101011100010110100011010101110000100100100111001011011000110111011101101010001010110110001001001111111111111101101001000110101100101000010100100110011101000100101100001100111101100000000101100111110010000001000100001000001110110000011100110000110101101001010000111001010110100111100111101111111111100011110000111101111001111001000111101011010100111001111011011100010111111100000101101001111011011000110111000110011010110101000010101001110001011001101000011110010110110101100010100101001100000000000101000101010011010010010011110101101010001101100000110101100000000000111010100001111011010010110010101001110011111101000000010010110000101111101111001010000100011101001100 +111011111101111111000011000101011011101001001011000111011010100010011101001111111000001110100100010010100010001100001111100010011100011001101011000010000101100001101010010011101000101000011100100010011010010000001101011101111111100000110000011110101111111111110000001111001111010000010001100010000110001001101010101001100110010101011110100001000000010100110111110010111010111011111111100000110110111011000001100000011101100001010111111110111010110101101101011110011011100010010101010101001110101010010010000110010111000000100011100101110111101001110011100100101010100100010110000---------------------010011100011011000110111001110001110001110001100111100100101000011111100100001000100011110110111010110111000101101110010010001101010011111011001001000011101001001111001110001010110111101001111110000010100110100010000100010011011000011111110101000011111011001100000011100010010100111100010110111101011001001111010110111000101101111101110000111101111000110101111111111011010100110101101010001101101011011111011011000001111110001111101010111110110000110010100110000000101111011100111100101100110000000111000000101000010011111011111010000100111011100010110101100010100011101110001000111100110001100010110100001001101100110011001111100010111001011010111010011110110000110010100101110010100011110001111111101000111100100110101001000010110100100111000101110001101010010101110111011111111001101001011101000111001000010110001111000110000111001100111011011110000011100100100101010011001101000010101001001000101010111011001011010110000010101011010110101110101110000001101010101101001011100010100100011001110010001101111010000000111100001000011101011110010001110011101111001000000010000111010100110111111111000111110001010100110101011001001110011011111100000001011001000000100011001011011101111000111101001101101100110101111001100111011010101101101100101101110011011011101100111000000100001010001111101100110100110111100110010000111011111101000110000111000100111110010100111011100111101010011 +110000100001111000100111100010100110110100011100101011010010111011011000111011101111010100111000010101001001100010000101011101110100010011010110011111101100100100001010100110001111011001101111101011000001011001010010101101110110100111101011010000010001011100000111010000000011000111100001001011101101110111011001001000110101000110011001011111100111110011110100001011100010010010110011010100000111001001011011111011010001110011110101010010100001110111110101110111011011001011010100101001001101110000000001100011110011010000000011010011100100110101111000110100001010100000011011101---------------------100100100101101111111000001100001001111110001011001001111011110101001100001110001000000010111111100010110100101110101100111111010011101110001000011000110010111011110111011101111000100011101100010011010000001011010110001101010010010001101110001000000110001001111010000101110000111010011101000101110101000010110010010001100000000111000010011011001011110011111010111001101100110101011100010000001001011000000101110000100010100010101110000000101110001110011100000000011011010000010101001000110101001000000101000110001010101001000100100011110011010001110100100011111011001001011000111111100010111001001010001010100111000000000110011010100010011101101010000000111001110110010010010101011100101111100001100010111011000100100010011100110001010100101011011011000111110100111001011001111110110001110010010100100110110000110001110001110000010111001101101111101101011001111001000000000000001011111111011001011011100001111001011110000011111011011011000000011000001000001110011111100000011010011001000101000000011110110101000101100100000001101011110111101011101001010111101011011101111110011110011011001110100100001001110010101000011110110100101110110110001100111100011000010100101011100111010111111000110100010010111010101011011101000111111010101100101110100111000111110011000001000100010011111100101101100101110100110111001001001110110110000101111110000110001011111011001110100001000010001010 +010010001110000010100001110110001010010111011111000001111101001100010000010010111010001010001100101011111001100110011010011111110000010000000011100100001001001010000100000111101100000111010011000101110001110101010101110000010000000100010001101011001010111110110110010100001101001011011101000101110101011100001110010100111101001011101010001001110000010100010010001011101111010011101011001010000000000001111101101111101000101001011101001110011111110011000110000100110110101100101011111111110100111011001101110110111010011101001111101010100111010000101001110111010001101010110001010---------------------001111110010010001001111011110110100111111111000111111011000100000110000110010010110101010101110110011010011001100000110111101101110000110010000010110011111111111111011101011100001101001110001100110011101111001011000100001101011101000110010001011111101110100001001110011010110111101100000000011100011101000111011111001100111111010110111111101100101100100101101000110111111010000111011111010111110000110110001000011000110110000100111101101110100100000101010001001010100110000100001000110011001010100000001011010000010010000011010000111110101010001010001100101010000000011100101011010110000110111110100011011010111110001110011101011100001100101110110110011111011001111011000101001000001000100000100101111010010100101010111010011111000100010100011011110100100000111001000111110100100001101011100110100100101111100001111111100011111010101011101010110110100100010110001001101001100000011111110001101001111101001100111111101101111010101001111011001010011001100100010011101111100011010101110001100010010101001111010111100111100110010110110001100001000001010000011011001100010111101101011001101111010100101101001100010011001010011111011010011011101011111101111110100101000110010101000110000110000010110110010101110010000100001010111000000100011111000011111000100001100101110010100110000100111011100010011000011010101000010101111111110110011001110100101000011010000110001100001001100110011 +111001101100110110100111110111011100111000001100000110101100111110010011100000011000000000011110010101101000101010010000011111101000110110001110010110111101100011010001011111100011100111010010011001111110011000101100011001001100001010011100010001010100100111100111111110000000011110101000100100000111000100101101010010110100000010111000000100000100010110111011001110001100001010011011010000010001110111111011110101000010110101100111011100100110011010110111100110110100001110011100011010011000101110010001101010111010101011110001110111101101001010011111100100111100010100101101101---------------------111011001000110000000001000001001010111010001101001001001011010110011110100101001011011000111010101101101100101000111111001111111100001111011101111110000011110111001010110000000111010100000110000110001010110000110010011001111101111000010100100101011110111110111000100010001100011110110001110100101000000111101111010011100110000110011000101001100000101011010011111111011101101110000101111010000000101001101010111111001111110010110111000000101100010110110010101011010100000101011111010011010000011110100000010110110011000010111110111101001011100011111110000000110100111001011001111000011000101100101100101100011001011110001111000010111000110000110000010010110001000001000010111000001110000111110100110001001010011000001111000010011001101011000100011101100001111011011000101011111110010100001100000001101100110000010011110110101110110110011001100011011111111010110001000101111010001000100011111101001011101011100010001100001000100001011100101111101010011101101111000000011100011110101011011010010100111110001111100011111010100000100010100111010100111101000000110001011101001101110001101001101100101101001011101011100010100000100011110100110001111011010101101100010000011010101101110010111101100111101000110100010110000011001010101111011101000011010100000001110101000010111110111100011010001110000110010100010010011010000000001111100000101110101001101111111011000100010100101100100010 +101111010111110111001111100101010011101001011100010100011110010000010011011101111010000100011010111010100010010000110110011100101011100001010100110101000011100111001100001111100010011000101101011111000101011011000011010011100111000011101100111010100010101001001100101010111011011100100011101100110001011110110111111010010101100110001011111001000001101010111001111011110010011000101100001000110111010110010111100010111011101101001100111010000001001001101110100111110101001011111001010110000100000110101010100010111010110001001000001000100011011010011111010100101011001001101100101---------------------111010100101101010101111111110111001001101001110110000110010010000111111100100111001000011011001000010011010100011011110001100101001110000011100100110011001110101001010011011101000100011111011000010100100011110010100110000001010100110101011000000111101111110100110010101000010011110101111010100100011110010000010100111010101101010110100110011000100101011011010000100110101001101011101011011101100011101110111000110011101011100011111110001110100100000010011001100011011111101010101000001110111001111010000001010100110110010101101111111110001000011110000101111010111010000110100101110101011010010001110011100000000010100100111100011001100000110000010001010011000000001000101111001000101011000100100001000000000010001101000101010111110111100010110000000000000101010111000101100001110100011100001110000100000101100001111001001010110000001001101100101100001011001000101010100110010000001011011010011011100111011100000110110000111101111000101000001011001101000010011110101010010101010101011011111110110111100101010000000100000001101010010110011011000010101000101111101011001100110111111001100000010001010000000111110000000011010010110111011010111100000000001100011101000011110001111010101011001010110011001100100100011101001111111101000011011011001001111110100010000100000100101110100001010111000100000010010111011001111001000010011111101001111111011010101010110101011111111101101100101 +000110001101000111100100001101110100010000101100011101001001101011011000000110111100010001111011100000000011010010001111110000011011001101010111001111100100000111110010011101100111010111100101101001110100001001001010001110111111001110101010010001110000100000111010010111000101110010111101000011101110101111100101100000011010000100010011101110110101100110101111110001000001100010100011111110111101000011100001001000010011001101111000110000010100000000100000101100001101011100110111101011001010000100110100110010011010100001110010111111011000100111011011000001000100011111000111001---------------------001111110101001010100101100111101110100000001110111011101011110011100001000111000100100111011001011000101001110101011110100010100011011000110101101010110100110100000111010000100110101100100101110101111010000010111101011100010111101001010111001000011011011111000000101010010010011111000111001001101010010000011001111010101100111010010100001001011101111010101001000111100111000100101101011111101000001100101000111110111011010101010011101101101100010110100111101000110110000000101111011001111001110000011001101000110001011100101101100101101100101010100000011100100100101010010011010111011001101110001010100110111100110100101111000001110101011000011000100010010111100110110110010100111100101001101100111110011000101001101010100100101001101101111110110010101101101010100011001100111100100011010010001100010110011001111110011010101000100000111111100101011010110101011110000001101101000000100101011101000111111110111110110011100110111111100001001000001001110101000100011011010100001000010010010101010010000110100111111100110110110101010010011100100101100000111100001001010000101000111110011011101100101100010001000111010101101011000001000000010110110101111101110101011100111111101010100110101101010100000110100111110010101111001100010101010000101010100001000101010001001001100111000000111100111000100100001111110110010110011111001011101101010100010100101011001110101101001010111111000101 +ls60msgs +101100100111101111011100101010100101100010011001001111101000010000111111001010000011010110100110100001001001100100111000110010100001011110010010101011010010100011110101001100010100001110111101100110001111010100110100011001011011100000000011010000001010000000000100011001010101000101101111101011000100100011010001110010110001100000010011001011101011001101010001100000111000101101110110000100011100101111010100010001011101001010011011111110011011111010010100000001101011111111111001000110001110000011010101011100001111111111111101111011110111100110100101100101011010100110000000110010000101101100010000001101010111100011110011000100111111100000011110100011101010101001100000010011111001101111100110100011011110000011100000011001111001101010100110110101111010101001111101101101110001000010011100011000011001100110110101000111000000110100101010111100000101010110111001000001000100010011000011101000110000101110000001111100000111011001000001010101110110111000100000101010100011010011110000010111010111001111110011010010100110111010011101011101000011101001010110101010011011010010000010010111010000011111001101001100111001001110100101101010101110011001010110100101001101101101110101010010111011001100010111001000101111010111100111000100000100011111111011010000100100011100101010011101011100001101001001101--------------------- +101111010011010100100001000111100111101001101110101001000100101110111000110001011110010010101111010000001111001101111010100001011110110010110101001101110111001100100011010001000100011011010110101001000011100101011011000000100011111001100110011000001101100000010101011101100110111100110101010100000100100101110110111001110001101111010100011101000111101001111010111110100111000010010001011100101100100001000110000001111101001010001000000010110111100111110000100111001101001100111100101000101110011001010011000100110110111100111111010010000010011100010110101100011101010101010101101001110011100110010000110010000011000000110110110010101011010001010111010011111111010000011110011010110011111110010010110100001110100001101010010111111111111100001010101011101101100101111101110010100100001011100100111011001011010110111101111111001001111111001100000001010111101000111011001100111101000001000110100100010010100010011011111000001101110110110000111001001110110001111010110101000100010001011100000110111001101010001100101000111111110100000101111100110000100110111010011010000100101110010010011111100101111011001110101101101111010011010011111001101001000011110111110001111110110111011110110011100010111000010111110000101010100111011100001010010100100110001110001100111101110000100100001000110010001011100111101--------------------- +101010001001001111110110110010000001010000000011000010001100000110111101101110000111001111001000011110001111100110010001001010011010010011100010000000010111100101111111111101110101001100111101100010101001111111010101001010001111110110111010111110010011100100000110000000101010100000000101000010000110010011001000100011111001011001101110111110011100101101101100101000111010000111110101011010011111010110000010110100111110000011110010011111000111011101110111111000011110101100111111011001110011111101010110111011001110100110011001001101000010111110101001111110111111111111101001111011101000100010000001111001100001101101000010011111011001010110110110110010010000100100111010100111110001100000100101011110110111101111010010000100001010110111110001110101001111110100011100000011010110001001101111110100100111000111100110110111110010000011111110001000100100110111000011100110001110100001001110111000110011101101100000000001100010111010011011010111111101111000011001011010011000110111110000001000101001110000111011100000000001111100001011110110001111110101001100101111011010001011001111110111000110010101100001011100011111110111011001011011000010111111011011000001001010101001001010011011100011110111101110011001100101100111010000010111011110101011100011010010111011000011000001000100110111111110010011000--------------------- +100000010101001110000011000000100000100110000010100000001000111101111011001110000101110011000000100101101100100100000011011011010001110000111100010100000000001100010011000111100010011010001001011000000000110001111101110010101111011000000110000111010101011000011110011010001111110010110010001000011010000001111101101101110110100000000011101001001001111111011110000000111000111000111101000110111110101010001111011101010110100001111000011000101011111001000101001010011111011110000100011101001101001000111000100101101101000111110101001111011000011001011000110111000110111101011000011001010100110111101000010101110111010010101110000110111110100010010000110001011110111001010000010011101100001100110011100000000111100101101001011001100000010010111101110011010000001101111000110111010011100111000100010101110000011000100100001000110001101110000001111010001010111011000010010111101000011110110110011111111001010101101010010100001000000010000000000101011001000011110010110110000110110010101100101001111001111010000010010100110110010001001100010000110001101010110010110001011111110011011111110001001111110101100010011000110101000011001001100101101010000000100010101010000100000010101000010110100001101100010101010100110101100100111111011010010111001110010101011111100011100010000111010010001110101100001111110--------------------- +111011110000100110000110000100010111010000010100010011001110010010100101010111111100001010111000000101010101101010101010000100110000101011111011010010101000010111000001100000001010011000010110100000010010101001100001111110110101010110000100010010111001100001011100010000001000001101011011110010000101000001100011010111111001111100111100111101011110101001010101011000010100100110100110000011001111101000111000101000010111010010101011000111010111010001100110101111111110010000000101100100011001111010110101000101101111100111010100001001001110101110010001010101000100101100000011000001010111111111010101100000100000110100111110101111010011011110010000110100001001110011111110001100010100110110000101101000011100010000001000100000000111011101010110011001010011100000110001110111111000100000001001100001001011001000101001001100100110011100010100111000110111110011000000000100111010101000001001000001011010010000111101010001100010000001110111100010111110111100011100000111101110111111101111110111101110010110111111101011011011010110111011110101001001010100110110001000011110001111100001111101010011100011100011110101000010000001100111110010011101110000011010110000010000010111101011111011011010001101001010001010101010111011010111111111000100101100001001000000010000011001111011111011100000100100110010110--------------------- +011100101000001101001010111101110010111100000001010011100101010110111111111001001010110001101011110101111010100000101011000101011110100100011110101111001111010000111000000001111010100000011010101010000010110011010111000110001111010000010101101101111000000111111110110110011000100110110111001111001111101100101101011110110000110111000111001011010100101010110101100111111001001111000001100010101101000011110011111100101111100000110001011101001000001010010101110011100000000000001100100100000100000000111110100000011110010100110110001001110110111001100111100101110011001001011000001000101001100000010001100011010011100111010100110100111111100000101011110100001110101000111011101010101000100101100011111101110001001010100101111010110101000010000111001001000111110010000111110001001101000100010110011000001000000001100110011001001100011100001101110100110001111000101100011010000010100111111110010100001011100011010110011010000101101000111000011100100010000100010011110000110110000000001010010001011000101110010101001110110001001001000000011000101110111110110101100100110100101110101001110110110000010011101001000111100010110010001111001100111100001110110011011100010101010100010010011011010010011100001101000101111000101100011010101010111111001101101110101111011110010000110110101010011000110100110100000--------------------- +110100101111001001010100010001010001110000100010110101011000010001110010100110010100101000100111110001001111010101000110100100011000010010100011101111000000011110001000001111001110011111111110111100110101011100100111010000100000101101011000010010001010101001100101010011011010111101101000001100101001110000010111100000001010000000001101011001111110111100010000100011010001000101000000011111001001111010000110001001000010100110110000111011000011100011000111000001011011111000010000100101101101100000111000101011000111110100101000001011011111110101011111111001110000100000100000110001011011101001111111101111100110001111111000001011011101000000100101011110001110010000110011001000101111101110111101100010110110000101011100101100000000101010011001011000010100100000011001000011001001001100010101000000000011101000110110110110100000000111001011111011011001000010110011010010101011101101000111111011001100001110011101000010101111111101010000011110001001110001110000111111011111101101111010010001101010101010000011100011000111011101011011111011000110110011011001110111001100011010110100010010101100100011110011010001000001011001100100110010010111100011110011110100110001001011100010111000010000110100001011111010101100111010001001110111110001110110001110011100110100001101010001010111101101011011000000100--------------------- +001000110000000111101111111001001101001011011010011010010110110110101101001010101001001101101100011011111110011011001001110111101111010111111010110100000110010000101111100001110101101111100010010110010111011010100010000010101100110110100001110101101101111101010111101110001101010010111001000101000111111100101001000101000100111010000011100111010011101001101001101101010111011110100110001000000011000110011100101001000011110000010010111011111000100011010100111011100010110100100000111100100111010001000000101111101101001101011010000010111011010000100000010101010101001001111000100110100011101001110100010110011010001011010110101100011101101010011101101010100011100100010011001110000101110011010011110100001110111100100111101110001110000000001000010111000110110110000111111011001000100100011101100001000011111101101110000110100001010100000100011000100000001101101111000100100000001110100011011101101100001010010001111111111110000010110110011111011001111011100011011101011001000000110110111101011001111000011010000000100001011100110111101011110001101110110110001100100100010001111100110011100010101101101100111111011100100110110100010011001010110010011101100101000101000101010110010001011111100011111010111100000100100111010111010111111110011001010000110011001010011101011000110110101111011100110001011--------------------- +100000010010111100100100100111110000111000010001001011010001101111010001100010110000100111001111000001111111110100000110111101100101010011110110001011100110101101100011000010011110111011011001001010000011010110101011011011100001011011011000001100010100110000110100011001011111101111011110011110100011000110111101111000100011100110000101011000001111011000011011001110000111110011000101101010111101011100101011101100011001000110100000011000101100011000010010010111110001011100001101111111101100010010110110111101001000001101110111101110111011101111110010100010011100000001110100101110001101010001110111100100111111011001001010011111010001111000100000111110101101100111101111011100000111101011011101000011001101000010111110001101100000110011001110010111001110110010010101110111000111101001010011011110100001001000011011000101101010001011001101011010101110010111000111010010011011011001001000101101111011111110010000000111001011101101110011000011100010100100010001111110001100011110010111001110111101001100000111100001010000000011111000010100110101111110011000000110100000111100100001110101100001110101011111101100101101001111110000101100100000000100110001010000111000001000110011011001000010100001110111011000101001100101100000111011011111010000010111111110010100010111011101001001011011111111100010011--------------------- +101111100001000110001010111011000001111111101001101110110001011000111001000010000011101011110010001110001001001001000010101000001011101101101101011111100100110011000110101000011000101100111011000111010111101101010110011100001011011011000001001001011000001000101000110011001100101111100110000010010000110101100100111001101011111001000011100010110111000000000001010011111111010011011001001101001101111000001011100011000001110010101100111001101000010000111101101100101110000111101111111011100101001000110111101001101111100011110010001000100011001011001000111011010101111010001100101011011000010001110101001010011010111101100100010011111010000101010001001100001011000101111011101011111101001111101011011100010000110001111111100000001001000111001010010101001000001111111011111010011110001100101101001011001011101110011010010111001100100110001010001110001100010010010111101001111010111100110000111011011011001010001101100011110011100001111010110111101101010101001100011000000111101011000101110111001110011010000010010100000101111000010001100011101111111111000101101001001111001110010110101000001011000111111111111110000011110011010001110100111100000001001101111010010011011010010000010001100010101000111101010001010101101110110011101101011110101110111101010010010001101101100111110011001111011000110010110--------------------- +ls60cwds +110010100001011110010010101011010010100011110101001100010100001110111101100110001111010100110100011001011011100000000011010000001010000000000100011001010101000101101111101011000100100011010001110010110001100000010011001011101011001101010001100000111000101101110110000100011100101111010100010001011101001010011011111110011011111010010100000001101011111111111001000110001110000011010101011100001111111111111101111011110111100110100101100101011010100110000000110010000101101100010000001101010111100011110011000100111111100000011110100011101010101001100000010011111001101111100110100011011110000011100000011001111001101010100110110101111010101001111101101101110001000010011100011000011001100110110101000111000000110100101010111100000101010110111001000001000100010011000011101000110000101110000001111100000111011001000001010101110110111000100000101010100011010011110000010111010111001111110011010010100110111010011101011101000011101001010110101010011011010010000010010111010000011111001101001100111001001110100101101010101110011001010110100101001101101101110101010010111011001100010111001000101111010111100111000100000100011111111011010000100100011100101010011101011100001101001001101---------------------001110001100000100101101100000000011111101111001001110010010011111101101011000010111100010000011101101001101000111011111001110001100011100111011111111111010100000010000111000110001101101010111101111110111011100101101001101100010011010100001000100111001100100000011011001111001011000000111111100100110111010001001100011001000110100010011001101011100110000010101010111101111100100110011001011000010111100110110111010010000101001010111111011101101111010111010111010101100101100110110011100011101011011001000110000011010010010111010100101100101010011000101100000110000110010110111001000001101110011000100110100101001110110001111001110000011101000100011101100100110001010111100110101111101111111010010110100000001100100001100100011100011110111101100010010111000000000000011100000010100111001011100111010100001101111001111001111111010110101110001101001111111111100110101011111100110010011001100001001111110100100111011100110001101110001010111111001001001011000110011101010111001100011101111011000010100000110011000001010111111011100101010100001100110010000101011101111100101110111010011100011110001101110111100000000000110000001101010100011101001010110011001011000011111110110011101011001010000001111100110000110100010011001101010100100111111110100010011010101001011010100111110000010100111101110001010111011101000111110000101010001001100100110111000100101010000101001100000010100100101010110101010101010111110100101100101101110000111100001001110100101110011111111100111000011001011100010110010011010111001000011010000111100001110000111110100110010000101100001011000011100000101000110100110100110101011011101101000111101001110101011100101100111101101011011001110110010100001111001111100100101111011101001010101011010000011110010111110111000001101111110001001000101111000011111010100000001100011110110101101000100111001011000101100110001111010101000000010010011000111100000111011101101101100001010000001011111011001010011111101111000111100010000011111100110100001111100101011101001001111110101111011010000010010101010010011000101011101111011011011001001111001100011111011001011111011101111100011000000001101001111000100001000001100011110111101010000110000001000101111100000101110000110000100000010110000110011010100101110011101001000001001001101101110101001010101011001001001101011110011010001010100110000001000111101110010010001101110101100010001111100110110011100110101111010001000000100000010110000101010100100100110000010010100110111100100010001110110100110011101100101000010011101101110011011011100101010101101110001001000111011000011010111111001110111110110100101100110010100011010001101100101011101110010011111101101001010010101110010001000010100011000101001110010100110011111111000010001001011110010100011100100110101100000111101011010010100111000000000010001 +100001011110110010110101001101110111001100100011010001000100011011010110101001000011100101011011000000100011111001100110011000001101100000010101011101100110111100110101010100000100100101110110111001110001101111010100011101000111101001111010111110100111000010010001011100101100100001000110000001111101001010001000000010110111100111110000100111001101001100111100101000101110011001010011000100110110111100111111010010000010011100010110101100011101010101010101101001110011100110010000110010000011000000110110110010101011010001010111010011111111010000011110011010110011111110010010110100001110100001101010010111111111111100001010101011101101100101111101110010100100001011100100111011001011010110111101111111001001111111001100000001010111101000111011001100111101000001000110100100010010100010011011111000001101110110110000111001001110110001111010110101000100010001011100000110111001101010001100101000111111110100000101111100110000100110111010011010000100101110010010011111100101111011001110101101101111010011010011111001101001000011110111110001111110110111011110110011100010111000010111110000101010100111011100001010010100100110001110001100111101110000100100001000110010001011100111101---------------------011010001011101000000100000001001111010011110001111000101001110010011010010100010000001000111011000011110110000100110001001001000001001000011011111010101001010111001011001001101100011100010111110110100110001100000010111111001110101110100101101010010101010110001010001100100111101010001000101101101110101000011000110110001001001101000010110101110010011111010000011011111001101111100011101110011011110010000101001100001111100100110000001010011011010010101010011100000011000000000101010010110111001111110101010110111100110000110101000010001100001011001101110011100000101010010101010100001001110011101100100110111011000111101010010110000000100110001000011010000100001001001010101010001010101000001111111100100011111110011101001101101100010001011000000101100110011110101111011111110101011110000100111100000101101000100000001010110111000000001100010011100011000110000100110000111011001110011110010100110000010110000111100110001111100011011010000010001001101010101001011011001111011101011110001100001011000011000101100010100111000101010110101111101001101011110110100101001111110010111000011111010000111101111001111010000111001110011011110111010111111101010010111111000001101001001011001101110000110100000000111101101111001000011011001011111000001010101100111111110111110000000111001010110100111010100010001110010011101101110001111111100111001100111000011000011101100100001110011100010011000010110110000011110010101000010111001001110001000101111100111010001001001010001010001101111101100000000000001010001110011101101011000111111111010101000110111100100001111110000000001000111011011000010100001001111101110001010111111101010101010101111010100100100001010101111011000011001101111110100100011000011100011001011010000010011101011010101110000111000100100000001011100000010110011011010111001101111011010100100100001011001101110110000000001001010000010000111100000110101111100110111110001000111111000000111111001101010001011010111101111111101111001101111010101010010011000001111000011001001000000110110000001101110100001101110011000000110100010011001100111111101100010000100010011111110000100110111000001010000010111001101110010001101001011101011100010111100100101100011001110111110111001011110010110100000001100000000010111011111101111010100011111111011111111011010001101011100111000000010111101011001100101001101110100111100110011100100010110011110111100110110101001000000011001101111101000001011010011000010101110000001011001001101110110111111100111000011111001100010100010001001001100000101000000000101111000001001111100101011000011010110101011001001101111001100100110011101010010000011100010100100000100000000011110111001000001110110110000111110100110101110010111111011110101101100110000001010001011001011110110010000011011011010110011101011001001110100110001001111011 +001010011010010011100010000000010111100101111111111101110101001100111101100010101001111111010101001010001111110110111010111110010011100100000110000000101010100000000101000010000110010011001000100011111001011001101110111110011100101101101100101000111010000111110101011010011111010110000010110100111110000011110010011111000111011101110111111000011110101100111111011001110011111101010110111011001110100110011001001101000010111110101001111110111111111111101001111011101000100010000001111001100001101101000010011111011001010110110110110010010000100100111010100111110001100000100101011110110111101111010010000100001010110111110001110101001111110100011100000011010110001001101111110100100111000111100110110111110010000011111110001000100100110111000011100110001110100001001110111000110011101101100000000001100010111010011011010111111101111000011001011010011000110111110000001000101001110000111011100000000001111100001011110110001111110101001100101111011010001011001111110111000110010101100001011100011111110111011001011011000010111111011011000001001010101001001010011011100011110111101110011001100101100111010000010111011110101011100011010010111011000011000001000100110111111110010011000---------------------100001001010001111101001001111001010011000010110101011100111000011111010100001011111010100101011001001100010101110101101100101001100100000011110011100110110100011101100110010110101101100011001100110011100010110100100101011010110011110001110110010101111100010100000000010011001111011101100101101010100010000101101000100011000111000000000000100000001011100011110010101100011000100110100010010100010101111110101100100101001011101111111101000111001010110011000000000010110101111011101110100010110111011110000100100001001001011000001010010101010111100110010000000001110111101101001100110100100000011100010000011010000100000110100110111110001100111001001110001011110111111100000111000100110000110011101101101111100101101101111100000010000000010001001110111101101011110011010100111011111111101010110100111100000010000111110001101111111100001110101100010110001101110000111001000111001001011111010111101010011111110100101101111001010001111011111001100110100010001000100011111100101110001010100110000011101110000001011111111011100010110001100000111010000010100010001010000000100110111111000101110101001011010110000111111001110011000101110111100001101110110111100111110001101011101110101111001100101111010010000101011111011101111001101001111001000111100000111011000101000000101101011110011100001100000010000011111110111001111101101110101011111111000100111000100000101010111000000111001011001101111100100110101100001101010001001110111010000011000001110111001100100001000010010011000111111110111111100100100100001001100111010001011110000010100111101010110101000110000011000010100001111000100011110011110101100010100000000001110001010101100110010110001001111100100010101010111100100110000010010011001000110101000011010011010111110010101000001101011100011011111011000101100111000001001011010100100000000110010000111110100000001101001101000111001000100111100101111100101010111110110111110101001000000010111111100110111111001101000010100111011011001001101101011000000000011101001110101101000100101001001110111000101111101001111001011010110101111011100111100101011010010010110011101010100000011110000011000111110011000100011010101011100101010010001101100010100010011101110001101011101100001111001110111111111111100011111001101110001110010010101101111010110010000011001001010101001000010010010001011000111011000010011000101011100110010110111101110100100110000000011010111101001100011010111011011100000110110110111011100011100100110100011010100001000010010100110110000110001110011000101011101110111010100001110100000010010100001111100000001011011010110111011111111001000100001101101000010110011100010111000101011000111110101010011010010110101011111110000110001101001010000011110001100111100001001000110011111100010010001111100101001100001100101001011101111010001001111101101111101 +011011010001110000111100010100000000001100010011000111100010011010001001011000000000110001111101110010101111011000000110000111010101011000011110011010001111110010110010001000011010000001111101101101110110100000000011101001001001111111011110000000111000111000111101000110111110101010001111011101010110100001111000011000101011111001000101001010011111011110000100011101001101001000111000100101101101000111110101001111011000011001011000110111000110111101011000011001010100110111101000010101110111010010101110000110111110100010010000110001011110111001010000010011101100001100110011100000000111100101101001011001100000010010111101110011010000001101111000110111010011100111000100010101110000011000100100001000110001101110000001111010001010111011000010010111101000011110110110011111111001010101101010010100001000000010000000000101011001000011110010110110000110110010101100101001111001111010000010010100110110010001001100010000110001101010110010110001011111110011011111110001001111110101100010011000110101000011001001100101101010000000100010101010000100000010101000010110100001101100010101010100110101100100111111011010010111001110010101011111100011100010000111010010001110101100001111110---------------------001011100011000010011010011010111100011010000000000011001001100000111001001011000101000000010111111001010101101100100110000010100101110101101001000010111111111000100000100100110000001100000011101110010111010101001010010011111111111011001111000100011000111001111000001111110010010110110100001001101110100100111110001110101101000101000000011000110010110010101111000000101111001010101100100111010100101010010101011101100001001111010011001101010000101010001010001000010011001001011111111100000001011100100000011101111010101011001100111111000101000101110111011001100000100101101011100011010100000110001010000110101000101111010010100011001011000111100000010011101100111101001010000011000111111001111111011110010010110111011110001001111001000101000110000111000111011101101100011110001010010100010111111001010010100011110001111011111000100111101101101110110001011110111101011101000110000110101101111011111000000001001011111100111011001110000001001100000111010010110010010001000000110110101111011101010000000010100100011110111011101000010101010001001100101111101000000110000000100000000101101010101011010101110010000100100011000101111000001111001101110100110110101000110001110000010101101010100110101101111101001111101110000111011101101110010111010000100111111111001011010010111100000010111110000100111111100100101110001001000110101010101110010100100001110111101011100100111011100111101010101000011001101010000010000011110110110001101101011100101000001011010000101000110110011001011110010110010111010111101010001000110011010010010011010001101010001101110000011000100110111000001110011010100011001010000000000001001111100001000000011000000111010101001100111110011111101000001001100100110011101110011101111111010100001110000001111000000000111101010010110010100001100100001100100111100101100101111101011111101010111010011001011111000010001111000101101010101111011110101010010111110110100011101001010011101011011001110101111101110011110111000001011010110111110010011010010101011100100000000101100010101101000110011001101001100000001100100001101100100101110100110011010110110010101111100001111100110110111101111110110000111111111110000010011011111110110011001000101000000100110001011000111110011010010101100111010001110111000101001101001100101111111100100011001011000100010111010010001100001101110100000100000001000101001111111100001110001001001101011111111001001111011100001001000101000111101111101011100010100100011101111100001111111001001101001001011101110011101001101101011110100001100011010101000101101010110001111110101110001101011001111100110100101010001000100111111001100111101010111100011011110111111001111101110100111001110101100000111111111000110011111101110011010110011000100010110001101010110001101100111101111101100111000011100001110000000000010010011011001010 +000100110000101011111011010010101000010111000001100000001010011000010110100000010010101001100001111110110101010110000100010010111001100001011100010000001000001101011011110010000101000001100011010111111001111100111100111101011110101001010101011000010100100110100110000011001111101000111000101000010111010010101011000111010111010001100110101111111110010000000101100100011001111010110101000101101111100111010100001001001110101110010001010101000100101100000011000001010111111111010101100000100000110100111110101111010011011110010000110100001001110011111110001100010100110110000101101000011100010000001000100000000111011101010110011001010011100000110001110111111000100000001001100001001011001000101001001100100110011100010100111000110111110011000000000100111010101000001001000001011010010000111101010001100010000001110111100010111110111100011100000111101110111111101111110111101110010110111111101011011011010110111011110101001001010100110110001000011110001111100001111101010011100011100011110101000010000001100111110010011101110000011010110000010000010111101011111011011010001101001010001010101010111011010111111111000100101100001001000000010000011001111011111011100000100100110010110---------------------101011111001000100111011011011101010011001011000100100011110100001100100000011100110001111111100101101011011000000010010110011101110110111100001101110010000111000011110011100011111110001010101011011100101011111101101010111000111001101111110001100000011001010110100010001010001001111101011001011111011000001101111110000010001100001010110010101000101111100001110101111100101001001011011001001100001011111110101011010100001110100001100011001101001100000101111010110000110011010101011101000000110110001011011011001010111001010011111111101100110001001101110101011000000000111111001010100000011111011011011111000010100000011001101010001111000011100000000010000001010100011010010000010001101011000001101000001111000000000001001110100110010001001111010000011011111000000100101110101011101011011101100101011001110110101001100100101111110000101101010100000110000101010101111011110111011111110101000101100111011110110011000100101101001101101101010100001100001110110100010101111111101011100001111111110101000010000111111100010010110101110110001110100011011011100011110011000111001011011110110111111011011111011001010011011001100000010100010110101110101110010001110011010011100110000101011010100110100010001110000100001001001100001010101010110000010101000111100000100110001010110001010011101110111000001011100000000000100100000111111101111011101000110110001110100110111111111010011001011001100111000010010001010000100110110110010001001111101100000100110010010000000111101111111010100010011000010011000111010100111110101011101011001011001001110011010110111111000110000110101010010101010100000100001101011100001011010010101110001010001100111110101111111110000111111100101110011100100111010000011100010011110010100000100100000011001100010001110010100001011010001001011001000001010000011000110011011101011110011000000100000100010000101111010111110011110001111001000000011010111101100000110101001100100100101010000001011101000101000101101100011100100110011010000011110000011011011001111101110110010101100011111101101010011100000000001010101110101001001010111010110111010110010000001111001101110111010101100100010010001100110100100000110000101001000000010010110010000010010001111010011010110111000001100001010110100010101100101100010111010101100011011101110001000101011001001010001100100101010001000010000001000101100110011001010111001010001111110101100111110001100001101010100001110111100111100001110001010100011101001100010010011100010100110010111010111010100111010100101110100110100100010111001101010110100100110100001000011111100010101000111110110110010010101101001011000001000101011011011001000010001000111010110110010110111101011010010011101011111100111000110010000100001111010100011000111001110000110010110110001011110111110111000111000001011010000001001100101100000000111 +000101011110100100011110101111001111010000111000000001111010100000011010101010000010110011010111000110001111010000010101101101111000000111111110110110011000100110110111001111001111101100101101011110110000110111000111001011010100101010110101100111111001001111000001100010101101000011110011111100101111100000110001011101001000001010010101110011100000000000001100100100000100000000111110100000011110010100110110001001110110111001100111100101110011001001011000001000101001100000010001100011010011100111010100110100111111100000101011110100001110101000111011101010101000100101100011111101110001001010100101111010110101000010000111001001000111110010000111110001001101000100010110011000001000000001100110011001001100011100001101110100110001111000101100011010000010100111111110010100001011100011010110011010000101101000111000011100100010000100010011110000110110000000001010010001011000101110010101001110110001001001000000011000101110111110110101100100110100101110101001110110110000010011101001000111100010110010001111001100111100001110110011011100010101010100010010011011010010011100001101000101111000101100011010101010111111001101101110101111011110010000110110101010011000110100110100000---------------------100111111011111011111001110111100110001010000010110110000011001010010111001010100110110111000111101101111111101110111010110010100100011011010001101011110111000100111100110111110010100100111001001011000101001100101000100111000100010100100111011101101000100111101110001010000010111111100110101100110100010100110000001110110101100001011000100101101000011111010111110011101101000010100100101001000101111111010100100101001100110110101011011110110101101001101010110011010101111011101010000001000101000100111000101000010101100110110010111110111001111001111110011110111000001101101101001111101101001110001100000101111101001110111011001011001010000000100011110110111101000100101100101001101000000101101011010111101110110000101010001110011101111110110001011110010010011001000001110011110011110111001010001100100101111001001001100110000100011001111010100111110100011100010011010010101100100110000001100110011000011110010011011010101011001010011101010000111101110010101010100000010000110010010101010101100101010001100101000110101101100111100110001010101011101101010000100001000010011100000001011000001110100001110110111010110101111100110111001111001101011001010010000000010010011101001100110011100110111110011111101111001010010001001000001001011001101111101100001010111001111100110001100100110100010110000111100101110011100111110000000111001011001011010010001111111101001000100010100101111000000100100001000001011000010011100101001000111011011111100111100000011001000100001110010101100111000010000011101011001111000110001100110011011000010111001010000100111010111000100001111100111111010111100000111010100010010001100001001001011000111111111011010000100111111101110111001100010011010110110000011001010111010011111000101100001101001000001110000011111010000101101111011101011101011110010001111011100101001101000001000111011011111111000100110000101101110110001010001111001100101011000100000000011001010101001111011001000100101011010010101101010110100100101010101010001010011010100011010110000100000011110010111010000100010101110000001111101000100110110110110111100001100110100001001010100101010111000011110001010111011000011111001010000110010100010001101011101010100001000100010111000110111101100101000101000000110000000100101011000111010101001110111000101100001111011101101101110000101011101011101110000010101110010010100101100010100101000010011101011000111111011010111000111001010001100110100100011001100100000111010011110100001011001001111101100111111101001100101011000000000011001101001011100001101101100110001011110001100110010110110000000101100111000111010101101000001000100110110000110010000101000110100110111010101010010111110010111101101010011111011011101011011000000110010111101001100110110110100011101110001001010101011000100111100011110101101111010110000001011110 +100100011000010010100011101111000000011110001000001111001110011111111110111100110101011100100111010000100000101101011000010010001010101001100101010011011010111101101000001100101001110000010111100000001010000000001101011001111110111100010000100011010001000101000000011111001001111010000110001001000010100110110000111011000011100011000111000001011011111000010000100101101101100000111000101011000111110100101000001011011111110101011111111001110000100000100000110001011011101001111111101111100110001111111000001011011101000000100101011110001110010000110011001000101111101110111101100010110110000101011100101100000000101010011001011000010100100000011001000011001001001100010101000000000011101000110110110110100000000111001011111011011001000010110011010010101011101101000111111011001100001110011101000010101111111101010000011110001001110001110000111111011111101101111010010001101010101010000011100011000111011101011011111011000110110011011001110111001100011010110100010010101100100011110011010001000001011001100100110010010111100011110011110100110001001011100010111000010000110100001011111010101100111010001001110111110001110110001110011100110100001101010001010111101101011011000000100---------------------010000010101001111011011110001101001011111101011110001011000010000000110001011111101100011111110100101101110001011010110011011101001100001100010110110011011001000111100001101000010101001101101111000001001010011100110101111111100010010011001000100010000001011101110011000111111101101100001111111011100110111000110101111100011100101001010111110100000101010001100010110101100110111000010101110110101010011110101011101100110001000101001100101010100001100000100101011100010010110011011010000010001101111110110100100010000001000010011011010101010110110111110111000000001100111101100010011010110111001011100111111000000100011110100000110100100010100000111111001100010010100110010010011001110011110011010011111100101001010000101101001111010010001010101100010111001000111011010111011000100110111101011010010001110011010011010010000001010011010001100111111000011001101010000101010110111110000000000111010101111101100101100100000111110101110001100111010001100001000111111010010011000111100011110110001111101001010110101101011010001011101011000111110111110110010111011010010000001001010111100101001101001010001111011100010000000010011101110011101000101000010100111000111111000111001100111110100100100100111011000010110111001101110101111011000101001011100100111101110111101101000010110100110001000101101011010100010101101000001111000010001010001101010011100100101111101111000100000001111000101011010101000111110000110011011111011110001010101001100110110101110100100010100100111010101011001100001011000111010011101101100010100110010101111011100000000111100001001011111001100101101001110100101011100111011101000000011001111111111111100000110000111000011000111111010010000010110000001100011000110100101110100010010010000110101010001000010101110000100110111110011011111111000101010111001000111101001001001011111000101100111000110100001100000111111001101111111111111010111011101001101110000111111000000100101100111110011001000111010001010101000000111110110000111101010110110101000110110000001001100000100011101011010111101101011001001101100110101101100110011110111100011010111100110100100111001100110101000111101100101100000000100001001100111110001111010100011111001000001010110100001001010110101101101010111111100010010101101001100000101010111001010001110100010010000011101001010000011010101110010000001111010011001010101000001100000100110010100100111011000001101111000101010110011000011000010010110111110111010000011000010010011100110010101111011000000100010000000011111010111011101000010111111101100111000101000111000000111010111110110100000100001001011010011101101000010011111011011101010100100100111000000101001000000010100110100111111010001011001100110001111001100100100100101001110111010001001011010010100000111011000101001101110000110010000100111000110001100111101111010 +110111101111010111111010110100000110010000101111100001110101101111100010010110010111011010100010000010101100110110100001110101101101111101010111101110001101010010111001000101000111111100101001000101000100111010000011100111010011101001101001101101010111011110100110001000000011000110011100101001000011110000010010111011111000100011010100111011100010110100100000111100100111010001000000101111101101001101011010000010111011010000100000010101010101001001111000100110100011101001110100010110011010001011010110101100011101101010011101101010100011100100010011001110000101110011010011110100001110111100100111101110001110000000001000010111000110110110000111111011001000100100011101100001000011111101101110000110100001010100000100011000100000001101101111000100100000001110100011011101101100001010010001111111111110000010110110011111011001111011100011011101011001000000110110111101011001111000011010000000100001011100110111101011110001101110110110001100100100010001111100110011100010101101101100111111011100100110110100010011001010110010011101100101000101000101010110010001011111100011111010111100000100100111010111010111111110011001010000110011001010011101011000110110101111011100110001011---------------------011101111111010011100010001111010000111101000010111110001111100111101111011010100000011011110000101110010110110010010001011100001100011111011100110110111000110011010101011011000001010011011110100111100010010110010101101010100101010001110010010100110110000111001000000000111111101100110011110111111001110011100010111000101001110101101110000110011110111111001011011010111010100001100011111011011010011100110000100010000110011011100000000001101011110110011100001011000010001000000110000011011000110011011110011010111011101110100110101001010111101100000110100011100001011011001001011100000000010001100001010101110100010001000000101000100110110001111000100110111110110001110101111110111101100110110011000100110000000001000111010110110001111011111010000010101110000011011011011000100010010110111010011100000000110101011100001010010101100111111001001110001011010000110001000001001011010100101111011111110000111011000101110111111111110100110001110110110010001101000010001110100110111010100001000111010000110111011011111100111111011111011001010110101111101111101000100010001011010001011010000001001101001111101101001011010001001111001100011001101001110110000011111011001011001001000000100100001100001101100001111101000111001010111100110101100000001100110011011100101110000000011100001001100101011011111011000111011000010111000001010101010010111000110010000001000011011000011110010100100111001011000111001001011001100111101001011000111010100111011011111010110011110001001101010001011001101010000100111010100011110000011111001101110100101000110111101111010101001101101100101000100001110011000101111011110000001100101010001111001010011001101010011110111111101001011100011001001011011011110001101011010000001111000111111101010110111110111010111110001011010100111100101001011001101001001001010110110001101100010011011001100000001001110000010110000011010101011001011011101010110000000110000111111011000100011000001000100001111110010010101001101101111000100100111010100111011011001100100101101101100000000011111111101100010101101001000110100101101110011011010111010101010000011100101100010111101110100000111110000010100100000001101101001111011010100100001010011010110111000101010011001001011001011011100001011010101100000111101000110110001101100001101011000110000101011111111001101111010100110000111001101100011110011000110011101011001101110001110100111111010000111000010000110100110000111000011101011101010110010010001110001000101000010110100001101100000000010010001110010110011010000100111111111111011111101001101001110001111011100001000001101011011011100011011100110011111010101100101000101001101000011100111101001011000100101110000101111011100100110001011110100101000011110011110110110111110000011011100101011100100000001011010011011111110101010110110001000011011010010011 +111101100101010011110110001011100110101101100011000010011110111011011001001010000011010110101011011011100001011011011000001100010100110000110100011001011111101111011110011110100011000110111101111000100011100110000101011000001111011000011011001110000111110011000101101010111101011100101011101100011001000110100000011000101100011000010010010111110001011100001101111111101100010010110110111101001000001101110111101110111011101111110010100010011100000001110100101110001101010001110111100100111111011001001010011111010001111000100000111110101101100111101111011100000111101011011101000011001101000010111110001101100000110011001110010111001110110010010101110111000111101001010011011110100001001000011011000101101010001011001101011010101110010111000111010010011011011001001000101101111011111110010000000111001011101101110011000011100010100100010001111110001100011110010111001110111101001100000111100001010000000011111000010100110101111110011000000110100000111100100001110101100001110101011111101100101101001111110000101100100000000100110001010000111000001000110011011001000010100001110111011000101001100101100000111011011111010000010111111110010100010111011101001001011011111111100010011---------------------111010101110101111010111001111001011111110001101101001010110010100001111110000001001101110101100001101110111101101010100110100111010110000011110110011000010111000001100001000010001101000101001100110111000011011001001010011101110000101100110011010101100110110100001110001010000100111010111010101010110010111001010101101010101110111110010111111001010101000110111110011000010010111001011011000001000100110000111101101101011010100111011110001111110110001000011001010000100000100111011010001110111000000111110010111101101111011000011101000000010011101001010110110110111111011011010011010001110011110011110001110111011011101110100100110100000111010110100000111011101100110100101110010000000101110100100000100100100111010111100110010000000001000001101011111101100010010000011001101011001100111001100001100000101011010001001000100011010100000011100001110101000010001100100100101100011110100010111000101100101101100010011010101010100100100001001000110000100010100110101111100110001000101100111100011100010111011001010010100011101111001111001111011010110000100010100110001111111101010111101111111100011110111110011100101001001001110011111001001110101011110011110101100111000111010101010101110000010000101100001101010010111001001110010100111001001110010000100100110101011101001010101000101011011000000011100101110000101011011101101110111100010110010010111001011100111100000100001100010100010110001101000010101010010011000011000110111010001111010110011010001100010111100010111000010001000100011010111001111101101101101100101000110011100010010011000101111101011010000111010111000100001101111011101101011100000000110010001010110110010011010100101100011101111111100100010010110011001101101001001100000111011111111010001100101100111010001101001111010110101111101011100000110101001101001100101101001100110011011011011111001010110111010110101001001011010010111011111110010110011100100111001000011000111001101111010110100110100000000010011001101001000011100001000111100011100111100111010011011100101110011110101000011101101100010111101111000010000101101111011011000110101001111111000111101000000011001101001001110101110110100111100001100111010010110001011101010010110110000110001010011100110000011001110111011001001101100001100110000100011100100000101011110111000011111010010001101011011110010100100110000010000101101010010010101100100001101001011101101000111101000001010100100101011011010001110001111001010011011011100110011110100011110001010000101101000010001111100010001111101110001101100010101001111011000010110001000010100001101000100110011001000111001010010001101101011000101010001110111011100011100111101101001001100001001001111001010101110010101100101101101000110101010011001111010110111010100010001110010010101100011110000001100010000101101110100111110011010000110110110 +101000001011101101101101011111100100110011000110101000011000101100111011000111010111101101010110011100001011011011000001001001011000001000101000110011001100101111100110000010010000110101100100111001101011111001000011100010110111000000000001010011111111010011011001001101001101111000001011100011000001110010101100111001101000010000111101101100101110000111101111111011100101001000110111101001101111100011110010001000100011001011001000111011010101111010001100101011011000010001110101001010011010111101100100010011111010000101010001001100001011000101111011101011111101001111101011011100010000110001111111100000001001000111001010010101001000001111111011111010011110001100101101001011001011101110011010010111001100100110001010001110001100010010010111101001111010111100110000111011011011001010001101100011110011100001111010110111101101010101001100011000000111101011000101110111001110011010000010010100000101111000010001100011101111111111000101101001001111001110010110101000001011000111111111111110000011110011010001110100111100000001001101111010010011011010010000010001100010101000111101010001010101101110110011101101011110101110111101010010010001101101100111110011001111011000110010110---------------------000111100000010001010010010010110101110011110110101110101001000001011001110110000110000100001111110011111011100011110100111010001010010001000101000100001001000111101001010001011010010110101011110110110101001101111111101111010100111010110000011100001101110000111100110100101110001000011111101011001100110101001110001110001010101101100001000010000101001100110001001000001000100011001001101011010010011111000000110111001111001111010001010111000001000101000110000101100100111001011001101101111110011010010000101000010011001101001110101111100101111110110011110101001101100100110101100101110001101111010011110010111101011001111001000110101111101101111010111000110011101010101110110101000011100101101010100001100111011111000001100110011100001011000110001001001110011110100010100010101101100111010101000110011001100000100010011011000000000110000110011000110111011011110000001000100110111111011000100101101011100101110011000001110111000110111100110110111101010110101001011010101100111101101001001100000000111010010111100110000110011000011010001101100011010011001000100011101110100001100010011010010100110110110000011100011011110010010001000011110101110101101111010111000000101100011111111000001101111101011011010010111110011100011001111001110110100111111010010001100000000000010000001100011100001110011001110010010100110111011011001000000011111100000010011011100000000011010011110010000001101101010101001011000000110001010111100000001110001111110010110100111000000000000110010000001111101010000010110000011101010111010100110010111001110001101001110111000001100101100110111111111110001010101101100010001000101000101101001111011101010000011010010001111110000010011101011111000100001100010101110111110110100111101111111100001101111010110101100011000100011000100010011100101111100100001111011011000101011110100100000000000011000001101101110000010011100000000110101111001110110010001110010110101110111001111011100010000000000111110011011101010001010000101111011101001101001101010000011001001011000110110010000010101110000111011111010110011110011110010101001010101101110001101110011000110010000011010100000110101000011110111011001101111101000101101001000111011111011001100010110101011010111000100111101011111111001010100100111111000110011111110111001100001101111111001000001000101011101000010011110101010101100001111111011100001101100100000011011010010100100000010011001101000011000011111001111101001001100000100101011001101001101010010111101100110110000100101011011100100011010010011001011010100000100011001100010111111110110011111010101000001100110110001011100000010001101110100100100010100010001001101000100010111100111110101100110100111100100100111000100100110110010111110000010011010110100110001100011001100011000010111110111110100010011101000000001011100101100000110100 +ls120msgs +111111011101010001100100011001001100000011110101111000011001111110000110111001110010000010110011001100100010011101110111100101110110001110110011000111011110111011100001110101000101110101101001110011101101011001001111011011110110000000000100110001101100101000001010011111111111110010101000101001100010100000011111110001010011011111000001011110110110101001001011101111010100011101000100101111110111011011011000101011100010110111101111111010111000010101101100001100100011000111101011100110010110110101011010100111010011110000101110100011101011101100110110000011101111110011001110000001001110101001010010101100100101110111001110011011010100001011010101011010110001011101110100001100010101000101010101000101000101011101001100010010111100010111010101010101010010001011011100100111101100100110001101100110110010100101110101010011000000010010111010011110010011000100111100001001110100100111111111111100011000111111000010100010100111011011011010101001010111000110101011001010000111000010100010100101010101110100010111001010000101111111110001001011000101110110110111101010011110010101010101001100111101110001111000111010101100001000110011110111010001011010000100011101000100001010100111111111100001000000000111000011010111100011101001000000011000001100110100101101111001011000111110100011010101111010100000111001101110000110001101100001010100111000001010010100010100111100000010000000101110010101000100010010001110111011110000111010010101000111111110001111000011111101111100111100001011011100001111001110011001001101010101000110111110101010111001110100101000111101101101000101000010111000010001111101100101001110110011100100111011101011010100110011101011001001001100110100110101101101111001111101000110010010000111011000111001100000011000011110100000001101111111110110010100010111001000010101000010010100001111010000100011010010010000100010000011011001001101101011010101010001100000111000010100100010100001011111001101101000110100011101110110000011011110100100011110101000100101101100110010000110100011000101100101001101101110100001011001101001010010001011000000000111100101100010011000010110010111100100010100010110100000101001011101011001000100000101011010001011010110001000111010111110011000111010001000100000101100111011000111011100101101001111111100111010111111000101001100001010000011000000110110000100110001000110111110000001110100111111111010000010100110010011100001111010000100001101011001111111000100000010000011010100000101111100101110011100110011001000111100000000000000001101000010010010101010100000001111011001011111001001011101111101010001111011110000011011000110000001010001011010010010000111000011011101100110110--------------------- +101000110011000110010001110000100111011101110110001100110010001011010000110000001111001111010111011001101011011001001011111110000011000110011010010101001011111000011110000101100110001011010000100010001100101010000011101001111111111011011000010010110011101011100000100010111011010100100101101010111000000001011001110001010000110010011001110001110110001011101011001110000100010110001100010110110100111111100011011101111110111101101001011111111010111011111110100010101001110110111101111010100000110111001011011001101111110001011000101000111101110000110001000001100010000110101101110101000110110001000101110001011111000100001000010111101010000001010111111001111111101000101001100011001010010000001011100000100100101000001111111111010011111100010110011010010011011111001111011011000100010000011011111010011010000001011011001000101101110011111101101100010101110001001011010111100100011000100000011101100111010110101111011001001010101110010111110110001010110010111000001100101001100100110011100010100011110110001110000110011001001011011110011101110100101011001000001110001011101110101010100111100011000001011101111111011010101010111010001011111011101011011001011100101011111010110000100110000010011000111000001010111011100111100101000111100100111101101011011010110100111111001101101111010101010000011001011110111110011111100001101100110110010011101011111101101101000001000111111111000000001010111000110010001110111110001100001011001110001010001100000001101000111100110111000010100110110100001110110010000000011100010100000101010100100010000111011111111110011001011100010111010100111111000011100111100110111101100000011100011010011101001011010111100011110110111101000001011000110011010100110011011110000010101101011111101100000100110111010001000010001010000111111001100101111100111111001111101010101110111001011110111110010111011011001110110100101000111101010100001000011100001111110110000110100001000001001011011001000110001101101001110001101010011110101010111001101000000001001110111001011110010010011000000111110010010011111010101010001001011101100010100011101111111000001000011011011010001001101110001001100110101101010100011111011101100010110001100101000011001100001001011001010111001001100111110010011110010010100010011001100001101110010010101111101101101000001101111011111101000000101011110101100010110010000100010110000100101010101000110000011011110011000010111111110011110110000010000111010010101011101000110101110111111010010001010101100101011100001111011110001001100000000010111011000101111010010000001100001001010110110110100001110000000010100101000111111101111010010010000111111111101000001111111100100110101000001--------------------- +011000100110110001010110000110010010011001011010001010110101110101000100000100010111101010010010001011011011010101111110010000011101000001000000111001010010110010110011010000100111011001011011000010101000011001101000011001110001111111011100110010000100101001111010011101011001011010010110010101111010000001000110001110001100101100000011010110101100000100011110001111101011010100100110110010011011000010110101011001100001000000001101011101111000011100110001001101010110100101110000011010111001001100001011111101001100100110100110011110011111001001100101110100000010111100011101111100100110010011111101110101111110100010011000111111001110011000011011100000001101100100110000011011011010110011010010111010010001011010101101110101110110001001100111011101111101000111000011001001011110000100001111001011010010101110011111011100011000111110100010011101110111000001000010101101111101110011011000000010001010011111111000100111100000101001010001101100000011000010001110101010101010001111011011011001111000111101111100011110000100100010110010100110001000100010001001100011010001011111100000100110011000010000110101111110100100011100110100110110011101100011000001010101100001101010000100001101110100111100001111100001010001000000100011001111011111110101111011001111110011011011011000101000000110110110110001011011110001001000011100100000000001011101111101011010111101001101111110010000000110010001111111101001010101110010010000101001111001011010001010100001101101111100100110111000001100100101101010101111010111110110111001111111001011100101010100010110010001000111100100111101110000100010011010000000011101001101001001110101101101110100001110100010011000110010000001000101001011110100100011110100101101000000101001111000110111101001110010010110101010101101111101110100111011100110011010011110110000001110110110011111101000100110111100110111011001110100101100110100111100110000001110100101111000111101111001000110111001111110101001101001101000101011010100101000101100011100110011010111010110011100000001110001001000111111111100101001010110011001100100001110101001010010101010010101010011111110011101010010111001011000111001111001001010100101000110010111110110000100001110101001110011110011000010011001011010000110110100100000011001100101001110111011000011110110101000110110000011110011110000010101111001101000010010110101010011111001100110000101011100110010011010010100001101011101000000000010111111011011000111110011100001011100011100001000011001100001110100011001111000001011011101100111111110111101100100100110000100010010011111000001110010000001101111110111000111100101000001000100111111111101000100111001010110110001100001010--------------------- +010011011010110010110010010101011111101101011111011010111111000000110010011100011010110011001010110101011010100111000011111110010010001000100000010110110110110101001111101010001111000110100010111001010101101010011110100110010111101010001101001001101100001110011111100101101110101000100010100100001011001110100010111111110101001010111010001001011000000101111110010010100001100101100111111110101011001111011110010101001000100101110111101110100100001100110011010000100011100000001110000101101110111100000111101000000001101011001111110000000110011110110111111011010000011101100100101101101001000000110110111111110000110010100000000110000011111011101100100110101011010000000001011110011100010001100111100101011001101100100010111010110011011011111001000000001101100101110011111011001111101011111011000110010101001110111010000111010010110011001010000000100111111100000110111110000010001000010110001101111110000110100000101111011111100110001111101100100110111111100111110011010000111010110111101011110101010101000110110111110011110001010100101110011100110000000111100111111110011010101111000101110000111111101011001100011000010010000100110110010100111100010010000100100011111001001011001110000001011001010100110101010101111110110010101110100000110110010000110110110010001011111011101111000000001000111001001100010100111000111001100100111111011010011011000110000110110110100111101111100100001010101100110011101001010100111100101000011110010000010001000101010101000100110110010010100011100000111010011011010111011111110001000100100100000001110000100011000100101110100000010111101111010110100110110011100110010011010110110010110100111110100000100111101000111010001001110101111000000100100111001100000110010010101010101000001110010011101000100101010011010110010010101100100010001111011011001011000001001011100101111011111001010010101000110011010001011010011110010000111101010001010110000011101101011111111100011011110101011001000100000011010101001111110110000100011010001000101110100111110001010001011100001010010001101000111101110001000101110000000001000010111011010110001011100001011100101001110000000010110111100011100101000011001111000000100100110100010000110101001001100010010111111000100000111111000110000111111000100010101010010110111101010000100001000100000101000011101010001111011000000100011010100001011110111111100000000110001111000011000111100101001001000100110100110011100000100111111000101111101110011110011011011110101110011000100000100010011111111000101010000011101110010010111101111111101101101011010101100011001000100100011011010110110101101110010010110000100011001101001101001011110000111000101111110010011101000--------------------- +101111100100110010100101110001010011000010110101000000111111111110000111001101000001101111111101110000010011011100100111001101100100111001000010010011010000101001001010000000011101001110011011100000110001011110011010000110001000110011100001101010111000001111010101010000110110110011110100001000100111000110111000011000000101001111000000011101110000001111000000101000000110110100000101100011100011111010111110010110000001001100101000000001000001111001001010100011011100010101011010011100001000011101100100001111000111110001011000010111011100011100001110011111100011111010000110101001100011111110010010001111000011100000110000011000111000011100000010011101100011100101111010111011101001111101100100101110010001000000110111001111110010101010001001101000101100100101101010111010110110100110100100010000111111001000111011110100101111010101101010101111111100000010001101100111010001010100110010110010101010110111001111010111111111110111111000011101101111110010110011111001110000001000100001000000100111100011101011101000100101011000011101001110010101000010001100111101001010111010000101010000111010101001100010111001011101111111111111011111001001010011100111111010101010100110110000001100100110111100100001101000100011111001000010111001110001111100000000010000111100000111100010101010011011100011110011001001010001001100101101110100111101110000111000001100110111110001111001000001110010111010011001100001000000000100001101111001101111011010110100101010011000010100000111010000001100011101111101000010000000011001110100110010101011000011001110110010111000111101010100110100010100001111111101100101100001000100111001101010100100001111111011101101111100111111110010000011101011000110110101100001111000101001001111101001111011110111000111100101011001011100011010110000000101001100111010111000111001110110100000110011001111000001110111001001011011101001001001110111110001001110000100101100010011101111001110110111000011000100111100000010110100000110100110101111011001111001000000100101010001000001110000100111110011000100101000000110100100010101010100000011110000110101111101110110010100101000011010011000010011101100110101110000111011110101110011100100010011100101010101001001100101111111011110111110111101110100010101011011100101110111010011111110101101111000100010010101000100110000101111000001001101010110111111011001110101110000100100010001011011101001110111111101010110100101111000001000010001010010111110110010011110011000000011110110101100101011111101100010101001001100100010111010010111011011101010100100110010010110110000000111000101110011010011111101110001001110101011010011100101010101101100001001101011100100001011001--------------------- +001011000101111101101010001011000011101000000101111011100010111111100110000100001110100000011111101010010111001010111000010001001111101111101111110110000100011100111101111000001110101101000010110101010000011110111101101100110111000011000111000001111001100111110011111111000110001101111001001110011001001101101010010101110010101101110101100110111010101011000111110011000111111100110001001000101101001010010111110111110001110111001110100010101111000011010010101011100001110100101010101110011110001000101011101000101001010011101000100011000100011101110001011100100100000100101000111000000100001100001100001110100111001001011010111001111000100111110011101111000011101011110110010101111000010101101010000011001011101001010000011001111101110101100100110101111111011101001101100010100011010001111101110001101101100000111000101000110010010001110010011011110000111101101100011010101100011010100111100100011001101011001101111000110010111111010001011001001001011110000011110001100110101110001100000111011100000110100110111011011000010101000111011010101000010100000000011000010010100001110111111011111000110110110010001101100000101011000111110000001011111000111000101101101110000110000000001011011010011000110101000011011101010100000101010010010101111101100111011100001010001100001100111101001110111110010000111000111000101000111110100011011101000010000010111001011101110111100010010110010100011110011011001010011010101100000000011111110001100010101100111010100001100010101011100100101001100011001011111010101100101110010110111101100100001010101101100010010010101101110011001011111110100011110100000010011100001000010011100000011001110001111110001101010001011111010101111111111011111110000111011001101110100011000010011001010010000100010010001100011110001011111111011001001001101001010001000010010111000011000010111111110101000000011110111101000010100100110111100010011110101000100001111100001110101111000110110100100101001110001001101111110111000001000010010000100010111100000100101111010010101101010001111111101100110000010000100011000010011100100101110100111001100111111111100001000110010000011000100111100001010110111101001101101000000100011001111110101001110101000101011110010010111001000101110110101000000100000010111100100100111011000111011101111000110001000011011000000000111101011001011011010000111100101110110011101101111010001110100110001010000011111011100101011101100110100100001111110011001100100010100000101011101100011100111000100011101011110010001101001100111110100111111110110101110000100110110101000100110000011111011110100010001001000011010110010101001101101111111011101100011110011111101011110001000101110111001--------------------- +010100000111101000000101010000011001110000110010111101000100010010000111111101000110000010100100000110001110111110100010000000111010001010110011011011011111111111111011111111001111000000111101010000001010101110100100010101011001110011001000010011101101001001001010010000100101001110101010000111011010001010000010110100000000101100000001000110100000101110111101000111010111000101100100010101001110001000011011101010010111100100100010010011010010100001100000110110010011001111001100110101011000010010010010010000110110001111011011011000000001111000100010000111001110001101011010000110101111001001001001110011011111110010000010001000000100110010110100110100000011000100001000111111111101111110101001110001100011111111010011010000001000101010000101011001001011011011110011001111110010011011101111010001101101011011100111001111001111000011100101010111111111000001100100100000100010011011010111110011101001100100110001001101100101010110100000011011111000010110010111010000111100011100101001011000001000101110001111011000011110111010100011001011001111010001010111010111011011001001011000111110001111001001101101001101001000110001011111011100101100111110000100010111110010000110011100100101000101111010111010011001001001001110111001110001011100001110000100101110111001011110010100001110110110110011011010010011011000110110101100100111000011101001111100001101010110111110111110100011101011010111100110000100101100100110101111011011010000000111101100100111100001001100111111011000111111110000101010110101010100010110010111000111010101001111001010101010001101110001101111000110000010000011001111101100110100000100100010010111000001010010100011011101100110011010111001110000110100110010010101001001110101000110110010001000100001101110111010110011001110110001101011001100110101010011011001101110110001100101010100110101010000010000111101011011010110100000010000001100010011111000001101110011001100011000000011100101111101111010100100000110110000100111010000100011001111001111001001000001110100001101011011010011000000011001110101110010111000010000010010110100101010000100011001100101111110101110010000110011110111010110110100000110111010010100011010010101111011011000100010000100100010110111000010001000100111011001000001001100100010010011001001100001011101010010000110111110010011010111101011000100010000101100001011101011000011101100100001010101010011010011101110000010101010011100100001011110001011010000000111110110111110111000010100111101100111101001101110111101110010111000111001000100111010101110110111111101110001001010110001000111010100011111110000111100000001101011101011110010100010100000110100100011101010111000100001010--------------------- +000100001010010100101100100010111111010101111100100110010011100111011011101010101000000111010000010011100000101111000011000010100000101101100010001010011001100100111101001010110111100011010111110011101101111001001101000010001010111111001100110000010111111010111011100101101011001101101111110010111001011001011001011001000010111110000010011001111101101010111010111000100000111001100110001111000111001010001001111101101000000111100100110110001010100010101111100101001100010111111101100011001110101010010010010000111111010101101100100000011111011000101111110001110001001010010110001100000110011000010111000111101111010001011100010111001110111100001001110111011111010101101001000101100110100001001111010011110010001100010001110001001000000101101000001000100000101001001001000001001010101111000111110100001111010001110000110010001011011111100111100001100111111101110100000111000111111000000100000011100101000111010110101111110110001111110000000000110111101001111001100011101011100000001011111010001110100110100110001110101001000000111000101001001000110010000000011110101101000100000011100010100100100011100110001101011010100100101111001010100101000101000111111101000011010100111001100011101001001110101110101100100010000010100110001010001110011101101011100001110110111100100101001000100101101000010110110011111111110001111000111111100100110000001011001101100000000100110101111011101011000010111010000100110010011100101110111010100001011100011000011011000011001110111000111110011111000101011110011001111100010100101001011010001001001010110010110011001000000011110001001101110110000000101010000111001110101011001110011001110111111001101001110001101011111001010000111101000001010001001101000110010110011110101011101100100010101111100000000000000110110110101000101001011011001100101111100000011110110111001100000000110001100111111100100110110100101011101111101111100001100100100100001010000101101001111101001100001111111101001110001100000011001000101010111111011111010110111110001001100101000101000111000000101111000100010000000010111110110100100010011111000111001110010001111100011111101001010000000010000001001000100111001001111111011101101000111100010001010111001001100001111100011110111011101111010100101110100000011110110011000011000001011110011100000111110010111011100011100101000010100110011000001010111111111001110000000011000000010000000001000011010011000000001001100101100100101000001100100001101100001000001011011101110010010001110001100110100110111001100011111000000010101100001011011100101110001001101110101101110011100000100011011110101010011010111001011111100110111011101010111100110111010100010010110101010100010--------------------- +001011111110001011011101010011101001101100100001111000000111110001001000000001001010110100111111011101110100110111111111001111011100101100011100101011001010000110010100110101101001011011001011111000010111101010000010010110010001110011111101001011000100011001011011011110111010011110000100100001010011101011001001010001110011101011100101001011011010100011010101011111101111011010110010100011111000111101110111001110011100001111001010101010101101111101001100010101111111111001011110010011101001111110100010111111101000000001010111010011000000111010100100001100100011110101100110000111101111011011011001111100010111110101110100000001111011010000101000100110101111000101101110011100101000101011101010000011010001001101100000011011010011100101100011110101011011100001001011011001000000011111111010101000110011011101010011001010111010100100000001111010001010100000011010110011010011111001010111101110011011101101101111010110001000011001000111100101111000010010011011110100111100100101100011000000111000011001011011011110011110111100110011111110000001000101100000011001111011010011000010010001110001110010011100010100101100101010111110100001000110100100100101010110011111100010000011000010000100011101101110110010101100110001111001111000011101000000111100001000101100110001101100010000101010110000000010001110111100101011011110111101000001110001001010000110110000111100110111110000000101010101101000011000101101001011010001110000001110001101100001000001110100100001001101111100011101101100110111010010011100000111111011011111010010001111000001111111100111000101000011111011010011101010011000100110001010000011000010110001000111000001110011101000011010111110000001111010101010111010000010011001110110011101100101011100001011111001010110000101110011111111011111101010110100010100100011001100110000111010001101110110011010001011011111001100101010101111110010011000110111001111100100110110100111010011111100110110010000111100011010001110100101111110101010011111001011101010110111101011111101011101110010110001111111110111000011011110101101101100110000011010010110000110110000101000110000110100101100110011101110101000110111111100101111011000001111101110010001000110110101101100110100011000010101010101001111011111101110000000111100000000001000001101100111111010110010001110110010010100001100011110110111010100110110111011100110101000001110000000111100000100010010101100001110111101110101010101111100010100101001001110111101001100100010111101101001000110101010111001010010110111000011010010000101101100011011010110100110100100101110101011101110110111111101011111111111111011011110111101000110110011110010101010111101100100011100110--------------------- +110100110000011010110111100011000010010110101110011011101110000001110000001000111000101110000011011011010101110101011111100001100000011001010001000001101011011010010010000101101011101101011111011111010000101110000110100000100101111000101001011100110001101100010000011010101101011010111001011100110110001000000011111100101001110110000100010010011011101101000000011001010100010011010100010110100000111110010111100010111001010001001101011110001010100100011010000110011010101101001111001101100000001010110001110110111100010110100101110001111100111011000010111010101000100010001100100011010111010010010101011010110000101111010101011010110010100110101011000100101111101100010000011100111010100101110000100010011110000010010001100111100110000010111100111011000011111010001101000100111101011110000110100101000000101110001101001011101101101001011000110110101001001011110011001111110110100101011001010100011100000010100101111101111111001101011010100110101010010010001001011001000101000101011100010001000110100110001100100101100001000111101110010010001101100001110000001000110001100110101100011001011011110100011100000001100100001001010000111100101110001001001010011110100010001010100010111011110010001111101111000000100111110100010100010000010010101110100101000010011110001010001011110001101101000011100010000100111110110001000010110010110010010111001110010001110111100010011001000010010010101100011110110010110010000011111100111000010010010000110111011000100000001110000111110010101010100100111001000000110000100101111000100111001001110011100011011101111000001100001000010101001010001100001100010101100010110000111010110001111001110100010010001011110011010101000101001100011011100100101101100100101001011011000010000101001101101010110001111111111010010110110110010110000000110000100000100111110100101110100010000001111000111100010011000000111110000011011011111011111000101000001101110000101011000001011000011011100001100010111101101111000010111110000100100100100100110010110001011111011101011011011000010100110011011101100110001101101010001001011001011100000111100100001110000110011000001011111011001010011110110101101100011010000010001011111100001111001010010110001100011110010101111100101001010011001000101100000011100010001100010111010111110001111001001111000100010100010111110110001100111001110100000010110010000111111011111110011001000011000001110101100101000001100000100101110011100111100110111101111011100100000100011101000100101101011011111011011000010011010011100101001110110011100100110011011010010101011100101010100110000001001010100000001011111010011010011011001101101111101111100000110000010111101110111011011000101--------------------- +ls120cwds +110001101100101000001010011111111111110010101000101001100010100000011111110001010011011111000001011110110110101001001011101111010100011101000100101111110111011011011000101011100010110111101111111010111000010101101100001100100011000111101011100110010110110101011010100111010011110000101110100011101011101100110110000011101111110011001110000001001110101001010010101100100101110111001110011011010100001011010101011010110001011101110100001100010101000101010101000101000101011101001100010010111100010111010101010101010010001011011100100111101100100110001101100110110010100101110101010011000000010010111010011110010011000100111100001001110100100111111111111100011000111111000010100010100111011011011010101001010111000110101011001010000111000010100010100101010101110100010111001010000101111111110001001011000101110110110111101010011110010101010101001100111101110001111000111010101100001000110011110111010001011010000100011101000100001010100111111111100001000000000111000011010111100011101001000000011000001100110100101101111001011000111110100011010101111010100000111001101110000110001101100001010100111000001010010100010100111100000010000000101110010101000100010010001110111011110000111010010101000111111110001111000011111101111100111100001011011100001111001110011001001101010101000110111110101010111001110100101000111101101101000101000010111000010001111101100101001110110011100100111011101011010100110011101011001001001100110100110101101101111001111101000110010010000111011000111001100000011000011110100000001101111111110110010100010111001000010101000010010100001111010000100011010010010000100010000011011001001101101011010101010001100000111000010100100010100001011111001101101000110100011101110110000011011110100100011110101000100101101100110010000110100011000101100101001101101110100001011001101001010010001011000000000111100101100010011000010110010111100100010100010110100000101001011101011001000100000101011010001011010110001000111010111110011000111010001000100000101100111011000111011100101101001111111100111010111111000101001100001010000011000000110110000100110001000110111110000001110100111111111010000010100110010011100001111010000100001101011001111111000100000010000011010100000101111100101110011100110011001000111100000000000000001101000010010010101010100000001111011001011111001001011101111101010001111011110000011011000110000001010001011010010010000111000011011101100110110---------------------011000010010100010010101100001011011100000010011010100001100101110000101000001011001110100101100100011111001101000110000011010001100011001010000000110110110000010101110100101000100101011101000000101001100010010101110110010001001110001011111010001100001110001010101100000101100100011100111000011011101010011010001100001011011101011001010111001101100001010101111000001001101111011101010011001011101111011010010000100100011101011110100000111001001100000101101100011110001100101000110111111011001110000100000100101111000100100111010111011110001001010100011011010101100011000101011101110111001011100101101000100011001000001011100011000011100001111001010101100001101000001110001111110101111000101101101100001110100001000010011010110000011110010110101110110111111100101001111011111110010100001010000001100110000010111000011100010101011101101111011100100011100001001011000000101011001010001101000010101110010100100101110011000100110010000011101101010011101100100011001110001100101110111111110001000011000110010001010010110100001101010011101110011111110001101011001001011010101110101011111011111001010001000000111000101101110001010100011011111100100000111000001110001101100101010110100011100000011101010000000101010111000010111010000101011111011011111100100101011100011011010011000011101101100000001011100000011000100011000010000001001110101000101001110001000001011000000101100011110000000001010011101011010000111101111010001011011010000100000011100101011000011010001101110111000100111111111111110010000010101110110111011100010000011010100010010111000110011000110101011000000100111010011000110101110100011100000001010101010000100100011010111101001010010101101110110101010101111111101111100000100011010010000011010011100111101000110000110101101100000001110110011001001001101111101110101110001100010011001100000101100011001001011011110010001111100100001111111110111000011111100000000101101100110111111001000001111001010010111010000100011110111010010101101111100001110110011011011110101111001010101010000001111001000110010101111011010100011000100010000101101100111101101000110001100000000001111101010011010100001101010100001001011111000011111111001110100011010110010010111110010001110111011011000111101100110000101000101011110111111010110101100100011110011010000011110101001101111000101011101010111000011100111110010111011010101010011011011101010111100111111110101011001101001011110001101110100001000100001110100001011010101000100001001011000010111110011010101010111100001110100001001100110100110111011011001000000101100010000010100100100010001101110110100000100100110010100010101010110011100100000001101101011111111101011100011001010111010100101011010010010000100111010101011100000110011011011100011010000101110101101010011010100010101010001000011010000110111001101001111111100000110100000000100001000011111101101100100010111000001111110010110011010000110011011000010010100011100011111110111110011001100101100011101110111100011000000100101010110100011111000001110101111000010100001111010000111000100011111000001101000111100100101000111110001111100011101110111000110100011110110001010111101001011100111101011011111000011000110101011000100010100000110111110110001110101011111101010111100000110001010000001100001100110111001001110110011100010001011101001011000011000010101000010010101101010000110111011100011101001000010010001101001000001100000001100110111000101101110001000010001101101110000001101101100000011000110111001110110111001100010011011100010110000100011001010011100100110100001001101110110001100011111111101111001010011010100001110011100000110100011001011000111100100100010000011101000101100111001100100011101010011111000101010100110100000010000011100110111111110111001110111110100100000010100100101011111010011000100011011100001010011000110101111110011110000100001000010010000000010010100100001101011101110001110100111110100000100110000001110010100111100111011011001010011101000000100010001101011010100011011111001001100000110110011010101100000000100001101011101110000011110110001100010001110011110011100100111101001010111000110001011011111000101100111110100000100101111001010000110111111001110001011010110100001100011001100111100100011010110010101011110111111111101101101100110110101011001001110000100101010001110010111001111011100100111110001010110000111011001000011111010111011000011010010110100010011101010110010100110001111011001010001010111001110010010100110010010101100101111011101010011000111111101111010010001001110101001100001100100100100101010101111010110110101011100001110110000101111001010101011100110100110000111000001011000011110100111010010001000101011010101011100101010111110001000111101010101010001000101000000101101000001111001101111111110100100111011111110110110110100011000011011101101001100000101001011110000010010011111101101110100010010101010001111110010011010001101011101101110010011101000100100110110001001010011011000111101110000101110001011111111001101010100011000101110000011001101010111001001011000010101110110111011001010010001011011000001110100010000011111011100100000011101000101111001101100011001011101001100011100011110110001000010001111011000101101110110100000001001101000011000110000110011000010100000001110100011011000011110001101000010011111100110010001000100001010111111100011011011111110011101001001100011010111000011110110101100100101001110110111101001100011110100111100011001001011100010011111111001110001010110111100110001100100010011011010001111110110011001010011110010000010111011010110000110010101001000100100100100001001101110011001111111100001011001110110010101100001101110 +010010110011101011100000100010111011010100100101101010111000000001011001110001010000110010011001110001110110001011101011001110000100010110001100010110110100111111100011011101111110111101101001011111111010111011111110100010101001110110111101111010100000110111001011011001101111110001011000101000111101110000110001000001100010000110101101110101000110110001000101110001011111000100001000010111101010000001010111111001111111101000101001100011001010010000001011100000100100101000001111111111010011111100010110011010010011011111001111011011000100010000011011111010011010000001011011001000101101110011111101101100010101110001001011010111100100011000100000011101100111010110101111011001001010101110010111110110001010110010111000001100101001100100110011100010100011110110001110000110011001001011011110011101110100101011001000001110001011101110101010100111100011000001011101111111011010101010111010001011111011101011011001011100101011111010110000100110000010011000111000001010111011100111100101000111100100111101101011011010110100111111001101101111010101010000011001011110111110011111100001101100110110010011101011111101101101000001000111111111000000001010111000110010001110111110001100001011001110001010001100000001101000111100110111000010100110110100001110110010000000011100010100000101010100100010000111011111111110011001011100010111010100111111000011100111100110111101100000011100011010011101001011010111100011110110111101000001011000110011010100110011011110000010101101011111101100000100110111010001000010001010000111111001100101111100111111001111101010101110111001011110111110010111011011001110110100101000111101010100001000011100001111110110000110100001000001001011011001000110001101101001110001101010011110101010111001101000000001001110111001011110010010011000000111110010010011111010101010001001011101100010100011101111111000001000011011011010001001101110001001100110101101010100011111011101100010110001100101000011001100001001011001010111001001100111110010011110010010100010011001100001101110010010101111101101101000001101111011111101000000101011110101100010110010000100010110000100101010101000110000011011110011000010111111110011110110000010000111010010101011101000110101110111111010010001010101100101011100001111011110001001100000000010111011000101111010010000001100001001010110110110100001110000000010100101000111111101111010010010000111111111101000001111111100100110101000001---------------------011111000110101000010111001100100011010011100000100110111111001110100011011100010111001000111111011011000100110000011110100001000111001001100110110111011101111100001011000111110010111011010001010000101111001010010101101110110110000000110000010001100100011111000110101101100100111110101010111110001011001011101010110011101010100110101001110101001110010101111100010001100010111011111000000011000011011101000010010001110100100010101001101001000111100101011100100111101100010111110010110011011111111100000101000100001010011100111010100110010000011011000001011000010111000101100001111100100111010101110110100010100000111110010010010110111011010110011110000001111101001100010110100001000010011001011101111000011110010101111110111001010101110010010100101001000111110101010000001000110000110111011101101110110000011011100011001011101110010111110110011000101001010110001001001100011111101101110001011010011111010110000000101111001011011001001110101111110110001110001101101101011010001110001111110100100110000100000001011111110111001011111000111110000000010010101111000010000100111011011110111000101000010110111011101101000001110010011110011100010011011010110110010101100100100000101111010100101111010010010110100110001101001011010011001001010110011010110001111011111010111101011011111010110101000100100101000000111011010100110111111011111101001001101111010111001100110100011111011100100011011011110011101010000000000100110111000010011101110111010011111011011011010100011010111101111100100101000111011101001001000000111010001101101100100111101011110001100011000010100110010111110101100011010111000101101110110011100110010001101010011101101001001101111001110001100010110000010001011010010001101000101011111011000110111010101110011010011101001110100000110110100011111111011001111100011100111011011110011011001011101100011000010010100111100001101000010010100001010100111100100101110010101101111111100011101011101000101010011110010010101010011101001110010001000100001111000001111101000100101000110100110101010111000111100101001011100110101001000000001101010100100101100001001001100000111001110001100101100010001111010101100110010001101101001111001111111110011101001000110010010000000001010100111001100101110010000011001010101111011011000000000000011100110100110110001110110010111000100101011010111100000101101111011111110101101011010001110010010110100001001101010011001110011100101001101001001010100001001001111010111101100101111011001110101001001010110011000001110101011110001101111010111010001010101000000000011000100011111100100100000110111101001000011001011110000100101010001001111101010010111100101101100001000110110101111111011100101111111000001011110101011010100011000110001010101011001011100111000101001111010001111111101011101010010011001011011110100100011001010001011001001010001011110111101000011011010011010111110101100101000110110111100101101000011001011000011011100001001010111001101010000001011011100101111000011010101010110111110000101110100001111100001110000110101110000111110000101001000000001000110110100111000000110000100010000111101001100001111000010010001010001111000100101011110001000101001111010000011000111110100101110110001100011100110011001111111011110101111111000000101111100100101011111101000000011110001101010001000001010111000011010101011001110001011111000110110001010100100111100010111101110001100100010111111111100010011001101110000101111010011110111001101011011010110111100101000100100001010001011001010010011010000101110111100001100001100100010101001011010010011100100101001100100100110010000110011010111010111110001110111001100100010011011101101100001111010100100100101100011111110101011100001011110011101110010010111110001001101000011000100010100100110110001001010100111110100010000101011110100001011111111010010011010011110101111101011100101000001101110011101010000101000000110111101011110100100010001111010101101011111000100001100011111011101001100111101110110111011000100010010011111010010101100111010001000011111111100001011110111000110110110001110101110111011100111000111000000110110100101100110110001001101001011111010100111100100001100100100001110111101011100100101001011100111010000100010010000101010110101101000101101010100011110011010101101001111011101111001110000110101011010110000100011000111100111001001111001100101100011110101101001001011001110111011101110000000101100001110110111100100111011010011101011000000000010110101001010001101101101111011000001001101010010111000001010111001100101111010110011101110110110110101001000011001110111101110100001110001000011000100011100111000110111101110101011011010010011111111011101110100011011001100011000110001001110010100101101010101001011011011111100110111100010011100010100100110001100010100100001010000101100010000111111100111000010110100011011100011111001101000101001100000001010010010111000000011000100001010110001010000000110110111001101011010011011000010111110010010100010011001010110001010100100110000101101111010000001111111010101110001100001001101101000000000011101000001110000011111011001111110110011011101011010011100010011010011001011111010010111110010001011011011011111000001111101001000001111001111011110100111101111000001110111010010011001000110110110101110111001110110011101000111100001111010110111000011010110001011011111001000000100100000100111011011001000011100010011101001111011000001101100110011101110010010011010010101011000001010110001011100010001101110010011010010010100100011101010110100010010001000111010010100100010001111010011101010010101100011000111100100100001101011000011111101111010001101001110001110111011100 +110010000100101001111010011101011001011010010110010101111010000001000110001110001100101100000011010110101100000100011110001111101011010100100110110010011011000010110101011001100001000000001101011101111000011100110001001101010110100101110000011010111001001100001011111101001100100110100110011110011111001001100101110100000010111100011101111100100110010011111101110101111110100010011000111111001110011000011011100000001101100100110000011011011010110011010010111010010001011010101101110101110110001001100111011101111101000111000011001001011110000100001111001011010010101110011111011100011000111110100010011101110111000001000010101101111101110011011000000010001010011111111000100111100000101001010001101100000011000010001110101010101010001111011011011001111000111101111100011110000100100010110010100110001000100010001001100011010001011111100000100110011000010000110101111110100100011100110100110110011101100011000001010101100001101010000100001101110100111100001111100001010001000000100011001111011111110101111011001111110011011011011000101000000110110110110001011011110001001000011100100000000001011101111101011010111101001101111110010000000110010001111111101001010101110010010000101001111001011010001010100001101101111100100110111000001100100101101010101111010111110110111001111111001011100101010100010110010001000111100100111101110000100010011010000000011101001101001001110101101101110100001110100010011000110010000001000101001011110100100011110100101101000000101001111000110111101001110010010110101010101101111101110100111011100110011010011110110000001110110110011111101000100110111100110111011001110100101100110100111100110000001110100101111000111101111001000110111001111110101001101001101000101011010100101000101100011100110011010111010110011100000001110001001000111111111100101001010110011001100100001110101001010010101010010101010011111110011101010010111001011000111001111001001010100101000110010111110110000100001110101001110011110011000010011001011010000110110100100000011001100101001110111011000011110110101000110110000011110011110000010101111001101000010010110101010011111001100110000101011100110010011010010100001101011101000000000010111111011011000111110011100001011100011100001000011001100001110100011001111000001011011101100111111110111101100100100110000100010010011111000001110010000001101111110111000111100101000001000100111111111101000100111001010110110001100001010---------------------010111001000110001111101100101000110000110001011111011110111001010110000000110001100011010000100011100101011111101110111111110011011110100001000100111111101001010100101101110110110000000001101000111101110010111100011100011001011100101001101101010101011111010001000100010101100111010111000001100111100010011111110110110001010011101011110111111101110100011010110010101100011100001011100111110010111000010101001000101011111001101000100100001111001100110101100111100011101111111010000000001110010100110000100011100000010001100110111011110010100101100001001110011000000101010010100100000100111111101101110011101001011010101110000111010010001111001101111010101001001110101000110011101001110101100110011001100111011101001011101110011110101111111001100111110000001000001110110001111010010101110001011001100100001011100111100001100011011001110011100111001010100001110001100100011010001000110010111111011100010000001011111100001111000110101011111110101011010001111110111011110011010101000110011110111110010001101101000100110110000100000001101100010111010010010110101111110001100000001011011111111001101101100111111100001011000000100010100001100011110010000101011011000000001101110011001101111101110011000000100110001000011001010011010010100100001010001001001110111000001110001010001111000001101001100000111010100101110100111010110111011010000100000111001100011100011111111000101011111000000111101000101001000111110100101111011000011100000111011000011010110100110111000110101100111100101000111110000001010110101010100100001011100101001001010100100100101000101011101100111010011010000011111011011101111101101110011101101111100000101100111010011010010000101110100000101101100101111110001100100001001010111010110001000111111010111101010011000101110101100001101111001000111011001011110101101100000001001100110111010101101101000111111100001001000001100011001111111001101011111111111000100100101101010110000000110101111011001011110011100110010100100100011010101011000101011011101111011111110110001111010001110110110010010100110010101001100011101101010111111001101101001111100111110011011011000000001011110100001101101001111001000010011101010101101110111101011011101011000000100011001111000000010111100011001100000010010000011000111001111000111001100010010110111000011010010011100010010101101111011000100001010010111101110001011000001000011010000110100110111111100111101101110011101100000110101000001001100101111000000100000010000101110101000000100111111100110111110011101001101101110011110011100010011101001111010010011101010011001111111101001101110001110000011100011010011011001101010100010111110101000101011100101100010101011010111000001010111010101001100111101100011001101111010011110010010110100101010001111010000011010011110001010011000110001111110011001011000000111001010000111010101111001011110011000100100001011101000100100010010011101010101001000001001110000000010111001110100111010111101001101010000011110111111110011110100110111000010000011000100110001001011011110000000011101100011100101101110100101110100001010100011000001101011101000101000000111011100111110001000100010011010100000010111111011111000100111100101011010100101000111110001001100101000110011100100000110100001000000011110000100100100001100110001111110011001000011111001000111011000100011010010111101100110000110001101111111101100010111101010001100101011100101100000010000111001101011000001010101001100010011101111110110110011100001010000001011011010000000101110100001010000010010000110011010010000000101111111011010101001011000000001010010010001011011101101111011101110100100101110101011010100000110100001000101111101010000101001011110111000010011010100110111010101111010101000000100100101100001011000011000000100101011000000010111111001011011010110101010101101101010101100101010111110001111000100110100000101000101111100000001000110101111100011111000011011110000001110111000001010111010010101000011101101000111110111100000100011010100010001100100000010100000001001100001101000011101101000111010011001011010110001111001001000011100011100001001010000100101010010010100010110111110001010001100101001000101011101000100011011001011100100000110110011011111100100111110011011100100000100111111100010111000110100011100101011001111000100001010001011011111000000011010000011110110001010100111100000100001010010001110011000101100000001010001010110010000011001010101001100100111110000110101110010101000000010101000101001010000001010010000000000010100011101001011110000001001011011011000110110001100011011111111011111111110110100000110000011101100000101101101100001001011010110100100111110101001000100110100101110010011011111110011101010010110110010011000011101100111110010111011000100000010000100101100101011000000100001111111101000011000010001100010101100100001110000000110100011100101101010010000011011101110100001111001010111111100010110001101000111111000101101001001100110001001100000011001101000010110000011101111101010111010111011001111100000001110100011100110110101100111100011110110110100001110110011101101110110111101010011001100011110010101111110111010011010000001010110010111101001111001101100010110100000101001001101110110011010110101010101101000111011001111000111101001110111100101000110000001101101101110000001100001111111010001010110101001001011011111110011000000001001111000110111010110111111010100111111111100100000110010011001010010100111101100111111000001000100110101000010110010101011010010001111001101011110101111110101011111101111010010100000100111011111000000011010110110001101010101001001000010101000111110111101001110111111001100001010110100001100 +001001101100001110011111100101101110101000100010100100001011001110100010111111110101001010111010001001011000000101111110010010100001100101100111111110101011001111011110010101001000100101110111101110100100001100110011010000100011100000001110000101101110111100000111101000000001101011001111110000000110011110110111111011010000011101100100101101101001000000110110111111110000110010100000000110000011111011101100100110101011010000000001011110011100010001100111100101011001101100100010111010110011011011111001000000001101100101110011111011001111101011111011000110010101001110111010000111010010110011001010000000100111111100000110111110000010001000010110001101111110000110100000101111011111100110001111101100100110111111100111110011010000111010110111101011110101010101000110110111110011110001010100101110011100110000000111100111111110011010101111000101110000111111101011001100011000010010000100110110010100111100010010000100100011111001001011001110000001011001010100110101010101111110110010101110100000110110010000110110110010001011111011101111000000001000111001001100010100111000111001100100111111011010011011000110000110110110100111101111100100001010101100110011101001010100111100101000011110010000010001000101010101000100110110010010100011100000111010011011010111011111110001000100100100000001110000100011000100101110100000010111101111010110100110110011100110010011010110110010110100111110100000100111101000111010001001110101111000000100100111001100000110010010101010101000001110010011101000100101010011010110010010101100100010001111011011001011000001001011100101111011111001010010101000110011010001011010011110010000111101010001010110000011101101011111111100011011110101011001000100000011010101001111110110000100011010001000101110100111110001010001011100001010010001101000111101110001000101110000000001000010111011010110001011100001011100101001110000000010110111100011100101000011001111000000100100110100010000110101001001100010010111111000100000111111000110000111111000100010101010010110111101010000100001000100000101000011101010001111011000000100011010100001011110111111100000000110001111000011000111100101001001000100110100110011100000100111111000101111101110011110011011011110101110011000100000100010011111111000101010000011101110010010111101111111101101101011010101100011001000100100011011010110110101101110010010110000100011001101001101001011110000111000101111110010011101000---------------------100001110000011011010000101101111101011100000101100010001111010010010011100101011010010010001101101101111001100000110100011010001100000000111001111001011100011011110100011000011110100110000101111100000001111001110111000101010010000011110100111101111110110011111010011100000010111011001100010011000111110111101110010110111011101001001101010000000101001111011101001111100000110100110010001001100010011100100000001001010011001000011101101101011001010111000001010001011111111010001110110001101011101001111000101001010001110010111000110000011001011011000110110011110001001001110110010010000100000100100100111011110100000101111101000100111001110111011110000101110010111101111010111000001010011111110100101110001111001110101110000001011001001111100110100111101010000101010000000101100000011011111000001110001000111110110101111001010101011010111011101011100001101111110101000101110101010001010110011110110000001010010011101101010001010111110001111101010100011011111010100111100011111001110100000000010010100010011111100101111010100111001000011011110100111001101101000010101110001110110000111010101111100000111000011010111011000000111101010100110000110001000011000101101001110100100001101110001111101100111010111010111101100010011000001000110101010000000010001011111011011111011101100001011000010001000100011111100111100100000010010011110001110010010101110000001011101010101110100110000101001110010100111011000100011111100000100011100011111000011001101101010100110110100100111111001101101010110110100101000000010100110110111110000111101100100001000111100001110110010011110011111011010001011010001111110001101001101011110000011010001100101110010110011110111011011011010010000000111110101100010001000110011101011110100110100111110101101001001001000100011101110101111001000011011000100101101110101000011100000010001001101011001110000110111010100011001111101100011001010111101100000101110010001110101011001100000011000110011011110111000100011111000011010011110100010100111011100111111011000000000111100001101000100110101011101111001101101010100000010001011011110000110110111101100001011111100001000011000010100011101111011010001110000001010101010010011110111110111011111110000001001101000111101001100010111110100010011110100000101101100100110010110000111000110010100110110111001010001110001110001111001100100100101001100110111001001010001011010110100010010111001110001100101001101101010010111111010111010101011000101111100111000100001010101001101101010110101100001110100010001101010011111111110101010100101010000110001101011001011011011010011101100011101100100000111110110011110010011011111001101001010101101011010010010010100100100000011110110000010101110000111011000011000110000001110110011010101010010000111011000001001100110101000111011101111111011101111100110010000011000101100010110000001111010011101000111001001011111001100101011100011010101011101001011111001010001010110001100110010110100011010000100000101110110001000110111001110001011111100111010100100000001000100001101011010101100011000010110001111010101100010001000011010110010100011100011001110101000110000101110101100000110100010101100001111001011101100101110101101000110110100011010101001010101001101100010110001001100100101100000010100001101011010011001100011110111000100011010010000010001000101001101001011100000011110010011000110100110110000110101011011000110111000011001000101000011111000010111100011111010110100001110011001001110001001010011001101101100101111001011110001111100111001001110110100011101101101110011111001111101101000000100100100000001011000100100010110010010111010100101010100000011110011000101011110001011100110111101110001110001100001111010011100101100101010110010110100011110111101101110011101111100101011010001010001110110010011101110010111000010111000101110111010001110011111010010110110101111100110110110110100110010110011001010101111101101010011001010100000001001001001001001000100110111011101011110110011010001100010101100000001000011011110100110011011111100010101100111011111010100100010101100100010111110011000011110000111101101101000101110110101010110010010001111001100101101011111000000011000000111000111000110101101000001010010101111100011110000001000111001000100011110100100100100110100101000011100000001110010111100101011011000101101011111011100100000111011000101101010001011001111011100010110001001010010100000010011111101011110001000110110011011001111111011001111011101000111101111000110110000100101110101010111111100110110001000001010110011101110110100011010100100110000001110011010110000100011000011000000010100101101110101101001011111111101111111000111011111100100010001110110010110011111101001100011111011000010000100110100000101010010101001111011100000011110100101101110011000010100110111001000001100000010011101111111100111101101100110100110011011100011101011100000111101100000000000010011011100110100101010110110000000011000001000001101101011101100010001010011010100101111100110001111011010010110011010100011111110100011010100010010001011011101000010000100011011010011010001111001100000111010100101110010001011000100001001001110101100111011110010001100011001100101010011111110001100011101001010111110110000101111111100111111010011111100100110011010110011101111101011010111100110101100101011110111110110100101001100010000111110010110100100010110000010000101000000101110101101000111000101010001010010010110000100001000100111010010010011010111110011111101101101110110100110111001110111001101011000010100110111011101100000011010110011010111001010110100001011011011110100110101011101100110100000110100111010001010110101110100101 +101010111000001111010101010000110110110011110100001000100111000110111000011000000101001111000000011101110000001111000000101000000110110100000101100011100011111010111110010110000001001100101000000001000001111001001010100011011100010101011010011100001000011101100100001111000111110001011000010111011100011100001110011111100011111010000110101001100011111110010010001111000011100000110000011000111000011100000010011101100011100101111010111011101001111101100100101110010001000000110111001111110010101010001001101000101100100101101010111010110110100110100100010000111111001000111011110100101111010101101010101111111100000010001101100111010001010100110010110010101010110111001111010111111111110111111000011101101111110010110011111001110000001000100001000000100111100011101011101000100101011000011101001110010101000010001100111101001010111010000101010000111010101001100010111001011101111111111111011111001001010011100111111010101010100110110000001100100110111100100001101000100011111001000010111001110001111100000000010000111100000111100010101010011011100011110011001001010001001100101101110100111101110000111000001100110111110001111001000001110010111010011001100001000000000100001101111001101111011010110100101010011000010100000111010000001100011101111101000010000000011001110100110010101011000011001110110010111000111101010100110100010100001111111101100101100001000100111001101010100100001111111011101101111100111111110010000011101011000110110101100001111000101001001111101001111011110111000111100101011001011100011010110000000101001100111010111000111001110110100000110011001111000001110111001001011011101001001001110111110001001110000100101100010011101111001110110111000011000100111100000010110100000110100110101111011001111001000000100101010001000001110000100111110011000100101000000110100100010101010100000011110000110101111101110110010100101000011010011000010011101100110101110000111011110101110011100100010011100101010101001001100101111111011110111110111101110100010101011011100101110111010011111110101101111000100010010101000100110000101111000001001101010110111111011001110101110000100100010001011011101001110111111101010110100101111000001000010001010010111110110010011110011000000011110110101100101011111101100010101001001100100010111010010111011011101010100100110010010110110000000111000101110011010011111101110001001110101011010011100101010101101100001001101011100100001011001---------------------001111101000110111001110110011001000001101011001011011011011010110111100101010111110101111001101001010011101000000011001011001110010000110111000000101011101110001100100000001111001001011110000011110001010011001011100110010111100011101110001101010010110000000111100011010101010001100001010010110011011110000011100100101110011100101001101100100011000001110010000100101100111101111011000010011000100010011010001100001111011011001101011010011001000011001101010110001010000111111100010010101111111000001111100111101000111001101000101001101011101011000011110111101011100101110101100011010010001101101000011110101101010010110100001111101100011111110000000011100110100011110001011010001000110101100110101001100100000110111101000110001010010110110010110001110001010101000001010000100101010011111101111101000111011110011111100110010110101001110001100011110010010001101010101111110001000011010110111101001100110000010110011000110100110001111101011101110000011100000011100111010011011000100111110011011111100010100110101010110011011001110101001011011011010010011101011001111101110010111111101001110111110110100010001000110111010000011111110010000011101110100101111011010111010000101011100110100001001000001000000000010101110100010001100010001001111111110001010101000001000011010111011011100001010101000011000000111110000011101100010111110110000100000111110100111010100010001011100101000000010101100101010100101100101001111111011001111100110011101111010001111100000111011110010000001000010110101000110111010001011010100011101101110111110101110001010000000011100101010101001001011000010001111001001111110011111101011111011101011101111111001000100101011111111100111000011110111001010000110100001111000000010111000000100001111000010001110101111001011100111010011100011011101010000000101110000111000110111010111011011111110110110001111101001111100110001110010001101010000111000001000110110010101100011100000110110110111101000110111110010101011101110001111110000000000010010010100010100101001011110010011100100000001011010100010110110001000110101100001001010010001100010000011101100111010001110000010100010010011011100000001111011011100100010111101011001101110010010100110101111100001011000101000000000110110001101000110101001101010110011011111000110111011101101001010001100111011110110110011110000101101001100100101000011001000111101111010100101101101101010011111111101010001110110101101000110100100010100010100111111001110100111001010100111110001001110010111110000011010100000100100001011101100110100011000001010011100111101010111101100111110101110001111000101010100110101101001100100110110010110001011100101000110000101110000010011010011000000011100010101101100100100101000111011000100110010011101000111011110000101101010000000000100001010011100101010010110001111111000000101001011011011101001101100111110001011111101111011110111010010011111101101000101101100011110000110010111111010100001101010101011110110101001011110001100011111000010000101001010010011000111101100001001111011110110010011111000000100010001101101101110110011111110011111100111010011101111001110010010101010100010011001000110000000111011100100101010001111100000001111011111011111111100001000100100011011110100011101101110010101110010111000001111101011000100000111100011000011101101010010001011100100011101011101000010000001011101111110100001011100000010000111001000111001001111010011001011110111100001110010101110100100011100011010100110001100101101001111011000010000110110111000100011011110111000001010011110101011010100000101000100101001011101100111010101100100110010101001011000001100010010000111001000111010000110111110110001100111000101000010100011001110001000111010001100001000111000011101100000101101011010010110001101000100110101001111110000111010011101010101100000000111111001011111001011001100001001111001001101100011011101101110011001011101000101001101110111001011011001100010111111001101011001101000001010010100010010110010100011011101000011101001111111101110110010010101000111111101001000011010000111000011110111010000110111110110001001100010010100111111010011010111001000110000111111010100101101001001110001000011011001111100110101000111000111010011011101100011000110111100100111010100110001000101001011111101110101111100111111111001101101100111110101011110001001010111100001110100110001010000111001101101010010110010011010000000100100101110000000100000100110111110000101011011001000101101001011011010010111010100101111101100001010101100101000111100010001010010100100010111101010111111001111010110010001110111110010011100111000010100011101011101100000110100011010001111000111011100000011001010010101000010000010000001110100001110100000101110011001100010000010110001111011010011000111101011110111111010010110110010000110001111100100100110101100111101111001111101100111011011111100011111011101100110000000101100110111011001001000100011111000010000111000110111100111001101011010100001111011001101000101000110001001001110010000000011011110000110101101110111110110000001101000111100111111001100001100001010110011011010000001011011100100100000100111000010101110010100000000100011011100010100100101110000101000110001001010100011100000000110001100010111000010001010110111011000110110111101000000011111001000000101000101100010001100100111001011011000001101101010100010011110110000101100010111010000001110010111111111101101101011101101101011000000001001111010110100100100000001110110111101111010111111101110001001011000111010000011100001100111011010110110100111001001101111011111100011011100111011101000110000101010000001011111001101101110101011101110100011001000 +000001111001100111110011111111000110001101111001001110011001001101101010010101110010101101110101100110111010101011000111110011000111111100110001001000101101001010010111110111110001110111001110100010101111000011010010101011100001110100101010101110011110001000101011101000101001010011101000100011000100011101110001011100100100000100101000111000000100001100001100001110100111001001011010111001111000100111110011101111000011101011110110010101111000010101101010000011001011101001010000011001111101110101100100110101111111011101001101100010100011010001111101110001101101100000111000101000110010010001110010011011110000111101101100011010101100011010100111100100011001101011001101111000110010111111010001011001001001011110000011110001100110101110001100000111011100000110100110111011011000010101000111011010101000010100000000011000010010100001110111111011111000110110110010001101100000101011000111110000001011111000111000101101101110000110000000001011011010011000110101000011011101010100000101010010010101111101100111011100001010001100001100111101001110111110010000111000111000101000111110100011011101000010000010111001011101110111100010010110010100011110011011001010011010101100000000011111110001100010101100111010100001100010101011100100101001100011001011111010101100101110010110111101100100001010101101100010010010101101110011001011111110100011110100000010011100001000010011100000011001110001111110001101010001011111010101111111111011111110000111011001101110100011000010011001010010000100010010001100011110001011111111011001001001101001010001000010010111000011000010111111110101000000011110111101000010100100110111100010011110101000100001111100001110101111000110110100100101001110001001101111110111000001000010010000100010111100000100101111010010101101010001111111101100110000010000100011000010011100100101110100111001100111111111100001000110010000011000100111100001010110111101001101101000000100011001111110101001110101000101011110010010111001000101110110101000000100000010111100100100111011000111011101111000110001000011011000000000111101011001011011010000111100101110110011101101111010001110100110001010000011111011100101011101100110100100001111110011001100100010100000101011101100011100111000100011101011110010001101001100111110100111111110110101110000100110110101000100110000011111011110100010001001000011010110010101001101101111111011101100011110011111101011110001000101110111001---------------------000111000101011001010110100111110011100111001011110111010110101000011111000001000010101000110010111011010110110110010011111111001100000001111010100010010100111111110111110010100111000101110000011101110101000000011101110010100110100000100110001000100010110101110010000101100001110011111001000100111101101010011011110111101110010100101011000101110011011101100010010101000100000000101100100100110101010010111011001010010001010000011001010100111100110001001101110000110011000001011001000010111000101101101110001001011000111010101101110001101110111001100110100001010010101101100000000100110100011000010010000010101101111100010011100010100110100101001111110111110010100010111010100101010111110111101010111011100010111000011011100000001010000111111010010010000001110101001101001100101111111000011010111100100001111101011111000001000111010010010001010110011000110111000000101111000010001011100010010000101011111110001010101110011010011101100001001101010111000001011111101000101101100100001111110110000011010110001101001011100011110000101000001111110011001101110111001000001110111111001000101000001110111100010111000010011100010100001100001001100011111000000101100000010011011011111111111111001110110100011111111000101001101101100000101110111111001101001001011101110110001011101101100010011001100100111111111011000111100100000001101110100001001101001010001011101011010100100010101101101010011011111111101011011101000010110001000111011110001000111000100101111010010001110001010010011101001100010010100001010010011101100101100110010110000100010000000000010010010100110101011111011100001000111010111001110101101001011000110011010000010001001010101010001100110001001111110001110101100000011011010111101001011110101010111111011111101000111111101001100110100101010000110011111101000011001101101111011101101100011100100100100011001001011111011000000010101000011000001111010000010110010111001011010111011000101101101001100101110001101011001100100100000101110011101111100000101001001010100101010010000000011101100000000011111101010111111101100011000001111000001111011001010011111101001101101010100010110001010111100010101010100011001101010111011011010101110101111011010001101100100001001110111101011101100011000000101101011101110101111011111110110001010101001100000100010100101100001110010101011011010111100000001000001101001110111110010010101101110011100101011101100111000110101011100101100000110010001110100001000100000100001010110010101111111110010111001001100101001001111110111101001010101101100100101111011000010011100110001100011011011000001101101111110111000110000000110111011100001010001101011110111001110111110110010001010110100110111001111111111010000000011101100000011000110100111001110110010000111101110100110101000101100001011110001001001011111011100111000100000010010011101100100011100001111001000101110100101101001111100000101001010000100101000001011011001000100101011011000010101001110111001110111011101111101101111000011000100101101010111110001011011101100101001110101010100101011110110011100001001010011111000100100011000011110010010000000100111011110111101100010100101110111010010010010100110100111101010111100110010110101100010010111001011001001100101000110010100110011101100011101111101011110011101010001011110110100000011101111100100110000110010110001010001110101111010011101011011011111100010110101011111001100111110101100101100111100100110100010001001111100010010010011111101010100101110101100100110000111010000101100001010101101001000000010001111101010100010111000011111100001000000011000111110001010110111001000100101010101100010111111111000111011001011111100011011000011010110101010000100010100001101011101111100011110110100010101010101100101000101110010100110100010101010000011110110001100101001001101110010011010000100100000101001111010000100110100001110001000100010111011011101100010010001100000001100101011110000000001011010101101011011001011000110011111001010011111101101001111100100110000000100110100000101011000101111111011101011111101110000101101101111100011010001111111110110000000000111100101110100010110000010010110011110111110111000010010110111101001010111001100000001110010010010111101100101001110000100101011001010000011001110100111001110101000111100000110001101001011101100010000111010101010110101010010100010001000001001111010010001111010100001010100100101100010010100001101101011001100010100011000011010000011111100110101001000011101111110111101011010101101101110110110010101111010010001101111010010110011110111101110010001101110110110001001001010111000111000101001100101110111001101011101100111011111101011011000010110001111011001001110001000101110001011101111100111110101010110111101010000101110110001110011010000110100010001000101110011100101101101001110010010001110110100110111010101001011001111001110101000110010100001100101110110111100010010100000101110100010000010100010010001100101101100110011100110000100100011101101000100110101101101001011010110111001100111011001100111101010001010011000000000110010001011000111100001011110000001101010110110001111000101110001110110111011111101100110100010101101010000000100000101100000101011011010101010100010110011001100111101001101111110000011001110111111101010110001110011011100100000101001000101010100011110010111010100011011101101101110000100111010010001000100000010000000101000100000100011010010100001011101101010111101100000010000110000000110111100110100110001010011011000011011011011111100010110011011000110110111000010101000000110110101110011000010111011001111000011011011111101000110110110100111011101101000010110001111100100110101010100010 +010011101101001001001010010000100101001110101010000111011010001010000010110100000000101100000001000110100000101110111101000111010111000101100100010101001110001000011011101010010111100100100010010011010010100001100000110110010011001111001100110101011000010010010010010000110110001111011011011000000001111000100010000111001110001101011010000110101111001001001001110011011111110010000010001000000100110010110100110100000011000100001000111111111101111110101001110001100011111111010011010000001000101010000101011001001011011011110011001111110010011011101111010001101101011011100111001111001111000011100101010111111111000001100100100000100010011011010111110011101001100100110001001101100101010110100000011011111000010110010111010000111100011100101001011000001000101110001111011000011110111010100011001011001111010001010111010111011011001001011000111110001111001001101101001101001000110001011111011100101100111110000100010111110010000110011100100101000101111010111010011001001001001110111001110001011100001110000100101110111001011110010100001110110110110011011010010011011000110110101100100111000011101001111100001101010110111110111110100011101011010111100110000100101100100110101111011011010000000111101100100111100001001100111111011000111111110000101010110101010100010110010111000111010101001111001010101010001101110001101111000110000010000011001111101100110100000100100010010111000001010010100011011101100110011010111001110000110100110010010101001001110101000110110010001000100001101110111010110011001110110001101011001100110101010011011001101110110001100101010100110101010000010000111101011011010110100000010000001100010011111000001101110011001100011000000011100101111101111010100100000110110000100111010000100011001111001111001001000001110100001101011011010011000000011001110101110010111000010000010010110100101010000100011001100101111110101110010000110011110111010110110100000110111010010100011010010101111011011000100010000100100010110111000010001000100111011001000001001100100010010011001001100001011101010010000110111110010011010111101011000100010000101100001011101011000011101100100001010101010011010011101110000010101010011100100001011110001011010000000111110110111110111000010100111101100111101001101110111101110010111000111001000100111010101110110111111101110001001010110001000111010100011111110000111100000001101011101011110010100010100000110100100011101010111000100001010---------------------001100111011000011000001011001001001000000100100011000001011110100000001011100010101110111111101010111011011001111000011101011110110110101000001101111100110010001101000100011011011100101010011111011101010111111110001110100010001011010000001010011000111001100111011010001110001001011110101000011100110110001001010101111110110001110100011100001101111111011101000000001001111000100000111100101010011101100111010111011101011101101011101001001000111111010010001111100101011111010011001101001010101100010000110111001000000010111111010001110010011111110000101110110101010011000011101110110001111000100011001010001110101101010010100001110101011011011101110111000011100010101111100110000010100010111001011001010001111001101110100101010100100110111111110011101100000100101001100100001000111100110111111011101010011100111000100111100001000011010100110101110011111101010000000110001001010000000100100000001110110100101010100001000001011111110110010001110101111100011010010010110010001111000100111111000110111101000101100010100011000010010011000001010110001011011001100100001011001000000001000011101100110000101111100011101011010001110111100010011101010011000110000000011001010111000011111110001110111011001000100110001001000010110000111101001100100010010100101000110101111000001011000101011111000101000010010111000000011111000100011110001011010111111001010000110101010001111101010000100010110100011000010011001100100010110110001000100101001110010111100111110111111000111111011000000100001010001010000011110001100100000111110111111000110001100100011101101011110010110001111011100001100000100100010011000100101110111001101001101100100001101101000011001110100111101110110100000100010000100001000111100111010101001001000000101100101000110000100101100001000100100000110111101000110100111110101110111110001000010010011110110110110100001011111001011011001000101000101000101101010110000100010010010101011000110001110000100101011101010101110100100000110110101000100101101111111001000100110100110101110010011100100110001100010000011100000010100010111001000111000001101011100010111111011011001111011001100000111010010111111010101010111010000110001000110001010000001000011111011111101110100110010100100101010001001111111100001001100111001011100011010101100100010110010101111011000111010011010000011111111100100000001011101011111010100111101000001001110100101110001001011000011000110010001111101111100101100011110010110110111000101101100011000000011101001110001111101000110101111100100011110110100010010100011001010010000111111000100001011011111111101010110001111011100010011011000011011101110111000010100011010011101001000001110010010110101011100111011101110100000001101110111100100101100001000100000000100100011011000010000110011101000111000110001111011110100011011000110110001100100011101010111010101111101110000110011001111001110110000001101010111001110110111110001011001110000101010011111001000110000001000010100010010100111110000010001111110100111011110100001011011111011100001000111001000111010011111101111000000010111110011010010101101111010001011011110110000100000000011101000101010100110110100000011111101100011111011101110011110101001100110101011011011100001110011110010010110101001101101001001010100101110001001010111101000010011110000100011100100101111000101001000110001001100001110100110111100000001101001001100101011100110000001111001110000111011111011100011001110001000001001000011101101111101111000000110010001010111010001010110011000100101110001110101011001100100110110100110000110000000010010000111111010011100101011110001100010010110011111100011000100001110000110001100111100111111011101001110001000111101010101111010101100101000100000010111000010100001110101100001001010010000011101011000110101100010011010100111111011100101011100101001110101000110110001101001100001001011101001111011111000011001010001101111111111101001101001101110000111110001011111011101110000111101110001101000110001011111101101001111100001100001011000110101110111011111001111111101101000110111111100110011010100110010100110101101111100101101001010010101000011110000011011011010101110101000010000101010010111110101100011100000110100111011110000100100011011100011101000001111111001010011100101100000010010010111100010110011111001110010101100010111111001100110011111011000100000001000101100100110001011111011011001100110100111000100110101100110111110101010011011110110110111001001010111100110101100110000110101000001010111000111011010010101111000111001111000000111011011100110001110110110110101000011001100111010111001110001000010010001100100000100000001001110000001110100001101101001010001001001001100111001010010100000001010111101000110100101110000000011110101101011000010011011000100000001010010110000110000010110111110010001100001000010000010101101101101110100111110101111010101110001111000000000101110100010110110011010111110110110001001000110100001000110001001110011101010011001111010001100100101011010010111001101001101100011010111001001011111101110101111111111101110111000010000000000111100001100001011111010010110000101101111101001100000000111111101110110110101010111111001000010000111001101101011100111001101001100001010101111110000000111111001001011101011001110100100101001000001001110101001011111111011011001001010100001011011011100110101001000011100111101101111011101010001101101110100011101111000000011100100101011011100110100010110011111101010110000110011100011010001110010101011000010001010000001001100110000101010000100001111001100100100011110110011100100100000000111110011011101010011101100011011110000111101110010111001000110100110100001 +110000010111111010111011100101101011001101101111110010111001011001011001011001000010111110000010011001111101101010111010111000100000111001100110001111000111001010001001111101101000000111100100110110001010100010101111100101001100010111111101100011001110101010010010010000111111010101101100100000011111011000101111110001110001001010010110001100000110011000010111000111101111010001011100010111001110111100001001110111011111010101101001000101100110100001001111010011110010001100010001110001001000000101101000001000100000101001001001000001001010101111000111110100001111010001110000110010001011011111100111100001100111111101110100000111000111111000000100000011100101000111010110101111110110001111110000000000110111101001111001100011101011100000001011111010001110100110100110001110101001000000111000101001001000110010000000011110101101000100000011100010100100100011100110001101011010100100101111001010100101000101000111111101000011010100111001100011101001001110101110101100100010000010100110001010001110011101101011100001110110111100100101001000100101101000010110110011111111110001111000111111100100110000001011001101100000000100110101111011101011000010111010000100110010011100101110111010100001011100011000011011000011001110111000111110011111000101011110011001111100010100101001011010001001001010110010110011001000000011110001001101110110000000101010000111001110101011001110011001110111111001101001110001101011111001010000111101000001010001001101000110010110011110101011101100100010101111100000000000000110110110101000101001011011001100101111100000011110110111001100000000110001100111111100100110110100101011101111101111100001100100100100001010000101101001111101001100001111111101001110001100000011001000101010111111011111010110111110001001100101000101000111000000101111000100010000000010111110110100100010011111000111001110010001111100011111101001010000000010000001001000100111001001111111011101101000111100010001010111001001100001111100011110111011101111010100101110100000011110110011000011000001011110011100000111110010111011100011100101000010100110011000001010111111111001110000000011000000010000000001000011010011000000001001100101100100101000001100100001101100001000001011011101110010010001110001100110100110111001100011111000000010101100001011011100101110001001101110101101110011100000100011011110101010011010111001011111100110111011101010111100110111010100010010110101010100010---------------------100100011110110111110010011111001101001011100010001000011100111101000101010010000110111010001101010111000110111000000100011000010101001000100000100100111110011000010010010010010101110011011000111011000010100000010100100110101010101100110101101010110110110110100011101100011000111000000000001001010010001111000000101100100000101101111001111000010110101101110011000010111110000101010100100011110110100001100010000001001011101011010111110111010100000101000100110111101001011010001010101100111110111111111111101100000001111001010000110100100101110001101100110001011101000000110011110000101110111111001011110110011110010001110001101100111100000001010111000101000000010001000010001100000000001100101010100100001000000101001111000110110001010110110101111111001011011110001010000111010110000101100011000100111010101010100001001100111000100100111101100001000101011010011110101110110111011011000001110101001000100111000000101000101100001101111100111001011011001100110011001111001111001100001101000001110110011000110000111010100110001100011010101010101110011101000101110110101111101110011101010100110000111000001110010111000110110101010001011000011100100101101111010110110110101010001011011110010101110010101101110110000011111110110111001110110010110101100000111011000010000000101101000011111100011001100101011010101111011010110001111101110101100101000101010111110101000001100001010100000010100111011110000000011100100100001010111010100010111001111011110100101111010101101011010111000110011110101000101010111110001100111000000101001101100001101110110100111010101010011011110100001001001100001001100110011010111100011110011011001001101001111100110000010000011100000010011101000011001111001010100010100111110100111101101011101101001000001011000010010111110000100110010000000001011110111010010101001111100111010101110000001100011100001100010010001111011001100110010110001011111000001010111000110001000100000101101000011011010001011101011100001011000111010000111110000011111011011111100100110100101110110010111110100100110110111110111011100011010110010100011100101011111001111011010001110110111110001011000001101100110010000100011000011100010111111011011010100011011100011101100110100110011101101100011110000001101010101110010101100000111000000011101011100110001100000101110111101111111100101111001110100001100000010110001101001101001010010011111101010101001111011111000101110100011001110001100011011111001011001110100111111010001010010110011000101011000100001111111101001001101011100010110000110010011000100001110000011010001000000110111000001000111100101111101000000010011011001111110001011001010110110110011100111000111100111111110011100000111100011101101101001001111001110101011000010010101010110011101110111111110001011000010010111101110110100000101100011110000110011011111001100111110100010100000110100001101100010100110000000000100010011110110100100000100101111110110101101001010010100010111011110000111001111000001001010010010000001000010110110000001110011111111010000101011110101110001001011010100011101000000001100011110011110101111011101000001110001001101110111101101000110001101101101001111011000010000001110000011100000010110100010000010000011100110001000110100010001100001111010101110011101110100001010010011110100011100101110000101010001101001100101011110001001010010000101011010110110110110010000110000000011011010111111001000101101101100101111111110010001101101000101001111110001000100011111001111111100001010001111010000111101011010010111011100111010001110000010000101000000101000011010101111011100000000100000111100110010011001001001111100111001011001110010001100101010101001100011000111100100010111011001010000001100110000100101000010111011100001011101000010100010001101001101111000100100001010100110011010000001001100111010111111000000001111110010110101100010111010010010100101011000111011001111111100110100000111001000010001111010101111000110100000111011111000101110010011100000110011010010011110000001101001000010111100011100011010110100001111010000101000000010011011000010100111110111110100001010010110000000101001010110110100001001010111101110100101110100000100111110000110011010101110101011001101011011101001110011011011101111101011101110101001001001110110111111000011111001011111001011011111110011111011000000100010111010101110110001011101011110110011100001010110011100100100011010001111110101001100110110010111000111100100011100101101000010011001010101000001110110111110110111011011101011000001000110110111001000011100001011001000001110010001110001110000001110110001101100011010101011111010011001000100111010011010110011111011011100101001011111100111010110111001010101100010101100000001100011100101101010100010001100011111110101001001100001000010111011000011011110001001000101000011000110111010111101111010100101100001110001000011110010000110000111110010101010000100110110101111101100000000111000100011100001101111001111101101111110100000110101001010010011011101001010111001100001001101110100001100001110000100011100000110110011011000101110100010110101100110010101010110100101000111111011111001111110101011100000010101010111110110111000010110111000111110001011011010011000011111010010111000110101001101001010001101110100011101111010011000001000001000110010011100000100010101011101000111010000011100100000011110001101100100111010000010000011010010111000101010111000001101001111101010010110000001110111011011011010011110110100000101111110100100100101100010100110000100111101110101001011111101101110100001000010111000010100101011000101100101111101001011001010110011110010110101001100110010101010001001111001011 +001011000100011001011011011110111010011110000100100001010011101011001001010001110011101011100101001011011010100011010101011111101111011010110010100011111000111101110111001110011100001111001010101010101101111101001100010101111111111001011110010011101001111110100010111111101000000001010111010011000000111010100100001100100011110101100110000111101111011011011001111100010111110101110100000001111011010000101000100110101111000101101110011100101000101011101010000011010001001101100000011011010011100101100011110101011011100001001011011001000000011111111010101000110011011101010011001010111010100100000001111010001010100000011010110011010011111001010111101110011011101101101111010110001000011001000111100101111000010010011011110100111100100101100011000000111000011001011011011110011110111100110011111110000001000101100000011001111011010011000010010001110001110010011100010100101100101010111110100001000110100100100101010110011111100010000011000010000100011101101110110010101100110001111001111000011101000000111100001000101100110001101100010000101010110000000010001110111100101011011110111101000001110001001010000110110000111100110111110000000101010101101000011000101101001011010001110000001110001101100001000001110100100001001101111100011101101100110111010010011100000111111011011111010010001111000001111111100111000101000011111011010011101010011000100110001010000011000010110001000111000001110011101000011010111110000001111010101010111010000010011001110110011101100101011100001011111001010110000101110011111111011111101010110100010100100011001100110000111010001101110110011010001011011111001100101010101111110010011000110111001111100100110110100111010011111100110110010000111100011010001110100101111110101010011111001011101010110111101011111101011101110010110001111111110111000011011110101101101100110000011010010110000110110000101000110000110100101100110011101110101000110111111100101111011000001111101110010001000110110101101100110100011000010101010101001111011111101110000000111100000000001000001101100111111010110010001110110010010100001100011110110111010100110110111011100110101000001110000000111100000100010010101100001110111101110101010101111100010100101001001110111101001100100010111101101001000110101010111001010010110111000011010010000101101100011011010110100110100100101110101011101110110111111101011111111111111011011110111101000110110011110010101010111101100100011100110---------------------101010011100010011011100111110110101110001010010111000111011110000001110101000100001010000110110100011100000111010110000101000011101100000010111001101101011011111110110100111111011111011111111110011000000110101100011100001010100101101011110111110110101111011000111110110111110101010011101110111110111000101010010110001000011100010101000101100111101101001000001001010001110001110000101010000000110110100111110010111101000011001101111111100100101001001111001000011111000110000011011010110101100110001001010110101101001100100010101000110100100101011101110011110111111101000101101011111101110101110101000011011010001101010100100110100100111101001010000100111101000101010011110011100000000100011110111100111111000011001001101000111000000011110011001100010011000110001100001100100111110010001000100011100101110001100110011011001100111101101100011100111101111001011011100000111000100111000001010110111010100101100010011101001010010101001011111111011011010011111001110010110001100011101101011101000100110000111111100111001110000110111010111011111101001001000110001010000101011010111111111111001111010100111010001000110011100000100000111001000011101100101000100111010000001111011001111010100100101010011111001011011101100011011111011001001100110101000000111101110111100101000001110011101001010101011110010101110101001110100101000010010100111111010001000101010010101111000101100110111100100010101001111001001111011010111000000000001111110011011101110001000101101010101001001110000101100000110100100100101001010000010011011000101100011111101010111011111100101101101101000000000100010010000101100000010001110110111010000111010111011000110100011011011101110100001001110001101000110010100011101000001001100101000100101001110110111101111001100000001011011001000010101100010000110010101100100011001001101010010011111001110001101000000000100100010100011101101011110111010100110101001001001101000100110100000011100000010001000001111100011000000000111111000111110101101101100101011000000010101110000110111001110101001000111100001010010110010010111011111011111110101101101001010001100001100101101001010000111100000101101001001000000001010011010111100101000110100110111111111111011011110100011001001101011101110001111011011110110001100011100111011001111010000111111100001010000011010110010101100111011101000001000000100011110101111101101011101100011001101100101100000001111101010110011110100100110010110111100010111101100111101111011000000001111111100000101000011001001111110110000010110110010101110000011100001111001110010000010100011101101000100010101100010110101101110000011100111111111110011110111001000001111001110000111001101011010011110110111100101011001110111111010111101010011100011100110011100100101101011001010101110010010100000000001110100101110001110000011101110100001010100101110111111011010011110011100110000100101010000000100110000010010010101111000100101010100010110101011101011111011101011010011001101001101111111010010010000010011011100111010001010110101011110101010110000100101000100010011000011110010101001001001100010101110100011101110110100001100010101010110010011010000011100110000000001100010001011011110001001101011110000011111100100011100011111101111000011110000110110101011001000101101001111101010011010101101001110000000111011100110000010010111100111100111000100110100110000011011110111100010000001101000011111111101101010011011101011110011101000111100111011011010110011000010100110001110010101001001010101110101000111010000001101100101101101011100101010100110111010000111101010011011011111001101000001111000110001010001011001111001101010001000100010111100010001001000010000101100100110101000000000011111000011000000010110111001010111100001111010001000111010110101000111111000101011100111100110011110000110100011011110101000101000101100101101110001101101010000101111111110001101110111001011010100000100001100001100011001011101000111111011001000101110011100011100100010011111110010000111000000110001001101001010010100011001110011100000110111001101011010001110001111011110100010111000101001101111010001010001100111000111100001010001011010001111101101110010110010110010010001010100010000000000101000001100011000100111111000101001000001001001011111001110000000011011111011001011001100100111111100011111000011110100101001010011000100110010100011011011111010100110111101111011001000101000100100000000001110110110100100111111001010111011110111001110001011010000110110111011001110001010100110000101011001011000101101100110110000110101010001101000110111111011011100110000111010010000000001100010010110101011110010111010011000101010010010001001011111000111000001000010111011100111100100110110111000011110011111000011001101000110001110000000111000011110110101011000001011100101111111110001101110100111101000011101100110101111111011101010101000110111010001001010000000100001010111010010101100101001101100111001110000011110001110101101111000111001100011011110010110101011010010111110010010011101010001001001000000001111101001010101110101011011001100100001011110000111000110111100110101101010011100100100011000001111100101011011001011000010110111100000010101100100001111011010011010111111101011001000001011110001111110110010001001100111000100001111101111011000101001000111110000110111100011000010011010010011001010101101010110000000100100010001000110010110001001011110101000011001100011101000011110000001010001010001110110000101101110000100101110001100010000000110001111110100010100111000101001010010010000011011110101101001111100101000110000101111011100001010000101000001100011111110001110110000001001100001111101001010001001 +011100110001101100010000011010101101011010111001011100110110001000000011111100101001110110000100010010011011101101000000011001010100010011010100010110100000111110010111100010111001010001001101011110001010100100011010000110011010101101001111001101100000001010110001110110111100010110100101110001111100111011000010111010101000100010001100100011010111010010010101011010110000101111010101011010110010100110101011000100101111101100010000011100111010100101110000100010011110000010010001100111100110000010111100111011000011111010001101000100111101011110000110100101000000101110001101001011101101101001011000110110101001001011110011001111110110100101011001010100011100000010100101111101111111001101011010100110101010010010001001011001000101000101011100010001000110100110001100100101100001000111101110010010001101100001110000001000110001100110101100011001011011110100011100000001100100001001010000111100101110001001001010011110100010001010100010111011110010001111101111000000100111110100010100010000010010101110100101000010011110001010001011110001101101000011100010000100111110110001000010110010110010010111001110010001110111100010011001000010010010101100011110110010110010000011111100111000010010010000110111011000100000001110000111110010101010100100111001000000110000100101111000100111001001110011100011011101111000001100001000010101001010001100001100010101100010110000111010110001111001110100010010001011110011010101000101001100011011100100101101100100101001011011000010000101001101101010110001111111111010010110110110010110000000110000100000100111110100101110100010000001111000111100010011000000111110000011011011111011111000101000001101110000101011000001011000011011100001100010111101101111000010111110000100100100100100110010110001011111011101011011011000010100110011011101100110001101101010001001011001011100000111100100001110000110011000001011111011001010011110110101101100011010000010001011111100001111001010010110001100011110010101111100101001010011001000101100000011100010001100010111010111110001111001001111000100010100010111110110001100111001110100000010110010000111111011111110011001000011000001110101100101000001100000100101110011100111100110111101111011100100000100011101000100101101011011111011011000010011010011100101001110110011100100110011011010010101011100101010100110000001001010100000001011111010011010011011001101101111101111100000110000010111101110111011011000101---------------------101111100010000011110101101101110101001000011011100001001011011010010000111011110111100001111111111110011101101101000011101100001111111001100000011001101100001110011011011011111010011100000001111110101011111011010000100010011001001011111111110010010000010010011000111110110000001101000001001111110111001101011100001000010101001100001111111110010100010000011010000101111101101101001011000010011111001001110011100110100111100110000011010011100001011011111011110101011000010000100110010001000011000101111010110011110101110101101111110101111110011010110010001001110011100111111111010101011000011010111100101010111000111100001111111010011001111110011111010011011001100111000000111111010110110111011111101100001110100010011110100001011101011010110000011011011011000001000111110011101101011111001000000111010111001101100110111011000011010000001111001101100011111010001100010011100100011111111111110101011011001110100001111110011010001001010101010010000110000101010110011010010100100110101111010000001010000111100101000100101111001000100110011001110100001001101000010011000011011111100111101000011110100111101000011110111100000001101010011111001101011001000110000010010011110010110101111101011011011010001000110010101100001100100101011001101111001000001010011111001110110010001111101011001010010100101101100110001000010110000011010110011110011101110100111100000100000100000011010101011010110001010011110100001111000001101001100000101010111110010001010000101011110000101000111111001100001001010111001001101101101011111010011100011111000010101111110010010110100000100011101111111001110000001010110111000110011011011000000101001101010001100110101011010011100101001101100110001001101011001110111001000010110010110111001101011111101001010110001011100000010111101010101101101111111010001010011011101101100001000010001110011001101000001001110011110010111001001000110000110011000111000111100001000100000000111000010110001110010001011111010001011010111110010100100111110001011101100110110011011111010100011100000001011001000010101110001100001010011000001010101001101101111000010011011100111110001100110000000100001010010010110101001001000010010101110001011010110010011100001001010011111001111110011100100001000011001000011011110110011100101010110101111011011001101111011000001001101011111100010001010100011010111000011011011001110110110010011111101100000110000010000100000101101001000011001110110000110011110100011111000010001110000100001110010010011110001111100001010110011100110101000011001100001000111100100110001111001011001111000011001010111001001000110000100010010111011111000000011001101000011001111010100100010000111110100001001101110000011010110011000001001011110101010101100100110111000011010010100011011010001111001000110000101101001001010110001001101111111000000001101110101101111110101000010100001011101101001101111011001010010100000010110100011001010010010001110110010001101100100100111111110100001001100100011110110001110110000111010110110100010100011001001001001000011011100110000110011011000110010011100010010110000110111011110110010111100101101100010010111010000010101000111101011011110001001001010100011000111110111111100111000000101100100100111111111111101010010010000111100001111100111011110000001001011100101100110110110010100010011111101110001111000110000011100000000101010001100010011111101000010010000011000001101011010010000111100111101010000011000000110110011111011110000110100110000101111100010101101011100010011111100010100100101100000100010101100100110000011101111010001011110111001100111000010010100011011110101010100001010011111010011100110110011111101011001111000011110110001011000011000000110111010110110000011011110100101010110010001100011010100000110101111110011001010010101101001101010100000010011001000011100001010100101101001101000010011110001110001110001111111110001001110100011011001000100101101110011001100001000011011111100010010110110110011001100011101001100100100111010101111110100000100000100011010111100101010101110111011111000100110001101100100111011101010001111100110000111011001100010101110110000110001001101000001000111001000001010101110011101111011100011011000100101010010100111000101101110101000001001000100110111111100010100011111111010001010100100001110110000000111010011100010011101111110011100111110110111010101100111000010100000100100100111111111010100000111111110110001010011011010111011001010100101011010111101100001001101001110010111000001100101011011111001010011111111000000001001110000101011000101110000111011110111101110011010001010000100101011000001001101001110111000011100100010110110000101001010111111111000001010101011011010111100111000100100110011100010000001111110101001110101111011111000001010110110111011111001000011001011100000010111010110001010110101111101100101101100011000110101011001010100000000100001101000101110111100010000011101101111100110111000000001110000000100100011010111111011110110100100111111001000110000110010010110000001110101001111010111001101010010000110110010000111000110110000101111011100000011000111101111101000110011000111000011101111011011000111110111010110011010110001100010101111000100101110010110111011100010110000011101110000011000111011001011101101111000100100100111111100010101111001000110100100011000100101001111110010010110110011110010110111001000010110100010110111001000110010011111110001111111000111110000001001000101001000110101000101001111111001101001000000110011100010001101011111011011111010101011111101011010101101011101011110000101001001111001001011100000000000011100100100110101101111100111001110010001000010100010101011000 +ls240msgs +010000000101100011101001110101001110001000011110011010101100111100100111001110011111010010001001011011101001011010001010101001001001001100111001101110111111011010010011011100101001110101111000000011101001111111110010001110011101111010010110011110111010110001110101001110011000011101000001001111011011001000010000110010001000000110001010001111100011000001111001011100001110010110011101100110110011001000101110010011011000101001111000001011110101100100000100100111011011001011001011010101000101001100100110110100001000110111100110010111100101010010110101010011101101100011111010100111100000010011100001110010010010110000100101101101100011011101101000101100010101100001000101100001111110010001011001001111111100001001000111111000111111101111011111011001100111000111011001010101101010011110101111000011111000111111000100010010011000111101101011100011101010011001001111010100010001101011001010111001000011100000000110000001000100001100100010100001100111010101000011111010001000101010010110001000001011101001010010010100011000011001110011110011011110100100101101000110111100100010000100100000110001100010111101010100010001001101011110000101010011001101000011111000111010000001110100000110010011110100101101000110111010111110111110011110101101001111011101011111101001001110000001001001011000000001011000100100110101000001010011100001001101111011101111000111101101001011100010100111111101001100010011101101011011011101101000101000010001100011101111010001001011000110001100000011011101000000100010011010000101101100111001101001010011011010100100001010000010001101101101010000100111110001000001000000101100110100111001000000100111001010101010000100000111000110111011011010100011100101001100010001111010110111111000100100111101011001001010001000010010011000011101011101001101001010001000000000011001010010111001100011000110110111011011001010111011010000010101001101010101010111100111110010000011011100111101011100010010100110111110100001010011111011111001010000111010101001010010101001011110110110010111000011110101110001100111000110001111111000001001010010100101110001011010111000011111011011100111000010001101011101101010011001001100010111100101101101100010111100111111111111101101001110111111011111100000101101010110010000110100000110110111011011110000101011000010001000011100100110101011110101100100100101010010110001101111100001000001000110100010110101001000001101100000110001001100000010000011100010000011100101101100000110010001100100011100000011111110000000011100011000110111100011000110011101001111011100011100111111011110100001000100111001010100110010010010011000101011010111001001110110000000010000110001011100111011000010101000001100011111000010111000111110101000000110010101100010100101100010100010000100000111101111001110110101100110110111001000100101101100110000110111001000100000110111010010000111001110011010100010111000001000100010001100110000011000001111110001000110111011101100001000110111010110001010110011011011101100011000010010000111010100110001110101100110101010010000100011010110011011101110110001110010000111101011010111001111010011101010101111100011101101001001010100011100110110100110011101110001001001000100001000111011001000101001111011110001011000110100111011111110111110111101101100100010100011110000100010111001110000100110101011010100110110011100101001100010010001111110101001001100101011101010101001001000101101100000001010110111000001101001011110111011111100100110100000010100000100110111100110011101111000100000010011011100000010111001101001011000100011110010111111001001110111110100010010000110000110100110010110101000001011011001010011010000010010001011011011101111111111111010000111101001110011100100110010000000010100101111110111011111000110110101001010011001111000110110101011010101010000111100111110011101010110100101000110011100111110110001111000010011101101000001100110010110111111010001110100000001110101001001010110100001010101101001111110110000110011000000100011011001111111000100011001111100011000101001011110101110111100101101000100111010011000010101111101111001101100101101100011011010110010011110010000110000011010011010101000111111011100101010001000011101100111101011101010001101100100011011111010010100011100010101011100010010110001011000110011101101101000110101011001111010000110110011111101100010101100101100001110001001110011011101000000101100011110100011010111011111010101011000000000000100110001000111011010110100110010111010000011111010111100011001111110100000011101010101110110000100010011100111001000111001000000111111100100001111110011010011010110000101111010111110000111110110110101011001001111100101011000001001110001010000011110101010111111000010011010001110111000110110110001000111011001001111111110001010110010001001001011000011010111001111010101100000110101111000110000100011111001111000001011011100100111010101100100000101000100001010011011010110011011001000000000111001000110100110001000101111001111010111010100000011000101001110110111111011111000100101010011100100000111011101011001111011110011000101010110111101110101101000010001010001101011101100010010110011101010011101001110011101010011000110010010000110011011011110100100010101001101011000001100111001011011010111011000101001100001000000111110011001001101011111101101110100101100000111101000111111110001110011110000101101100011110010000111000--------------------- +101000101100100111101101100110011110001111110011010111000001011000000011111110011110001001011011100100000011010111100000110101100000101011111011000000010110010101111011111101010100010010000000010110001101110110000101100101110100011111000000011010100111100111010101101011110000101100001110110110100100010011000100101001011001001111110001001010000100111000000101111110010110000100000001111001011011001010000101010111110101000011001111010100110101111011010110110000101101011011001011010011011010010101010010010001101111101100100110101001000011101111110001000011101001110100001001001111011101100101010110101010000000000000110001101001100111000111111111001011111000011010100001001100111010110100100101100111101101111110000011101111001110000101100000110100011011000011101010110010111001011110011101000110100001011011010000100110000010101010100110110001010111101100010000011011011100111110011101110111110001010101000001101101101101101001000110010100101000101111010010011010001010010110010100110111110101111000011111000001100100010110011000100100100000100100011011000010111101111100001000100110011000011001100000100101111000000000011100000110011001000110100000110110011001100111101011000011010010011101111001010010101101101000110101011010010110100010000001111111000110101001001011111101010110111001111010110111110010111110100110000110110110100011011101010111110101111000101010100000010000011011111101100110100101100100000100010101110101000011001001001000010010111111100001011110011001110100101110110101110110001000100100010001011011100011000100110110011101111001100101001100100001001111010001001010101100000011110111111000111110001111110110001000001110010010111110001000010111110101110100101111111011011111011100010011101110101010011001101001000111010011000001001000001011101111011101111001000011011010000000111011000001010101011101111001001111110001100110111000110010100010011111110101001100000001110100001001101111010000101111100010011101111000001101110010101101001100000001100100011111100101110100001011011111000110100101101101011011111011011010011110111000101111011110010010001000100001010101111011010111010110001000111011001101001101011101010111111001000110011101011101010000010000111010110101010000111101111111110111011101100111100000100001101010001000000110110100111101101101010101110010110011010110101011000011110010010111011100000011001000010011100111001000011110111001000111110000110110111000011100010111001010011001000101111001011000000111010110100100100111110001010110011000011110010101001011001111000011100101101100110000111011011111000100010010011000010111110001001010100100110000000100111101101100010111101101100010110000011101000011001011111100110101000001011011001100000001010011000010011101011101010010011101000011011000110110000011111011000010101110010000001111101100110011110000010001001001010100100101001111110011110011010111011101001111100001110011110001100000001011010111001110011111101010101011100011110011111001010010111001010110111011101010100111001010101001000000111100111000010010000110111010111101111111101000000110000111010101101000000001001001100100011011011101101111011110000101010110001001110101010001001010010011011100010111101000010001110110001100011110110111111011110111101110011111100110000011001001000110100110001111001000100001101011010110001101110000110000011100101101110110000110111000001100110011011011110011010101101000110000100010100100100110101110110111101000100111110010100100000100111001010101111011010110101111011111000010010011010010011100111001111001000101110111010010010011010100010101100110110001000011011111011000111101010001101011110010111111100011111001000111001110001110110011010000100100010011011001001101000000101100111110100011101010001111110111001100001110001001001000000001001000101110101000111111111010110011101001011101000001101001101100101101001111010101011111100101110100110100011101110010001001001010000000011110101111101101010011001010111110100110100011011010011101111101101100011110011011101101010011010011111110101100110111000100100001101010011101101001001000001100010111110110111100010111100001011110100010100000010100111100010110111001011000101110010111111110000000011011100001110110111100110110010001001001110110001010000010101101000100110111001110111000110110011101001101011011100110100111000001111100010010010111000000101000000010111111001010100111010111100010000101101001001000011101011001111111011011010100110001011110001011011011111010011100010111110100100110100110000100001011001101111111000101001000000101010010001100111001001000111110100000001101101100101100101110110110100111100100011011110100111010110100000000000000101001101000000110100010011100110100100000010010110010010011101010001111100110111100111111110011101101101111000011001001110100101011101100000101110000111111010000100111010100000111110000000110110101001111111001100111000001011100101011110000010111011011001011101001000011000100000010011101010011010000101000100001100001101110001010000000001000111110001010100001101110110100101000001010101111010110110001011000011011111111011110101111011000000000110110011101000010011110001100100001111001011010000011100100110101100001011010110110010001101010011100001011110010010001011001010101011001011100011000100000011101100011001100001001100011101011111110001110101010011101111010110--------------------- +101011001101010000111100110000001101000011100010011001000011100100110100110111001010111001101111010010110000111100101100110000111111101001110101001100010101100111000100001010001101000101000110011010110011011010101001000011110100000010100110111110101000011110010100100011101000001111110000110111010110111111111001101011101100001101010110000011100100111011010000010110000111001010110111001001101101000110100001111011111010110000000100101010011011110010001101000110111110001011010101111111101110001101001001101010011110101110101011010110110000110101001101100000101000000010111101010111100000110100000001111000101100111101000010111100111101001011011011000111010011010110001101011101110111110001011100010101100111010000100001111110011011010101110111000010001101110110101110001101010111010011001001111110010110010100100010100110101101000110111010001110111011000011011100111100001011110110100101010010010111011110101001111111010010001111101010001111000011011010000111110100011001101111111000000110111110111001010011010010101100111000000100110000100100111001100111010000111001110001101110111010000001001110111011111001011110100101001110110111101010000101001110111010001011110100010010011011000010101100110010111111001100001100101100111001001001011001110100111111110001100110110100001111101010010110001111000101001001111100001001010110111010011000110011110010001011110000110110011101110011110111010111010000110101111001011000100100011100010011101001010011000101001100101000110111001100001011010101011010111010010110011011011011101101001010001010100101001011011011000011100011001111001000011101001100111010100101000001111111101111100110000110010101111011101100110000001000010010011000010011010000110100101100100001111100111101101101011111000010011010100000000010100011010001111001000010100001101010001110001110011000100101100101001001001111001100101001100001100110101010110110110001000100111010101100111100111011011010101100110110101010110111111010100111110100000001001001001010100010111111010011111101110011101110101001111100101011111101001010001001110101110001100000001111100110000000100011100001001111001111110001110010100111001101110100111011010100000100111000110011010101001011111110110001100010100010111101011101111000100000010001101110011000011000001001000011101111000111101100111001100001001111100011100100101110111101001100111000110011010011101001000011100011001010011010000111010010001100010111001110100011100100000111011100100111001011110010010010010111101100010000010001001100010101101110001110000000101000111111111110110001110101001000001001011000011010100110001011111010000100110001111111011001010000111011110101010000011010001100110001001010000110100101000010100100010011110010010001110100000100110000110001011110010110001011101110110000101111011110110110001001111110000010001101100010100100010011100100010011001011000111100101100110101000011010010000110100111100100010110010110101011011101000110111011000110100000111110100001111001110000110110000011000100100001110011010101010111011101111000011010011010110010100100010110101001101001101000111001101111100110101001001011000010001110101000001011011001000000100101100010001101101011001001000011010001000001101000001110000110000101111011010111110011000111010000010111110111011100010001011110100111011010011001101110100010111000000010111110100100000010101010110110001000101010010000110011101111010100101011000100100101001011110101001001000101000000001111000010010111110100011101010111100101010000000100000101111010100110011010010100100100000011000111111111010110100101000111011111110001000010001100001010111010010001010000101101011100111100110111010100100010011000001011101011110100100010011000000110011101110011011011000101000010001101100010101110001010000001111000000000000011110011101000101011001001111110110001101100101010101011110111110000010101111011011000111010100010010000111111100000010111001010000111111111101001010000111100100110111101111100001100111110100101010100000011000011010001001110000011001001000011100000000101000110111000011011010011010011010101111011111110011000111000000100100111001101110100000111011001101001010111010001011100010110111111011000110001111110100000100110011000100000011100111111011110100110101001001010011111001111001010000010111010010110001100010001111001111011110100010000110110001010010101001000000011010011011100111011111110110000101001011100000011011000100100110000100010010110010100000111010100000001110000110111101001101011011100100111100111011011001100101000111101011001010011101000110001010110101101100110111101010100011000010000000111000000110110001110100100001000111100011110101100111010011001001111110000111101010010101011111100010010111001010000101100101011011000001000100010100110110110011000101000100100000000101111110101000001111011000001111011101111100001010001110010001111011101011100110110011010000110010100011000011100010100010000110111101101000110001010011000001111001010101000011100110001000010000110010111001010100001001100000110011000000001011000110111001000111110000100000111010000100010111001000001010100010011001010010110101001100110100010010010101110001000011000010001011000000100011111010100110000000100100011000001100001001010011001001101101001010101111110100101111010101001001110000101011101101111001011001001100110000000011110101011011101--------------------- +111010111011111001111000000110010000010110110000100001110010000011001111001101011101000001011011010101110000111111100111010111000101100000001000110101001100111101011011111101000100111111010010000110110001011101100010001010010111101101101110000001101100011000011111000101001111011100100010010001011111101111101010010010110111011010110111101100110001110001011000011000101010110100111000111011100001111011111111011010010010111001010010110001100000101101001100010000001100110000001101110111010111111101001000000000111010000011011100101101010101001010000100101100001000101111011001010000001010111000111010111011101101101000100001010001011101010110000101100010111100111111010001000110101011001011011001101110010100101100010010100010010011011111011010101010100011001000111010100101100000100001100011000011100011011100111111101100100001000000110001011100111100010110101010100110010001000100111000001011111011111111010001101111110100011111111011011101000010000000010001010011110000011100111101000100101111111101010000011000110100001000000101010100111111100011111001100100000010111011111001100001011111001010100100111001011111011010001001001011001111000001000011110110100001000100011111010100000010001111111000010100100111011011110011101010111111010001111000100110001110101000010000000010110101101011111100101011001111101100001010001110001001000011100000110111111111010101001000100100010001101010010001011010100010100110010000110110001111001110010011101101111101100000110001000101100001100001001100001100111000111000001000101101011110000101011011000110110001000101011110001100010110110000111111111100100001010100110101010011110010011011110110111000001011111000111110010100101100000011001001110001111111010100010001010100010111100101000111101011011011010001011001110101101110100000110010111011111000011101111001001100001010000111001011100011111000110110011101011011011010111011110010001010100100001000010111010000000000000111100001110111101010011011000110001011000010101011010010010010111010001000010010111001100101010100101111111000100110010011010000101111101001011100101011110101000100101110111100100110110101100110110110011011100101000010110110111001011110100101101110010110010010100000110110000000010011000100001111000001011010110011011110011010111011100001110111001110101001001101100010110111100100101110101111001011101011111011000000000111000101010101100011101000110010001111011101010001111110100111000000110010101011110011110001101111110011111111101011101000111110101001000000000111110010000110111100100101001011111110010000100100000000100111111100000100101010101000011100100000000110000011110001010010000100111110001011100000000011101111001001000000110011010110110001000001001101001010011010101101110100101011010110100101010110101100111100000000011000111101110001110100100011101011010001110010000000101110010111101101001110011111100000100010011000101010001111010111000011010101101111010101010111010111000011110110100011111000111110100000001111000001100100101000000111100011101111101110001111000011010110101111000101110010001001101110000000101110010010001011100100101111011010001011010010010000100001011100110101011101110001110100110000011111100101101010000111100001101010110100111100101001100000001010100100011110011001101101100111110001111110101000000101101011100011111111110010110100110010010110110101010001100010001100011100111010010000101011110010010001100010100010111011111001011011001111100111011111010101110001000101101100010011011100000111001110100110010110111000001101110111100001110100110111110011010100000001010110001001011101101000011010011100001100011011010110111011101110011000111110011010101011110110000101101100001100001010000000000000111101000110101100100100000111010110100011011001011000100100100000000010100100101001111101110110001011111010100101010011011000110101111011110001100000110011010000011010110110000111100001111101110011110000100110010010001011011001001111111100000001010110100101100000000000111100110110010011111010100000011101101001100100111001111000101001111010110100000001010110100100011000101000101001000001100001011001001101111100101011101010011000110010111011001000000111101101001101000110001000101100101001100010101101001111011010011010011000100001011111110100101011010000101101001001110010000100101000110101000111101010011111010000010100111101001000111010010010100000111010111110000110110111101111011010100100001000100111011110110010011111010010010110010010001100110101110100101011010011000100001011010001101110001101000110011111100111001011101010001000100100001001100000100001111100000000010111001000010110010101100110110101100011001010001011000010101011100011111001010000110111111110011001000101000001000110111110010010101011010011001110000110010111001110010111010011110110000001101100011100110010000101001100100001110011011001000011000010111011000110000110111000101100101010000100001010111001001010100001011011011110111111101010111110111100011101100100000000111001000001011001011111010010010110111110010000110110001001011110010010010010110111010100011011001111011001011000000001111111111001110110111111011111111101010111010110111000110001011000101111000000000100100011001101101010010000110110011011101101111111110110000100000011001110111100101110000001010010010111011100001001111100111000010011011000001101101100110101000--------------------- +011110111000110101100010100001001010010000010001100111011101001001000111101001110000100111000011101110010101011111000001001110001101000000011011000000011100111100010101010111101100100111000111101101010000101111010011100101110000100101000110001110111001000111001100001010100100000100000101000000111000110111001000101100101110001110101001010101100101100101111100001111010000110000101010001111001101100111100111101100101001010001001111000000000100001111111010100010101110110001011011110100010000110011001101000101011011000100010000001111110110101000100110010010111010011101100111000111100110000101010101001001111110011100010000011110000011011001001010111001101101101101101010111100000110001001010101100011001110001101110111000010000000000111011111100100000000010011101101011101000011000001100110110100011011001110101101011101010110001110101111000011100000111010111000110100001111100111001001001110111111100111000100101110010110101111011000000101000001001010110001010110101000111000000010001011111011101001100100001001010001000001010001001111010101111001111100101011110001110001101101001101111011000111100100011100101110100001110101111011010000010010111111001101010001011111001011010011101010010100001001011100010010110011110010110110011100110001000110000000100111001111101001010110101110000111111010001010100100000000111101001101010111100101110111111011100100001001010000110011011011001001101010000100100101100001101010001010001011100000000010111100010010111101001000000011110000010010111100101010110011111010010110100011111010001010010110101100000001101101010001010000011010100011101110000100101000001001100110110100111000101000001110001100101001010000100110111001110001111011100001001001001111010101110101010010001110000010001011100111011011000001101101001101101011111111000001110111111000111111001000100110111011000011000001110010010100011010111000011111110000100101111001011010101111010010001001011101111000000010011001001100101001010001011011111001100110011011001110110101000111101001010000111100111010001000101000010101101011000110010110001101000011100010001110001110011011110011100001011000011000100000010011100001011111100110010111011111010011001001110110000000011011010101000101100010110001001111110110000111001111010011100110111111010000110100110000011111111100111100011000111010100110000001101101000111001111001101000111011010000001011010000010111101101010101101110110101001001001100001001010011101100010110110000100000111100001110100010111111011101010110111001010101110011111001001101000101111010010001000011110101101011110110110101111101001111100001000101010010100111101110001000011011110000101000110011100010101011000011101100000001001101011010110111100001111011000010000100101001001000110101100001110101011111010111000011001110100111100110101001110110100011011001011010001110010010011010100011111110010111111000001100100111101100001001111011111101101001001001001100000000011000110111011011110000000101010101010111111100100110011011100000010101000111111000000001100011010011010110001001001101101001100001101001110101001100001110010010000100011011100001101110110100110000101001110110011101110001011010010001100001001111011111011000111100010000011101010111010001100001000001100101000111111111110101010100100011010000000111010111011110101100010101110110011010111000010000000100101011100001010011011111101100110111001000011100011110001100101010100101100110101000100110111111111000110101101000001000111000111011011110110010011010100011111101010001100111111100001111010000000011101010010110011101111011111110101100110011001010011001101101000101110110111100111001111110010111101000101000101011001111011011001110001010000011110111101100011001101011111001011000111000010101000101001111010000001100001101010100110110001001110011110110000010000000010101011100101111010011100010000011111101010010011010011001101100011111101100110000111011111100001110110011111110111010101001000101101101111011111101000001000011100100111100100100100001101001001111010110001101111110100101000000100011110101011101111001010011011011111100100010111000001100100101101111011110000111110100111111001010111010011000011001100110111010101001100011100110010101110101111111011110100100000010010100010101010101111000000110011100101000011110000011110101111011110111010011101111110000000100011110111111010011001110111010110001010011000000010111010110100001100010111110100111001010110001000111100101000100101100100111001100010100011101100000101101011010101011100000001000000101110011001100100000110000101110001100010111111001100011001101010010111100010110101010111000001111110100101001011110101011110110100010011001100001011010100110110011000110110010001110011001001001111101000100111111011010001111011110110010001010000000111110010010010000011110000000111110000000101010010100000100011000100101100101000100000010100111000111110101000101001011111010111011111011111001011100010010101110111001001111001001011010000111000011101001100001010111100011100010111011000101100001010000110010000110100101101000000100001001000000101111110110001101110110111101110000101111000101010000011101000111011010111010111100001001110111101100011011101101010001101111001101101111111100101110011001101110111111001000110001010111101011011010110111110000000101001011110010110100110111110100000100011010001111101010010000--------------------- +100110011001000011101011000101010100010101011110010111000110100111100000101000111100101011111001010110100111000100110001001010111001010001010100111000010000000111011110110101000101001100010110101101100011100111010100001100100001011101001010001111111011000010000110100010111110001010011011001110001010001010110100100010010101110110011000011101111000100001011011111000001101000010011111001010101011010011100111001000010111111011100101101110010000000001111001001000001000101100111101010001101010000010100100000010001111001100010010010100000101001101111101001010110111110000001111100110000100001011000001110101110100100100100111101110000001001010001010100110000000100110111111101101101011110110101001000011010101110000110110001011000011100100000110001000110111011011111101100000100011010011100110100001010000011101101000011101100100111010011110001000101010100101100100100001000011100011011000100100110111111111111100111100111011011101100110111011001111011111011110000111101100011111010100100010010000001001000110000000110110100010001010101010111000110010011101100111111000001001100001101111110000010100000101101101000000010110000000100111011101000111010000001000110011111101000011001100110111101100001001001010101101011110010011010100000010100101010101101001001110101111011110101000100010011000101101010101010100001000010100001010000000001001001011111111011010010011001101101010010100110110000111111100110101000010100011100011011100011100100001100011010101010010000011011010000001000011110000001100101001111001001111011011100010010101110100111111000101001011110110010001111110010101001110001100101110001001011100010000011001000010000001111000000101110100010110001110011000000100111101101010010110110001011101110011010001110100111100000011010111001101100111011000010100110101011101110011100001010101001011110111001110111001111111000011000111111011110001000100001011110110111000110110010010001100110000101011100010000001100011101111111000011101000001010110110011110100111000001000101001110111001011101010111000010000111010010111100101011101010010100110001001101110011010010111101001001111101111001111111000001111000101110001010100111100001100100110110111011111010001101001100111101111010010010000001011111100001100100100010010001011101101111010001010010111101001011100110000100010010011000100011000111011111110101110111110010111001110111001000101000011101110001000001001101101110010000011000111110101101010110011011101110011000010111010100010111100110001001101111010110000111011100101111000000000001010000001010001110111011001010100110110100011101000111011100110100100000000000000000110010000010000000110001111110111110100101000001000100101111111001110101011000011000100011101110001101001001001010001010100010111110011100110100110011101010010100001010100101100110100000111101110001100010101101111010100110100001100011001001001011110001111010111110101101101010111000111100000111001110000110101001010001011001101101011000111100011000100010000100111110100110100101100100111111010011101010100010010110100100011001110001101111011011000100000100001101100101110001110100101010011101110110111001111001001011010001001111011101111001010110000111010100010010000011101011001110001100001101110101001101001101111010001010110000100000001101111110101100010011010011001010100011011001100100010110100101100100010100111110001001111000110001010101110100101111001101101001010000001100000001110100001110111111110111110000001011100100010100110100111000111111001100100100011001111011100000110010000011101010000110101011110000110100010111111111111001101011111110111001010010101001101111010111111001010001101110000111000110111000010101011111010100001011111001001010111010011010110101000111100000100110011101100000010111101001011111101100001111010001111011110001011111110100110111100001011001010010111010100110111001000110100100010010101010110110000001010010100110011001101011101001101011001011101001110001101000110100100011010011011111000010011010010111011101010100010111100101000001110011011000010101111111101100100110001110001110111001111100100010111000011001001010010010011100101011000101101010101110001001111100001010001101001101100011010011110011011011100011001100001110111011101011011000101101010010010001011010111011001101010111001011101101101110000101000000100010010100100111010001100110101011110101010101000000011111100011011000001011110111011110101011000010110111101010111001011010011000100011100111100011001110100111010101000100011100111000110111101110011011101111100011011111001010010010111001100101010000010001000001010000010001001010101001010011111110100000010100010101011111010100110010011011000001000110001110001001101101101100010000001000100100110010100111110111100000011001010100011000011111010001101001000110000110110101001110101111111010011100000110000110001101111101000101110111011100111110010010101001101010010011011011001000001001110011010111000110011101001110110101001111111000011110010000111001111010011110100110011111000101101011111011011000100101001111000001101110101110100001010110000110100001100101001011111000000011010101001110100010101001100011010010110110101111011110111111001001001011110111000000101111100000110001001101101010011000001000111001111010011100101001111111100011101000011000111000001100010101110000011100010001011111011110010000110001110110011011--------------------- +010110111100000000001111000011111001100100101101000010110001000101101011001011010101111011000011000010011011101100111111011110000110001110111110001101010000001010010110111101010100110001001000001000100010100110011111101110001011001100010011011111011101000010010010010111101010010100010001011111011110010001011001001111001010110011110011100111110110001111100011100000011100100011001110110100011111110100110111101010000001011010101100110111001111001010001001001101001110010101101001100111110000001101010111100011110101100100000011110100101011000011101100011111111101111000010100001010110100100010001010011011110001101010111101000101101011110101000011110111011010010101100101000110010001101010100110100111110011010110000000100100111000100001001110110000010110111010001010001000010110110011100010001100111111101010111100000100001011110000001010000111110110101000100010100100011011101100001010100111001110001000101100010011110000011100110000100101010111001001100011011011111110011001001001111110100011001110101000010111001000000100100011111100100010100001010000001001100100011111001000010101111100100110001011110010000000111110001100110101111010011011110100101111010111100001111111100101110010101100000010011101100011100111001110000011101100110000001101101110010001010011110110110001010001000010110000000011111001010101011011010011010011101011111001011110011110110111010011000001000001011011001011001111111100111101100011010011000101111000011001001001001000000110110111001111000011100001011110101100011111011111110100101001110110011011001111101100101101100100000100010110110000001001111110010101100110010111111111000111001000111000111100000000010000100000000010100010010110111000110001011111001101001010100011010000110000100111101011000001101110100010101000111110000101000101001110110001001000011000101101001000101111111101000101000010010101001010100001000110001101010111010011001000001011110100111100100110010010110001010111010101010001110111110011100011000000000100000110101011101001000111111100111011100110010101010000011111101101100000100110001011100001101001111100111100100110111110001011001100000000011000100000001100000001101010100100100111100011011101111010101011111111000110101111111011001000101000000101001011011111011111110000001010011011100111001110101111100000000010111100100001110001011111101001111110100110110110000101110111001111110010010010000111010111011000101010110011001010111100001001000111010111001100011111111001000101010000010011001100011101001111011110010001001111111010111010110001001010000000111011110010110101000100010110000001000010110000111111001011110010100101100011101111011100011100110111010010100100111000000100000101000001110111010111101111100101110010000011101011100001001000111000110011100001111100111100011100000000100000000011010010111111101111001100110100010111101011111010101101111111011111101100111111000101010101011011100110001111100000101010100111111111110010000100000010100001011000111000010001110010100011101100101011011000101110001111111000101100001001011101110101101011100101100010011010000010110100010011001110010010111011001011001111010000100000011011001000101011110000001100010010110011000101011111000000010000111001000011001000101011011110110110000010001100011111000100001010010111001010110101100010111000000001111110010110111000100110010110110100101100010110110101100101111111000111011101010111001100001100010001001101000111101101011100001000000001111111111011101010100011011000011000111011001011100000110010000100010010000101001011100010011011000010001001001111000100100111100001111000000100011100010110000001011010011100110110100010101110010000000000000000001011001001001010011000111111111100100011010111100101001111110100110101010101110011101110011111011111011001000100101010110101011010001000100110010011000101100111001010100111111000100100000101001101001111000100001110011100110110000111010011010110110111011000011001010011000011001111001001011100010000010011010101101110011000001100100011101010010001100001000011011110101110001111010001101111100110111101000011010001111000111111100101001101011001010010110010010111001100010000010011000000001010011100101100100100010100101111010011110000101110110100001110101101110010011011100001100100001101010001000000111110101101001011011000111111100000010001100111001001001101010001101100101010001011010111111100101001101101001100110100010111000011010101110001011100110011000110011111101010100111010100110000000000111010011100010100101110000100110011010100000110000100011001011011001111101110110011001101100110010011110010110001100101110011111001111011101101100100000100011101010011000000001110100110100111010001110100010011011010110111010100010111011010100110110011110000000111011001100000111001100010100110011100010100101100001010101001100000010001110110100100100011101010011100101100100111011101001000001001001011110111010011000110010111100001101100100010000110101101100001000110100000000001110000001001101001110001110101100001111011110010000110010010100110001110111011110100010101000000001011001111010111001110101000111101100100100000011110011001111000010100110101111010000100101110101100101001111001011101001001000001111100111010111011111110100010010000011000001101110011110100111001010111110001111101110101100111001110101011010111001101001000011101111011000101001--------------------- +101000000001000000101001011010011100101011101001010100000101110110001010001100001100101010010110000101011011011111110010101000010010111011001000111110000010110101100101011011011000010100111101001010011010111101110001000100001101011010111010100100110111101010000010100100110110011011101111000111001000100000111010101000000100011111101111111011000010000011110001100001001011001110110010110000001111101111110101001100101101101110110101111000101100101100111011000111111101100000011011011111100010010010000100000111001001110011101111100100011110000111001101100110100001000011110010101110010101001000001110000111111111001010000001000100100001010010111010010001001110011000011110011011010100011011100111101111001010000010111110111001011110000111110011001101111010010010110101001101001111000010111010011001101011001011100001101011001010001010010101000100011100011110100111000110100000111000000101100110101000001001111000010100101111011110110100100111001001111111001110110000000111100011000111111000111011001010110111111011010011110001010010010001111100101110001110010000010111100111100011000111001011011000010001001001011100101111001010000111011011001111101101011010100111011000000101011001010011001101000110110110000011001100001011011000110010101011110111100111000101001100111101010010110001001100101101001110100001000011101000001010101000101110001101010011101101101000001101100000100000101111111110111001001010010100101101000001000101100011001011100011111110101110001110101001101000000110000010010010101010100100010101100110001001110111000010001101001010000110100000100111101100100011101001101111110101100001011001000111101010110001110100110010101011111000001110101110101101001101101000111101011010100011100110111101011111100101110000011100100000011101111101111111100100101100110010101010100011001010000100100100000101100100110010101001001110011011111001010010001100011100001001011010001011000111000101010111111101001000100110001111111010100000011110111100101011011010010111101101111101110110011011111100000001001011011000111010110011110101011100001111010000111110001111101000010100010111010100110010000110001111001000010111110111101110100101011000000000010111000111110100110101000000101010111100000101100001100110101011000110000011000101101000101010111010100101011110011100101000111001010110000011111001000010110111011100110101001000101100111101100000000001100010110110110110110000100100111111110100101010011101110000011101111101011101100100001010101110110011100001111110000001110010110111101000101110010110011100001100110110101000110100100110111101000111111001000101000101110100110000000001010000100111100110000100010011001000001011100001011010000011011100101010100111111101101011001011000010001110000101101110010011100000100001101101000100011001111110110001100000100010101011110011011010000100010111101001001110101011011101100111101111000100001000011000001100011010111100010011001111011001101001100100010110010101100100101111011101100000011110101110101011001011010000110101100011111001101101000011000001011111110010111010100001101010100111110010000110000111011101000011010001100111011001101101111001000111111000010101011010000011000000110100110000001111100010110110010000101110111001100011010110010000000000111001010101010101101011011111000011100111010010111111010110111111011011000011000110001000011001011111101100010000100000000101101110010111101001000110000101111100100110111011101101100101100111101000111001000101110010001000000010111010010001010010111100100011110101000110111110101001001110101101010111111100111110001101100101011010011111111110101011101101010111010111000001001001110000001111100000101011101110001111011110011011000010101110100101001001101101011100100011010110000110110000001010110001011101100010001100100001110000100001110101100001010011111010000000011100011110010011010010111111011010001110011110000011011110010110010111101010001001001000011101001001010011000100101010010001100000111100100111111110001010110011101000111111010110000000101001010001100110001110011010100000111011111111110011110001110010010111011001101001101111010110010111000111110100101101100011010110110100011100100111111011010101100011001110111001010010000101001100100111110101001010011001100111111010010001001111111101001111011011100001100010101000100000000000110111101000011100011111001100000101100111001110001010111000111011111101011101110011011110011001110101011100101000111110000110011001101110000011100100110000110000101000001110010000001111001010000110011010000111001110110000000110101001001111110111001110010100110110111010110101111000111001101011001011101010011001100011100001010101100001101111000011010101111001100011110101000011011111000000100110110010101101111011100111101000111000111101110011001100000000111111010011001000010000000000011111011101010011001011101110101010010111100001101010001001101101011110101010111011000101111101011100011011011100101101110000001101011011011001001101011010110010110100101011110101001011000101101100000100101010101111000011001101101100110101111011010010010010011101101100000011010101000010110110001100101101010100011001000101000100101001111001101000001000111111000011001110100000101010111001001110100111100100101101111101001111111010110111000000001011101010101011111001110010011101001001100001010100000001001111011110011100100--------------------- +001111001110000010011110010100111110001011011001001011101001100010011101000101111111101111000000100111101100111111001110000001000001110001100100011101100011001110100111111010011001111111111001101010011001001001111110010010101111111110011010000000001111011101010001100100010101000000000001001110010010000000011100001010100110010101000000010101000100110101101100000100110011000101100111000010011011101001110110100001111110101000010101001101111000010101011011010010110110000110001010011100001110000011110001010010100110110111111101100010010010110001100011001110010000110101001011101010101000010110001100001011010101001111001010100011100010101011100101100110110110100011100001010001001010110011000101101001100011011000101010011110100101010100111101001001101011110001100000001010110000010001011000110000100010010010100010011111001011010110001001010010110110001010100111000010011010010010001110001011011011100100111101010110010010111000110100011001111010101111010111001111111111010101101100110000011010101001100110111111111100010110110010001111111100011111101010111100101100010001111101001111111100110110101110000100010110000010010100111001010011010010000110110010010111101100111110110101101010010011011101011000101000011010000100001110111100111101000000010010110000001001111001001110101000111111101110010101101001101001011000000010100000010001100001111110100100010011100100010011100110010111010110101001000111101011001101000001100011010010010101111110101101001100011111111100100110001101100110111000000100111000100100001111000111100011010000011111111000110010001110100100001011110000011000000101111100111111011001001010001100100001010010110100011000110101110000011001011100111010011111011111001010101011100111011000101011001110011100011000100110100110110000100110101001100000100110010110011110110001000101001111100100000110110111000001011111101001111000100111110111001100101011010001100010101100100011100000001110110001110010101110011001111111101011101110011000110101001010010001010010101011000100110101010111001000010011010111101011100101000010110000100110110010100101001111101100101000010000110011000010010010011010110101011101110101110001001001100100100101001001110000100100010111010110011110010111100100000010100111101111110100001100011110001100111000010110011000010000101111110010000100011010100001101000001000000011010100010011000101100101001010101101001011001000101010000011010111110001010110100011100111110100110111001111101110100111000110010101101110011010001000010100010010000100110110110011011100100100110000100011000011010001001101000010110100001000011101011110110101110100101001100111110110001001010100011101011011011100001001100000111000111111111100100011111100101100011001101100011100010101100011111000111100011101010100110011111011001110001000010000111001110101110100010101000001010011111111110001100110000110101000101011100100101000101011010000111100010001010110010011001011001100110001100000111011011111111010000010101100100000110010000011011100000001111010010000001011100011100011100000100000010101010100110011000000010001010100101111000110101110111001001110010111100101011001110010100001110011011001000011001101111101111111010111001000001000111011111110101100011111010101011111101011101110000011100001110101001011010110100001001111000001010110111110101000011011000001110100100110111110111001011101110011110010011000100000000110101000000110110101001101101001001111110001111111001100111000010000101000011001011010010100100101110001011101110011101001111001001111111011110000100100000011010111011100001001011100110000000011101100011100001000001001100111111111011010011110010100100111011110001011111000111001000101011101011110000011011100010111010001111000110010010000011000000101101110010111001110111011011000100101111101110001110001001101101000111001001100000000001001001101100000100010100010110111000100001111010110000001110100110111001010000000111101100110100110000100101001100110110001111101010000001000000011100010000110000000110100000111000010111000100100010101010101010011001000111111110000000000101110001000111000000000000101001110101101101100101111001100001101011011011100011010110110010011101111011000011101010101011100000110100100001001110001101100100110000101000001101010100101011010101101000010100111110111011011000011001100110101100011111110101101010010101111010000110000100111000011000000001000010001011011001011111011110010110010001110011100100110011101110011101110110001110001110010001111001001110001101000111000010010011111000111000001111100100111001011110110000010000011111000000000010111101010011011101010111001000010111101001101011001010101000101101000111001101011011111111101111110011010011100100000111010101000111001101111011100010010000110000011100001001010010101010010011110110110101001101001011110100111011110000101000100111010100110000110101010110011001110101001010001000111100010010000000110110010110001000001110110111000010111100111011111000010100100100010111000100111000101001111010001100110111111101010000111000101101011011110100000000010001010111001010010100000100001111100101111111001111011000000000101010111011001001111110100010110111010000011110100110111110100001011010110110000110101101100101010110001100010011011010100010001011111111101110110110101110110000110111110111111101000111011101101111000011110100110000--------------------- +111001001011100010000110100100011001001101011111101010000010011111011111111010010100110010101010010111000000001100000111111111110100011000001100011000111011100001000101000110001011001101101000001010110010110011110010011001101000000101101100101100100011011100000001001010110010001010100101100011101110010101001011010010101000110010000110101110100010000011011000100000100011001100100011010001001011110111100001100010010011101101111110111010001000000111001010010111100101100100101010101001100100100111001100011110011000111100001110011010100100001110000011001111111100000010010101011001111010000000010010111010010011011100110011001001011111010101110110011111001100010001010001101010010011100011010101010010110010011111011000011100000000011111110110100101010001011100100111110110101100010111110000100010000111110001011011101011101111000100101100001111111011011001110110111111001011011001111010001010010000101010110100110011101000000111101100111010000110001111010010100010111101100111010110101111110110110011011011101010010101010011011011100000010110100000000010100101100000000001100110100010010011101010010111111011110011101001000011100011001100100100110110010011000111000000111000011011000001101010011110111000010111101111110010011101010010101110010011100101001000100000010111010011101001101101001100111011000011110010001010110010000011100010010111010001100100110101111000001111001001001010101111000011111000010000111100100011011101110111011000101110100000010111001110000110100110100000000011010000101110001011101101001011011101110110100101111101111001001000101001100010001011101111010000100111110111100111000111011011011001010011111011001101000001010000110000011000001000000010110110000011010001011001111010000111111010101100010100010001011000000001001010110111010011010001101110001101000110100000101000011111111110111010010100111101011011111011111100011101000101010011001000111000011000111110100101000000001000100001010101000100000011000000101111011110111111001101111001110001011110111000000010101001100101000100011101010001011000001000111011110001010011000101110010011010001011010001110001011010000110100111010011111011010011101011110101010100111110011101001011001101101100000001110001010011101000000111100110001110010011111001011100100100111110101000111001001100110010110110001101000011111111001000100111100101101000010011110000011100000001000110001011100011000101100001011001001010101000111110100000100100000010101111100101100111000111110001010000110101100000101000110011000111111000000111001000111101000111001100101110110111110111000101110101000100000001110010100101001011000011000010110101010100011011111001000011101001010111000100100001100110110000001110100010111010001111101001011101111010101101001101011001000011100100010101000110000000000010101001000101100111000011010101101000011101001101000110001100101000010011001111110111110100001001001011010000011111110111000111010000100101100111010110011011101111110100011100000101001111111101011101111110110100110001001001001111100000100100101101010111001100010110111010110010110000100101111101001101001001011111001100110101111010111010110101000100010010101110110000100110001110101101001100101100010101101010000111111110001000100001010101010000101101111011101011100000101100001110011001101110111001100010101011011100100000101110100101110001100010101101110101010010110001111101011111111011011110111101110111010101100011011011000100101001010111100011000110100011111110010110011111100110110101001100000110100011010101101110110100101100001100001100010101101111101011101111111011010001111010100100110100110011000010111011110110101000001101110101011010110101001110010111100010010010010001111110000111110100000000001110100100101000111111110010111010100111100001101001001000011010111100011111110100100110111100111110100000111100011110000101111110000100101010101101101101111010010001001001011010101001101101001111100011101110001000110010100101111000100000110101011000110000001011101100000111000101101111101101100011001101011001000000011001010100100000110011111100010111100011100111111111001010001111111001000100010010100011101110101011111001100010100101111101110100011101111011000111001101001001001011100110000111110101001001000001111110010011111011110010111100011101111100010000111111010100111100000111101110000100000111000001101011011111001111101011001000111011010101000000001001101010100101001011000001111100101011010100110101100000000101101100110111010011010011100101111011010010001001111000101101000010110110111011001010110001011011101110101100101000010101001100011011001000010001100010001100110000110000101101110001011100100010100110001110001010101011010001101000110100011001101000010000010101100101010101001010010100001011000011100010110010010011110010101001000111001110000101001000111101101101101110100101101001010110010001000010000101111001100011001101001111110001001100011001011011010111000000111011010111011110110001001001110110001101110110111001001011100110001110100011010000100001100011001111100110111101010010110111001001101111100101100101101111010101101101000100111011000001000111010100010010101001000011010000001010101111111000011011111010110111110110111011010010101000111101010000011010101110110100011111101011110100000100110100100101100100000001001011000100100100011011000010100101111001010001001111111--------------------- +ls240cwds +010101000101001100100110110100001000110111100110010111100101010010110101010011101101100011111010100111100000010011100001110010010010110000100101101101100011011101101000101100010101100001000101100001111110010001011001001111111100001001000111111000111111101111011111011001100111000111011001010101101010011110101111000011111000111111000100010010011000111101101011100011101010011001001111010100010001101011001010111001000011100000000110000001000100001100100010100001100111010101000011111010001000101010010110001000001011101001010010010100011000011001110011110011011110100100101101000110111100100010000100100000110001100010111101010100010001001101011110000101010011001101000011111000111010000001110100000110010011110100101101000110111010111110111110011110101101001111011101011111101001001110000001001001011000000001011000100100110101000001010011100001001101111011101111000111101101001011100010100111111101001100010011101101011011011101101000101000010001100011101111010001001011000110001100000011011101000000100010011010000101101100111001101001010011011010100100001010000010001101101101010000100111110001000001000000101100110100111001000000100111001010101010000100000111000110111011011010100011100101001100010001111010110111111000100100111101011001001010001000010010011000011101011101001101001010001000000000011001010010111001100011000110110111011011001010111011010000010101001101010101010111100111110010000011011100111101011100010010100110111110100001010011111011111001010000111010101001010010101001011110110110010111000011110101110001100111000110001111111000001001010010100101110001011010111000011111011011100111000010001101011101101010011001001100010111100101101101100010111100111111111111101101001110111111011111100000101101010110010000110100000110110111011011110000101011000010001000011100100110101011110101100100100101010010110001101111100001000001000110100010110101001000001101100000110001001100000010000011100010000011100101101100000110010001100100011100000011111110000000011100011000110111100011000110011101001111011100011100111111011110100001000100111001010100110010010010011000101011010111001001110110000000010000110001011100111011000010101000001100011111000010111000111110101000000110010101100010100101100010100010000100000111101111001110110101100110110111001000100101101100110000110111001000100000110111010010000111001110011010100010111000001000100010001100110000011000001111110001000110111011101100001000110111010110001010110011011011101100011000010010000111010100110001110101100110101010010000100011010110011011101110110001110010000111101011010111001111010011101010101111100011101101001001010100011100110110100110011101110001001001000100001000111011001000101001111011110001011000110100111011111110111110111101101100100010100011110000100010111001110000100110101011010100110110011100101001100010010001111110101001001100101011101010101001001000101101100000001010110111000001101001011110111011111100100110100000010100000100110111100110011101111000100000010011011100000010111001101001011000100011110010111111001001110111110100010010000110000110100110010110101000001011011001010011010000010010001011011011101111111111111010000111101001110011100100110010000000010100101111110111011111000110110101001010011001111000110110101011010101010000111100111110011101010110100101000110011100111110110001111000010011101101000001100110010110111111010001110100000001110101001001010110100001010101101001111110110000110011000000100011011001111111000100011001111100011000101001011110101110111100101101000100111010011000010101111101111001101100101101100011011010110010011110010000110000011010011010101000111111011100101010001000011101100111101011101010001101100100011011111010010100011100010101011100010010110001011000110011101101101000110101011001111010000110110011111101100010101100101100001110001001110011011101000000101100011110100011010111011111010101011000000000000100110001000111011010110100110010111010000011111010111100011001111110100000011101010101110110000100010011100111001000111001000000111111100100001111110011010011010110000101111010111110000111110110110101011001001111100101011000001001110001010000011110101010111111000010011010001110111000110110110001000111011001001111111110001010110010001001001011000011010111001111010101100000110101111000110000100011111001111000001011011100100111010101100100000101000100001010011011010110011011001000000000111001000110100110001000101111001111010111010100000011000101001110110111111011111000100101010011100100000111011101011001111011110011000101010110111101110101101000010001010001101011101100010010110011101010011101001110011101010011000110010010000110011011011110100100010101001101011000001100111001011011010111011000101001100001000000111110011001001101011111101101110100101100000111101000111111110001110011110000101101100011110010000111000---------------------101001110010101000111111010111011010101111001101110100110011101110100000100011100000011000110110010011101110100010011101000011010111011010100101000111100000100111001110000010011100000100110001010111111000111010000100001111111100000011100010011010110000010110110001010000010001010000001101001011011101101000111000101000011111111010000100110110110101111001010110101001001111010000001010101001110101110100100111101010100110011000001001010110110110110001100001000011001111001011101101001010001001001101100111101011000111011001111000101001010110010000001000001001000111001110111111011110110000010010000101101010011011000110011010001001100110110100100010011101101100001000010100001110101011000001010010010111000110011001110111000001111111100100110010000000000110011111110101001100000010000100111011000100001100101001100100010100110001111101100000010110111100111001110111011011001111011100101110111100000011010110111010111111011110111000010001001110011000110111010011000000111101010001100010110100101011001111110101001000110110100010101001001100000101011001100110000101010011011010010001001010011111111100011100001110011011111011110010011110101001100111001001100110111011100010110001110111110001000000000111101001010110111011111100001010110101110110010100101010000111110001111000110001111101000000010111001111000111010110101111101000000000101000000000010101010101100011010010111100000000100110111100110010111110000000010000000110111101011011011001001111000110100010110000111011100111010110100011010010010111100001101001011100101000011110010111000000110010010011011111100100101110111001010100000101010000101000100111101111010010000000001110101111111011111101010001101111111110100001010110010111000111110000000001000100110111110000110001010111100100010101000011110100101101011000100101111010001001101101110001101011011111111000000100010010000100100111000011100011110010111100010111111010110011011111110000111101101010011101000000001100111101101011101010101010000111001101000010011111000010011111110100010010101011110101111000111011101101000101010011100010011000011101111101110111100010101000101001000110001001110100111101000100010010000111101000000111111101001000010111110000000010101101101001111001000001000001010111010101010011111001110000111001110000110100110010100011110111001110000000100101001101001011110101110010100011011000010001100010101110101111111111100000100010101111100010000100111111111010100100001010100010110100101010111110000111010000111101101110111000000111110111111110111000000001100000110010100000001111011011100110101100100111000010011111001010000001111001011110100010111101010010000101110001001101100000001000011000001111101001100111111000000011000001001001111000000110000100001100101101100101100010000111111101111100000000111100110000011100011001101100100011000101001001010101101111110101111110100010111110011000101011101101101001001000010111010110001001011010001110111010100010101001001111001011010001011101000001010100111000100011000110010110111100011101000110111101001011000011101100100000001001111101011001111011001100100111111110111100100110010001101010110001111001111111010000101111111110001101010101111111101011100111000111011000101101010000111011010100110011001011110000010000000111111101000101111111010100100100110101011111000000110001001011011000011000010011000000011110001011101100001010111011110110000110010001001100110000001010001001100000110110110100110100001000100101111111001000101000101110010111000101010101000001101011011000010101011110000000011010111111011000100111011000001011101111010101100111000101111111111101111111101111000001101000001010001101111100111110010010110111001101111110101001111001100011101011101100101101011001110001000000101101000011110001010110010000010010001010110110010100010101010101011100011001001101001100111110000001110111001111101110101001101000110000000111000101001010010000010010000010100000001001000111101100111011000110011101100000010001100100000110010101101110001001001000111111001111001001010011101011100011100101100000001001010010011000011001101000011011100101111011100010100100000000000010001010000111001010010111111101010101101101100100011100110100011001010010111110001111000111010001101000010110000001000011100000110101010000010111001010011011011011110100110110101100011101001110001000111001110010001000110100010000001001011101101101110001100101110010001110101100100000100100111110001110111001100110101111000100111000010110101010110111000000110110101001000111110011110011101010010010011110101111011010101001000111000000101111000010000010100011101110100110001101011111011001000001010000010010101111000011100110111011011000011011111011000010100011010110010001000000001101010011100011011000100111101000010011100101010100111110010010111000001110111100100011011011100111001001111000001000111010100000011000101100101011010101110011011000100000110101000000001001011000011010001100100011000010111100111010111010011000001000010011010001100110111000011110001010100100000111111011000010001001011000000111111110100111010011100010110001010111011010001111100001101010000110000001000101011001010000010001100110110001010100100001001111011001111010001110111010100000000010011011010100111100101011010101000101101010001110011100101000001101100010110110110100100000110110000000001101010101011000101111010001011001111100110100101010101111011101010010011010001111000110110011010000001010010110111110010111101110011011011010001100001110010111111001100000000101010101001000101110100010100100101011010011010100111001110100101011011000111100100000001000011111000000010001000000100010000001111100010001111101110000011111001000010100011101111010100101110001101010010000000010000111010101011010011110000011101101010011110010110100000011111010011110010111111010001111010101100001110011111001100100000000000110111101110111010100100100100010111001101110010001010111011110000001000110100011101010100011110111011101001001111001101100011101000001111010101101000001100101110011000100111101100001001000110111011001011000111101110001101110010101110110100000110001101101110000101100101110010110111111011100101001101101010010010001110101111101110101110001011110101110000010101110110101110010110110011110001000001101011000011010110111011110001001010010100111001111100111111000001110011011000010000000110100110001101110100000101010011110011100111110110011000111001100000000010001101011010111111100110110100001000001000111111111101011110101000110110111001101011011001100011011000010100101011100111110011001011010010001111000001000000110100110111010100010111110000000011101111001110111010100001110111011011010101111000000011100111011100001111010001001111111110000101001011111111100100100000111111101101101011101110011101101110100000001000010110100000011111100011110101110010101100111001101110110100101010001011001001101000100111101110111110001101110100000101010110111101101101000001011000000001101011001110010001010001011101101000000000001101001111110001010011010101100010101010000001011110100101111110101111000111010011111000110110011101001101110110011001111110010101110101001001100110111101111000001110010001000100010100101011001110101100111111100101011100001100001111110110011010011000110001000011011100100111010101010010000110010101011011101110011110110101000101101000101110101100001001001010101010101100011101010110100100001101101010011110011011011011000110100010000101110101110001111011110100111100001011100110010110011001011111010010001110110111100100110110010110010111111111000000100000001000101111110111000111100010001110010100001111101101110100011011011011101011011001011000101110111011110001111100100010110100101111010010011011001001001101101110101100011111001110100011001011001100001010001101110111010010111101000110000010101000111110101110001001011111000101111101010011001000011011010101000101010001100100110100010011011010010000110100100001101000000001010111011000001000111110101001000010001110000111111101011100000001010010101100111010010100000010110111111110010000011101001010000110101011111001011001110100100100110001100001011110111111011000011111101111001010110110001100000101110010000100101000000001100011101010000010101000001101000111100110000111100011110011010001111000001011010111110100100000100011001010111001111011011000011111000001010111000100110111000011010100111001001010010011001001001011011000000010111100111111100001100110101101110000101010101111100010011111100111010101001101101111101001101010110001100101000111001101000011010110110000000000001010011010111100100100101101001000110100110010010100001001101111101000101100010111010110011000101001010001110010001101101100000000001010111101001001100111000010011001111010010111111001000011100000101001101011011010011101001110101101011110010111010101011010010011100001111001001011100110111000000000010000100101100101100111111110001110101110101011001111101110101101011000011010100000001000100010111010011101010111101111110011011001011011010001001011101010100010000011100110111001101111111010000101010000010110000101111011000100001101011010101100000011001001100111011011111101001000010000001111100101000110000111010011011101100010111100110111010111011110011001000101001001000010001111111111110001101000111011111110111111110011111000111010110010000111001010000001101010011010011011110100001011111101101111111010111101111110110010101010010010011111101101011101011110010000100100101101101101110011010000100111100010101101001001100101100110011111000000010011010110000001001100100110111101000110101011011011000011010100011110101111011100000101001111000110101110101000101111011001010101110011100111110001100110101101111101101000000000101111101001011101011111111100011100111100110010001011010110000111110110101110100100101001100100011100010010100101110000011001001101010110110101111001110100010011110010001111011000011101111000010101010001000011101110101000110001000100101001011111111100011100101110001010000101100000111001110000100100000001100000011011011110111101100001110010101111010100010001100011000101001110111100011100001101011110001000000011001111001101000011101101111100001100111011011110001000101010010101101010111001000110000110011011101100100001000000010000101110110100000110000001100010101000101000000001001010011100111100111100010001010101111100000000000101101010100000111110001001010101000011000111111101110001101001111001111010101100111100001000001101100111101111101011111010000011111001010101100010000001111110010110000001001111001101110111100010110111100111011100000010000110000100110100011010101111110001101110101101110101011110011101101110000001011101101100110010111111011010011110111010011110000011011001100011010111000001000011100111000001100101001010011011110101000110110000100101000000011110101000000111010110000011000101111001000011001001111000111100111100011111111101111010011001001101010010110011001110001101110001101011100010100010010000011001110111111110100010110001011010000111110010011111100000001010100011001101000101111000101000110001011101111111000100110110011100000000101111010110100100001111001001101000110001100110100110000011111101100001110110110110110101110010010111011011001011100101010000001010111000011111111 +010011011010010101010010010001101111101100100110101001000011101111110001000011101001110100001001001111011101100101010110101010000000000000110001101001100111000111111111001011111000011010100001001100111010110100100101100111101101111110000011101111001110000101100000110100011011000011101010110010111001011110011101000110100001011011010000100110000010101010100110110001010111101100010000011011011100111110011101110111110001010101000001101101101101101001000110010100101000101111010010011010001010010110010100110111110101111000011111000001100100010110011000100100100000100100011011000010111101111100001000100110011000011001100000100101111000000000011100000110011001000110100000110110011001100111101011000011010010011101111001010010101101101000110101011010010110100010000001111111000110101001001011111101010110111001111010110111110010111110100110000110110110100011011101010111110101111000101010100000010000011011111101100110100101100100000100010101110101000011001001001000010010111111100001011110011001110100101110110101110110001000100100010001011011100011000100110110011101111001100101001100100001001111010001001010101100000011110111111000111110001111110110001000001110010010111110001000010111110101110100101111111011011111011100010011101110101010011001101001000111010011000001001000001011101111011101111001000011011010000000111011000001010101011101111001001111110001100110111000110010100010011111110101001100000001110100001001101111010000101111100010011101111000001101110010101101001100000001100100011111100101110100001011011111000110100101101101011011111011011010011110111000101111011110010010001000100001010101111011010111010110001000111011001101001101011101010111111001000110011101011101010000010000111010110101010000111101111111110111011101100111100000100001101010001000000110110100111101101101010101110010110011010110101011000011110010010111011100000011001000010011100111001000011110111001000111110000110110111000011100010111001010011001000101111001011000000111010110100100100111110001010110011000011110010101001011001111000011100101101100110000111011011111000100010010011000010111110001001010100100110000000100111101101100010111101101100010110000011101000011001011111100110101000001011011001100000001010011000010011101011101010010011101000011011000110110000011111011000010101110010000001111101100110011110000010001001001010100100101001111110011110011010111011101001111100001110011110001100000001011010111001110011111101010101011100011110011111001010010111001010110111011101010100111001010101001000000111100111000010010000110111010111101111111101000000110000111010101101000000001001001100100011011011101101111011110000101010110001001110101010001001010010011011100010111101000010001110110001100011110110111111011110111101110011111100110000011001001000110100110001111001000100001101011010110001101110000110000011100101101110110000110111000001100110011011011110011010101101000110000100010100100100110101110110111101000100111110010100100000100111001010101111011010110101111011111000010010011010010011100111001111001000101110111010010010011010100010101100110110001000011011111011000111101010001101011110010111111100011111001000111001110001110110011010000100100010011011001001101000000101100111110100011101010001111110111001100001110001001001000000001001000101110101000111111111010110011101001011101000001101001101100101101001111010101011111100101110100110100011101110010001001001010000000011110101111101101010011001010111110100110100011011010011101111101101100011110011011101101010011010011111110101100110111000100100001101010011101101001001000001100010111110110111100010111100001011110100010100000010100111100010110111001011000101110010111111110000000011011100001110110111100110110010001001001110110001010000010101101000100110111001110111000110110011101001101011011100110100111000001111100010010010111000000101000000010111111001010100111010111100010000101101001001000011101011001111111011011010100110001011110001011011011111010011100010111110100100110100110000100001011001101111111000101001000000101010010001100111001001000111110100000001101101100101100101110110110100111100100011011110100111010110100000000000000101001101000000110100010011100110100100000010010110010010011101010001111100110111100111111110011101101101111000011001001110100101011101100000101110000111111010000100111010100000111110000000110110101001111111001100111000001011100101011110000010111011011001011101001000011000100000010011101010011010000101000100001100001101110001010000000001000111110001010100001101110110100101000001010101111010110110001011000011011111111011110101111011000000000110110011101000010011110001100100001111001011010000011100100110101100001011010110110010001101010011100001011110010010001011001010101011001011100011000100000011101100011001100001001100011101011111110001110101010011101111010110---------------------101110011010011001001101111010011100010001010101100110001011110010111011111010110110011000010011110001110101001110100011111001010011001101011110111000110101001011010111111111111000111110100010001101010100000000101001100001111110100001001011111001011001100011001101010101100011000010111101000111011001111011111001010000110111000111000110011010001100001111011011110110000001100101111101101101010110010101100011000010011111111111010010111111011011000010111010001100101011101101000010010001110010111010000101010101010101010010010100111010011011000101010011100101100101010110110011111101110011101000010111110101101001101111110000001011011001001110101111100101000100101010111011111110110001010010001001111101000101001100011100001100001100000001100000001001001000011111111100001111000100010100100101100101111001101110010110001010101100100100110111011000010110001001100011011001001001110011101110010000010111111101101111011001011011001011010110001101100011101111111110101101011110111101010100000000001100001111111011010011011010111001010010100011011101001101000011010111101101100111011011000010010001101010101101101010100101110001001111110011111000111101011101110001110110001101100101100010011100011011100000000101000111001010110110100001100110110100010101100110010100000111011101100011001111001000110010000000001101110000001101110011010110110011011111110100100110110010110011110010001111110111110011010001010001110110000100111010110101011001101110100011001101100001011001111110111000000000000101110010110100100010001001100110011010101111110011001111110000100001101101010100001011010011010111111001000110100100001011111101010100110011001010000011000011011111000110001011001101010111011010010101100010010111001000000011001001101010100010000111100001011010101011001100010010101101100101001001000010010000101110110101001011011101011101111001010101011111110100110111101100100110110110011000001001011111110100111001010010000000110110001010110001000100101000010101001101101001001100001000000111101111111001000100010010010100101111111000000100111100100110101010001010010000010010110111101111001101110001111111001001011011101110111010100101111001001100110011111100011111010001111111100011011011101001111111110100001011101011101000001110000110001000111010000000101100001010111000100000110011101011110100000110110011000100011110110010100100111010111000110100001111010000011011001100001001000000100100001010001001110111001001100010100011100001010100110110010111110010101110110111000001111001100110010110001101001001101010001001001110011011111101111001101111111111001100101111011011101010011101101101001101011110100010001001011001010101000001101111011111001000001100110110011111000010010001110011010011101001001010101010101110001100110011011100001101111001101001110111111000011110101111110000010110010111010111110101100010011100000001000100100011011010100000111000101110110110100011111110100101010001000000010001000011000000100111101000011110010111010011011100100111110010111111001111011100000110001001100110111001010001110110101100010110001101110000100000010100111100011111001111100110101101101101101010100111101100110011001011000100001101100010010001011101110110100000101100101011010100010101100110001010010000001000100000001000011100001010011101111001101000110110110010101000100010101001011000011100101111000001101111001101000001101000000100110011000111010100011110111000100110001011111000010101000101100111000011101101000010011100100100011000010011110011110111000100010010000011001000010011100011000001100110100000101100101100001000011000100110011101110111100010001101001000100011011100101000110011011101101111010011001001010110001101000000110100010110101001010001101110111111111010100101011011000110010000110011101101011101110001101110100010101111011000010001100000110110010110110110011011011010100000000000100001000010011111011001110101001100100110101010010011111101010011101011001010111000101010000111011111101010011101001100111011100000110010100011101011100110101011110100100010101100101000110000000010110100010010011111011010011101100101111001100000000101000111001000110110110100011001111100111110101111100101111100001000111011010001010111001000011011110010010000000110111110100000101100010011010111001101000010010101100110011010110011000000110110000111101101111110011011010101100010010110110010000010110010101101111010000011001100011001010101110001111001111110110100101111101000110000101101100001010100010101010110101110100110000111101110100111111010111101100000111000010001100110011010110101010111100010110101101101001001010000110111110001110000010111110101111001100011111000100101000000111101010101000001100101100010110001011001010010001010011110010010010100001110010011010011001110100110101110010000010010101101001010101100011100000101000110101101001010001101010101010110110110110001011101110001000100110000110001001100011001001111101000010111110111100010101011000110101000010011110001101001110010101000001001101000011001001101111111101000101010010100100111011101101001100001001101110111100111101000001010011100001011110111111001010000011101100100011111111000011111001111011001101100001100111100111001011100101101110110100110111010010010011011001010000111101101110000111010000010110001111111111000110111101100111011101110000110010010111111110000000001000011011000110101101010101010011010110010000101111010011101011100100001001010111101011000100001110111000011101001111110100001101000110101001010100010110101100011010000011110110110001101001010000111000011011011010110011110110101100000011101110000100100011011010111111001011000011000110101111111111011001000001100011101000000010111011110100111010000001011001111100111001101010010001101000001110000111000111111110100100101000101111011000111100010101010111010011101011111101010110011010100100000110001100100001011000011110000111100010100110110010101010001100000001111101001001001010001100100101101011000111010001101011110010110010100111111011001101010111001010111001101000100001100010100110100110001011000011100010111100011010100010001011000010110110101110011111110000000111001100101111101111110111000000111010100011011101101010010011011010110101101110001110001010111100010011010011000101111010100000101101110001011110000000001110001010010001111111010101000001100010110000110111101100100001001001000001011101000110101110110001011000010001011100101111111010100111011110100011011010001100000100010111111011011110000110010111000011100110111000010100100010110011011001000000111011010010010101110000011011101100110000010000001110011000110001111011000111101000010100011101011010001000101100100000001000110010111100000101010100100000111101001000011001000110001001000101010011100011000011010010101010011001101100100001110011111101111111010111011111011011001111011101000011010110000111110101101010110100101101011100000010110010011100110011001101001010110011000001110110101100000000111110010000011110001101001111100101101100010100010101001100101100111101011101111010011111110110000110111111110110101011110001111110000000010100000001011010011010010101000011000101101111001110111000100100101000110000101010000100011110000001101000011111010101001011010110011110000010101110000011011000110110100110101110001100000111101100111110011101101000111011010101001100011110101111100101110011101101010110001000100001000000000001100010100101111110101000000111011001111110110010001100000101001011010111000010001111011010111011110011011010100001110111110101100010010111100011011110011010001110010010100100110100110001100001011100000000000110000110010101100111010110101111011010100000000110101001100001100000011000001010010100001110001001110111000100110100101000001100000101111100011111000011001000101011001101000100001000100110011000000001000001001100010101101100110010010110101111011010101101100001100001101011101000001110100101010111111011000000110101000010101001000010010001001010001111001011111011111110000000001111100001101101010111110110010100001010010100000110000011101000110010011000000111000111011010101100000110000000110100100011111011100011001000101011101001001110001100110100000100100100111100011100001111111001101111111011101110010010010001000111000101111011111111101000111001010110000000111110110110101100011001010110000111011010000110011101101001010001000011101000100010110111001100011111110001001010110101001010000101000111000110110001000101100011010111100000110011000100000110100010000110000000101011111001010000001001011000101000110101111000100000111011001011101100100101010001011000100100001110000001110100100101011001101101010101011101001111110111001010001011110011100100001001011011111111110001000100011101000111000111000110001000110111111011001011011101111011011110000101001111111010110100110001101010000001110001100000101011101010101001001100100011001101111101111101111001100100000110111110010001011010010101011110001011011101110100001110101000000010100101101101100110000101110000000011011011101001000111110101000001010011001101100110010010010001011011000101000000110100110010111011001101001010010011000111101010101110010101010011100000010110100010011101101110101100000100010000101101110000111100101001100111101101111000011111101011001101110100001101001100111011110110111001000010100110110110101101111011100010001100001011001011110100001111111110100000110110100000011101010001100111010010001100101010111110101100110101001101000011111111001101010111110001100101100100010100110101100001001001000111100111100010101001010101001010010110101110000110111000011001000101111111110110000010011001101000011001001011000101000010110001000001110101110010111010111100111101101101011010100000101111000101110010010111000110010001010111101010011010100111011100110011110111100101010101011000001001111111111110111001011111100100111110000011101011101000011001011100011000011111000010100010111110100111111100111011101100011010011111111101001010111001101001111110100100001110010010110110001011110110011110101110011100011111110111010100110101100001001000100011011101011001001010110110111110000111011000010101001001101010101100000001010110010011110000000001110001000010110011110011100101011111001001100110010111111001111100111101011100000101110010000100010111000011000011111001001110001110010001011111000000111000001101001110010110011001010101100011101111101111010110011111100101111000101111010011110010000010011001100001011001100100010010101011011010110011101100111011001001111011110000111011011100110111100000101000011101000110000111101110000110000000100111000111101000111110101010001110000011001110000111011011000010011111011111000010011111111011000110101110001010001111100000111000101000010000100101111001100010111011011101101010010111010001000100000010111101101101110011100001011111100001101000001001011100100011011101010011111111010011111110000111000010011001110100010111010000011010000011100100010111100111110100111000001101000001111100110101110100011101001101101110101010110001010010100101101000111000100011000010111000001111110111110110010100111100101000011100110000101001100011100000100000011111100111010000110110100011100110010011001000011101100100110111110011001000000100000010101101010100010101110100101000101101110 +111111101110001101001001101010011110101110101011010110110000110101001101100000101000000010111101010111100000110100000001111000101100111101000010111100111101001011011011000111010011010110001101011101110111110001011100010101100111010000100001111110011011010101110111000010001101110110101110001101010111010011001001111110010110010100100010100110101101000110111010001110111011000011011100111100001011110110100101010010010111011110101001111111010010001111101010001111000011011010000111110100011001101111111000000110111110111001010011010010101100111000000100110000100100111001100111010000111001110001101110111010000001001110111011111001011110100101001110110111101010000101001110111010001011110100010010011011000010101100110010111111001100001100101100111001001001011001110100111111110001100110110100001111101010010110001111000101001001111100001001010110111010011000110011110010001011110000110110011101110011110111010111010000110101111001011000100100011100010011101001010011000101001100101000110111001100001011010101011010111010010110011011011011101101001010001010100101001011011011000011100011001111001000011101001100111010100101000001111111101111100110000110010101111011101100110000001000010010011000010011010000110100101100100001111100111101101101011111000010011010100000000010100011010001111001000010100001101010001110001110011000100101100101001001001111001100101001100001100110101010110110110001000100111010101100111100111011011010101100110110101010110111111010100111110100000001001001001010100010111111010011111101110011101110101001111100101011111101001010001001110101110001100000001111100110000000100011100001001111001111110001110010100111001101110100111011010100000100111000110011010101001011111110110001100010100010111101011101111000100000010001101110011000011000001001000011101111000111101100111001100001001111100011100100101110111101001100111000110011010011101001000011100011001010011010000111010010001100010111001110100011100100000111011100100111001011110010010010010111101100010000010001001100010101101110001110000000101000111111111110110001110101001000001001011000011010100110001011111010000100110001111111011001010000111011110101010000011010001100110001001010000110100101000010100100010011110010010001110100000100110000110001011110010110001011101110110000101111011110110110001001111110000010001101100010100100010011100100010011001011000111100101100110101000011010010000110100111100100010110010110101011011101000110111011000110100000111110100001111001110000110110000011000100100001110011010101010111011101111000011010011010110010100100010110101001101001101000111001101111100110101001001011000010001110101000001011011001000000100101100010001101101011001001000011010001000001101000001110000110000101111011010111110011000111010000010111110111011100010001011110100111011010011001101110100010111000000010111110100100000010101010110110001000101010010000110011101111010100101011000100100101001011110101001001000101000000001111000010010111110100011101010111100101010000000100000101111010100110011010010100100100000011000111111111010110100101000111011111110001000010001100001010111010010001010000101101011100111100110111010100100010011000001011101011110100100010011000000110011101110011011011000101000010001101100010101110001010000001111000000000000011110011101000101011001001111110110001101100101010101011110111110000010101111011011000111010100010010000111111100000010111001010000111111111101001010000111100100110111101111100001100111110100101010100000011000011010001001110000011001001000011100000000101000110111000011011010011010011010101111011111110011000111000000100100111001101110100000111011001101001010111010001011100010110111111011000110001111110100000100110011000100000011100111111011110100110101001001010011111001111001010000010111010010110001100010001111001111011110100010000110110001010010101001000000011010011011100111011111110110000101001011100000011011000100100110000100010010110010100000111010100000001110000110111101001101011011100100111100111011011001100101000111101011001010011101000110001010110101101100110111101010100011000010000000111000000110110001110100100001000111100011110101100111010011001001111110000111101010010101011111100010010111001010000101100101011011000001000100010100110110110011000101000100100000000101111110101000001111011000001111011101111100001010001110010001111011101011100110110011010000110010100011000011100010100010000110111101101000110001010011000001111001010101000011100110001000010000110010111001010100001001100000110011000000001011000110111001000111110000100000111010000100010111001000001010100010011001010010110101001100110100010010010101110001000011000010001011000000100011111010100110000000100100011000001100001001010011001001101101001010101111110100101111010101001001110000101011101101111001011001001100110000000011110101011011101---------------------101111000000110011110011111001110100110000100100000011101110101100000010111001000000110101100011011101111001000001011001110111001101001100011101111001100010010001011011011100101000101111111111010100101010110010000000111000011001101101000000110101001101001110100010110011100111010010110100100000111111011001110111001001010001010111010011100111110111100100001000001010111000110010001110101100000001101110011101111111101010011010010001111000110000101001110010110001001011110001100010100011001100001101111111010001000010000101110110010110100110001001011000010111001110011100100110001101000100000000011011001110110011100001001010111101001011101010101111100101010101110110000110010100100001101100010100100011100011100101000100100100011011000011011001110111000101010000111100110001101000011000000011010100001000011101111100101110010010000011101011011011111011010101101101101110100110111101111011000111100101011101100000111100100100001001010101110001111100100111001001010111000000001110111000110000001001111100110011100010001011011111100101111100111101101000100110000010010101111011001011111101100001100101000000001010111100110011010101000111111001101001011001001100111011110110110000110001110010100111011101100000110011001000000011000000000110100110011101111110011100111001110010000110000000010000110111000111110001101010010001110010100110000100100011100000011110111010100111011111100011011010101101010011001100100010110011011000100010111110100110010101110101011011101101010111001011111011001001010111011111111010000100110001000001011111000100001100000001011000101001111000000010110001110011100001110010010110010000000100001110000100101001111100011110010000110001001011010011110100010100000110101011100100101100010101001110110011011101010010000001000011000100001010011000001010110110000111101011011110110101000001010110110001010111011100011001001010001001010100111111110111010111011101101101001111101001001111000101010010101000100011110011100011001101101011001110011110101011111001101101001100100011001101011100100100010000110100000001011111011001101001101001000110000001100110101100011101000001100101001111010010111000010000110101110100110010000111100110010101010011010011010010111111110001111010011101101000000100100000110100101011101101001000111111001000000010001000110000101111100010000101011110100000111111100101110111011110000100101010100011110010110011010110110010110110110110101000000000011100001110010111010101101011111010010000011101100100101011101001110000101100111000101111100000101101000010000110111000010010100001010001101100101100010100101000100010001010111011010011110100010110001010000111110010000001010111011100010001110011000001101010111110001001101100000000100100000110101010111101000011001100110000011010110011011100001111001111110001001100010111101101101101011001010001010100110100000100011011100100111010111000101100011111000001101001100001010000111101000110001101011111101000101111001111001010110000001100011011110001100011110010101110110000001110110101110101010100010110011111000110000011011100001011110100011100100100100001011000101011010101001001000001010100110100111010000000110010100101110000010111101010000111100101111101110011100111000110110001001111100100011101000111100011010100110101100110000010000001010111101101100000000101011010010101011001001001110110001001011011110111000010011100000001000100001010011100101110010001101101011100000110101010011010010011100001001101011101111100101101111110000100000001011100100010111110100000100111001100001000000101100011000110100010111000000111110010001100111100001101000110101111100010010000111100000100000100100001000000000000010011101100000100100011111110011001111110000001100011110010101010100010000000010011010010101111111011010110010101001010011010000000011001110001010001011100101011011111101110010111100011110100101001100000011100001101100000010000001101000000001111110101101001100010100111101100110101111110100000110010110111101110000100111000100011011001010000000000011110010000100001011001001110100011011101000110100101001010111000110100100101010100101100000111010111010000001000011001010100100111110000100010000010001000000010000011101000111111100011011000111101001010111011010110000010000001011010101000111000110101001101001101100100010010101001100001110100000001000111001001011110101100010001011011001110000010000110010100101001001000000000001011000100001111101111111011101011101100110000111100000101111011100000111001000110010010000101001100100011100110001011110011001011010110000110011010101001001000111101011000011011001100101111110111111111010011101000101111101110101100101100001110010111010011111111110110000111001100101011101011110011001111110100110111000000010100100101111111011101011110011011110000011000010100110000000010011010010000000000111001010011001110100111000000110010010110111110111111000100010001010001100001000011000111011010010000100101100000001011111110110001011001001111010011111010011001011111011011010110110011011111111000001110101001101110101010010010111100110011010000010000111110001011010000100010001001010000111110110011010001000010101001111100010010101011001001000110011011110101110000001100010010000101110101100100010010001111011100111100000010000010010011100011100011110111111101001000110111001010101000100011000100000011001001010101101111110111100100101000001101011110111101000010011101000010111001010011111111101001101100100000110000100000101011100000011000101011110000011111010000011001011111111101011100001111001110100010111100001110111100010011110011101110000000001011011111110000100010010001011110011111101001100000010001001100010100011111111111110000000100000011011110110010010010110001101110010111011101001100111001011010100001001001011111011110111011011100001100010001010001010011101100110010111000001111110100010110111000111111101100010000101010100110010100101011111100101111000100010111011101110010001011110001000101001001110001100011100001111111100010000110110011000100110101101100101000110111110100101011010010010010101000000101011010011000110011000100101010100100110110110001000001110100111010010100010111101110110101111111110010111010101111101100011100010110001000100101101110010110010110110011111110100000001011100111100001110000111111101010110101111110010011100100000100111001101001110011101110110110111111101101111100100001110010001001011100110110011001101101101011111011000111101101001000011110110100011010010110110000111011001011110110000111011101111101001110111110001000010000011111100001111110110011100010000100100100110110100011100011101100010010110100111111011001110011100110010111111001000100100111111110110001100010111100001100011101111111101111100101011101100110111010000011111000111101001110010010100110111010011110001101001000011010001101110010111101001101010010001001110001000100010000100101000111111010101001101001001111011001001110111010110001100010111101101000101110110000101001100111100001101111010011111101000011101000111110101011001000000111001100010110011001000101000011001111010010111100010111101010011001000101000111000110001100000001011011001010011011001110110100101111001100100111001111011100010000100110011101111101110000001110001110111010100101000100001011111011001100100110000110111111011111001001001100000000100101010101000000101001111101010010000001100000010011001000000000011111100011100001100011101000100111110101101110001111011101010111000110011011000100111010000010100110101010010100111110111010110100001101110101101000011010101110110000010011100111111000001101100100110111101011100011111000001111001101010010011011000001010100111111111001001101001000100010001011001101011100001101010111001001001100110000010000101010010010000010011110100110000100110111010010011111111111110000001100110111010110100101000001000011111111011101100010100100001110110100111101100100011001000101100100110000111011101101001111010100101001010000100011110000001111100110101111100000011101110010100110101000001011000100101100101110000001101010100100000101011011100000000001001001100110101011010111001101100101011011001111100001000111111111011100001111101000010111000000000000011000101100010100010100001000110010000111001011110100101111001011001101110000110000101001111001010000001101101000010110101110101101000101011001000001000000100001001100001100110101100101111000001110010011101111010010001010111001101001111111100100000101011110010011000011100110100101001010001100100100101101010011101111100010100001101100111101010101111001111000000001010010110101100110100110000001000011111111000101100001100010000000000101000100011001010101010001000110011010000011111010000110100000111000011101010111100111110100000001010101100011110110010011010011010000001001000000100001110001010000111010011101101100000111111100000001001111100100010111010111011100000010110100110101110011101100000111001000111000011010011001110110111000111100111000010001000111000001100011000101001100001000101111101011101001001101010111111110100001101011111010110001101000011000110010000011000101011101000001101011001111001000001011111101111000110100110011011001000000110010100001011101010011110000001100111000010000110100011010100000101001111111001111111111010100110000110001001011011000111001001101010101111000101010011001110101101011101001111011100011001100110011111011100100000011001000101100001010011010111001010010110000001010000001010001101101000001100101011110010110100000110011011100100111000100010100111000011000101110001110110101001000100100100101110000000100101100001000111111110000110100100010001111010111000101110001001100101001011001111101010111011111011010100110000110111000011101011110110011000010101111111001011000010010000110100011001101100000111111001011111101000100011101011100010111110010000110010011010011100100100011100011101001110110000101111011100110100100011110000111000011100111110001101111010101100100000100110101011000001000101010001111111000001000000011011110111000110101001110100111111101011010011000110010001010001001000101100010111101011111111011110101101001110010111001010001000110011100000000000001011101010010100000101001101110001111010100000000100111011100000111101000001100111010101110010100000000101100110110010100100101101010111011101110110110100001001101111100000011100011011101101101110100000110010000100001110111001100100111111110000000100011101000110001011100110000011111111010101001101100001011100001110011000111100110000100001110001101100000111111001110011101110011111001010100101000010000010001100101000100010010011100110010000001100011101100110011000000111110011000000111101110111110000000001111100110000010101101111100101110011101111010000110101100001010011011100010001010110110101100100000001100000111001000111101101011001101011010001110001001110100001111010001000000011001100100110111000011011100000001000000000010011010101101110101011111011010110001111001001001011100011010101011101001001110101010011001110010001010001010001011100101111010110111110110100101100110101101100100110101010011111011010011111011100110010100100010011010110111111001111110001010111100010011111100001110101111011001110111000101000001011100101100010110111001100110110100110000110000110110000101101011110011101001110101 +110111010111111101001000000000111010000011011100101101010101001010000100101100001000101111011001010000001010111000111010111011101101101000100001010001011101010110000101100010111100111111010001000110101011001011011001101110010100101100010010100010010011011111011010101010100011001000111010100101100000100001100011000011100011011100111111101100100001000000110001011100111100010110101010100110010001000100111000001011111011111111010001101111110100011111111011011101000010000000010001010011110000011100111101000100101111111101010000011000110100001000000101010100111111100011111001100100000010111011111001100001011111001010100100111001011111011010001001001011001111000001000011110110100001000100011111010100000010001111111000010100100111011011110011101010111111010001111000100110001110101000010000000010110101101011111100101011001111101100001010001110001001000011100000110111111111010101001000100100010001101010010001011010100010100110010000110110001111001110010011101101111101100000110001000101100001100001001100001100111000111000001000101101011110000101011011000110110001000101011110001100010110110000111111111100100001010100110101010011110010011011110110111000001011111000111110010100101100000011001001110001111111010100010001010100010111100101000111101011011011010001011001110101101110100000110010111011111000011101111001001100001010000111001011100011111000110110011101011011011010111011110010001010100100001000010111010000000000000111100001110111101010011011000110001011000010101011010010010010111010001000010010111001100101010100101111111000100110010011010000101111101001011100101011110101000100101110111100100110110101100110110110011011100101000010110110111001011110100101101110010110010010100000110110000000010011000100001111000001011010110011011110011010111011100001110111001110101001001101100010110111100100101110101111001011101011111011000000000111000101010101100011101000110010001111011101010001111110100111000000110010101011110011110001101111110011111111101011101000111110101001000000000111110010000110111100100101001011111110010000100100000000100111111100000100101010101000011100100000000110000011110001010010000100111110001011100000000011101111001001000000110011010110110001000001001101001010011010101101110100101011010110100101010110101100111100000000011000111101110001110100100011101011010001110010000000101110010111101101001110011111100000100010011000101010001111010111000011010101101111010101010111010111000011110110100011111000111110100000001111000001100100101000000111100011101111101110001111000011010110101111000101110010001001101110000000101110010010001011100100101111011010001011010010010000100001011100110101011101110001110100110000011111100101101010000111100001101010110100111100101001100000001010100100011110011001101101100111110001111110101000000101101011100011111111110010110100110010010110110101010001100010001100011100111010010000101011110010010001100010100010111011111001011011001111100111011111010101110001000101101100010011011100000111001110100110010110111000001101110111100001110100110111110011010100000001010110001001011101101000011010011100001100011011010110111011101110011000111110011010101011110110000101101100001100001010000000000000111101000110101100100100000111010110100011011001011000100100100000000010100100101001111101110110001011111010100101010011011000110101111011110001100000110011010000011010110110000111100001111101110011110000100110010010001011011001001111111100000001010110100101100000000000111100110110010011111010100000011101101001100100111001111000101001111010110100000001010110100100011000101000101001000001100001011001001101111100101011101010011000110010111011001000000111101101001101000110001000101100101001100010101101001111011010011010011000100001011111110100101011010000101101001001110010000100101000110101000111101010011111010000010100111101001000111010010010100000111010111110000110110111101111011010100100001000100111011110110010011111010010010110010010001100110101110100101011010011000100001011010001101110001101000110011111100111001011101010001000100100001001100000100001111100000000010111001000010110010101100110110101100011001010001011000010101011100011111001010000110111111110011001000101000001000110111110010010101011010011001110000110010111001110010111010011110110000001101100011100110010000101001100100001110011011001000011000010111011000110000110111000101100101010000100001010111001001010100001011011011110111111101010111110111100011101100100000000111001000001011001011111010010010110111110010000110110001001011110010010010010110111010100011011001111011001011000000001111111111001110110111111011111111101010111010110111000110001011000101111000000000100100011001101101010010000110110011011101101111111110110000100000011001110111100101110000001010010010111011100001001111100111000010011011000001101101100110101000---------------------011011100010110110110101111001001000001010111011110100010000010101011111011110001100011001001010000101001010100100001111000100011011000101010010100001110101111110101011111001101001001010011001010111011000111100101010111001101000111001010010101011011100101000111100111010001001011000101111000010101111001001011111100001011001100101000111000001110110100011110011011011101010001111001010011011000000110110010001011010101000110100111111111001101010010111101110000110101101010101001011010001001110100000110011101110101000000110011110111111101001011100011011001011101110010111000010100101110100100001100000100010001110011010011010111010100101101100001110011100100111000011101011001100111001001111011001100101000100001001011111010101010110001110011111000001101001101110111011110000011101101111101000001000010111111010001101011101101100000010101101101101011010001001010101001001000111011100100011011101101100100111001010001101010011110010011000000000110101011110101110101011010011001110110000001100110110000100111111000111111111101111100001000110101111101100010000000010011010111111111010011011111000001111110101101000010011110000010010101010011001101101001001100000110101000001110111001001101011011101111010100011111110001110110001111001101011000010011100011110001110111000001100100101110001110100100100110101001111011011010000001100101111101010000111100011000000011101010000010011001110110100100000110111000101100111000110110111010100100101010101001010000111110001001001010101001101000101110111110100101011011001100100000011001101010010100101101110010101001100000000011000111000001010101101111011011101010110000111001010000101011110100100011001100001000010101000011000011010000111110100000011111011100011001111110011010000011100111001111101011000000010101111100100111010001101000010011011001001100111000010000100000010010100101110111110010011010011101010110110011001011010010010001111100011110010100010100000110011010001100000001010110111111111110111010101101110011001111111000100101101111101101111110000010110011010110001010010101101001101000110011000100100101111101101000100011000101001010101011111011100101011001001000101000111010011001111000010100101110101111001011110101011001011010011110001011010100111101101001010011110000001011001100101011001011001100110101011001010100110111000011010010010110011111011011000011011010111010111011000000011001011010010100110011111001000101010011011101111000110100101111111111111011011010100001000001000110010101011101001001000011000110001010011010000010000101111111000101100001101100000000001011000010011111010001101100010111111011010011000101100011101001101111000011111000110110100010001010000010111000111011100010001100101010111011001011001011101110011100001101001111010011001010101100100011001010101001101101111001001100111100001110010011111010011000101001101011111100000100100110100101000111111001101011010000011010111000110111001111110111001100100100100011110110100010010100010100011011110010011000000000100011010110010101010100000001110100100101010101110000010010110101010011011110010000010011001111001001001011101001000001010110100111100000101100010100000011100101101101010001011110101011011010101111011000011011000111101101111011001001001000100101011111100011010011011110001001011111000111000110101100111001000110010101000101100110001011110000111101100011111010101101110011010000101010001111000101100001011110011010101100110011001011101000101010101111110001000000100000011110011001001100001100100010011100011101010100101001110000000110011101010001011111001101011110000101101100010110110111100101111011000101100101111110111100101000001001011111000100010010101001101100101001001000011011011101111100001001101111000000100000101100011111000011110011101101111111100100011010000000011000001100001001010001111110111010100011011000111011101110110111101101101000111010011110101001111010111111101101111010101110011100010100001010110110100001001110000101110100010000100001010000001011100101000111100100001001010110110001001110010111111001010110011001011010111101000000000000011100110010101101110110110010000111110111001111011101101101010010100011010010000000000110010110100001011001100101101110111000001011111001110011011101010100011011001000110110101111111100111101110100100110011011011110110011010100001000011010110011011000110101100001101111001100000110111010011011000101001001010000001101010000001110101101010001110011110101110011100110001001111001010110011111110011010111101011000010010010101111111011101111010101001001010101011100001011100110001110000111001100000001101101011101100111111011101100000000010000100100011010101010111100000100110110011111000000101101101110001010011010101011110010110110011100110011001001101100101000011011000010011100011111101010001111010110011010001011100000010010111110110111111101011010101110101001000011010101100001001011000011101001101100010001010000111010011100011010111111111101000101000011101101100011110011111001110000000100000001001100110101000010101000101011011010001000010011011000101110100101101001001001000000000011100100100101101000001110011100100000010001100101001111001010011110101011111111100110110110001110101111110010010101001000101010000111101011001010100001100111010111100010100111000100000100100000010101000010111101111101110011110111111101000100101000111011001001000110000110000000110010110101101001001100001111110101011110111101101110001110111001101101101111111010010111000101101110010111010111000111110100110000111011111011011000110011110100111010100010111100010011011000001111101001000000110001000011011100100000110001011100000110110000111100110100111010111001100110011110001000101101011101100001110011101011001010111111101000000111100110011111001111111001111000011010100101010011000011101000011000001010011010110000100011010101001000011100010011101110100100000100001011010101110110000100011000100111111111101101110110100011101110011100011000011001101010000111100111101011110011010111101100110101101001101011101100101010011010000111011011011101110111101001001010001000100101001000011000111011110010010000010001000101111011100001001111110110111000111010000110101100011110110111010110110000100101001101000111000101110001111001111001111100000011010000000110101110010001101001010001111111000011111110010110010111101001001000001010011100011110110010000110111100110100011011101110000101010101100000011011100010010000110110011111100101110010110000101101100010111000000001101110110010001110011100111011001010011111101101011101011000100000000001011101111100110000100011100100010010011111101111011011010010001111001001010001111000111001111100110100000000000111111000011000000100011001011100110011100000010010010001000001110001101100110111001111000011110010111110101011100000100000001110001010110111101100011010010111100010100110010100010011100001100100001111011011010111110011110000100000001001100010011101100001110000111100000011111100000001101011101000101010110101101100000100100110100100000010101010010111011011111000001001010000110011000111011100011110001111010001000110101011101001011000110111111011100100000001110110111010011100101010000010011011100011101100010011001011100100101101000100000100100011000000101011000000001110010000001000000100110000100011000010011101111000111111111011010100111100100110111111101110001111101101000110010111100111010010100111001111001001001011111100110000010010010101110101100001101111110111001101010111101000101011100110110001101011011111111011000100111001100011000101011101101101100100110110101111001001101111101110011001001001100100100110110001100010010000111000001101110000000011011000010010101100111100001100111101001000010001101010010010110110111010010000111011011011100011001000011001111111011000111110110101111110010101000110110110110001100110000111010011101000011101000010000101101110000001100110001110001000010111110111000111000010101101110111001100001011011011101110000010011101011001010001001100001100000010000001111111000111111100110001010001110110110011111000000001011001010011010100001011100101001111001101110100100011001100100110001010101010101000100001111001110010101101111101101101110011011111011000101000111011011011100111100101111110101010010100100011001101101111111001001001111001000000010001110101010100011111001100100010001011011001100100001101111111110011010000000101010010100010111000000011100010110111100101000110111101001000110010110110000011110000110100010101110110000100010000101110011101111010111011010111101000100001111011010100010010111010011100000111101011011100100001110011001111000011101110011000011101010001001101100100011001010111010001001101011111101001110101011000100110010101000100000000001110001101001011110101100110011100101111001000100111101100010100011110101111011000010000111111010011110000010111000111111011010110110111100100001011100011100111100011010111111000011110111001011100110000011111011110010110111110101000001111010000111101010010110110010110010001000010100010110110100111010101110000100000111111110110011000101001000110110110011100011000101110111100011010000001010110000111000011110000011000111011000001010000010100011000001010101010001100010110011001000101000001100110001010000000101100100010101000001010000000001010101011010111110100100101000000000110010010101001011100011111010101000100100100010100111000111101111011100111001010010100100100010010000101011111110110101010110100011000110110110101110001100000010101111010111110011111010101011001101011000101111100101101000011100100001010010110010101110110100000111001000100111001011011100001110001110001011001101010011101101010101000110111010111001101101011100000101001100000110000011000110001010100110001011001000111101110100000000010100011101000111010100110000101110001111101111011110110111110010011111011110010110101101001111100111010010011111100011101001010001010010111011000011100110000011100100100110011000001000011000101001001110010100011100100011000010100100100010111001111011100011010100011010000011110010000010010001011011100100010100011110001101111101011000010110100001011011110011100111010111100100000111000001001101000101010001011111111110000110110010001001011001111000010100001010001110111101110111001001001011000001100101000111010011111000011110100110100001010100110011000111111001001011010001011001000010001101100000010000001010111110000001101101001111100001110101110011100000101110100100111100000011111100110100010001100100000010110110010111111011011010001011010100100100100011010001000010100010111101110110010000101110001010000101100111010111001011001100011101000111010000000101100110011111110010001100100000110100001010001000001100100101111110100011001111110010111101011001001100011000010000110111101111111110011100110111110110100000011110100110011001010011000100001001010110111100011001111010010000001111010100000101111101000100011110101101101110001001101000110010111000001110010001011010001100011010010100101100101110111111011101011100001000001001111010101101101111011111001110111110110101000111101010110011110111001111010101110001111011000011001111001111100000011001111001101000010000110010001111000100000110000010011001001111111001100100000000000011001101101100010001010100100111011010100000 +110100010000110011001101000101011011000100010000001111110110101000100110010010111010011101100111000111100110000101010101001001111110011100010000011110000011011001001010111001101101101101101010111100000110001001010101100011001110001101110111000010000000000111011111100100000000010011101101011101000011000001100110110100011011001110101101011101010110001110101111000011100000111010111000110100001111100111001001001110111111100111000100101110010110101111011000000101000001001010110001010110101000111000000010001011111011101001100100001001010001000001010001001111010101111001111100101011110001110001101101001101111011000111100100011100101110100001110101111011010000010010111111001101010001011111001011010011101010010100001001011100010010110011110010110110011100110001000110000000100111001111101001010110101110000111111010001010100100000000111101001101010111100101110111111011100100001001010000110011011011001001101010000100100101100001101010001010001011100000000010111100010010111101001000000011110000010010111100101010110011111010010110100011111010001010010110101100000001101101010001010000011010100011101110000100101000001001100110110100111000101000001110001100101001010000100110111001110001111011100001001001001111010101110101010010001110000010001011100111011011000001101101001101101011111111000001110111111000111111001000100110111011000011000001110010010100011010111000011111110000100101111001011010101111010010001001011101111000000010011001001100101001010001011011111001100110011011001110110101000111101001010000111100111010001000101000010101101011000110010110001101000011100010001110001110011011110011100001011000011000100000010011100001011111100110010111011111010011001001110110000000011011010101000101100010110001001111110110000111001111010011100110111111010000110100110000011111111100111100011000111010100110000001101101000111001111001101000111011010000001011010000010111101101010101101110110101001001001100001001010011101100010110110000100000111100001110100010111111011101010110111001010101110011111001001101000101111010010001000011110101101011110110110101111101001111100001000101010010100111101110001000011011110000101000110011100010101011000011101100000001001101011010110111100001111011000010000100101001001000110101100001110101011111010111000011001110100111100110101001110110100011011001011010001110010010011010100011111110010111111000001100100111101100001001111011111101101001001001001100000000011000110111011011110000000101010101010111111100100110011011100000010101000111111000000001100011010011010110001001001101101001100001101001110101001100001110010010000100011011100001101110110100110000101001110110011101110001011010010001100001001111011111011000111100010000011101010111010001100001000001100101000111111111110101010100100011010000000111010111011110101100010101110110011010111000010000000100101011100001010011011111101100110111001000011100011110001100101010100101100110101000100110111111111000110101101000001000111000111011011110110010011010100011111101010001100111111100001111010000000011101010010110011101111011111110101100110011001010011001101101000101110110111100111001111110010111101000101000101011001111011011001110001010000011110111101100011001101011111001011000111000010101000101001111010000001100001101010100110110001001110011110110000010000000010101011100101111010011100010000011111101010010011010011001101100011111101100110000111011111100001110110011111110111010101001000101101101111011111101000001000011100100111100100100100001101001001111010110001101111110100101000000100011110101011101111001010011011011111100100010111000001100100101101111011110000111110100111111001010111010011000011001100110111010101001100011100110010101110101111111011110100100000010010100010101010101111000000110011100101000011110000011110101111011110111010011101111110000000100011110111111010011001110111010110001010011000000010111010110100001100010111110100111001010110001000111100101000100101100100111001100010100011101100000101101011010101011100000001000000101110011001100100000110000101110001100010111111001100011001101010010111100010110101010111000001111110100101001011110101011110110100010011001100001011010100110110011000110110010001110011001001001111101000100111111011010001111011110110010001010000000111110010010010000011110000000111110000000101010010100000100011000100101100101000100000010100111000111110101000101001011111010111011111011111001011100010010101110111001001111001001011010000111000011101001100001010111100011100010111011000101100001010000110010000110100101101000000100001001000000101111110110001101110110111101110000101111000101010000011101000111011010111010111100001001110111101100011011101101010001101111001101101111111100101110011001101110111111001000110001010111101011011010110111110000000101001011110010110100110111110100000100011010001111101010010000---------------------000001101101011011101011110100100011001001111001000001000000110001111100110111111001100000101000100000101111011001011000001000000010110001011000011110000001000100100111111001111000011010010011010110010001100100010001001001001011100100110101011111101011010001001011001101001111110100111100101110010001010101111010100011110010101010100000000110101010000100001110000111100001011000111110010100001110001100101111011011011110110110000101100100101110010001001010000001000100110111000000101110011010100100011100000101100101010011100010001101100110111010101010110010010000001010100000000100111101010110000110110110110000001110111000010010001100010011100010110101100001011010010000100101101000011000001111101111101010000001111111010111100000000010111100011011011100011011111101011100100010101001111111000000100011101001110011001010100101011000000110001100101111001010111101100010111010110101011111101010000011010000011110111110001011111110010111100000000001110010100101100100111111000001101011000110100110010111011001101000000110101011011000001100110001110110100001010100001100100111010100100011010000011111000000001100100111111101101000000101111001110101000010010111110001000000000110011010011001111111001101110000110101010100110000000001001001100000101011100110001011101110110010100101011100101100010000011110101100001010101001101001110100111110100011101011111111111000101110011010010100011011010100010010011000100111000010000110010101100101010000111010010100101111000001010110111111111011100101100100011111010100110101101000011101101101010011101100100001110011110101101110101101110000010111001100000000011100011101101001010000101111100011100001000010011000000101011100110001010001110000110000000100000001111011101111110111100110100010001100101001100101010110111010101000110000010000110111011000100110110011101111110111101111010011011001011101001000000110001010001001101111111000111000000111101110001000001011000101100100110100110010101011110001110101010000100001001110110000110000001000010010010110000100010101000100011100001011101110111010001011010010100011101011001010111101110001001011110111110100110100101010101100001011001101000100011101101000000100101110000101011101011000010000100101000111111010001010001000110111010011011100111011100001111100100000010110100101111000010101000100001000011101100100001001110010100111010101010000101100101101100001000010011111000100101111110010111011011000010010011111101010001000010100110110001000010010011101110000111000001111001100100010100000111111001101100100101111001111101011110111110110101110100111111010010111101100001001010100110100100110010101101110111011011101110001000111110101100111010011001100111100011110101000111000100111010100001101110001010010001010001000111110010000111001001011000010001101011111010010101101110000010110011000101101111111110010000110011100011001100001011000001101011111011101011011100010011100000110001111011111011000100110011000100011000010101010001101011011111111101000111001101001000011110010101010101110111100011111011011011000001010110001011101101000110111000010000100100111011110010110110110110011010010100101001100110110111001110100111110010001110111100011011110001100111000011100001010011100011010010110100011010010101001000110110100001101001100001110010011000111100111001001001100100010010011100011000110100001011010110001111110111011000000000100010101101100101010010100000001101001101111001110011111000010011010110110011110110011111001100010011100100010101110000011011100111000001000100000110100011111000000010110101110110001110110101000101011110100110011111011000111110101101110000100001011010111111000001100111011110101100011010000011011101011011001011100111110101111010000001101000000100010000011001100001001000101101000100001101010011100011111100000100101100011100000001011011001110010000101010111110011000101100101111010011110010111101101010100000010110010001111000010000100101010000010101100010011001100010010110111110100100110010010101111110101011111010101011111101000101110011101001010100000001001000011110001111001100001000101110011110101111101010010001111110100111010011111100001101101010001011111101100100010110001011101111110101101101000100010010110010001101010011000011100100111001110100010001011110101000011000010001001000111110101001001111110000010111111000100011111010010110000011101011010101011011001111001010100010111100000101011001000010011010010000010111011010101110000100010011110111110101110010000000000111010110111100001000011010001001011011010101100010011111111100100111010111001110000010010010000100110101011110010100011111011010110000010110111010111001011001110000011111011001010111111010111101000101000101111000011110010010010110111110101001111101100100101111001011011001010111000101111111101001001100011010011010000110011010100111010001001001011011001010110011010011011010001111100111111100101110010111101111111011111000101111001111011001110111110000110101101100010001011011100110000100111111011111011100010010100001101111110111011011110011011000111011110011101110100101010000100011011110000000100010111011110011110100111101010000000001101100010001010101011000111001101001110000110010001001001111101111100110001000010010111101001101010101000110111101000110000011110001101001011101100101010011111010011000000000111001000011010101010110000111100101111100101000100000000000010101111011101011011101000101101000111110001010101111010011010101111110101100000000010101110000111101010110010111110011100010100010001110001110111010111011011111000101010101001010001001111100010110011000011000100010111011010000001100101100111000100011101010111110011001100111011001001110110001011110010010101111111100000011110000000111100110101100011110101011000011110010111001101010111111010011100011101010011011111000011111110001111010111001010101111101001001001010010000000111101010010010011010010110001101001010010001100001101001100111101110100010100001100101010010100000001011000001000001100100011100010000101011010101011000110000111110111011111001101000011010001110100011010001011100001000110101101000010101011001101011111100010100111101101101111000001110101100011111110010001110011110010001011111100010110011011101000001110001111010010110100110100101111011111011001011001100110010001010010000010111001110100101110001100010111100100110000110101101111000000010100101101101000110101000000100110000010111110111100000100000000110010010100000111001110100001011001000010001011101111011110010010000111100010011110010111010000001101111111011010001100001100101011110101101010110001101111010000110110101010001111110001010001101010011001011001101011010011000110010101011101010010101101011010110100110110011100001101010001010011100000000010110001100010100000011000110000110100010111000011111110101110011110101011110111101011000001011001000001000111101001010101100101001100110101000001000101011001000100101000011111101010100111111000101010111010100000000111001110000011110001111110000011010011010001010011101100110001111101111110101110110001000010011010100101010011010000000010110111100110100011100001100111010100100011010010000111111010111001010100011000000010001011101110100010011010101001001110011001011011011001111010100110100001101001100110111111111011010100101010110101000001101010001101011001001100011111110011110001110011110110000000111001101010110100101110001101000111001111001000100000101011011011011010010110111111000100001100010010101010101111100000001010100110100111011000101110001110110101000000111100110100110001100101010001100111011100101010011011010000111011100011101011011110111010101100110111111101101011011110100101111010101000110011101010001001000110111100001010110100110100001111110100001001011001000000011110001101101101000010000010010001000101001010011100000110110111101010001011111110011010001011010000001001001010110111111000100000000110101110001000000010100000000101101001010001000110011011000001111110110011110001110100000100100110010010000001011101110000101110110001011011001100000111101110100001100101010011100000111000000111001001001101111011100101011101000011110111101110110011100010111100110000110111000110011000100101010110111111000100101110101010111100100100011000110101110001110101000110011110001000100010101011101010011011111101000010101100100101000100110100110010101100010100111000101001000111111110101011001001000000000100111001001100110111011001011101101011010000001010110000011111001110011101011000111110000101110100111011100110010011010000101101000111001011100111001000010110100010101010101011000100001011100111010110100101111111110011111101001000110010100011101001101000101101011111100111001100100010101000001111110111110100001010101101101011101101111000100100011100101010010010110111100010010011111011110011011101100011010111111110111001100011000001000111110111110011010011000110100010000100000101101100001101110111011100100000101101011111000001100010100100110001001101100001100111011100111000001111101010100100001010100010010110101010001100111100001010010100110011001111101010001000101001010001001010110100000001101100111001000111110000010010100000111110000110011010111101101110010000011100010100110010101000000000010111011101100000100110011101100101011100100100000000101001110100000110110101000001100011001000100100101010011100110100100101110010110110100001111010110011011011101110001011010011001111001100101011100001110010010100101010101010100110100101110000110010001011111001101111000110110001000001101110011100010001101010101010000110010010010001001011101100110110010100101100110011011001001000010100110100110010101000100011111000000100101110111110101111101110011110111111010111101000101011000001100111110110001111111000100111001010111001110110010010000010110001001001001001100010110100011101000110011100111010011011101100100101010010010111111001100101101101111010110010111010101010000101110001110011111111011110010100101001110110011010001000111111000000101001100110001001011001100011100001010011101011010100110110011001111011000101011101100000110010000110001110111100101000010110011100101100000010000011111111101001111100101010010101100100101000000100000010100110111000100111100110000101101110010110011011010010001001100111111100001000001001010111011100011010000100101100001000110010001111101110110101001111011111100001000110011110001110101100101110010000000101111001001000110110100010101111001000001101000111100010111100001101000100110110000001101101011001111001110000001101100100100110001001100111001110001101010001100010010100011000011111101110101000110101101101111101010111100010111011011110000111011100110100011100100111111110111101110001000001110110011010000001001100001111010010111011101000111000100110010010111000110000110100001101000001111001111011001000110011111110111011111111010101100001110100001101011110010111010001000100011110101101010111000111110010011011011101100110010110110100111111010011101011001111001110110011000001001001110111011001010111011011011001110100011110100011110011100000111010010000001010101001101101110000000000011010010100010010100110001100011101101001110001001111000101101110010100110100111010011010101100001110110000111001011100100010101111111011111101001010101111100011000101000101 +010001101010000010100100000010001111001100010010010100000101001101111101001010110111110000001111100110000100001011000001110101110100100100100111101110000001001010001010100110000000100110111111101101101011110110101001000011010101110000110110001011000011100100000110001000110111011011111101100000100011010011100110100001010000011101101000011101100100111010011110001000101010100101100100100001000011100011011000100100110111111111111100111100111011011101100110111011001111011111011110000111101100011111010100100010010000001001000110000000110110100010001010101010111000110010011101100111111000001001100001101111110000010100000101101101000000010110000000100111011101000111010000001000110011111101000011001100110111101100001001001010101101011110010011010100000010100101010101101001001110101111011110101000100010011000101101010101010100001000010100001010000000001001001011111111011010010011001101101010010100110110000111111100110101000010100011100011011100011100100001100011010101010010000011011010000001000011110000001100101001111001001111011011100010010101110100111111000101001011110110010001111110010101001110001100101110001001011100010000011001000010000001111000000101110100010110001110011000000100111101101010010110110001011101110011010001110100111100000011010111001101100111011000010100110101011101110011100001010101001011110111001110111001111111000011000111111011110001000100001011110110111000110110010010001100110000101011100010000001100011101111111000011101000001010110110011110100111000001000101001110111001011101010111000010000111010010111100101011101010010100110001001101110011010010111101001001111101111001111111000001111000101110001010100111100001100100110110111011111010001101001100111101111010010010000001011111100001100100100010010001011101101111010001010010111101001011100110000100010010011000100011000111011111110101110111110010111001110111001000101000011101110001000001001101101110010000011000111110101101010110011011101110011000010111010100010111100110001001101111010110000111011100101111000000000001010000001010001110111011001010100110110100011101000111011100110100100000000000000000110010000010000000110001111110111110100101000001000100101111111001110101011000011000100011101110001101001001001010001010100010111110011100110100110011101010010100001010100101100110100000111101110001100010101101111010100110100001100011001001001011110001111010111110101101101010111000111100000111001110000110101001010001011001101101011000111100011000100010000100111110100110100101100100111111010011101010100010010110100100011001110001101111011011000100000100001101100101110001110100101010011101110110111001111001001011010001001111011101111001010110000111010100010010000011101011001110001100001101110101001101001101111010001010110000100000001101111110101100010011010011001010100011011001100100010110100101100100010100111110001001111000110001010101110100101111001101101001010000001100000001110100001110111111110111110000001011100100010100110100111000111111001100100100011001111011100000110010000011101010000110101011110000110100010111111111111001101011111110111001010010101001101111010111111001010001101110000111000110111000010101011111010100001011111001001010111010011010110101000111100000100110011101100000010111101001011111101100001111010001111011110001011111110100110111100001011001010010111010100110111001000110100100010010101010110110000001010010100110011001101011101001101011001011101001110001101000110100100011010011011111000010011010010111011101010100010111100101000001110011011000010101111111101100100110001110001110111001111100100010111000011001001010010010011100101011000101101010101110001001111100001010001101001101100011010011110011011011100011001100001110111011101011011000101101010010010001011010111011001101010111001011101101101110000101000000100010010100100111010001100110101011110101010101000000011111100011011000001011110111011110101011000010110111101010111001011010011000100011100111100011001110100111010101000100011100111000110111101110011011101111100011011111001010010010111001100101010000010001000001010000010001001010101001010011111110100000010100010101011111010100110010011011000001000110001110001001101101101100010000001000100100110010100111110111100000011001010100011000011111010001101001000110000110110101001110101111111010011100000110000110001101111101000101110111011100111110010010101001101010010011011011001000001001110011010111000110011101001110110101001111111000011110010000111001111010011110100110011111000101101011111011011000100101001111000001101110101110100001010110000110100001100101001011111000000011010101001110100010101001100011010010110110101111011110111111001001001011110111000000101111100000110001001101101010011000001000111001111010011100101001111111100011101000011000111000001100010101110000011100010001011111011110010000110001110110011011---------------------001000100000111000101001110011101110111001010000111000010000000110000001101000101010010101011111100101110100111110111101000100101111010111101011010000110010010000011101010100011111001011010101010000011011110001000010101011010101101101011011101100011010101101110011110111001110001000110110110000000111010010001010000111110100011111001111000111010010110000010110001000101011010111110110100111100100110000111101101101100111111000111010111011010001100101011000111101100111011010110100100101001111000100000101011111000101110011111111111011100111001000111100001010100000011011011111011101110100101111110000001110011110010000001101111110001110100000000010011110001101101011100001011001101110111001111100110001010100100011001000001100000111110010001001001100001011110110000010000111100001010101100001101101001101010010100011101110011110011111101110010100000011010100010101010000011101101001111001101000111110111111101101101001101001001100111100111100100011001111001111001010011010011110010011000100001010011111110101000001010111010010000000100011010010010000010100011110101001111010111111110101010000101001111011000010110011010010010011101100111100110000110111110100100001111010110010011100111001010001101010100011011001111010001001000000000111000011111111111000011111011111111001110101001010000101101001100100110101001111101000100101110111010100100010111000111100110111010111111001001101010010000000011101000010100110001011111111100011111100011001101101110010001101000001001111001100011001011010101101111101100010000100111100000001000011111010011111000001011100101001000000110111111110001010010111100111000010111111011100111101010110101100000110000100011001011110001100111000011110010111011111001101011011100001010100011011110101011001101100100101000110001001001001001101111111101110100110100001000000010001001011100010011001000001010010110011011011001001100111110000100110111000110001101111101001111111010111010010100101010111110101100011011011001101110001101011100010111101101001100010111111111100101111100010011011100001111100000111101000110010001111001100111001110011010001010100001101001100101010001110001100010010111000001110101111101011110101001110000101100000100010001110101111010000010000011001100100011110101010001000000011010101111101000111101100000001011000100000011101010100100110111101111110010110001000000100010111110101101111111000010100101011110101100001011111000000010110101010111111110100101011000100010001110101001000010001111010001011011011111101001010010100010110101000010110100101100000100101100001000111010101010110101011001001110001001110011100101001111010001000001101010010000010101111011001101101101000100111000101101010100110010010011011000101011100100111100110010111101011010111101101110011100111001101000011100110110111001111011111011010101011100011100101101100011011010111111101000100000001111101010000011001001100001011010101110011000100100011110100110110111100010110001101110000110101010011011100111101000111011010101101110010000001010101000101001100100110101111000001110001010011101100101100000111111001101000001001011000110010111011101010101111110101001100110111001111111101010011101001000000100001000110101001111111111111011101000000011100001101111010100010100100100101111100001011000000001011111010011101010101010110010110101110111000011101100101100110011101001100000110100110110110010101101011010001100010101100111110101010000110110011100010101101111011001000010000010011011011110100001000100101111101111110101001100111110100011011100000000011011010000011111000111110010011000100101010100111000101010110001001101110111011001000000010001010100001111111000010100111111000100100100111001110111101000011011011011001100011111110100101000000010011110100010010011011000101001000111101011101001001111001110010011100110100001011001100000011001011111010110111101010010110110011000000010001011100111000011010011001101001001000001100101010111100001101000101001010011111001001001101101101010110010011100100011111110111010010011011101101000011100111100100010111111111000111010010011010111010001110111100011101010101001011110000010111010010011011001111000110111010001110111101100100110010101011001111101010011011100001110110111101011011000011001100110001011111101001010101101100101111111100100001001011000011110100010100011110001001010000001011011101110111110001000100011101010001011001000011010101111000111100010011011101001110000010100110100000101001101011010110100010000001001011101010001111000011100001101111011101001011111101111101010111011100100011010100110010100100100010111111011101100011000010100110101110100011100000111011100100000111100000110010011011100111101011110101011001011001101001101010100011011001110010000100100101000000001111111011101111000001000111111011110000001000010111010100010100101001000101101111110101000010001000111110100010110111101001001101010010001010101000001011010000111000101011011100110001000100000110010010101101101111000001010001011000110011001001111111110110011000010001100101110011100111001100011011001110000110111100000101111011100110001110001111001011111000001011101000010000100010001111010011100011001011100100110101010010111000010010100010011100100000001101100101000001011100010010000001010110011111111111000001001110001011001111100101100001010001011011101111000111110110100001000100100111010111110001011001111011000111011011110111110110101110001100001101010110011000011101010001110011111101111110110110001011000100101001010100110010010110010000100111100001100110110010111000111111011011000000001001111000001011001110111111110100011101001000011010100010001110000101100111011011000100111100111011010000010000101111000111001010010110000010101011111011000100111011110100000100111100100001001000100010101010111110100100110100100110011001111010001110011101100101111110001110110100111111111100010100000111000101110111001000000011011111011111100110100000100100111010011001101011000010111011010101110111101011011001100101011001010000011001000110000100001100001001001001111110011011001010111100100100101101011100001101010000001101100111110100101100010100100001101110000100111101010111111110101110010101011001101100101000101011100100001110001010111110010010001111000000011101000110111100000010100000011010111101000001001000100001101100010010101101100000100100111000010111011001111001000010010111000100011011000101100001010110010100010011010010000101000101000000110010011100001110010110100011100100101001010011010101000010000100101011011101000011010010010010111110111110110101001011100110000010111010100101000110011011000010011010110101110010000000111110010011100011100001011010111011111011010010101110111000001110110010001001000010110010010100110000101001100110011100001110111110001100011100101110010101010011101100010001011000111110001101111000000111001100110001100010111011011100111011010001011011111110001101110011101111110111011001111100001001000111100010000000010010000001011001000100011100100001000011101110011111100101001010000000010001000001101011001110000101011010111011100000011001111011010110101001101001011000010110010110011110101100101001110000110011011111000001001000000100010000011010100110001100101100000110110000000001000011100111111011010100110000111011110110010101111001110000101111010110000110100111011001110010000111100010011000011011100010011111111111101111100010101011111010111000111011110010101000001110010111101110010011110010101110101000001010000011010001111100100011100111111000001010101100110011111110101010001001101011000010100010000100101101010001001111011000000110101110101010110001011101111101001011100111111011111111000010000100011010001010101100110101001010111001000100100001011011011001010010100101011101010100011001010110001010010011010111011100111110011000001010100001001101001011111110111110011011111101001100001010011010100000101110001011100110011100010111111001001010111010111011101011011001011100110010111101000010010011101101110110110000100010110101111101111001011001011011111101111010011011001001110011101110011100111011101010010101110111001001001101000110101011101110000111011010010010000010100011000001101110100100111111101111111000011011111111000001110100001101001010001101011011110111011101000010111111110010111001100000110000010001101011111110100111111111010000101000010100001100100000010011111101010110011000011100000010011101111111110101011000111100100111011010011100010001010101110100111010111011101100001000010001101011010000010110100000011011011010001100111111111011101001001010000110011101101010100010100111001000101101000011111111011100010110101001100111011001010011010111110011111010110101011110101000011001111001000001110010011110001001011000101101000010010000111011010011010100011010001110011100110101010000110111111110111100011101001001101111101110110111000111101100101001110101010100110000100101001101111100010110110110000000101001001111110111001111101100110100100111101110001011001110001011010001010000100010001100111100011010111001011000101101110010001011101010010111111110010101001111111100100111110001010110110100011110100011010010110010001010111000000110101010111001100111010010011001100010101011011011010100100111100101000111011111101010110001101100010001000110100101100011000101110001011000011111110011110100100111100111111101101100110101000000100110111000011000011010110111111000011110111000110010001111000100010101110111100110000111001110101111110001011010010011000000110110010000000100000110001000101110011001010100000001111011111000010011100000011001001000101111011100000100100111011000110101101110011110100111101011100101000001011011101010011100011100010011101111000001100001101111111111001001100011011100011000001100111111100001101000111000011110010010001101111100001110010100110010110001000011100100100111101110111110010001100110011100110100011110101000001101011111001110011101100100100101110111000100111000010010101011111000001110101011101010011110111001001001100001001010001001011001110111101001011111001010011100110100001010101000001100110101101101011001101000111111100101101100111101100011010011000010010001111000110011011011011110000110100011001010010001100001101010000100000001110111000110011110011000000111101001010101000111101010111111010010011100111001111001011010001001010100110110001000110001100000000100100110110101100111010001001101111011111010101101101000111110001000101001100101011110001010011000001100101010011101000000011010110001010101101111111111000100101010010101101000010000001111000110010010000100101011101001000110011111110100000111011111001101101100000101010101110110101010011111111101111111111011110101001110010001000111100111001000100110011001111011000001111000101001001110110010111011100010111011010111100110100111010010100011100111100010110000111001111000111011000101011101101000001011010111100101111110010100010101010100010001001111100011010111110111101010000101111110110101110111110111000001010011011110010010000111111101111101001001110010100001011001000111011101011100000100100101010011010101011110101011000100011101011001101000000011100001100111101100111111001011001001110100110101101111010011110010101100110100100011010011100001011110101110100111001101000111110010001100111100001000 +100111110000001101010111100011110101100100000011110100101011000011101100011111111101111000010100001010110100100010001010011011110001101010111101000101101011110101000011110111011010010101100101000110010001101010100110100111110011010110000000100100111000100001001110110000010110111010001010001000010110110011100010001100111111101010111100000100001011110000001010000111110110101000100010100100011011101100001010100111001110001000101100010011110000011100110000100101010111001001100011011011111110011001001001111110100011001110101000010111001000000100100011111100100010100001010000001001100100011111001000010101111100100110001011110010000000111110001100110101111010011011110100101111010111100001111111100101110010101100000010011101100011100111001110000011101100110000001101101110010001010011110110110001010001000010110000000011111001010101011011010011010011101011111001011110011110110111010011000001000001011011001011001111111100111101100011010011000101111000011001001001001000000110110111001111000011100001011110101100011111011111110100101001110110011011001111101100101101100100000100010110110000001001111110010101100110010111111111000111001000111000111100000000010000100000000010100010010110111000110001011111001101001010100011010000110000100111101011000001101110100010101000111110000101000101001110110001001000011000101101001000101111111101000101000010010101001010100001000110001101010111010011001000001011110100111100100110010010110001010111010101010001110111110011100011000000000100000110101011101001000111111100111011100110010101010000011111101101100000100110001011100001101001111100111100100110111110001011001100000000011000100000001100000001101010100100100111100011011101111010101011111111000110101111111011001000101000000101001011011111011111110000001010011011100111001110101111100000000010111100100001110001011111101001111110100110110110000101110111001111110010010010000111010111011000101010110011001010111100001001000111010111001100011111111001000101010000010011001100011101001111011110010001001111111010111010110001001010000000111011110010110101000100010110000001000010110000111111001011110010100101100011101111011100011100110111010010100100111000000100000101000001110111010111101111100101110010000011101011100001001000111000110011100001111100111100011100000000100000000011010010111111101111001100110100010111101011111010101101111111011111101100111111000101010101011011100110001111100000101010100111111111110010000100000010100001011000111000010001110010100011101100101011011000101110001111111000101100001001011101110101101011100101100010011010000010110100010011001110010010111011001011001111010000100000011011001000101011110000001100010010110011000101011111000000010000111001000011001000101011011110110110000010001100011111000100001010010111001010110101100010111000000001111110010110111000100110010110110100101100010110110101100101111111000111011101010111001100001100010001001101000111101101011100001000000001111111111011101010100011011000011000111011001011100000110010000100010010000101001011100010011011000010001001001111000100100111100001111000000100011100010110000001011010011100110110100010101110010000000000000000001011001001001010011000111111111100100011010111100101001111110100110101010101110011101110011111011111011001000100101010110101011010001000100110010011000101100111001010100111111000100100000101001101001111000100001110011100110110000111010011010110110111011000011001010011000011001111001001011100010000010011010101101110011000001100100011101010010001100001000011011110101110001111010001101111100110111101000011010001111000111111100101001101011001010010110010010111001100010000010011000000001010011100101100100100010100101111010011110000101110110100001110101101110010011011100001100100001101010001000000111110101101001011011000111111100000010001100111001001001101010001101100101010001011010111111100101001101101001100110100010111000011010101110001011100110011000110011111101010100111010100110000000000111010011100010100101110000100110011010100000110000100011001011011001111101110110011001101100110010011110010110001100101110011111001111011101101100100000100011101010011000000001110100110100111010001110100010011011010110111010100010111011010100110110011110000000111011001100000111001100010100110011100010100101100001010101001100000010001110110100100100011101010011100101100100111011101001000001001001011110111010011000110010111100001101100100010000110101101100001000110100000000001110000001001101001110001110101100001111011110010000110010010100110001110111011110100010101000000001011001111010111001110101000111101100100100000011110011001111000010100110101111010000100101110101100101001111001011101001001000001111100111010111011111110100010010000011000001101110011110100111001010111110001111101110101100111001110101011010111001101001000011101111011000101001---------------------000111111011001100111100011011010001000111010001000111001110110001011110011101011101011000100100101000010011010010111111000100110111110010110101110010101001011100100100110010110011110010000111010110000101000110110000101110110011001111001011101011111110111101110010011001111110001100010011011110010010010010010101000101010100110100001000000100000101010000110001011111110100110001100011010011100101000100111100001111010011011101000010110110010101001111110000011101000110001000010010100110000011011110111111101001100110100001110110100100000101000110001001100011101011000111001011010011000101100110000011010001101011010110110100100101000011000101110100110000101010101011101111000101111101001010110000111110000011011111100101010010001111000010100111101011110000001111111100110101100001100111001010001101000101110011110011010111101101100010101010100101001101101001101010000011001100110000000011111101011100110100100111010110100010100110110110001101000111100100101000001000101000101001110101100010001110011100111111101011011000110101001011001101011101101000100000010111110001000000101011110101001101100100110110100000111011011011110101011001011101010000101001101100100100111100101100010010111110110010000101110101001001011111110110111010101111011011000010010000001001111111000011000111011110010001100110001101100011001110111010100101100001010011001101001111001110111100000100001001000110010011101111011001000101000110101101101111001010001001000101011100100101001100011111010010001001010111101010011100010010110001001111010000001010000010111101010111100110110010011111011110110111111101100100110010111000001000000111111010110110110001110011000011010100111001010110011001111111001010010000101001100110100000011000100110011110010000011001111110010011100001111111111110000101000010100010001010110100110010010111010000100001111101111101000110001001011111110100011001111011111000111100111010101111111100010001011000101001110111100010000001111000011100000000101110100100011101000010100101101001100101000111001110001010011111101000000111101000011010001010010010111001011111111000110101101110010001101111001010011111011011101100100000110101111100111100101111111001010011111111011100101101110101010000100100110101111111110011100100011010110100101001100101011011010111001111000110010111001111110010011011100111010011011101001001001111110110011111101000000111101001011111001100110111001011001001110000101000000111001001001111011011100110000011011011011100011110001000110010011111001000001000000100001010110001000001001000010010110011101100001111101000101000000001100101010111011110110101010010111101110101111001001001010000001010110100000011101101011010111100100110101010011010000000101000000101011010000001011001010111001000000110111110110000111100011001110011100011001111001111011101111011001110000111111100100011101010100011011111111010110110001010101010000000001110000000111001111101111000010101110110100111001000110011000110000100001001010001000111010011010111000101001100110110000100111001011111011001010100101111101110000100110000111110100011111000010100010101011111001111101010000111100110011110000101000001010110101100111101100110000001100101100100100100011011110100000001101000100000001101111100000100010101100101010001001111000111000111011100010111111000011010011011000111011001011011101010100011001001111110100100010001100110100001010101000011101000100111110110011001001000000111001010000111000010001101111110011101010111000111111001011100000010100001110001110101001000011011111010001111100000001101010010010010010100010000100011101111111001111111101010110010100110110001110110011001101011011001110010100111101001101001100111110111111001110001110001111010000000111111001001100110100100100111101100110101001110010000101000111001100001000001110000110000111001111111011001111001100111110100101001011110010000000001000010011100101011101101111011111110101110110111111011010110000000001110011110100101111101010100101101000100100110110010011110101111100110110100100010110100001001110011011110010110010111010010010111001000010001010000001111011011101001001010101001110100111000001010000000010000111101100110100101111110001100100000011110011011011101110000101010101010101011001010101111011001001011111010000101010111110100010000110101001100010000111100110011000110000111000110100111111011011011101101110011111101011110000101010010011100001010011011001001000100100100001001000011101110100101101001100001010001111001001101011110101011110010101100100011111110001000110110110100100111011110111110010100111010111001111010101000110010000111100100110111001110101101100101000011101010001000110100111110101101101000011010000011011101100000100101110101011101100101100011001000110100010001000011001100000001101010011001011001101011111110111111100001110100011010010010011010101011010011011100101110001111000100110010010010100111110100011101101011100001111010010011100010000010101000111111010110010100110010101011110011000010010101110000000100010001100000010010000101111010110100110100100001011110000111101100100010110101011101101110100111111100011010000001101110101111011000110000001101110011101011111010111111001111010010011110010001101010011110011001111000110111001111011000011010111111000111011001010010100010111001011101001111011001100010111011010101010001000110110110001011010001100100110000000010101010100100011111111101110000001010011101110101101111011101111000000011111101000011100010111101010001111000001010100010011011000101000001010101100011010001011110001001001100011101011010010010110100101000100100010011100001000011100110000000010010100000111111000110111011111000001100111111001011010111011100011011100011001110000011010111011100000001011001100000100111101101110011001011010100110001111010110000000100110010011100001101100011110001111110111110100011101000011111100001111110101100001101011110111000110000110011101010011000011000100000110000001010001000101101001101010110110000010110000101011000110101000001111110010101111000111100100001011110101110111100011101101001101000101011110111101000100010110000000000010001010010000011111010011000101001010011101001100101101000000000011111010001010010111100000011111101111001001100101000010001010100010101101101101011000001011100000101111010111101001001000010100011101010011011001100101011001110110110001100110011001110101101011000101100011111001010010101111100100111000111111011001000001110011101111011111010011100110101000001110001001011001101000010101010011101111110110111101010010111000101110100111010110111011011111010000011011100001001011111001100111111111100000101001100001011101010111100110100010110111101010010000110000100011011110110001001001101000010101000100111000111110001111001101101100001101101010110011011100000001011000010010010011110010111000100101101101101100100001001100010101001000100000110011111110111001110111100110011010000001011110111110000111010001100100111000011110110000001010001100001000100100100100100100010010111100111101011101110001101100100001001001001110011100010001010111110001010111101111000100111110011101100101101110110100100100100110110100011000000101101011100110011001011110111001110110110001011000111101100000100101000101010100000111001100000001110011100011110100011101100101010000010011101000011101001111011110010001010100100100110100000011001010100000100010011100001001110000000000110101011010100101010101101010001110101011101010111001110101110011111010100101111010110100101110000010000111101110011000000010100110110101010001001111000111000110111000011111110100001100001010001111110011100100101101010100000010100110010010011011110110011011101100011011001101100010100110110011111001011111000001111000111001111000111010101011011011101101101010101000001101000010100000011110111011000100110001000001000011110011011111010011101101101011101011001100000111110101110111010110010110100110111110100100110100111000101011000111101110011101101000011110011000101001011110000000011110011011001101110100011111111001100100001010010111001100111111011000110001100111111001011100000110001100011100111101100111011010001001010100000010010000011000101101011001110001100100000011001100000111111000110000110000100001011010010100111111100101100111010111110001000111011010101000100000001111011110001111001010010010000110100010010011110111111000111111100010111001110111011100101110001000010000111100000010111101100010101000101011110010101110111011111010110101111011010010101110001110000101001010100111011001001001100010010110011001110010001001000001111100100010101000010000000111111010011101011100100111010000000000101000011000001111110100100001111110101110011010011101000011110001010110010110100001100110010111011100100001101101001111001111100010011100111011011000010110000001011011111010100111011001110000101011101110100000111000011011010000000010100110000010110001111011111110010111100100000100100100010011011000100011101011100000010001101001101100010110101100001011010101111010001100100010010101001001001100011001110101111111000110100010001110110011001000111110100110011101011101111111010100000010011011010100001110001101101111010011101100001001000001010111011111101011000111001100101010011101110000101001111001000111011111110011111110000000101000001101101010100111000110010011111011110110111100011011011001100010011100111111011010101101101001100111100111000101111100010110111011010100001101110010011001010001100111101000000010101101010011100100101000101010010011011100110010001111001101100011110110111011101110000000110101111011010100011100001011111111011001111000110100011001001101000100101001011101000011010100001001001001010010110011111111110001111001111010000011101110101101111001100111011111100111010100100010000000101111011100110110010000011011000010000010101100000110100001101100100000110100111001100011111010111001011010001100010100001101000011011000011001101100000011000111000001010101110111110100000010011000101111111001111001000101001110011001011010010011111101110010011111000100110100101101111000010000011001011100110000100111100101010000100011011100111001001010010111011000000001111110011011010010111011101110101000100100001011010011010100110100001111001000010101001010000111010001000001001100111010110001111010110101010101101010000011111100001101000111100111011111100000110011011110110010001001100011101101101010110110111100010101100010100100101110010001000001001101011000101010100111111000101011010000101000011110111110000000000011100111000100111000100011001000001000111000000001111001110100011101011010110110111000101001001111011011010010000010101101000000011110010100001111010011100000100111001101111000111101010010001010000110010111011111001000110000101110100000011011101010111011100100001111100110011000100010001010000100000100001001000010001011111111001110011001110000100111010001100110010000100000001011001000110101100001101101110001111010101101111111110000111001011010010000110111111010011101101111101111000111110101000111101110101011001001010000110110111011001010010000111011100111101100010010101000100101101001100010110110001001101111011111110100101111001010110100110111111000001101011100110111100010000011000101001011110001001010011101001000011000011000011101111100011 +011111100010010010000100000111001001110011101111100100011110000111001101100110100001000011110010101110010101001000001110000111111111001010000001000100100001010010111010010001001110011000011110011011010100011011100111101111001010000010111110111001011110000111110011001101111010010010110101001101001111000010111010011001101011001011100001101011001010001010010101000100011100011110100111000110100000111000000101100110101000001001111000010100101111011110110100100111001001111111001110110000000111100011000111111000111011001010110111111011010011110001010010010001111100101110001110010000010111100111100011000111001011011000010001001001011100101111001010000111011011001111101101011010100111011000000101011001010011001101000110110110000011001100001011011000110010101011110111100111000101001100111101010010110001001100101101001110100001000011101000001010101000101110001101010011101101101000001101100000100000101111111110111001001010010100101101000001000101100011001011100011111110101110001110101001101000000110000010010010101010100100010101100110001001110111000010001101001010000110100000100111101100100011101001101111110101100001011001000111101010110001110100110010101011111000001110101110101101001101101000111101011010100011100110111101011111100101110000011100100000011101111101111111100100101100110010101010100011001010000100100100000101100100110010101001001110011011111001010010001100011100001001011010001011000111000101010111111101001000100110001111111010100000011110111100101011011010010111101101111101110110011011111100000001001011011000111010110011110101011100001111010000111110001111101000010100010111010100110010000110001111001000010111110111101110100101011000000000010111000111110100110101000000101010111100000101100001100110101011000110000011000101101000101010111010100101011110011100101000111001010110000011111001000010110111011100110101001000101100111101100000000001100010110110110110110000100100111111110100101010011101110000011101111101011101100100001010101110110011100001111110000001110010110111101000101110010110011100001100110110101000110100100110111101000111111001000101000101110100110000000001010000100111100110000100010011001000001011100001011010000011011100101010100111111101101011001011000010001110000101101110010011100000100001101101000100011001111110110001100000100010101011110011011010000100010111101001001110101011011101100111101111000100001000011000001100011010111100010011001111011001101001100100010110010101100100101111011101100000011110101110101011001011010000110101100011111001101101000011000001011111110010111010100001101010100111110010000110000111011101000011010001100111011001101101111001000111111000010101011010000011000000110100110000001111100010110110010000101110111001100011010110010000000000111001010101010101101011011111000011100111010010111111010110111111011011000011000110001000011001011111101100010000100000000101101110010111101001000110000101111100100110111011101101100101100111101000111001000101110010001000000010111010010001010010111100100011110101000110111110101001001110101101010111111100111110001101100101011010011111111110101011101101010111010111000001001001110000001111100000101011101110001111011110011011000010101110100101001001101101011100100011010110000110110000001010110001011101100010001100100001110000100001110101100001010011111010000000011100011110010011010010111111011010001110011110000011011110010110010111101010001001001000011101001001010011000100101010010001100000111100100111111110001010110011101000111111010110000000101001010001100110001110011010100000111011111111110011110001110010010111011001101001101111010110010111000111110100101101100011010110110100011100100111111011010101100011001110111001010010000101001100100111110101001010011001100111111010010001001111111101001111011011100001100010101000100000000000110111101000011100011111001100000101100111001110001010111000111011111101011101110011011110011001110101011100101000111110000110011001101110000011100100110000110000101000001110010000001111001010000110011010000111001110110000000110101001001111110111001110010100110110111010110101111000111001101011001011101010011001100011100001010101100001101111000011010101111001100011110101000011011111000000100110110010101101111011100111101000111000111101110011001100000000111111010011001000010000000000011111011101010011001011101110101010010111100001101010001001101101011110101010111011000101111101011100011011011100101101110000001101011011011001001101011010110010110100101011110101001011000101101100000100101010101111000011001101101100110101111011010010010010011101101100000011010101000010110110001100101101010100011001000101000100101001111001101000001000111111000011001110100000101010111001001110100111100100101101111101001111111010110111000000001011101010101011111001110010011101001001100001010100000001001111011110011100100---------------------110100011011111000110001000001001010100010110111000011010000011100100001111100111111011101000101010000101100101100011001010100110001100001101100100010010101011001001100101011111001100011111000001010101011101111001100110101010101001110011011110010000000110101111000100001001100111101110010100010000011100011100110000111001100110110100010100100011111100111111100011010100111100001100100000101011001001000101100111010000110111000000000011010010100010011111101100010001010111001010011001111100001100000111100111100101011111010000110100001101001011101010010110011111001101011110000010100001111000110001111011011111011100111000001001100011101111100111001101001000111011101110001110110000110000001011000010110010101110011000010110110101011000010111111011011000001001010100010110001011001010000101100101110111000100011101000011100101110000010010111111001010000101100101001110100001010111101101101010100111101000000111101001100101101111111000010111110010101100010111000010100101100111000001010010010101000111001100011111001100011101000011001101100000001110001101100101100000110111110111010010000100100100010101000111111010011010101001011001011001010011111001111100000001111111100010111010001100100011000000100000011110110010011011101110001110110010001111000111010100000011011000100000000011001110100111101110001111011111010011011011011010111111000100010111000000011000001101010001000001011111101010111010010111101011001100010100001011011011000101111010010001000011110001101100110010001111001001001100110110101011110100010110100000000111011111111100111010001101010100000011110110011101101101100000001100011101111011110101010110001011110000111110011111110110101000110001010011100011111110010011011010100011000011000000001001110111111101101001110011010010100011111000110100100010101101010010001101100111010010100001100000011011011001110000000000110010011110010100001001000111011011010110001000001110010010010000000001101010101011010000000001000101100011000011110110001111111111100110001110011001111101010111101001001011000110001111110101101000110011101001111110001010011011010011011001110101100011100110001010000110110011110111101101101001110110101101011101011100000100011010101001000011101100111101000101001000000011111010011011110111100101010111111001011100010101111001101001000000111000100100101010001110110100001000010011110100001110001101010000001100001011111010001101111001101010010001001110110011001110100101000000111100100011001100100000000001111101111011110000101001101000000111011001101001110101110001110011100001010000001011010010001011011000111000001011010111111011001101001001001101001010100010001011010010000010100011010101110110100011101101110110000001010110001111001011101100001111100001011110000100010111010110111100001100101101101111111011001111101101100101100010100111110001100001001111010101100100001011111100001010011010110101001100000111010100000110100001010010010111010100001111101011101011110111000110101100110111000100010001100101100111010100010111001110100000010001111111111011111110001001100111110001100011100110000001100111000100011010000100010011001100001111001001101001111011101110001111011000011111000110100001110100110000111011011001100101000111100000110111111101010100001001110111010111100011001110111010111011110101010111101001100001010110110100110001011000011111110010000100111101110001110001001101010000001100101101001101010001011011101110101001111011110010101011010011110010010000010001000100000101010110001101100000001010010001010110001101100001110011101011011110001101011100111111000000011001110111110110110110011111111111010010000001110011100111101010111100000000011000000101111011110000100100100101000011010000110001010011101011000110100011011110101000100100100011001100001001011001000110010100001010000000000001110111101000110111011101001011010111001011100100001110011000011111011010001110111001110001011101011100001111111101000001011100001111110110100111001001100001011001011000010100010011110111010001110011110100111100001011011010001100011000001000001101011110000101110100111001111010011110100000111010001101000001000000001001011111111000101101011000111001111010110011010110001111100110001010000100111011001100010010101111011100101010001101111100110010100011100111111110101111100111110011001011111010100111011000001001101111110111111111100100010010111110100111100100000011100101111000001000100111010110111000010000010000011011111000001011111001101001100010100101011111001100101010110000011011010010101001100010010011000011000010000001001011111100110010111110011001000100001100110100100111000011110000011101011111000010110101010100000101100000101000000100111001011010011111001101110010010001111111101110110001100010101001101011010101000011100111111000110011011100110001101100000001000101010100010000100110110101001000010001011010001110101000001110011000111011011101010100000010001111100110010001010100011110110001000100001011010001101011111001101101111001011101101101010100001101100010010011101110001100110100000001001011010100100010111011101111110110000000001111100111000001110100010110000111011000101100101010010100010010101001010001000000001011001110100110001000101000010110110011101000000010100000010000011100000111011000001101000001011001100001010111010101110001011101110010101101010111001111011001011111101001100100111110111011101011001001101010001001110100101111001001111010011010010000011110011001111001100110001000010000011110010010111010100000011100100000101011110001100110011010000110101001100010110010110101010111001011000001100110010101111001010000001111001101111011000100001111010011111000011111110100000101101110000000001011001011000010100100011010100001000011000111101001001111011000011101101101011111111011001110010101111101000001011010000000110101100101100111010011000011011000000000000111110101100000110101011011110101000011000010110010011100111011010011110010011011111111100111011000000100101001010111111010010101011011001110010110100101001011110011100100011111001111111000111101010011100001111011010010111110011001001100100110100111000111100111011000111101001110101110010101101000011001100101011110111001001100100000001001100100111101001111111111001110110011010000001010110101100011110011100011111111101001100100001101010101101010110111000010111001000000001101010011101011001011110011011100100110110000101010001100001000101001010000000011001101110100101010011101001010101111110100000011111110101011010110001100000110100110011110010100000101110001010111110100011001001110000111101101100001010110000010011111111011001011000101011100111101110100101111000010111111101000010001001010110101000011001001010010000100100011000011011111010101110000000000110010111000001000010001101001101100001111000110101011000110000101000001100101100110001011000001000010111010010101111010010011011001000011100110100011011011101001111010000100001010110100010010101110110110111000100011000100000110010110011010110011001011101011101000111011111011010101100000000101101100010110100100000000111001110011111110100110100101110011101001100100101111000100111101100100101010001111111110100010110110010111111100011001110011101011111110100000000000111010000001001111000110111000001010001011000000100011001110111000011111100010001111110100110001101011101101110100111111100011010000101100111010011010111111001011001110111000111000101011111101010111001001100000101010010101101111100000111001110010010101001101100110010011001100000100101001001011101011101100001110000100111110001000110001111101001000001011001010100100110111011000110010101001010110011001011111101101110101110010000000100011100011011101001110111100010011011011110001101111110100110011100101010010100101010100011110000101111101000101000000011001110100000101011100110000010110000000101111001011101011000110110001101111011001001110100010010101111111000011010100100000010100101010000110011110100110001101010001111010101110101100000100101111111110001101001111111110110011100100100011100010001101100101000011111001010110010110001101101101001000101110100010100010101111000111000001110110011111111111111110011110110001101000101101111001101000111110000000011111110100001010001100000011011101000110001100011010110011010001110110110010111101011010100000101001110011001010010110110011110000011000001001101001010110011001001000111011111111100101111001101110000010001001110111000111011110110011000001100001101100000110011110110100010000001001000001101000101111000100101111101011111000011000101110011101011101110100110111100010111101011110111101001110000010110111001001110110101110110011011010000011001011111001000010011011010111100001100010001100001100011001010110010100100111001111001100010010010110110110000100110000011111101011101010001100010010111100010101011000010111100011001010111111100110010101100000100111011101001101101110010100100100100101101000111010001110011110111010001011011100011111000100110111001101101100011001111011000001010101001101000010011001011000011100011111111001111001010010111110110010111000011101110000000110111001001111111110100101000001011111001111010011011111000110000110110100100101000111100010000001000110111011110101000001100111010011101100010110111011110001001000010110011001000001010001001110010100000011001011111100000000101000001011111001010010011001001100100111001111001000100110001000001100001110110010100001101000011001100111110100110100110010100111000001100111011001100011101101010110000000010111011101111010001111010100011001010111101100000101001000000101101001100000000011111100100011011010100111000111111111011100101101011000110101111010011111011101011010110100110111011000101111000001010110101000111101011001101010100111010011110110001100111110101011010110111110110010000010111100001000001110010011001111100110001010100110011101001100010011100111001010010100000110101000101111010110011110110110001010111111000101100100000111100100111111101110001111011100011100101010110101110000011100101111000010110111111110101011100111000100100000001110110110100001001111010110101110110010010101100111000001000010101100111111011000101100110011100010001011000101101011010110010111110110011000111000000100100100110110111001000001100011011011110010100011100001011011011010000110011101101001001001010110001100101100001011010101010001000010100011010101110101111100011100110111000001111011011100101010011100010001101010011110111001101011110000011001001100110000100011011001011001001011010101100100001001101101111111011100011000101000001110100011011000111001010110010111000010111001100101111110100011010111010010111100001110001011011110101111010111100000101101110110111101111100000001100101111100101100101001101000110010111000011101111000001000101101000110100110010000011001001110001011010001110110000101101011001110001100110101000000110010011001101011100111000110001011010010101110010001010111010101010101011011010110101011110010101111110001100000000010111110101100011000000111101110101100010011001111100011000111111100010100010000000111001001110001001101001011101111011111110111111100111000100111111010100111001001111100101010110110101100101110111100101111110111010010100110001111001100000000111111000111010001100010000000110110001100101011110100110 +011100001110000011110001010010100110110111111101100010010010110001100011001110010000110101001011101010101000010110001100001011010101001111001010100011100010101011100101100110110110100011100001010001001010110011000101101001100011011000101010011110100101010100111101001001101011110001100000001010110000010001011000110000100010010010100010011111001011010110001001010010110110001010100111000010011010010010001110001011011011100100111101010110010010111000110100011001111010101111010111001111111111010101101100110000011010101001100110111111111100010110110010001111111100011111101010111100101100010001111101001111111100110110101110000100010110000010010100111001010011010010000110110010010111101100111110110101101010010011011101011000101000011010000100001110111100111101000000010010110000001001111001001110101000111111101110010101101001101001011000000010100000010001100001111110100100010011100100010011100110010111010110101001000111101011001101000001100011010010010101111110101101001100011111111100100110001101100110111000000100111000100100001111000111100011010000011111111000110010001110100100001011110000011000000101111100111111011001001010001100100001010010110100011000110101110000011001011100111010011111011111001010101011100111011000101011001110011100011000100110100110110000100110101001100000100110010110011110110001000101001111100100000110110111000001011111101001111000100111110111001100101011010001100010101100100011100000001110110001110010101110011001111111101011101110011000110101001010010001010010101011000100110101010111001000010011010111101011100101000010110000100110110010100101001111101100101000010000110011000010010010011010110101011101110101110001001001100100100101001001110000100100010111010110011110010111100100000010100111101111110100001100011110001100111000010110011000010000101111110010000100011010100001101000001000000011010100010011000101100101001010101101001011001000101010000011010111110001010110100011100111110100110111001111101110100111000110010101101110011010001000010100010010000100110110110011011100100100110000100011000011010001001101000010110100001000011101011110110101110100101001100111110110001001010100011101011011011100001001100000111000111111111100100011111100101100011001101100011100010101100011111000111100011101010100110011111011001110001000010000111001110101110100010101000001010011111111110001100110000110101000101011100100101000101011010000111100010001010110010011001011001100110001100000111011011111111010000010101100100000110010000011011100000001111010010000001011100011100011100000100000010101010100110011000000010001010100101111000110101110111001001110010111100101011001110010100001110011011001000011001101111101111111010111001000001000111011111110101100011111010101011111101011101110000011100001110101001011010110100001001111000001010110111110101000011011000001110100100110111110111001011101110011110010011000100000000110101000000110110101001101101001001111110001111111001100111000010000101000011001011010010100100101110001011101110011101001111001001111111011110000100100000011010111011100001001011100110000000011101100011100001000001001100111111111011010011110010100100111011110001011111000111001000101011101011110000011011100010111010001111000110010010000011000000101101110010111001110111011011000100101111101110001110001001101101000111001001100000000001001001101100000100010100010110111000100001111010110000001110100110111001010000000111101100110100110000100101001100110110001111101010000001000000011100010000110000000110100000111000010111000100100010101010101010011001000111111110000000000101110001000111000000000000101001110101101101100101111001100001101011011011100011010110110010011101111011000011101010101011100000110100100001001110001101100100110000101000001101010100101011010101101000010100111110111011011000011001100110101100011111110101101010010101111010000110000100111000011000000001000010001011011001011111011110010110010001110011100100110011101110011101110110001110001110010001111001001110001101000111000010010011111000111000001111100100111001011110110000010000011111000000000010111101010011011101010111001000010111101001101011001010101000101101000111001101011011111111101111110011010011100100000111010101000111001101111011100010010000110000011100001001010010101010010011110110110101001101001011110100111011110000101000100111010100110000110101010110011001110101001010001000111100010010000000110110010110001000001110110111000010111100111011111000010100100100010111000100111000101001111010001100110111111101010000111000101101011011110100000000010001010111001010010100000100001111100101111111001111011000000000101010111011001001111110100010110111010000011110100110111110100001011010110110000110101101100101010110001100010011011010100010001011111111101110110110101110110000110111110111111101000111011101101111000011110100110000---------------------100010100101010000000011000011111010000010011011000001000000101000101110001110000001000000001100110001000111100001011111001011000010111101111100010100001001100010111000001111011001001011111110111000111011100011100110110100001000000001101111011101111011101011100010100001100000001001011101110100100011000110110100110110110110111000111100011011001001110011011100011000000001101010000100010000011010111110100101111111011110010111011101110111111011110010011100011011111011011001111110111000101110100101000100100111111100000011000011100011101101000101101011010101011110100001011001000010100110011101010011100000110111110111101100101010101101000110011111110010011101011001010000001111111111101101010001111011000011010010101111010010001001011011101010101010010101100010111111110111111010111111010111101110001000010110010111001110011111011000011101110100001111011000101111010000101110011100110110000101011101011001111011111111101000000110111110101010100010101001100010010001110100110011110111100100001001100101110101010000101000111010011100011011011011111100110011010001101011101010110101111110110000101111111001000111101101001101110100101000100111000100110011001010100110110010110010011100001001001010110010011000110100010011100100110111001011101101000000000000001000111110101111001111001101111001101101010000100000011011010011110100110000100110011001101000111111101000100101110101101011101111001001110111011110011100011011000001100011010001011101101011000111011011110011100000001101101011110111011101001111100010100000001011010101111101001000010001100110001101100001011011010000100010110000110010011111010000100101010011100100011010001100011110100000001011101001001001011100011111111000111000110101101011111100111000100110111111100010000001111111001011100001011010101011000111010101000101001000000010101000100101000001101000110111110001110100000001110010101101011011000000100101001100011010100010001110000011111100101101100001111011110001110000001110101000100001110011000101110011100010111001101000001110000011011010010101110101001100100100010100001110111010110010100001101101110001010110010001111000100001010010011010111010010110101100001101010110000100000010100111100110011010101110100111100100111101110011010001011010011000100001101010100111011111100011101111011101111011110010011101001011011100001101011110001010011101011100101111011011000011001000000100100110000110011111101101001110011111001100001110001001100000011000010111110101111100100011000010000111011110000110101110000001011011110111101001000011011010010111001010100001011000101110000101100101110110001111010110001010011101101111001001101111010111101011011000001010000000110001111101000011000001110100000010000101111101100011100101001000101101011001111110011010100100101100001111001100011000110101110001110011000111010010111011111011010001011011000110011000101000001110110101011100101101101110001001011110010001010111010110011111101100001000101010101101100100010000011001111110101100001111100000100000111111111000000000110010011111000100000000111010011100011010001111000011111111011000000000001101110010001001001010011000111110111101000111101110001101001000100100110111011010010111010101001100101110111000100011101010000111000100110001001011011101001010101010010010111100100001000100000001000000001110100100100010110001101111111001000011111000011111011110111111100110011101000011111011100111101110010001000011101001110011101110110111000110101011010010000001110100101010001001111001100101010101100000110111011001011101000100010001001001000011010001101001011101011000111101110110000010000001101001110110000101100011000010100011001010010010100101100100101001111100000111011101111000100000000011001001111111101100001110111100110001001110100101010110111001111011110111010101101011110001011010001011100110110000011000001101001101111011000111011000101011010110110111000000001111011101111110111111010010100011100101111000110001000101011001110000111110000011101101101011000001011110000000000001101110111110101001001111000101110000100100000001011011101000101000000000001001010000001110110100010100011000110101000010010010101101100001110011100110011011110101001010000011100010011111010000010001011100111001011011101010111010101110110000001000000111010100000100001100000010010101000110101100011101011000011001001001010100100100011100001100100010110010001001001101110001110111000011111101110011000111101000101010001101000001010011111100010110010001111001010111011100001111100101010100000010010011111111011111110010111000001110000010110100011110111011100101101001100011100101110011111000110001110111011000000011000110000010001110100100111000100011110011011101000010010101011111001001100001111111110001111111001100100011000000101110100000001110000100010010000110011111101000011000110100101011110010111010100001100001010111000100111111011011010001011100111010001100000110111111001101011111000111111100010010001001011001110010101011111101010011000100111010001000100001100111001110111011000100110110100110111010010000000011101111010010111100000000110110110111110001001100101000010101001111010001000111110011110011101100111010001110111100000001100010101001011010111110100000011100010010000100000101110010101100000010111010000111101001111001110000101111111101101011101001101101111011011110001010000001111100110000010110100100110011001010111101000001010001100101110000010110011110000100100100000000110101110100110101101011100110010000111000111100001010101001000101100100000111010100111100101100110011001100110110000001110111110110011101111110010011111000000111111000010110010101101010101100010101110101010111111011100101001001000111101000111110010111100101100111111001110010011100010110101010100001010111110101011000001001000101110011000000010001001000000000011100001101000101111110001100010000010011110111101000000001101001001011100101100010011111110001000110111100101011111001111111100000011110100000001110101001001000101101100010101011110100111100001100111011000010001001001110011001010111100000100000100110011011001000011110100010101010011110110000100111010010001111100100011000101000100010111011010111010001011111110101100110101010000100011101111111100101110001101110110010011011011011001011010100010101110111101110100101100100110111011000011110111001000101110000111111010100010100000011111100110010000110001100101011100001010101111110011111110001110000100010110101010011110010100110110101101110111010000010111101001100110001001111010000100011010001101110010101010111010101011110010000111101000100011001111000100010001010110001010001100111011100001101000011100010101000111001011001000010010110100000010111010101100000000000010000101111100100001101000000001000011100001111111011000010000010010111101011111111100110101001010011001110011010100101010111101101000000111100000111110011100010000110000110101000001110101100100011100011001101001100010001110110010000011011011111111111011010101010010011111001101101110111010001011111100110110101101111010110001111100010001001111100110011001101001110010010101101100110000011100011101011010110001011001110110000001000111011011011111001111101111000001101011100110100010111100010111110010101011110111011101111110111111010100101000110011011110000101111100000110111010101000111001110101100010101001100010000111011011110001111101000000110110110101100011110110111010110011101100101011010010110100001001101010011111001011110100110000111010001100010011100110010010111011010110001001100111011001100010011111000000111001101100110110000111010000101011100100011000000111011010000110010011111101101111110000111100011110110110100000101000000100110010000110100010011001101010100010010111111100110100110100100101010101111101111010101100111110000111001010011100000000100111101011110110100000101101011110101100101011001100110110011111011110101010111100110000100100111010010010000011001110101111001001111001011010001010001101100100101010100010000000101110101000111001111110010010111110010101111110010111101001011010110110010000111011111111110000111111110100011011011100001000111100100111011110110011110001000110100100100011110010011101000000001111001111011110100110011100000101000010111110101010000001100101010000011110110100101100100001000101111110110111000111111001001100110111110011001000110101101101101110011000101011111010111000010100001001100010100101101010101100100010000110001011000110111100111011010110010000000010100101010111101000001011111111011011001110101101010001110010100001100011010011000101100110001100100011100101110010110101100101011101101100011001111001011111111101000110001100001110000001000011011011001000110100110010110101110010100110010011101100111101101101010011011001110100111110100110000100101010011000001001110010100111011100101110111011111100101010000111010010001100111000111101011111100100000100111101000100100101000000011001101111110101101001001000110101000111100111100001010000000011011100001101110011101100101100111001101101011100101001111010001101000010111100001000111001101110110101001001010010001101100110000100010101110111010100110101011101100110111111101100110000011110000100111010000110100001011010101111001010001000010010100000110010111111101000110001011110110001100100101000001010000010100000001011011010101011001100100100010000110101111100011001100110000011101011011101101110110110010001101111111100011111001011110001001111100110011010011001110000111111111111001010111101100010111110010010100011000000101000010100100000110011001111001011110010101111011001001101100000000101001001101100100001111101010111010010100010110111001001001010011010010100000101100000011001111111001000010000110010011010000010001000010110100000110010100011101111010100111111001111110101001111001011011100011101111110001011111001011110010111111010001011110000001011000000100010010100100100000110010011010110101100000111001101101100110110110000100000010010101000110101110001000110010010011110000111000100101011010011111000000000100011110010101011001110101110110011111111010111000111100001110101110001010001101110101100111010100011100101011101010101001111111010011010001111011100010010001001001111111000100111101101111111101011111101100000010111110000101110111100100001101100010111000001111000100000010111010100000011100000010111000100110001111100011000110011000111001101111001001000011001001101000111001000111001011001010010100010100110001100011100001000011100001110011100001101101101000110010101100110101110010100010110011111001100111010101110100011010111000001010010011110110110110111111011010100011110111111001011111011111110001000111010100110111001110001100010010100100001101000100000101000001110011010001100110111111111110110100101011010101010100110001110011100010000101100000100110101010000010000110001011011101010100110111011001000000001111100110010000011100010010111100010001101000100010111101010111001000001111110101000010100101010011111101010110101010111010110001101110111110010110011000010000111101001011101111110101100000000010000100011011000010110100101111000001111111011010011111001011011111110000110001011011100110101000011111101011100100100110101101010100101001101010000010011100111101100001011100101100010001010000101110110010101111000001101010001011 +101001100100100111001100011110011000111100001110011010100100001110000011001111111100000010010101011001111010000000010010111010010011011100110011001001011111010101110110011111001100010001010001101010010011100011010101010010110010011111011000011100000000011111110110100101010001011100100111110110101100010111110000100010000111110001011011101011101111000100101100001111111011011001110110111111001011011001111010001010010000101010110100110011101000000111101100111010000110001111010010100010111101100111010110101111110110110011011011101010010101010011011011100000010110100000000010100101100000000001100110100010010011101010010111111011110011101001000011100011001100100100110110010011000111000000111000011011000001101010011110111000010111101111110010011101010010101110010011100101001000100000010111010011101001101101001100111011000011110010001010110010000011100010010111010001100100110101111000001111001001001010101111000011111000010000111100100011011101110111011000101110100000010111001110000110100110100000000011010000101110001011101101001011011101110110100101111101111001001000101001100010001011101111010000100111110111100111000111011011011001010011111011001101000001010000110000011000001000000010110110000011010001011001111010000111111010101100010100010001011000000001001010110111010011010001101110001101000110100000101000011111111110111010010100111101011011111011111100011101000101010011001000111000011000111110100101000000001000100001010101000100000011000000101111011110111111001101111001110001011110111000000010101001100101000100011101010001011000001000111011110001010011000101110010011010001011010001110001011010000110100111010011111011010011101011110101010100111110011101001011001101101100000001110001010011101000000111100110001110010011111001011100100100111110101000111001001100110010110110001101000011111111001000100111100101101000010011110000011100000001000110001011100011000101100001011001001010101000111110100000100100000010101111100101100111000111110001010000110101100000101000110011000111111000000111001000111101000111001100101110110111110111000101110101000100000001110010100101001011000011000010110101010100011011111001000011101001010111000100100001100110110000001110100010111010001111101001011101111010101101001101011001000011100100010101000110000000000010101001000101100111000011010101101000011101001101000110001100101000010011001111110111110100001001001011010000011111110111000111010000100101100111010110011011101111110100011100000101001111111101011101111110110100110001001001001111100000100100101101010111001100010110111010110010110000100101111101001101001001011111001100110101111010111010110101000100010010101110110000100110001110101101001100101100010101101010000111111110001000100001010101010000101101111011101011100000101100001110011001101110111001100010101011011100100000101110100101110001100010101101110101010010110001111101011111111011011110111101110111010101100011011011000100101001010111100011000110100011111110010110011111100110110101001100000110100011010101101110110100101100001100001100010101101111101011101111111011010001111010100100110100110011000010111011110110101000001101110101011010110101001110010111100010010010010001111110000111110100000000001110100100101000111111110010111010100111100001101001001000011010111100011111110100100110111100111110100000111100011110000101111110000100101010101101101101111010010001001001011010101001101101001111100011101110001000110010100101111000100000110101011000110000001011101100000111000101101111101101100011001101011001000000011001010100100000110011111100010111100011100111111111001010001111111001000100010010100011101110101011111001100010100101111101110100011101111011000111001101001001001011100110000111110101001001000001111110010011111011110010111100011101111100010000111111010100111100000111101110000100000111000001101011011111001111101011001000111011010101000000001001101010100101001011000001111100101011010100110101100000000101101100110111010011010011100101111011010010001001111000101101000010110110111011001010110001011011101110101100101000010101001100011011001000010001100010001100110000110000101101110001011100100010100110001110001010101011010001101000110100011001101000010000010101100101010101001010010100001011000011100010110010010011110010101001000111001110000101001000111101101101101110100101101001010110010001000010000101111001100011001101001111110001001100011001011011010111000000111011010111011110110001001001110110001101110110111001001011100110001110100011010000100001100011001111100110111101010010110111001001101111100101100101101111010101101101000100111011000001000111010100010010101001000011010000001010101111111000011011111010110111110110111011010010101000111101010000011010101110110100011111101011110100000100110100100101100100000001001011000100100100011011000010100101111001010001001111111---------------------001001001111000010000001110110010001000110101010111110100100101100100001101011101110110000110001110100000011110001101000110111100110101011101111001010100101000100110111100111111100100110011011000010110010101001110101011001101011000000000101011110101100011010010100101001000000111011000110100100100011000011001110110010010111101110000010001110101001111111101001010001011001111101110001000010000001011101010110111000010101101111111011001010011101110110100110010110101100000000111100001001111011010000110100011100010101100011001011010001100101011011001100001101011001000110110100011111111010011110011001100111101100101101010111010110001010011010110001010110001101010100010100010000010100010101110110110011010011101101110101000111100000100100111010000011011111001001100100101110101010110010011100111110101110100011111011001111001111011011101011100010110100011010111011001111110011110101000110010111110100111101000000010111001011000001111111001110011101000010001011100011010001101110000101111111111100110110111011000011101010011001010011001000000001010010010010000111110100110011010111010111011111101000101010001101100111011100011000011101101100000101010111100010101101100001001000101010001110110000101001111010001101011011010011110100011111111100010011110010000010001001011101111010010011010111101110001001111101001011010111001111100100000110010110001000011010010111011100111010110000100001000100101001111000111010111101010100101110000011101001110101011001111101010110000001100000011011011100101001110010000010001011001000101011101101011101110101110001000100000011011110101100000011001111011101100011111001110110100011111011101010001100011000110001011101010001111101000110010110011101000111111100110000001111011011010111101101001000000111000111110010011100100110000100000101100000111010010001100011101111101111010000010011010101100111000101111101010110100000000001011111000100100001000011010100001110001110101100111001010111000110011111111001010001011010000100111111010001100000101010101111111011001101110001000100100010100100111110110010100011100011110000001001001001001100100010101110001111001000110110011100010101101011110010101100101001010101110000111110001110001101011100101100001110110110101100000110001110010101101111100010101110100100010001000011010100111100010110111001111101001100111110010100111001000010110011111110000011100111101111011010001100001101000000110111011010001011110000101111111111010000111001110110101100001011001110001001010110001111100001111101110110111001100110101011100001000000000001001101111000011101111010010101000100100111011100111100111101011110011111010100010100111101100100111111110111011001110110111111010110101110001010110000100100101011100011100001101110000011100011000111011010011111110111101011101011111011000101000100001111111110001101010111110100101101111100111010111101011000001000111100100001010110101010010101111010010101111001010110100001101111010000100010001101101110101100101001011001100111010110111001010110011011000010011110110111011001010110111010100100111000100110000001110100100110111111000110001001011100010001111100010000011001101110100001011110101110100000011000011001000110100011100101010001111110101001011001010010101100110111100010011101101100100110100101001111111100111101111100001110001111111110011101010110101110001100000101011011011000100010111001101010000000101010101000101111110010011100111000111100011101000001110000100011100100111000100000101101000010001001110101100101001011000100100001000010101010001011011110100100111111000011101111101101101110000010111101011010111001010001010100000100110001101100011001100011011110100100001000001011111010100100100101110111010011000001010001001101101000110101100001011000101101100000111111010110100101000011010001110111111000011000101111100101111110110001001101110111111010011111000110110100010001001111111111100101001111101011010101110101111011011111010001111110100010000111100011011000111101100001000101101101011110101000100001101101110111100001010110010011110111110111000101001110101110010011111010111101010010010111110010010110000100011100000010010101100010111110111100101000000100111111100110100011110111011010001000110101101010111100110101101110100000100011100001110100111001110010101000011001101011011101101001110010110111011101111010010000111000001001110100101100001001010000011000101000101110110010010101010110010011100111100101010101100110110011111110110111100000110011000011100111000111101010101011010000110010010011011101011011111000101001011000110100111001111111000101101010001001000111010100111001000110100101100100011010001001001110000101111101001110101011010110111011101000110110010000000110010010101111010101000000010010111101011000011111111101111011010010000000011000111000010111101011100100000000101110011101111110001111001100110101000001000011010000011000011011000010011000101000101101100000110101000010001101101011010101000000011000010001111100000011001010001100010110011000011011100011011000001000100001110111101011111111101000001011101100100000010010110100001001001100110111001101000000110010100100100010010001110101000001000001111111010001001100001010000011010110110010010100010000001111011011111010010101001001110110000111110001001010101010101000010011010001000001000010111101100011011010111110010111010011010010100111001011000101011010010111101011101000111101111101011111010011011010001011100101001111111001001100111001100111101010001001111001010110101011111110001001100010000001110101110101010111001011010011011011000100000001001000101000000101011110000111110101110111001010001111000101110111001100011110000011011110010010011011110011001101101110111010101001010101011011101001000111101000100000011100010000011011000111001100101111111101001101100110101001111011001111010110000111011101000110001110010110100001101001000001100011110111101000101010011101100000010100100110010101101111101110100001010001111100101011111100100010111000001111000110001001100010000010001101111111100111011000101010101011100000010011110001001011010000000011110010100101010000110000010010100011101011010111110100101110011110011101110011110000000011111001100000000111101100010110110100110010110111101100111110010101110000011011101101111100111001111000100000111011010101111000100111010011110010100111001110011011001011001110000011101001010010100100101000011010110011101101011111111001101010101001100010110010001110010101110100001000100010110111111111110111110110111100111101000111100001011000000000101101111011011111010111111011111011001010101000000010000001010000010100010010010010111001111100001110011101111101011111100111011010100101001000110010001011000110010101000110110110100001001110010001001100111110101011000011000011110100010010110000111001110000111000111001010101100111101001100011010111100101100110000100011100101000111010101100011001011000110001000010001001011010111001000100101010010000000101101110010101110101000000110010110110000110110110010001011100000100100001110010001011111101011010100101100110100111010001100010010100000011101000101010100000001000101011111110111001011101001111111010000010110100101101101001011010110010011000000010110001001010110010100011001110101001001000001011100110000101100100011111111101110001010000010110011100101011010101110100101111110111010010110100010010101010000101100010110111000010101101100011110010000111000111111001001110110001010111101101001000010100010001001000011001000111010011010010001100110111111011100001101111011001100111111111110110101100011010010110011000010111101001111111110010101010001011001110110010000000000101000111101101101110011111010110000000000101000011010001000101001111111001111101011110000010010100000000101011111010010000001100111001111110101001110000000001001001111111100001111111010001110011000000001000000111010100111010001010100000000001001010000010011100100011010100101101011001011010011010001110011111100101001110101010111100100011111100101111010001011010100110101001110100101111010010111111001100000000101110000000111101010000100001000000010101100111110100010011110100100000101001001000100101101101100110001101110001010001000011011011000101101010111010010010111100101001111001111101100110110001111010000101001000111001001100100110001101001010010111000101111001100101111111010110100100011101111001101001001000010011101000001111010001100101001101110000111001000000110100101101100110010010001001001100101110010010100010101001001001101011101111110111001011100011111001001010101100011001111011000010000110100100100000110100011101110001111111000001001010001101000100010000000000001010001100101101010011011001011100111101010001110001000110100001110000010111010000001010110101100110110111000011001000110111000011001111001100011010010011010011101101110100000010001111010010011100111001010011110101010010101110001111011011111111000011010000110010100101100000010101011000010001001011110110001000001001111000001111111000111011011111010101111011101101011100100100101011100011000010000100000010000110101011001000111110000010111101011110010011110011010111000111011110001011010011111011111111100000110110001001100100110100111100101111111110001101100000101011111101010010111001100111011000001110100010000000111111011001101011001010001000100001000000100100010001111001010000011001011110010011100010111101100011111000000100110100000000101111101111011011111101111001000100110101010101100101110111010111010000001100001000011100001111101011110110010010001001111001110110011110111110011111000011011010111001010000110001001010010100000111100011010010001000001100111111011101000000001100100110010111111111101110000100001101011101010010110001101101001110001100011001001000101000100110100010110010011010001110100101110101110010011011100111011100011001101110011011000010101011111110110100111011111111000101101011011001010011110000110001001110101011000100010100000010111101111011111011001010001111111000100100110011010011000011100001011011000100011100110000010111110101110100010101110001001000101000101110110001010101111010011110100010111000000110001001100110110000001100011110001111001011100111111101011001011010100100110100111100010000110100110101100110101001101000100101101100011000100111010101011110010011010000101100001010100010011011011100111010001000000011001010001001000110111101100000111011100010101100001111111000000000101111001101110011100001010011000000101010101100101011111010101000001001011100101011000110001100001001110000110000110101001111111011110001001000011000001111100001100000011110100010101000100101011001001001101111111001101101001100000011111001001001011000101000001011101101100100011110000010101000111100010000110000101011110100011001111111101100111001110001101110110101110001101000110001001110001110000000101011101110010111001000000100011011000001001110000010111001000111110000111111000011101110100011111100001000000011101010000000001101010110000001110111101011001001111101111011010000110000101110101011100111101110110111110011100101000101011011100110100000011101110101000011011110000010100011001001110101010000010000001011101111111011010111011001001101000010100110000100110110000110101000111111110011010100000101110010000011000010111001100011111110110101100011 diff --git a/lib/src/phy/fec/ldpc/test/examplesBG2.dat b/lib/src/phy/fec/ldpc/test/examplesBG2.dat new file mode 100644 index 000000000..a88de4207 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/examplesBG2.dat @@ -0,0 +1,1122 @@ +ls2msgs +00111111110--------- +01101111010--------- +11000011001--------- +00011111100--------- +01101000011--------- +01110010010--------- +10110110001--------- +00011100111--------- +00100010111--------- +11011000011--------- +ls2cwds +1111110---------110000001111001111001100001111111111000000000011000011000011111100000011111111000011 +1111010---------011001010110000110101111000101011001011001000101010111010100110000010100100011110011 +0011001---------111110010010101101001110001010110111110011100010000111110111101011111101110101011010 +1111100---------001000000011101101111000110111010011000101001011100011001010110100110011110000001100 +1000011---------010001100001001010111100011011000001011000111100111110011000111110001011111111111000 +0010010---------100111001111110101000110110101010101010011011111110111011100001110010101010110010110 +0110001---------111000111101010001011010000101110111100110010110010001100010000000101000110011010100 +1100111---------010010100100100111001010101100100001001110101010101011001111010000011100111100101111 +0010111---------110000001011100010100100001001110100000101001011101000001111101010110011001111001100 +1000011---------001111000100100001010111011001001011111000110001000110110110110110100011010011001000 +ls4msgs +0000101110000001100110111000101--------- +0001111000101101001011001101010--------- +1100101110101100010010110011111--------- +1111010111011010010010110111100--------- +1000001111001100010111010011001--------- +1001000011000100001001101111001--------- +1001001010111100111100000000111--------- +0010011011111110011100000010000--------- +0100010001111000000111100010100--------- +1111000111011101011001011010000--------- +ls4cwds +10000001100110111000101---------110101111111001001010111001110010001110110101000100001100101000001010111100000000011100010100110101010110011010000101001101010100100110011010111100011111110010101001101 +00101101001011001101010---------011101100111111100000111010100110010101000000011000011000000111111001001011110000011111010100101101011011110111110010110010101000101110110010010100001001101000101101101 +10101100010010110011111---------000000011001011000000000010010101011010111111110111100010101010010101000101111010100010110111110101101110010010101100111001100101110010000110100110100110111111011000100 +11011010010010110111100---------100101011010110100000101000010000000001100111010101011010011100101010001000010010111100010110100101101000010010000111011010011101110100101111011101000100001110111001000 +11001100010111010011001---------001011000100010011100010111010001111101101010010110010011101110001000110110000111111100110100101101001011101000110110111111101001110111110001101001100111101011110011110 +11000100001001101111001---------001100101010100111010101011010011100011101110111101010100111000110000100111010100000111101100111011011110100011010100100010000111010011100000111001001010001010011000100 +10111100111100000000111---------100001111001000011110100110000011000101101010010101001001010011000001100001011111001100101011010010110011001100111111001000010000000000111111111110001001100010011111001 +11111110011100000010000---------000010000100000011001001001110000000011111110001011010000011000010101111101001110110001001100110011000101011001101101111111110011001111110011000110100000001000011111110 +01111000000111100010100---------110111000011100001010011111010011100111110010010010100011000010100101111111011011010011010101101101010101011010110000000010000000011000111000000101110101010011000010110 +11011101011001011010000---------110011101010001111001111000111000001011001111100110101111001010011000000010101110101001110100100101010101101101001011001101100100000101110010000100011110110010110000011 +ls8msgs +10000001011001100110010101101110100000101110101100001100101100101110100--------- +01001000110101100111001100001111100010100111100010100011011111111101100--------- +11000001000001010101110000011111011100101110010011110010000101111011011--------- +01110100111111001011111010000000110001010011001010011111011011110011101--------- +00101110110011000110111011001101101101111001011111111000101010110111101--------- +11101010100001000000001011101011101100010110101101111100010101110101110--------- +10000001111111011001010001011100111001000110100111001111001100001110110--------- +11110101011111101111101111011111000000001100111101111000111010000100000--------- +10111110110011110111101100110010000111110011001100100000101111110011111--------- +11000010100111011001011011010011100101101111011001101101101001010100010--------- +ls8cwds +0110010101101110100000101110101100001100101100101110100---------100110110011101010111111001101001000100011100111011010100010101000010110010000001001101000010011100010101010001011001110100001101111011101110000111000101001000111011011011010110010101101001001101100101010011010011010100001111100000000101110001111001111000101010111101000011011100000111010100010111100011000010010000101011000110100111111 +0111001100001111100010100111100010100011011111111101100---------001011100001101100000011000101000111101001011010111011000000000001100111111001011010001110100001001010100010101000111101001101101010000101011101111101110001010100101101101101110000110001000010001011100000001110000010100110010000100110001001001111110111001101100110101100010110001101011000101001010111101101001100110111110001011001100100 +0101110000011111011100101110010011110010000101111011011---------000111101101101000100011111010000010001010011111000101000000010011111001010100000001010010010111101110111000110111110011010110100111111001000111100010111000110010101011011001010110111100100001101000110101001010000000101110001110110100100000111001001100010110000001010001001110010010000011010101111000010010100111000111010100010000100000 +1011111010000000110001010011001010011111011011110011101---------100000111110111010111000110010101110101111001011110101100100010100001100101001110010100010011111100001010110110001100101101111111110101100011111100001001111001010100101100001000110000010110010110010100110010011110011101110110011110110001101101100110110011011011100000000010001100010111100010101010111100100001101001011100110100000000100 +0110111011001101101101111001011111111000101010110111101---------100000111000100011001011011111100000011001000001010111110011110001001010000111010110010110110101101000100100001110101101101000011100000110100011101011111101110001001101111100100000010010011100010000001001101100101010010100100011010111000011111101111100111100110011010000001110111101001010110101110010001100011010100000100000110001001001 +0000001011101011101100010110101101111100010101110101110---------010100000001010100011001100001111111110011110000010011101111011111011101001011111100100010100101111100101011001111110011110111010101010111011010000000101001110111010011110000010010000011110000001100010001100011101100110101001110011110110000110001000001110101011011110101110000110011101000011100110100000110101010011001000000011100100001 +1001010001011100111001000110100111001111001100001110110---------110000111011111000001000000111000010110011011001001100111000011100011101010101010011111000010011011111111100011110011001001110100111000100011011111001111001100011101001110110110011010101111000110110111000111011110010011001101101000101001000010000111100111110010010010101001100110011001101111111010001000011110100111000111001011001111001 +1111101111011111000000001100111101111000111010000100000---------000001011110111000110101100100000100011100111010111101010111001010101111001011000011011010110001011010110110001011100100111100001100100111101101000111010001011100100100000111000110001011110111010000001010001101111100110010010110000111010111111000111101100001100110000110010000000001000100000000100110000010111011101000000100001110111110 +0111101100110010000111110011001100100000101111110011111---------111000010001111000001101011000000000100111011100101101100000101100011111100010101011110101101110011110010101110110101110110001100101010010110101100101010110000011000010100100100100111000000010001010001101100000111100101011101100100100001011111100011111111110001010010000110101001010100011110010110011111110101100100100000001010001111110 +1001011011010011100101101111011001101101101001010100010---------001011011001000010100010000110110011100100011011111010011110001101111111100010011111010001010111000000111011011110101001100100101111011011101000000011111110001001001001010100010010110001000010110100110100001111001110011101001101111101100010111101100100000011001100010110101111001110000101000111111110010000110001101100011110010011000001 +ls16msgs +1011111001111100111010100110000100101011000011000111001110101011100011100010000000111011110010111000001000111100001101001100001100110010001010001100100--------- +1000000110110000011111111100100011000110101100001110010010011111011011111110100000100111101010000101000000101001001000100001110111000000101110000010111--------- +0111001110100111110000111101011110100001011011111010100110111110010000100011000100111101111111110011100001000101001100101111111100010010110010100100001--------- +1000001000111101001011101111100111110111111111111001101010001100001100010011011010110111111100110101000001000000010011101001110010011000001000110110001--------- +1110001111010001010001111001011101011001100111010111010111100001101111111111010111101110010111111001011010101101010010011000011101010101010010010111001--------- +0100011111101000110111101001101110101000101100010001101010110011011001110101100000100000010000110100010011100010010010101011001100110000011110110011100--------- +0110000110010001101110001110111001001011000101111110110110010010000110001001110011001111100001110111000111010000001010001100110100101000000101001111100--------- +0110101101100010000010101101000000110101011001010111000000101000101010000001011101000011100111110010110101010110100011010010011010100110110110100001110--------- +1011101101111000000101101111011101000001010010010101011010101001100101110010100000010010110110001001111010001110011001001001010111001011101111001100011--------- +1001111110110001101001011110111011001010011001001001000001101111001011100101001100110101010100001010101011011101000111011110001110110100111110101110110--------- +ls16cwds +00101011000011000111001110101011100011100010000000111011110010111000001000111100001101001100001100110010001010001100100---------111001011110101010110110100100100001000110111010011010000000101100100010110001001100000110011101100111101111110000001101111101010011101110000011000111001111000000111100011111011111110111010100111000010100000100001010011011001110100010001011010100110100011011101001000011010000001011010100000100000001100101001101100010101001000001100111110010110000001001101111000111101010101100110000000110110000100001010100011101110010001100011010011000101111111100101101100111111111000100010000101110111011101101010111101111110010010011001010101010111101111001000100000100010101001110100110000001000011111001010010100110111011111010110001001010101001101001110111010010110000100100001001 +11000110101100001110010010011111011011111110100000100111101010000101000000101001001000100001110111000000101110000010111---------111101101001010100110010101001011001010011001000010001011101010010101101000000100001010110001000000101001000010111011000100111010000110110111011101101111010001000000111011111110011101001101001100000010000001011001101111000000001111101111101101000100110100010111110011011101100001111010100110000001100101000001111001010100101011101110100111111000100100001111100101010100010111010001110100110011110100110011001011100100100110000000111101001000010100111111101001010101000000000111100101001011000110110101010010101111011011010011101111001010110101011001001110100101010000110001010110100001010001001000101100101100000100000001000110000011101101110111101010000011010001111011000 +10100001011011111010100110111110010000100011000100111101111111110011100001000101001100101111111100010010110010100100001---------111011111000100001110100011011110000001101010100111011110001000101011111011100010010010100000111110110110000101011001001000111001111100100011100110101100000110011110011101110011101000101011100011010000010111101011011001001001101110010100000011001110001000111001100101110101101000111000011010111011101001011111111000110101101001100000110111000110011011000100000010000101110100110001011100011011011110011001001101010000010100110111010100001011110111111011101001101011101101010111110010101000100111010000001001011001110100001000010011111100111010100000110101001011110101010001101110100000001100111001111100010110000110111001010010001111010110011110111111111000010001110010101 +11110111111111111001101010001100001100010011011010110111111100110101000001000000010011101001110010011000001000110110001---------111111000110010010010011000110001000010111001100100000000111001000100011111011101001100001010101001110000001111110111001011010100101100000010000101010011011011010011101100001011101001001111001111111101111110000000010111100100011110100001101000011001100110011011110010101101011100101101111101000110101001100111000101010111001101010111010010101111000100110110000010000011001011111101001101101000110001100011000101001111001011001111100000111011010101010111101110000010110101111100101010100001001001111100100010111100100000010101000101100011101100010101111010101000100100001100110010101101110010000011110101000111000111010010110000100101100010110100010100111000110010110100000 +01011001100111010111010111100001101111111111010111101110010111111001011010101101010010011000011101010101010010010111001---------011000110000001111011110111101110111100000101001110110101001110110000000101100011010000000101101011100110100110111010111001010101010001101001111100001110001101000000111110101011010111001011101111011101000011000100100001000000111101110000101011100011111010110110001110001110010110011110110011000101001011010010111010000110100110110111111010100010001111101111101001010110001100011001001001110110101101111000011111110110000000010110011100001110010100000000010000000011101010010111000000011100110011111101000001001010111101111111100000110101011100110110010011111011001111000011010011001000100110101010101111101011010011101000011011001011101010111011111010111111111100100100100 +10101000101100010001101010110011011001110101100000100000010000110100010011100010010010101011001100110000011110110011100---------111100100110011101101000111011100100110000110001001010010001011111101110100000011001000011111111101101101110000001011101100001001110101000001111001100011000001101100111000010011000000110111101111110000010111110010001101001000010110101000000110110111011110000001110010110010010101000101010101111010011101011010010011110100001001010101001110011001110001100100011111111101010010011100110011110101101101101001100100000001000000011011010100110010110010101001101110010101001100111010100100111100000000100111101010101000010000111110110000111111011110100101000000110010100000011101010011001010011111010110100000001110101010111011011001001111001101010000000000010111000111011001001 +01001011000101111110110110010010000110001001110011001111100001110111000111010000001010001100110100101000000101001111100---------011100000110010101100001010011001000010111111101110010101010001110010001000101010001100110001000110000011011101001111111001100001000100100111110111110001111100100111110000010000001101001001001001100101110110100011000100100111000110101111100100111010011010100010000010100001101001000001111011100100110110010001100101110110000111011111011011011000011011000001011101100001010110000111101000101001001101101100101111011100111011111010011011110010101100101000010101101000100011111001100010111100111110000101111101001001000010111011100000101100010010100011001000001110110101000011000111001110110100001111010011001100011000101110000011101011011001011000011010111101101001000111100 +00110101011001010111000000101000101010000001011101000011100111110010110101010110100011010010011010100110110110100001110---------110001110011110001101101010101111011000110011111011000101100000001000100101001111111001001111000001000011001111000100111001101011111111110000000111001111101110000111010110010011100101111101011111001100010100111011110010010101010011011110101100100100110000000010110010001011111001001001111101001110111010001100101101110111000001011010001110001110010110010011000000001100010001001010011001010110000001101000010000111110101000000101011110010010111110101001000010001111101011100001000011111000001111010000101101010110011111001011100011000100000001001000100111000111000100111111101111001011100111110000110000010000101111011001110100110110001110100010011001111100011001110010011 +01000001010010010101011010101001100101110010100000010010110110001001111010001110011001001001010111001011101111001100011---------011100110110111010100110101001010100101110111100101011000001001000110100110100111111100110001001001000010000000100011001011000000000010001110001101111010111111000100111110101001001100100111101010010011000011011000100001011111010110100100100001101101100011000000010011000001001010110111010011000111101100000001111110010100011100110100001110010001101001101100101000110011111001001011110100011110111000100110110101001101001101101101111001111111111010000011110111111010110010010010000111111001011110110000100011111101000001111011101001011100101100101101101011001101110010101101101100011000111010101111010110011010110100101110010001001010000010000100000011111101101111110000101 +11001010011001001001000001101111001011100101001100110101010100001010101011011101000111011110001110110100111110101110110---------011110000101000111111100100001100111110001011111100011001110101011000101010110110001110101001011000010111010001111111010000111011101100101001000010011111100010001000111000010001110011110101100001001011110000111110111101000010111010001110101110100010111101100111001101011100010010001101010110001010000000100100100110101011100001101011011110000001000001011001100010010011010100100011000100011111100010011111000010011001100000111010001110111110100101001110011001110010100110000100011000000010000000010100011010000100110101001001100111100111011111110111000110010111111001100111101000011001011111011111110100001001010011000001000000011110111101110101011001010101100000001100100 +ls32msgs +01111000001110100100011011000101101111001011011101110101010000111110011010110011001011100010101100010100100000101110001110011110110100111010110001110001100111100111001011111000100100110001111110010100011011000111101111000010000100011101011000100001100110010100011110100000011111000100000100101010110010110100010--------- +01111101101100011001100100001001111111000000110011110100001000010011010010011000000100011101001101011011111000011011101001100101001101011011110001011010010111000110101011010101000000100001000100001100011110100000011011001001010101011111111000100010000000000100100001011000011100110101001000010100001011100000100--------- +11100111010111011101100111011011001100001111010110100110100001110110101111000011010111110110111000000101100000001010001100110100000010000111000111001111100010111010001111000111011100100101001100011101101111111111110100000010100100101110011100001101100000111101001001110001010110100110101100100010111110010001110--------- +01100010001111001011000101111010010100111010000010110000100010110101101110000001100010000011111101001111100100001001111110010001011010111011110011000101000010001101000011100000111001110011110000001010110101011100110000001000010001010011110100010000010001110101110000001101100110001111110110010010100011010100110--------- +11001001011101111101110101111000110110101110100000110000001101011110000010101111000111101111010010011101000010011010111110000011110110011101010100111001000011001011101011111101111111111101000001101010111010000010001000110010000010011001100001101001011001111110000111001001101010010010110101110001000000101101101--------- +11010110010011110111101010011100010101101111000111100001101100111100101101110010011111011000010011101010000001110011001001001010000010100110011001101110000010011011010111011100000001111010010110010101110100000000001101100011110001101010000001110100001100111110110100101010011011101111101110000110010111000011101--------- +00011110110111101101010000010000001001100001110110010101110001001001010111100101110000111101011011101001110011101001100101111110001110001010011010010011010101001001101111111010100111011000010100011110110011110011010100100011110010101011110111011011000100010000011100011001101110101111011010110001110000110010110--------- +01110100001111101101010110101111010011110100001011101111111001000110100111110100111001101000110010101000011010001001111101001100010100000001010100111000001110011111100111010101110110000111000010001010110000010011100000100111000110010111010000010000101111001111110000001111101011100110010100010100100001100001100--------- +01010011010000000101001110001111000110011111010101000110111011001010110001001110011111110011110110010111010110000001101000001011000001101001000011000110010000101101101110110010100000101001100110011011000111001101000010011010001101111010110111100101101110001000011001111110101101011010100101010101011011100001110--------- +10000100100111000011001101011111110101100110001001101101111011011001000110001111100111101000000110011111100001110110011001101111100011001111110010110101100100010010011010111111001010100000100111111110101011100110111110011011010101000000101100111010110000000000111011100111111110110011110110011001000101111101000--------- +ls32cwds +1110011010110011001011100010101100010100100000101110001110011110110100111010110001110001100111100111001011111000100100110001111110010100011011000111101111000010000100011101011000100001100110010100011110100000011111000100000100101010110010110100010---------100101101110111110110101011100110011101010101000100101101010100110110110101110011100101011010010100010000111011100111110101100110011001010001111101110001001001001100100100010111110110111101001100011000111110101010000000100011011110111110000110111100110010011010000111011100011011111110011100100100110001010010111111101001111001000000001000001000010110100010011101001110110011011001111100010100011111011111110010010101100111011110100110010110010000111111111111000101100101110100010001110011011010101011111101101111110100101110110011001001000101011110100000111110111010000010001100000000101011000001100001111101101000110101010000010010011111001110001010001001111001010100111110111110101001101110011010000010001110001110100010010100100010101010001011001110011000100111001100011110110010110110000001100100111010010001011111001010110011000010100100000101111101100000110110110110000110011110011010001010101100011110001100111111100101111110110001011110010011111110000001001101100100111111001100111001100110100111011011100111001010100111100010101101010001101101011000010111111101101100111100110001110101100001110111111011101001111100010101111100011101011001100011011001110000010000101111111001100010101110011010001100011010010111111100111000101110010010010100110111001110000000110010010100010100010010000110001011010001010001100001100100010001101001100 +0011010010011000000100011101001101011011111000011011101001100101001101011011110001011010010111000110101011010101000000100001000100001100011110100000011011001001010101011111111000100010000000000100100001011000011100110101001000010100001011100000100---------000000110000110110111110110000110001000011111101110110100101101011100110000111111000011001101101110011111010011010110110100110001011111011011001110000111011100100111110011000101111001100001011101001111000000000110001011101111110010011010000100100110000111110011110101000001111100100011101001001001010001010001111110111101000001101000000111010110000100011010110001001111011100010111100010101011010001001010011110111110001110110001101010001000011111110001101110001011011001010001100010111000110100001110011101100010000000111001100110010001000010111100110110110011010100010110011001011100011001001010101010011000100000010100111000000110111111010111101010110110011000011110000101000100011111011100000011000001110010101001111001101011110000111001001111010011010100010100110110100111000111011100110101100111100110110110100110000001011011011110010101100100011010001110010110101010001111100110100011111100000100110110000111000100101010010100111011111100011001101100011001100100101110011000001000001001010110010011101111010101100000110110011111001010111101100010010011110111001010100100101001011101111111110011100010001111111000010011110100001001110010110101111001111101100001100011011100111100101010001111111101111101010110101101010001001001110010011010001101101101101101010100010001100001100000110100001101011110111110100110100001111011001010100011000 +0110101111000011010111110110111000000101100000001010001100110100000010000111000111001111100010111010001111000111011100100101001100011101101111111111110100000010100100101110011100001101100000111101001001110001010110100110101100100010111110010001110---------010110011001011010110101110101011011011100010100000000110110000011110011001010011011101101010010110000010100011111001000101000001110010100010010101101111101110010001001110011100001110001000110001011010001011100101000101100001011000100000010011001010110001001110000001001010100010011001010100111010001000000011111011100100100110101100010100101011001010001001110110101110010101000111000110010010011100011111100010001101010000100001110110010000010111000110001010101010000011100010110111110000010001101110100101001010001001101111100100111010010100000001000101010100111100110000110111111101000010001100010000010010010111100110011100011001101110111101001101111100100000011100110001110100111011100010100001000111111100111011100110001100001011000110100011111101110011000110001100010100100011010111111010000010100111111100001111010101001101100111011100101010000011011101110110111001101011100000100000110010101100000000100010111100000000011010111111010001000000110001111100111011110010100111100010001100101010000010101100011011000001011011010001001000111001111110111001001111110101110000100000100111011000011111101110101011101010110010010100110011011100101011110001000110000000111111001110110011111101010101100000101100100101011010010011001111100001000100000010100001001001100100111110010110111111010101100101100100110101011000001001010001100001001111010 +0101101110000001100010000011111101001111100100001001111110010001011010111011110011000101000010001101000011100000111001110011110000001010110101011100110000001000010001010011110100010000010001110101110000001101100110001111110110010010100011010100110---------001000100011011100111001100000011011111101011000101001010100010111011000011011011101010101111000111111010101100011011111101110010000010101010101010110110001011000010010011101100001110110011001000110011110100110000011011100000100111011111001011011011110001011100011110000111110101010011011001100000000001010111010011111101111000100010001111110011101101010111101011100001011010110101000110011110100100110010000010110111011100101100001110110110111000110111110010100000001101101111110101111111010010001101011111010100101101111000010010110100011011001010100100111010000101001001011110011000110100111101111110000111011011111000000010010100010000011100011001011111000011010111101100000111001001110100110001100000111100100101000111010000011110100000000000000101010000000011100101011010010111100101110101001101110111011000101000110011101010101011100110010110010010110011111001110001011010000010000100001000100111011000000010110111010111001000011010100100100010010100010100111011101000101101001000100110111100001110011100100100011110111010000111011110001101111001010010100100000010110001110100100001111000101000101111001111100000000101001111011000010111100010011001101100110000101011101101101001101010111101111000101011010001100111100011110101001010111011001111010000000111000010000101011100101101110110000110110011111000111101010001100100101000010100101 +1110000010101111000111101111010010011101000010011010111110000011110110011101010100111001000011001011101011111101111111111101000001101010111010000010001000110010000010011001100001101001011001111110000111001001101010010010110101110001000000101101101---------110101001100100100100010101111101101010001001110111011001111100010011100010011100010001001110010111011001110001011011011000010101100000111000110100011011101100000100011110000110110000001001010010101101011101100110100010011011101111100011010011011101111011010010010011011001010001011110111110100100101011100010001110011111001001101010111000001110001010001011010100100001001000000000010100000011000101111100011100011010100100100110100011101101101001110000101011001100110111110111011111001011000001110101000000001110011000000100111001110110111101101010010101110001010000010111001100000101010101111010011011111111100001010010000100001110010100001100111100100000110010011101100001101110101100010001000100110110000011011101101100000110111011110001110111011001000100110111001011101100010000011010001110011101001110011010010000010000111000100011111010110111100111000001100011011101110100000001100110110000000000010111100111101100001011010111000011111100111011001001111001110001000101000011110101100110111100100000101011000010111111010111001100101101011001011010111110110100110001010001111100110000110101110111000011100101101010011111100011011010111011010100110110010100011011001010000000010100111001111010000001110000111100000010101001110001101100101101101000110010001001010011101111010001010001101010110000010101000100111010100010110101000100111000111 +1100101101110010011111011000010011101010000001110011001001001010000010100110011001101110000010011011010111011100000001111010010110010101110100000000001101100011110001101010000001110100001100111110110100101010011011101111101110000110010111000011101---------100101011100110101100101000001101100010011011000110000100100111101111011001110111111010000111101110111100001101000101100100001011101010001010010001010011110000110011100001111110010101110101011010011001010011110001010011010000111100100010110101000100011000011000101111001100100001010100001001101111000100100100111110100110000111011010001110100100001110000010001010010111101100110000100000000101100111001110100111011001011001000111100000000010110110000110111101101110000101110001111001011111001110101100011100001011000100110111010000110000000101111111100111001010101111101001000010010101110101111100000101001100101100001110101110100100110100111111001000111001100110111011011111011000000010101011010101110001011000000000101010001101010111001110110000100000001110110011010101101111011101011110011011000010011111110101010011010011011011111001111001101000011000001101111111111101011000001110100110101111101101110001011111001001000111001111010110101010011111111011101010111100111101101110101111101110111101110110010100101000101000011100100111101000000110100111110101101100000100010101111110111101011001011101011000111010101100001011000110001100010011101010001111001000010110000101101100001100111011001000001011001100011111001001010001110000111110110111110010101101110001010000111101110000010010110000100010100110000011010000101100100100000000111100000 +1001010111100101110000111101011011101001110011101001100101111110001110001010011010010011010101001001101111111010100111011000010100011110110011110011010100100011110010101011110111011011000100010000011100011001101110101111011010110001110000110010110---------000111001100100010000000110000011011100000100111110000001110100111111011000100101001011110001101010110111001000101010000001010001100001001101001000001010100111111001101000101010110111100000001111000010010100011010101010101001011111000011101010101101010111101111000001001101000000110111000100011001011010111100010001010110000001000011010110110010100010110110011010010001100101000000001101011111000101111010000000011001110100001111100010010000110110110010100000010010010001001100100111111011101011101111100011010100101111001011001000010001011001010101000100011001011101110111011000101101001011000010011001110101101011001110100100111111011001001101010101110100010011000111011110010110000101110110111101101000100001101110101100001001001101011011011101001011111111011011010100010000100001110111101100110011011010001010010111010001101100101100101010010001000111111101001010011110101101101110111100001001101100110000000111011110000111100010011110010100001001001001110110101001101100101001111000101111100000101110101101100001100100000111101001111011100000110111010101100011000011110000100100100111110100000101010100101100010000110101110110000100101111011000100110100110001101100000011001001000001110011001011100011001010111001110101000101001000011010011010010110111111001101001101111100111111100110111000010110100110000000001001000001101001001011001011 +0110100111110100111001101000110010101000011010001001111101001100010100000001010100111000001110011111100111010101110110000111000010001010110000010011100000100111000110010111010000010000101111001111110000001111101011100110010100010100100001100001100---------001011000000101001100101000011101110001110111001100100101100110111000100000110001110010000100100001011001100011111001100100101001000100010100001000101111011110010101101100100010001000001001000000111010100110111110111101111111100100010000111100010101110001010100000100000100110111111000111010000011100001100001101100100111010001101110001111010001101101101000011100010100010111111100010000011001011010001011011001010001001100010101010011101000011110111010101011011010110110111010110110001100100000011000000110000011011100001111110111110101101101110010011011000101000110010111100100111101011011101101000000101000011010110100110111111111000111000000111001110100100101101000110111000011011001111010011101011000010011100101010110010001011111111100101010111000100010001011100100110101101010101110000100010110100110001110000000001110111000000010001110010110110101101111101001011010001000011001111111010001110100101111011010101100110000011000011101111001000001101111000010010100010001110001111101100100101001000110000000010000001010100001101000000111101011001010111010110110010011100010010011001111110010110011111111010111010100011101100100110100011110001000000011000000000011010000100000110110011101101110110001100001100111000101110100100101010010101001001001110111011111111101011000110111010111011110000010100000010000000010111010001100011111110110011 +1010110001001110011111110011110110010111010110000001101000001011000001101001000011000110010000101101101110110010100000101001100110011011000111001101000010011010001101111010110111100101101110001000011001111110101101011010100101010101011011100001110---------111110101011001011111110111010101111111011011011111101001111011010011111011100010011000101111001100001101001001101011011111111100100101010000110100111000010110001010010010000101001110001011110110001111110010100110001000010011011000001001000000111011011010011001110110100101101101100001100010110001010101101100010001001111111011010110101101101010011000101010010010000000011111100000011111111001100001011010111011011001100010110100110001111010010110011110011110100011010000010100010011111011101000000111100001001010011001100100101111111101010111011010111011011001011001110000100000011111010011110011001111001010111110010011101010110101000000001001110001100000010111110001000100100000001010001001001011000001101000001011010011011100010010110100111110111111000101001111111010011000101111011101011010010101010100110111110000100001101110000100010001111101010100000100111000011010001111000000001001110110011011101011011101100001110100001101110010101000100000101100101001111100110100001100011111010101101100000111101000001111001101010111010010110001000111011011101001010011100111011111111100011001101101001111100110010111100110000010101110111001000100100101101111101100111100110001101110010011010100010010110110111100101101011010100110011011001010010101110100010100101100011101111001111001100010100111111101110111011001101111000000001010110100000011110 +1001000110001111100111101000000110011111100001110110011001101111100011001111110010110101100100010010011010111111001010100000100111111110101011100110111110011011010101000000101100111010110000000000111011100111111110110011110110011001000101111101000---------010100010001011001110111010111010001011010001001110111100100100101010100100011100001001001100001111100111110100110010100101111101010010101100110100110001111000101111110110101000110010110100001101111001011110101000001000110111011000010000000001001111011001101011010110010111110001000001001011000101010000101000101011010111001110010010010110101100000001110101100110001110111010010101111001011111001010010111100100101111100011001110001001110010011101011101101100000110000001011110100011010000111000001011101010100010010011100110100010100111101100011001010010110010010000110011101111010011111000100101101011101101100101110111101000001001101000101101100111000111001000101100111000011100010001011000011110101001011110101011111010101000011101101011110011100110111101101001010111100000101111101111001100011011101101110101000110001110101100000000000000100000110110111100110010100011100110000001000101100110011011111101111011000110001011011010101101100011101100100101001111110111011101001110111101000100110111001100100100111100010010000011100010110100001100001001110111010111111000010101110100101001110100001001111111111101100110011101111110000100010001011011001101000011000001001110100110001101011010111110001010001110111000011010011101110100000110010010111111110000011101110001110100010111001110011000110100111011001110111101001011001000011100010001000 +ls64msgs +0111011001110011111011101010000011111010000010111000110100001111001110110110100110110011100010000010001110100111001111010010101101011001000001000000110010000010011101010000111100101010110101110000010100000000001011111010100101101101001110000010001111010001100010011000110000100111010000101110001111011010111001011111010001010010101000111010101101100010111001010101010111001101011111010001011101010000001111101100100110010111100011000001010000001001011011000111011100101011010110101111010111010010000110101010111101001101100100100011110011001011110111011100100010010101011111000001001001000011110000001000110001101110111010011001001--------- +0111010010100111001001101110001010011001110011100110011000111011101001000010000011011011000000101110011110001010011111100000110111001010100100111011110101110001011000101110010111011100000001001100110010101101000101010101101000100101111001100110011110101100100000101010111110110001100000001001101001111110000111011001110100011111010001110110011101001011111001011010011110101101011000111001110001111001001011001101100101100111011001110011010011001111011101101001000000110100101001111011111010100010001110111001000100010000100010111001100111101011111001101000011011001000110110001000000111100010100000110110100100000001111000111010101--------- +0101111101011010110111010110101111000100100100101101100110011000100010001011000011111101111100110101110001111001111010110001111111011011001001100101110011110101000001011001001001111001010110000011111110110101111101101110011001111110101110000111100001000011111000100110011100011000110010011110011000001110011100011101011001101001101010110000100111001111001010011110110100001001110101100011100000011010011011101101110101000110010111111001100110110001000000000011011100001110010000000101000110110110110010011010011010111110100010000010000100011011000100110100000101110100011000011101010100101011101011001100011010010010101010011001101--------- +0011110101110011101111101011110010011100110010110000100111100011100110010101101010001111101000101010010010000000010011011101111111101111100011101001100000111111001111001110100010011011011000100001100111001110010001010100111010101011000110100000100000111000001101100010010010000101010110001100110100010101001001101101000110111111101001100101000001100001100001010100000001010010010101001011000110010100100001111100110110100111010111001000011011101001001100011000101001101001111010110110101010000101000111110000110011100101001011010111100011000111100010001001100011100010001011101110110011010001011111110110000001001101001000010100101--------- +1001110000010100101101100000100111011100110011111100100110100011011111001111000111011010101111011101110011110110011000101110010101000000010001110111101100011110101110100001101011000101001111001001001110001111011010010111010111001110100100010100101101001010011000100001101111011000101010100110000100110101000000001110111111110010001001100001100010100001100101000101101101010101101011010001111110111110001010111010010111111101011011110101010100110000001101001110111000100110000110100010101111100010111101111110011010000001110011110010010011011001100110000111110111100101111000010101101100000110111011111011011000001010000110101010011--------- +1001010000001111010111101010000000000110110101001011010010010000100111001011010110001000011101100110110101100010000111110110000000011101011010010100010010001100100111100010000100001011111110010101100110110000011011010100110101111101100110101110101100100001100101001001000111011011110111100110101110001011001101000101101100010110000110101111100011010100100010000000011010101110010110111111101000110011000010001101010101001011110110000010001101110011010110001000010100000100001100000110010011100010110001110001010011100000011010100111010110110101101010111001111110010011100001101011000011001100110000111100110001000110110001001010101--------- +0010100100011100100101100001011100110110101100000010111010000100111001110110000110000011110111100000010111010101100000110000100100001101111001111001000110101001011001011100010001101101001001000101111101000011001101011001101101110101110101010011010000100001001111100010011111110011001000111101000100100111011101111111010010010101001101000111101110001000110000011101000101010110010101001000100100110111010001101111000001101011101110010101011011000101111011010000011101010000001111110111000110000001100000111001101001110100100111010110000001001000100010001101011111101011101101111000011001111111000000100000100010101111110110010000001--------- +0010100111010111010001100100011000101010010101001010111111000101111101101101011110110010011011101001011111001011000101000111101100010011000100010100000010010010100000111111111010010000000011010000111000001101101110001100101110010010001010000001100000011000010000010000011100010000101101111001001000110000001000010111010000000011011001111001001010010011001000001101111000011011010100111000000001010011001111101011001000000100100111111110011110000110001111100010010100000000111010010000010111110101101010010100110000100001010001100010011000001100001010010101000000001011011111000101110001110010000011100011010011010001010100101101100--------- +0000111011100111000010111010111110001100111101011110010100111000111110001110111110001110011001001001000110000011110110100101111101101000000110000100001010111000111010110100100111100011010010110111111011100100010010010111111000100011101111111100011000010100100011111111011001010001011110011001011110110011001111110101000101100011011011010010010010000110111001000000110110111100000001011010111100100011010010100111111111001110001111011010000111111111010101000001111100001011001101111011101000111100010000001111110000111101000010011001000101101001011110101011110011100111010111110101110000010001011011100001011001110000100101110010100--------- +0100110111111110101111111110011001001001010001100011001000110001101100101100011101011100110001100100100111000010011010001111011101100110011111001010000100100110101000101000011101001101111011001111101000010010101100101101001100011111000101110001100100011111011100101010010011110001001001000011101010001000010010110111011010000110000011100100101010010101001001100101111010111011000100010011010011101011001010011011111011001001000111001001010100110111110100001011001000100001010011011110110011101110101101000011001111100000011110000100101000011001111101110100001000100101110000001011110000101101111110000010011111001001001100001011111--------- +ls64cwds +01011001000001000000110010000010011101010000111100101010110101110000010100000000001011111010100101101101001110000010001111010001100010011000110000100111010000101110001111011010111001011111010001010010101000111010101101100010111001010101010111001101011111010001011101010000001111101100100110010111100011000001010000001001011011000111011100101011010110101111010111010010000110101010111101001101100100100011110011001011110111011100100010010101011111000001001001000011110000001000110001101110111010011001001---------000101111001110110011111001101110111111010111011101111010101001111101010101000001111111000101110101011101010110100100010101111111011011110001010101001001010101011110111011110110101000111110000111110010101010101000110011101011001010000101101001111111001100011011010000011000100110100000111011010010101100001010101110001010010110101001010001011101110010010011001100000111111011100110101011111001001110010110111101111000100111101101110011101000110001011110011111110011000011011000010000111110011111001001110101000000010110110010101100011011110010111001111001100001001101111000011001101110000001111011001001111011101001111000110111100010101001010001011101111100110010010011011101100001111110110011011100000110010010000010111000111111111011100010011010010011011000011011110101100111101011111110000111011110100111010101000110100101010000110001111100011110000111010001001101111000011110100100100010110011110110011110010100111011101100110010100011111000101001111110010011100110000011111101101111101011110110101100001001110110001111001011010100000111010101000100011011000101110000000111111010011000010011010000101010110000111110100101001011111010111100011011001001110000101110111110010001010100000010000111100101110011000011011001110110100000000010010001011001110111111010111111000000101100100000010010000110100011011000001001001111101110011110011001100000001010110100110101110001000100000111001000000001111010100010110100100011010111100100100001011111101000101110111111001100010011110001000111100110110010100011001101100000111101100101111001011101011001110111001010001000111001111110000100110101100100011001110001110111011011000110000100000101100100001010011010000101110010100111110010010100110110101101010000111101011010010011111111111000101110010010101100110111100000000111100000110101001110110100101111110101011000001111100110101011001111100000111100000110001111001010010111110010001100111000101111100101001010001101110111011101010011110101101001000111010111010100011000011111101000001110101101110010111100010000000000110100011101001010001011111101111111011011000111110011100001100100001100010100111001110110011000110000100001000101111111010011011010111101101111001101000110010111110100010100010101100011010111001110000110011100100100101100100101111011011101011110100010010001011100100101110101011110111000000000101101111011111110010000111000100010001100010000010110101011110000001001111111100101101110101010101001100000001000110010110101111000000010101100111001110010010100000110111000110011110011010001110101100000000001010001111000101101111001111010000001111001100101101000001001110001000110001110111010111000110011111010101000111001110010000011000001000010110011000100100001011110101000010 +11001010100100111011110101110001011000101110010111011100000001001100110010101101000101010101101000100101111001100110011110101100100000101010111110110001100000001001101001111110000111011001110100011111010001110110011101001011111001011010011110101101011000111001110001111001001011001101100101100111011001110011010011001111011101101001000000110100101001111011111010100010001110111001000100010000100010111001100111101011111001101000011011001000110110001000000111100010100000110110100100000001111000111010101---------000010001010010101011100101111000010000001111101101011010000111001110111111111101001011110000011011010111011001100100100111100010011001000000111011010111011101010011010100001100010011001001111111000011100010010000111011001110010101010110111111010000000110100001110001010011000011000010011011011011110111110111110111111101000100000010001111111101010111011000000101110000001101011101001010000110011010001111000010011100111110010100110001101111000101101001110011111100100000010000001101011000101111010011101101111001101000111010011101010100011110001110001010111000000010101001111110011000100101000111111001100001100111101010001000000110000001111001100001010001010101110100111100001010110111000101111110100010001101011001011110000001010111010111111010100110001000000101101010001000010011011010001001110110011000001010100011100000000101011001100100010000110111001111111111101010110010100000110001011111010000111000011010111100011001000101000100101100100010000000000000101110011000111010111000011110000011101100100001000011001111111000001101010010001110000110010101001001011111011010110001101101111100100111110111101001111010011000011001100110110110111010110101101100011110110001111010001101111100001001000010110111101100011011101011100111101010100101101100001010010000011101010110001001001101011010011011101100110001101000111000011000101000010101000011101001101000111100011000000010110100000110011100111111100001011011100101010110100000100111011110110000111101011011000110000101010100100101001010001101000011110101100110000100111101111010101111000001110101110001011000111101111101110001010100111110011011100100010101111000001100101100001011110111000011000011000010111011001101100001110010100001000001100101010001101110111100011111100110010111001010101010001000000111010100110101000000001111110001001100001001000011101110101011101000100010010001001110011101010001001001000101101100001101110000001000000110001110010100110000100111100100100010011110110101100011111000111011010110110110000011111101010011100010011100001011110110101100000001111011011100001010100001110110010011100001010010001101100001001000011011111000101101011100111000000011110010001000110110110111011011010110011010011101011001110010001111001101001111001000111010110010011101001100000011100011010011010010110100011110111011100011100110101100001010101011110001110100000010000000000011101010110101010111100000001010010100101101011011010011100011101101011010111001000101001101110001000010001100111100111010010111011001010110011100011010111011110101011110000110100000001100101100000100110100110011110011111101101100101111001100011110101111010001010011100011011101010011100000011101001111001011100001111000111001000101111100110101110 +11011011001001100101110011110101000001011001001001111001010110000011111110110101111101101110011001111110101110000111100001000011111000100110011100011000110010011110011000001110011100011101011001101001101010110000100111001111001010011110110100001001110101100011100000011010011011101101110101000110010111111001100110110001000000000011011100001110010000000101000110110110110010011010011010111110100010000010000100011011000100110100000101110100011000011101010100101011101011001100011010010010101010011001101---------111010110110111000011010111111011000011010011110111100101111000010010011100010111111010101011101101011011010011011111110100010010110011111110110011011110110111001100011100000011110111011011110010010010000100001011010011100011101100010101010110100000010000001110101111011110100101001111010111111111100001101001100011000001110011110110010111101000001100010101110110000000101110111110101000110111000001111101101101011101101000000110010000001111011010010110001101001111000101111111101010100001111000010000101100001011000000000111111001111000111101010101001110100011111001100110010110110100110100011111110001011101111111111010001110001101011010111100101001000000101011111100011111111100010000110011110010001000010100100100010011111001101101111111111111100110011100110011111000001010010111010001010010010101110101011101101101011100011000101101111111010100111111100111100000011010110111100000110111100001011001111001001010000111001110010111001100101010001011001101111000111100000111100111011101111100011011100010010100101101010011101011100010100101111110000111101101100101001111111001110100110110001100101100110101011101010000110010011011101111111001000011111011110101011100010010110001100001010010110001010100011011100100110001011000000010101001011000111100001101101101000011011100001000110010000100110100101011011100110000010011000100010111010010000110000011100000001011000000110000100110110011100110011011001100110111010100011010101010010111101011000001110010100000011110100000011010001010101110010101111101110100001111010110101010011100000011000111000110010001100100100100000010100101100000100010001001010111011101100110100100100011000100100110011011101100110001000001100010100110111101010000100011111011111001000110000111110101011001101000111111001000100000010000100101001000101100101010110100000010110001011000110000011110001101100001000110010000010010110011110101111001111111101010101011000001000010001110000110011100111001110001000110110111001000100110000110101101101100110110011101001110101101111001100101011000001011100101010001001101101001100010101011010000111101011000110100000111000101010000011101101001101010111101001111011010010011010110010101010000000100111011011110010001100001111110101011010101111100001111000101110100011000001100001101111011101010011010011110010011011011000100100001110111011110010000000111000110001010110010111110000001110011001001000110111010100110110001010001011111111100101110111111111110100111110100110000100101111011100001101011110000001000100010000111011001011100011100101000111110100110101111000000110001000010110101110101110001011101110001011100010011011100000111101110101010100110100111000111010100100001000111101011011011010111110011000011001100101 +11101111100011101001100000111111001111001110100010011011011000100001100111001110010001010100111010101011000110100000100000111000001101100010010010000101010110001100110100010101001001101101000110111111101001100101000001100001100001010100000001010010010101001011000110010100100001111100110110100111010111001000011011101001001100011000101001101001111010110110101010000101000111110000110011100101001011010111100011000111100010001001100011100010001011101110110011010001011111110110000001001101001000010100101---------100101101000000011110010010000000010100000110101111000000000000100000000111111111010001010011011101111100000100000101100110110001011111101000110101110000010101010111001111110010101101001100011111101111111111000000110101011110000110111000001110000011111110111011000011000011000011001010001100001100001010011011100111110110010101011010010111011001010110001111110110101010010101101111111111110000101001011100100101000111010000001000001000010011110110100001111000001011110100011010010000100001110010000011111010010010011100011011001101011001010101011110101100000000110011000011010001001011011010110000101101011100101011011110010100110000111100101110010110101011110011101111001100001110011011111001111001110101100110001110011111011010111110101111001110111111101110111000111001000000001011110100100101101000111101111010001011100110101110101110101110001100010001100010100111010111011100101101100101010101010011101011011011011010100011101111110100000011000111011100110111011000110111011100001110110000001011111000100111011011011011000011101100010010110000011001000101110000110100011111000000110111010000110001010011111010011101010000010111000111011010000010001011100111010111001101001100000010000100100001000100010100101100110100111010010010010110001100100101011000011011101000111101101111101011100011110101001101100000000110111011100000010111111110111010000101101111101000101010111110000001010001010111100100000110111011110111001110101111101101000011110000010001011101110010110011001101010011010100010101010001100010111101011001010110111010111101101101100100101111111111111001100011001111001101111101011000011010100111001001001101100010110100111001100000110001110110011111001110101001110000001000101011111010001000001100111010011101111100101010110110100010010110111111011111111010001001010010111111011011100001110100110101111100001001101001001000000010011001100100111011000100011001000010100000100110100111011101011110110011011011101111100111110100100111110011000111000011100111000010100001111101110110010110111001100111011011100011011110100001001011010010101110011111111001001101101101101001110010110100110000111010110111111111011100001111111100001001101000110111101001010011101100100101100101011111100011010101100011111001000111001101001101110101111111100011111001100001110110100111100000111010111011101110010101011000110011100000101000010110110001111111110000101011011111101010110110001110100111111100000111100100100111111111000100100010010111011010010010100010110100111100110010001001010100001101100001100101110010000110100001011111000010011011010000110000110011100010101111010110110011101111000001111001110010101010110000101111010110010111111011010100011101000011011001001010001010110000100 +01000000010001110111101100011110101110100001101011000101001111001001001110001111011010010111010111001110100100010100101101001010011000100001101111011000101010100110000100110101000000001110111111110010001001100001100010100001100101000101101101010101101011010001111110111110001010111010010111111101011011110101010100110000001101001110111000100110000110100010101111100010111101111110011010000001110011110010010011011001100110000111110111100101111000010101101100000110111011111011011000001010000110101010011---------011101101011101100010110100001011101011001001011010110011111101101111101111100100011000110111100011100110001001110011000011010000010011010001101011110100111001100011000111001111100100100010010110100111101111000010100011010100001010100101001111001101101000000011011011100110000001100000100100000001101110111101110001101101101111110000100001101100111110001011011111011001110010011010100001010011100101010101110011101011110000010001110100010000100000101011100000100100000010100011101111001011100000010100110011010010110001101001101101010110000001100001110000010100000110101101100001100001010011101000110001000000110101101011011111110010010110110001100001100010001101100110010001110111101111011011001010010111110010011000101110110111101011001101110001110001111101110100011100101111011001010111000010111011011110011011011110010010100011011011001101110101000110101011101011110011111101111011000010011001000011000010111010000000110000000111001000001100111000110011001110101100110111100111001100010110011011000000011101100110001110111100011010000010100101000100111111000001100001100110110110001001100011100110010100110101001111010110000011011100010100010111111001111001010110010000001101101010101010000010100101100000010101101011001110111101101111010101111111101000011010101010011111101010001001100010000011101000100001010101101111111001101010110011111111011010101111101001111011011000101101101001010000100001101100001010111000111100010010100110110000000100011000100010100001100010101101111011111010011111111000100101100101011011100000100111001101001011000111000011100111001101011101000100000100101010110010011010101101110010010111101100011000111100110100100000001000101111001111111100110111111000001010101111101001000100010100011111100110001100100100010111110011101100101011111000110011111001000100100100011100011010111110011010111110101101000001011011111110110010111111000110100001000110011000111010000101011111100110111011000010100010011110011101000100001101011000000101001011101100111110001111110001101111011110100100111111011010011100100111010110100101010101000100110111010111111100100011010111100111111011010111100111000001001011100010100001111010011011111111010000111001101010010101100101100111001011110001010010100101011100101110111101010111010111101010101010101101001100101100100001010001000000101100101101001010111111001011001000000110111010110010111010001101111011100011011101110001100111000111100101100111101110000110111101111101110001000000101010010011110101110010011100110011101010011110101101010000011000010001001000011000010001101010000101001010001010101001000001000001000101110111000100010101100000000110111011011110110100010010110011111000100100110010010001100110001010100011110 +00011101011010010100010010001100100111100010000100001011111110010101100110110000011011010100110101111101100110101110101100100001100101001001000111011011110111100110101110001011001101000101101100010110000110101111100011010100100010000000011010101110010110111111101000110011000010001101010101001011110110000010001101110011010110001000010100000100001100000110010011100010110001110001010011100000011010100111010110110101101010111001111110010011100001101011000011001100110000111100110001000110110001001010101---------111100110011110111101101011100110110110110010010011001011101100001000111000100100111000001000011011000111101010010101010101001111101001000011110011010100011101011011101010100110101011010111000100011000010101001110011010011111000000000001000110001000110101000110000001001111101100101001100110001110111001001001000011001000010111000101011010110100000100011101001110111111010011000011100110001000010011110101011000011001001111101000001101010110000110111010001101101110001011000101011101011100011000010011110001010000001100000100101001010000101100110001101100100111100100110101001101011110011000100110010100011101010111010001000011111100000011010100011011101000111001101010011100001001010101011111111101101010011001100111001011101001101111100010010011001010100100100011001101001111101101010110000000101100010101010111110011000001011100110000000001100001100011111011110101010001001101100101100010000011101101011111001100110101000101100110001100000101000010111001100100111100000010010100011011100010101011101010001011000100010001011010100001000111010100111000000010001100011101011111010110111001110111011001111101110111110001111001111100001100011010011010111111101001111000000001010000010000011011011100001111010111010111001100110100000111100011110100001010110001001100011101000001111001010001110100111101010100000000001001001001001110010010011111110010001101001101000011011110011111111001100110101111011110100011100010101111011000010010110011110011010000011110111100111111000010010110011001100101001010001000101110101000101010100111001000010000000010011111110001111100110101010111011101000010100110000001100100101110010110010001111101100111100011001010001000101100011010110011010111111111011000111101110101100001110010100110111111000011001011111101101001100000101110110110101001001100010010001000001111100110101010110100011100101110111001010100110011101110000011001110000111000101010000001011101101011000010110100110110000000001011000011010101011100110101101000110111010100010100001111010110010000001010010110010011101101110101100011000001010001011000001110110001110010010011110110100001010010100101111101110101100101000010111001011011111110000101011000010100101011011001111111101110110010110101111101101001100111101100010011100111010111010011110110010000011110000010000010011101000111110010000100010111100101101111000011101101110101001101100100000001111010001111100111011100111100101011001001011101001100111100101101111111111010010100101001101111110000010001010011001110101010110111000110110110001111000000110111010001010101011011001011011101101010101011011100111110011000100011101111010110010011010000101000111111000100101001001001000001101111000111110001001000001001010000111101000101111010 +00001101111001111001000110101001011001011100010001101101001001000101111101000011001101011001101101110101110101010011010000100001001111100010011111110011001000111101000100100111011101111111010010010101001101000111101110001000110000011101000101010110010101001000100100110111010001101111000001101011101110010101011011000101111011010000011101010000001111110111000110000001100000111001101001110100100111010110000001001000100010001101011111101011101101111000011001111111000000100000100010101111110110010000001---------010100011110111011001001100110000011001100001100101010101100101101001100010101000011010001101100110001100000100101101110001101101010110100100001010101111000001010001110111111000101100111101110111010010100001110110111010000101101101110111001011001001110101010101001101110100000101111100111011101100111011101110110110001110001101110110111011001010001001000010110100100000111000010111110001011111010110001110010001100000000001101111010010011110011011101001011100010011100100101110011111001010101000011001011010001000001101111100110110101101100010100111010001011001000101000010011110100010000110000010010000111010110000101101100001100000100011000001101000101001001110010101000010100010010100011101100101110110001111001000010111010111011011010111110101011100111011011001000011001001011101101011111110011001100001110101010111010000111101110101110001010110000111000011110111111100111111110111011001100010100111001101010101001011111000111000000100001110000111110101011101011001101110000100001001111100001001010111100001001101000000111111111000100100000001110011011101110111111110001100011000110010010010101110011010000011001110101010010001001110011010001101100010110011101110110101101001101001010110010001001010101000111000110100000110110001101100011011100010000101110110011100001000001101010111000111001100100111011011010100001111100010100011100100000010010111100010011000000010111001110010011000010110001011011110010000111100001101010100000010110110010110011101001010110011001011111011110101111011101111010000001000101010110100110010110010001001000110100110100111010010110011001101010011100101000011001110011100111000111111111110100100111110110001001101000100110110010111010000111111110011000100101011111100110001111100011011010100111011001001010001111001011100111011101001011101010000111111000101000110101111001100110110011000110110010011101111100010000000111100110010101001110101011011011111111111001111100101101101101000000100010111011011011000010111101011011101010110001000000011111110110000100100010110100100100011000001100010111110110110001110000100001000001100011100101101000101001010111101100011011011001111110101000110011011101111001101101111111101001111111000100000010111111111011011111100010010010100100110111011100111110011000111000111110010010110010100011011010010011101011011101001001010011011100010001011011110000111100011001100001000010111000001101011000100001100000111101011011100111100100001011111111101111010111100101111101010001100000101000100011010011100001111110001000001110001100001101001000101011011101111001001000101010001101001100100100101010010001010000100001001110000110010000100100100110001110110011110111100101111010110110000010001110110110000101011111010101010000 +00010011000100010100000010010010100000111111111010010000000011010000111000001101101110001100101110010010001010000001100000011000010000010000011100010000101101111001001000110000001000010111010000000011011001111001001010010011001000001101111000011011010100111000000001010011001111101011001000000100100111111110011110000110001111100010010100000000111010010000010111110101101010010100110000100001010001100010011000001100001010010101000000001011011111000101110001110010000011100011010011010001010100101101100---------100011111010011110101110100100011101110011010010001011101111111100000101110110001000110110010000101010101111010001001101011000101110001101110010100101100101001011111010100110010011101010011101101111001110011111110101010100010010001111110100110110001001000000001001110010100111010000101010010101101110101001010110010010110100100100111101001110101001000100110100111010111101101101010111111011100011001010101001010100100011101110011011101100000011100110001110111101110101000010001000101011010010101010100100011101001101001000101101111010001111001100001010111000010011001001010000001110011010010011101000000000001010101000000011011001000110011111100100000010110110010000100100011000011110111011100110010101010100100011001001010100000000111011000100010100100011110000000001110101000000001111110100100011001000010011011000110000100101111111110101100100000111001000110011010111111011010101100001000010110000010010100111010000111011101111101100001011101000010011001101110110110100001111010111111000000100100100111001000001111101110100001100111001000101110110001010010000111010010101000000110010110001101101111001000101001000001001011011001001001011010111100111110001101101100101001000101000000100001101000110111111011010100011111010111000110001100110111011100001101001001000100010100001011100111101000011010011010111111110100001010000010010000001011111111000010000110100011101111100110011000000100110100100011010011100101100011110100110010101010111101111000100101010100100100111011110010100000001001010101111111001101011111101100111111100000101001111010001010001011101011110110100101011000011110011010011011010010111010001110001110111100111101011010100001000011101010010110110100001100001111101011011001111010001001110010111001000110000100011100100010000001001110110011001011111101111111011001011011010010011001101110001100111011101110101100111101101110010011010110110000000111011101010110100010111111011000001001101011001010110001110101011111110001101000000000000011010001100011110010000101101010101100111100000010101111001000110010010000000001011011111101111100011101111001100000001001110111100100101000000111111100001111111110011100101100001100101101110000011001101100000001010011111000111001000111000100010001001111000111110101001110101111110100010101100011010101110101010111111101111110001110010001110111001001011111101011110110111010001001011111001010100111000100011111000100110011101110110101100011011101101000010001101001110100011101111101101101000100110001111000000001110001100001101000001010001111001110001001010111101011111100111111011100111110111000011111010111110110110010010100110000001010000111010101010011000101010001010111011101101011110001001111000100111010011101100011110000000 +01101000000110000100001010111000111010110100100111100011010010110111111011100100010010010111111000100011101111111100011000010100100011111111011001010001011110011001011110110011001111110101000101100011011011010010010010000110111001000000110110111100000001011010111100100011010010100111111111001110001111011010000111111111010101000001111100001011001101111011101000111100010000001111110000111101000010011001000101101001011110101011110011100111010111110101110000010001011011100001011001110000100101110010100---------010011101111101011111111001010110110011111010110101100101001101001101111100100010110101100110010100100111000011001101010111001010101101100101001101011101101101010010100101010100000100001100100010101101101101000101111010110110110101010000010110101010010010101111000010100011000111010000111000010011011011100101110111110111110111011011001111000110010010011011110000101011111001000100010011101110100101100001101110001010100100111100110110010110101100100001011100001010111001100110001011011101010011010010101100100011100110000001001000011001011110001001101000111100101011010000101011101010011011010011100100010110111011110001010000011010000000000110111000001010110101011100101110011101100000000100001101101000110000101011101101000010101010110100100111100010100100101000100010001011011000101011100101000011111011011000111101001110001010011001011010110110011110010111011011110000001110111001111110011111011100001011110001001111100010101110110110001111101111000011001000101101101111100100000100010000111111001000100001001100110100110010111000011001110011010011100111010011101001001011111000001000101100010110001001000010100111001110010010000000110101100101010010001111011001100100111110100001001010011000110000111111011010100000101000100101001011100110001011011110011011101010000000110001010011001001000011000010010101000111110101100110110000001110000001111100100101000101110001100000010110010000011011111100110110010010000011011001101011111001011100010111001111100010010001111000100011011110111100000011101111011110111011011010011101110011011001001011110110000101111000100010011101110101011011111110111110010100001000111101000100001000000101110000100011001101000101100001001100100000011100000011010111001111011111111101000011111010110110110001110110010110001010111000000101000110010101010011010101110011001101000010100001101100000111001100110100001101100001111101011011111000101000000000010001010001100000111110101111010001011011011110101010101011001000111100111100011110011011110000000011110100010110111010010000101010101011010110011110000111000000011000110010110100010011101001011110000110110100111011110101100110010100101111101010011110110001111000010001010010111110111001111001100101110000000111010000010111011010010001110100111100111101110110000010110000101011011111110011011101101110001001011010000100010011111000010101011011011000101101010100100010011010100101111100011110110100010111111010011111110010000001101110010111010111011100010010011101111110001100110111110001000000110111111101110000011011001000011101111100011101000110001100111000010000001101011001110011010101101111100001110101001000001011011011110110011111010011100100100110011011110000011111110000010000001111100010111111001 +01100110011111001010000100100110101000101000011101001101111011001111101000010010101100101101001100011111000101110001100100011111011100101010010011110001001001000011101010001000010010110111011010000110000011100100101010010101001001100101111010111011000100010011010011101011001010011011111011001001000111001001010100110111110100001011001000100001010011011110110011101110101101000011001111100000011110000100101000011001111101110100001000100101110000001011110000101101111110000010011111001001001100001011111---------101110000001100111011001111011000011100100111011011110011000100110000100011001111110011111001000111010000100001100101010110100000001101000010001101010100011101111000010011001100111011000101001010101010000011001110101111001001101010000011100010101111111100110010011111010111111101100011011111000110100101110010011101001001110100000010011111011111100110000110011001101100110011100100011110001111010010000111011110010111000010001111001110001110100000001001111100110010011101110010111101111000001111111001011110101111010010000010100100000100010101011100100010101110000101010111110011011001110010000000100011010000011010010101100111011110011110110101000000010111000001100001001010111011010001100000110010111110000011101110110001011011111011000001111010100111011100001000001101011000001111001101001011110101011011100111100100110101110100111010001101000010101110011101110111111011101000011010111001011110010101110101000110000110001000110001000001100001001010110010101110101000101001110111011100111000100100111010100110110100101000011111011101011000110000010101100110101110000001001001011100000000100010110000010100010000011110010011101010100001010011010101001011001111111011110000111000100001011010110011010000011001001100000101100001100000000110010001100010011111010111110100101110110010001010010111001100000000001110010000111101001011010100111111111001101001111101000110111011001001101110111101110001001110001101110100001010011101100101010101110101111011111001001110001110001111110010100101000001111010100101000011111100101010010111000110000010100101100110011111110011011001101110111100000111100011111111111000110000001101100100010100101110001111000101100011010110011011110001111000100011100000011010001011111100101111010011100011001001000011101101101101000000000111101110110101000010001001101100101110000110001010101010011000001001010111101010011011111000011101011110000110001101000011010111110101111111011110111100011101000011000110111111100011101100011010011010001010000011101010001001110100011101011110011010100000010101101010100101110110110110101011011101011101001101001011101110010011111010110101111100110001101011100101110110100011100100101111110110110011001101010111101000111111001100011110111100101101010000001001100111001110011100011011111001111101101011011001101101111110110111110001000010010011111011111011001111010100101010111010011001101001001100101011111001010010011101000111101010111100111101100010110101001001101111101010010110000010010101010100000111001011001111000001011000000011111111110111100001001000011010100000001010110100001010100101000001001010001111001101100011010011010100111011001111100011100011110110001101001111000110000100100010110100000011101111001001110000001 +ls128msgs +01000001111100100001001110011001001011101101111011011000000111100001100110000111101100111101100111100111101010110111110010110011011010001001000101011010100011001011110001100111110100100010111001100000000010011110010001010000010010010100000000100100111101011000101100001001011110110111011010010100100101100110000101010111001101101110110110101101001010111111000110000111101100011100010100110101001001101010001101100010101111010100111011101101110011101100110010001111110101010000001111111000001101001001001100100101111000000011010111110101011100011001101010111000100111100110000101000100011011000110011010111000011101001010001011101111100011010000000110110110011011010001000011101010011100001110110000100000010000011000111101111000011101000111110000110101110101011010100010110100011110110111111011000001101010101001111110101010010000000001111101111110010000101010000100101001000000111100111110100001000100111000011100001101010011000100000100001011111011001011100101100001011101101110001011111100101001110001100010011001111001001110100101101010101111010111000001000110110110110101111001001100101011110001110000100101101010110111110000000000001101011000001110101110000011001101010001001001101100010001000001111100001011100000000110010010101101000000000011111010100111110111110--------- +01010001101100000110111001111001001000001000110001100101011000001010000000011000100100100100101010110100101110100010101001001001000010001010011011001100001000010100101010000100010101100101111011100111010001110101111110010010000001010010001101000000001111110110100100011111111101000000110000011000101110110000110000011101001000110011000111011010001101001000000001101111010111101111110110100110100101000001101001011110011000010110110101001010000011011100110011010110011011100001100011000001110001011111101111001111000010110111010110111011100001001100101110111001010011100001010001010001001011101001001101001101111100100111101101110111000101110001001110000001100101111100010111001100100011111101110000101111010011001100011011110000011110101011111111010011010001001010011001010011110110101001111001010011111001101001101111011000010001110011011110011111001100010110010111111010101000010110000000011000110100110110101010100100111000110100100000100100111100011011010111001110111111001011110011001111110010010001111111101100001111111000001100000001001100000000011100000111011011110000111100000100110100001000001011001101000111100101110111001001100100110010111100000101011010010011010011100101100011101011011011001010010111010111011010000111010011001001100101010010000100111110010--------- +01001110110101100011000101100000110110110001000000000101101100101011011010101100100111101101110100100100101111010110000000001101000101000111111010101110101001011000011001001101010111111111010010111111010001101100110101000011001001110111000010011010111101011011011100010100111110110011001000101001100010100101011110010001100001111001111010010100111000011011110001010010111011110001001010010011101010011100000101011111000011010110111101010101101001001100001101010000100110001011001000111010000110111000000111110010111100100100000110100101110111010110011011010010000100001110010010011111110010010110001011111100111001110000111001010000110010111111000100000110000100010101111101100100011111110111110001100001111010011000101000011011001110010010100100111000010100010100101001110100011011100101110011110100111011000111110110110111101111011010110011100110010101101010111010110100110101011011111111111001111100111001111001101010110110111100001001100111110011110001110011110001011000001101011001100100010001000101110100010011011100110000110101100001010100110000000101010011110010110101001110001001100010100101110110001011100010111011001001011111100111010010011010001000001011110010100111101110110110001011101001111100100110100000111001011110011101010001011001000001011000100101110--------- +10000011110110100100001000000001100100000101111010111011101011100000001111111100100111101111010000100111000001100000000101001110000010111010110000101101110010101110110101111011010001010100100010111001011001111100001111111100101101001011101000101000010010011010110110010000100101111010100010111001111000101111100101011010101011001101100101000000001110011111111001001100110011111101011011100100010111111100110000101010001111111001111101000011001110110011001011101100001010111111111111000001100101011011101001000110100011101100111110011101101010010111011001110110110111111101110100010101011100110001011110111100000111110110011101100111000100110001101000010000011010000110111111101011111101111011110100010001100110000100000100011101001110001000010001111101110000011000001010011001101111111000110101001011111110010000111000000011100111110000010011101000000110011100110001111010101001011000110011001100110101001110011101000010001001100001110111100101110010000100000111000100101100111101100001011011010110101100110110110001011110011101010111110100101011101001000100011111011110110101110000001000000110011001110000101011010000111101001011101110000101111100000011010000110001100100011110000100110100110111101010110110001111001001110101010010100001001111000110100010100000101001101--------- +00011011111010011111110000010011100011011010011100101000110010101001011000011110101010010110010011010010010111111111101001111011100010100011011000110000110001001100110101100000100101011100110111100010010010111010110101011101110110000001100101101001100011110111011110110000101011011010011100000010101000111100110101101000111100001111101110011101101000100011000010111011111011111101000001101101000010001101111101000001011100010101100010101001011010011100011000000010110000111011110100111101000010000111011111101110101000101001010110111110101000000010110010111100001001011010111100111101101000101100111010011011011101001100101111101111011011000000101100001110001010011011001011011100101001111011001010010110100101001110011010101110010010011100010110110111111101000001100011010110100101001100111010100001000001101110110001100110101010100100011010000010000000111010001000001010101110001010101010000100001110101111100111001100100110001101100000001010100110000101111001110100110110111110110101100110100101110010110011011001100111100000011111001110011010101011011001010110111000000100100011111111011000100100001110001111011001110001100010000101101001111011100010000100110011100001001001101101111111100000111100001110111010011110110010111000111100110001010011001000001011100011101--------- +00111111010101110011010011101111000111100001101100110101011101011011100101001101111001000011100101001100110000011101000110000010010010111111011011111000001011111001100111100110010011010110001000010001101000010010101111000001000100001011101100001010001010101101011101000000011101011111011101000010100101001111101010010000110010111101100011100001011001101001010101100010000001110011101110011100010010011011101000000101001000001011101100001100010010010101010110111000110000110011101110010101000010000110100101111010000010000111001010111100001000010110001001010111001010010110111000001010010101000001100100011000011001010111000110000101011110000110010100110000110101101110101110001110100010100011101010110111010001110101100001100001000000101000110101110100100100010010110011001111111011111101100000011110101010010100110010101010111001001111100100010100100001111000110110000100101111101010010011101100110001011001010001001101110110101111011010111011000010000000110010110010000001011110000100111101110000101011100000000000101001001100001001011101111000010010010100001111011010011101101011100000100100111000000100110001110010100010111101111000111101000100101000011010010011001001100101100011010101100111010001101101011000100100101001001100110001001111111100001111100111000010101--------- +10011110001100000000100111001010101000111111101000100010110010111011000001111000001111111101111100100011011001100111001001100110011001011101110101100001010100111111000000100001100000110010010110101001010101001010001100101011100111110000111110000011111110110011110101101010000101010111100001111011010100101110100011001000010101101101101110010010011001101000110101111010010110011000011110001011000000010000101010010101110000111111101110100111101101111011000011001100001101110110110101000011000111000110000001111111000101110111010110110010110100011011110000001110111001001110100111011000111010000001100100111101000100100111010110011000110011111101010011000101010110010011111010000000011011011101100010100011100000010111111011101101011110100011000001100010010110001111111101011100011110001000011101110011110100101000011111010100100101011110100100010000101101001011000101001000000010011011011011100100110101100110010000111110010101110010110011111011011110100110110001110010010101110111011100111111011001000000100100001110010001010110011010010010000101011111001110111011001110100110101000110010110100101111111011110010110010010011001001101010100110001101010110000100110101011001110011010100110000000010110100111110111110000010110000011011001110100011000101000111111000011010000--------- +00110001001000110111110101110111010100011011111101000011110001001101110000111100110100111001010011000110101011101110111111100100101011010100101011001101110110010011010001001010011000000011101000010011000010011011010011011110010000010000011110010011110010110000100100000101101101101101010010010110001010011011001101110100010000011000000001000010100100010100110011010011011001010001110111010100010001110110111111110110010011001011110000111011000000000001101010011100001010110001110111110010011000001111000110001110001110011110110100010101100000110101101001110111101110101011111011000101100000100100111100001000000110101101110001101001101110001010011101010000010001011001110010110110101100110110010001100110101101100010110101011000111000001100010010001000111010010011100110010101011010011111100000110000111000011100100111001000011111110101011011010010110110110100010101000000011011001110001011101000001110100101100000000100101000111100100001011101101100000101100111000001100000000110011000100110100001011011111101010111100110011100101100000110110000001011010100111001001101001110110000001000110101011110100001100010101001110110010100111001110000111100001101010100010000110000101010110110000011101000100100100110000101001010010010010101100111101000000110110000100011010011110--------- +11111110011011000111000100000101110010110110111101110011101101101000100101101100111100110011111010001101010001101011010001000010111001000110101111011010001101110110110000101101111001101010000101010101010000101000010001011111001000010111110000111011001000011111101101101010110010011000000110000101101001100101111110010111011001111100001111110110101110100001000111101100000101100111110010001111001000101001111000010000110110010110010111110001101000100000001100011110110000010000000011000110100101010000010011001001100110001110001011001001001001000110000010110110001111101000100000101000000011001101101101001100010110011001000000101010100111110111111100110011010011111010011011011101011011001100011101110001001110100010110011101000010000111101111010100111100010000101010010100000110001001010010110111100101101010110011011100111110100010001001110111011111101101100000011010000100100111011100010001010110011000011010101010101100001110000101100001000100011010100100000001010011100100110110101000010010110110010000011110010000101110011000110111110110101011111001001011000000000100101110110010011001100110110010011110111011111000101011110101000110011110001001111000001111001001110101110001100101100000001110101010111100010000100010111000101001010111000100001011001000001111010100--------- +10001001010111001000011001001110011010001000001111111011110101010010110011010000100101010000000000110110011001001101000111011001011101001111111010010101100111101101110101011100001100011000110011110011101100001011110001001000011100100101100000101000011101000001010010111101101000110101001001001111011111000001111011001011010000111100000101111100000100111101010101111111000110011110000101011010101011111010001111000110001101000011000110101110100010010010000001111111111001111111000101111111101010010100111101111011011011101011011101100000100110100010101111010000000111000010011100011101101000111011010010010001011011011001001100110001011001101100011100010100101011001010001110111001000111001001001111100011111000010000100100100001111010000100011111100000100010010110100010011010011111010001011011010000011110001101110111110111001000111000010111101111101011101001110010110001100001111010110110011110001111111011011001011011001110101111011101001100100110000000100111110011110111100110011111101101010110101101100011001010000010111111100100111111010001110110010101100111001100101001100001010001110010000110100011100101111110101101111101000111111011010100000001001100111011111001000110111010001000001010000000110110110010011111111110100010110000011001011011100100100000110110000--------- +ls128cwds +1000101100001001011110110111011010010100100101100110000101010111001101101110110110101101001010111111000110000111101100011100010100110101001001101010001101100010101111010100111011101101110011101100110010001111110101010000001111111000001101001001001100100101111000000011010111110101011100011001101010111000100111100110000101000100011011000110011010111000011101001010001011101111100011010000000110110110011011010001000011101010011100001110110000100000010000011000111101111000011101000111110000110101110101011010100010110100011110110111111011000001101010101001111110101010010000000001111101111110010000101010000100101001000000111100111110100001000100111000011100001101010011000100000100001011111011001011100101100001011101101110001011111100101001110001100010011001111001001110100101101010101111010111000001000110110110110101111001001100101011110001110000100101101010110111110000000000001101011000001110101110000011001101010001001001101100010001000001111100001011100000000110010010101101000000000011111010100111110111110---------101001110110110100101111110011010111000101100010000100000101001101010000110001110110010101101101111000110110110100010001101101011101100010101111010111000001001100010111110010111010101101001011001011100011110100110101011000011111011110001010100000111010101101001110101101110010101100101010111011000111111100100110100101010001000011010110100100111100011101011010010011011101100011101100110010010100000001011010110001111011011001001000010001110011111000110001011100110111101110010111101001010110111000010001110101011100101001111000001011001100111101100110110101001100110011100001000100010001101100011111111011111111001010000100110100010001100011111001111000111100011100000001111111010000001101000010010100000101111110100101101110001111101101011111111101100111001101010111001010010101111101101101011111100001110001100011000111100110101100001001010001000100110010111011100111111001101010000101101110100001000101010111010101100001001110110101001000000000000011101101011011111001010101011111010001111011001101110000010011101101111000000101110000000111100110011001010000011110100100011010011110011101110000100110001010000010010101110010100010100101100010111110011101000110001101010110110010011011001001110001100100011000101011001100000000001101011001011011010010111000111101100001101010000100010010100101110101001001111001010101010001011111101110111000010111110001110110000001111101010011010000001010011110010001100111110111001100000001000101001000111000011011001111100010111111100000011110111010110111010011000100000010110001000001111001110011101011101001001010101101010010011001111111000011100001110101001010001111111101111011011011100011000101000101100011100011001001100110001100000110010000000011011110100001010111000011101101000111111100010111000110010110100000100011001100000011110111010001110001110001010000110010010011100100011111101110001001000000001011010010110110011111110001110111011001110010111011101010100000001100011001001110011110010101000011100101100100000010110110010000011011101111001000100010010101010011011000100100101000001001111000011011011011011101110001111100010101111001001011001101000111110010100000001011010101111001111010010010010000001111100110100110110011000100010001101100000100001000000010111011111101111101100010110111111110000001000111010100110101101100011010111010110011011000010100010110011000111000100101000001101111100010100000111101110100100100100100000101100010011011011111101101011111010110000100101110001010011001100111010000100110100000100000000010001110110100111000101101110100100001001100011101101010111000100011101110110000010101110101111111000111100001101101111010110101100010000010000000111011101000100100100110111001110110011110101101111000000001111110000001101000111001011111101000000000001010101111001110111001001010111100010100010001101001010110111000110011100101010011101000100100100110110111111010100010100010111001111000111001000001111010101001110101001001001100001101001001001001010010011011111100011101011001000100011010101000101000010101001111101100101011111010000010010101101100111011100111111001000101011111100111000101101100111000010001100101000101111101101001100010100001011110011011110110111000000000010101010010111101000101000100000011111011110111010000010000110001011111011000011011001110011100111000010101101010100010111011011100101110110001100001100000010110110100111111101111011011101100101101010001000111101000111010110111110001011010110111000110101100001011011011101101101100011011010111000000100100101100011011010110111110111111111011010111101000010011100011010111001001110101100000000000011110111010011010001110111111101100111011000000001000110001000111111011000111000001010011000000101001001110111101011000011000010100011101111000111000000011111101010111110011110011001010011101011101000011111010100000011101010100100000101101101100000101010100101100110011100101100010011111111011010110101110100101001110110111100100011011100110101011101011000001110000110001001010001100110000001001011100000110101000101001001000010011011000000010110100101001111110101011110010001101111111011010111001001110101011110110110101001101011000101000111011100011110001101010011010010100100011000100011100001101011011101010111001010100110111010001011000000100011111000101101010110001110010001010010011010001110001000011011101110110010100010011001000001111110100011101011001111000000110110010000010100111100001111000000010100110010011001010111011001010010011101010001110100010101011010111001110101111111000111010001100111101101110010011100110111011001100101010100100111001110101000010111110110101111000000011001101010011001001001011110100100100111100000000101011101011001101011010010111101000100100101011001101101111011100001110111111101000010011011000110101111111111001011101101111110101100011110000110011000000010011001010111000110010001000111101000011000011101000000101100110100111100010100111000001100010100110110000011010101010111001001101101000001101010011111001111011111100111101011100000011011001010011001100111100110110010111000001100100000010101100010110111010101100101110100010010010111001000100100000001110001100101001100010111001001010100100111110010010011011011011100110010111101011010101000011011100111011101011011000010000101011011000011010001010110101110110110111011010100000010001010101001010111101011011100010101111001110010010101100011111110100101010110101110011000101110000111110010111111011000100101010010111000101 +0110100100011111111101000000110000011000101110110000110000011101001000110011000111011010001101001000000001101111010111101111110110100110100101000001101001011110011000010110110101001010000011011100110011010110011011100001100011000001110001011111101111001111000010110111010110111011100001001100101110111001010011100001010001010001001011101001001101001101111100100111101101110111000101110001001110000001100101111100010111001100100011111101110000101111010011001100011011110000011110101011111111010011010001001010011001010011110110101001111001010011111001101001101111011000010001110011011110011111001100010110010111111010101000010110000000011000110100110110101010100100111000110100100000100100111100011011010111001110111111001011110011001111110010010001111111101100001111111000001100000001001100000000011100000111011011110000111100000100110100001000001011001101000111100101110111001001100100110010111100000101011010010011010011100101100011101011011011001010010111010111011010000111010011001001100101010010000100111110010---------111001010000110011101100000100010110010000111001001100010011011110010011100100010000001000000011101011110001110100100110100100111110100101110111001110111100100111111001110100100000001101111010110110011100100101001011111110010000001011001010010001111101101001010100100100010100001001111001001010001000100110011100011101100010000011100110011101001100110011110000101001110111011000100011000111000010101110011100100100011110011011010101110110111010110010100011100001010011000101111110001011101110001101101111111100110010101100100001101101001001010111111000101101000110000100010110111000011000010111001000011010100000110101110001011010001101100010100111100100111100110100100010111101010010011010110000100110010100001100111010110110100010010101111110111111101011100110000010100011001001100101111100111011101100101110011010011001111101101010110101010011000100011001111101011010000111010110110000011000001011000110100101110101000100100000111100111001111110000011101110111100100001011111011010101101001101000000000101001100011010010110110011000010110001000011111001111111110010000100000101010001000101010001010100101001010011000100001010110111101011000010110100011111000101100111000000010011011011100101111011010001011111011011010001101011001001001110011110000100110101010000101110001011111110101010011101101101001011110000111101110100111001111101011001101110111010010111110110110011111111000010011111000000011100010011100011011101101111100101001100001001110100101111000111010010011010101100000011000110000000110110100010000011011011100111011010010000001011011000000010111101111000111101100000001001101101101101110011101010111100000011001001000000111011100011110001100100001110000010110101100011111001110010011111111000100111010001001011111001010000010111000111001000001101011100100101010011011010011010010101100010011010010101010010001101001000100010110001001011001100101110101101001111000001001110101111110000111100111001010110110011001011111010010000010001001110100000001001010111001011100010111000001111000100010101000101011010101001101010001111010101101101100001110011011010000011100001110011011100010111110100011011010111011101010000100100010010111100001011000110111011100001010010011100100111000111101101100100000100011110100101111001001111100001010001100111100111011011111100101101110110000111001100011010101100111110000001011100110000011000110010100001101000101111100101101101100111011111001010110011000000111110001111001000101010111000100001101001110101110101010001000110000110001001011000001111111000100111101000001101110111101001000101101000111101000100011101001100111111100111111100100000110010111101001100111101100101100001101011010001111011010101100111111100001010101110011110101101111100001110000000000011100001000001011001011100100111001100001001010010111011001011011101010011101011000010010010011000000010000001000011010000001111010001010110000010000111100001110001110110111001100010111011101111100100011011010110001100010100011110101011000010011001111011111111100110011101010111001110001100011000011011100000000001111000000100001000101011110001101011000111001101100000110000001100111100100110101011100101001110001101010010011111011001100100101111111101111000110110100001101110111001111011000001011101101010010110010101011111101111110010101000100010010101101000110011101101100010010000000110000010110001001111011101011100110101100111111111011110010101101110111100000111111111100110101000110001000011011011011011011011110111000101101101100011110010100110011001110100110100110011001010111111111110101011110011100010101010011011110001101000000100101101100000001110100100000111101101100110101101001111011011011101000110100010111010011010100000010111100000100011100111100000000001001010000100011010111101000111110101010111110001011011010000110100001001000001101001010101101001011000001101011001011001100111011001100100100001110101111001110000001001011111101110011011111010100110001001100011110011010111100100111101000011111000110100001101111111001110100110100100001011010101010111110001010000000101010110100110110011001001110011010101100101001100011001011000010100000010111000100101111111001001110110100000001010111110000101111011110111111000011010111100001000100000010101011010011000111101110100000001100001000001101010111110101000010011000100101101010000001100011011100001100000111101101011011010101101110000101001101110000100111110111100100110101000011100001010101010100100011111010111001111001000010100001110001100110100011001001011110100110001111000110111010110000101001101011110111101100000010000001111011000111001111100011111110100101101100111101110011101100110111100111111111010111100110011011101101001010000010000000110100001101101110100011011011101011101001010101101110101110110101110100001000110100001010000111100100011100101010110001011100000111101100101001001011110011010010111111000001101000011011010111000001111100100010100010010100111011101111011100010110110010011010001110011111111101011110001000011000100011111111000000110000010011011001011101011101000101110010011010011111110000001100110000101111011110111111101101001101111111110010000001110111011100111010110110111101100010010111001100111001110110001001000010011110000101110100001100000011010010100011011101110111010001111001011010100001001000011011111001000000000010000111000011101100111110101000101001110000101110100010000100000100001001000000111000011010010001001111101101100110110000011110110111000 +1011011100010100111110110011001000101001100010100101011110010001100001111001111010010100111000011011110001010010111011110001001010010011101010011100000101011111000011010110111101010101101001001100001101010000100110001011001000111010000110111000000111110010111100100100000110100101110111010110011011010010000100001110010010011111110010010110001011111100111001110000111001010000110010111111000100000110000100010101111101100100011111110111110001100001111010011000101000011011001110010010100100111000010100010100101001110100011011100101110011110100111011000111110110110111101111011010110011100110010101101010111010110100110101011011111111111001111100111001111001101010110110111100001001100111110011110001110011110001011000001101011001100100010001000101110100010011011100110000110101100001010100110000000101010011110010110101001110001001100010100101110110001011100010111011001001011111100111010010011010001000001011110010100111101110110110001011101001111100100110100000111001011110011101010001011001000001011000100101110---------111111101110100101010001101011100011111011101111010010000011001000110111010110101000010101111101101100011001011010111001110010001110001001101100101110111010011111101010101100100010101100011101110111000001101110001011111110111101111000011001000001010000011011000100011111100001000111110000110101101100101101001110111011001010110000011110001001011101100110000100010111000011000011000100000010011111011100010111111011101010010011011101010110101001111000111000100100011110001101100100100100110101000010011100011001100111000010011001100101001010110101000111001011101011100100110001100111110101011000110110000100110010111100111100100001111101110110001111100101101110011111000010000011001000111011001011110011111101011000010100011100010101100111001110111001010001110010011011011110111001100100100111101000000100100011111011111111000010010010011111001011000011011111101100100011111001010110100110001000101001000110101110100000001101100010111000000111110010100110010100111000110001110101000001110000011101001100000000100111111101110101010010100010000010000101001000010110111111011101111010001101111111010011110111101001011111100101110000010110111001011010000100010000101000000100001001100000100001001010110100111001110010001101001110001001100010000110111011001110101011110001110001001101010100001011100101101001000111101110110001011001101000111111000100110000011010011001101110110011001101100001010001110001001001001000101010110111011010110110001011011100100001000101011001101100111101100110110101101100111100110111111010101010101100101000010000101100011011001111010101110110011111100111010000101111001100101111000010000100111100000101111100110011100011111000001010011011000111000100010011010110100000011000001100010000000010111001110100010010001100110111110010101010000110011000100111011001100011110100101101101110001100000000111000101110001101000111011101111011000110111101111110010100100111101101110100110000001001111111111100111101101111011101101101111010010001010010001011101100001011011100101000011100110101111110000000010000000110101001000100100001100101001110111001000110010000011111101110000110010110110111000101010010000000100111110111110011000111001110011100100100000110001101010010000010100110011011010111111111010001011100111010001101110101100101000000011100110111110110100010011010111001010100100001010111011010000101001001001110010101111000101010100011011000011110010001110001111011110111110001001100011111001100011110100001001110000010100100100011110110111100000010100011111011001000000111111101011010001000101101101010000010101001110111110011110011010101110111111011101110011111111000111010100011010111010000100001111101001101111111001010111111010010011010110110011001010000000000011010010011000110111001001000001101000110110110110111011111100001000010110110000000011011110001111011110110111111001100011000100000101000010011011011001100110110011011001101101101110000100000001110100001100100101010011001000011101100010100100110001001100001111000001100001010000011011110000100110000011001110111001110111100101100100111000000101100100000000100101011001011000010000110110111110000110101010000010001010101101110010000110111111110111010001100011011110101111010111100010111101000110111110100101000111011110110010001111101110001001011110011111110111011011110111110001000111001001111011110001111111100010111011001100011001100011100111110101100000011100101110010110000011111000011111010100111111010000000000110000010001000010110001001011010000011010100101000101011000100011101011110000000001100111011010011110000011001110111111011110001001011011111111011010000011101101000111010011000001001010010010111001001100011000010001100110110111110110000100111111011010111001000010001011101101001001011100001000011000100001100010011111011100100110101001110010111110011011001001100100111011011010100000100011101111111100100111111000100010010000100000101111100111011000100100000011110010011011110111110010101100011010010101001010111010011001110110001101011011001010011100011111110111101000110000101111110111000110010110011000000000010001100100101010001000101110000010100001101000011110110010100001101000101000111000101001000001001111011101011011000111011100110001000101100101000010011010010010001001001001100000101111001010001100010000111111000101111110100000101000110101100010000100101011011101010101101000110011110011110100010011110001010001110001110110001000110110111110111100011111110101110010110111100000100110000110011101111111111011111101000111010111000100100001010001110100010111001111101111000000011110010100110001110111000110101100101011010100111111010001101001111111010100111111110111000010001001101000001010101011011101000101001110110111011001001010000111011100100000101110001001100010001110110001010101011110111001111000001100001110011000001101011011110110110110110001100001000111010110000001001111100110000111011111011010010000011111010001010111110001011111010000011001001100001000000010001101001111111011010000011011101011111011101000111100001010010011011111110000000111011000100111100101111100101111101101001010011110011111010010110101110101111101010101111000010100111101010011101111100101110000011101101101001101110110000010100110110111000011010100101110010111000001100110100111100010100110010101101110100111101011010001010000000001011100011010001001110010011111110111100111011110001011010001000111000100011110011011000010101000100000101100110000001010101011101010010001110 +1010110110010000100101111010100010111001111000101111100101011010101011001101100101000000001110011111111001001100110011111101011011100100010111111100110000101010001111111001111101000011001110110011001011101100001010111111111111000001100101011011101001000110100011101100111110011101101010010111011001110110110111111101110100010101011100110001011110111100000111110110011101100111000100110001101000010000011010000110111111101011111101111011110100010001100110000100000100011101001110001000010001111101110000011000001010011001101111111000110101001011111110010000111000000011100111110000010011101000000110011100110001111010101001011000110011001100110101001110011101000010001001100001110111100101110010000100000111000100101100111101100001011011010110101100110110110001011110011101010111110100101011101001000100011111011110110101110000001000000110011001110000101011010000111101001011101110000101111100000011010000110001100100011110000100110100110111101010110110001111001001110101010010100001001111000110100010100000101001101---------010110010101000000111000011011100010010110100111100000000111010100101001101111000100010001011001000110110011111001010000000011000110100000001011100110110100101011011101101011110000001011101101110101000010110100110110010111100111010101001000110111000110101011000110101101110110000000110001101010010010110010100110000011110010010011011111111000001101101010010001101000111001001100001111111101101111100101000001101110100100000000111010000000011010100010010000000100100011011001101010110100100110011111110000011111000011010011000110000111100101010001000001100011011110011000001111011111010000001011100101011011011001010110100011101011011110111110111110000100101001001111000101110101001100010110110110111010100100100110101011010010101111111111110101001000101001010110100110000010000000101010111110101100100001011011001100011011001000100000101111000101101100010100110101100011110100010101000000100011100110011110010110110100000011010010011000001000100100000000011100000111010110111010100010011010110111001010011000110110000111001111010101010010100010110111110100010000011101100010000111111001111101011111001010010110110101101010011001111100100110011010101101001010110111010000010010101111101001010110110011010011110110001100001001011111000110010100010010010110100010010100010010100110001111010111100111110100101010011010110001011110011011101101101001011110100011000001110110110101001101010000011110010101111110111010110010010100010000100111110000100000110010111000110101001010001101101010010110000010011101100001101111001111011000111011111001011001110100001000100100101110100111110011110011011111101110000001101001110111000001001011000001010101000101100011011000011011001011001101011111011100010000001011100101001011011000101101101010110111100001100011111101010110000101011010110111100101110001110101111111011100110000100111011101011111010101000011001111001001001000001010110101001001000001011010111110000011000001111100101111110101101000010000100010001000010101100011000000101101001101110001001011001010011000011110011010010100011000000100010101100000001110100001011010100000010111101101010011000010010010011001101111011101010101100011110010110000011011011100011100010111010001110000110110001111000100110100000000101110010110100101001111001100001111101011011101110100011010100111010101001111000010010100100110011100001101011100010101111010100110001111000110111111000010010010111010000111001000110100001000000011001001111110110000000001000100110011101110001011000011110001000001111111000000011111111101001001111011000111000100100011111000111111011010000010111000110110111110110011100010101001010101000001110101101101101011001010001101000111000100010010010000011010001111000000001011101111100000111111010011010000101011100010011101000101001010001111001001001100011010100101100001101010111010001111111010001011100100000010100111101101000010001010100000111010111101110011010110110010011001111011011001011010011010100001100111001010101000100011000101001011011101011110101001111011111011001100110111101101010101010011100110111101001110001111001000011110000001010100000011001000110010100100111010100011101111010001011001110110000011110001001101010100010010100101110111110010111011111011111001011000001110111000101000111011011111011011110011100100100100001000000011000111001010100011011010110001100110111110000001111001101000111010011100010011101100110110000001001011010000011111000110010011000010100000101110000000000111111011110100101001100000111100000000011101110110011111111011111010000110100100011001000100111001110110100000111100011010101000111010011011100001011000000100110110010001010001010001001101000101011011000000010001100111011111001100101011110000101010010011110010100010001101010100000001010111110010011100000010011111011000010010110010000111001111111110111100111110100010011011101000100110111010100110100100111101110101101111011010110011001011001011110001100010111111010010010110010101100011110100110001101010101001111100110100000011000101001110111100001111101010100000010101010011101001110101101000110000110000110010100011100100110011010011000101001110001100000011101111000000000100100010101100110101110000101001010100100100001011100010110111111111100110010101101001000100111011011010001011010000100011100110111011001101111101011101010110011100010111010101010011010001011000010011001001011101010011001011110101001111010010001001101000010111110100100000100011111110101011000000111010111101101010111010111110100101110101111110101100011010011010111010010000000100100111101000101010001100110110010100010100110000100000101101000000100010111000011101101111010011000101111110010011101011011001010001100000010111010001001110100111011000100011111101101011111000001000010010000100110111101101111000000100011110111000110110001010011111000110110001010111111001111011111000000010110110100000101000100011011000010001000100010000001111111110111001011100110110100111101000001001111100011110010110110100110011010001100000100101110000011010110110000000101011101011110000000100101000111011100011000000010100111110001001000111000101100110101000111111111010111111101110100111000000010011101101000010001111001000011000010111110010100110110011001101000100101001100011000011110001001000101010000110010001100001011000101000100011001000101010100010011101000000010110101110000010011110100110100100110000010010100100110011101100101011001011011101001101001011101000011111110110110010101010010110110101 +0111011110110000101011011010011100000010101000111100110101101000111100001111101110011101101000100011000010111011111011111101000001101101000010001101111101000001011100010101100010101001011010011100011000000010110000111011110100111101000010000111011111101110101000101001010110111110101000000010110010111100001001011010111100111101101000101100111010011011011101001100101111101111011011000000101100001110001010011011001011011100101001111011001010010110100101001110011010101110010010011100010110110111111101000001100011010110100101001100111010100001000001101110110001100110101010100100011010000010000000111010001000001010101110001010101010000100001110101111100111001100100110001101100000001010100110000101111001110100110110111110110101100110100101110010110011011001100111100000011111001110011010101011011001010110111000000100100011111111011000100100001110001111011001110001100010000101101001111011100010000100110011100001001001101101111111100000111100001110111010011110110010111000111100110001010011001000001011100011101---------100111011010011100110110110001010000111010111101000001000010010010000110100111111110000101110001110011101000110100100100000011011001010100000011110011111100011111000111100001110011010010100110101001001100000000010110010000001001111010100000110011000010011100110010001001011100011100010111011100110101000000000101011011010100011011100000110011001011001010101001001000000110100001010101100010100100000101100111011110001111011011110101110001101111101111011101100001000011000111111001001110000100100110101000010001000111000100101001100101101110000001111000101000100000110010111001011000110000110001100100100010010101000001111110101011001000000010000001001011110100000010001011110011101111000101110111010001100100010101110011111000110000100101101100110111000011011110101010101110100001100010001011100110101010111000000101001101100010001000011100111100001100000101001100010000100010101010100010101010101110100101100101110100110001110011101100010001101010000110001010010000011011001001110100001100010011011111111110100011010110011101000001000110001010110001000110101000011100111011101100011010100100110100000000010010101011010100111110001111110000000100000111101011111001111101110000000110011010010110001001000110111011001110011100001101100110101001100100100011000010100101110011101110000011000101110111100110101010111100010111000000010000000110011010101001110001001111010010001011001101000000100011010101101110101110110101111101111101101101001011101101001011010110000011101000000101000111110011011110001000010000000010010101001111011010001000001110010010001100010001110010110100111010000101101001010101101110010100001111111101110011001011001101000110011100110001001000101001010111111110000001000010010101010100001010010000100001100000011101010110011001000111111100010010001011001010101101110010000000110000100010000110011011011101001101100010110000111011110000110111101011101101010011101111010101001110110100001111010111100110000011000101010100100111101000110011111101101100110101011100000010111001001001101110000101111010111011110010101001110010011001010111101101101010100111100001001110010011100111110110110010011011010110001110000001001111011111010001100000101000110011010011010100010100010000111111011000010111100010001010110100101000000100111111000101100011110101011010010011000000000011110101101011001100001101100101010000100010010000000010111011000110011010010110000100000100111100011010001111101111100000001011001100010000000101011111011100101000110001100011011010000010110011101100101000001100110001110010000000011100011011110111011110101110110101100011111101111100000110111011110110000110110010000110110001101100001001000001110011111111001000100101100110001001000101011001011111010010101011000101000101010001100010100101000010001000000001001101100100010100101111000000001100010010010100001100100100000110001010100000111001111011100101001011001011111010110100000111101111011001000010001000000001110011101000001111100111000011000011011110001110110111011111111010001000111111101010011101110110110011111101111001101110000111110001001111010010000000000000100110110001111011011011100000110000101101011110011111101000110010110110000110110100111110011111011110011111000000011111010111010110110000011000010000100000110101110111001001100011010111110100011010101111011100010001100010100111110011111010001110000101011010011101001101011001100111011000010001010101011000111101110000101101010010011100001111011011110010010011101111111010110100111111011110100101111110101110010111111101100101101111101111001000001011100010111001011111001111101011000011100010000111000111011001000100110001011111001111000000001100100001010101111010001101000101000011110010111001000100101010110011011110110010110100110110100111000011010011010011110010100001011111010011000110010100001111000001110100100100110001001011011111111101111000100100100011110001010011010001001101010010110000001101101001010001011100000101111101110001001001010011111011110001010110101010111001010010001000001010000110001101010111000100100100111100001101100100110101001010001001111011000010001110010101111101010100011110110101111000100110001001111110100101000110110001000101110110111000001000101001100110000110011011011001010001110001110011011000011011001110011110011010000101101001100100101000001100110011011110100101111000110100001010001001001110010101010101010110011111110100010110110010100110111010111111100001100110010101001001101000100110010100101100011110101111011110001011010101001001111100101101111101101001100110011101001101100101101110000101100000101011101110000100100100111000011101000001010110001001100001100100111000100101100100011100001110100110100100010101000101001001001000100001110011010110111000101011100101100001011110001100010000101001011110011010110110011100111111010011000011001000001111000100111100001100010001000000111111101110101110110101001110100111001100111101010000011001110001110111111011100011010100111001111101101001101000110101111111111110010110111010010110100000000111000110111110100111110111011101100010001111001001100110011111100001111111000011000101101101011100100111010110101111111101011111010000100111110100000000001110110011111000111100101100110000110001011000101011010000010011011101010101010001000011001100101001000000110001111001100010000110100010100000100100110010101011011101111010001001111011000010101111010111111100000011010111100111001000001110000110110010111100110000001011001000010100 +1101011101000000011101011111011101000010100101001111101010010000110010111101100011100001011001101001010101100010000001110011101110011100010010011011101000000101001000001011101100001100010010010101010110111000110000110011101110010101000010000110100101111010000010000111001010111100001000010110001001010111001010010110111000001010010101000001100100011000011001010111000110000101011110000110010100110000110101101110101110001110100010100011101010110111010001110101100001100001000000101000110101110100100100010010110011001111111011111101100000011110101010010100110010101010111001001111100100010100100001111000110110000100101111101010010011101100110001011001010001001101110110101111011010111011000010000000110010110010000001011110000100111101110000101011100000000000101001001100001001011101111000010010010100001111011010011101101011100000100100111000000100110001110010100010111101111000111101000100101000011010010011001001100101100011010101100111010001101101011000100100101001001100110001001111111100001111100111000010101---------101110010001111000110110101000101110111111011100101011010110111110001001100001110001100001110010001000101011101101101101101011101100111100010111011000100010010011101100101101111111001101111000010111011101011110011010100011110010010001100111100010001111000111110010101010111001100100011011011110100100101100011010110110100000010001010000101101110000001000001011111000000111010100111101101100100010001010110000010000010001101011011000101110000001001101000000111111110100000000111010111000110000010111000110000101101011000000100100101000110011111110011000100111001110001101010111000011000100011010010001010111001010010000000101001001001011110111111001100010100111110111010111000011101010110001010011111101110101010111101000000010011001100111111000001011011100100000110111110000001111001011100111001001010111000100110001100100110010001000011011001100010001110111010110100111111010011011100110010001110111110110111100000110000110100100110111010110000101110101101110000110101100110100111011100000000000100010001101000001100101100101110001000010000100101001110000111101010100011010010110100001100000110110110001011101101110100111100100001001010000010110100111101001101011000000100101110101011001000011111001001111000101100001100000111010001111000000111011000100110101111010100100100101001010011011110011010100000011000001001001100110001010011001011011110000110011010011100000101001111111001010111001001011101000110000111001000100011111010110011001000011111001010101101110010101011010110010011110011110100010011110100100000011000011110001011010111001001110010011100000111010011010100110000001000000100011110101000101011111000001111111010010010011110101001010011111111100000110110010100110010011110001000110100111010011000001000110101010011110010111011101100011011010011010111000000110011110111000101110011100000100100000101010111011110100111011101011100111110000110101001000001111010000110100110111001011101011010110011101101010101011001111111010000010010111011011001111001010100101011011111101111110010110110011000011001000110100110010001000111101110001001110110010010011001100110101101000010000100101110101000110111101001110100000110000100001010011101000001101101011110010000101000001110011001110010011100000111010110111011110001011110111000100011100111101010111001000101010010101111100100011100000000011011100010100001010110011001011001110011011010111111000111010100001110111001100110011011100010101111100110010011100110110101111001111000100000101001100111100001011110011110011011110111100011101010011100101101110110000111010010001110101110110100111101000001100011111000000111110111001011101001010011001101000010000110101001110100100111010011100110000010010001000111000111111110000011101101110011110011100001110011010100101010000000110000101110000111100001001010001100110111011000110001010001001001001111011001100010101000010000111000010101100100011100111011000010011001011110110010110000011011101100110101001101000110010010100100010001101111011100000010000100011111100000000110100110000101011011001101100010101010100101001101001111110111001001100011111010001101101010001101111110111000110111001011101001010101001100101001001101000000011101001001001010001010101100101011001001100100001100000111000110110010111010011110101101110111000100010000001000001101100100011100001110010010110010000011110010010010101001010001101010011101111101011101110001111000111010000010100100111010100011010010000110011000110010011010001001010011000011001100011100111011110001001110111010110000110000001001001010010110110100101001001111111111111101010001011001001100110011000011110101101111011011001110101110100110111011011000111101110100001010010000010110010000000010111110101100110010011011011100110110101111000011111010000000101011110010011000101100110010000101011111010001101010111001110100100101001100001011010110010001010110101000011000110100011111101011010011110000110100011011110011010010101011011000111111001101011101100110000000111011110101010000000111010100011010101101000101000010101101000100001101101110010011010110111101110010100011100111001000001000110001100101100001000001100110100001010100100100010000110111101110111011001010011111110101000010000011000000110010000001110010110010011011001011011000001100000110111011011011100110100110001110001001101101010101010011101111111100010100100101011011010111001110011011001010110000001101001001101111010011100111111000001111110101010110010000011011110001100000011111001111001110010110010001100101111100101001110000001101111010101111010011101001011111001100000111100100011100001010111010010000111001110110000111000011100011110001101011100001000011100011001101111101101111010101000101111011010101010111001111100110111011110100111000101011011010101110001110010001011101000111011010111100001001100001111000100101011000110011000101101110011000101111100011010001000111000010101000010100000111101100111100010000111011100010101001010011001101111111100011011100111110010101100010010001110010001110010100110000000010101111100111000101100100011011010000010110001111111110001101100010110110110111111111000111101010100100110100011110010111000110101001100010100010000001000011111000110111101101101011001101111100100110001110001100101001011011000111000110101011111100000001010010010110100001001010110000100101011101010011111101011000100000101000011000001000000001011000111001110110101101010010010010010110000010010011101001000110001101001101100110010110111100111 +0011110101101010000101010111100001111011010100101110100011001000010101101101101110010010011001101000110101111010010110011000011110001011000000010000101010010101110000111111101110100111101101111011000011001100001101110110110101000011000111000110000001111111000101110111010110110010110100011011110000001110111001001110100111011000111010000001100100111101000100100111010110011000110011111101010011000101010110010011111010000000011011011101100010100011100000010111111011101101011110100011000001100010010110001111111101011100011110001000011101110011110100101000011111010100100101011110100100010000101101001011000101001000000010011011011011100100110101100110010000111110010101110010110011111011011110100110110001110010010101110111011100111111011001000000100100001110010001010110011010010010000101011111001110111011001110100110101000110010110100101111111011110010110010010011001001101010100110001101010110000100110101011001110011010100110000000010110100111110111110000010110000011011001110100011000101000111111000011010000---------010010100000101101110001010101100001010100101110010000110111100000010010001001010001101010101101011101100010100000101000111010100110000100111001111001111001111010101101010011111011010101100101101010101010000111110000101000001101001010010000011110100111000000010010011110011101111111111000110110011000011001001010100011010001000000010110000110011010011111010001001100001011101110111110100110100000111101111111111100101101011100001100011110001100100100001011100110111001001101001110001110110010001001011000000111111000110001000010000100000100100001001000000111010101010001011011010110110011101100110110101101100010000011100101111110000010110000101011100001000100100011110011110101010001001110100101010110011010010011011101110000100001111000111100101000000110010110111101110110110010011011101110000101110001011101011000011100010001110011111110110101000000011111111011101101001101011010010010010110001100100110011101001011110000010000000111101010010001000101110011100101111001010000001111101110101100100101100101100111010001110010101001100111111010011110000100110011111011001001001010011111001001001001101101000010110101010011110011010010101110011010110010010000010011010001000101000100110100111010010110110101010011101101010010001000001101011000110100110100111001001111110111010001110101111111011110101101111010110110011110010010100000100101111110100100111010101110111101100001100011101110010110010000000011001000110001011001001000110001101100010111001100101000011110010000100001101010010001001100011111010101001101110101110111111010100101100111010111001000111111010001101010011110010100010010101010100000011101000111010101110001101011111111010011101001111000010100100010100111011110100001001100111100001010100011011001000010100110110001000110001010111000000101001000110000000000000101000001000100111010101010111010100010001011110001101011011000001010110101110010100100111000100101101011101101111011100001001101110100110101001000111111101111011000110111000011110110100011100001110001101101110100100101000111110101110011010110100100101101000001011110000001010100110011101110111011100100000011111101111101001110011011101011100100001000101110111100111001001011111100001110001101110011011101111011001001000010000111010110110100010010110011110000111001010110101101101100110110001001011111110000001100010110111101101111111100010101111100101111101001010100111000010010110010100111100010110010101110011001110011000010000100010001100010010001110000101010001010111110110001010001011011111110011101110100011111000000110111110000011011000010111111011001000100001111010100111101110001010110001110111010001110110010001001010011001111111000001010100111100111111000101111000000110001100000100011001101010010001001110110110111010101111101001111110010010011001001010001011101010101001101001010001110010100000010010101111101011011100001011100110010101110001010011100110110011111110010100111010010010111011000101011110101101010011101010101011111111100010111001010111010010000011011011111010001111000001110111100001100110010000110110100010010000100111011101110000011101001101010101111111000000100111001011111111001111101010011111001001010110010010111010101100100100111010101111101110001011011011010110011100011000101011001111101111001100001111110111110001111011011000101110111001001111101100111001010010000001001001101001111101011001111101010000110000110110111101011111011110000010110011011001010011101100011001000111001111100101110001011001100011101001010000110101111111100000101100010011110000010001001010010011011000011010110010000111110101000100000100110111101101111111000000101000101110001011010110111011011000111011001101000000100101000001100110110110111101110000000000101011010110110101000100001000100111100001100101111111001010100111100111010100110000110100110000101101010000001000000011100110010111001011011110101000001010100111000111011010010001111101101010111100101111000110111110000000001001011101110110101100100111000001110000010110100000101011000101110011001000000011110010101100000101000010001000100100111001011011011100111011011111001010010100100010011101110110000001110010010010011001000000111100100001101110101100000101110001110010011110011000111101101000101000110101110001010001111110100110010100000110100100110001001101110101001010110000101000110100011000100001100101111010011010011111101101001011111001100100000001010100100100110010011001100010110101100000000101001101000101101010101011011011000001001101111100000011001101100111100011110101010000000110110001001100001000011000110111011110011110110101111001010010111010000001001101101011000000011111010010000001111101101101101100100110100000111101010011100110100100010001001010101110101110000111010010100000001011111110111100000100000111110111011011111000000001010101111101010100111000001001001001011011010110001110111101100110110110101011001011001000011000101111011010011100011001101111100111101011100001011110110101010101110000001100010110100010000101111010101111100011010010111100011100010001100001110010001111111111101001000000011010110001100111010001000110010100010000010010011001111001110110000010010001011000101010000110110101110100010000101011110110110011100100111110000101000100101011100011011011011001000110000101011011011100000110001000101101010111001010111001011000101011010101110110100111001011011111010011001001100100100100111110100001101110010011101100000011001111000111110100101101100111001111101100000110010101110 +0000100100000101101101101101010010010110001010011011001101110100010000011000000001000010100100010100110011010011011001010001110111010100010001110110111111110110010011001011110000111011000000000001101010011100001010110001110111110010011000001111000110001110001110011110110100010101100000110101101001110111101110101011111011000101100000100100111100001000000110101101110001101001101110001010011101010000010001011001110010110110101100110110010001100110101101100010110101011000111000001100010010001000111010010011100110010101011010011111100000110000111000011100100111001000011111110101011011010010110110110100010101000000011011001110001011101000001110100101100000000100101000111100100001011101101100000101100111000001100000000110011000100110100001011011111101010111100110011100101100000110110000001011010100111001001101001110110000001000110101011110100001100010101001110110010100111001110000111100001101010100010000110000101010110110000011101000100100100110000101001010010010010101100111101000000110110000100011010011110---------101010101111001110100111001101000110111000011100010100000010101111000111001110100110011000110111110101010110100001110111001000000001000101101101011010011001011010010010000010110110011000110110111001101000000000011010111111111000101111100010011010111000101010001111010111100100001000110010101101001010000101000100100001111011101110111111000010001100101100010110010000111110000110011001100110010010000110100110101001110111001010110000000111000110101100110111010111101000110110000001101001000000111000010101001101100110100110111011110111111100011110011111011110001010001011001100101111111101100001010000110010101110000010001101010101001110010000001110000110011111100010011001110001101000000001011011100101100000101010101011110100111111100110001100000111101001010000000101100000000110001000011010010110001010110011001000001100001011011111011110000000000101111101111101110000101101011110000110001000100010111000111000110011000000001001101010100010001111011110110000000101011100010010000111101101001011100110110010100100100000000111011111111001000101011011111110111011000011001100001000110101000101000110100110100010000100101111010000111110010101001110111010111111000001110111100100110111010011010100000010001011110101110110000000010101010101101001101111001111001000011010110001000101010000100110000011000110101101010000110011001011001110101000001111001011000010110011011000111001110100000110101011111000000100101111111111101000111011010110010001000010111111000101000101011111010010000111011000001000011010111101001110001111010110101110011000001010110010011000010100110011100100111011110101010101100001101111001101100110101000100101011010000101010100100101001101011101100000110110110101100001010110101101110010010110001100100110000011001101010100000010101001011010110001011001011111001000001110011011101011010000101101001111101000010011111100101010011001001100110011001101000110101001000101111101100010101111011111111100011011011010011100001001111110001101101101111011111111111100100110111001110110011000111001110100001110111111101111110001101010111101110110010000000100110110100100000101110110101101111001000000101100101000111100101010110100111101101101110101000110000101101001011001100100101100001111101001010001001101100110000000000111111111001111100000100101011000001000101101000011010101100000000101101111110101100100011010000101111010101101101000111011101010101000100001111110110110001111110110011111110110000110101111001101101100100100000001111110011001110001110110011110000100110111000111001011101101110001100100101000100101101011011000001000111100100110010100001110010000110011010100110101111011101011011100100011001110000110011100001101001011101011010101101000000001101001011000110000001010001000111111111111000001010001101110101110101110100000000001001010010001011011000011110111100111101001001001000100010111011011000010000001110001011011101001001101001110110000000111111000110010011001000001000011011001001100111111010110101101001000110110000110011010101100000011010111110010000111011010000001101000001111001010100010111110100010100001000101011110000100111100001111111101101011001010010110011111011010100110001010001001101110100101110011011110001110000010000100101001010110001010100101000011101010000110000101110010000000010101111001010101010000001011111011000101111011110010110010110111100101100110111000001111010001010111111110010100010001000001011101011101100110100100100000001010001010000000010111101101011101001110000011001000100101000110010000001110110000110110010011101101011000000011101000101011011011000110011110011100111010001010110111110110101010010101010000110011010011011001010000001000101101010011001100001011111101111010101101000000101011001110011110000000100011100001011010000111011000001111000000011110100011110101010110111000110100101101010100000000111100111111111110110111000010000000111100000011100001010111010101011100010000101010100000101101010101011101001011110011111000010001001101000100010111100111111111010100111101110000000101100001010010110000001100011000111111101111001110010101110101110000000111010001110011110111110011010011110110111011001111010100110110100110100001100001111000111000000001110011111001000101111000011100000001000101111000100011001110010110011101100110100101110101111101010101100011100101101101100000101110011110100100111101100101110010100001011100000000111010111110101110111000011110100101010001111101100111011001100000110011010101011000111111111101001000110100100110100001000111110010001101100111110111001100100101001000110110110100000000100111100010100000010101000010101111011010001001100001011100000101000110001111011110101011001010001011101101101101001100101001101011011110110010101111001100101010111010000000100001100011111101101111011001110110110010110111101010010110001001011110110100010010000110111011011100110000110011000011001001111111011000111010001011100101100010111100010101110101010000111110001011000000010010011101111000100111101110111010000111000001011010110100010101011000001111010001001101010111001100101001001011010010011111100111001010010110100101110101011000100101111000111010100000001101100101000111101111011101110101001111100101010111000110001110110010101101001010011101100101110010111000100000011000111111101101111000111010111111011011000010111111110110001101010011000100101001000011001110011111011100111001110011100011110001001110110111110111000110010001010110110011111000010001101100001100010101 +1111101101101010110010011000000110000101101001100101111110010111011001111100001111110110101110100001000111101100000101100111110010001111001000101001111000010000110110010110010111110001101000100000001100011110110000010000000011000110100101010000010011001001100110001110001011001001001001000110000010110110001111101000100000101000000011001101101101001100010110011001000000101010100111110111111100110011010011111010011011011101011011001100011101110001001110100010110011101000010000111101111010100111100010000101010010100000110001001010010110111100101101010110011011100111110100010001001110111011111101101100000011010000100100111011100010001010110011000011010101010101100001110000101100001000100011010100100000001010011100100110110101000010010110110010000011110010000101110011000110111110110101011111001001011000000000100101110110010011001100110110010011110111011111000101011110101000110011110001001111000001111001001110101110001100101100000001110101010111100010000100010111000101001010111000100001011001000001111010100---------001101110100111101110001010111110011101110100101100010000011111110010001011010011011010101100001100110010101010010111011111000110111000010011001101101001001001000000101110101101011101100001110111110100100111000101110110101101110000001000000001110011101111010001011111011101101110011010011110110101010111010001011111010101111001001100110101001001110010101101010111000011100100011110011100101110000000100100100000011010010000010011010000110101001001100001100000111010010100001001000111000101000001001111001010000011010110101101011011111110001100101110001100100011001111111111011011000110001011010110001000110001100101100100110100011001010011110110101101111000110101101000110100000000100110101100010010101010111010111001111010110000110000111010101011100110010110111101001100111111111111010000100001011110011000000011000000011111001110100000001011001001100111111000000100011111011010100100101010010001111000001101101111110110011101000000101011000010100110101010100101101010000111001101111010101011000100111110101000101011100111001101100011011000100000011110001010111100100000001100000001000000100110001100110001000000100010101100001111010010010011111010110100101111101100000001001100010001000001000010011000101010011010101100101111110110011100101011101101010001000001111111101110111011100001100011111100010000100010111000000010110001100101011111101100111101110101110011011010100110010001110100010100100001010101001010001100001000010101110101110110001100010010001000001000100010000000011101000101101011001110001000000011101111011111101001111010001011110000100000100110010110111000101110101110011111011000110000001010100010101010010000100110110001110000100001100001111000011000001101100111110000111010010101110010111011111111111110000011111110011000100001000011011111011010011110110100100010110010010010100110000101010110010010100001100011000100010010011010011111001000011100000111011101000100001001100110001011100110001111001100000110111011110001011110101000111100010001010101101011010100101101101101001101101001000010011010100010101111010001111011011001001010010111011011010001011001000010001110011110111101000010010011101011011011010110010010110100101011010011001010011110010010000101011111101101010010011110100000011100111010001101010011101100010000100100111010110100111100010010100010000000111110010100111100100110001101110011001100011101101100010100001010010011011100100010111111110110101000100011100111010110001000101111100010101010100001100010010101100101110111010001000010110001100101101100111000000010111100100111110100110001101011100101101101110111101010010111101010111110101111111001010100111111000111010000111000010101100110011110000111001111000011101010000001101000000000101001001011001110110011000101110000100000001110110011111100000101011110011110100000110001001001000011000011001100010000010010001100000100111101110111110111101011001010101110001111011001111110110110011101001101011111000011101011010001001011110000011100011101101110011001000110101101110010000001100000111000101110110000111111010011000000100010111111111011100100111101101011001111100011110100101110010110000111111010101110011011000111010111100111110110010010011010100010101100010000111001100100100011001011000111100000100011011100110111101100010000101100011110101011001011101111011011000100010110001110101000011111011011101000100111100000001110001001001000110100001011100000100001100011011001011100010110111011000010101001001001101000100110000110101001110000000100110101000011100101100100010101110110110101110001000011111111010011010110111001000001100100110110111011101010001000000111110010000100000101011000010000111010101111100000111011001001010100101011110000001110000000100100000100001001001100001101111111010110000111011000000000110000010000111000100111001010101010011000101101011101000000001110000100101100011001101111011001100101000100001011101010100100011101110111000000110111100010101110010100010111011011011010100101100101110000001000111111110001101000000100000110001100110110111101101111011101110110011111000101111101110010111001110100010010110101011111010000011010101110001001100111100010101100011100000011010110110110111100001000010101111100100110011101000101001000011010000111000101101010111101010001000000011101101110110110000111010101000111111101101010101001000101000011011001001110101001000111011100010011100011011011001010110100100000011111100110011011101010001110100100010101011100111001001000010000101111011001000110010001010111010100010101011111111011010111101011011111111110110010101010011010010101110001101011001111000101000101010100111010001111101110000001100010110011000001001011111011111001010000010010111101100101010101110011011010110100010011111101111000011111010011110111101010110101111010000100010111011101100011010011010110100010000101001011010111010001101001001010000001111000111010100011110110111011010110001101101011111010101110001000000110011010011100100101011000010111001000111100001010000111011010011010110110001100111110001111101010101001001011110100001111010111101010001011110101110000100111111010000001110101101011111001100010100111001000000011101011111010001101110111011000000110111110001000101010111001111011101010110110001000110111100101101010110011101110000110111100011110100010100010010010011110111010101001111011010001000111001101011101110101001100010001100000110101011001101001100001101111100010010100011011101010001001010110010110111010110111000110110 +0001010010111101101000110101001001001111011111000001111011001011010000111100000101111100000100111101010101111111000110011110000101011010101011111010001111000110001101000011000110101110100010010010000001111111111001111111000101111111101010010100111101111011011011101011011101100000100110100010101111010000000111000010011100011101101000111011010010010001011011011001001100110001011001101100011100010100101011001010001110111001000111001001001111100011111000010000100100100001111010000100011111100000100010010110100010011010011111010001011011010000011110001101110111110111001000111000010111101111101011101001110010110001100001111010110110011110001111111011011001011011001110101111011101001100100110000000100111110011110111100110011111101101010110101101100011001010000010111111100100111111010001110110010101100111001100101001100001010001110010000110100011100101111110101101111101000111111011010100000001001100111011111001000110111010001000001010000000110110110010011111111110100010110000011001011011100100100000110110000---------110110011100011011110100001100000010101111111110101100010001101100100001111101011001011010011011010100101011001011010011110011000100100111011010001001011001110110110000111111011010001000111110100011111111001010000111111001000011011101011011101000000111100001100011100110110111111101100101010110001110101110110110101101000000011001001110000000110011111100010101110110110000110111111011011011100001111010011001001101010000101011010010000110101011000010010101110010101010011101111000101000000101000100111011101001100011010111110110000000101001010100011000110011001011000010100111000001000110100111010011001100000010111110011110101101110111011111011000010110010000001010100010110001000100010001101111010111010011111001000010110010101011001100010111100010110010110110101000010100000111100011011100110010100010100011010111011010000010100011101010101001011010000101011000000000010000011111010100001000110001110111100100100000011010100111111000100110100100100010111000110110101100000011110001101100101110111000000001110111010110011101001011110001101110111011100101000001010001010100110111000001011010100011111010101011001111101110011011000110101000001010000000110000010100011101000111101110111001100001100101100110000010100010011000001111110111110111001001010001011110001000100101011000110010011011001111111100100010011110010000101110010000011110000110111010001001000000101001110010000101011100011000100000101010111011011110010111001001100000010101100000101100110001100100100101111010110110101110000000101001011100101110110111010011010101110110010101110000001010011111010011001000000001000000101011011101111001001100110000101101011100100110011101010100100010110101011001001001111101001001101111111100011001111010000000100101010000101101011011111111111001100011101011000111110101101010101101111101001001110001111010011101110011001100110110111100010111000101110000000111110011010000011100010011111011001001000001001101110101011001011110101010001000011101000010100110110001000101001000010011101101010100100111000011100110110011000011111011101010101111101100001000110001000100110110000110011111001100110001101000000101101110011011001001111010110010110001010110111011010000010110111000001100010110111000011100101111111010000011110110101100001011010100001110100110011101111111011010001111011111100100110110100101010001011101001111111100111000000101101100000100111110000101010111110110100111010100001001101000100101110111010101000100001000111011001110111110110101000011001000011011000010101011101111000011101111011110100000000011101001100101110000110110000110110110101100000111101011000010000000100001011100100011001111000110100110010110100000011100011010010110101001010110011111100000011001110000111110010111101101001111000101000000110000000000010011110010111001001010110011000001011100111000100100101010000110001010010000011110111011110101110110101101000001010011110111100000000010100110010111001111010000100111011101110010100001101101010010001000000111011101001111000101011010101011101101101111001010000010110111101011000010100110010111100000110010100101011011100000010011010001000110000011101110100000010100101101110110111111010010100011110111011110100011001111000001010101110000110111101100100010111111101111100101110111011100110101001010011010101011110110001111011011111000000011000100000110110101110001000100000101111000000110101100100110100101001000010011010010101111111101100001100110011101001110001001111011010101011010010011011011000110100010000001000000111010001101001011101000100000100100110001001000111001001000101111101110011110110011011100001111100000101010111001110011100111000000101110110011010101110011000010111111001010000001111100110111000010000111100110001111101011011110000100011010101001110001110011100010111011100001001010001111001101100111101000111010001000000010110100001011011001111010101000010100100001100011010101001101111011000111000000111011110011001001101000101000011011100101001000100001101010010111111001100010011000010000101110110011001110000100101011110010011100111000111011100111101111111100100100111000010100010110110101001101111101001111111000001001010011010101101000010110110100101101011011011001100011000110001010011111101001101101001001000100000001010000011110101111111000000101010011101101010100101010011000110111010011011101011111110110000110000100110011111001100100000100111011100010000001000000000010000011110111001010111111100010110000010101000111011100111101011011110110001001100001010000011011100100010100001101101011100110100101000100000111010001000010100011011100000101101011100000100110100010001000001010110010110010001101100001110010001011110001011010001100101011000101111111001011111001100110001110001110100000101101001011111010011111100011111111010001100000001011010011101000101110010101011010100100000000010000111111111001001100111110100001001101001011110010001111010000111111011101000101010000101000111000101000111111100011010101111000100001000011000100100110101111101110000010100010101111001110010110101110001010011010101000100001000110001000101100110000101100001010000001010000111011110001100001111011010001000000100110001001100001001001111110101000010101111001001001110100110001111001100111011001110101111011101100111010001010101000011111110001001111010100110111111010110101100001010111100100011101010100001011111111100111000010101100001111110100000111001000000001100100101101010000111110000100110100111100100110011011101100001000 +ls256msgs +1110100000010011001011010111000011011011111100110001011100001100100100011001101111100100111011000100100100111111110111010111101011100111010000101000101111000100111100010101111110000001101101011011010110000111011001000011000010111101011101111110011110111110011011001111000111100100100110110000000010111100111010101111010100011111010001000111111111110110111111011110110001110000001000011101110111010001101110000011101111001011110101000000100010100101111110100010100000001010011111000100011101111010001001010111111110010100000101010010110100111000011101010001000100100111111101101111100000000010110010000111111110101010011011111101010001111111101101111010011100010000110010001111011101110111111111101110101100101000111111010000110100100001010111111111110100001111010000000001011010000001000011000100010010010100010011101111110001001010000000011100110111101101011100011111111001011110100111001101010001001010001101110100101100100011011000111001011110011011000010101101101000001010101111101010000011100100011101100010010111001101111100101010010100001001100101110110011010010100111010100101111100000101010001110100010001000001010101110011001100001101001100111100010101011101101011000000001101000011000111111011111110110001111000111010011001110111010101001111011011000101010001011011110101010000011110101101010101111001010010101000000110000011100111000011010100001110100011001010100111011000010100100011010101101111110001010101011111000010110111001101001111111011000110010110110010010011011000100000111011011000011011011010111000001101101010110101011111111010000100111101101011001111110111010001110010011101011111111001110101011010100110010111111110011110111101110110100000011100001011111000001001011110010111011100011100100100111111001001101110111110100111100000001111000111010100011111001001101100111100111111001010001100010000010001010011101111001100111111100111011011100110000111101011011110011100101001000001001100110100110101110000011011011000010110111101100010100101010111110011110101110110011011110110111111001100100011111011010000110010101010111010010000110100011001111101011000011011110101111101110100001001000110100101101011110110001101100001001011100100101110001110111001011100101100011001000000101010001110011100101110110111000100010110101110101101101110100001100100000101001011111000011000110101011001110001011010001011010100000011010110110101001000010110101100000001100111000011111000110101100010001001110110111100110010101101011101000010100100011011011111001110001101111011111101101010100100110110010101111011000011001011100000100010001011110--------- +1000110101110000111110011010010000101010000011000001010110001001110000000000101111110010111100011001110101111001101111010011001000101010011100110010000001010010010001110000101000010011110001011010100011111110100011111110001011000000111010100101110101101110110101110000011001011010011010010101101000100000000010001111001101011011101001100001010011010111001110110001110000011111111111001111010101110000110101001001011110101001101001001100111111101100001100100000010000011100100110011110100110010110011101101110100011100000001101111001100101011000101110001101110001011111010100110010110100001110101100110111111110001101101000111111100001010010111011010110110000010010100111110010110110101010000000011110111100001011100101100101000001100000011110000010000000001000110101101111010001100100110000100101001011100110101111100100100000000001000001010110000011111000111010110001110000100111111000110111000101110110011111011011101111001011010000100001100111101011010011011101001001110101000010011011101011111000001001100011000110111100111000000000001100100011101100010110110100100011000011111001110110111110100010001100100010100111011100010011011001000111011110010001010001000001111011101011100110010011100100011010011011010000101110110111010101101101111111011011101110100001101000011100001011101011110010000110111111010011110010100111111011111101101111010010001010111010011001000110100101110111110010100010010001000101000110000101001100100001110000110111111110101001011101011101100011011110010110001011110110011000000001010110011110000001000010010011011000100101010101111110010000011011101011000111011010100110101011110111001101000110110101011001110001110000101010101010011010101101110100111000110010100101111010000101100100111111100011000100101000100100110111010010001101111110000010000111000001111000101000011101011101010010000111111001001001010001111001111000100101010101101111011110101111101101100101001111110000011111111001011110110100000100010010000011101101100101000100101111101010001010000110001000010111000010110101100110100111011111010111011010111100001010001110000011001100001110110010100101101001011100111010001001101101010111001000100101010111001011001000001001100001110110000111010001101110100010011000111000100100101001100100111100010100010100010111010111110011110010110000100111110010101111100000111000101111100000000100011011110011000000000010110100100110110010000010101010000011010100111011100001001111101110011010000101110010100010010111010110010101000001101001011101111001100010010100100110011101110001010111011001110100001010100101010001011--------- +1111000100101100011000100110011111101011000000000110111011000101011000000000101110001101110000110101110001110000001101010110001011100100000011011010001110011111001101000000011110000111000111001111111111111001100010110010011010100110110100010111011000111011101010000000011111101110010101001101100100101000000100000011111100100110110000011110010100010001111101101110101011110010010011111111100111111001000010101011011000001100101110101110101011100110001110101000101000100001101000011010110001110100011010111110011001001001110101100010000010001001010110011101000100001101111100111000011011100010110010000111011011010000101101110110101111001001111111101111101011000010000100100111010101010011011011001000000011010010111010110100110000011101010100110111000110100100101001000111011011100100001101010011100011100001001000001001100010101111001000100011001111111001010000110000010110100101101000010000001111010110010110111010011001011000010001100101000111010010101111111111100101010110111111110010101000110111001000011011100100001010110111011100001010101110010100010001110000010011101010100000000001010111101010001111001011100001001111010101010101111110000011000101010001111100011000001110001101011100101111110011111001111001110100110001001101100011001110110101011010110100110101110001000111010000010000101110101100010010011000011011110111001110111011100001111100010101001111011100101001000110011011000001101111001011111001110101100011010100010010111011011100010010010010100010001110010010010001010101010001000011100000110110100000111110111001001001100100110110110001000010011111010011010010010010001101000010101010011101110010000101011011111100000110100001110110101001110001000110000001110100001101100100110010110000111101010100101100100100101111110000001101101110011011111000001010001010101011010111010010011101101000101010010010000011101000101011100000001111010101110100110101011111001010001000111101111101011010011111111110111111110110010110011111010110001001000101110100000100100110000001110010011000000110000000101100001101111100011101011101011110100010000000110110100111101011100110101110010101010010011100101101111011100000100111010110001101100001111100010101011111000011001010010001010100000011101011001011111011010110111001111000000111010001001111110001011100111111011100110001011111110110000001100001110001101100010000101010010000011110000101110110101101000011001111100100001001111010110000011110100010101110001100010100101011111100100010011100111100011101011001100110100101001010111010001010100000000110000110100000111110100101011000011110110001111--------- +0101010101001001011110011011010111000011010111000101101101100010000010110011100001111001010001100011001000011001100010011011111101110111110010000001010000111111111010100010010001111000001010100101110000000000000001110010000100000010101110110100101001001011101111100101101111001011100000101111011111000000110111000000011000110001011011100001110111100111000100101101101000101000000011110011010000110101000011001100101011110110100001000001110100111000011000100010000010101011001011100111110010111000100011110111100111001111111001000000001100111001010010101110010110011111010111010100101001101111000011111001010000011100000111011001010101000001000000010000101100111110110110011000011111111100111110000110110100000110111001011100100100110100011100011110011101110101011111110000111110100101010110111010000011110001001010101101010111000001001100010001110001001100111000011110010010010110101010110111101001111010101100100111111101010111010111111111001001111011001010011110111001001100011111000110010010111011000011111001101001101101000111100001000010101000100000111001001101100100001011110000011010111100100100110100010000111111011111111011100000010110111100101010101101101001001111110100101000110110110011101100001100010111101010101111001101001110101010011010001100111111111011101111000111100001101100001010010100010010111111010000110111110101010111110101100101100110011011001001101101101100001101111110101000011110110000100000110000001011100110011101010111001001010110010000111111101111001100000001011111001010011110101101011000001011110000101101111101101011100001111010000111100101101000000110100000000100000011011111110011010001111100001111111110010011010110011101010010011010100011001110101101100000000000011000010111000101101011011010110110010000001011010110111000111100011000000010011111110011010101111011011011000001111011111101001001000111010010001010111011100110101101010110101000001001111000110100101111000010110011010110011000001011010101110000000101110010010001110000011111111010001111001010101001110010011110110000110111010011110000000101100101001001010011101111100110010111000010010011110011101010101110110100000100000100011011110011100000101000000011001100011001001000100001101100011000011000001000001110010110011101111111110010101101101000010111101001101011000000101111111010110010010101110111101111011000101110011001000111010000101100110110111010101101001010010001110100001111011011110000111111010110011100101001010000100010000101010011010100011001000000101101010000010011100100111111110001010001111011100111011001111111010101111000110100101--------- +0111100011001111001011111011101001100010011100110111011001010100111000101110001101101110111110101011101100011001101101010100001010011000100001101110101110101111011101010010010111101110111100011101101111100000010110100111110011111110100110111010111010101111100010011100100110000110111000111111101111110111001010100000000001001110001011011110010110011101111000111110101101000111111111100011100010100010010000000111101010001111000001011001000110010011011001111100010010000001001111100011000100110111000001110100001010110100110100011111010010110011010101001011010001010010111011010101010111110000000010101101110100101110001100001011100110110100010001101111111000010010010010011101001001100011011011001000011010101010110011000010100100100111001101010101011010001001011101001100111111111011011101010100000000110111101001100111010001001010110001011100110001100101100001110111110001101101101110011010001011011111011001010000011111011011010111100000000010000011000011111101010100111011111000010100001000010101111011010000101001000000001001011011100011110101011100000011100010110010010010010001000000001000101000000111011100000010111000110100000111000000000001111111000111011011110100000100001111001001001111100101110110011110000111100101111011100001001110000101101000110111101000101001000110010010011110101101011011101001011001111010010000000001111010111111111000100000011011111110000000110011010110011011000000101001101011000000100111111000000101100010100011101101110001011101100111111110111010111001010001111101100111110111100010011100100000000010010110011111111100001110011100100110010110111000010000101111100111010011101000111111111110000011001110001111111000101100001110110000010111101110100000100001101100101110010000100001011011111010000000111101100010101011111101111001110100111111110001011011011110110010111110001001000110011000111001011101001101010111010110011111101011111111011101000111010010001100100000011001111111000101010100111110110010110100111001000100010001100110110111100110000100001100010000001010110010100000111000000110100001010000100010110010111101000110011101111001010001110101101011111110001100001110110101101111111010110110001011000111011101100111111110101100100001110111001010010001111110110101111100110001001111100000100000001110110100011000011010010100011100010010111001000111010101001111100000111011100100001011011101100011100010100111111111011011111000010000110111000011100110110101000011010110000010000000100011110010011010101010010000101000001101111110011010111010100001011101100111100010111101010001100111010000011110100111111--------- +1011100110001011100100000010101010011100010101110000101010101010000100000100010010101101111011000000010001111001000111000010100001100010111011100010000100011000011111111110001011010111000000100010100101110000100000100101010101100000000101010001011010111101100100001001011011110101010100111101010001011001101111101110110101000011010111111110100000000100110110011011111111000111110110001000101101010001101111010001000000111011100111101011010101011100100011011111011010011101100011101111000100110010100000111101001111000001010110111100001101000010001000000100110010001001100110100000101100000011010100101011000110000000101011000000001110001001100000101101000111111111111110101111101111111100100101110100000010011000111001001010101110111101110010110010101111010001011010101001101011001001000011011011100101000101101111001101001011110010010100000011011100010011000110100101010111110100010101010000111101011011101010010010011001011110000011100101101100100110011111011001010101101010011011001010001101001001111001001100001111111110001100010010011000001010111010111000011011001010001000010000000000001000100000101001011001111111110111001100110011111010011100100000000101110100001100100011000010101010100100110011010101011010101000010000110001110111011000100011110010111111010000000001111100011111100001011110001101111100101111101100101001010011010000000010011101001100010101000101010011001010001100000100001001100110000010100001011001101101111001101011011101010011110110110011001110110001010011011000010000001010000110001110111100000101110000011101100101010011010011101101001001011101100111011010101010101110111011101110100111000111001001000011100110101010111010100101000011010110101100101100111110110000111100111101011001011100100000111001111001010011110001010011101001101110101000110001011001101111100100101101101001100010111001010100100111010110110011000111010010011001100001000001001110000011011100001100011110111011000110111010101111010111010001011011100101101010000100010000101001100110111101101101110000101110100100011100111101000111000001100111010001011100011011110100010110010001110010001011111000101101000011001111111000000011011100010001000011011000000001001111100110100010000000111001011110110110011010001100111110001111111011110110001010110100011001010100111101101111010010010000111010000111010011011110110110111010111111100011010001111101011001111100001111101000011100100111100000010100000010001100011010011000010011010000111011011111011110100100101101011110100101100010001100111000101101111011011001101101110010000000011001001011111101011111001--------- +1001100100011101100010000000001001000000101011100101010011011101010111001011001001100101101010001101010100111000100101100111010010001101101001011001001100111010000000000101010110101001001011001001101000110110001000000000010111001010101010100101111001110101111010000101101100100000000010100000111101001110011000100111010001110110000011010110001001001111000100111011101001111110011011111100001001000010010100100110010111001111000111010011110101101110000001001000100001001100000111111100111101011111101100101110000110011000001000001100111011011110010010000100010111011011111010110011110110110111110110111001100101110100010101011001011010001000111111000001010000100010011110101010101000011110100011010110011101011100101100101111001010100101101000010110100110100000010001100011101111001110101000010100011001011100001000100111111010000010000010101100011001111110100000011111111110100100011000110101111011110010010001111110100101100010101110100001001010100111100011011000101000000000100101101010000000101101100010011001010000000011111000001011011011011101011110100001011110000100011110001000010000011101111111000101001110110101110100001101110111010011110011101111001000000111010111001000011100101011011010101011011010110111000101001111011101000101011000000110100000000111101110110111101100000101010101100110101100100100010110001111110110111111011101001010110001001001000010101001001111011111000001100101111111011011100010000011110110100000000110001010001011110000100010110001010110110001011010100000100100110011101111010101010111001010000001101011000010011101010101110101100111101110011101011110001110110001010101000010111111100111101101100011010101000011000000011001110010100110011011100000100111101100010111011101000011111111000010101100011111101110100011101010010101101010010101001110100111011001000110001100011110011100100011011000011001001101001110010011010110000101011100000001010000100000000100000110010111101001010010100110110101010010001110011111101001110101010010110110100000100011110011101111100011000110011011111001000111010101010110011000100001001110100001011001001101100010110001111001111110010011110010100111000110000011000000100000101111100000110011101110000000110010010111011101001110100000110110001011001111011110010100011010100101101000111000111011010010111110011110101100100001111010111010111011000100100001011001111010000111110101010110011111110100111101010111100000111110101101111111001010111000001100000000111110110001101101001111011011000110001100011000000101101100101010001000100000101111110111111100101011101100000101001110100011110--------- +0100100101100000001010011011011111101101001011111111000000000000001000110010100011011001100111000010000110110110111011001110100000010000101111110011000010000100110110000111110000001100000010011111101101011100011110000001000011100100001011010000011101010000101001010110001001000010100000000100000100001111101111100100000110011011000000010010000111110000000000001000000000001101110100011000101110000110101111011001000000110001111011010101001010000100111100000111100101000001101000010101101101010110101000100010010011111111111101000111101001010000000000011010010111000101010100010001010100100001010001100110111100011001100100000011110101100010101010011011110100000000100001011111011110110111110101001110111011011001001111101111000000101100000001100001110000011010110111010110101110110110011000101011111110110101000111011100010001000010001101110011100000001100011101011101111001001110111010011101010101111111000111100101010000101001111101001100111100001101010010110110110001011100101101101000011011011110110101110101000010101011100100010110010010001101001001011010001011010001000010001001111011010000011110111100000001110000000010110100000111001011100101000111110100001110001000011001100111010000111010101011100000011110110101001100111000110001000100000010100100101101100101001101000010101011000001101010111101110101110111000001000100000011100110110010101000001000011000000011000110100000010101110100100101000011110100001010011111111011101011011000110000010110111000110101110101011100111100000011011111000000101110110001101010011110100110001010010111010111110011101011000010001001000110100001000101110011001011010000010110101100110100011000001001111100101110010010011111110101011010100000111001100011001100100011110100100111011101110101111101101011000000000001000001010111010110111110001001011111101110111110111111101100000110110100100111001001000010001110001011100100100100100110101100011011110010100010011010011000001010100101101101101001111101100000111101100100111001000000100000011101111101111100101010110000111001110001000101010001111100001110010100001000000010000000000101100111101001101111111000011001101001000011110001110100101101011010000001001111000111101010100101100001111011100011011101011111100101100110000000101110000100001001100110111000011100000101001001111010100101010111110111010110010111111111000011001101110111011011011101100010010001010111000010010010111011010011100011011110011001110001101101000111001000011100101110000110101101100111100001011110001010000010010101001011100001111111001101111000010110001101000110110011000000101010101--------- +0011111010111100011000011000111111100011100110100111111100100100111100011101010101101010011100100110011000001101001110100110010000001000101001111011001101001001110011010110110111110010010011011001011000101011111001111110100010101000101101001110010010111111001010011111101001010101001001100010110110001000111100101000100001110110001111100110000000010010011111100011010001010010100001101100000000001100101001110101011000101101101010110100100100001000100100000001011001001111100011111101100110110011000001100010010101111111001001111011000010001010100001001001011100000110100100111010101010110101010101000101010100110100100111100110100110000000001001011111011001101100101101100101010001010100010111011000000100111010000000001001101001011111110000010010001011100101101100011101001010011000110000001010000001010111101000111100100011010111111010001101101001001010001000000110011001111110110101010100010101110001010101101010010110100001011000100000100001010011100101101000111111010101111110110011001010100111001111101101101100000010100110010010001100011010011010100000110000010111011011011101010100100010110111010100111001101110101001100011101000101101100100011000000101001111110100011111100001011110000101100011001110100110001001100110110110101010010100101001111011100000101010100000111101100001110100100101111101010100011111010111001111001111101100011001001101110000000000100111011111010101011000110101100010010100011101100010000100101011101010001011100100101000101010001011010010110011110011100110101001010100100100101011011101001000100101000010011110001111011000111111010110000011100100100001001011001011100001010001110101000010011110010010111011000111100010110000001100100011000110000010001010100110011101001100011100101001110110101000011101001010110100000010100100100111001110111010000111100110011010100110111111011000001101100001010101011000011111011001001100001011111000111011001011110101101001110100010111010001101011111110001001111100000010101110100101010011111010010010110011011100011110101111111110111110000010011001101001111010010110000110111111111101010011111000001000001111010001111110110000111011011011100001101101010001111101011010011011000011001110010001010100101000111111100110111101101100011010110100100111110010111010000111100011100110110110011101010110101010000110000110100000000011100111001111001011011011110100000100100101011101011011011011001110011010101110000101001101011111000000001011010110100110011101001001110000010010011001100110010101011010100101110110101101011011100011011100000010100101001000011100000000001011101000000111101--------- +0111100110110100110111100101101011011101111100000000110000101101110010110010111100011100100110000110100111101100111111011001110001110100000001000010010000111110011011001101111010011011000010011000101110010001000011110001001110001010011110101000111010100100001101110011000100010010001000101000110000100101001000100101110011010000101010110011100010001000101010011111010011001100100010101011011010001001001000010010100000100101011000011100101100000011110011110010000111010001101100111001011001110011110110111011010000001111011011000100111100011110100110001101101101101110110000000100011110101001010111100010110010000011110001011110010000111011100101000010111100111001101000011101000011011110111011110100011100101011100011110001011100000111011110110001001110110101010011101010011011000100111001000110101010010011011111111111101010110110010111001011011111100110100001110111110000100000000101010001001110010001010100101011111111101111100111110111010000100101111100001010000100011011001111011010011100101110011111101001110100101000010100001011100001000000001011101001010010110110011001001001000011000001010011100001000100110110000001101001000000101101000001100011000110101101101111110111101000100011100001111110010000110010010000110011001110110001011001000101101011110001011010001100000001000001010001000111101101101111111001111000110010000111111111110000111101101111001100001110110101001101101010101100110101101001000110011000010011010101111111011101100100110100110111011001010000000001000100000010000111110101001011110100011010000010011101100111010010111110010110010111000111101000110101110110001100011011001111111001111111000010000010010110110100010111000100001010101101100100001011101011111111010000000111011110010001000000001101010101100101010000010111010100010010111010100011001110101110100101011010010111010010101001011111001011100101000001011101111100101001111011101101001110000111000011000010000100010110110100001010011011100110100110000000010101000011001011111110101111001000010110000010110001001101011101000101111100110100011100010100100110110010111100001110001100011101101101100111111111001001000010110010101110110010101001100100011100101001110110100110101010010111000001001001000110111111111000101011100000100010100001011000111011110110011101000011100001110100011100100110001111001101101101000011100010101010010111100100101011010100000001110000110001000101011111100011110000001110011111111101011100011100011110000101101000111011000010001110000011001101000010101001001110100110100110001100011111001110111110110101010101000100110111101011100111001--------- +ls256cwds +10010100000101010010110100111000011101010001000100100111111101101111100000000010110010000111111110101010011011111101010001111111101101111010011100010000110010001111011101110111111111101110101100101000111111010000110100100001010111111111110100001111010000000001011010000001000011000100010010010100010011101111110001001010000000011100110111101101011100011111111001011110100111001101010001001010001101110100101100100011011000111001011110011011000010101101101000001010101111101010000011100100011101100010010111001101111100101010010100001001100101110110011010010100111010100101111100000101010001110100010001000001010101110011001100001101001100111100010101011101101011000000001101000011000111111011111110110001111000111010011001110111010101001111011011000101010001011011110101010000011110101101010101111001010010101000000110000011100111000011010100001110100011001010100111011000010100100011010101101111110001010101011111000010110111001101001111111011000110010110110010010011011000100000111011011000011011011010111000001101101010110101011111111010000100111101101011001111110111010001110010011101011111111001110101011010100110010111111110011110111101110110100000011100001011111000001001011110010111011100011100100100111111001001101110111110100111100000001111000111010100011111001001101100111100111111001010001100010000010001010011101111001100111111100111011011100110000111101011011110011100101001000001001100110100110101110000011011011000010110111101100010100101010111110011110101110110011011110110111111001100100011111011010000110010101010111010010000110100011001111101011000011011110101111101110100001001000110100101101011110110001101100001001011100100101110001110111001011100101100011001000000101010001110011100101110110111000100010110101110101101101110100001100100000101001011111000011000110101011001110001011010001011010100000011010110110101001000010110101100000001100111000011111000110101100010001001110110111100110010101101011101000010100100011011011111001110001101111011111101101010100100110110010101111011000011001011100000100010001011110---------100100101100011001001110110110010010101110101001011000111111111100010010001000000010001100101000010110101111010100000010010001111111100100111100010011101000111010011010001011110110010010010110101101010111100000100111000010010110100001100101100010111000011101011100110101011011010010000110010111010110011100010011011011110110101100101011000110110011100011100000110111101000100100111100110000100010011010010010100001111001000111110101011111001010110001011100110100001110111001001100001001101100110001010000010010101010011000011000110100011111110011110101000110000001111011110100000011000011010000011011001011000111010001011110011101010010110000101011110000011000000000101011000000100000001110110000110101000011110110001110011011001110101101110100000011000011100101001101110110000010101011001101110011101111110111001010001110110101010101010011101111110010111101110001100001110111000001001011000101011110010100110010001100010001111111110101010000010010111000010001010000111000110110111101100000000001010011010011110011100111000000000111001100011110111011000010000100010001101001001001101001110000100001111110001011000110101100101100011111110101100010101001001011011010110011010001110100000100100100111101000110001011111010001111111111111000110000111000110001001101000010110111010010110101000110100000001011100011000011001000010001101111111101101010100001010101011010100011011011110101010100001010011011111111000000001111100110100111100011110010000101110000111110110001000010001100010000010100101111101010110001010100000101110110011100101010111100100000010100001010101110100111001000001001100101101111100101001111111111011001011001011101111010010110000001110110111010001100100010110110010111100111001011111000000001010010110100111101010100101001001010011111110100111000100111011110110111010011000001001100101000001110111010010111111100011100010000011000101010011110000100101100101110110111100100110001111100010010001011001101101011001101010010011010111001001011110111100011110110011110011010001111101110011001001111000110100101010001000100001010011010100001111010000100011100110011011000010001001011010111110001010010011011011111111010010000011101111000101001100011011100111000011011001101000111111111010010101001111011101001111101010111100000001011100111111000000111011111110111010011000101001001110011110000010110100011010100001110000100110101101001000001010110101011110011110100010111011100100110110010010001101110011010100110000000010001000000101010101010010011010101010001001100100110101101111000111000011010001001100011000101110111100010101011110100000101000000011111000011100100011001111101100000100000011111011110111101001100000011011000111011001010111001010001001100111000001110011110101101111001000101010011011110101100010000010011110011000101011010011100000111111100101110010111010101000011010111111111001101000111000001011001010101001110110100110001111110010111010011100001100011001111111010010110100100110111000000000011011010001111111011100010100010000001011000101101000001101010001011111100011000100000011101001010000100011100011001011100100110100010100011000001101011001110100110001101101110010001111110111100010100110001000111100101101000111000100100101111000110001111010101000110111000000100101101010011011010100000001111111010101101000100111110101100111100111100111011111011000110000110001011110100000111010110000001000110010011000010000100010100100001011101100000010100101000010111100011111100000101011010111000011111011000111000110101011001111111001010100000001000111111101100011001010001111101110100110001010001111100001000100010001001110000010000100010100000010110011011000011010001100000011110100101001001110100100011110001011011111010100100101111010011011101110000111011100001101011000100010001101101001100010111100111101100101000000111100000000000010010100100010100110011011001100011110010101010101110001101010101111010110000111010101100001111111010010011110110101101011001110111101010111110110111110101111110010101000101001010011001111010010010111101101101001110001111101111101000010111100010011000001000010111111011000010011010000010101010001101100101001010000010001001001011100001011001100011001000110010010011101010000111010011000010011010010011100011011010000001011101111010011011110110001001010111010110101000110110101010110011011011011100111010101010110010000010100000010010101110110011011100011000110111001001100010111111110000111110101110000101101011110100110011010100001011100111010010010101111001011111001100011110001000001010010010110101110011011110111110110101001101110011100100110000000100100001010110110000010101011001111111100101110000010100010101101000000011011110000111101010101100101001101000000101010001100010111111001100010010011101100001000110100000111001110110011100111101000001000110011011101100100100110001111100010100010010101100110001110000111001011111000101010001000000111110101010000001110101000000101101100000110100010010111111100110010001101110000000001111001010011110000101010001001000110010111111011001101001101010100100000100110001101110011001011100011001000110111101010000010110011110010000010001001010010000010110111111011010110100110011001000101001011100001001011100000110110100011101100100110010000010010000000111010000011110111110001001001100000011001000000101001111011101001111010101110110010111100110101000010001010010010101100110000110010011001011010101110000010000110111001001011000111000101000011111001110101100001101011001111000000110011110010110101101110111101011111111000101010100000010010101110111110110000011000100110010110110001110000111000011110100000000001010110010001001100011011110101000011011000011101100101110001110111110001100111101001000101001101001001001101101110111111110110101100000000011100000101110010011000110010001101111111100101100101101100100111100011010101110000010001000001010110000010110011010100110001101100010001010111010011010111010111000111111111001010010110101010001000000001010010001011001001000101000101001010001010010000100111011011101001011101111110000011000010010000111000010101000110111000100110010010110001010001110011011110001011111110011000100100100000011010011101100010100000110001011011101110010011111101100001001001101110001010111011110010110000001011001000000101111000111010010001111010010100011101010000100100110011010101110101001111100001000011111011101000010001010000100000110011000100001101001010101010111010000110001010011000010101111000000010100100011111000111100111001001111010000111000011010010000011100101001111000010010000000010011110111111000000011100111101011100100000001001110101100101110011110001110010011000001110101010111001111100101111011011101111000010101001000010110001000011111010011100000001101101001000010001100111111001001101110101110000010111011011010010000100011001000011101110110000010000110111101011011101010010111000011010111101000000001010010010101101110101101101100000001101001110010110010000001111111101010010011011110000000000100010011000111011001001101110100101010101101001111000000001110010011010010011000110101011010110100111101111010011010000001110100010010110000000010011111011010000111111011101010111111101100001010100111111100010001001111100111101100011000110010111101101111111111110001101100001111101001101010010010100100010001101010100010000100011000011111100010100001001111101110000111000010101000100100111100010000100000000001110101100001110010110111110010001111000001010010100111000110100011111110110111100000100111100100010000000111100111010101000101001001000111110011001100001110101010001000010110100110101100011001100011001000101011100001101100001000010100001011000100100110111110010001111100101000011011001000100011111010000101000110001110110010110001011010001101111110101110101000011000010001000001110100011111000011010101011001001011010111001010111010010000111001000001010101100100100100001101000100100110000001111111110011010110101111010010001000001011111000000101100000111011011011010110101010110101110110100000101111001000100100000110011011010111110100011110101011000011101000000001100101010001110011101010101111010111010010011001100001011111011101011100110010010000101110101110110010010110011100110110001000101111000110011111100011000010110100010000001100000010000001110100101100001010111101111101001110000101100001000111000101100000011000101110010101100001001100111110100100101100100010010100011111000110101011101001010100110110100110101000100101101111110110000010011110101110100100111111000000101111100010001000101110011111000110010001001010000001000011001101111101010110101110110111011111110111101011111111010001001101111011010010110101001100110000101001110000111000000001101011110000011110000101110010110011111010011110110011110100111101001100001010111000011010011001011001110100100000110011111111011001001010011001110011000110100100111011100111000010101011010001100111100100111101101000100011000100110101001111100001000110101001011101110100010100111110000010101011101000101111101010111111000010111010100100001011100101111100010001010101110000000000110111110000101101111111101001100000011110001101111000101000100110010101011010010011000110000011010110100110011100001001110110000101111101101110100010101111110010101001010010011110100001010100101110100001100010011110011000000100000000100111111010111110100100101101101001100010011001111000100100101000110100010111111111100111010110000010111111001111101100100100111000100101010011010101011100010000001011000111000000010110100011011110101101111011000010111011101011101001010111011110000010100101001110001100011101010101100001011011010111101100100011011110110011000100101110011000110011001011001101000011011111110100101010000000100101010111001000101111100011000000111111010001010001111111101001011010100101001101000011111001010101100000001111011110001111001100000100101100001100000001001111110101100101011000001000000000110110100000100111000000011100100100001011000010010001111100010111000000101101111100010100110010100010100000000110000100101111010101001111010001010000100100011111111001011110100000100110101101000101000010010101011100110110101001000100111101110110101010011100000111000001010010010000100111110110011011001000101010010101010110010101010111001101000010011101011011010000110101011111010001010110001100001011010100100000110100011101100010110000101011000101000010011100001010001101001001110001101101111011110110000110000000111010010101110111011110110000101111011001011001000100010000101100110101001100010001001101010001010111111011001000011010000001100100011101110001010001100001010111010110000010000100011001001111110110000111101101010011011001010110010110000111100110100100000101010010010011001011100100111001000101101100001100111101100011110111011101010011010001011011110000101100011011001101000111000001001100100101000110100011100010100001011011010111101101001001101000110001000110001011100101011001101000010000110011101100 +11100000001101111001100101011000101110001101110001011111010100110010110100001110101100110111111110001101101000111111100001010010111011010110110000010010100111110010110110101010000000011110111100001011100101100101000001100000011110000010000000001000110101101111010001100100110000100101001011100110101111100100100000000001000001010110000011111000111010110001110000100111111000110111000101110110011111011011101111001011010000100001100111101011010011011101001001110101000010011011101011111000001001100011000110111100111000000000001100100011101100010110110100100011000011111001110110111110100010001100100010100111011100010011011001000111011110010001010001000001111011101011100110010011100100011010011011010000101110110111010101101101111111011011101110100001101000011100001011101011110010000110111111010011110010100111111011111101101111010010001010111010011001000110100101110111110010100010010001000101000110000101001100100001110000110111111110101001011101011101100011011110010110001011110110011000000001010110011110000001000010010011011000100101010101111110010000011011101011000111011010100110101011110111001101000110110101011001110001110000101010101010011010101101110100111000110010100101111010000101100100111111100011000100101000100100110111010010001101111110000010000111000001111000101000011101011101010010000111111001001001010001111001111000100101010101101111011110101111101101100101001111110000011111111001011110110100000100010010000011101101100101000100101111101010001010000110001000010111000010110101100110100111011111010111011010111100001010001110000011001100001110110010100101101001011100111010001001101101010111001000100101010111001011001000001001100001110110000111010001101110100010011000111000100100101001100100111100010100010100010111010111110011110010110000100111110010101111100000111000101111100000000100011011110011000000000010110100100110110010000010101010000011010100111011100001001111101110011010000101110010100010010111010110010101000001101001011101111001100010010100100110011101110001010111011001110100001010100101010001011---------000010000010111101110111010001111101011001101000010100011010001001011000111100010011100111101111010110111000001100100010001110010011111110100001011111101000100010000111110011101111000100010000100101011010101000111000101111010110011000110011010011001010101110011010001010010101010101011101100101010010111110000100001010000110001110000100101111001010101111010001101010110111111100011100000011011011011100001111000111011010100010001011010001011010111100100101000001011010011011001101000010101110000011111010100111011110001011100010001001000110001110001010010111101101000010010110010100011110000000010100100100011010001111010100101010111101100100110010001111000000000101010001100110110010001001000100101001001111010001101111101110110110010010000111001001000100110001000010110110100111010011010111001111101011100001000011111010010101101111001010010110001110100101100101010100110100111001011110000101001110001011010001010101101110011101101010111001000100100001010101111000110100111000101011101101110011100011001100100001110101010001111010000010010111011110000001000100001001110001001000110000101010101010100101011011010101000110110100010101010110111001110111000110110101001110100001110111010001100011001100111110010011010111011000110100011001010001100000011011100101110010101101011001100010101101101011010101001101001000110110000011100001011111111011111000000101100111111011000000001001111110010011011011101110001111000110111111010110110111011101010100001111010111010000110110001001010100010100101011111011010010111001100010101000010101000010010111101001001100001111010001111100010101010111110111110010000110010001100100101110110010111011011110100110010100101110111110110111110110110101011000001100001001001101111111101011010001101000101110010000101011101010111110011001010101001000011100000001010010010000011111010110010111001100000101010010110101000011100100100100110110011110101001010010111000011000100100010011110110100111101111010100011011000001101000000111000001100000001110000010100111110111001010001101110101010110010101001011110001000011101110011100111111000000100001101000010100000001001001000100011111111000110111100010010110100110010101011110001111011111100000000001001010110001001001100110000101110101101111111010001110110010111111100110001010100101010011000101111110100010010010111101011010001000100010101010100110100100100101000110001111111101110101000111101000000111011101110111111000010101000011101100101110000010001010100100100001011111100111000010110011010001111000110000100000111111010001000111111110100000010100111000100001001111101110010101001010010101001100011101111000000100010011111011111110110110000101000111000000001001110101100011001011011001111000000100000000001111011001111001001001101000010111100101010101000011011000001100100010110110100110111001110100110000011111100000001011010010000011110101111110101001101010011111000000101000110111001101011011111011000100111111111011001000110010111101001011110101100001101101011101011110101001111100110101111010000000100101011111011110111001000001101000001011010101000010000110111001001101111100110011011010000010010011110011010100000111101010000101100001101101100001001110100000001101000111011100011011100011111100100000011000100010001100001000011011000111100101110001000100100010011000000101101010001001100011000011101101001111001110111111000010111011001110000010010011001100011001100110011011011000100100010011010000111010010000101000111100100011001101110111000110001000111001101010111100101101000110001000110011110011000110001000001100001111010011111001000000101000111101000011010000111111001100100010010010101000111111101101100001100001010000001000000110000011101100011010010100100110101110101111010010101001001101000110001101101111010100101000111011011010001110001101100101101010110000101101000101111101010000011001010100100001100101101011101010110110001110000010010011000011010110011100010110100101011101100001100001000111011111111011100100011101100111001001111110001111000011110110100011111100110010001110000110010111101110001100000000011000000001110001110010100110011101110111100101001111111100011110000001101100110011001101100001111010100111000000100110100101010010100111011110011111001010001101010001111001000010010110111100111111100010101101111010001011001010001001011100100000101011110010010000101001101010111110100100101010100010010100000010101100010000000011001000000011001100100111010100100001101100101111111110110100001001110010010101011111111000110010011011101010110100111010000111000100001100100010111101111110010110000000011001000001001001110011000100110111000010110011101001000010110001000110010101111010001010100111000101100110101011100010000111101011001011111101000000100111011000101011100101101000100010101011011001110100100101110011110001111111100100111000110010111000101001001001011000001111000011111111100010111001011000000000010100111101101011001110010101010111111000100011111111011100000100101010101111011011001110110011100101011010000011001001000000011010100010011010010010101101111111100011101001111111001010101100001101000100011001011100110010100111100111100101101001111101001101110110010000101110110110001011101000011111100111101101000011100000101000111001000010110000110111110011100001000001011001010010111110111010101001100010111000110110011100011010101000111101000111111001001010010100100010111111000110011100011000000011100101011111011111010100000001100010000111110100100000011110001000000001011000100010001101101000001001000111000101100011101100100111100001110100001011011010101101101011111101110010001110101100100100011101010110011010101000011101101010100010011011101001101011100111100101000110010000000011000011001010100001000111101100111000101100010000000101111100110001000001101010101100110010000000111110000010110111001101000000001111001000010111000010010010110000110000101111110011110000000101001100001100010100111010011010011100101111111101010111010100001110111100101000100011110000001111011010100110110101101111111001000001100110000001010011001101011110000111111100010110110000011111001000001111001000001110011111001010010100100010101110110001110111101011111010101111010110001101001100001011000010101100110000011011010110111011100100100000101011100110010011010001001101111001110011000001001001000100010101101010001101000010001110110110110000101100000001110010101101001001010100100010001110001000111011101111101011000101101010100110010111110001010100101001100001110001001110110000010110100000111001010111110100000110110101010110101110101000010001100110110010000010010111001000001000110010011110000000111010100111100100111010110011110000111100111110010111010100011001101000110110001011100111110111011001111000011110110111100110110111001100001100001111101110101111001110001001110001110001001000001111000001101000110000000111011000111111000010011100110101111011010001001100011010010101100011011000101011011111101110011011011101111011111001100011011000001111000000110001100001110100100001010011110110000000001000100000110110001000101101011100101000110000100110111010111010011010010011011111010110100101010001011010011000100000100000011000000100101101100001000111110001011001010001000111110000001011100101000100000111011010100101011011100100001011100001110100101101110001100111111001010000010001101011001111101111101101110101000011111110001101110011100101001100001001000110101111101010011101010001100110111100101000100110100110010110010100100111000010001100101110001110011111110100010011001010100101110000011110001000011111000001000010100110001100100110001101110011111000110010100101101111001101010100010001100100010110010110001100101101110010011100011000011100000000011001000101010001001010000111110101001001011110010000110001000110011011010101011011101110100000011111111000111001100001010101010101110011001001100000101010110101000111010101100100011110011110101111100011011011000111000000111100100000000011111000101101111101111111010001110100001110101011111011101001011111100101110111011110011000111111011000101100010110011011111111000100100101100101110110101000101100111101010110001100000100010000011110001110011000100000001010110110111011101101101110001111100111000111100100001110100100101100110010100001001101011100001101000110101111111001101000000000111010011100101001010010010001010101001011110000110011101101010101011011001110001110011001101101001111010111000001000001000100100100000101010011010110101111111011110100001000010000000110111101011100101001010110111000000101101100001000101100110010110000101000110110011101100110101101101000000111011000101111011001000100100010100101000110000011010010010101100110000111011100111000111010000101101011101011010110010010110011111101110110001001001110001111011101111011110000111111010101111010001010001001001101000010110101101110111110111011011010100100010100100110001101011101111001010000001000010110010110001000010110000111000000100000100101010001010010111111111000100000000110000011111111010100110001101101110001000011110000111001110110100010010111001101011101010101011010010111000001011000011100011100001010100110001000101011110101111011111100110001111110111011000110001101010001010100100011001111111010100000110111001010000011011111100011100100110000001110000001111011100001111011001001101001100111101100111011101011111111000111010000010011000101000111001111111010001000011010111011010100011100101011110010100100100110011111011001101001110100010111000011010000000101010100010010010101000001101101010011011111101111110000000001100110100111001110110001000000010111111011011100000100000000000110000001011001011010100110011000100001001110100001000001011100101011000011011100101011111110010100101111001001001100111010111000101010101011001110100100111001011000000000111000111001010110010000011000001001111000000011110110100101111101000010100111100011101101110000111001011011100110110000011000100111111100010010010011110101001011000110001011100101100001110101001111111100001110100111011110011110100100001010001111011000011111101001011111010011011111010110111001001010011110001111010100001000110101110111001000001011011000110010100101001010000110010010100101011010010110011101111111001000011101110101110000010011001011010101111100010001001010100100110010110111111010110001101000100100101111000110011111001010010001011101011000110101001000110110111011101001001000100011111010010001111010101001111101000110100011001011010010010001101010011101110010111001100111001100011001101110010110101001001101000100111011000001111000111010000111001110001101011110011000100101110111000110100100011100101011111001100011011000111010010111111111111001010100010011111000000100010010111001011101000111101101001011100100011101110000010000000001111011001111111111100011011100100010110110001100000111110000001011101011011000100100111010010100000101100010011010000100100001111010011100111001101010010111110110111110011000100110 +01001001110101100010000010001001010110011101000100001101111100111000011011100010110010000111011011010000101101110110101111001001111111101111101011000010000100100111010101010011011011001000000011010010111010110100110000011101010100110111000110100100101001000111011011100100001101010011100011100001001000001001100010101111001000100011001111111001010000110000010110100101101000010000001111010110010110111010011001011000010001100101000111010010101111111111100101010110111111110010101000110111001000011011100100001010110111011100001010101110010100010001110000010011101010100000000001010111101010001111001011100001001111010101010101111110000011000101010001111100011000001110001101011100101111110011111001111001110100110001001101100011001110110101011010110100110101110001000111010000010000101110101100010010011000011011110111001110111011100001111100010101001111011100101001000110011011000001101111001011111001110101100011010100010010111011011100010010010010100010001110010010010001010101010001000011100000110110100000111110111001001001100100110110110001000010011111010011010010010010001101000010101010011101110010000101011011111100000110100001110110101001110001000110000001110100001101100100110010110000111101010100101100100100101111110000001101101110011011111000001010001010101011010111010010011101101000101010010010000011101000101011100000001111010101110100110101011111001010001000111101111101011010011111111110111111110110010110011111010110001001000101110100000100100110000001110010011000000110000000101100001101111100011101011101011110100010000000110110100111101011100110101110010101010010011100101101111011100000100111010110001101100001111100010101011111000011001010010001010100000011101011001011111011010110111001111000000111010001001111110001011100111111011100110001011111110110000001100001110001101100010000101010010000011110000101110110101101000011001111100100001001111010110000011110100010101110001100010100101011111100100010011100111100011101011001100110100101001010111010001010100000000110000110100000111110100101011000011110110001111---------100011110001000111010101110110111110110111110010101110000010111011110010001001110001001110011011101011010010100001000111111100100110000010010101010101000001111101110010001101100001010110011110010101010010101100001000011101111010011100001100010110010110111101010000011011000101111110101010101000011110100100111000111100110011000111100011111011110100000111000110100000011000110000111011110010011010110110010101000101110100110010011001000100100110110101010101000011111110011110010001011101101110100111000100100011111000000000111011000101011011100111011101001101111000001001010111111010010000001100101001000101001000011100001010011100110000001100011010011011000001001111010000011100011011010001101111001001100100101100011100011011101011010010001110100100010100011011101110011001001010100111101001011111000010110110101110010101001010001111000111100010010100111010000000101110010110110110000001000001100110100011101101110111011011000001110111100101001011111101100100111011111000000000000111110111011110000011011010011001010101100010100001011110110100001000110101111000000101100100101010100101001111001000100011010010001100000101010000011111111101111011010000101101011010010101110010010110111000100100000110110110100110101100110000101110111101101110000111010100011110101101111011001011000001001110100000000010111001111100101010010100011010000001110101001101111101111111011101010101001101001000111010011010111001000001011000011011000000110111111100100001110110011111001111111110011111100100000000001001000110010000100000011011001000110000111101000101000100011010010101011110001111000111001010011100010110011000000010000101111010111011101010110001110100101011011100100100100110000101110110111000110110011000000010111110111001000011011000001000010101110111111000010001111000010111100110010000011011010010100101011111011111101000101011100110001011111111100101101011001011011001010010110101111111110100110001010000101011110100111111101100101101001010110000110000011000111000100101110001100001010100011110101110100011001000100001000001010011000011010011001000101011000100001100110010100011001000010001011111000001001100100100101011000000011110000110111101111001001111100110001100010000001010110001000110000010000011111111001010101011010001010111100010111011100000100001000110101000000100000011111100110110110101100100011100010001101001000001100000001011001110011010001110010011100101000101101001000010101010010111100111011011001010001100010001110011001101110010001101111111100110010110110011001111000011000011000100100111100011111011100110100101111001011100100110111100101111001001001011110101110111110011001111110010111101011010100111000000100011011011101000000110000011111111101000110111111000110010111010000101111100000010010010111001110111011101001000111101100100000110111101000110101101111011010011101001111011111010010110000001100000101111010100110110011101011001011010111010100101100001010001100001011110110111000110000010110111001010010011101001100010100001111001000110100001001111110011001111001010010000000010001000110111000011111010010000110100000111001111110111101000110110010101000000101110110001110111110110011001100101100101100111011111101110011100110000100001010000000110101100011010011100100010001010010010000101111110001000010010001000001111010001000000100000111000011011000000111011100010011110000100010110010111101101011011100011000101001110111001101010110111110100101100101100110100011001100111101001100100111100001001000010100101001010111010111110111111101111001001100001000000011110100001111100101000101010011010011011100100101001000010111100110010101000010000010111100111110100110110110001111111001110011101011010011101000100100110000011000110111011011111111101110010011110010111100000101100001010100111110111100101110100100001111111101111010011011010111001111001001011011111100110111011010010100010101010111111101100001011000011100011101100101011110111111100010111101111001011001111011000110001110010111101001101101011000010111010000111001001101010101110001000110011001000010101101110111001010111100000011101010110101101001100001100111100101010000010111111010010011010010000001110010011010111001111101100000110111010101100100000101000110010110011100111010100111000000101010001110110100010110111111101100000010010010001001111000000010000001111010011010111110010001100000110110011010111001101011000011110000001100100001110111001001100010111011100110110011000011110010111001101011110011011000110000111001010101000110100110101101011111011111010101001111101100010111111110011101010010110110100001100011001010101010000111010100111000111010000110010100100000010011000001010101111010010110100001100010100010001100111100000011111101011111001010110010011101100100010001001100101100001001110000000101010111011101010110100100010100101111011010010110010001100001110111100101010000001001100110000111101001111001111110001010010100010100100101011100010001000101101010100111000010010011111110010001011010111011100111001110010011111010100000110011011010011101100011100011101010110111000011000100101011001011101011111101101001100101000010011000001011011100001110011001101001011100110110111011001111000100011111011101001100100111010110110100101100111111111011001100010011001101011110011000101000000010111011101101001111010000110000000010100001000000010010101011000000011111110101001011101101101110001011101110110010011001000111100111000111010011001000100100001010010000101011000110110111101011101100101101000010011100000101101010100110111010001011000101000000010100110110011101100001010010101001001101111000011000100010100110001010111101110010000000100010001010110111110110010010001101110000110111110111000011001001010010100011100101110010110101000011011000111111011000010110000100101101001001110011100011100100100110111011001010000011011110011000110011100111100000100000101001100111100011010100111010101011111000110100100001111111110100111110001011010101011111101001000100100101000001110100100010011000110000100111001111001000011111001110111010101101010100000100101101101000011000110110011100110000111001010100011110110011111100100011000001110010010100111011001100101111111010011001100111000111101001110011100111110000011111111000100010010011101010010110000101011011001011101100111110011100011110000101101001011110101111000010000110110111011001110010000111101101000011110010000100111100001111010100111011111011001010010101111011101110100101011100010100011100111110101110111000011101111010101011110011010011011010110011001100100011100011101001010111110001001110011001110101000100000110000011011111011100001001101101111001111001010000100111000010001100010001010110000001010000100101011011010100010111111100100000111101011000001110011010000011110110100111111001011100111110110011100110110110000011011011110110111101000000110000111000001110110000111000100000001100111001010010011000000001000001111100111001010110101010101110111110000111001001001000011101011110101101100111110000110010100011011011110010011101001111100001110100111100000011111100000010000010101100101001011001111010111101101111000111100011101011100001001000110111111100111111001100001100001111001001010001110111010010110100110110100111111001010111101010011100110101111110110010010111001111101010101001110000101000001100001001011001001010111011011101100011001100101111001010111111011101000101100000110100100001100000011010111100111011101000100111111101001000010110010001000110100010000111100110111110111011111010100000111110001101110101111011100010101001101111111011011101001100001011110100101101010000110111110011011110000111100000000001001001101100000100110001000000001000011001100010101100011100010111011101101110010001111111001100000010100001011001001110101011001100111110001110101100011010011000101001100111110111001010100111111000111011011000011100110111100110001010100010010001001011101101101111100111010001011101011100110111110001111101001100101100111110000000010101010101100101100101100000010110101011110101111001100100100101011101010111110101000101011010111101000111101001101100010100110101110110100011111101111110111011001110001011101010110010010111001000001011110101101011010010111011000010010111101000000000111010000100001110000001111000010010000001011011010110101111111010000001111001100100000110001100010000010001101011010110110100100011010111011001101001000011101010110001010010101000100110111101111100010000101111110111011010010001100101001001100011010111100110010010011110011101000100110111111001010101101000010010101110100000001011100100010010010011001001011110100100101000010110100000110001111000101010000110100001110000000000111000110111101001010101000101110100011000000100100100010010000110011101011100111110111100101100101001100011001111010111011110000110000100110101000111110100110001010011110111000101001010010110101111000001111100100100011000000101101001110001000000001000001011010010001011011010111100011000100000110000011011011110010110011000111101001101111001110010101111100011001010101001111111011011110101110000011010100100001110001000011110111101010110111010010010111110010100101101101110010100110100111010111010101100100001101100110111111000101110011111011110011011110011001001010000001101101110101010001110100101110001100010000011001101111010111100001001001000100110000110101011000110001001101100110111011101011011101111000111000001001110110110111001110100001111100011111100101110101000100100101110110000101001110110111000101000010001111010001010011001001101011001000010101111100001000011101101001111011000000011010011110010001110110101001000110101010101001100100101000010101011110001101100101000000111010100010010100110011100000111101001110101011010011000110011111111110001111001111011011101000110110110001101000011000110111111110010101000101011100001011100111011011100000011110111011110011010000011001101100011100011001110100101110101011010110101010001110110000111111101011110010001010110100110111010110110001100111010100100110111110110100101111010000111010000000011001101001000011001011111100101000010100110001110000001111000111100010110101000000101110100110111011001001111000110010011000111010110010110101101111101101010100011000110100110100010111000010001111111100000101011111100010010100000011011111010101100010110110110110010001101111100110011101001010100010100101101010111110101100100100000011010011011011100111111010001010101001001000011101001001110111001000100001000000111101101010111001100100001010010010000100100010101101101100111110000010111101111110110100001100000101111111101101110111010110110000110110101110110101101111101010110011111111100000100001101000111100010001100000100110111110101101001001000000000111101000101001001101010100111110111001000111000100110110011111100011011101011110010101111000010010110101001111010010111110010110001011111011000010101100111110001011010011010001101001001100000110111101101010101001110101000011101100110010001100 +11001111111001000000001100111001010010101110010110011111010111010100101001101111000011111001010000011100000111011001010101000001000000010000101100111110110110011000011111111100111110000110110100000110111001011100100100110100011100011110011101110101011111110000111110100101010110111010000011110001001010101101010111000001001100010001110001001100111000011110010010010110101010110111101001111010101100100111111101010111010111111111001001111011001010011110111001001100011111000110010010111011000011111001101001101101000111100001000010101000100000111001001101100100001011110000011010111100100100110100010000111111011111111011100000010110111100101010101101101001001111110100101000110110110011101100001100010111101010101111001101001110101010011010001100111111111011101111000111100001101100001010010100010010111111010000110111110101010111110101100101100110011011001001101101101100001101111110101000011110110000100000110000001011100110011101010111001001010110010000111111101111001100000001011111001010011110101101011000001011110000101101111101101011100001111010000111100101101000000110100000000100000011011111110011010001111100001111111110010011010110011101010010011010100011001110101101100000000000011000010111000101101011011010110110010000001011010110111000111100011000000010011111110011010101111011011011000001111011111101001001000111010010001010111011100110101101010110101000001001111000110100101111000010110011010110011000001011010101110000000101110010010001110000011111111010001111001010101001110010011110110000110111010011110000000101100101001001010011101111100110010111000010010011110011101010101110110100000100000100011011110011100000101000000011001100011001001000100001101100011000011000001000001110010110011101111111110010101101101000010111101001101011000000101111111010110010010101110111101111011000101110011001000111010000101100110110111010101101001010010001110100001111011011110000111111010110011100101001010000100010000101010011010100011001000000101101010000010011100100111111110001010001111011100111011001111111010101111000110100101---------011010101100111100010100100001011000010000000111100110001001010001111010010101001001010111110110101101001001111100111001011010001111111011000111011010011101111110011111000101111011000111110100110101010000000010011111011100110100011000111011000011100100110111100000100011001110101011111010011110001011000000011011111101111101110101101000011001101110101100011011100000011000100000100101110101101001100110110001110100100101001000000111010001110010010101001111010100001101110101101111011010110101101011011100100110001010001111000111001111011110010101110110100111101100011000011010111000100100101111111001011011100010101000010011111101111110101110011000011010110100001000100100100110011001111000010111110000111111010010110101100101000110010010001111000011101011100010001111111011000000000000110011011000100010000001101010001011100100011010100101010110101101111001110101101000111010111011111110110001111000011011000001110110101001010000101000010100001001110001101000001101000101101110110000001011001000010101100011011111111111000110111110111111101011101110101110001001111010001110010001110000111111111000111111101100110101010111001111100000011101001111000010000010101011101001011000111111000110010010010010110100011111111100111001001100110110001001111011101101111110101000100010111001110001100100111010111001111111011111000001010100101110101111011011000110011111010101001001101011010000000110100111001101001100101100100101001010101111010100110101001000001010110000100011010011111100001010111010110100101011110111100111100001110010111101011100011011010110100000101000010001000001001100001011011001111001100001000101000111000101111000010000000101100101101101000010111010010001100011100111010011000001000001111000110010111011101110001110001011101011000000100000111011001010101001000110010011000111110101101001110010111001101100110101001110011100101010111010100011011111000011110101010000101101001001000101101001111001000100010100011100111110110111001100110111111001011111101001101000101101110011001110010010110111101010010011011101001110001001001000001101100000001000010111010100110110001000100010110010001010110101101111000110111101100011000001010110000101100011100100101001000001001101000101101111101010100111101111011000111001111011111001000010001100010000100100010010110111101011000011010100010100001110101000000101010011101110110000110110111111110101101111101110111111101111100101010110001010111110010001000111011101100001101111010100010111010101000011011000101010000111001000011001110000101100010011010101001001110000000001111110011001100000111001111100000110011010111101110011101010100110000111101110111010110001000001101000111100001000001101110000101011100101111001010100001001100110101010110111010110010100111110110100101101000110011011011010111111010010100110000111011001100111001111001100101110001100011100000110110100011100010010001101100011001011010011011001011001101100111010111000010001011010101101010011111010001111101100001010000001100111111011101101101010010011110011001011100001011000110011100011101001100010101000011111111111111110001100101010011101000110110111011101111011010010101101100001101011000000111011010011001010010010111110001101001011011110100011001001110111100100100110101111011001000001010010010001101100010001000010010001010110110011111101100000101001011010100111100110011110101010110110101001000110101101011101001111001100111111101011101010001110001100001100100010101110111101101100001111110000111110010010111010101111111110011000111001100100100001010011100110100111111001011100000110000010000010100100000111011110011011010011011101110101101011101101111011001111000110100001000001001001110000101000101111110101001010011110001100100111001000011000001110001001000001000110011011111001111001101110101111010111000010001010110111011111111100001000111111010110100111001010111101110001100101011101111101110110101110001010101011100000011101011000000110000001011010010100001000100100110010010101100100100001110100100100010101010100011000111110001011001101000001111011101011010001101101110111010010011001110010100011111101001010010010010101110000001001110111101000001111110111001000111010000111010010101111000000101110101100101000100101010010100100100100110110100000001111001010110000010100001000000110011001101011111110110110000000010111110011010001000111101010110100011001010001010001000001011101101110000000101110010101000110100110000100000101101010100100010101000111001101111101100001110101100111111101100101011011111001011000101000111100111000010100000001011101100101110000000101111100110100101101101001011010000010010101000010000100000110000001000100011011000100110111111111010101100011100001001101000010011011110010011110110011110011100001010111101100101010101011100100001100011100111010100011011111101110100110000100101100111010001011011111000111000000110111011101000101011110100101011111010010110100110110011010010001101000010111111101100111110010100111000111000111110111111110010101010010000100111101110101101101010001101000011011011110011110110101010100110001100010011101001101101010011100110011110001101101000101101110001100010010111001111110111110101101110110111110011010000001010110111000110011010011100100111001010101100000110001000101100010000011000111011000101011110101110110111100010110000010011110101100010100111100011110010001110001101010101100011010010011001110011110001001111001110011000111101101001101011111011100011000001000110010001110101101001000110010011011101010000111011011100000101001111101110001111111110100100101110100010001111001101111100010110011001111010000111001011000001100110011000100110101110100011010110010101101010011111001110010000100010100101000111111110000101011011111100100111010000110011010010000010100011000011001100000111000010000000011110101110101101010000110110101001111101001011111101101001111010001111100010001101110100110011111010111111110111110011000110101011010010100110000011011010010101111011111101011100101011001010010010011000010011111100011110010110010100111000010010011110110100010001110000011010011000101011010011011111010001100000010001101010000001010010111000101101010100001000011001011001111100011100101010100011011111010010001101101000011101110110001111111010001010000001001001100110100010010001011101100010001111001101100011011100111100100011010110101110111111001000011110001001011010110110110101000010001100100100110101000000010110101011000101001101001001000000011111101010000101000111111110100000000101101010000111010110110111010000011000100100101101010100110010010011010001000001001001001101000110101101001110010011101100111001001111000110010000011100100100001000100101000101000100100010111001001010011011100010100100001001111110000000100001011000010000010110010101010010000010101011001000110100110000110001110101001000010100110110010100101010110000111100010000011101101000111011111011111000001101011100001001001101011000011111001011011100100000110011011101010110000101110111110100000111001100001010110011111111100101010111101111110010111100101110111001000011000101010001101101010100001110110001111011001110111011000100001111000000110011000001010101101000001100011100110111011111101111000100110011111101101010000110100111110000111100011101000101011100101000100000111000011010010000011001110110111111100010011110110000101010001111101101111111011001011110110000100100111000111110000111111001111100110101101000111000101100101111000011011011000011000001100010101111001101000111000110000100001101101011000000111100100111010110010001010011111101101111111100001010011111000000100000110010000010001100010100010000100101110001101001001000010010000110001001011010011001101010011110011100100110100010010100000100110100000011001000100111010101000011010110111111101000000001000111000110011000101111110101101111011011111100110101101110100000111010111000001010101001001010001111110000111110111011000101101010010101001001110000111110000010101011110101001000001001110010011010110001000111111110010110001101110001010100001001000001101000111011000100001000100101110000110110000101000000101101000010100100101001110011101110111010101110101101011000001010111010110001111000101111100010100010001111101111011111011111001010011110100010011111110001111001100110000111101101011110001110111100010011100101100101011000101100011101010001001000111111101010100000100111010101101011110111010001010010001110100001000011111100011001010011101010001101110001011000110011100010100110111001010011101101011110000110111110101010100101101100000010011101000101001001111110100001100000001011010110000011011111011001011000111111001011011011100110111001100100011010100000010001111101001000011010100000000110000011011010011111100101001010010001111111111111111101000110011111110010000011010100110110010001011111100001101110011001111111010010110010111101111100011011010001010100110001111011100110111011010011000110000001010001100100100011101110100110010100110000011000110001110011001010110111011110001000011011000111101101101101000111101011111001000111110110000100000101010001011110000001010010011101010010011000001000111011110111100100011101100000001011100100101100010011110101100101110110000101100111010101100001100101011000011100101001100100111110100011110001101010010000000001110110110010100001111010101001010000101010100110001000000000000101110001001000100101001111010111110001111011110110100110101111011110011010010110011111010010000111011101011001000000000111101101010100100110011010111011000001100101101011111101100010110100101011011000111010111101011100000000111110110011100010000010011110110010101010000000011000101000111001011010000001001011111000000111100010111110100110001010101011111000011101001100010100011010111101101011011001001001010010010110110000001001011010011001100110111000110010010100100100101100010000111000110001010010110101011110000110001010110101101100100000101100011001001111111001000011001100111110010011100010001110001001110011000010011111100110011000101010110101101010011100101101100111001000110010100111001100011100110000011100111111100100001010001100110111000101001111101011100111100001000001000001000111000100010000011110010000100010001000001011001001011010010101101001100101110111001111110110100111101001001001100010001000011101100101110101101011000101101000010101000000010001110011010010011101010110100101111000000001100011010010111100011100111111100011000011110110010101100110011010111011101000111001001110000011010001000001101110001100100010101101010001101110010001101000101110101000010010110111101000001110010100100110110110011110110101110111110010001010100111000111001001011111111001010001110001000000001111000010100110011101111011110110001111010010110101111100010000001100111111110101011001010110000101001100000001000111001100110010110110010100111011100011100101111011111100111000100001001111011100111001100000010011000000000010000000010101001111001011100000100100100110011 +10110100110100011111010010110011010101001011010001010010111011010101010111110000000010101101110100101110001100001011100110110100010001101111111000010010010010011101001001100011011011001000011010101010110011000010100100100111001101010101011010001001011101001100111111111011011101010100000000110111101001100111010001001010110001011100110001100101100001110111110001101101101110011010001011011111011001010000011111011011010111100000000010000011000011111101010100111011111000010100001000010101111011010000101001000000001001011011100011110101011100000011100010110010010010010001000000001000101000000111011100000010111000110100000111000000000001111111000111011011110100000100001111001001001111100101110110011110000111100101111011100001001110000101101000110111101000101001000110010010011110101101011011101001011001111010010000000001111010111111111000100000011011111110000000110011010110011011000000101001101011000000100111111000000101100010100011101101110001011101100111111110111010111001010001111101100111110111100010011100100000000010010110011111111100001110011100100110010110111000010000101111100111010011101000111111111110000011001110001111111000101100001110110000010111101110100000100001101100101110010000100001011011111010000000111101100010101011111101111001110100111111110001011011011110110010111110001001000110011000111001011101001101010111010110011111101011111111011101000111010010001100100000011001111111000101010100111110110010110100111001000100010001100110110111100110000100001100010000001010110010100000111000000110100001010000100010110010111101000110011101111001010001110101101011111110001100001110110101101111111010110110001011000111011101100111111110101100100001110111001010010001111110110101111100110001001111100000100000001110110100011000011010010100011100010010111001000111010101001111100000111011100100001011011101100011100010100111111111011011111000010000110111000011100110110101000011010110000010000000100011110010011010101010010000101000001101111110011010111010100001011101100111100010111101010001100111010000011110100111111---------111110100100100101100111000011110000101000111101010011100101000010111000111110100011010100110100101010001111100000010110100001001100100010010100010101000001111111101100001000010011111010011001110001110000000010010110100001010011000100001100110111111111000111110011001110010110011001011111000000001111101000011101011100000101100001010100101010010001001011011001001101111111100010110001000010110001001111001110110011111000100000111100111010100011010010001100010000000101100000110011011000010001011001000100000000001000110101111110100101010000011001001111100110111100000110100111100100001100110001001000000101010000010011000010110100101000111000101001110010110101101101101101010000111100110000011000100110010001101001001000010101010110101100100000011111000100000000000111000010101111000101011011000011011110000110000001010101001001110101010101111111101000101000000001001100110000101001101101111010001011111101101101101101101000110011100001001101011010011011111101101001001000001011011101100100010101111001111000010011001111111100010010010101100001101110101111100110001011100111011110001110010100010001100010010111000111011111100011101101011000001010100100111101011111001111110100011110100000001101111001111100000010010000101000000001000010101011010011010001001010110011100000001000111110000111110010011010001010000011000000001110111111011001010101101111111010100111010101011001111011011000011100010100101101000000110011011101001010001011000000010101000111010110111111010111011001010110110100101010010111010011000000010111000000001000100100101111101011100111001001111110111100101010011010010011110110100111110011110000111011100011101101111100110100000110111100001000110110100001110100101101111100010010101101010110101101111011000000101000001110111111000110100111000100011000011001000010111111011100011010000000011110011111111100001110010000010001001101101011101000000110110110010110011110001111111110100100000011100011101101110010110010011101110001011010111101101011011111101101010100100000110111111110011011101100001001011011111010010100111010010000011101110100000001000011010101010110101010001100011010011101110101010100111010111000110010001001100000000101001000111110110011110101110111000101111111101011000110000011010011000110000010010100001101011001000101010000100000000011101100110011101000010110001110000000111011110110100101101110011100101001001111111111011100111011100001111001101001011111100011100100100111111010100011111100111111001000100101001011001100011001010100001011111110010010100000011001010011001110110011010100111111001110111010101110000000110001000101101001110000110100101111101010000100001111000101111110111011111110011100011000011010110001100000100100111101100010000011001001101001000010101101101100101000010101100101101100101001100111110000001011001101110000110101101110010101000110010101101111010101100000011111111010111100001010011010000100111101010101110001011000100100001001101111101111010100000101010000110100011101100101000101000010110111111101111111011100101011111011011011011111010000101110100111101010000011100101111010001011110011110111111001101000100101000001011101010000101111010101000100000110101110101001110111100100100111110011101101010010010000111110000000111110111100010101110001110001010110110110011000101101101011101101100010011010001100110101111001110100100101111000111000000101111111100011010001110100100101110001000110110111001000111011100010010001001100000000110011100000010101111001110001111110000001110010101101101100011110001111101100010011101101001011010111010010001000101110010001000111011010101111110000101000100100001001100011001001000000111000110101011011010010100010110111100000001101111000110100110110100001010000011000010000001100011001110010000001100011110010001001001010011001110000111000000100110001000100111000100010000111100001010110001010100100111101100011000001111100111010111110001010111000011111010110010100111011110010001001001001110110011100001110000011000010011001010000010000001111011100100110101001001111001011111101101001011000000011011111010111001100001011011000101001111100100010100101101011100001000101001101011011011000000010110100011110111001011010001010101110001001111100101100000000011010001101000110001110100010100100110001011111001001111001111111110100101111011101011111010110001001010010010110001100100011101001000000110110010101101000001101111011010110011000100110101001100100101010111010100110100110001110100011100011111110010010100000000011010111110010101010010011001000001000001100110001001111011110001101010001001010010011111110100011001011101101100111100101011001111010101100110100101110010101100100101010001111111110101010100110101100100111101110101010001100110111011110001000001011011101010111101010011010000000000010111110100111100100110111010010000110100011000001001001111010010011001100100111111101110110101110001000100000100000010010110101111111001001001000101110010110110100100000111011000011001010000101000010110010101010111000000101000110110110010000001111101000110100011001000110100000000010010101100110001010011001001001111001000010011111011011111010111111001011000111010000110000001001100011011000011000000110101111010100101110110001110000100100001110010110111101100100101010010100100110010100000001001001101110001101010110010001000010100000000110110001110100011111101010100101001011101011011111110111111001011100111111000001110100001101001000110001010100101011100000111100010110001010110101001000010001111001010001011100000101100010010101000011011011011100111100001101001010110001101101110110100111001110001110100101011011001000111111101101001011010100100101101111111110100100011101010101110000001110100111110100001110001110010011100000100110101101011100010010111110001101010110101000111101011000101101110110000010110000111010010011111010101110101100111100100100001011011001110011000101011011000001010010000011110101001010010011111001101010011001111000111101011100111010101100001001001110011001001001000011000110110101101001000100011000010010100111100011010011101000010100100101011111001101100110011000011101000100000011010110011111011110111100001110001011101101011010100000111001100100101100010001010011001100010001101101101010010001000011100110000000011000001011101010011110111110100001111100100101100100110110111101011101010010110011010010111100100101110100001110100101011000000101100101011010110110001101100100011000100110001100111011101000110111001101010010110100111001111000001011010111000011001010001011001101000011011010101010000100110001110001000010111000011111111011000000111011001000011000100111000100010100001011000101001001111110000100010100001101110011011110001100101111000000100101010001011010110111010000011111001001001100010100111000010011101110111000000000000001100011110110110101100000011000101011001001011101100100110101011011010001000000001001011100100010111110101101001101011100001010111001110101111010001010100100000111101101000110110010011100010111011110110010110111011000110110011011010011110111111111011011001000011100101100010010100110010010100010011110111100110100100001001101000101001101000010011110001101011000001111010101111000100000101011011100110010001000000110110011000100000111000100001110111011000011111111101001110110100000000000110001001101010001100010001001100100010010111010100110100100001011110000010110110001111010000101011101111010110110010110000001010111010100110110011001000111001011110110111100011000011110000001101001101001011000010000010110110010001010100110111011011001000001001011110101100010101011010101110011011001110110011000110011111101100101011101111011110000011001101010101000010111110111110001111110010010001011100011000101001110010110100010001010000001100100101110110001010000100000000100011110101000111001100110110001101011000000100010001011000010100100011111010001010000011100000001001001100011100011110010101000110011011001100011100000010110100010011111101000110110101001001011110000111111100001101101110100101111001011100100000000001011111110100011111011100000111010011111100010111000111111010100111011111001010010100000001101000011000001101011110110111011010110011001110101110100000100000010001100010101101000101100011001100111001111101110010001110000110000100001010010010101101011011011101000011010000010110110011011101110011100010000100110100101011110101001100000101010000000101101000000110000010111010100000100010000101011100111101111001110110011110111101111101111101001111001010000010001001001001110100000001000001000010000001010111011110001010010110010110110010010111011011101000100010011010111100001110101001011100110000101001110000111001001101110100110110110000100011100110011001101100011100110100011100101000110100001111000001110100010100000010011000110101010010111000000110110100111010111111100001011111011010001010011000001100010100001000111110011100111100010100000011110011010001101000110011110101000111011101001010100111101010110010000100000111110011110111101110000111110110101110011110010011111101001111011011000011101110000110000100110001110010001000101001100011111001101101101011000001000100010110111111001001011110001110111001100111100101011100100001000000100100010001010010010110011100011111000011010000001000110001101001010100111110011100101001001110111110100110001100100011000010000010011101000001011000000111101010111000000100110001011011110101011111101010101101100001011101010101110101110101101111010100001101100011011100011101100001001001000001011011011110111000000110000011001111100110101100001010010000100011011100000111110011111100110111011010110111110110101111001111101111111100111000001101111111110001111110000101100111100010000000000001010010101101011000011111110110101100101010011111010010000101010100100000100001000111011011100000000000111100110100011101110010111011110010111111111111110001000110011000010001110100110011110110010011011110011101111111101011101101001011011111111010110100111011011011110000011000010110001101111111001010111101100010101100001001011100010110011000101100001010000011100110111100001011000111110010001010001010011100001110110000011100000010100001011010101001100011110100011111110011011011011111101011001010001000000101100011000110111000000011100011011110011111011111010001100000110101000110111000000011011000110011101111101110111100011100000101001101110110010111101110001011000101000101111011111010001110000110011110001000010001101110001110011110001000010000110001110000101000001000011110000101011110100011101110110000110110110100110100000111111000000101111010100000011001010100110101011100101111101011000100000000001111100101000011010111111111100110111100001011100000110110111101011001000010101110101000001010011100010101100111111000100110000101101100010101000101111000101011010101010111011101101110001001001111000100110011100011010101011111000010001000101101000010000101101110111110101011001010010111001011110000100100100110110110001 +11000001010110111100001101000010001000000100110010001001100110100000101100000011010100101011000110000000101011000000001110001001100000101101000111111111111110101111101111111100100101110100000010011000111001001010101110111101110010110010101111010001011010101001101011001001000011011011100101000101101111001101001011110010010100000011011100010011000110100101010111110100010101010000111101011011101010010010011001011110000011100101101100100110011111011001010101101010011011001010001101001001111001001100001111111110001100010010011000001010111010111000011011001010001000010000000000001000100000101001011001111111110111001100110011111010011100100000000101110100001100100011000010101010100100110011010101011010101000010000110001110111011000100011110010111111010000000001111100011111100001011110001101111100101111101100101001010011010000000010011101001100010101000101010011001010001100000100001001100110000010100001011001101101111001101011011101010011110110110011001110110001010011011000010000001010000110001110111100000101110000011101100101010011010011101101001001011101100111011010101010101110111011101110100111000111001001000011100110101010111010100101000011010110101100101100111110110000111100111101011001011100100000111001111001010011110001010011101001101110101000110001011001101111100100101101101001100010111001010100100111010110110011000111010010011001100001000001001110000011011100001100011110111011000110111010101111010111010001011011100101101010000100010000101001100110111101101101110000101110100100011100111101000111000001100111010001011100011011110100010110010001110010001011111000101101000011001111111000000011011100010001000011011000000001001111100110100010000000111001011110110110011010001100111110001111111011110110001010110100011001010100111101101111010010010000111010000111010011011110110110111010111111100011010001111101011001111100001111101000011100100111100000010100000010001100011010011000010011010000111011011111011110100100101101011110100101100010001100111000101101111011011001101101110010000000011001001011111101011111001---------000000110111000100010011011011111100011100110110010111010101001101010011010010101110101001101001100010001111011111000001001110011111111111101101010111010010010110100001101000010100010001011011111110100000100001001101101011010110110011101110111101100101101110001010001001111011001001000000010011001110011001110101100001100000000000001111100110011001010010001101001010000000100010011111110010111001001100101011101000000111011010001100011111000000010000000111110000010011101100010010000011000010101110101010001101011010000100011011110000010110011100011001100101101000100010101101001000011001011010101100001100001100001011000111010000110000100001101011001110010110000010000110001000100011001110011010010010000101101000101110010100101100111001011100100010110010000100111011101110010010000100110011010010010000100010110111101110001000001111011111001111011010110000000110110010110110100011000110100000101000000101101000100100101011101011111111110001000000000001101011110101110111000010110011111011000100000100011101001110100000110011011100011000011100110101100010011100100100101101101010111100000010100010001101000010100000100001111100001110100011011101000001101101001111101101100100110100101000110010010111111011010110001010110110100101001101000011111010001011001101101001000001101100010101110111001100010111101010010010101011010111111100110010001010100010111000000011101000110101011101001111110101001000110000000100101101111010111000000010000110111011011111000110110001101000100111011101101100100011110010001010011010110000111000100101001100110011101111010010111010101001101110110110110010000100100100010110111111101001011000011110010000111111101100000001111100101010100010110011110001111011100000010010001111010100111111100000001001101100100010010110110100100001101110011110101100111111011001100000110100110110001101001010010100111100101001101011011111110010001111111110010101010110110011111011101011100011101110011110001000011000001011010010000111011110001101111010000110011001010111101111010011000101011001110111001101011110101100111110000010100111111001110011100001101000001110011011010001111001001011110011011110010010111101000011011110000110100000001101111001110001010011000111101001100101101100010111111011111010001101011100011000110011010101001010001011111111001011001110011100010010010101000100101101011011011010110111010000001111000101010111001111101111000001010010100011111001010000101111011101011101100010010001001001010101011010000111000110111111011110110100011100101011000001110011011101000110010100100001011010110111010111100110100110011011001001110001011111101111001000110111100011010011110000011111011101000010100010000001111001010100010110100010000100110110101111001011011010101100111010111011101000110100111011000001110100000010001001111000100101110001001111110111000010100101100000111111011110001111101000111100100000000011111011010011010000101100111101101000110010001100111111100010110100101101100011110010000111011110011111101100110001010011010001001110010000101110101001100111100111001110011011010101110111101111011101001011000001100010101001111100110111011001111011100001001010111011110110001010010001011001001100001000110000111100110011011101110111001010011011100100001100101110001110110111101100000111100000000011100001010001001110001011000111111011111111011011010001101110001000100100101100100101110000010100010010111101111111101100111011000111101011000111100100001000000100011010101111110110011010010111001100110011001010010111010100011011101100110000011101111001011110001010011110111001100101001001001010110111100100011111001110011111111001011111000101111000101110110110100010001000111001101000010111100001100000010101101010100101110101010011111101100010011001010001000100011110010000011110110111011001111110000000001110001000110011001000100101110000011000001100101011110110101110110110000101011010011101110101110110100101010011110011111010010101000000111100000111110100010100100111010010011001110000101000000111001100011011010000011101011111101010010000101001010001110010000001110100011001101011011010110110001000010111111111100010001001011010111101000110110010100100111110000101011001110001011000100010101110011101101010010001010001011110100010000110000111101000100000101001101111001100010110100010110111111100011100110101000001110000000010100000010101000000110100100000111100001100101011001111100001100111101000010100000101111000011101101101010110011111011011110010001001011100101100110001111100001110101001011101110000110101100110011010101010110100110011000001110101000100101100100011010100001000000100011010110000010101011000001010101000110111111110001111001010110001100011011111000111101001110000100011100100100010111100011001001000111010001100100000111001101110010010111110110000011001011101001000001000010101001001111011010101100010001011011010110000100111011001001110110001001110011101011000110110100110011001011011010111010111000000010100110010110110100110001110101000000011110010011111000000101011101001110100100010001011000100100011000100100110000111100000010111010001010100100110101101001101100000000101111101010010001110111110010111101110001000010111001000110111001001101001101100011101111100111001010011000100100110011101011010001110110111000111101001001010100101001011010011101000001110110001111001111111100100110000101111111100101100110111101111101101101000101010000110011110111000000011101111110101100011111010001010100101001000100100011111011101101111110111110010110111010000110100001000011100101000111100110100110010110100101110100100011010011011111101010111111000011110000011111100010111001111011110010111000110001100011110110010011111010001100011101001001100110000010011101110111110010010111001110011010000100110101100001001000111001110111100100100000011010001111110100100000100011000101101001010011011000110100001011110100001110110100100001010001100011101000001100001111111000101101110010010100100110011110110001100110101101111100011101011101111001000100001100110001011001001100101101110101100011111001001100001000100010110100111110111001011100110111100100101110011001100111110000011100000100100110011010100110101111111100101111001110000010101001111000010100111001101101100101110110101100110111100010110101011101010110011011101010111100101111000110110101101101010101100101111111100010001001011101010011000001001010110001100100000100100000110011011001110100111100000000101111101101110100010110101111010100101101110011010110010100010111010101110011110110101101010001001000101011001101000101000111010110111011010111010010110010011111110010110101111110100010101101100101000000011110111100011000111110101100111101100100010110010010110110101001100001010110010100011100111010000000100111101111010100101000011100010001100111011100011000111000011100101110101100000100101001111110111110101001000101110000100001001101010001101111111110000110001110101000101011111110011101001100011011100001001001010101011011001110111110100011111011101111111011011110101101100100110111000011111010100111110100111000001101100100001011011000101100000111111001011011001100110101011110110001111010011101111000010000001110001011000011100001111110101101010101010110101101000000111011011001010111000101001111010000000000101010011110101111101111001001101111001111000010010011001110100001001110111101001010010010010110001110011011100101010001110000110110101011100110011011110000100001101011000110100000110011100010010010000110000001010000111010001100011111110110111011110001010010001011101010011010011000101001001101111100011000110110100110100110000101010001000000110100001110101010010100111110011011110010000110101000010110110110010001001101110001110110010001100110011011110111101100001100001100010101101000010101010011110011101000101010110101001111001001000011010000000011100000010000111100100010100101100100000001000011001001001110010000110011100011011111011100011101011100001001000111011111101110001111011011100000110010111100011111010000101000001010001110001001011011100100011100101101111110001001011000101000110110100111010001101010111010000010010111111010101111001101100110001111010011100010010101110001010100011101001001100101001111011011011000001110010001101111001101011001101111010010001011101010011111000011011001000000110101101001011010101111111011001101001100111011111110111001100100100011101100100110000001110011110111000111001101000000011000100011001101111010110111001011110011110001000110101011100101000101100001001101111100100001110011000101001010010001101010001110110000100011101100010000010011001001110100110101000110000111110111011110110000001110110110101101010010000111000110010110011001000110100000100011000001111110010000100100001110100101111110011011011011001001111001001010011110110011000001000110010011010101101100110110001000101011100101111010111011001000010000110100100000101101000000010111111000011001010101100011011101100110001001011010011100011001011101111001111101010011011111010001000111001001001001101111101110101011000010000010100101111100111111001100101010010010100001011000111010010011001101111010000010001001101000001000011010010001100110011110100000011011100110010111100001010011001001001110101010000101000000000110101011100111001011101111111101001001000000100001100000011010101100111001110111010000001011000110100110111001101011101010100000100001110001111010100000000000101001001101110100101010101010111011001111111111111100100110101100100000110001010100001111000001101110101111101001100101011011101001100000000001000101101001010011011111001100101111000111000100011011110100110000100000110111010100110011101000010111011000000110110000110001001010110110010111011011111000000110000110000101000100000011001001111000111011110011100110001101100011111001010111010001100001111100101110101011000111000010000111101000011111100101110011010001011111001000001100111101001000011110110001001000100111010000000111011111010010110001010100010001001100010111001000011101000010001110011100001000111110000101101010110100101101101111011111001100100101110000111110101010000100110011101010000000000110001100100010000010111100110111010100011101010011110111010111111011010001010010001000111001000110010100110111000100001110011111110001011110100110100101110010111000011110111010100101110010110101000011101000100011100111000111001000011010100001111000100011000100001110000101010111010111011000100011110001000110011011100010100100010011110011110010111001001001011101010000010011001010000101000111101000011110000111101100110110011111100000101100011110011000000010110110101101011101100010101000110111110001110001110010011101000001110100000101000011111110000101000100011001101100010110010110001001001101100100101101111100111001010011000110001110000111010011010100011010101111100111101101100100001111101010011101010010001110010111110001010011110100110110111111000100100010000110101000100101101011001100111111111111011000100010011110000 +10011000001000001100111011011110010010000100010111011011111010110011110110110111110110111001100101110100010101011001011010001000111111000001010000100010011110101010101000011110100011010110011101011100101100101111001010100101101000010110100110100000010001100011101111001110101000010100011001011100001000100111111010000010000010101100011001111110100000011111111110100100011000110101111011110010010001111110100101100010101110100001001010100111100011011000101000000000100101101010000000101101100010011001010000000011111000001011011011011101011110100001011110000100011110001000010000011101111111000101001110110101110100001101110111010011110011101111001000000111010111001000011100101011011010101011011010110111000101001111011101000101011000000110100000000111101110110111101100000101010101100110101100100100010110001111110110111111011101001010110001001001000010101001001111011111000001100101111111011011100010000011110110100000000110001010001011110000100010110001010110110001011010100000100100110011101111010101010111001010000001101011000010011101010101110101100111101110011101011110001110110001010101000010111111100111101101100011010101000011000000011001110010100110011011100000100111101100010111011101000011111111000010101100011111101110100011101010010101101010010101001110100111011001000110001100011110011100100011011000011001001101001110010011010110000101011100000001010000100000000100000110010111101001010010100110110101010010001110011111101001110101010010110110100000100011110011101111100011000110011011111001000111010101010110011000100001001110100001011001001101100010110001111001111110010011110010100111000110000011000000100000101111100000110011101110000000110010010111011101001110100000110110001011001111011110010100011010100101101000111000111011010010111110011110101100100001111010111010111011000100100001011001111010000111110101010110011111110100111101010111100000111110101101111111001010111000001100000000111110110001101101001111011011000110001100011000000101101100101010001000100000101111110111111100101011101100000101001110100011110---------000010110110010111101111100101100100001110110011011000110011010101000100110100110110100111011100000100100011100011001101110000110100001010011101011111001111010100110110110011010110100000010010100100101110011011111101010101100101000011101010101111101001100101101101011111011100000111000010001010110100011011000001010011001001110000101100010010000011011011000100111100110111010011100111011111011110110110110111011111011011010101001011101110001110010101010000010001011111011010101000010001110111001100110011001101011011000111001100101001100011010001001001100101110010100001100000110011000100000100001011001011000001111001111110000000100100110000010111110001111011000101101110011010011010110100011001010000011011011100100101010111101001000100010011011111111100010001111011010000001010101101101011100011000110010001011000000111001000110101111111001110110111010011001100111011001100011011101101000111001011100001001010101101101011101111000111010000001111011100011011011101000110101010101101011001100001101100100111001010011000100101011000101100110001110100111111110000011110111000110000001001000000011111110100101001011010111001111000110100111111010010000010000101111101010101011111001011110000111100101111101000111110011010010100001101110100101101110110011000010011000110000110111100000100111101011100001100010100000101110000111100000110101011110010010110111011100111000011110101111001000011111000011110000100001101101101101010101100101000101100110000100001000000110110111101010001111000010101100001110001010000000110000111110011110100110010110100000111111111001100011011011011001011000010100001100011110011000111100110111110010011100000101100101110101110100000101111001100001110110000111101000011000001110110010001100000110110111011110000111111111100001000000010011001010100110101011101001100111000011101111110111001111010100001010000011001111110110011000010000101110000111110100011001001000001101010111011011101101110110101100001111010010111101110110001100010010000110001011111000101110011110011001111100111101101011111111100000110101101001110001000100111111111010001000000010110001011101001111100100011111100000110100111100000110000100101110000100000011011111101101111100100011100001110010101111110111110010110000111101100110111000100101101000111000111111111111111011011111011110001010010011101111110111110000001101101101111100010111110001001000110011000110111000100101010100101011100011011000100110011001111001101000100111001001110000010101010110001001011011111010101111011001100101100011110100111001101010100110010100111000010101011111110001011100010001100011110101001100110011111111110000011100111000000001100011111010111000000000010101011110010000100011100101000000111000000001110011110010100110001100011011011110110011111111100001110001001101000000010001111110110101000101001010110011101110011101101110011110101101111111001001011101111000001010100110111100000000011000011101001110000101000000110000001001011111000101011000011100111011010001011011110100010111010010001001010111001110111110001010000010110100100100011110011001110001011110111111010011110010010001000010110011110101101100101000010110101011100110100111111010001010011010110100000111010100101110100001110011100011110011101010111000010001010010110011010110101101011101001011001001101011010001101110000101101101100011010000100101110101111010000101010100101011011011111101101000001110001000100010010101111100111011110111100111001100110101101001011100000000010010100101100101010111100001100010001110001011000001011001101110110001101100100100111101111110110010000010001111111011011001000011000111001111110101001011101111111001010110001100001001011101110001010011100011001100111000100110100010011110100010000111100001000101010111110100010011100000001000000010000001111000011100101100111001001111101100110101110110000010001111000010111011101001101101101000000011101010010111010111111110001111110101101000010100001100011010101000000001011100000100111010100101011011000000001000110010001111000100010100110111111011111111000100110111011011011011000101000001011111110000111111000011110101111101111000000110101011110001011000010100101101010101001000010001011001110001101110101111010010000111111100111011111111010100001100101100101101111010000100011110101110001000101111101110101100111110100100111011000000010001010111101011010100111010111011001000111000111000100101001111000000110011100010011111110011101110101001001111011101001100111001010011101000100011101001110101100101100011100001000011110010100110000110111110001111011011011101011001101010001100101001101001000100011111111111101110011000111111100011000010101010010101110100111011010111011001011101000101001111100011010001010101100101010000001000010001111100111000101000011010101100000110101100010100010111111010101111101101100100111110101100011001011000101110010000100011010000001100000010100010111111001110100011110001111011100110011010110100001110001111111110001111011111010010101010111101100011010000001100111011000101000101111100111110110101010110001011100001101100101100111110011010011100011000000000010001011110101010000001000101101111101101101000110010110011001100000101000101010101101110101000110010100001101011011110010011111000100010001001100111001001011001011011001001100011011110111101001010011001011111000111110011111110111011000101110111000111111010000101000011111111010000001101011110010100111111100100010000100001001011011010010101010011011111100011001111011011000110111001000000010010010001101001010011001011111010011001100100000101111100000010010011001100010010001010111100000011100100001110101010010100001001010011111010001110100000101010000001000111000010010010100001100110010111101101101100011110111111101101101000011000000000101110100110000000011110000000011010001101111110111011001100010011010000001001000100011000001111000100000011010101011011111100110110010010010000000100100010001001011101000111111110101110010100000110100101001010000000011111110111100100011111100000001110011111010000110000001011011010111110111101100101010000100001110100111000011110100101100010110001010101111010100101001111011000011111101001001110000010000000000100110011111001011010100011100010101010010010110111100001101010110000011111101000110001110100101101001001001101111010100000101110000110101010100000111101000110010000100110101110101011001100010101011011010110111010010011100111111110000000001100110111100101000100000110001101001011001011000001010101100010101111010001010110001001000001000100000100010101110111111101000110010101100111000100000101101110011000100110000000100010111010110101011011100110011110000111111000101100000011010111100101111111001000010011101101000110000100100111000101010101111011100110100000110111110000111011010010111011100111010111001101100100100001110001011100111110100000101000010001100110001001100010100111101011001101011100110101100101011111011110111100100001001011101000100100010101101110011110111101100101001010110111111110100111010010100000011110101011000010110101000111010111010011011101010001111110010101100110111001010100001101111100000110100001000001010100001110101000100111000111010001001100000100101100100000000001111000110001101000000110011101101101001111011010011101010100100010010100110010000001101010000101001110111011010100010110010010011110001111100111100100010001100000110101100101010100001110000001000110100101110100110100110011111001001101110110111111101010001011110001101101110101010111000011011011100010001000001111011110101011001111011011110000100010111110101101000000101110001010001010011000100010010101010101011011111110010110010111010111010001001110111101011011011110010010000110101111000111110010111101010101000111101110101011111110100011100100011101000011010010111010100010001111011000111110111010000100110100001010000010001100000110010001000001110010101011011101001000101001001001101100010111101010010001110011011000010011101000111000011011000100101100001011111011010010001000010000100111101010000110111000100001110000101010100111100100101001010111000101110000000000001101000101011110110100000010001110000011111100110101110001001101000101010000011010100011000101111111000101111011010010100000100000011100101111011101010110101101110001000000001110001100000101111010001010111001000101100010100000000111100011101101111010111001100100101100111011111101101111101111001111101111001101100001101111010010111100111010100101001100011111110001011010100111101111100110100101010010111010110110011111111000011100111110001100001000110011110010010100110111000100000010111010010010011010010111100110000000000000001101101110011010110000100011000000000101001000101001101011000110001100011111101000000011010110100101100001000000010000010110001011001001010100000111000101110110101010100000100101101100110001110111001101001101010011110010000010001011010111110111001110100100000010110111010111100110101000101100101100010011110000110001101101100010011101001011111001100010100011111111011111001100011111100011011001111010110111100110110000010100110011001011001101111010000001110110101101101010000101101011101110010110101101101000101010010100111001110110101010101000101110101010000011001110010110110000100100100100010110010011011111111101010101010000100101000001111111001111101011101100010111000010101010000100010000010100100010100001010010001010111110101101101100000111010101000011001000001110111011010101011100001011111110011001110011111001001001000101010101111110011100000001000110011011001010010010110100100111010010010010011100100011111111001001011110011110011111111000111001100001011010100001010100011100001101101111010111111101111011001001111010110001111010001011110000100011010001010100000000100010000000010001000110101101110100001101100111011111011001001101010001111101010011000000101110010101011011101100101110111001111110000000000100000110110000110101100101100010010101100010110011100110011010010000101001001001100000011011100001111111000100101011111011010000110100010100001000110001110110110100000100101110000110010001000001100101101111001100110111010100100000001100010111000111010101110001011101011001000101010110001110101011101101111111110010001010001111000100111100101100011111101011111101000000110000011100010011011100101000101000000001001110111010000010011111000011101011110111000001100010100010010100111101101101000110001111111110111111010001000001111010010101111110110101101000000011111110101100110010011111001001101011110110010000001000010001100110100100100000110001000001001111001000011100010010100110110010000101011111000111011100101100111001110001110000111010010000011111110101100010111101111001100111101101001110011001100100011010001011111100010100111110110011011101011100110100100110010111001001011111111001101100111110101111011110110001111111010110111010011111101001001101110010000010101011010011010001000010110010011001110000100101100101011010011101000000111100001001110011001110101 +11111111111101000111101001010000000000011010010111000101010100010001010100100001010001100110111100011001100100000011110101100010101010011011110100000000100001011111011110110111110101001110111011011001001111101111000000101100000001100001110000011010110111010110101110110110011000101011111110110101000111011100010001000010001101110011100000001100011101011101111001001110111010011101010101111111000111100101010000101001111101001100111100001101010010110110110001011100101101101000011011011110110101110101000010101011100100010110010010001101001001011010001011010001000010001001111011010000011110111100000001110000000010110100000111001011100101000111110100001110001000011001100111010000111010101011100000011110110101001100111000110001000100000010100100101101100101001101000010101011000001101010111101110101110111000001000100000011100110110010101000001000011000000011000110100000010101110100100101000011110100001010011111111011101011011000110000010110111000110101110101011100111100000011011111000000101110110001101010011110100110001010010111010111110011101011000010001001000110100001000101110011001011010000010110101100110100011000001001111100101110010010011111110101011010100000111001100011001100100011110100100111011101110101111101101011000000000001000001010111010110111110001001011111101110111110111111101100000110110100100111001001000010001110001011100100100100100110101100011011110010100010011010011000001010100101101101101001111101100000111101100100111001000000100000011101111101111100101010110000111001110001000101010001111100001110010100001000000010000000000101100111101001101111111000011001101001000011110001110100101101011010000001001111000111101010100101100001111011100011011101011111100101100110000000101110000100001001100110111000011100000101001001111010100101010111110111010110010111111111000011001101110111011011011101100010010001010111000010010010111011010011100011011110011001110001101101000111001000011100101110000110101101100111100001011110001010000010010101001011100001111111001101111000010110001101000110110011000000101010101---------101100110101100101100010000100111101101010010001000000010010110001001000100101110011100010011001010100101011010111000000000011010110010000010110111010110111101110111101110101011011010101111001000001000101010010100111010010001001000111110101011101010001101100111000000110101001110000001100101000011010110101100001010111001001011001101010001000011101000110111101110111110000110101110011100100110011101011010101110111011110111111010100001110001100101110001110010000100110000001010101111010100010110010101011000100000110110010110111011001101000000000101011011010111111001001000011100110011111110000010011010110010101010000110000100110011111001010010011011010010110111001101001110000110111000010001000110011110001001000011001110010100110110100111000010101000101111101001000000011011000110111100011000101110011011101111001010110011101011001101101101101101010100000010001101001101011001001011100111100111111101110101111111100010101110000111001100001101110101111011001100110000100001100101010001001001001101001110101101100100001001000111101000010011110011110010101101001100010100011000000001100010000011111111000111001100001100100110111110001011100110011110000110111010011000100010011101100001010111011010110011001000000010000001110000000101111100011111101111100111010101001110011111110110010011111001011010010011101011100111000101100101111011100010001010110010100110110000011011001000001010110010100001111001110011100011011010000111111000101000011010100110100000100010110000010001110001001111110010000010101111101000010010001101001011001011100101110111010011100001100010000110111111110010000011110000010101010011110000010110100001000111101101010100110000100101110010011011111000111110111010110011010101100000111110101110001001111000111011010100011100011011100001100111001100111000111100001000001101001011010111010101011011101000011001000010001100100001111011111101111101100110001101000000011110000010001110101111000101100000101011101110101110110100111001001010100000110011010101100110100000011111110010010110010010000111101111100101110001100001000100011101101100100010110111001110111000001001100001110100111000110111001110010001000001111111101010011000000001011001110100101000110010101010000100111100010111101100110000011110000001100000010000110101111101000000110110101000011100101011011100010001101011100011101110000010100110010110010001010000010001111011100101010101001101100010000111100010001111010101000001000011010001011010010011111110000011011111000100000000110010000101001100010111111010100100101110011011011001001000000111110001111100100100000001001101111110110101000001100011110111001100100011101011100000000100001101011110010000100111101011100000000111100101001011110111100110011100000100100110110111101010111000111101011000100110101010100011001011100000011111000000001100000000111011111000111101111111110011000101010101101101000100111100111010100111000111001001100010011101110010100110110010011101001101000000000111110100100110011100010111100110000000000101010110101000011110111001011010011010110111111110101000000110100011101010010101111111010000111000100011111100110000111100110100100000111000111000111001000000011110110010001010111001011000100101000011110010001100000001110100100100010111001110110010100011110011011101111111010010010110001100110100000001100001010001000010101000000010101110000110001111001001111100000000111000000011100110000001000111101111111010011000001101100001010011110001001010110010010100010111001110100111101011010001000111001100011001011010101100110011110100001111111001000011000111110000011011101010011100100001011001110100010010100101100000010101101001100011100101100110010100010011100100010111001110010110001101111010111100000111111110101100111011001000111100101111010110010000010100111110011100110010000110010111001111011010011001000000100110101111101010111000001111100011101101111100000001001001011001111010100000000000011011110111110011111110101000010010001100001111001011100010110010110100111111001000111101011110111100011111011001101101011101110010001010100100111110010101110011110111101101000011000010011100100000011100011010010000101110011011111111101100100110011101001110011111010101111110100001001000100101000110011001010011100001111110110001000010101000101000110100001001110111010001000110111110111001000110111110011000111010101111100010101111001100011001010010101101011010011101001111111100100110111010001111011100001100000101100001010100011001011110001011010011100000111110000110100100000011100011000000100100110110110100010101110000001010110000010001110111110010100000110011101110010011101011001010110011101111011111010010100001111100000111111011101100100100010010100000110010101000010011111011111010110010110101000110111111110001001001001001010100001100101111111100110011101011011110001010101011001111010000000101010001001001011011001010101001011010000010110111011100100010110111100111110011100101100011111010111100000010100000111000110001011000011000000010011001000000101011000000110101000001010100001001100001011111110010100000011010001010101100010011110000000100110001001111011001011001110110111000000000011011011001010110000111101000100110101010010000001101001001000100001011010100110101110100010100010001000111000100111001100011100001000101100100111011100001100001010100000101011011000000001111110100110000101001001001101110001101010110001001111100010010010011001101000111001111100100100101001100010000101100011101010011101110111010110110100111011001111000111010001010000001101100000000000000101111100010001011111011010011110101110011101110000111011111101111110000101111100100110101001100010111100110000000001111100001100001011001011100100111010010111000001100011111111011010010111011100010001010000101110111110101001011001000010001110000100010100010010011101011011111101001010011101000110111010001000001011011011001011111101111011011000100110000111101111101000100000101011110011100000010110100110001001001111001100110010110010110000001100011011010101111001100110010000011000110110010001111011000000011000001101010000000000010011011010110001100111100110010111111111100111011100100110000111010111000010001011011110000010100111111100100011001111000110101101110101000000011000001010100000100100110010100100100111111110000111111011001110101011111001000000010011001100001010110110010111001010000010001001001100101000000000100100000100001011111000100011101101011011000010010101100110001111110110101110001010000000001001110001001111100001000001011111111010011010000100010001101100110001010000111100110110011000000000101101100101001110101010011110101110111000001111011111001100110101010001101010111111011110101110001011100101010011100011100100111010011101110001011011010000001011100010001100110111111110101101001111011110101101001111011101001001000100010101010000001011101010111001010111010011011100111001000101001110011011110011011010111100101011101001101001101110110110100110100111011101011010011100101011100011001000001001010001101000100110000110000000010111100100010100011011000010101001011111101001010001011111101101011010001100100000111100100011000111010000100110010011111000000011111101111110011101110100000010011101000011000101100110101000101100101101001101001011100100101110101110001011111011111101111001010100111001100011111110100100110111010101000100101100101101001000010100000100100101010100001101111001010101101011011101000100111101010000001011011000111001101001110000110110001110000111100011011001010000110100101101100100101111110100111000111000100011101011110010111111110011110010101001000011011000101101000001110011000010100100011001101100010010011010011000101111010001110000101000001110010101011111000111011100101001110001110111010110101100001110011000001110001011010001010010011111100100010100010101110110110101010010001101111001001000011110011010111110100111000010110000111110101101111100001011111101110100110011010011101001010010110100000010001000100011001100111010000100011110011101101111111101010111011011010101110111011110011110100001010100111111101101000010110110101000011011001011001000000000000000011101000000010011110011011010110110111000100111010000111110001010101000011000100011110010001010101011011101011101110000001011011111101000000111110101101011011100001110011111110101001000100101001100000110110010100100001001101101000101011010101001001110010010100110101011100011010111110100101000011000001101100011101100100011010000010011111111100001000000000111011010010000011111010101101111100110101110111100000101001001010111101000000110110110010101010000111011110101011100000101011111100011100001010100000110101100110011000110110111100100100000001110111110010110111011011111011001101111101110100110111111101100110111010111010000000000111011100100001000010011100101000011010111011101011000101100011101101000101010100110111100100101001110011000100110011101100010010101100001010111011100110110110101000110011010011010100000000100011010011001100111110001110111111011100110000111011011011110011011011110110100111110001011011110001110111011101111110100000111101001111101111110110110001011000010001101100100000000100010011000000100110110100011101011011100000010001111011100001100100100010001010111000001110010011010110100110011011000001000101001111111110101010001111001011100111000011101110100111111011001000100100010100001010110111110111101101000001110101001111110101010001001111000101111111101001110001011101011000000111111110010110001000100101011001010011101101010011010010110111000001001001001011000010100011100111011001011100100000010011111011001011011011111101111000001000011101010111101101100101101001111101010100100110110100011011101001100010101011011101010100001011000110010011001101100101101000001101011010000100111111100110101010000010000111000010010101011001000000000010110011011000000111111010101001111011111010010000101101100011101111101110010110000101110001111111110000010001100001111010110010101011100000110011000001101010001110010110100101110100011101100101101101001001100011010011110001110000100010010100011000001001100111011001111110010001000101010011011001010001100101100100100010100100010110000000100011011101000011000110010110000101101100000100101110010101110011110110111110011000010110111100000110111111010101000011101111000001110101100111000000001010010101011110110100101001111100100101000100011101101011100100101001110010001000110110101000111100101100010110101110010110001111100110100111100111001110000101000100110100111101111100010110110001010101110010000101000011000000011110010000111101000101011001001111010010100101100101000011100000010110111000100010000111101100001010000100111111011001111001010110001010010100010111010011001101000000001110100011101001011111010111100010100000011000101100000101111111110001011011011110010010101011110000100001000111010101111011101100101011100100001100010011010101110001111111011101100101100001111101011011010011001010001110111 +01111111001001111011000010001010100001001001011100000110100100111010101010110101010101000101010100110100100111100110100110000000001001011111011001101100101101100101010001010100010111011000000100111010000000001001101001011111110000010010001011100101101100011101001010011000110000001010000001010111101000111100100011010111111010001101101001001010001000000110011001111110110101010100010101110001010101101010010110100001011000100000100001010011100101101000111111010101111110110011001010100111001111101101101100000010100110010010001100011010011010100000110000010111011011011101010100100010110111010100111001101110101001100011101000101101100100011000000101001111110100011111100001011110000101100011001110100110001001100110110110101010010100101001111011100000101010100000111101100001110100100101111101010100011111010111001111001111101100011001001101110000000000100111011111010101011000110101100010010100011101100010000100101011101010001011100100101000101010001011010010110011110011100110101001010100100100101011011101001000100101000010011110001111011000111111010110000011100100100001001011001011100001010001110101000010011110010010111011000111100010110000001100100011000110000010001010100110011101001100011100101001110110101000011101001010110100000010100100100111001110111010000111100110011010100110111111011000001101100001010101011000011111011001001100001011111000111011001011110101101001110100010111010001101011111110001001111100000010101110100101010011111010010010110011011100011110101111111110111110000010011001101001111010010110000110111111111101010011111000001000001111010001111110110000111011011011100001101101010001111101011010011011000011001110010001010100101000111111100110111101101100011010110100100111110010111010000111100011100110110110011101010110101010000110000110100000000011100111001111001011011011110100000100100101011101011011011011001110011010101110000101001101011111000000001011010110100110011101001001110000010010011001100110010101011010100101110110101101011011100011011100000010100101001000011100000000001011101000000111101---------001100001111111000101110100100010110110100111010000011011111100000101010110010110000010111001010110011011010101111110011001000000101100000110100110100110101010011011011000011101010110000000101101100100110101010110100101111101110001110011001010010001001110001100100110011110001100010000010111010010101111011100101110011111110010101100100011101110000000001000101100010010111100000111111000110000111100110110011011110001111001111000011101000001010100010110000001101000110101010110011011000110110010011011101111001100011001101010111001101100001111101101110011111110000100010011110001110010000010001101100100110100000100111000000010111011111001101011001111100110111110110000111010000000100111111000110011001011100001100101111111111001111101111001001000010110011110100001011001011100001011100001001000000111001110111011100100101101010010100100001000000011110010100110100110010000100101011000101010100101001010010101100110111011110011011111101010001011101100010111110000010111111010111010011100010101000111100111001011010110010110011000011101000010101110110111100011100101011001100100100101111100101000010101011001010111010011001001111101100101100011100010011111001111000110101011010000011100100000001001101110000000111001001100001001001110110111010011011011101110001100010001001000011101110100111100110011011111100001101101001100010111010001000100001000011100011111010011010110001101010100100110110000111100000010010100101000011011110011100000000110010001011011001000001000010100111010010100001110011010001111101000110111111101001111110001011110000111000101110110100101110111000000001000010001100011100110011111011110011111111000001000011000101111011110101001110011110010001111110010011110110010010101010010111000011100110110101001011010110110110111101010110011110100010111010010110100010111010001001101110101000111001110000001101000110001010011000110001111011110010100110101011100101000101110101000110101000001100011000010000001001011101101101011010001100001010111101100000100101101010001000101111000111000111010011001111001011011011101110000001101111000011000110010000001001010011011000011001010111011100101110000100111011010101001011011111111000010101110000110001011110101100111010011110000110000100010110111001101010010110100011001000111011001100001000001111001111000101000110011000111010011010010011011111011111101010001000111010111101011000000010000011011001111111000011001110000111001111000111000000110110111011101010010001111001110110010001110101001000011101100011100000001110111110000100001110010110101111000000000111101101000111001101010001101010111000101011100000010111110111111111110111000100101111001000101110011011001111111110010010011110100001010011001010011111001111010111101000000000111000001101011101111101100011100101101011100001101100000101100111100101001111000001010100011100101111000111100110001110110110010010101011101001101101111011110010101100011100011101110001001111110011101101111010111001010111101001101011110111101010010010100010100010011001001100000110111101111100001110001001011111010111010010110110110010000100111000110001011011111011111001010000100101111001110100110010111101011101010010111001011000010001111001010100000011010000010100100011101101010100001100110001000001010100100101010100011100100111101101100100101000111000010011001110011010100011101000000110001001110000010010101101110100110100100010101100101110101110010110111100101110101111101100100100111011000110101110000101100001001011000010111001001001101001100011011011011100011101111101110111100100101000000000001010100011000011111011101001011101111011001111111100010011101111011001100001000011001100111001101001000000011101001000110100111110100100111000101101000111111010001111010011111001100001001000011100011101111011011001111111110010101000000110100101101111100110011010000101110001011101010011001010000001111110110011111000011000001101001000101110111110010100100100111011000001011011010100000000110110000100011001100111001100110111011010011110001101001111101001110001011111000111010010011000000101010001010110111010010000110010110001000100101100110111011110100001100011010111000011000011011101111101100100010000000111101001010010100010110010000100101000101111011111111101110011010110110101111101000001100010000001000110011100011110000010010110110011011011100101001111101111001111001100011001101110011111000001110010001111011000010100000101110110000010010100011101010011100100100010101000111111000100110100110010010011010100100011011110001011000011111101110011110000100100001010111101111001000010101010000110001111100111011001111011110101110110110010011001100101011010001100000100101000111001010001001110101010111011011000011110110000100001011000011010010011010011110111001001011100100110101110111010000111010100011010101111000001010010001011011000000101100100001100011011110000000011101100100011111011010001011100010000101111111100000000100110101010100110010011000111010101100000001101010000101101111011011001110100010000000010101011101001110110100000101010011110000100101100011111010110000100100010011100010110001100010110110011010101101010001101000010001011001001111111101111000011111110101001010110011001110001101000010010001011000111000110110111000111000101000010110101111000011111011100011011010010111010110010000000010010001101011011101000011100111110000111100110101100011000000011011100100111001000000000011100000111110111010001111111011110000111100010101000101101011100001000101010000110000010100010111010000011100011000000011000111101101010111011011011100100100001011101001110000000000111110000010000101110000100001100010010000011101100111100010101110000100100111001000100011000110101111000110110111111101100000010010111011101010100100011001101100110101110100011110100000011000110100001100010011001100110011001000010101111100100110111101001011011011011000100000000101000110101011001100011100101000010010010010110110000110100110100111110010000101000000111011001100100111000010000101010101110001100001100110000111101111111000011101010001111011101010100110101001001100111011101000001111110000011001000101001011011001010000100011010011000000011111011110110010000110000110000101010011001110011100101110000101111111101101010110100111110111110100100010101000001011111100110011100000101011101011011000011001110010101000011001011000100111010111111100110001000110010011100100000011000100110100011001010101011011001000000100011001110011011111001110011100000101000100011110100011100011001111111100010101011111100000000110111001100000101111000101000001111101011111110010110110111000010001100100001101100011001011011010010111000001011010011001001110000010010011010101110111001001101001100001101001011101110101011100010010001000101010000001001011101110001101100001100000101111111111011001111000011010010111011111000100111110001101100010010001011001111101010010010000011000111100010101010110001001011111000010101101101010110100110001011101111101010001000011110101011110000011010110101010111001101001101111000010101000110111101111011110101101111101100011101110111011100111100100000011001100111000001111110011110111110110110111111100010100110100011101110010101110101110010100000001100010000001000001100001100001100110111000101110111000010001011011011010011010101110101001100110010111101111011100010011010111001000011001010101010101101010001110010111101101100010011101111100100110001011011111011100011111111110111101010111011111100000100100001011111101011111000100111010000000110011100110000100010001110111110001111111111111101000000110101000010011011111110111110001011010010101110101111100001001110110011010000111010101000111010111011011111000110000100110111111000000101001000110001100101011010001101101010110101000010000010000010101011011001001100101010000111001101101011011011101100101101010111001111011000010101111101000001011110100101011010101111010001000010100110010010110101010110100001000110110010011001000000011010001011110011001100001100010110000111001000100011001111010011011111110000001000010100110011011000111110110011001100100000001000001110001101011001000000100100000111000010010010010001110101111111001110111100100111111010000010100111001001101010111011010111000011111001010100000100101111011010100001001111011111001010011100101000110100001000011000011011001101111001111111001010011111101000001011110111110110011110101011011001001101111001111100110111001101100010111101010111000010111110110110111010111110100101000111110111111100110110010100111000101100011010101001100101011010000111101100110110101000011000100110010011000110100010001000010011010100101010111011000011100111001001010001101111001010101100111110001111010111110000111110001001011100111011001111110110001110000110111111100001100101110100110101100101010001110100011110000010111000101010100110100001110010001111100011101110000011110000011000101111010100110001100011100100110110001111000001100111011100011111000000101100000001000110010111011010100011100011000100111001110011010001110101101110110110010101001110011100011100110111001110010101100011111010000100110101001010001000011001011111110101100010011001000110010001111101101101001101110110001110101010001101101111111000101110010001010100100001001111010010010001001011100111111101100001100100101010110101110101011000000110101101011100011011011100111101111100111011001000101011101010101010110011011101111111111110111011101010011100100011110000001110011010001100101101011110111111100011010000001111100011100011100111100101100001000111100000101101011010111111111000000101101011111110110101011000100110110010001000001101011101011110011010010111000011100100100000000000000100011000100110100010101000101111101000001000001011100111010100111000101110010011001101101001010111010000010101001110101010110101111010001110110001110100100101000001010001001001100110100000111100101111000101000000000010100001001101100100000011110010110000110010111101000000110110001000110111100011111001001001001001100001011100000010001000001001111001101011001000001011110100010100101001000001000010011111111010000011111100110010101001010011101011001010100111100001111101101001010010111101000011010011101111010110010110111001111010100010010010111100110110110110100000001010111101000101011111100110000001001011110111011110100100010011100001101111010100001011010111101011101110001101000100111100101101100000000001000011000001000111101111111000000110000110010001100101110101100111010100101000111010001111011111001101000001100010101011001000100100000001110101111011001011011100010111110101111000010111000111110110001100101000111001110110001101011000001001000001101110010101010001000011010011001001011000010101101110001000101101100100110110010000100100110010111111001000011000100001110110101001000111100101100100001101110111000110111110100110111000011110000110000001101000101100000100101111111000111011000111101111101011101010010000100011111010111101000101101101001000110111000001 +00001111011011000100111100011110100110001101101101101110110000000100011110101001010111100010110010000011110001011110010000111011100101000010111100111001101000011101000011011110111011110100011100101011100011110001011100000111011110110001001110110101010011101010011011000100111001000110101010010011011111111111101010110110010111001011011111100110100001110111110000100000000101010001001110010001010100101011111111101111100111110111010000100101111100001010000100011011001111011010011100101110011111101001110100101000010100001011100001000000001011101001010010110110011001001001000011000001010011100001000100110110000001101001000000101101000001100011000110101101101111110111101000100011100001111110010000110010010000110011001110110001011001000101101011110001011010001100000001000001010001000111101101101111111001111000110010000111111111110000111101101111001100001110110101001101101010101100110101101001000110011000010011010101111111011101100100110100110111011001010000000001000100000010000111110101001011110100011010000010011101100111010010111110010110010111000111101000110101110110001100011011001111111001111111000010000010010110110100010111000100001010101101100100001011101011111111010000000111011110010001000000001101010101100101010000010111010100010010111010100011001110101110100101011010010111010010101001011111001011100101000001011101111100101001111011101101001110000111000011000010000100010110110100001010011011100110100110000000010101000011001011111110101111001000010110000010110001001101011101000101111100110100011100010100100110110010111100001110001100011101101101100111111111001001000010110010101110110010101001100100011100101001110110100110101010010111000001001001000110111111111000101011100000100010100001011000111011110110011101000011100001110100011100100110001111001101101101000011100010101010010111100100101011010100000001110000110001000101011111100011110000001110011111111101011100011100011110000101101000111011000010001110000011001101000010101001001110100110100110001100011111001110111110110101010101000100110111101011100111001---------101100000111010001011100111111011100110010011110000001011010111101010010101111101010111010110001010110110001010001111101001001100111001100001101010110010100001110101101001101001011100000110010101010011100111010001000001101001011101101010110111001010110011001100010001000111001110101100100101100101011010101010101010010101110100100111110011110001001011100010011000001011101100010110011001100100101000110011011101100010010011111100111110000000110011111000101100001001101111001011001001001000100101101000100010101001000010110010110111000101010001000001011001000010100010000001010011010110101101110010100111001011001010101011001000010001000011111111110110001010110101101100101000111000011000110010010011001001100001011111011000100011100100100100000101100100011101100001011001101011100110110011111101101100100011111100000101100111110100100111001101011011110001111011010000111100011101000001011001101011100110010010010000011001001011001001110101010111111010010101100101000101100101011100100000010101111110111010101101110101110100100101011100101011000101111110111000101110111110111000110000010011101010101001101000111000111110110010110000000101111011010101100100000010010101100001000110110011110001111001100110001110001111010110111001001000100101000001010101110111010101000001011111101001001010001010010010011001101101100011100010000000100001111111100000000011110000011110100111000111110110100101011011110111010111001110001010101101001101111000101010110110000111010001111000001100011000001100001110001000011110010001101100111111111000110101100001100000001001001011101110001101100110110110010010100011110011101000111011111011010110011001100111000011011111111010101001101000101010011100010010110001010001100111000110000101010110111101010000011011111010010100010100011101010100110110000101101101001110000000000101010011010010101001100010101011000110010111110110111111010011100000010010011011001010000100010111100100110001100011110110000111001010101010010111001011111010010010100111001010100111001111010100101010100010011010100011111000001100000001111101010100000111111111100011010101111010001101110110110001000001000101100100000101100110110010010110001001000011010000100010100110110010010000100010010000110000001101110101111111001110111101111000001000110100001001011110010111101110010110101100010011010000101101011000011010100100011001011101101010110101001000111101000110011000011111011011010011001001110001011010111110110010010101110111110100110011101011101111100100101011110111101001001010101111001110101010100111111000011001001110011111011011100101110010010001100111101010000111001011111100011111101001001011000001110010101101010110110110111010100000000010000100111101101000110100001101011000101101100010010001100110100010100101101011111111000110011011101111000111101000010101010010111001001000001101101001000000011010010001101111110101001011000110010001011011000111010000011010110011000000100001000000011110001111101001111101011000000010001001101111010101001000101101011111001100000110001000000101110011101101110010000001101100110101000101101101111001111001001000111000101010100100001011000010101111000010000000101111001011111000100111011000011010111100110010000010011011000111110100100111110111110001010101100111111101000111100100100001001001001000101010101010100000100110100010101010111101110010110000110010001000100001101111011011001111011111000101101101111101100101110110110000000111100001000100101010000001110110110000110010100101010000010100011110111010110000011010110111010111010110111101101000000000111001001011010101001100001001000000001011111001010000111100010001001010101110011011101111101010011100011011001000111010001000111101000010110111110010010111101011100100001100101100110111100011011010001010110010111000111110001011000000001100011111110100001000010001011011001100001000100100110000000010001110000001101101011011010111110100101111101100101001110000100111101110010101001010101010101101011111100110010110001101010111010110001101001101101000010100111011101001100100001111001100101010110110000111001101000101011010001101101001111011001010000001000110110000101001010001111100010011000000111001101111011100100011101100000110010001000110010111011001110100001001110010100011000111111011111100011110111000000101001110110110011101110110101001111000011010010100001100111101000010111011101100011101110010110001000100100100001111001101101111000010111011001010111000011010101000111010010000101000001111001001001010110100010110110000110110001010010110001110111011100010110000100110000011010000111001001011010111011101000100000000001001011011000011101001110000011110000010011100111011000001110110101001000100110100000101100111100110011001010110010101010100100110000100110011010101111100000001000001110011101011110101010110001010010010011101011000010111001111010111011000100000111010000110011010010011111001111111100011010110011001000100100101011011010111101010010000100001011010011111010100100111100100000101000000110100101011010110101101011011100000110001011100010110111111101111001110000011110110001011110001000010110000001101000000010110110000000001000100001111010101100011000010110001001001010101111110010001101111011110011110000111100001100100100001101110101000110111001011110110111110011110000111100001100101000100010101111110010110111110100011101100110101110001111111110000001100001110000110001000001101001001000011000011001100001100110011011000000101110101101101111101001101010001110100101011010011110101000001000111010001110011010110001010110000011011111110111011110100110011111011011000110001011000001101000010111101101100011101110111100010010010000011110110000101100100000100010101101100000000011000101101101111000011110011011000110010010000101100111111011010011000010111010110110100101010110100100011110110101000100011111011100010001011011100110000001101111111011101010111000101000010001000000101011100100101110110100001110111011100101010101001111101111111010010111000011000011000111100100011010001011010110000100101111000111010011101011110110100100100001111010000111010000001011110100110101011010101001100110101100110001001011010110100110001001000100010111000010001100010001111110001111101110000000101110000011101011001010100011001101101001101100100010001111101011011111101001001001010011001010111001001000000001010110001110111101110010111111011011110111111000010010100010001011010001011010101001000110101111001101011001010010000000101100100100111000111001011100010111011011011111111000001001111010001110111010011110011110110110110101110011100111101100101000110111110100101010101111101111010110111001011000111000110000011000001011011100010001101110001011000010110100101100001110100000011001001100110001110001001110001010001000100010111100011001110001100010110000110100100111001111101010001111111001000001010111101011001100101001001010100100101111010111010010011001111100011111000001010100111111001100111100111011001101000011001001000100001010111000111100010011011000001110001101010001001101011001111001010111001101000010101000111111011110101010100000100001011110010110001101010000011101111000011100001111100100011111000011010110001011110011010000010101011101110101010011000001001100011001101010100101011011100110011000000000100010111100111100101100110010011000011101000001010100101110110100110001011010110101111010100110100000011001001010001111100111110111101110001001001001110100000001100110011000010001110000111000101111011100001110010101001101111010011100011000010010011111011101011000101110000110010011001111101001000000100000000100011000100100111100101000111100110110101111000100100000100010100101011000111001010101101011000010111110011100110010110000011100110100111001010010000001010100010101010100100111100111100001001111110110011000111111100110100110001011010001010000001101011111011111100101100111001110011110010011010011001011001101100010100001011100001101101101111110110110000110101000010001001111110011010000010100100110001001110000011111101101011100011001100101100110111101111101110110000100011110011001111000111010111000101010010001010110110110101010110100010111000111010001111111010001110111110010001000100010111011001100101101100000110010010101100100101011001001111100000101100100011111011000110110100111010001000111001011101101010111010101110100100101010111011101011111111010001010100011110001010100110100101000011101000101010010101100001110111101111111110001010101101010000110110100101010001001110011111110011001001010011011010001000000001111011000111010110101001001000011011010111010111111001010101000100000111011010101010010100111011110001110111111100001111000111100110010110110101010011001000110010010110000100100110100110000010001001001111100111100000100111010101111101101011001011100001100101110110101011101010110110000111100110101000111011101001001111111111100110110111111000011010010101111001101000110010100100110110110111001100001001111011110011111011001101011101011110000100110110101101110100000001000010100110110110011000011010010110010110000101010110000101101101101110110011000010111011100001100010111011100110000001101110100000110111001100101010011010111110111111000011110100010001101001001101000100010110110100000110100011101101100110111100111110011010001100000011011100010001110111001010010100010110000101100100001111111111101110110101101011101011000001110011000111100000110001101111011011110111101000101000101101111001011010111101110110110111110101111000100011100001011000100101000000111111101010010101000100010111011011110011100101011001010111010011100111011101011001110010000010111000011110011011011001000101100100110001110001111101110111111011110001011010001011000111101001011000111100101011110101100011010000110101111000000001110000011110001001110111010010100011111101101010011101100001100011100000100101111000011101111110000011001101011100011000100000011111010100000111101010001111101011011111011000000000010000100010001011000001000110000100100111100111001111100011101011111101010101111110001000010101000110111101111000000000111101110100100001110111011110101110111010010011101110011111001000101010111110100001101010011011100111111000001110001001111011001001100010000101111011110010010010000011011111110010110010101000000000100011111001111111100111001010010111101100001100101110100110101000010101001010111111011110100000111001111100101000000111010110010011111001111000111000111010000110000101011001111110101010101011111001010101011010111110011110110101011001000000111000001100010011010000100101100111110011010010011001111000010010101101101010001111001001101000110110010001110100111011101100000010100010101010010000000010100010010000011110101110100001010100100001110100110001111111010001110000001010000001000001011011101100010001000111101101100010101011101001000101110000001000011001110001000110000000110000001011100011111110001010110010101111101010101110111100011000000111101010100001010010110011011000110 +ls3msgs +110110000000001101100--------- +110101101000001001011--------- +000100000010101001011--------- +110100000101101010010--------- +010110100110111000110--------- +111011110100101000110--------- +010000001111001110110--------- +011000011011010110110--------- +101010101100110101100--------- +001100100100100010000--------- +ls3cwds +000000001101100---------011010010011100111100001001100001101111000000010000101010000101011011011011011010111000111011011001110010010101000001100011111 +101000001001011---------010001100100100000000100100000011010001010101000101111101010000100101001011111011000111111111111000001011101110101101010011110 +000010101001011---------011101000110100101111101001111100101000111111110001011011111111101010101010001101101000110010111100110110101000011101000000011 +000101101010010---------110101110001010110100001111001101001111101010000100000100111111111010010010100111100011101100000100101100011101111011000001101 +100110111000110---------101110000000010001111101001110111001011111110010000101100111100100010111111010001111001110100110010111001101101011011010111000 +110100101000110---------110101110101100111100110010110111100001001101100011110001010000100000101011111011100000001110101100011100000010110000001101110 +001111001110110---------111011001001111010111001000001100011010110100101001001100011001110010000001100010111111101100100101110001110110101011011111110 +011011010110110---------001100000110001111001001110101000000001011100000100111101111000011110000011101011101101100110011000001011001000111100011111001 +101100110101100---------111011011010001010101110010101110010011110010010111111001110010111010111100000001001100101110011110010111001000011111110000010 +100100100010000---------110011011110110111110000110100110001101101111001001011001000011111011001110011010010111110000111101001001101011000110010111011 +ls6msgs +010001101011100111011011010010111010100100111011101--------- +001011110000100101010011111010100101011010100011111--------- +011101001111110111010001000111110110011110011100001--------- +110011110101010001100010110001111100110110111110011--------- +001111011110110101111001110101111100110100100000110--------- +001001010110100110000001011100000111111001111100000--------- +001100100110110011101000000100111101100010000111111--------- +001101110101101110100000001111010000110001111100010--------- +111101000100000100110011110100101000111001000111110--------- +101101111001101100111100111111101011111100101100101--------- +ls6cwds +100111011011010010111010100100111011101---------101000011110011100111110110000111110111000101011011111100001110001000101001001101100010000110011101001011100001011010111101101001110010111100100010010011101110111110000111100001100110111100110110100001011110101000101000010101100111001010010100110110110 +100101010011111010100101011010100011111---------101000000101001100110010101010110001100110000010001110110001111000001110111110111110001010000001101101010101101001101010010001000010011010001101101111110101000111111111000101110001000100001101011011010111110110000100010011110100101010011011111010001000 +110111010001000111110110011110011100001---------001001101001001111110110010101011110101101111111011000000101110010101001000111110100011001110001000111100101000100010001110000000111000001001001000010011101010010000011111011010110011101100010100001100010100001100011100100111111111000001110100110111101 +010001100010110001111100110110111110011---------010101100000000010110001110100001001001010011100101001100111101100101000101010001101100001100001001010001111101010011100111010110100000011101000011101111001011010111100101011110111110001101001000001000000011000010101111110001001000100110000101011110111 +110101111001110101111100110100100000110---------111101110000000110010101101110000001001110010111001100100101011011101011100100011100011101010101010100100111110011010000001010010101100100001010010111011110011101001101110101000110110010100110111111100001000010110000110111010001101011101001111111111010 +100110000001011100000111111001111100000---------110111000110000100010110010011110000111011011100100111111111101100110010111001111100101110101010000011001110111111110011101101111110110000110101101101110001110111110101010110101010011000101011010111010111010010111100101100000011111001010101011010111010 +110011101000000100111101100010000111111---------010000010100111001001010011100101010100010000111001101011100000101001110111011110101010011010000001000111111011111110101000011111101100110011111000100001110100011010010001010110010011101011100000111111001000011011000100011110100011000101001111011011011 +101110100000001111010000110001111100010---------111010101111111010001000101101111000011100100011100101101011100010000101011101101010011010011110111101011000110011011100111110101010111100011001100010101011100110011101111000010011100101001110010001000101111001010001110100100101101110000010010000100001 +000100110011110100101000111001000111110---------101111010100111011100110100111010110111001001110110001000011000001000010110100001000111001101000111100011101110101110100001010010111010001000100110000101010010001011100001001101101111111111010100010111000000111011100101111010010010000110111110010100101 +101100111100111111101011111100101100101---------010010100101010001100111111000111100010001010001000000100110010101111101011010001010011111001000110111101111011010110000001101000101101100011101000010110000100010101000010000001001011101010001101011010111011011100011110000101011110111001011011111111101 +ls12msgs +101101100010100111110100011100010011101100111111111100101011001011011011100000011111010101010110001011000000110--------- +011001101001100000010000001101100110010111001110000110010101000010001001100011110111001011000011001000101110000--------- +111010100110010100101001001010000011000001001001110000010001011111101111001010100101001110101100111001011101001--------- +010101110100011100100010010110100010111100010101100110000100100111100100110000010000100010000000011110010011001--------- +001011001111011010000001001011100101011101011111101010100001110010000100001010101011001001000000110011101000111--------- +010110001010110011111000001001110100010010101111001111010111110001000111110100111000101010111111101011110111001--------- +100010111110110110101011100000101100000110011100100110111011000000111100100011100000100111110010011101111010101--------- +000101111100100011111010010010001100101000100110101011100101100000101001100100111010000111001001101000111111000--------- +101111010111010101001001100010111000010011111110010010011010011110011110011001110001100011111011001100000010001--------- +001100101101000111011000001001000110111111010010110100101001100111001111001100100110001000011011001001110100100--------- +ls12cwds +011100010011101100111111111100101011001011011011100000011111010101010110001011000000110---------000010100010010111001101110100001000010001101101010100011011100001101001111111110000111001010000000001110101110010111011101001001100000111001000101000100101110000101101100001010010110100011111000011000011011000110010011000011000011101011101101110100111000001110000010110101000111101001011000100111100001100110111111111000000000100100101100000111101100011110100111000000000111000010001000101010101111001101001100110011010000001110110101000100100011111100111000100010001000110011011111101001010011111111111 +001101100110010111001110000110010101000010001001100011110111001011000011001000101110000---------011001000000101100001101101010000000111110010111011110011101110000101000011100101100001001010110011100110110110111101001100110111010010110101111000110111011000000110000011011100000000000000100000011100011001101001101101100001010011111111010100101000011000000111111011011100010101011100111110000101110000011011100010000000101011101101101100110111100101100000110101101110110111011011011111101110100000100001011001111101011100111101100010011000101011101111100101001010111000101011110101111000111111100001101 +001010000011000001001001110000010001011111101111001010100101001110101100111001011101001---------110011001000100010010001000110110101101000001010100000110010100110001110010101110001100100101001101111111000001111110101000001101011000001011010011100001011110111001011011001000010001110111110011011010111000100000110000000011011110100110101100110100100011011101111000101100000000101111010001011110111001100101001101010001011100111100001011010111100100010100011010110011011000101100000011101111011101100001010010011100001111110111111001001101001110011000001010010110010010001001110001010100000011001100100 +010110100010111100010101100110000100100111100100110000010000100010000000011110010011001---------000000001011100101000100101010100011000111101111000101101111100100101010010001110001101010001111101100111111011010000101101111000100100010101100011001010011100100010100110010011010110100100111100101001101100110111001101100000101100111001010100000000110010011011011100001010111100111111000100000111111000110010010001100110111101001101000110100111110010101000010111111110011111010101111010110011111000001000100100000110001101100100010100111000111011110011001011100111100011101111010111010100111001000011000 +001011100101011101011111101010100001110010000100001010101011001001000000110011101000111---------100011111011110000001101101111011011000110110110100101110010100011111011001001001110011111110011001010101110110010001100000010100111011101011101010011100110101110101010110010010010001101110001100000011110000100101001100110010001010000010010011011010100101011110100111100111010011110001100000001010111011111001001010000100001110100111010111000001101111100001001010100100110001011010011110101110000010011000100111100101000101100010001111000001001101011111010001111100110101101100010010111100111101001100010 +001001110100010010101111001111010111110001000111110100111000101010111111101011110111001---------101010011000110000101110110110001000000110111100001110110001101010100111111001100011100110101010001010000100110101100101001010111110010110010100111101000100100100011001110010100001001100011000111001111101001001110011001000001101110111001001010110100111111011001110111110001101010111111100101110101111101100111001101011110010000111001111110011011000110011001110011010111111000100110110001101010101110010011011000101000110000011010101101111111001101100111100010000010001111110111111000101010010100000001010 +100000101100000110011100100110111011000000111100100011100000100111110010011101111010101---------010001001111000111001101011001011110010100001011011110110010001011011111011011101101001000110001101100100000000001011100001010010100000101111110110110001011101011111001100001000100011011001000011110010000101100010001110111111101010010010110001111110011100111101110100100010010110001000001111110100000010100010000110100110110110011000111111000110010010110001001011110101010100101110011111101110001100100001000111000010001010111111100000011110110110100110110011111011001100000101110100111001110001010010010 +010010001100101000100110101011100101100000101001100100111010000111001001101000111111000---------110000101100111011001010001001011000111101100000101111001011110101010101000110010010100101110101001001000100101110111101110011101110011011010011110111110101001101101110001010101011100010101000010000000001110000101110010111010011001011010000111110111010110101010010001001001011010011010001101101111011101100101010110111010100101011100001011001110101100101000101111000010111101001010111001111111010001010111001000010101001111101110010001111111000100000100010011110001001100110101101000001001001110111011111 +100010111000010011111110010010011010011110011110011001110001100011111011001100000010001---------001100111000101011000010111101010001001010100001011010100111100111010000011010010001100010001001101001010010101000100001111010011011100010010010001110110100101110101100010011111011101100100100100100000000011111001111011110001000111110011000100011111001011000100010001011011100111011000011010000110000001110001001111010001100001000011011011100001000110000010111111011000111000011001110111110010000111011101001101110111100000001100110100000000100011011100101000011000101010001101011110101001100111110110100 +001001000110111111010010110100101001100111001111001100100110001000011011001001110100100---------011011111010001110110011011110110100011001001001001000101010011111011011111101111001110110100010000011000110110001010100100011110000001110100001001011100011100111110001011000000011110010010111100100011110000011101111111001000110010000110110000110100100100011111011110001111111011101100111101100100000010101011100011011011001101000000001101110001000100110001110110100000111011111100101101000111110101011100011101100011001101100110100110100100100100101000110101011111010000010001000010011011101101010111101 +ls24msgs +101010000110110100000101101100010101011110011110100000011111001100110111011000010011111100010110000101000000000010010100111110100010110000001101110101101101001100111110011011111100101010101000100111101110010111011000110000001000011--------- +011010100111010100110100001001000110000100100111110001011010100110001011010010110001101101111000011010100001001001011000010010100001000000010010100111011010110001001101111000001101100111001010111101111011100111010011000010000101100--------- +101011101101000000001001000011000000011111111100000110000101100010111001110000101100110010110001101001001100111101101011110011110111101000110010111100100110011101110001100111011010001101110000110010011110111011111001000101111110001--------- +001011011000100010000101011110101010011000111011010100110110110011101000100111001111101001101000101010110001111100010011111100100101111100100110110110001011000000110000101100010001011110000000010010000010100111100100010010000011111--------- +111110111001010110010110101001110100111111100110001011110001011000010001011100010010101000101110101011101101110100011110101111000011010101111011011010010101000100010100001000001110111000010010101010100110011111001001110101100110101--------- +110011011101001100011100011101101001001101001010111001101010100100001111011100101100000000000110001001111010000011110111110010001010010000000101101010011100011010001010110111111100110010100110011000111100101001000101001010000011111--------- +011001100111100111101000110110000100001100111011011101101000000111110010111000000111111101011001110010000100001010101110000000110000010010000010011010111110101011101111111100111011000110100010101000000010000011100110001011111011001--------- +011010001100111001001110111001000101110000101110000100001001000010000101011000000101110011000010000001111001100111000001010101000010101010101101110010000011111111010001111100010010111101000110000011110011011101001001101111011100000--------- +110111100100111110000010111110010000110001011000011100010000001101110011010010001011100110101110001101000111000011101111111101100011111001110101100110000001110110111110111000000110100101001110001010111000000110001111101110001011010--------- +000110010001101000111001101000011010110101100100111111110110111101000001010100011100111001111110100110001111100110001110100010010011011100000110111001111010000011111001011110110100011000000111011111011100111100101111010001001011110--------- +ls24cwds +100000011111001100110111011000010011111100010110000101000000000010010100111110100010110000001101110101101101001100111110011011111100101010101000100111101110010111011000110000001000011---------000010001000000110001101101010111001111001111000010011011101111011100001111111011001101111011011000111101111110001101010110010100110110111010100000000001010010010001001110100010100101000001100000110001010111111101011001010110000001110101000011101101010110110111011101001010001011011000100111100001011101000010101101010111000101111011100100010101010000101100010101000001111001111000111000111100100000100111011010100011111001101010111101110011001110010101011110101100000001101110111001110110000101000111100000011011011010110011100111101000010011000000001100011001001100011101000000000010000001111010000000010100100100000100001011110001101111100011001011011011100111000101111110011011011100100010011011010010100001000011010010010110110111010011001011111001101001110011010001111101100110011000001001011010110010111001000000011011101110111110111110001011010011110000011000101100110101101101010111111000100110011101110010001010000101001110110101000100100100111000111001010100001111101011010011110110011000010110001 +110001011010100110001011010010110001101101111000011010100001001001011000010010100001000000010010100111011010110001001101111000001101100111001010111101111011100111010011000010000101100---------111111111000111110101000011100010001000011010101101111111000000111101101110110000100001001011100110110011110101100000110100110100110110110101010000001101001010001101011110010101111101111001111010100100110100010111011110010011000011111010010101000100111001111001010110001000100101010010101000111000101101011010111101000000100000110100110000101101010100000010010101100110111001001110110101001001001010100101001101011010001000010011100000000101000110011000001101100101100111111010101001011001011010111010010100111001010011010100111001010001101111010101110001011111100101101100110000110101101011011001011110001000000110010100100010000001000000100101000010011000010101100000011010001101110101010001111111111011100111010111001110100000111110000000101010000100000000001001010100110000010101111101110010011100001100010111000011010001011000001110110110010111010101010110111100000110100100010100001110101000011000110011101010001100011111101010110000100100011101111010100010011110100000000001100001001100101011100001101 +000110000101100010111001110000101100110010110001101001001100111101101011110011110111101000110010111100100110011101110001100111011010001101110000110010011110111011111001000101111110001---------000101110111101101101001101111010111100001011111011100110000101011001001111101011111101100001001001100011100010000001110000000000001101001100011001001101010101010001111000110001011011000101100011000100111110010001110000111001011001101011101001000010001111110101111110011010111010001001011000001001010001001111110110101111110111100011111001001001111100100110000110111101101100111000111110111001010101110011010101010101011001100111110100110000000111111100000000001101000011111010011110111011011010000100011101110011110011011100110010001010100101111101110000010111110101100010001010011100110011011010011011011000011010101000111110011011010001110000101101000011001100100010000100100001111011111100001110101010010001000101010110010001010010010011010101101111101001111000111111010000100111000110111010011110011100101101011011111110000110010001100110011001100010100011010000001110111000101011101100100001010011000010101001011011000011110110000000101110100000100111101101110001011101111101111010110001101110101010000 +010100110110110011101000100111001111101001101000101010110001111100010011111100100101111100100110110110001011000000110000101100010001011110000000010010000010100111100100010010000011111---------011010110101010011000011101001010010100100110001011111110010111010110111010110010010100110001110011000100011011001011100110000111010100100011000110011101000111010001011110110111001101110111111101110110111110011010000000101100011011100001000110001010100011000010001001010100010110100100011010001111010111100110111110101101011111001000111101010111001010101010111011000010000111001101000010011100001000001111001011011100011111110101111000101001111111111110100100000111100100010011011000110100111010110011110011101101001111011011001100000010110010011100110110000010001110000011011010101110100011000110001011110111111101011110100111001010110100111010010101001101000001001010101010110001101111100011110000001100001110101011100000000001000111101100010101100011001011111100010101110011000101001110111000000110010010000100011011101001001101111001001101101001010000110010100001010010011101100100001000011001010101001000110001001010110111010011111100000001101010011111111011000101010011000111111011010011011100011110000 +001011110001011000010001011100010010101000101110101011101101110100011110101111000011010101111011011010010101000100010100001000001110111000010010101010100110011111001001110101100110101---------000110000111011111100101000100111000010000111101011000010101100001011100100100110010011011101001000101100010110110101110101110011101001111111010000011111100100000000111100110111010101010101100010011110110101011111101110100101010000001101101111101111110010000011100101101101011111001100011000111001001111001111110010001000101001100010000110000011000011110001010100101010100111101000101011001011011101010010001011110011101111001010001100001111001000011001000101100101001011101010110110111110101000110010110110011011010001010010000100110110001010111101100000000111101110100011001110101010101110111100111101010001111010000011101110111000010010100111000011011111000111100101100000111010111000100001001010110001110001101011111100111100001100100010101011101101110010010010011110101001101011010110101110100100000110110010100101011001001001100101111011001100000111011110001111111111001101111110010011011111101011111000111101000000011011010100101100011101110100001111110011110001011100101100011011000110001001111010011 +111001101010100100001111011100101100000000000110001001111010000011110111110010001010010000000101101010011100011010001010110111111100110010100110011000111100101001000101001010000011111---------100001100011000010011100001010001011001100111111001000111110101011100110011110111110100101101010000000011111100111010000100111100100011111101000011010010010110100000101001100111000110001010101010001000011011000110110001110001001001001011000010111010001011111010111000101001100100111100010111100101001101000001100100001010001111000110011010011110000110000010100111001001110000001111000101000001000110010101010101010100000100001111111101101010110011011001111011011000110000100011001000100011010111000000010110101010110010001000000110011011111100111001010101010011011110110000101100000001010101001010111001000001010111011100011111010101011011010111101010011101001010001001100110100101111001110000011001010010111110000110101101101000111010001101000010110110011111111111010010110011000111011000000111110101110101000010111111110010000100001100000001010110000001100100110101100000001001101010001111001110010010111111011101011001000100101000010100001100001101111011000100000111011110010001001110101010110101000111100 +011101101000000111110010111000000111111101011001110010000100001010101110000000110000010010000010011010111110101011101111111100111011000110100010101000000010000011100110001011111011001---------000001100000000000010101100111000000100010001111111000000001000101010101110000101011111011011011100001100110010011110100011100011000011011010010001110000000001010100011000010101011100011110001111111101101101101010100100000100110101111001111011011011001100001111111010000010011110001111101111001011001111100101010001100110000111000011100001010011010110001000101100111011111101110100110111010111100001001101011110110100011111000010001111001111100111001010101000010011001000011110101110000001111010110001101111100110110101001101001110101011001101100010100001100000101101111000111110011010011110101001111010011001010111110101101000001011000000111001011100100110101111110001110000011000010111100001100001001111000100100011011111011011001001111111110110010001110001010110001001100011100010001000110101000111100011011110011000000000010101011100111101101000001010001011101010000101100110001100000010111011100110100100001010101101111111010100110001101000100101111000110100111100100010011111101110010001010000100011111 +000100001001000010000101011000000101110011000010000001111001100111000001010101000010101010101101110010000011111111010001111100010010111101000110000011110011011101001001101111011100000---------001001100101011110101010101010001100011011011100101001000011011000110100100110101110001000101111111000010110010101100000111110001010100100010110111111000000001011010011010100110100100101011100000101010001000000111100011111100110110000010001010011101010011000111001010110011110001011011000011011011001110011110000000001101110100110110010111011001110001011011111101111100010011010011110110011011000001100000000001000011001100000111001100010100001110010011010111110000000101010110110111100000101101101001100001011101011111010001111111001110100110110010011101000111011010011100010001010100000111011110110011001111001110010011100111110111000111111010100010001111101100001110011101011111011010111101110000100011001010100000000011010001101000100000111010010010110100111001001101001110000001110110100101111010101111100111011010101110101100100101011010101000111001011101101010111010110001100001111100001000101001100000111111111011000100101011000010101010001111110010011100010011100010010101011010110100111110101010001 +011100010000001101110011010010001011100110101110001101000111000011101111111101100011111001110101100110000001110110111110111000000110100101001110001010111000000110001111101110001011010---------101000000011000001100001011000111110010010001001110000100100010000011100100100110010101111000100010001101110111111001101010101110100110100111110001111101111100101010000001001011101011111010011110011011100110000110100110110010101001011011000110100001101110110001010001000111001011000101000110000010010000010101100101101011010011110110111011010010010101011000010110101000010011000100111000111000000111001000001101101010011010010001110101101000000110011001011010110111111010101001011010001000011000111000110000101000000010100000010100111111010011111110010101011101000011001101101000100000110000000010101111001010000111000111110010111001101010011001101010001111011011110010101011100011100010111100010001111101101111101110010001110100100000011111101100001001100110111010101111111111101110010011010001001110101000101110111111111011000000011101101011100011111001010110011101111001000001110000110100110011101011001001111100000100100110001001001010001110001111001110010001001100010110111100111100111111100111000000010 +111111110110111101000001010100011100111001111110100110001111100110001110100010010011011100000110111001111010000011111001011110110100011000000111011111011100111100101111010001001011110---------110111001010100001000111111001111111000001011001101010000001001100101100101001011001100110101001011000011010010010010111100100010110011110011101001110000001111011000101100111101110000110010110011111010000000101111111101001101111111101011001101100010010010000100000001001000010101111111110111110101010011000100110000101111000010101100010001011010011011110010011010100101100110000111000110010100000101110110100111110011100101100001101110100101000101110010000011111100001111100011011110010111011011010011010111011011001100001010000101111001110111011001001101100111110101110010100100001111110111100101001111100100000010110100111001111011010111100010001000100111001111101101011000000011010001111101000100100110111011110110101001010110001010101010110100110110000110110000011110011011100011100111110110001010101001001001111100111111000010000101010010101001011101001100010011010001000110010010000110001000010111101000111001101000011010101001000011001010000110110100011101110001011001011010111100100110111011000011110 +ls48msgs +100001111111010010001010111000110010100001111010111111110101000111101110101011100101111101100101011100111101001001101100001110110011001101010101101011010000110011100010101001011111010001111010011111010110000000011010111010011011100110001111101011001010010010010100010100110000010100111010000100010010110001101100111111000001111111011010010100001010111101111101111010110100011101110011100001111101000010001111011100011010000110101011001110101000110100100001010111111000011--------- +100001101101010001001100011110110000111000111100111011011100011000100100100010001000010111001010010000101010001010111001000001010101100100111111011100010000010100001111101100101001000101010110110001000010001110111001011001011100101101101100000000111111101111100111101000011101111010000101110110011010001010011100100100110110110101000011110111110010110001101111101111011101110111001011101000010011011111011001010111001000111100000110111110101100011101001010010011100000110--------- +000101011110110000010101101100100100000110001000100010111010101101100111001110001100111011110011011110110101000110000011011101001110001110011100111010010001011111010110011111001101001110011100010001010011011000110010101111110111101000010000000100000010101111101110101101010011101010001000011001000101100101010110100100000001111111100111001110001101010101000000000101001101011100111110110010101001110100011011111000110011000101000001011100110101101111100111011110110101011--------- +110111111100001101110010011100110100010111100111011100000101101001001110101010000011101101101110110001100111111000011000110001110011000000010000010100011011110000011011001111001110101001010000111001010010001011110001110110110110000111000010011000011101101010000010100010010111100000110000001110011111111101011111011001100000101111111000111100000011001001100110100111101100001111111010101000010110000011110001100001100100111000010001110100100011001011011001011101110000110--------- +101110010000010001100001100010111011001000010000010010001101111101010010011011100100110101000111010010001111001100101110000010011000111101000010001000010011010000101111010010110111001111000111010110000111001100111000100101001110111100110111001100110101001010010010101010111111000111110001011101000001011001101101000101011010111110000111010011001100011011010110011000100110001110000110011000011101010101000110000100001110011010010001101011101011010011101111001010101011100--------- +101010100111011000100001001000110011010011010111011110100010001110010010000001011001000110100011111001100001011000011000111110001110011010011100000111011111001011101000000111011000011001011001000110111100101000001101011111110100100000001011000010001011011110111001010110001000011101011010000000101001100100011101010110010011000001110100100101010011101010111001110011001100111001000111010000001010011110000000110000111011111001000001010111000011001000010110110001101010000--------- +011011010010010110010010000011111011001110110011000110101100001001111111011101100101011101010110000001111000101100100011100111001000100011010111110110111011100010101101100011011000100111001010100010001111110001111011000011111010100000110010000000011101100010000010011101110111010001100100100100101111010110100101100110111000001011010011011011111010011010000001110100101100011110111110000111011110100111010000011011111101100011100010010010000101010100110101110010110010101--------- +001100110010000001011110101011100010011110010010100111110001100001101101110101000001100010111100010000110111110100010010000100011111100101111011010101101101110100010110000111110111001011001110101011010001001101010010000110010001110011110000101011100010100100100100010001110111100001101111011110010100000100111000111110101000110001101111010001110111100111100101101001000100010001101111001001001100000111100000111111000111110100111011110001011000111000110100111010110010011--------- +000100110010111111001101111110101010111000110011110001111101000111111001111100101101011010011111010011000000011101100000011111111000111011001011010100100011100101110100111110010001011110111001111010001001101011000100111110100000000001011110111000101010000101001101101100101100111111111111110010011111110100111100010010110010010101010101100001001110010000010011100101011001011110111000000010011011010100011100111100111010000100000000000000000011011001010101100010101100011--------- +111001000000000011111101101101011111001110110110100001111010110111000011001010110010010110001111010001101000010000100110111111101000000100111001101111001001100110101011010111010011101110110111101110101101011110010001011011100110001111100011101111101010111100101110101000110010110111000011101111010010000000000000110001001010011111101010011011100110101100011011010111010001000011110011111111001010010111011001100110001000011010010110101111111101101011001000000100010001010--------- +ls48cwds +011100111101001001101100001110110011001101010101101011010000110011100010101001011111010001111010011111010110000000011010111010011011100110001111101011001010010010010100010100110000010100111010000100010010110001101100111111000001111111011010010100001010111101111101111010110100011101110011100001111101000010001111011100011010000110101011001110101000110100100001010111111000011---------010100000101100111101011101100001101011011011111011001101101000001111101000001110100111000100111111110011001110111110010110000011111011011110100010010100000010111001010101000000010111010011110101100111001000100000001101000001011110010010000000010100111011111001010101110100111010100001101101000101011010000001010110110100101100111101110010110010010000110001110111100000110110010000011100011101010111100000110001010001101110110100000011110010111001100001010011010110111110001000000110000000100100110011111001011001000110111101110111010111101101011111110001100110000111111101011011001001011011000001110110100101101001010010110011000010101001000110011001110101001011111011111101111111001110110111101101101010011101110110101110001111010010000100001011001110010110101101010010111111000110101000011001001110110111110101010100101011010111110110100011011101101111001101101011101010010111100110010010101101010101111111001110110110110110111000110011101101010011001100111010001100101000101100110010110001011111110001011000101001000100011010010000101010100011101101000110101111100001100110101111011001100000001001001100110101101001010000101101100001100000111111111010111001111100000100100000111010011101111111101110110101001111000110110000010011111000110011101100110100100100011100100000100100110011001100100101111101111010011000010011001000100001000101011110011101000111101111010011110011100100100000110000101110110101110111001000000000101101100111101001011101011010010011000010101010100111111010001011110100011010100001100010110101110110000000101110001101011111111000001101001000110011110100101101100011001000100011010110100000000101110101100110101000100110010100001001011001001000001111111000001010101110100100011111000111111010110010001100000100111101100100101110101001111111001011011110011001010010100101110001111111001001101001010011111011010000111000011110111011010010000111010000111000010111000011000010001100101001001001000011100110110101011101111110111010000000000010101101011110001010100101000000100100001000000010100 +010000101010001010111001000001010101100100111111011100010000010100001111101100101001000101010110110001000010001110111001011001011100101101101100000000111111101111100111101000011101111010000101110110011010001010011100100100110110110101000011110111110010110001101111101111011101110111001011101000010011011111011001010111001000111100000110111110101100011101001010010011100000110---------010110111111001011110100011111100100100001010000100101010001101100111000000100111001100110001011111111110011000101111001000001000110111111111011010100011001001110011011110100010111010110101101001010100010100001100101100100101010101111011100111101001000000001100011010010000111101110111110110000001001101111000111101010110101001000111011000100000111111100010110100111011010010011101101000011011001101111111001111101010011111101100101101111101010111100001100001001011110101101011110101100100101101011111011110111111001101011000001011111101010000100111011010010001111011001110010111100101001011011011110001010000100101011000000100100010111100110100111101001000111011011101010110111000110011111100010101110010010100101101101100011101001100011101101110101100011000010011010010000011011100111110100111110110010011000100011101000111110001100000101110110111010111101010111011011010111011101101110000001011100101110111100010101011100000100010000001011111101010110110011110010010000000000110000100000101110110111100110000100001000011110011100001101101111000011101000011000101010001111001100111110110100111110010110100001010101000001011110101010111111000111111101011111011000011101110111001110111010011001100011011001001110000101011001001011110001111010111011011100101000001000100001011000011110100101111111000011001010110001001111110010101010101101001100110111110111110101011011001001110010101100111111011000011101010101010101010101101010100111110010110111110100101100001101111010010110101011110001001010111110011110010001000000100110000000111000111010100010011100010011011011011011110011010001001010100111000011011011001101000000011011111110100001111000110101111001111000101010111010011110011101011111010011000000011100010011000100100011010100000011011111010100110111011000011010000111101100001101110111010110100101110100001000100001010001000001101111000010100010011110110001101011001011101001010101110011100101100110110111100100000110000111010011011101100001001001000111100010001000000100001111001101001100111101010110000111 +011110110101000110000011011101001110001110011100111010010001011111010110011111001101001110011100010001010011011000110010101111110111101000010000000100000010101111101110101101010011101010001000011001000101100101010110100100000001111111100111001110001101010101000000000101001101011100111110110010101001110100011011111000110011000101000001011100110101101111100111011110110101011---------101000111110100101111110000111011010110111001000010111010111100111101000111111011101011110100000110101011111000010101100101110101000001011101000010001101111101100010011011110100011011000111100111010111000111001001101100101000111110010010110011010001101111010111111011111010110110011010001110010011010110000100011011000000101101011111000110100111010000001000101111001110111100000001110010100100000111101100100011001010111100100001001010101110011010100110110011100001001000011101100111000101001100101010010010101101101011010010010100110111100100010110101111000110101000000000100001010111010000011000001110000010000010011111111011001101000010110000001111010001000111000101010000110011010101011001011101011001101001111101011010010110110101001110100100101101101111011001110101010010101000100001101000110001111100110001010000011001010100110100010101110110000110110010010101110000011011101000100010101000000010100010000111010011001100110111110010001100100100101010010101110010110100100101100010101111111111001101111100000011100011100011100100111011011100010010100110001101001010011011000011101101000001101110001010111110111100101111011101010010010001000100111111110001001111101010101000111101000010110011110110101000001101011010011101101000100110101001100010110000000100000110100010000001110100000001110011001110110111110000011011000001011101110010111101110101011001101000101001111001111110010011111011000000001001001100100010000101000111100010111000011011110101000110010100010100000001001010011101101011000001111001000110111011001101111010001011010100001101011101110001010100111100011010101000011011011000100111111000110111111110101110111111111001101011100001010001111110001111110101100001100100011100100000100000110101010110000111010100111110001111001010010101110010100001100010110101000100000101001011110010100100100101000001000111011011001000110011010000101000100001001101100100100000000011101111010111001111001100011010111011110001110000011100110111111011011110011111010110101100010001110111110001000010011011001000011 +110001100111111000011000110001110011000000010000010100011011110000011011001111001110101001010000111001010010001011110001110110110110000111000010011000011101101010000010100010010111100000110000001110011111111101011111011001100000101111111000111100000011001001100110100111101100001111111010101000010110000011110001100001100100111000010001110100100011001011011001011101110000110---------010111110101000100110001100011100000101110011010111100000110011000000111011000011010101010010100010011001101101011111110001111011100000110111110001100111010000100010101000110111001101001001111111001101111101011000000000100100110101010100100110010111010000011111110011011010110010111000110101111100110000110101010101010110011010101100001000111000010011010001011010011011111001101100001111011000010000110011111101010100101100000000011111111000100000110010010111100011011110100011111100110110111100110100101111101100001000011110110101011011011000010100011010011110001010011011111100011010011010010100011000101000110111011010100100011101000000010110010001001101010011001101101111010000010101010100101100110100110110011001101111010101101101010111011011111001101110101011100000110110111110001111011111111110001101011111100001011011010011101011010110011100011011100100100010111001010010001001101111011001000001111100111101001110001000001000100100101001001101001100111000100011000001101001000011010001101000110101110111000011001101001101010011101010001111000110011100011010110001000111010100101000000010010101000101010010011000011100011010101011110110001011101111111101101101010010100111100110101100110110000101010101101011101101000010000100101001111101100000101110100000010001110100010010111001000100010000001100100010001000100001110101101110000001111001011110001010101110011111101011010111100101110001111110010101000010010111111000011110110110101100111001100010100101011110001101000000011100010111011001011101101001001100011110101111100100111011110001000010011110110001100111000111011100000111001111000100000100110011111101110100000101101111110101001000111011011111010010110000100001111001010101000101010111110110110100000000100110101101000101000100001000111111001110100011100011101101111100110110001110011111101101011101101001100011001111011111111000000110000001001100000010110011100011010101100010110111010110111110111001001000111100101110011000001101111010100011110010001000011111110010100101011010101001000110001000101 +010010001111001100101110000010011000111101000010001000010011010000101111010010110111001111000111010110000111001100111000100101001110111100110111001100110101001010010010101010111111000111110001011101000001011001101101000101011010111110000111010011001100011011010110011000100110001110000110011000011101010101000110000100001110011010010001101011101011010011101111001010101011100---------111111001100101011000001011110000000001111110110100111111110100110011101001110100111110011000101000001111000110001000101011011110011111100001000100111111100110000001010100111000110010010010111011111010001111110111110011001110100101010001111110011101000011111101000011101001010100110110010001000111000111100001010110011000000111000010001011010100110100100101010110000101011001001000011011101010011101010111010110000110111111011001011100100110010110110000011111111010001000011000110011101010101100010110100001001101111111101111111010010001111011010001110010111010010001000000110000010110110101100111001101001100111010110100001001010000011001000000001010000010100110111101001001001011011010100110111111010000100000000110010100000011000110000011111001000111101010001010111111101000000010111111001000001100111001111000001101100010100100001000100111111100011001001000000110101000100111011100001011101010101011111110100101000001011001011010011101111101001010000011101010100001111110010011101100100101001010100010111101010111001101011100010000101000100101001001000101010011101011000110100111011000111100111010001011110011110011100101010100101100110100011000000010110001010010010011100110010101011000110110110010000100101111010110010000101110001110000010000001010000000010010111001101000000101010011010001010100100110100101110001100011111011011001000001101001110110011001100111010000000100000100111111011010010100101100110010111010101001111010100111001110110100011110100001000100010000111100101001001101110110100011001101000011010101101000010000111110010100011101000101101001111110011010010000010111010011110011100001101100110000000101100001110010001111101111011110011100010111111100010011010011000111001001001000100111110011111000011010111001110111110100111100100001101011001010111110010011001001010001010110101111100010101001001110000110101100011110111111010000110100000101001100001101111100111010011110001000100000000001101011011110110111111111100000011001001110100010100010011101100110000001100001010001101100101101011101 +111001100001011000011000111110001110011010011100000111011111001011101000000111011000011001011001000110111100101000001101011111110100100000001011000010001011011110111001010110001000011101011010000000101001100100011101010110010011000001110100100101010011101010111001110011001100111001000111010000001010011110000000110000111011111001000001010111000011001000010110110001101010000---------111111110101001100000100011110010101110000101101100111101111011001001011011100000110100010001100100111100000001001110010010100011111011110000011111011010011101001110011010111100011000100100101001110000110001111001001100111000011000100000111000011101001100111011111101010001011100110000001101011100111010101101000011100110001111000100010000010110100001010001111001101000101111010010111110010111101101100001100110000111001011011110010010001001100001011100000000010111110101001100010100101110111110010011101111110110101110000010111000011000100100101101110001000101111111111000010010000000101100011001111100011101101011011110100110000110101111001100001010001010101001101101110001100101001110000001000101001111100000001000001010000010001011011011110100000001100111000101011101001011010001100100101000010110000100101110011001001001100100010111101110000000111110010001110000111011010000000100000101110111010001001000010011001010010101110010111010110011001011100011010111101000010001100111110011100100100001101100100100000011111010101001111111001100101110011111100010000010011100010010101101110011100101111110111010010101001100000101100110001010001101001100101010100100010100111011001001010011110010010011010110111100101111000101111011001010111000001101101011011010110100111001110001000010000001100100101001100010111010011100100111111101010101000000101110101011001111101000001100110000100110001010110100100101011011001011101001000111101110100001001010001111011111010100100100101111001101000011111101010011101100000000111100110000110010011010110000111100110000000010000111000100111010000111111111110001110001010100101101111000011110011100010001011101010100000101010010110000111111001010100110001011111110101111010110011110101000100011110011111100101110011001101011100110100100011010110100111010010110100011100111111011011011010000100011001100101011010011100101001101001011101111110000101011101001100110100011000001111110101101010000010011101111000111111101111010100100001011010111011100111011100111010111001111110100111110000 +000001111000101100100011100111001000100011010111110110111011100010101101100011011000100111001010100010001111110001111011000011111010100000110010000000011101100010000010011101110111010001100100100100101111010110100101100110111000001011010011011011111010011010000001110100101100011110111110000111011110100111010000011011111101100011100010010010000101010100110101110010110010101---------110100001001010111111000111000011110101101001010001001111000100010100010111000101000010011000001101110101101111111110001101001000110010010111110000101111000011110001011001110100011000010001011100001100111011011001111111101110011100000110011111110010011101000011100011111100001110011010110100011001001111010101100011101001001111000111011001011110110100011000010010010011110010100001101100000011000100010011101001110010100011101000001011011011111000100001010111000100110100101010110011100100110011110100010000000100000101111111100100000011110010111111111111011111101111101011000101101010110110101100000101010000000001100101110000110010011110100101010110011000100101000010100100110001101001100010010001010000010011001010010110101010000100110000001100000101111111111010110011011100011101001010001011110100001101100100000000000101101111000001011110001011100011100010000111010110011010001010000110111000011101111000101100100011010110100101001100001111011100111100000111110110101000101010001101000111111010010100111000001111110000101111100110110100011100110101111100011111101011101001100101010010010000101010111111001000001001010010001110111100001010011100100111101100000101010100011100011100011101111001111001000110100101000111110110000011100110101100110000111101010000100101001011110001010000111001101110110010001111110010001101101111101001011111000001110110010111111110101111011001110101111011000100100101001110010111100100010011100101010110001010100011101110011011100110100000110000010001010001111101101000111010111111011001010010010011100000000001111110001101100010100000011000101000101010100001101011011001010110111011010000001111100010001111011100010111011000100111110000001110001001001010110000100001000110111101010011010111000100100011110100001010001001000001011101010100000011100010001111110011001011111001101100110100000110100001100001010111111001001010110010001010101101010011010000100000000111000001001011000101111001100111000011101000101010001101000000100111011101100000111110011101000010001001001101011001000 +010000110111110100010010000100011111100101111011010101101101110100010110000111110111001011001110101011010001001101010010000110010001110011110000101011100010100100100100010001110111100001101111011110010100000100111000111110101000110001101111010001110111100111100101101001000100010001101111001001001100000111100000111111000111110100111011110001011000111000110100111010110010011---------001101101101101000011101111111011100010111110000100100100010101111100100100100000010010011000000111111100011011110001111100100000101101000010110111011000000010100011000111001011000111011001011111110101101110101110010000010100011110101111011000100000011111101000010111101101001101001101011100010011101011011101100011100100101000000001011001111110101101111010111100111011100000000001101111010010000000001011011111100010001100011110010111000010101011001111001011110111110000011010001010100111010010111100100101111100011101110111100000011100000011000001010001000101011100001100010110010111011000010101111110100110000000011000100001101011110110110111010010010110100010000111011000001010010101100110000011101111000110111011001101011011001110110111111100011001110000001001000111111011001011101001000110011100011010111111111111000101110001111110101101001110011011111001111110010010101110011000110101100001011001001011011110100101101100100000101011101100001101111000011011111000000000111001010001001100001001001011011111100100110010000100000110011011101011000110010111010101001000010101010110101100110011000110010111001011111101110011101111110000111001100100111111000011110100011000011111010010100011000001110110011101000101100000110001000000000000111010110100011001011101101110000100111110100010010101110011101010010101110110100111110011111100010100100101110110111011010111100001101000100111010000001101100111001100110110000000001011101011011101110010011001100001011010111110000001000010110011011011011101111100001000001000100001101000110000111010011110010011111000001010100000111100100100011101111010001101000010111110010101110001101011111001000010101000111100010111001111010101000110101011111101111100100101001110001010000001001101101011100111101011110010001100001110001101010001010011110010110001100101101010000010011001111001010101110111101000100101011000111101110001110100110011011111000111101011100111111111011001101001010101010010100101010010000100011000101110000111111010100100001100001001111010100001111101100010001 +010011000000011101100000011111111000111011001011010100100011100101110100111110010001011110111001111010001001101011000100111110100000000001011110111000101010000101001101101100101100111111111111110010011111110100111100010010110010010101010101100001001110010000010011100101011001011110111000000010011011010100011100111100111010000100000000000000000011011001010101100010101100011---------100100100001000011100011010111111011101111001111111100111100101010010010101000000011011101110101000111001011001011111011100000101100111111110000011101111101011011110010010110010010001101101111001101110001101011110010011101010011101001111110010000101010011100011100101001101000011101011110100110011001001001101010010110101110000010110101011100111100111100000100011111101111101011100010101100001110010110101001111110101100111110010001011111111001101010001001110000000010010101010010111100110001111001001011100011000000001110011001110011000011010000110110100101101011110000111100001100010011000111000111110110000111010000000010111000101100010011110101011110100111000101111001000110111001000000010100010010011000011000100101110000001110111011011001010000111101111010110100100000101001100011000010001010010001111011010111000111101000000011101010100010111011011010110010100100100011101010101001000110111101101000100100110011100001110101010110111000111111111000110111111000001101001111111100000110000010100101101011101110111111011001001010011001110101001010101011010111110101101101101110000001001001000110101011101000000011001111000010001111001001010111110110111111001011101111001101011000111110101000011011110101000011110000000110010000110000000111101111010001100110011010000101110001001111100000111110101100000001001000001100011110111000110011011110011111100100010110011111011101101111001100110000011110101000101010101011001100010001010111111110100000101010110010110011111011001000001101100010010110100000001001110010010010011110111100110111101101010111100100011111110100110001100100101101010010011000100100000111011010000001001001110101101001010000001111001001001101101111100111000111111011111011000110000100011000000100001011011011101000001011001010111011111100101010101001110011111010000100010111111001111101110001001011011011010001011010100000000000110100000110110100000001011111000001101010110010011000011000110010100110000101100110001111011001011000101010011110000001110001110000001100010101100001100001010000110011 +010001101000010000100110111111101000000100111001101111001001100110101011010111010011101110110111101110101101011110010001011011100110001111100011101111101010111100101110101000110010110111000011101111010010000000000000110001001010011111101010011011100110101100011011010111010001000011110011111111001010010111011001100110001000011010010110101111111101101011001000000100010001010---------100100100110100010001100110110111011100001111100100000000001100111101101101000011010001111100000000011100110101111111101111011100011100100001100101001000110111111101011111110111101100110101110001011010001100110011000111110011000101001000101001011010011110100001111010010111000111100101000101001010000001100000110111101010100111100100011011001000110010010110110011100010011010100000000110011000100100001100000011000011110011101000001101011011001000111100011010110010100010001001100011111011011011011001011110001100111111110010001001111111111111110010101001001010010010000101111111111110011110111101110100101010011011011100100011001101111000110000101000110011000100000110110110000111001101001100111101101100101010100101100110110101111001111100111011000111101001001111000111000100110110010011100101011101101101100001010100010000111100000010000011101010011010001111111010010000000101011110100000010000110100101011101101101010010010111011011010001011011111000100000011100111010111001110111010000010110101001101000000000110010001100001101010100010001001100110011010110101111000000110111000100000110100101001000001100010100111001100110111101011001101000111111101000111011110100000010011100100000011110011110000010001110010110100111110000010110101110010011110100010000001010100101000111010111011101111100111101001111111011011001111010110100010011011000011110101001101111100000110000111110011100011100000111011011000110111011001010101100110010101111011111100100001000010001001101001000010101010101110100100000100010100011110010001001001111010011011011111001110010010001001110100000010000110110111000111100110010011101010101101000001010100001001100101101000101111101110011010000111000101100000100011000100111010000010110010001101100101111010111011011011111011111001100010011000100110101111000110100010100011111001001100110111010001010001011110110100101010000001000101011101110010101000001000100110100100101011101010001001110111011010110011010101101101111111101100101101101001111111101000010001101010010111100011100010110100010 +ls96msgs +110100001110000101000010000100011011010101111001110110011110010101101001100010001011011000111111111001111101101101100110011100101011010111011101101100011010000111111000011010011011110000001110111110000011110001000001110011101111010111111010011110001101001001101101011001010100110000110100000000110110101001110001011000101111011101100111100011011010001010001001001110110110010000011001101111111010101110110000110111111000101010010001110011010010111110110000111010111011011110111101001011011100111111110110010001111001000001000110000100110000011111111010000000010001111000010111101110110101011101011011110001001111100100111110101111110010110001110100101000111111101110101100001011100100110010101001100001011010000111000101001000000101000110011110111111001001101111010011011010000010100011100101000111011111101110100000111000100100001100010001001000100100101010010110000101000111100011101111000101001110111111001111101111101110111111110010001110111100000--------- +001111000101001010110111001100011111100100100110010101000100100000101010000101111010110011001000111110001111011111000101111010100010000011100010010110111111001110100000101000010010011001110010010010101001101110010111111101100110110100011100010100111100101010000000011111100111000001111001000011101010011010100100101000000111010001000101001011111011110000010100100100010100100110101101100011110010110001110101100010110100010000011010011100110101101001101101110001101110110110111101111111101110111010010110110110010101010011001000011010101000110001010001110101000100110000001110010010100011101111011110011001011001010101000111110111100000110101111001010111010100111011010111001011111111101010110111110001111110001111111001001011101001011100100101100000111001011101001000010010000100000100010110011111010001110001010001000110111100110111100011001011001100000111010000111100001100101001010000111100010111110111011111000100001111100000110000011010001011000--------- +101011110000001100000011111100001111100110000110100101001100011010111100101110101101101111010010111010100110010110000000110010111010001101101001011110001001111110000001111000101000101100111110001000110000100011111010111011111101010101101001000110001010001110001000101100110100010010000000011010100110001110001101001001100010000010000011001011001110001000010100100110000011011101010100010011000010011101101110011100000000001010010111001100001100011011000110111011010111110001100001001001101111111110000001001011100100010100000000011100100111010110110100001011111101111011111010001111000100000101000000110101000100100011111000001111011010101011111001001010011000111010000100101001111010000111010110010110101011110100001111001011110110110100011010001001111010110111010011100101100011100010000011101111001101000010010111110001110011101110110001011110001001111011110111011101011010111000000110111101010011101001101101010101011110101110001100001010001001100--------- +111000110010101111001011100001110011100010101111011001100101101111110110000001000111101000110100000101000010000111001011001111110010100110010000110000010110110000100101010101110011100100110101000000010111110110111110111101110011010000100010101110100001111000110110110101011101011111110101101110001000100101011100011111110011111011100100011010010101100101011100001101111001100010000100001001110110101110000011110001010010111010110011110001011101000110111011101100010100111011101110101000000011001110110100111000010001010101010100110100011101000011010101001111010000010011110010001111111001000101001100101000100011100100000011101001000011000001010101001111111000100010100000110111011110001101000100000101011011111100011001101111100111000011011100001000111011110001011011100000011010111011000110000110110001111111000100110010101010010110001011110010000000110100110011100000011101011101111001110111001010111001000101011000100011010000011110001010101011001--------- +100111111110101001001110110110111110101011011010101101011110100001010010011101000010101100101110010110100000110110110000000101101101000000010011100100010111101010110010111101010011110111011011000010010110011011001101101000100110110000101110110111101011111000011110010100101100110011011110010010010000101100100011100001100001011000011011010010110001101001011101111011010010000000110101101010111110111101011100111101000001101110111011110010000110110101111000010111110001010110111101100010101110101111001001000010011100101000010001101100100001001001110010101100001101011101101010000100011000010011101100100100001110011000101001010010101101110010001000010110000001000100010101111100100010011100010001111111011001111001110100100111111010010001000111100010011010101011101111010011100000010011111000001110011000000011100100100000110111000110101101010100000001100010101001011101001100001001110100111110000100010001110010011010101100111011111110010101101011101--------- +011001011000001100011111100110001011011010100010010011011011100000110000010110001110110110111100101000010100001001101101001000001010110000111100101001111011000111010010101111010001000110001101101110100110111110111000100010100000101111011101110110110011110100010000111110000010110100011111010101001100001010011011010101100001111111100001101100110111001110111011001101111111101110010101010011101101000111111000010001100000100000111100000111100011001001001000100011111110011110111111100000001101001000000011110000010100110001101011101100111111011000001110011011001111001100100000101000011110101110001100101011010101100011111001110001111011001001100001110000001101100011010000111011111011011011110111011001000010100111000111000010011001110101000010010101001100010101010111100000101101010010100110110010101101110001111101101111110101101001000011010100011110011011100010100110011110001110000111010001011011000001010111000101011110111011110101100001011010110--------- +101000011111110100011110110000100010110001101011100010000111111110001011000101000000011010010100001010110101010110000100000000011110110110101001011000111110110001010000110010110111101110111001110110000110101011100111011101010010110110010101000001101110110110100110010111011111010101001000000101100101110001100000010001101100010010011011101001110001010010011000111011010001111110101101101100001011111111101111101101011010000010011001000010101001111011001010011110000000010000101111100111111100011011100111100101111001001101110111001000111101010100110010010111000110011101011111000111100000101110010010100111010101001110100101011010010001001110100100101100101000000000111111000111101001001011001010000101011101011001011011101111110001110010101111100101010101000000110000100001010000000010001101011010010001100101010101101010100000000111000010101011010111001000000110000000000001100011101110001111001001110111110111101100011111101001001110000000100010101--------- +101101010000010100001111111001101001011010011010100110101011101100001010100100011111111011100111010100111101011000111100101101111100100011010110101000110011100110000010110000101100101101011100111011001110100000010101101110000111111010000011111001100111100101011010011000011001001101111010101101010010001111101000110010000101000101101100101011011011001011100000100000011100010101110100011000010011101101011010000111011010011110111011011011001010000111101011011001101100100110010000100001000001000111101101011001000000001001010000100110000100111011101001000110100110101110110111010011010001111000111000110100011110000010111110000001001100000000000000111100001011100100010110110010111111101000111001101100011001011001001001100110000010010010001101000000000000101001000011101110010001000000100001111010101010110111000001111001011001000110010111000011110000011111011000100100010111111100011011101000010111101111110000000100000001000110101001111111000010000--------- +100000111010011100110000010000111111010110000111100111100100011101101100100111010011000010110001111100111101001010010111011001010101110001010110010011000000110101100110100010100100110001111000111011101101001010100001110000000111100100011010010011110110110100010000011100111000000101111101101010110110010001101100001001111101010010001010111100010011100011001001001011001111010111001010001000111110000110111010101000001011111010101010111100100111001110011000000000100110000111001110110001011011101001110111101000011100000101000110000001011000110111101101100001000110100111111000111011100100101010011011000001100110101101101100111100101011110100110101000110110010000011010111011001111101101110000001000001111000000100011111001110001000110000011101011101111001101000010111101011111111100001011000001100101011100110100011100011001001001101010101111100001100010011001101101111110101101010101100011101100100110110111011100100000010000110101000000011000011111--------- +000100111010101001001011100011100000111100001010001010011011111101010100110100100010101011000101110111000111001100010001111100001010000011010100101111010101101110100110011011001111010010010001001101010010010001101111111001011010110110010100011000110011001110001100011100000101111001001111001110000111110001100011110001111111100000000101010111001010111000100110111111000100111001011000101000111110011011001011100111000001110011000010101100101111110000000001111011100011001000110101000010110010010000000001111010100010100101101111010000010001001111100101011100110000100010110110000001101000111110001110110111010010110011000110101000110100111111110010101101010101011001101100100111000001111111010011010101100000001000000010001110010000110011101101001100100101001100000100101010110101111010111000101011010101011110010001100001010100000110110111111010000100101111101100011101001010000001110010000011001100011010110000111101101010100101101001000110011100001--------- +ls96cwds +111110000011110001000001110011101111010111111010011110001101001001101101011001010100110000110100000000110110101001110001011000101111011101100111100011011010001010001001001110110110010000011001101111111010101110110000110111111000101010010001110011010010111110110000111010111011011110111101001011011100111111110110010001111001000001000110000100110000011111111010000000010001111000010111101110110101011101011011110001001111100100111110101111110010110001110100101000111111101110101100001011100100110010101001100001011010000111000101001000000101000110011110111111001001101111010011011010000010100011100101000111011111101110100000111000100100001100010001001000100100101010010110000101000111100011101111000101001110111111001111101111101110111111110010001110111100000---------000110000010111100100100010010000011100111001001100111011100111111100110111010100010010000111000011010100101010101010110110101010010010100010011100010010110010010100111111100010110110101001111010001001000111100011110000010100000000110000101001100011011000101100110000011101110011110101001100110100110111110010010100010010011000001010100011101010011101101100000110101100101000000110111100010101110010001110101011000110001100000100101111101101100101111100010010101011100100001010010110000111000010101011100110010001011011110011001101100100111011111001100011000001111000000011101110011100101000001100101110101011110001101100010001100110010111010001011001001010000011000000010111001101111010001111100111001010011010010011011101001110111001100000000100001010001100110101101001011110110010001010011001010000010011011000111011100011001111011110010100110011101010100011111010101000101111000001000001101101100011010000101001101011101001111010110101011001010110000110101000001000000110110010111011000100101010100011001011001111101110010010111011000110000100110101100100110100001111001001111001000111101011000111000011000011000001100000010011101000010011011110110011001000000001100110111111110001111011001111001110100111111100000110111111111100010111010001011000011011110001001111010110110110100000110000100011000001011110000001100100000100110000000001010000111101011110111000010100011111011100111111010100000011101011100100000000101110000100001111100101100010110000010100101010010111010111110101001111110010001100001011001101100000001111101010011011010001011100110010000101110000101101101001010100010001111100010000110000011011000101110001010110101001011100001100100110000000111110001010101011111000000010111000111100000101111111100010110011000101000000100010011100010010010111110001110111001111110100110010111001110011010000110000111000111010000111000000111011110101101100000110001010011001101001110101000110100001011010001101100101001001001001001111010010100001001111101000110111101111110101110000000000000100000000100110001100011101100100010100011011011110101101111101110010000011101101111000101001011010001101001110110111010100000110110001011100011111101100101010000000001010101111111011100000000010010001000010001000101011010111101100111011010100111011111111001010001011100011010110111011110100011111010010001010101010101100011111100010000011110000100100101111000001111101100011010010110100101000001110001111100111100111010100101111100110111011000111000101110100011111111101010101001111000111101010001001111110010101010001000000110111011110101010001111001010010101010010100111011000001010110000010100011000001000011011010010101010101001001011110000111111110100110101011010010001111101100010010001110111001011001101110011010010000010101000110111011011000111110010111011001010001001110011010001100010011101101111000011111011110110000100110001110111011010101000010111101001000101101101111001110111111011000101010000010010011001111111100110001101011000010100110000011001111011111100001011001111001101111101101111111000001000010100111101010011100111010010010100110010000110111110100100100000001111101001010100011100000010001101010100111000111101001010000000110100000011010111000111100011010110001101101001001101011010111001011100101011011010000111100010000010001111111101101001000001011110111100000000001110101001100000101100000111010100000111101010111010001100010001010011110111111100010000111010000110000111011001100100011110110110100000100111100111001011101000110101110000011001100001101101011001110001000001001000110011100101110001100010110100111100111000011101000010001100110000011011000010110110100101111101011110001100011001000110100110100000001000011100110011000011000101000100011000010010111111001010110000111100100010000001010111111111011000001100001001000001000110000100101001000101111101111100110000011001001011101111110001000010011111110011000011011000000100111000010000110001010101110100000100100100001100001001001000111001101100110001000001000101111110110010100010011010111011011111010000100101101100001010010111001110111101101 +010010101001101110010111111101100110110100011100010100111100101010000000011111100111000001111001000011101010011010100100101000000111010001000101001011111011110000010100100100010100100110101101100011110010110001110101100010110100010000011010011100110101101001101101110001101110110110111101111111101110111010010110110110010101010011001000011010101000110001010001110101000100110000001110010010100011101111011110011001011001010101000111110111100000110101111001010111010100111011010111001011111111101010110111110001111110001111111001001011101001011100100101100000111001011101001000010010000100000100010110011111010001110001010001000110111100110111100011001011001100000111010000111100001100101001010000111100010111110111011111000100001111100000110000011010001011000---------111000110001110010110010111111101011000111001001110110010001011001100111000001110000000011010011100100011011111101101010011100010111100101011110010110101011010101110111101101111000111101011001011010111000111000011000101001101001111010011010001111110110111001101000000110110111101000110001000010010111010110011010100111010000011011110000101001010111010000100110001010011010101100111100101111000001111011001000100010010010001101010110011010001001000110011101000011000110101111100110000100000011011100110101011101101010101100001011110101011111100101111011111101100000001100001111100110100110100011100010001110001110111110001001100010011000010011110001000101000001001000010000100101110010111000101110000111110000110000100110100011010010110011011101010100011000101101110111100010100101111111001110010100010001111010010000011100010111101110101100000001110111001001111010111111011011111111100110111110010101110001100000011110011010100011101101100001011100101101010000110001101000001001011110100010000101010001100101110011101110000111100111010000111111000100111111100001110100000101100101101010100011000000110001101101110011110011111110001011110100000011001010001010111010101010100110100011101010110011001110001101110011011001000101000010100001000010101000100001000110111000001110001111000110100110000100111101011010100011001111010111001110010000010000110010010101011000100100110011100100000111000001011100000100001101011010111100100101010100000101100011000100101001101111100101001110000001000111110110001101110001111111111010110100011101100110100111100100101110111010111111001110010010111011001111101111110110011001000011110011011110010000000110011101000011100110111111001110001000101111101010100010100111100110100001111101111011001110111001011010001100011010110110010111001111000001000100011111000111011010000010100001001110011111110011111011011111100000001111001001101001011001010010100001000011110011111011111010110001000011001101010011000010011101001001100111111010011000010100100110101110101111110011101100100011010100010101001110011110001000010110011100011100011000000011000010011010000101010001110001000010111110011000100000101000001001110000101011100010101110101000111010101100011000010010010101111010111001010111101110100000100101001000010001101100101000000001001010010110011001010111000010001010100100001110011101011001110001000100010111100011010111010111110100100001101101111011010000000000010110000100011010001110011100010011111010010000010011001111010000001111010111001110011110001011110110001000010001101110001110100011110001100011100111001101101111010001100000010001101001100110111001010100010110111001111101100010011010100001110111000011001111101001110010010000000011000100000001001101111111111010100100110011101111101010000010111000111110001111001000110000001101010111110100010001101101101011110110011111010111001110100110110100010000100000110000010010010001000101001100110101100110100001111101111010101000010100001001111100011101000010010001000110100101101010111111011000010001001011011111011101001101000101111000101010111000011011000111100111001110001100001111000100110101100000100001010010111100010110101001110011100000001001100100101011000111100010011000010111101001001111101101011011011000101100111101100100010000100111101001000000101001111001100011010110000101001000000000111110010110110111111100010000000111001000101110111001100001010111100011100000111111010101010100111100010100101100111100010100101010100011111010010010011110011010100101100010001110111101010011001011110100011000101110011111010001110110001111111101000111011111010001101110100100001101110000011101101111001111110100110011111110001001100111001011001001001010011000010001010110100010111111110001100000011110001010111011111100001110001110011111011000110111110001111001001100100010001001011000000000010111001010101000100011101010110111110101001011110110011001100110010001000101010111010110001000101101001101100000101001000000110000101110111000100000011100111111111010110100010001010101101100111010111001011101110011000111010010111000101110010111000110 +001000110000100011111010111011111101010101101001000110001010001110001000101100110100010010000000011010100110001110001101001001100010000010000011001011001110001000010100100110000011011101010100010011000010011101101110011100000000001010010111001100001100011011000110111011010111110001100001001001101111111110000001001011100100010100000000011100100111010110110100001011111101111011111010001111000100000101000000110101000100100011111000001111011010101011111001001010011000111010000100101001111010000111010110010110101011110100001111001011110110110100011010001001111010110111010011100101100011100010000011101111001101000010010111110001110011101110110001011110001001111011110111011101011010111000000110111101010011101001101101010101011110101110001100001010001001100---------110110100110001000110010110101011000010111010101010110100010001100110010110001100000101001001101110110111010101100100000100111111010100010000100001000111001001011100101001110000100010111001010001111011110000110110010001011100100111101100100111101011110000110000011100111011101110011110101000110100101001100000101100101100110011101010100110101001100010110100001111111110010000001100101110001011110011110101101011101001100100110100111110101101100110101111000000000111101110010101000010010010100110101111001100001010100101000011000110011010100110101001000110111001011110100101011010010100111001100000111010001011110001001111111001010010010110000111000001100010110101110101011001101010101010101011110011110111010011110001000110100010001011111001111010001101101100000100100011001010001111100110011110000110101110111110010111111011110110000000000101110101000001111010101001111111101010101001110111110111100011011100010110011110110111001000101000000000111101100110100100100111010011010000001000010000100101110000100101101111110000010100001111000111100101011101110111100110111101101101000010010010000001010111110001010111010100101110010010001101100100101110100011000001111010011000011001000000001010001001001011011011100000010110010011111010011010111100110101001101001011001110110111111010101100010011100100111010100010010111110010111000110111110011010001011110100001100110110111010000000111010000110110011101100110001111011000001011001000000110101110110010101101100001111010110100101110000111110011101110110110100011101101001100010101100001010011011101111100111001100000110111100100111111000100101110010010101111110111000110101001100100001010110010111011110010110001101000101000100111001001010100111011100000010001101011000100100011111100100010011011101111111100101000001011010011101100110010000010100100101000001111110010100100011100011000011110011110101110011000001110100110110110101001000101100001101101110000110000101111100110101011010010000110001101000011110010000111111000000011011100110101000100010100001011001000001100101110001010110010011010011101100011010100110001001001000011011000110000010111010110000001001100001101000001010111101101000111100000111111010001011101010011100011101000100111111000011001001110010100110101010011011100100100111000101011011000000110000001100001001111111011000001111001100000001001000001101100111111010010100011100000000110011010101111011000010001001111111111101111000111101110101000001110111100110010001010111001100110100000001101110111111001110101100000011000000101001111010011001111010101110111001111101001110011010100111001001100111011101111111110111111000011101110010101000011100110110101111100101011010100100100101101101011110001111001100101010110111001010100000101111011111001010001110101010110000110110001111010001111000011011000100001111010000000111000001110000111011010011111100010010111100001000101111010001001110001101100011001110001110001001000101100001011100100000011001011001011100100110010101101110101001101001101011010010010100101011111010110110010010001101000101011101011101100111010110000101011100010001110100111101110000001001101111011101000000101111001101010010111110111010101110011011011010010111110100101001001000001000001010100011111000101010001110000011100110110101010010011100001011111011011110011001100001110100101100100101001000010101100100100101101110110110111110011011001011010111011000000100001001001010010011111110000000110111010001000000010111111000001111111001001101100011001011000101001110001011101000000000011010000101010100101000110001100110110011111011101110000010010000011011100011100010010000000100101110000001001000100000111110110110011000100111000001011011111101100001111011001111111101111001111001100100001001101110001000010000011011001110100111100101001000111101100011010001100001010110101101000101100101011100110001110011001100011011110001000101001111011100111010100110100001001011011000111011001100110011000101011001001110000101010011010101101000100011101111100101010110111100011100011010100111010001110100110110111111111111101011001110100010010001100001 +000000010111110110111110111101110011010000100010101110100001111000110110110101011101011111110101101110001000100101011100011111110011111011100100011010010101100101011100001101111001100010000100001001110110101110000011110001010010111010110011110001011101000110111011101100010100111011101110101000000011001110110100111000010001010101010100110100011101000011010101001111010000010011110010001111111001000101001100101000100011100100000011101001000011000001010101001111111000100010100000110111011110001101000100000101011011111100011001101111100111000011011100001000111011110001011011100000011010111011000110000110110001111111000100110010101010010110001011110010000000110100110011100000011101011101111001110111001010111001000101011000100011010000011110001010101011001---------111100111000110001100010100001111011001011110101101001001010101001000010111010111101111110011001001101000000110100001011011000110001000101000100101111111001000011110101000111010010101101010010101001111000101000111110011010101001000101000101111011111110101001110111011011001111011110101100000101010110010111101011110110001011011000111011111111000010100100001000010010111101000111000101001110101011011001110111010000011011001001000100110111101111010010101010111000100100101000001111011000101101100101011111111010100000000011100111110011111000011101011101000010001000101100011011000100110011010110000111111111000000101111010110000110010110100001101010011100111100001101011101010010101111011000111001000010100100100011010111110010000111101110001100110001011000001100110111010111100111011100001010011010110011001000101000110001001110101010000011100110011101010000010100100100000111101001101110101111110101110000111100000011101111000011100001011010000111111011001001001100011111100010011110001010101111111001110000101000111010111100000111101010000101101111101110100011011101000001011101001010000110011111010111010111011110110111010100101111000001100000111000001101110010101010000101000101110110100110111100100100000000100111010010001110011111110100100100110001010101011111010000010011000111011111111001101111101100000010110110000000110111001010100011010111110100101110101010110100000101111001000101100110000011101100111010001111100010010110110100000101111001011000100100100110001101110110111100101010111011100100101100101011010101110111010000001010111011100000101100100111010100010100110010000000111001101011100101101110101100100110101011100000010100011000111000101000110111010101100110001101110011101001010010010111110110011011000000010110000100001110110000101010001011001100011101010001101111010011110001001111110101011000100001100010001111001100011100100001000001000001010000101111010101011011100000111000010001101101110101011001010000111101000010110010010111110000110110100110001111011101101111111000100011001110010000001110100000011111000001101110010101010001000111101010000101011100110011100110001100100001100111000100100001000111110100010100010110100110010010010000101010100001111100001000100000000000110111110111100001100111100100110001010010100011111100101111100010101000101101001000010101110000010011011011110000001000010001110111011010010000011111111001101001000100011011001001000111001010001110011100001110100111010100010110101011010101011100001110111100010111100111001001001110000101100011010010000100101101000100110101101110000111010000010000100110001011010111111101000101000000000010000001010010010010010111011000100111010100110011110100111011111000110000101101011111111001111111101101111011000100100101111101000110011011001001001101011011010111011011000110110000101101100010111101010110101110010011010011000101001000110101100010101110001110000011010100010111011000011101011001110111001100111110001000000001000110001010000100100100100111101100101000011001101000000000100011100100100101001101101011001101101100101001011010011011100111000101010010010110110110001001111011000010111111110001001000100011001101110110101101001111101010110111111000101101110111110011010000110100101101001011111100001010101100110100100110111101001011101000111010010110010011110011001111101010001001011000000100101011101001100111010101010001101010001110000000111100000101001111001110000000101011010100001000100010011000110001011001011001011101100101101100000110100110011010100011111001101101011011010100001100000001111100111000001101011101110100101001011000010110111010000001011010100101101011010111001101100101011110000110111101110011111011001111101010010100011010111101100011100010011110010001100000111011110011101011110011001001011011000011111011010111001111101110010001000001000111100100100111110001100001001111010000101001110101110101100100010111000010100111111001010111001000001001010001011101010111000000111100100110000101110010001101010001010100000111011110101010001000100001100100000010000000100110011101001011110110011011110111111000101111 +000010010110011011001101101000100110110000101110110111101011111000011110010100101100110011011110010010010000101100100011100001100001011000011011010010110001101001011101111011010010000000110101101010111110111101011100111101000001101110111011110010000110110101111000010111110001010110111101100010101110101111001001000010011100101000010001101100100001001001110010101100001101011101101010000100011000010011101100100100001110011000101001010010101101110010001000010110000001000100010101111100100010011100010001111111011001111001110100100111111010010001000111100010011010101011101111010011100000010011111000001110011000000011100100100000110111000110101101010100000001100010101001011101001100001001110100111110000100010001110010011010101100111011111110010101101011101---------000010001100010011110100000001011010100011001011101011000101110100110001010111110011100100010101000100101011101100001001010000010000001111111100010111101010100110011000000111000101010001110001001101001001000010011010010101111110111011101100011111110110110010111100100111110110001110000110000101011000111001000001011011001011011010100011010100101010011111010101000100001101111010001011100000001010001111001000001000101110111110001101000010100010010010110110101001110110001110110001011101111111111010001101110110110101100001100011111110011000100001001000010111010100010010011001111110111110010110001111001111011110101000000011101000101110001000100000000011011010101010001110100000011001110011010001100101011001100011001000111100011111001101010101111111001100010010011010011001110000100101011111000110000111111101001100000010000010010010011000101011010100100001000000000110001001110011001101000010010101000001111011010000011110000010010101001010111000011010011010100100010101111001000101010000010111111010110011000111001011000101110000111101101000100010000111001001000010110010011010101111010011101011111011010010101100110111110011111110111110011010101010011110001010001111010001001101100101101010101000110010000000111010101111110001100010011111111011111100101100000101101111100011110000100100010011000001100000100000101110000001010000101110001110001001000010100110000001000111010100010110110110100010010100001010010000101001100111001100001001000101110000111100001011000101010110100001000100100100000100010011000100100111011011100010010011110110110001110111011000000101101101100000100010001000111111001011011011101011000101100111011110011110100110110001010000010100111001110000011000101111000111000100011110001100011001001000010010111111001010110110011100111000001000111101000010001000010111110001110011001100101111001001110101001111000001100111001001111101100011111000000100100010110001001100000011111001111000101101010010101011111110011001101111101111111000110001011001111100001000110100111000011001110010101010011111101011101001110011010110001111110000001110010011100000101100110010001001111110010001010100101011111010101000110011100100000101011101101001001011101110010011111100000111100100110110001000110110111000010001110011001001111001110110111001011010111111101001001000101111011000111010101010000010111101001011110010011100111101011100110101100100101111011000011101011110000001101000101000111100011101111000010001001000011110001100011100101011100001011110011110100100100010100010000000100010011111001001010111010000000001101011011011101111001011101101000001010000010110001101101011101000110111100101010101001100100101010010100100001110101100100011101010001000010101100000111111101010011010110100100100101010010010110000011111111010000000110101011101110011001110010100100001101101001010100101111011001101110000010011110110100000111001000010001100100001101100001111000000100100110111110001110011000011101000111011101010111110000111011110110100011110101111001011010100100110100100110001011110101100111000001011100110011001001110010000111100011010111000110111000110001110011011011000111100101010101101100000001011010101110001101110011100101001010111100010010011101001110001111010101010110000001111000111000000100000101101000111100000101000011101011010010011001110101001100111111101110001101101100100100001011110110111011101001010100101100011001100001000101000111010000011010110001111011110011100010101101110101010111100000100110001100110011010110001100101110011100111000100100011110001010010001111100111101011010100100101011110011101110101001011101100010000100010010000100010111101011100000101101111010011011110010010010010010110011010000000000011100100000010001000111010111000001111010011010111011000110111011111110101010010010011001010010110111011011100110110001101010110000000100110101000110110010111011010000111111000100100001001000010001111000100000000001000001010001110011001111111101111011110000001100101101101000101001001111100011001111011000011010110000010111111011100101000011010011100000011001000111000101111000000110011 +101110100110111110111000100010100000101111011101110110110011110100010000111110000010110100011111010101001100001010011011010101100001111111100001101100110111001110111011001101111111101110010101010011101101000111111000010001100000100000111100000111100011001001001000100011111110011110111111100000001101001000000011110000010100110001101011101100111111011000001110011011001111001100100000101000011110101110001100101011010101100011111001110001111011001001100001110000001101100011010000111011111011011011110111011001000010100111000111000010011001110101000010010101001100010101010111100000101101010010100110110010101101110001111101101111110101101001000011010100011110011011100010100110011110001110000111010001011011000001010111000101011110111011110101100001011010110---------110000101001101101100110000011111101011100100111110100000001001010100000010110011001111110011001110100110000100001101101010110110100110111101110111100001010101000010011000000001000010001110110111001111000000111100111101111001100101011000100011110110101000110000110111010010100110101010000011010001010000111010000000001010001111010111110110110011100000011101000011010001011000111100000110001010001011001010100111101011100100011001011000010101000100010001010101100100111001011010001011100010110000001010100001000001100011100100000000110011111110001100000101000110101000011101000110000110010100000101110011010001110101101001011001001001010010000101010001101001100010101010111110010100001000111100010011011010100001011000000010111100111001110010010111111000001110000101100000110001110111100100010101101100110111001110000110111111111011111011100111110100100100011001000111011110100011001000101001100101000001011110110110001110010101100010000101101101011010101000010001100010110110111111100111111000110011001101101001000100111011100111010110011100111100101011111101000001111100010100110011100010001001010110111011101100111000001100000101001110001010111001011111101111010000101010001111011001110101011110001101000000010011011010010011100111101100110111100011101110011011001110110100011111101001111010100010111110110010000110010000010100110011010001100101010100111111101101101010010011000000101011010000001011110011011000011011010011101111111111010010111010100111110110010000110100110001111001010110100010101000101100000111000110001010110001011111011110100000010001010101010001111100100011110101000100010100010111101110001100110001101110100011001001010101000101000000100111111111110101000001011010111011000000000000101001111100101110010010010010001001001110111101111010110110111111110100111100100001100101101001011100101110111101111001110000101101000111101000001011001100111111001100011001001101110010110000111000111011010000111110011000010111100100111111010110010001010101110001001010001000110111101111001110100001100001100101101100011111111010011110111101001101011011011100011011110010100111100100011111010011000011000011000011101101111001100010010001010101011100110100011010010101010010000011110101010100111111011101010010100001001010011100111001111101010000100110000010101011010111000011011100100010111111000111011001100110000001100110000011110111010111100010101110001110101001000001101000000000100011100001100011001111010001011011111010110001101110110010000010010111000000111111000110000110010010100100111010001110000110010111001011101001000100111011111001010011111010101011110000111111010010000110111110100011001001011010110000011001001100100010110111011011000011110110000111011110111010101000111111111001001000110000001100110111100000110000000010001101101110010000101011100011101001101001101110110101000111101110100001010111100001010100111010000100111110100000100011000010011000011001001010001001111001110111101111110101011110100101010001100101000101001011110010000101000010010101010001101010011101000101001111110011010100101001010011111010001101110100011111000111111001100110001101011110000001100111101010110010010011011100100011111100000101101110100011110101000001101110010001100100010100011010000011101110011010011110001101000000010101011011110001100001101100100100110100001011000010010010110000100000100010110100011011101101000110100000010100000110101010011001101111101110001010001100100000100111001000000001100100011011001110011001000110001101010000101111111001111000001100111001100110010010001100000000101101010000000100001111010001001110111011011011010111010010101101110101101000111111100000111101010111100100001100111001111000010100111111000010101110001111100111001000010011001000100110001000101101110000100011111011110110011111100010101101100111100110100101000101111011001001001010111000111110000011010000100111100011110001100000011101011111010100110110100101111111001010101100011100010111010001001000101000111001000111111001110111101011011111101111101000010011101010010000100011101111100000111101011101000100001111010101111 +110110000110101011100111011101010010110110010101000001101110110110100110010111011111010101001000000101100101110001100000010001101100010010011011101001110001010010011000111011010001111110101101101100001011111111101111101101011010000010011001000010101001111011001010011110000000010000101111100111111100011011100111100101111001001101110111001000111101010100110010010111000110011101011111000111100000101110010010100111010101001110100101011010010001001110100100101100101000000000111111000111101001001011001010000101011101011001011011101111110001110010101111100101010101000000110000100001010000000010001101011010010001100101010101101010100000000111000010101011010111001000000110000000000001100011101110001111001001110111110111101100011111101001001110000000100010101---------100101011000011110010110110011010101111010010100100101100011110101101111110111100000001101111111010011011010000010000101101111010000101010010100000000011101100111110010110100110001110011000001110000101111000001011110100100010100010001100001001000001101111110010111011001111111111110011100101110110011000110001100101110101000000111011100110000100000110110110011110011111001110110101001100110001011101011110000001101111001010101010100101001100000001011100111101100111101111001111111000111001000101011001111101110110110010100101010010011111010110010001101110001000110010010010011111010101011111011100011010110101110001110101110000110101110111011101100000000010001000000000011110001101111010001010000001101010000111010000100001101010101011100010101100011110100111101111001010111011100001010010011010101110101011001000001001101010010010001011110001101001110010101110011000001111010111000001111100011010110001110010010100101001010111110111111000001011111100110011011111111110100001010110001110101100100101110000100110000010010101001110100100000100000001000110111100100011100110110011010101011100100101100010010010111000010101001101101011111011010101101001001011100100101011110010010011101000001110100100000011001111110000110100001001110011010100101101110000101000000000000000000001101010101111000111000100100100001100101000111110110100000000001110011101011101000011000111011110111001011100100111001100101010100110001000100110000010111110000110101001111110010110111110011101101001101111001101000001100100110110001101010010000010010100101000000010101011111001010111001100101100111011111110001110100010110100100000001111111110000011111100011001000101110011110111011001110111001000000000111110010110011001110101011011000111101111000100011001111111010010001111000110010101011010111100111111011010110110001100000000010010010101001001011100011010101111000000001011011101000011000110001011010011011101010001011010010001110000011110100110111010001000100110100000010010010110011001100101000100010011101011000001110001100110001011100110101100001110100101111000111110000101100000111010010101010011010011110011010111000000000110100001011101100010010111111010010010110101001001000100010100001100111001100110000000110110000001000110100001101110111101100011000100111011000101011010010010010111100001100000100100101101001101111011110110000010001000100100010111001000111010011010100011010101010001100101110001010100100101001100000111111110110011111100001101111101001110100110111111011001101001000001010111011110101010001010111110110110101000110110101111011000011000110000110000010001101000000001010000101010110100010010110101100000111110011110111000011010100111000010001111110101111000000011101100000010011000101000111010000001100100111000111111001000011110000010001001100011011100111110111110100001000010011100110001101101111001010001010001111011100100010011101100011010100001001111110100100100100000000001010100110000000011111111001001001000011011000101101111010100110001011010101010010010001100010011001001101101010000110111000111010101101111001111101010110010111110101010100111110101100000110000100101000111100000000100000001101101010111110001111010100010100100100101001100110101100111111100111111101011100010100111011101000101100001111101111000100111110110011000111011101100001110010011001110010000010111001110000101101001011011010000101100111001111001001011010100100010000011110001001100001110011001001110111010010000001110100100000011101101010001010010010101110000011111100101001111100101100111001100100000001000001010010010010100010011111111101001010010100001000000000100100100111110010100110101010110010001000100111101000010010011001101101011010100001111111110110000000100110001110111010000001001010110101110100001110011001001110001001101110000111000000010110010011101010101010011101111011011000010101011101100100101011001100111010110001101110001111001110100101111011100100111101001011111011011110111110111110000111100111010000000001110100100010101101011000110011110001111100010111100111001010000010101110000110111011011110100101011000001010011001 +111011001110100000010101101110000111111010000011111001100111100101011010011000011001001101111010101101010010001111101000110010000101000101101100101011011011001011100000100000011100010101110100011000010011101101011010000111011010011110111011011011001010000111101011011001101100100110010000100001000001000111101101011001000000001001010000100110000100111011101001000110100110101110110111010011010001111000111000110100011110000010111110000001001100000000000000111100001011100100010110110010111111101000111001101100011001011001001001100110000010010010001101000000000000101001000011101110010001000000100001111010101010110111000001111001011001000110010111000011110000011111011000100100010111111100011011101000010111101111110000000100000001000110101001111111000010000---------000010111010111001101101110111000000010010101011111001000101010100100010111001110110101110101000011100111000010010110000101010100100011011010011101101011111000100111010100001000110110110110110100100011001000001100100000001001001100100111111000101101111111010001111101101101100101001111101111100010001100101011010101011111001000110101001110000000111111100101011111100110000000000011001110100100000100111100000010001000111101010101101101101000000001100001110011001101100101100010100000010011011101001010010001110001000111100001010111110000000110101100011101101100000101001010000011111001000011101100111111100011101101111011000100001110100100010010010111000110110111011000111001011011110111000111101010000100000000001111011100000110111010110011110100100101000010111011110101101111001100011000111011110000010011011011100000110011110100110001000110111001011000000110101010001100101110110100001111000111001001001111100000111011011100000101001101111100101100110100111101110000101100011000111101111100111111100110111100100100111000000101000111101011010101110010001010111101000101011010001011111111011001011011001010111001111001101000111100101111100001000111100110110000111000010110011111011101111011011100111101100100100101110010100011000111101000011010110010111101010001111101011101101000011001110111001101001100100000000110111010001101111101000111100100110110001011010110011100011010001111100100001101011111100100100100100111100011010101001010000111000110000000010111100101001100011010011010011010001010010000000000000000111100010110010010010000010000100010011111011000000001011111100000000001000111000110011100111100001010111000101000000101111111100100111001111001100001101101100101111010111111100111011001100100111100101001110111011101111110101001100000011000001111011011101001011101010001001010001011110011010000110011111111010111001001000100011010111010010100001010101000011100000111010110100000010111000100000101100001100111100111010110000010100110101000000001100001011000111101010111110001010010010010101001011010011101111010010011001100011100110110110111010011111001000100110000010101101010101011001101100101001101011001110100100101011011100110000010000110110111000101010110111101110010000101101010101011101100010110001101000100100000100100101100101010110111110110010011001011111110011101000101101111110100011000101110000010110101010010100100101010100111111100010001011000101011011011010011101101111111111111101011100101011010000010011011000000001110101011110110111010111000011000101000011101110001111000100010100101010100000110000110001101110110101110101111000001101110001011011000100001101100100011000011111110000100010011010100100010100011010011111110110101011101110001111000100100010101000000000010101011111110100010001011101011110111001001100000010101100100011011111011011111101111101111100001011101010110100000111111111101101000101000110100111101100100110010010111100110111000100000011101111000110011010000000001111100111111001101001111011010000100001110011111011111101010100101011000110000010011110100010001111011111101001111000101010110001000101111010011001001101001101111001111100000110001011001000001100001100001110000010110100100101001000000011110110111011110111100110011010001110110010010000001010100000011100111111100110010001111000100100000111110110001111101000110100101100100110101111010111110010000100100001001001001110101010111110000100101110001011000100011010000000110110010111010001010000010000111001001100101100010101111110010000100001111100011010100100001010110100110010001110000101100100011010111000110101001101011101100111011000010111011010100001101010100110111100100100010100111101010000110110001101010000010001011011010111000011100101000010011100011111001000000100001010011010001110000011001111001110000001111100001101011011110010011001001110001000001111100111110000110101111010001111010111110000111101101011101000010110001111110000111100110101011001011000011011010000001100011010000110110110101111111011010010000000101001001011100010110011000001010110010110111100101100111111001100111001101010011000101000 +111011101101001010100001110000000111100100011010010011110110110100010000011100111000000101111101101010110110010001101100001001111101010010001010111100010011100011001001001011001111010111001010001000111110000110111010101000001011111010101010111100100111001110011000000000100110000111001110110001011011101001110111101000011100000101000110000001011000110111101101100001000110100111111000111011100100101010011011000001100110101101101100111100101011110100110101000110110010000011010111011001111101101110000001000001111000000100011111001110001000110000011101011101111001101000010111101011111111100001011000001100101011100110100011100011001001001101010101111100001100010011001101101111110101101010101100011101100100110110111011100100000010000110101000000011000011111---------001110111011000111010101110000001001011011000101010011100011110111110100011011001000100011100100111001100001101101110011101100000111010011001010000011000010100111000101001010101001000010001111001000000011001001010101111000100000111010010001010101010000010001101010000011010111001110011010000001111011011111011000011111000011010000111111111111010110101011100010001000001011100011101100101110101001100000010011110010011101010111001000100001001001010100100010011011010001110010000000001011011011110111110111010001001011000011101101111111010101100011100111000000111000111010011001101101010100100111000000111001110001100010101000001111010100001101111111110001100011011010001001010101100000000000000110000111100100011000011001010100001001110101000111001101100010100100010000101101100000010001110010101010001111111101011110110011000100111011011011111111010111101111000000010001011011010101010110001100111100011010001000101100011010100100111011111101110110011111100110101000001010100010000000100111001101010001101010000011111001010010110000011000111100011101010100001001111111001010001011011000100000111110001111100011110011011001010110101010001101110000010100101001011101011100001000100100011110111111010110001011000111011110100100111010100101001100100111110100100011011001001111001000001000111111000010011101111010000100001110110000000010001011001110000111011011101101100111101011110111011110100000000101000010100111100110001111110010010000001011000100101111101010000011010111001100000011001011000001110100101100001011010010001100100100111101010011110111001111110000100001100101111100111000101000100100000000100101110110001001100000000000101100110011000000101000011101101100101001001111011101010111110101111101000010101011011101111100100110101000101101011010000001100011001001101111011010001100001010111011001110111010000101111110100110111100010010001001110101101010110010000100011000100101001001001100111001111101111111101011100001000100110110010110001001011111001011000110010101000111011000010011111111000001110000111110100111101111000010110110100010100010000111010011011110010011100000011001000001101011001001100111100000001000010011000010010111001101011100001000100001011000111011011011100010001010110010001101100011001011011011101101000111011111011100101111001111011100100011001100001100101011100111001111011011000001000000101101101001111001110111010000000111001010011011001110000100000000011000101100000001111111000011000101010100110001011110101011100000001111100111011001000100001100100111111110001000100101100011100011100101110101101100110111101111100001100100100011100010110111100011010111000110010110110011110101100101100100000010010000100110101001110000100010100000011111010101110010011101100001101011011010011101000110100101100100111100001010111110010011001010000111100111011101101110010101000110000000001101000000001101110110111010110010001110001111101100000010011100101010010111101010011011010000101011110010111111001111101111010100101110011100110111100110000011010100000111000111011100001011001101000011110111010011100100001011101111001011101001111100100001001111000110101010101110000110100100001110100000110010000000011000111010000111001010110111000101110010110101111010011101000101100000100000110100101110111110000111100010100100100100100001101101000010001111001010010110110011010100111011001000011010110011011011000001010010010011101111100111110010011111111000101101110111001001011100001110001010111110010010010100000110010100111011000011010101111011110000101101101011011000110101111000101010010011010011010111111111110110011111001100110010110000101011011000111001000010111111110010000001010000001111000101110101111000010101010000101100111110001111111100100011111100011001011100000101100110110101010101100001011111000110111110000101001010010101001101110100001011101001110110001001001101100001010101010100001101101001010011000100111101101111101100100011111010101001101011101000100110101100101011111100011110000111010001111101001000010000001001001101101110100011111010100100111011110101100101111110010100101011111000010010 +001101010010010001101111111001011010110110010100011000110011001110001100011100000101111001001111001110000111110001100011110001111111100000000101010111001010111000100110111111000100111001011000101000111110011011001011100111000001110011000010101100101111110000000001111011100011001000110101000010110010010000000001111010100010100101101111010000010001001111100101011100110000100010110110000001101000111110001110110111010010110011000110101000110100111111110010101101010101011001101100100111000001111111010011010101100000001000000010001110010000110011101101001100100101001100000100101010110101111010111000101011010101011110010001100001010100000110110111111010000100101111101100011101001010000001110010000011001100011010110000111101101010100101101001000110011100001---------000011011000110010000100011110100101100010110101100010000011101000110110101100111000111101100100011111101011011001111000100101010110001111110010101001011100011000011001001100110011110001000000100100100000001100100000111000000100000001010001101010100101101111101100001011001110101101001000111110100110101111100110110010000101011010000000100001111001101010110001000100110001101011010100110011011000011011010110110110101010010100101010001010110000010001010111000010100001111011011111110000000110101111011001111101000010111100110011011110100011000101010100001110111101100010000000000100100111011101000010010010110011101001110010001010101011000011101000001001100010100110000011000100011011100000110011101001111111000110011010111111000101000100011110011000011100110100001110001000110101001011001010000101100011101110000011010010111000001001100100001010111110110111010001010010100000111111111100000111111101001000000110100101010101100101001011010110011011100000011000101011100011001010000011011110110001111110010101011001010101001010110010111011010100001101010001010111001000111110000101110010010111101110011000100101110110001011000001100010010011011011100110110111101001010110001010101101000101110001010100110100111011001001100100101101010111001001101110101111110010111010100001001111000000010011111100010101001011011001010110010001100101111111101100101000101111101010011111111111100101001010111101100011100001011100000011100001001010101001100001001011101111101110010110100011111100110101001000001111010011100010010111011101000110110110001110110110011001000011011000100011000001011111010100111001111110000001011011111011000000010010100011111100001011011010011000010100110000111111001111011001110011000100011110011100101110111110001111001110011110111000100101001010011001110101010101110111000101110110100100110100110101001100101010000011001100110100011110110001001110011101000100001001100001100001010001111100001011001010100110110000110100011010111101111110010000010110011110101111111000111111100010100010100000100101110010010001111111010011000110010100000010110101111100110101001111101110110111010001011010001000010110001011000011001011001010010011100011000101001001001101001000100110110111010001110001111001110111001110101011001000100111110100011100110111101111010111001000110110010001100110110010111100000110001010100111011000111110011110001001011011100010000011111111110001011011000000100100010101010010011110000111001011000111011100100110011100100100000011000001010001011111101100001010010101100001000100001001100110110000101010101011000011000110101001111001010111010000011100111011111100101110010110000001101000001101110100101101110010100100110001011001010001010010011000011101000110010011110111111100011101000100101101100000100101011100010100000011100101110101010010011101111110011110000001011101101110111010010001111110111110010111110101101110100011101110110110100000001100100111100100111001111110010010101001101101101110011101100000011101011011011110001101100000100110111110101011111111001111011100011011001010100100111110110010111000011100110001011110011100111001001010110010011001000001010000001011101000001100010110001110110001111000111110011011001101111100101111101100111010010001110001100110111001110101010110110101000101001000111010001100111100011110100100001011011010010100000011000110110000000011001000111010100101001100100000001011010111110101100101110010101100110010010000010001010001111100001111000111111001011101110101010011111111110100011100010011001001010000111110000011000010011001111110011011100110101001110000000101011010110100010010001111011111000101000100100010111000111011111000011000011110101111001100101001010111110000101111110111110100001011100000100100000001110011110011001101100011101010100110111000100001111001111111001101011000111010000000011010011000001111100000011100110011111111101011111001111101001101101100011111101000110011110110101101001011010100101111011111100011000100010000010100000011101100100011000110010100111011110101101101110001010011000101000011011110001101100000001111100111011111111100 +ls192msgs +101001000010100001000101101000001101011111100110010101011111000001111011011110011001110110000011100110010001000100010011100010010110100111011000101100010110010111010011011101000111110010101100101000101111001011010011001001010001101001111000011101111110001111100110111111100001110001001111011000001110011000110100001010001111000011001101110010101001100110101010001110101111100001001011110100110101010010110000000011001000001001001011110101000111110001110101111111100000011111010111101110111001110011001101011011010111110111011010100110010001000101001010000010011110010011011011111100001101001101011101001010110000110110111001000101111110000011101011011001111001010011011001010101011111000100101001101010111000100110110111001101010111001011100000101100111000101001100010110101011000000101000000001111111010010100010010011110010101100001100001010100000111110100101001101110110110110111010101101011111110101111111001110011010010010100100010010101010101100100010001011101011001010011101101111110011101110110001001100111001111110101111110001001110000101101100111101111100001010101110111011011101101001010001001110000100010001110110100001011110011101111100010100110111000011011001100110110001000000000000010111010101011011111101100111000111101000100100101000001001001010101110010101110011011010010111100001111000100001000001101010101010101111100011010111101110000101100010100100011101000010001100110100100000100011011101001001011110000100111001000110010101010001111100010100100110011110101101011010011010101011100110110010010101100000001100101011110101100101000011000010010011111110111000101000001101111101001101101000111001110111111010001101100011011011010111001001101101000110001010011111001000110001001100111111010101100110110101111100011110011000111100011111100011110110100110000010111011010101100010001000001001110111010111100011110100010101001110011011101100001011001100010111001100011110000111001001011010101010--------- +010001101110000001100011101110000100110110000010101111110111001100001101010010000111110001100101110001011110101011001000100011010011001101010100011000101000111010111010101000110000010000110101101101101011101111100110000001011011001100110001011111000110110000101011001110101111000010010001000011110101000000100111000011011101010111110101100010010000010100010111000110100111011001101000100011101001001110010011000110010011000001101011011010011111110101001000111110011001100100010111101110001011111001100110111011111111111100100111001111001110100100111010101111010110001000011110110101010010100011001110101010011011011111011001001111110100101000111011111101110010011001010010101011001001111101000010101011001000000101001101011101001110001011111011011011000100100101010100001011010011000100001001001100110010001110100100001111100100110101001000010001110001011001011101000101100100000111111001101101100111100110111001100110000110100101010110001111111101000110001111011001011000101101100011111111001100001100110111100101010111011101101001011010000100111110000011001100111110100010010011100100001001101111110100001001101011011001110110000010101001101111010001101100100000001011111100111111010000110001111101001011100101011011011010101001000110111111100101111110111101010000010111010000111111001001111011110011110110010010010011111101001110000111100010100001110110110011000100111100111110010001010000111111001011010011101010110001010111101110100001110011110111011101111101100011110011001000010101101000000010110011100111011111010101100111110100000100001010000110011100101001000010101100010100000001001101000100100010110111101101101001000011110100001110000000000000011001100111001000001010001010101100111101011000101111100001111100001010111110100111000101110001011000111001010110111011011111000110011001100001000100001111111100100110000000010001000101110000101100000111101001111011010000111110111111010010111101100001000--------- +111000101100101101000011011111100000110011101010100111001100111010010000011101011111111000010001001111110001000001000011000001010010100110110111110001001111110111100000100010001000000010111100011011001010011100110110111100101001101101000001010001110101110000110001111000101010010100111010100010000110111110011010010011010011001101110110001011011000001111110111001001000100000011011111100100100100000001001010100001110101111111111110111000010000101111111000101101000100100100000010001001010111111011000111111001110100101010101010111100100011110101110010000100101110010111111100010000010101100000101010010001010001110010100110000101101000100111000111001110010001111110000110011110111010111100110000010101110010100101010111100101000010010011100110011110101011000100111101100101001001000010100001100011011011100111011001110011010100000001001000001100000100110010111110011011100111111111011100110111010011110101110110111111101010010011001011110000001111101011000110111101000001010111101101010110010001110000101101010110100111110011111011101011101010001111111010001110111111010111001000100011001100001001100000100001000111100101001101011011100010010001000100001100101111101001000001100010110110010010111111111000110100100011000000010111001111010011111110001001011001101111110011011011001000010000111110101010110010010101101011110001010110010010101000111001110101001101011011101111001110000111100100110111110110110110001001011001010111000010010110010000011110010000011011111101001000111001111011011010111010110001011100110111100001101011111110010110100001101110110011100111101111000010000100101010101010110010011000000010001010010000000000001011010001100010110000001101110000111000010011010000001011001000001100011001000010111001101111011101011111000100010110010111101101000010111101011111001010000101101111010111110100101101101111111111001011100100000000110000100100011010110111010011011100000011101100110111110011000--------- +011110001111010001000110111101100110010001111100111100100011110111110100001000011001100100011101101110001010010110111011101001111011001100111111000010010001000100111111001011010011110001111100011010100110110111000011111110000011001111110110000010001110010000011111100111010111001001001101100001011101010110111111000010000110010110111110110110001000100101001011110011010001010001010111010001001000000110000110011100111101110100000001101010001110100001000110011010110010111110100100011111001010011101110011011010001000110100010110000001000110110011101111111011010100001110011011010010110010001101111110101010111010010000000101110000101111010101001010001000110000011110101011110101010010000110111110100011010101100100101111010001010101101010100110101110000011101110001001100010101101111101111100100101100010010010010010000010001011011011000111001000100111011011000100000010000101000100111001010101101100100011001110100100101010111110100111011000101001010010000110100010000111111111010000000001011100100101111111011000101111000000101011000011001001101111100000000110010110010001111100101111111101000011000101001110110000000011111011011111001011011111100110000111010110100001010001101010100000100100101000011101010001011111001001000100001100011011100000100100001111000011101100001001101111011110010111010001110011011111100001111100001000110110110010100111011010110000001000111001100110011010111100010110010011001010101010111000101011001010011001011000111001010000101001011010100010011100011111010101111010100001110110000100010000011100111100000101101011011110111001001111001010010110110011000100100010100000010111011001100111111011101000111000100001110011110111110110100000100111011100110010111011000010100000111010011110000101101011011011101011001010000110000111000001111110011101111101100000010001010000000011000011110000010000100101100011111111010011001110101000001000100010111010110101110101111000111110110111010--------- +011101001101001110111010110101101100011011100001010000101111001011000101101000110100001100101000100011000010100100001001001100110010001101100010010100001111010110000010101101000011001101010011111001010010110010000100100011100101010010010111011010111000010000000101111111000101100011011011010110011110111110001010010000111000100100111001111000111000110111100101010101101101010011001111010110101001001110100101111001011101010011001111111110010001000000101111111001011011110010110000100110111100000011011101011110100011011011011111101111010100101110101011000000110101110100001001111100000001010001111000111001111110101100000001000111011010111101011000110101111001000101100101000111010000101111000110000100010100000010011010010000100100101111101001101011010000100110001000000111010100101011111000010100011010101100110000100000110000010100110101100001100000110100100111110100001001100100100101100101101011011000011100111010100101001100000011110110001110101011000001000111010011000001010001100001101011000000001000111001010001110010011110000001000101000100010001001011001011011001100101001110001110001010110000001111100110010010010011001010100100010101000111000000001111001111001011010010101111000000101101111111001111111000110000100010100000000000101111001111110010011011101110011001011110000001100110010010101000100110111011010100111100010101000101101010101000110000010010010101011100010011111000110101110010011101011110000011001110100011100000000000001001110100101101101011011000011000001101010101100100111101001011011000010001111110011010001011101100000100000010111110100011100011101000001001110100110010011000110010010101001000011011111011110110110110011100111111111100100101111011001011110101010001100011110000000011101010100000011011111110110111000000101001001010001100110011001010110001011101111101001001111011000110000110111000011110001111001010001010010111010100110110000011011101110111101100101011011111111--------- +101111110101000110011100010010110000110011001111011111101001110010010111011010101010100001000000100100010100010110010011000110011101011001111101001101110011000111001010001100100111101010000100010011101010110100001001100001111001101010010100111000101110010011011010010010110001011010010010100010101100001001110101010100011010100111111101000101011010011010101110001110000110111011011110000100010101111100001011111111001100000100000101110001001000101000111101001100110111101110110011010100000010111001101110101100011001000000101111111101000110010101010010110011001000010000101010000001011111011001110001010110011000110001011010010000001110100100011101010010110011100100100101000101110000110100100011100001101111000011011100001101001100110110000011011111101100111100100110110001110001011110101001010111010110111100100101110010101001100101110000001100011011100111111101100000110001100010111011101100000110010001101100001000011111010011000001000101110000101001000000010011111001110101010001001101010011100110111010100000010000111000101100110101000100110100000000101000111010100001100010111000110000001000010100110000001110000001011100110101110100010011001000101000011010011001100101110110010011101011001101000011100100000011001110011110110001101010010000110100000110100110011100011111000010110111001100111100010100001111000110110010111110111100110001011100111001011111001010001010001000101010111011100010000001010100110000100000100000010000101111110110001110011001101011111101000000000111101111011110001000010000110001111011000111011011010110010000111101100010000110011110100011011010010101110110110111011101101111010101011000011000011001111010110110111000101010001100001011101101011100100110110101100010100100110000110001101011000011100000111100110001001001011101000000001000011011111111101011100101111010011111100100111001110011010011010001011001001001110000111011001000011000000000111110000000001101100011100111100--------- +001001100000110010110100000001101010011111010011110011101100101000011100001001000100111101100101110000111110011010011000011000111101000010111111111110111000001110111000010101110010101101000010010100000000100110011100110101000011100011111110101111110001000101100101011100011011101111000101001101110110110001001011010000000100100100010111111001101010110101100111000101000000101110000010111101101100010111000101110100100011001011101111110001111001110011010101100010101001110001100001001100101100101001101010110110111101111010010000010000001110001110101111100101001010011001001011001011000101100100110101011000100011110100111000110111100010001011110000001110110101111011101100101100100010001110101101110110011011100001101000100011010000111101100101110010111000001000111100101011001010000110001101010101010011000101001010000010011010000100010100111101101011001111111000100100101001011111110100111100000011000010111101110011001110010100011011000110001000110100010000100111010010001001010011001001011011001001010011001010001100111100101100000011011111101110011111100001110111101000101000111110010100101111001101000100000001011111100101101001100110110110110011110001010000011101111001010001001111111001011111011101001110111011011101110011010101010000100001101011101001000001101111011111000100000001000111101101010000101000111001010111101000110100110011110001110111001101100110101101100101101001010110101100110100000010110100100110111101110000011110100000001000101101001100111000110010001011000011111111101110111101001111011101111011011101111100111110110001110001000101101011011111000010001101011110011110100010000011011110001010000010011110110010001101001011000110001010111011010010110101011011000011100000110101100100010111111001000110011111100100001111011000001001111110100111001000010001001101011110011110101101100101000100010111000101010101010011010110011110000111000100001001101110000010110010111010110010010100110--------- +011011110011011000100101110000010011110110110111111000100111110001111110010001101011110010101101001100010100101100001101100010011100100100110000000000010000001101001010110111100101000011111110001101001000001110001000000011000000001010011101000001010111111010100001101111100010000100000001010110101011011111001100100100110100111101010110000100101101001000010000001100111101110110100011110000111101010010101000110011011011010011101001100001101110100011000011010010111010000100000001101101100000000100011111101100011101110011011000001101101111000011110110000011010010111010101010111110000101011001001011001010111111010011000111110011000110111110100010110111110000001101110011001111000001101011110111000001011010011010011010011010100011000111110101001010100010100100010111011001001010001000001011110101000100101010011110100001110001110100010010000110010101000111101110110001000110111110001101100000011110111011011000000000010111111110111111001011101100110100001110101010111110010100001011110100110000101001000101000110111010111101011100011101101001010111001010000110111111011101100000010011100110001010010111111000001110101000100001000001010000101101100001100110001111101111010000010111000100001100011111011100010100001100000001101101110111001100101010101010001000111101111011001100001011001010111110011000000010011011010100100100000000011100001011101111110111110001010101100100011101100110011110010011011001010000110001110100111010001011111011000110101111110110010010110100011011110110100010001111110011010000001010011011010100010110111001101110011110011110110110010110111101100110100011110011111010011100011100110000000111001000001100001011100111011110110101100110111010110010000000000110011011000010101001111100111101011011101001010111110011000000111100001010010101000101111001111100000101100000001101100110001111001010111010010110000000100111001000111100100111100110101111011100011110000000001010111110010001111--------- +010000011000110001110110000001101010110001100001001100011001100110000101001101100110000110111000010110010010001010011111101001010000001010011010111101000101001001000100100000101001111010110101000101001011111011011001101101101110111001010000001111001011001101000100010010101111111000100110110011010110011101010001010110010011001010100111010010111100000001111101101100010101100110001001001010101101000111000110110001100100111001001000000001010101110101001111111011001111101000110010100100111110101111110010000101011011011010100001100100101100001000101111000100010100001110001000110010001010001001111000000001001010000100001100011011110010101100110011110100111111010111110100110111101000011000000010110101000000000001010001001110101010111110101101001000001001101100010101101111100010011011011001010110110110000011111110000100010110100011110101001011101111001100111001010111110110000001111101100110101011111111000011111011011101100001001001111000011100101011000010001111011110111110110100010011011100111010011110000001101001001101101101011001000101000100100001101010100101010110010011001100100101110101110011100010011001001111100010110000100110001100010100010100100010001100100001100100111100011011111100101000100101101111110000011000010111111000001000100000110000100100110110111100010101100101001111011000101010111110001101011000100101011010110010101000011110000010110110110011011100011010001010010101101000000111100011010100001011001101010100101110110110110000100011001100101000010100010011101010010000100010100000101000100010101101101001101111111001111101010101011001010101110010100010010100010100000110000110100111010111011000010100101111100100010111011101111001110101110010101101000001000001011111010000010000101110000101100001101000011010010111001111010011111011111100011001001100010100010000100011100101111111010001111010111110111011111100011000110010001100110011001000111111011101101101010010101001100011111--------- +111111000100101100110110100011001001010111100111110110001001101001101010101011110111111001000101000110001010000000111011001110110000000110110011011011100010110100100011110011001101001010111011101100011110101000100010111101101010001100100011110110100011100011110001101110111000111110001000111001011000101100000000111000111101110101111011100101011010111110110101100000111101111001000001101011000010000100100000010000011101011101011101011101101011110001110111010001110000111100010011011111011000000000011110100001101100110110010000100000011011111011111101010111100111010011100001101001010000001111011100000100111011010101010010000010111100110110010011011011001110110110100100111101011101111101001100101010101001000110001001111100001001011010010011001110011111100001100011111111010010111100001100100011000011100010111011010001011011111100100010010010110001000100101000000001011011010101000111100111000110101100010000111101010001110010000110010111111111110011101011110000010110010001001011110100001001101101101010011101100010111011101101100111110111100111001101010001100001001000001111110010010001100111100011110101001110111111000011110011000010101101111001110000000101100010110000110001100000100101001001101000000011101110000100100000001011110011101000000010010111011011111110101011001111111101101000110111111010111110111001100101001100101011111011001001011110011101111111110000100101010111000100001110010101101010011100110011001010011110011000101001011111010101110010001000000011001001011000001011000010011100000001011100100110101010110001100001100001111011001110010101111010000001111001001001110001000011110011110101110110110100101110111100110001011111110011101110111000000001100100111101001101111010010111000011001110110011100010101110110111010010111100001011100101000111100010110001010101000110111111001000101010111011011101010110101110110000000000000111000100111000100111110010110110010001010000010000010110000--------- +ls192cwds +110100110101010010110000000011001000001001001011110101000111110001110101111111100000011111010111101110111001110011001101011011010111110111011010100110010001000101001010000010011110010011011011111100001101001101011101001010110000110110111001000101111110000011101011011001111001010011011001010101011111000100101001101010111000100110110111001101010111001011100000101100111000101001100010110101011000000101000000001111111010010100010010011110010101100001100001010100000111110100101001101110110110110111010101101011111110101111111001110011010010010100100010010101010101100100010001011101011001010011101101111110011101110110001001100111001111110101111110001001110000101101100111101111100001010101110111011011101101001010001001110000100010001110110100001011110011101111100010100110111000011011001100110110001000000000000010111010101011011111101100111000111101000100100101000001001001010101110010101110011011010010111100001111000100001000001101010101010101111100011010111101110000101100010100100011101000010001100110100100000100011011101001001011110000100111001000110010101010001111100010100100110011110101101011010011010101011100110110010010101100000001100101011110101100101000011000010010011111110111000101000001101111101001101101000111001110111111010001101100011011011010111001001101101000110001010011111001000110001001100111111010101100110110101111100011110011000111100011111100011110110100110000010111011010101100010001000001001110111010111100011110100010101001110011011101100001011001100010111001100011110000111001001011010101010---------010110000010010010111110000101011101101000001100011010111100111011101100101100100000001011101001010001111101011101010000110101110010100111001111110110110000000110001111110010010000110111110000000011011000110000000000101011101111110010010001001011001000001111000010010101101011011001100000011111000101100110000110010100110001100111110010010011000110010100000001001110001100001000000110100110101101100011011100011010010010000100011001001100011111000010100110100111110011000100101101101010000010001110001111100010111011100111010110011001100010111100000111001001011100001011001111000111110101110101010010100010010001001100001101011111001111001010110101010000000001100100110000111011011000001101011111110101001000011111000010011000111111100000001011111001000001110000011000010111100111111010011011100010101111000110001001111111000110011011100000000100000011001110110001111111001010001111001011101000110100001100101110001011001111111011000110001110111111111111110101110111101000011010100110010000010110101100001000001010001010011010001010110110111000011100001011111001110101110001011010000011101110000100110101111010101001111010100011010101001101110001100111101111110011010110110010100001111110111011110000110101010111000001110010100100000000010011010011010101000010000010000110000010111101011001011010010010101000100111010101110100100010100110001010101001101000101000100110000000110011000110000111001010010111111111010001110111011111010010110001010110010101100110111011010110110000110111101011010111010000101100000011000100010111011011100100011100101101101001000000001101101010111101100011000011111111111101110001011110101011010101001010000101100010110101110100010011001110110100000010001101001010111001110101010000100110101011011011011111000011000110111110000101000110100111001100110100011010000001110101011110011000101010000010010110000101001011101100110010001111110001110010101010101110000010010011110011110010100010100010010101111010000101110110010101101110000001110101100000111111110000010001110001000111110111000001101001110101011011001101010111000000101110001010100001000010110101110110111011011101101000010101111011100110001111011000011001010101000000101110001001110101000011011001010100110100111000111101110001111101001000011110110000110110010001011001100111010100111100100001001010101011001011111000011101101000000010100011001000101000011101011100110111110000110010011010101111110110011011010110111101001100110110111111101111111110111010101000001011110010010010100010000101010101000001111010101000101101011001111110011101001011000111110011101100011110001000011101101001100111110011001100111100110001110111000111001111001101101000000111000100111000001101000001100101010101010100000100011111011011101010001110001010011100010100001110101111000011100101110000101110011000101000100111111101110000010001110001000110100001100110001100101100001001111111110101110011101001110010001010101011010000000000100001111111100011111001011100101000110001100110010001101001101111100110101100011101001010111101010111001010100110111111001011111111000010010111001010011001001110111001001101110100000000100001101110110101001110011111011001001100000000100010001000010101010000111000100100101101110001101000001110000100111100010111100010111111001010100100110000010100010001010100101000001110000101011000111101011011011111001000010110110111001110000111111111111000011001110011010001111101010011100110000111001011110101100011100010110110110101010001110101111111010000011100101101111101110011001000101101011111010100000110010111000001100000010000000001101111010110000001101101111110000110110100100111101100011011101010110001000011111000010000000111001110011011011001001101001110001100111011111001001100101111001110010111001100100010110011100000110101110000011110111010010011101010110010010111011101001100110100001100111110101001000000111010100011111111000010001110001001111110110010001000001011110101100000110100001011011011100001111100001011111000000101011110000011000100101010111100011000011101011101111010110010101010110011010101111011111001010111011100011101101011100111111011011101111111010010111011000010001111001010100111100100101110001111110000001001111010011100001011101010111101010101010011111100000001000001000111011000011100001001001100011101011001011011111000011001110000001101000101110101100010110100010010001000011101001111001010110100111001101110101100010000101110010000100111100101101110010010000100011100100000101110010000101011010001000111100010010110100110000101100011000110111001000101010111010111010000001110000011000000110110000011000001011101000011110101010000011000011101011010100001010111110101001000110010001000010111100001000001110000010000010011001010010001000000101111110111100111111100111000010011110100100001111010010001100000100010101001111010111010010001100110010001101000010110011000100111011101011000010110111110010111001010110000011111101101111100001101001110100001101110111110010101111110111111011011101011010101101100101111100011000100010110001001110100111110101010100001100001101001110010010001101111001000100010010100100010010010010000111001000010001000000100001000110010000010011110111111010010010001111111001001011001000111000011000011111111010111011010000100000010001000100101011001110111001110111010100011001100101000001011110001110000110110001000010010100010111001010010101011100101001111101000111101000000100101100010011010001111101011001100000111000111111101100000101001001111010000001110000111101000010101101110010101001000100000111011001010111110111100011011001100110100011100110100001111111101100111010110101100010100001101000000011010000011110001001001110100010000010100101101111011101001101101100111110111100101011110000101111111010001101110100011011111100010000010100000111100110110010110100111010011010101010000110100110101000110010011001101001011110000011010001011100001101010110110100001111001100011100000001100011010010001000100000011000010011110000000011110010001011101111010101000100011010101111101001100110111110001100001111110011011111001010101011010011010001001100110110101001100000010000000110010100010101110000001110101010101100010111100011000101100010001000001101101001001011000010110000010001001110010111101000000011000101010111111101101001011101011001011011100101101010011000011010000000010111110110000001010101001011111111110100001111110010001010100111001101011110101101000110110000001011101001100001000111111011110100100101101011000011110101100100111101111001110110011111000110100010111101011000010011001101001010101001000100111001011011001101101101101000101100101111110010101110010110111110010001000110000000001000110011110101001011100111001101010101000110011000100110010001001011001000001011001101011000110010001101101011001110111100010100110011011101100110011010111010000001000110100011110001010101101011000110101010111100111101101111110011101101011001110001100101010001000011111101100000110111000000000010100100010001011100110111000100101010100000110010111010100111000100000101101011111100001011010000101001101011000110111001010011011001100100001110001101001100100001100111001101101010010111010111111110001011010100110101001000010110000111110000100011110110010000000101111000111101001001100110011100000010100011011000010001100001010111011010100001111011110100001101001010001110011011111110011010011101100000000011100001011001110010110101111111111010101100100111100011001110101010000110010010001100011011000101010100101111000011100101011111001111001010001001101011101001111000100011111110010001111100010010110001001000110010001101110000001010001001101101111001001011000000001001011000111010101110110110011011101101011000110101110110001100011001110001001000111010111110001011100111001111001111000101001110111000100110010100011100000001010111100000011101111001100000110100101111110000100001001001111010100111101100000100010111101001001011010100001100001000101100010101010101110101101111111101101010001000001111011111000100011101000101001111011000110010111110000000101010110111100010100110010111011001100100100010011011010111001011011011100001100101110011100011001000010110101101110000101011001000100110110010110011100 +100011101001001110010011000110010011000001101011011010011111110101001000111110011001100100010111101110001011111001100110111011111111111100100111001111001110100100111010101111010110001000011110110101010010100011001110101010011011011111011001001111110100101000111011111101110010011001010010101011001001111101000010101011001000000101001101011101001110001011111011011011000100100101010100001011010011000100001001001100110010001110100100001111100100110101001000010001110001011001011101000101100100000111111001101101100111100110111001100110000110100101010110001111111101000110001111011001011000101101100011111111001100001100110111100101010111011101101001011010000100111110000011001100111110100010010011100100001001101111110100001001101011011001110110000010101001101111010001101100100000001011111100111111010000110001111101001011100101011011011010101001000110111111100101111110111101010000010111010000111111001001111011110011110110010010010011111101001110000111100010100001110110110011000100111100111110010001010000111111001011010011101010110001010111101110100001110011110111011101111101100011110011001000010101101000000010110011100111011111010101100111110100000100001010000110011100101001000010101100010100000001001101000100100010110111101101101001000011110100001110000000000000011001100111001000001010001010101100111101011000101111100001111100001010111110100111000101110001011000111001010110111011011111000110011001100001000100001111111100100110000000010001000101110000101100000111101001111011010000111110111111010010111101100001000---------111011111010101110010010011011010010111001001011001111110111111001011100110110110011111100010100001110110000001011001111110000110000000000101000110010010110001101010000001100101011001110000110010000111011010101101110011111010111011011001010011010100100100001001000111111010110100000010110011011110011100110000011010001111011100100100110100001010001011010000010111001101110110100101000000101001001011001110111011100100101100111001101011000111000011011000001100011101010000001100110111001000010100110010111101000010100100011011111100010101100011100110010110000111100101101111010000011010000100101111110111010001001011000101101100010110001010111001000110000001111110111100011111101011011011011110011101110010101000111011011010101010110110001011100101000101100010000001000000011010110011101101100101100011010001101001011000101110110011001001111101000011010101010001110001111011111100101000111001111101101111110100111011100110010010001001111001110000110111001101110101001101001011001001100010000101101110010000001100101001101101110100010001000010000001011010100110101101101011000001111000111000011000111100101110001101111101110100110110111101100001100000000011100100110111011100011100110001101111010011001100000001000011100110100010111011111100000011011011010100010000100011011100010001111010000010100100110001011010110100101010100010110001001100101000101010010001000111001001100000000001100010000101000100100000100101001110011100111100001010101001011111111100101011101110111011100100000101101111011000001111110111010110001100010101101001111001010101100001000110010100100000000110110110011111111011100001100000010011010100011010000111110101011100100111101110100001000100001010011011110111110101110010001110100011001101011111000110010110000101110111111100010110000100010101011111011000100101111111101001111011101000101110110111001111001000011000010101100111110111111011110000010101101100101001101010111100100011101011011111011001111000100000011111101001010101111010000001100000011010011111101010010011000010001111111111101000111000000000111110100101101001101110100100111111001001100001011001111000011100100000101000100011001000000011101111101001001111000001000000101111001101111001001110110110111000011001101111010000100111100100000101101011100100101011100011100110011101010111000111101111100001010110111101010011001100101111000110101111101100101111000000011101001000101110000011100001111101011110010111001101011000111101110100110100101111000111111101000101001111010010100101101111001001010010000001110101101000100100110001111001110100000111010000001101011010010001110001011101011111101110000101001110100110001010101110100010011000010010101000001110001011101011000010101010000110010000111010010110010100110100111111110011101010001101100000111010011000000011001001111100001010100010110100000001010011101110101111011001010001101001011111001110100001101111101100001111010011001110100010101001010101100011010000111101001010100010110100010100111010111111110111111011111110100100110010111110110000111100110011101111111011100010100101001000111110010011010011011100111101111100101110101001110100100101001110111110101101111001101110010110100100011001011101000001011111111101101100110100111011110000110110000100011111000100110011011000100000000110101110100110001101111100011001110111101001110011000100000001010110111000110010110001111001000011100110100001011011001111000110101101110111110000000100001000101110110001000000111100100000100011111100000111001110010100111110010011010101000100110000100011111001010000010010101111011001001011010111010010011010001010000001010000010100001100101000010000000011111110001000011101010010111010111110110111011100000110110101000001111001100011110111010011001010001001000101111010101100011100110100110101101011101010100101010000010010000001100101011101111011111111101110010000011111010100000111110101011001001000010100111001010110000010000111111111001001111000000111111100010001011010101101101010010101111011010101000000111010011000010001011100010100111011100011000000010010001001111111100110000000000100001110000100111101101011010000111110010011100101100111001100001000011011110000101000000100110110111100011111010011001111011000111101111001101000011000101100101110101000000000010011000010111100010100000111111111000111110111100100011100101011110111001001110000100100101100111111011110000011101110001101111100100111011110100100011101011000110111001100110001001111001010111000110000110110100001000101001100111110101011010110101011011011101010000011110101110110010001111101010110100001111100001011001100111111000011010111110111100000100001011111100001100000101000111110010110100110100011111001010010100100000101011000110111011110101100000100110111100100101010011000100010101101110000000000011000010010000110111001110110001011001110101011100001100110000001011000000001111010010000010001010000111011000000111010110111010000101100001100101011011010010101001011101111101101101111000111111100100001010101001110100001011011001001000011010011000111101110110010110111011100011011100000100111001001011100000111111010111101100011000111100011101000001011101100111111111101100011100100101101000101010111001111010111001111001110011010101011101110110110110001101011010111100100000010011000011111100101100000010000001010110100110101010000000110100001100100011011101001101001100010011011010001110010011111101010100011011010101011100011000110101010111110010100000001100010110111101110101000000001010101101011100000100011110101000101110100011111011111110000111000101100101011001110101111010000001001010111111001010010100101101011000101111110100111100100111000100100011101000000100010100001011100111010110010000111001001111100010011011101101101101110111110100111011111010111000001011100000000100111001111100001110011011110010110110111100000001110010101100011000100110110000100010110001111110110011000010110001011101101110101010000101000010110001011111011111001010011000100101001011100100100110111000110101010111000110101001111001011111001001000010001111001111101100111100010000000110011011110001110000010000010011100111101111111110111101001110101011011110010111011010110111101110000111010001100010101011010110111111010101100001100000001000110111101000111101101100010001111101010111100001001011110000010011001000000000011010011110000101010000100001001000010101101111001000101101101000101100000010111101101001101011010111110010110011001110101010000000101011110100001000011100000011101110011010101001100110000110001100001101000010100100000100001101100111101010101110110001111001111000111111101010001110100110001100001000101000110001011000011001110000001000100100100011101000100010111001101010011010011111001111011101110111101111001000000111101011100101111100111100001100000101111100100001111110110101100111110011001000000011001101101000001001110001101000000101000100000011101011101101111001100110000100000111011001001010110000001110000000011010110111101111100000000001010010011101101100101101010110101000000100101001111100010110000110001001110100100101101001001110000101101010000000000100111000010011001110001110111100010010110001010011001101000100101101011111001001011111001101001011111100101110000011000100100000100111000100101010010000010111111100000111100111000111011010011010100000101000000110111100101011011111010010000110110111000010100000000111000100101101100111110011111101101111001011010001010000101100011010101011110100001100010111011101000000000111101101111100000011111011000001101000010001101111000110111111010010000100111110001011011001100001101110101110001101101111001011110110100101000110010001000110100111110001110001110111010000000011011011100011000010011001000010101101011000111011011001000000101011110101000111001110110000010001110001110010011011010100110110111000101011000101101101001111101111101011110110011110100110010101100001111010010000010110000010010100010100110101110100001010111101011100000111111000100100011000100000101011111011101000000101100110000010010001011010010000001100110100111001111100100101100101111111111111100110000011000001000011011111110000011011111111010010001111101010100000011101110101110111101010010011111110000110111010 +100100100100000001001010100001110101111111111110111000010000101111111000101101000100100100000010001001010111111011000111111001110100101010101010111100100011110101110010000100101110010111111100010000010101100000101010010001010001110010100110000101101000100111000111001110010001111110000110011110111010111100110000010101110010100101010111100101000010010011100110011110101011000100111101100101001001000010100001100011011011100111011001110011010100000001001000001100000100110010111110011011100111111111011100110111010011110101110110111111101010010011001011110000001111101011000110111101000001010111101101010110010001110000101101010110100111110011111011101011101010001111111010001110111111010111001000100011001100001001100000100001000111100101001101011011100010010001000100001100101111101001000001100010110110010010111111111000110100100011000000010111001111010011111110001001011001101111110011011011001000010000111110101010110010010101101011110001010110010010101000111001110101001101011011101111001110000111100100110111110110110110001001011001010111000010010110010000011110010000011011111101001000111001111011011010111010110001011100110111100001101011111110010110100001101110110011100111101111000010000100101010101010110010011000000010001010010000000000001011010001100010110000001101110000111000010011010000001011001000001100011001000010111001101111011101011111000100010110010111101101000010111101011111001010000101101111010111110100101101101111111111001011100100000000110000100100011010110111010011011100000011101100110111110011000---------111011001010000110101100100000000110001010111101110010001000100000100011100010001101010011101111101010000101100000011001100001010011011001100111001110110101011101001101011101001101000000001100100110010111011011011001110110000111011010111100001010110111011111111000100010100110011101100001101011000110111000010100000010101010011111011001010011101001110100101100100001111001110110001101111110011101011000011111111100101100111000011101101010100000001011011110110001101010011100111100101101000011110100111111010010010000111001000101011110011111010011001001010111101010100001101100100010001011011000000011111100010001100110110100110000000100100100011000011100000111101010110110100110111010111100110110011010011000110011100000010011001101110011001101011110001110010101010110111100011011110101111110011100000101000100111011011111010000100001011010111111110011000010111101010011010111100011101000100000111111001000001000010001111101000001011100101011110110010101101100011110110001110101000011010010110000111000101111011011001001101011011000000100100100011100010110110001011000111110111010101101001010010011011000001001001001110110100011101011111100111001110111100110100100101011000010010111001010010000101000111101101010001011101010110111011100110001011111110110011000110001101011001011001100010111000011111011011111000110010110010111000100001110110110110100001011110101011010001010111010010110101000111011000110101010001110111001001110001111110011100011100101011011001111110110111111110000000110110101011010011100000001001110100111000000111011010011010010101001111101111110110100100001100111011001110111001100000000011111011100111110000111000101000100110111001011110110110010011011011101100111001110011000011101000100000101011001100101101001110110111100111001110101110110001011111000011011011100011110110100101001010011001111001011100110011010101111001001100110101110010110111110010101010001110010110011101011110010101110100001100011110001100001011011011011000010010010000001000010001001001110001101110011001110000000000001001010011101011001110100110101011100000011100101100000100100011010000011000000001100111010110011110101111100000100100011100110001100011100100111001001001000101101100001100100110010101001111100001100010111100011001111100000101011010011001000111000000011111001001111000111101010111001110011110110010001100010001011101001111111010100100011110100000000010011111000001110010111110111011101011000111001110110010001100011011111101111000000010001000000001101010111100100000011011001110110010001011110111111100101100111010110111100000011001010100111110001101110011010110010011001001111101101100001011101000001110011000000111110101001011110000010100000111111001111110100000101011000001111000111110000101000100100011101100011110100011100001000100000100010010010110111001001100110111100100110011110011010110101001011000011110011100011011010000011101111110000110100101111111000110110000101100011010011101110000000110100111101011100110010001010011101011101011000101101111010100101010010100101010001001001011110100101010100000011001101100010101001000110001101100110111001110011110010010100110101100001011111110111010111111000111110100110001101100100001101100101010001011011100010001010111001011110011100010000101100100000101110100111001100100011101000011110111101110010010111001101001010110001000001101001101000011101011010101111111110101010101010011101000110100110010111111001011110000000001011110101111110000101101110101000110110001101101000000110011010011110101100000000101101100011011000101111101110111010000011101000101011100000011100101111101111111110001110101110001101000110101001110110110011101011111001110111010000001101000011000001110111010010111000101111101010001111110000000010100010101100011110010110101100111001000011011101010110101011010000110010100000100100001001100000001101110100010010011100110111100011100001001110101011000110010000110010101110001010100010111101011001110001010001111101110101100110111001100011110000001100101000010011111101010111000110001010100101111000011010110110110110000000010100100000101011011010001010010101101000101011101001100011101111101000110110000111110011110010010111100101111011111010111100100110000011111110100011101001001001100100001110000111001000110010011111110011100101011111111001011000111111010100001110010111100001010010011100011000101101110111000010110001010110100001110000010000010110010011001000011111110110010101100100000010100101100000110011010110011101101111010110100000011011001011001010101111101001111000000101101110001101100011000111111100000101000110000101011101011000100101011011010100100010101111101111101000001000010111101101101101000110001000100110000001000111011010011011100100111011010100000000011010011111000001001100100010101011101101011000110001000011011101001110001011110111001101100101101001111110110101011110000001010101111110001011101001010111101001011111000001011101010100100011011001110111001001111101101110001111111010010000011111110000000000011001111100111110001100011001110111100000111100010100001100100000011001001100100100000110000111011100010010101000010000000110001011001100111111100110010110001000000010011001110001001101011000100001000010111100101001010010111011000111100001001110000110011001000001010000001010000011111001110000100000011010111010001001111110001001111100100100111010001011110010010011010000010000000100111110011111101110101011001010000100111100110100101001101001100000011101010111111010101111000000110111011100010101011100110101100110000010001011110101010100100110010000101111000001100010000111111010110010000000110011000011111010010100010101001011110011111110010100111101101000111001110111100110101110111111111010000100001010111001010100111110010001001101011010010110010111111001110101110101101001111010001100111001110010001010000010010110011011100101010101011100100011011011011111110100100000111010111000100001000111100101111011001010010111011000000011101001100001010110101111110100110010001100111001110100100011010100001100100101111111100111100001101010110011101101101101100000001000000101111111101000011101011100000101000000110110110101100000101001011000001000000001110010011101101000110010100010110000111000000100010111010111001110110010110001101100110100001000110100100100001101010110100000101010101111000001001001101011001001100000001001010010111100111111001010010010001101001001010101100111110010000101001011000000000111110001101100110111110110101111011110000100111001000100101100110111001010011110100111000010011100100101000001000011110011111011001111001001000100000000100111110011110010101110010010000011000110001000001111000101111110011011100001101110001110110011000010000100000000001101110000011000111001000000101101110111010111010101100111001000111111011101010110101110000101001000110100011000100111011101110011001010011110000100000000011110001010011010010001110100100100110011010110000111111111001000100000101010000111001110010101000001101000100000011111001000100111100100001000110111000011100110101100101100100111110101100010111000000111001110000101111011110010101011000110100111010011000110100110110101101100101010101110101010111100011111000101101101100111110011100111001010001100110110110110001101110001001000001111110100100010101000001010111001000110110101001010101110010010000010101001011101001100100001111100100000100110011100110011011011010000011011101001000111110100000010010101001110000111100111011001101100000110001101110100100110001010100100111111110100110001010110001001000010011000001000000011101111000010000111010101011101111000100000111100100100001011110001011110100100111111111010110001000110111111001011010000111101011011001110000010000100101010011010111000011000100011111001111000111000111001111101101100001000101001110100110011101111011110000101000110100011110000101000100010100100010011101110110101101001100010010101001001101101100100111011101100001010010101000011101100110001001101011101111010110001111011100000011001101010110110000110010110000110110011110110100000101010010000101110100000010011001010101110001011001111111110000100101100110110110000101011001100000000000001000100100100011111100010000100000111101101111100 +010001001000000110000110011100111101110100000001101010001110100001000110011010110010111110100100011111001010011101110011011010001000110100010110000001000110110011101111111011010100001110011011010010110010001101111110101010111010010000000101110000101111010101001010001000110000011110101011110101010010000110111110100011010101100100101111010001010101101010100110101110000011101110001001100010101101111101111100100101100010010010010010000010001011011011000111001000100111011011000100000010000101000100111001010101101100100011001110100100101010111110100111011000101001010010000110100010000111111111010000000001011100100101111111011000101111000000101011000011001001101111100000000110010110010001111100101111111101000011000101001110110000000011111011011111001011011111100110000111010110100001010001101010100000100100101000011101010001011111001001000100001100011011100000100100001111000011101100001001101111011110010111010001110011011111100001111100001000110110110010100111011010110000001000111001100110011010111100010110010011001010101010111000101011001010011001011000111001010000101001011010100010011100011111010101111010100001110110000100010000011100111100000101101011011110111001001111001010010110110011000100100010100000010111011001100111111011101000111000100001110011110111110110100000100111011100110010111011000010100000111010011110000101101011011011101011001010000110000111000001111110011101111101100000010001010000000011000011110000010000100101100011111111010011001110101000001000100010111010110101110101111000111110110111010---------010000110010111001010000001101100101110011001010001101111111111011011000111111010010010111110110011001101111010011110111111010110101001101011010101110101101011001101011110110100001010111110000111010110110010110111110110001101010001011111010101010111011001101000011111111001000000111011011111011111100010011001001011001010001011000010101000110100111101011111001101111011111001000100101010100101111101011110011101101000011011010111010110100011001100011000111101000110000100010011101011010100110110010011100000011100011100010111010111010001110010100111101111101011000010010101001100001001101100110001100011011111011011111011110011011110001101101001101110100010011110110110111000010011010000001011101010000100000101111000101000100010111010101001000111011100111111011000010100000000000111101111110110110011001101100111000000101100001111010111001100100111010110100111100101110111010111110000010100111100001110001111110101010001110111100011001101111010001101001010010110101110001111000110010011101101000110110101011000111100011100110001110010010010110111100011101011011011011001010010000101001000011011111110100101001101011010001001111000010001011001000111101100101110100100100000110111011010100110000100000100001110001101110001010011110011100110110011111011101111110101110100010001000100101001000000111100111110100000110101011000100010001010110101110100110010000001011100001000110110100101100111000111011100000010100000011111101110100100010100011010100111011101011001011110000000100101101100010001110010000101111011101101101000000001111110111111010111000110110101001001001111001100001110010111100111010010111000100100111101010010110010010110101100001101110101001111011101000100101100111100110101111011010110100110101001010101010000001001101101110001000101010101100101101100011000100110111100001000011100000010110100011110110000011001101101100100010011001111101010001000111101001110100101110101010010010010101011111001101000011110000111011011011100000100110110011111101111001110110011110010111011110000010111110001011101100100101110000000000010101000100011010101111111110111000001100101111001100101100001001101111000101111110100110011000010010111111001111110111000100000011011011000111111100100110101100011001101011000110001101011010101000111001100111000110101110110110000001001011100000101000100010011110100100101011000101011001110000110010011011000011000001010101000111011001011010000001100101110000111101110100000100001100000011110000000011101011011001010001000010011001110000001101001011001110110111111111101100101100010010101100111001011000010010001111110110101101111101011111101010011000000010001011101111010110001111000000011001010001010011000001000111101101111001101011111110101110101111100010011101101111010011001000001101101001111100100111000010010101111011011001011111010011111010110100001110101001001000111100001000001111100101110001111111011100000000000010101000100001001000001011011101000011011100101010010010101111101011111011011010010010101110101010000011111100000011001000110111010100011011111101001101001101011110000000101000100000111110110011001011111111011001000000111110110000000010010110110011110010011111011011101010110000100010110010001100110100100110000100110011010001000111100101101111011011010110111000010000001001110000011010110101110001011100001001011101011010011010111011001111100101101101111101100000010111101101001100001010000010000010010010101011101011110111101011001110010110000110000111010010010111101100101011101110100001001000101111011011101100010001001000010011111100101010111011101101111110111001101110111011011110000111100111110011001110000010110101110011101011010010000101101011011100111010111001100100000111011001010010010100111010110111010001010000011100011001010001011111101010101101111111000111111011001101010100100001000101000011100000011010001111011101110000111100110011011011101010111011100010101010111110100011001111101101011000011001000100101100011010100000110010111001110101001011001110111110010000110010111011011101001101011011101010111011111001010011111101101110001100000010101011011011101110011101100111000001011011000001111010000010001100000001011100011011101100110001111001011110110001101000001110110100001110011110101000110101110100001110011100101101010011001100100110001100101100010000011101011001110100100111010000000110001100111010000000010010010100001000110000111011101101100100100010100101001110011011000100100000111101001100100100100010010010110111011011000110011100001010100111101000111111001011011100010000100100101010110110011111111001100000010000011110011101110111011011111001010011001011110110011110010001111101100000101110101100001011001111010011100111000000100101111101111001110101111010111010001011011011010001011100100111110000111101010000001110110001011011010111001100001110010001010010101001110100110011101100110101010010100101001001100111101111111010010001011010000110110100100110110101101000011111001011011101111101101011101000011101101101100000111111010000101100011110010000111000001000100001110100000011111100001101110101011101110111010011001000010000000010000111000001101011001001001100011001000101001010111100010001101011010001011000011000011111000011100000110110100001111110110111111001001011010111010001000011100001101000001011110111100110101000010000000110110010110101110000100110000001011110000001100001011001101111110011111100111100000000100010110001011010110101101101010110011001001010101001111101001000100101111100110011011000100000100010001001101100000010011010110001000110010111000000111001001111001110011100011011010000110010101101111000011000101110100110101111011010110000011110101111100101111100010110100101111010111101001100101001110000011000111110100010100101110000111010011111011000110001000000001000100000100001100111010000001100111100110101001111010010100111101110010111111111000001101001000110110011001100111111001110000101001001001000100000010000010010111100010011100101001000111010101001101000110001101110000100100100101001101111001001010001100100010110101100111010101001010100010101110100101111100110000001111110011111111110000101010101111111111101011011011010100101101100100100011001011010110010000011110011000110010101001010001011010111011110011000000010010110001111100010111001110110011000101000010011001001110110001100101100101100011000010011100110111010011101000001111000010111101110010111001111001101111101010110001110100000000101100100011100010111100100110101101001011011000110111110010110101100011001101101100100101010111100011110001111000110001001001011010100010011001000110000100001111011010001111001111011000111001001101011001101100001101111010001100101101000100101000111000101010010011100101110101011010100000101011000001001111100110101000011011100011101111001111111110100111001110011010111000001000111010001000011101100111101101101000100100000000001110011100101011111000010011100101100010101011001101011110001011001110000011111010001011001010110111001000100001001011011001000001001011100000101001011010010100111101010001111111101001100110000011001101001100110100110101111110011111110110000000100001000101100011000111100101110000010111010000011100101101000010101110100110001111010011100001001010111010000101010100111001000010101101011100101001100001000000001011101011010010011101101001111001011011011101011010111010010011101111101111100110101100000010110100100100111101001101100000011111100110111100111110010001100101100011010101101111100110011101110100101011010100011110010001100010110110001101001001000010010110010001000101000001010110010111100000001101111110001101110011111000011111101110110111010001011111000101010110110100011010010111101001111100001010101000101110000111000001011101010000011110000111111010011000000000001010000100011011011101111101010111101000000100010101100110111010100011000110010000111100000011000111001100101010010011000111111010011011101100001010111001100101101100110101100001001110001101001011010001111010010000010100100001110101010100011110011111001110110010100100100011010001111110110011001111110110111001000111011010011111000011011010110101000010101111100001000011010111001000111111101010011110000101100001101110111010000001001 +010110101001001110100101111001011101010011001111111110010001000000101111111001011011110010110000100110111100000011011101011110100011011011011111101111010100101110101011000000110101110100001001111100000001010001111000111001111110101100000001000111011010111101011000110101111001000101100101000111010000101111000110000100010100000010011010010000100100101111101001101011010000100110001000000111010100101011111000010100011010101100110000100000110000010100110101100001100000110100100111110100001001100100100101100101101011011000011100111010100101001100000011110110001110101011000001000111010011000001010001100001101011000000001000111001010001110010011110000001000101000100010001001011001011011001100101001110001110001010110000001111100110010010010011001010100100010101000111000000001111001111001011010010101111000000101101111111001111111000110000100010100000000000101111001111110010011011101110011001011110000001100110010010101000100110111011010100111100010101000101101010101000110000010010010101011100010011111000110101110010011101011110000011001110100011100000000000001001110100101101101011011000011000001101010101100100111101001011011000010001111110011010001011101100000100000010111110100011100011101000001001110100110010011000110010010101001000011011111011110110110110011100111111111100100101111011001011110101010001100011110000000011101010100000011011111110110111000000101001001010001100110011001010110001011101111101001001111011000110000110111000011110001111001010001010010111010100110110000011011101110111101100101011011111111---------011000001100000101110000101100101011001100100011001010010100001111111110000010010110101101010000100111111001100010101000100001010111111001111010001000100010010110101101111110100100000000101000111001101010001110101111101000101101000001011110010001100001001101010100000110110000110110001100000010000010101001000100000010001110000000111001101100101100110001011111111101110001010010110110111000110011101000110101010110000001001110001100110101110111111101111001000011010011100001111111110010111110001000110010101010101011000010000110000010000110001111000011001011010111010000010000010111101000100110101001011111001101000011001110001011000111001001100110000101101101011010100111001010011010110100011100000100110000000101111111000001110000100110111010110110001101110001100011000010000010101110001101001010011111110110100011010111001011011000000100110110111000101010010110111100110110011101011010101110011110101001010110000011010000001001100000001110001001011100100110111001110110010100101111101111101010100110000001101001000010010111101001110101010101000101011000100110100010101011110110011010011101101111010000000000101010000101000010010110010100101000000010101111010001010101000100100000000010101001001011100111000011010110010001100000101101100100110010110000110110001101010110101111100101101100101011100111000001110001111100011010100110100000000101110111111110111110000011000001010010011111111001111010001111001001010000011011101011000101010001000000110000001001100001000010100100110110001001110011110000110001101110100110001110010111011000010100000001110111000011001101100101011001100001000001111101101111000010101101100101101101000000100111110111110110000110100100011000100001011011101010010111011101000101010010010110110101001011011100001110000110011011100100011010011110110001011010001010010011000110001111111001010110111101001000010001111011111011000010010100100000011111001110000101000010001000111000011000110011101000110110010110111010110010001000011100110000001110111011101111111000011110110110000111010000001100011111010001110110000000010011010101011100001001011001011110001100111110011100111010001000110001100111111000001111101000101000101110000010010000100110000010010101000001000110011111111100110010101011000011001101110010111100101011000011010111010101110001110011001110010000011111001101101111111101010110100110101100010000100010010000001111101111110100010101010010100111001110000010110100110100001101001100001110111011111001101110011100001001101011100011000101111111010000001000110011100001011011010010010101100001000101111011011011000011010010000010100110001001000010110100110010101001010001010100111011011100011001001101011111101100110111110100110111010110011010100100110101100111111001011001010101111110111100100001101001001100111001010010100000011010101001010101010101001100010000101011110000101111110011011100000000000101100100110000110000100101000000110011100111101111100010100010010111011101000000010101001101000001110000001111101100100000001010000110100100110101001101001111011000011001000010001000011110101101011000100110111011101000110001001110111011111101000111100001110110010011101001000011100101101100110100111001110001100011011000100000101110111010001111000100101000001111110011110111000100010100101000010111011111000101111111010001111000001100111101111110100010111001010010100010111101110110100111110101101000111001101000011000110001001100010000101011110101010001011011011011010101111101111111110101100100101101001000100100111110010001001110100001001011110101000110101001011100101110101010000010100010111111011110011101000000001111100001100011101111100001001001001011111001100000011000111000000110011011101111000010110011110011000110011100111001000110011101010101011111110111100100100001011001100101101011010111110011000011100110010001110001111011010001111101111001111110111111011110111110111011100001111001111011111110111000001010011010000100110110111101111010010110110111111000001101010110111111111110010011001010111001111111010101000100011111001111110001111011101100101101010010000111100010001101011010100111011011000000100100001100111010001010001111100010111011011011000000100000100101110001110111001001110111111101111100110010010010101110110111100011100111110101110101101101110001100001101101110110011110011110110111001011010111001101001001111000111100100001011010000101101111001100000011011100001000001000100011101010111110100001001011111111000101011100010010101000110001111000110111011010110011100010111100111000000111110001001011111011111010100000001011101000100000010000110010101000100100111101110110110001101110010011110101011110011101111110101001110110001011111101011100110110011000100011111100000111011101000011000011110010001011100001011111100111101110110100111001111110100010010001001110100110111001111000111000000011110110011010110100001001111100000111011000000110001000100001011001101010001100101111110110110100010000111100000011000000111111001010100000111011010000001011100110010100010100101011111000000010111101001011011111101110010111111011010110000011101101100011001000001011011010000110111100000000000111110100011010101101100101100111001011000101000011111011100001011110011110101010100111011010111111000010111110011000011001011100111100111001110111110001011011101110011011000110010100100001100101101011100011100011100010100000100011010000111111101110000110001011000110010110110101011110101010110111111100100010100101010011110001001110111110111001101010101001001001010100010110110000111101001111101000000110010101001010101110100000110001011011001000101100100000000111001100000011001000010101001011101111001100100001110010101100101110111110011110101110011001001000110111000010111010000100010110100110110111110000000110101001011001100011011101100000011000010000011010101101101101100100000101010010000001100110011111100011010111001010110001110101110101111100111110001010000000001111100000001101111110011011101001001011101011010011000101010100101010110101011000011110010010100111010010111011100111110010000010010010100001010110101001000010001000001000011110101011110110001100010111010100110000111101000010100101000010011011001110101110101111110110111111010100000110101011010110101010101000000010010100011010000110100101100011001110010011010100101001110110001010000101111011111101101010110110101011111001100000011100010100110101010000110110010101100011001101110111101101010010001101101101011101110010110101100101010111011010011001101000000101001111110111111010100110110010011100010101101001100100001000010110100000011011100010101010010111000010011001100101100000011101000111100011110101111101001101110001100101111000101111111100101101110110011010010011101011110010101101100000110100110010010101101110110110010101101011010000000011100111101100110111010111000111110000001111100100011100101000110100011010000101010110111110110101001010011010111000010110110111111001100001010010110110111001011011001010001001100110001101000010000001010111000011011011001110000011000001110100100011000010011000101001100000010101000101101111010110000100011101000000101011101010100010010110110111011111001010110110011111011100011111111110001111100001000000101110101010111111010110000110000011000000001000111110010001101111001000100110000000010100000001100111110000111001111010100110010011111111101111000111001100010110001000100100011010110011110110110111011010101100001011101000000001100101010011100000001100101011001110100001100110100011001000101110100000001001001001111100110000001011101111000001111000101111100001111101011111101111011100110011110011001100001011110111100011111010001001011111101000100010110111101010011101111101000101001101111101101010111100100110111001101001000101011111110001110001100111010100110100100011010011100001010000011010101100010011111100111110110001110101111100100100101010000010110000110101110011010101110111101010010000111000011100101110000111010010010010100011001111011110011101110111111110110010011111001110010011111100101100010000011001011001001101100110001010001111000000110110101110101000010110011011011100000001110000101110110111000010110110001111000010101111110001111100111111101010001110110000111000100000 +000100010101111100001011111111001100000100000101110001001000101000111101001100110111101110110011010100000010111001101110101100011001000000101111111101000110010101010010110011001000010000101010000001011111011001110001010110011000110001011010010000001110100100011101010010110011100100100101000101110000110100100011100001101111000011011100001101001100110110000011011111101100111100100110110001110001011110101001010111010110111100100101110010101001100101110000001100011011100111111101100000110001100010111011101100000110010001101100001000011111010011000001000101110000101001000000010011111001110101010001001101010011100110111010100000010000111000101100110101000100110100000000101000111010100001100010111000110000001000010100110000001110000001011100110101110100010011001000101000011010011001100101110110010011101011001101000011100100000011001110011110110001101010010000110100000110100110011100011111000010110111001100111100010100001111000110110010111110111100110001011100111001011111001010001010001000101010111011100010000001010100110000100000100000010000101111110110001110011001101011111101000000000111101111011110001000010000110001111011000111011011010110010000111101100010000110011110100011011010010101110110110111011101101111010101011000011000011001111010110110111000101010001100001011101101011100100110110101100010100100110000110001101011000011100000111100110001001001011101000000001000011011111111101011100101111010011111100100111001110011010011010001011001001001110000111011001000011000000000111110000000001101100011100111100---------101101000110100011110101111001110111011011000111000001101001011000001010100111001001101100000100001000110110010111011010111100001101100010111000001001001111001001111000111010001010100001100010001000110100110110011110110101001011100110000000111000011111010001010010110110011010010010011111110101000001101010010001111000110010001010111011001010100001101001011101100111111100110110000100110010000011001111011110011100111100011110001110011001101000010001100100011000001010011011000001100000010010001011111001001100010111000000000001000011101100001101000000111101000110100001100000000101010100110111100011010110111011100100011011110010101000100100000110010111111010000100110010000010101101010111010110001110110010101100101110000000101100001110110000101010111001110001001110110100011100001000010110100001001100011000011101011010111110001001110011111000101111100101001110101101111001011010011000110001101010111000001001101011001101011000011000100111001011110000100100001010111000000011000010001010011000001101000001001000011000110111110100000011000011000100101111111100011010100101010110101100000110100111000100001000101010111000001110111101001011001010010011010100011111011111101110011011111111001011101101001010111000100100000010011111001001110000101001001111000000111110001011001011111100010111010101110001010111000001000000110100111011101111100100111110100100000111010101101000000100100101001111111111110100101010111111011001001001101001101111001100011000011111011000110010000100110110101010100000000000010101001000001101010100011010101101100101111111000011001111100001110001110000100111111010110010101010101101101011010011001110101010000110001011110011100100111010101100110111100110100110011011010110000100011011001110100101011100001111110001100010100111011110011011010000101010011101010101001110111110111000000011001010100110111010011111101111111101111100110011100110000110000111011101011000011110100100001101010010111100110100011101001110111111100010000010101101010001100110101001011011101101101010010011001101100111101101000001000001111001101101011000110010001110111000111011111101111101100100000010101101011111011000011000001110010110101000011111110101111100011010001100001101000011000100010110010111000001000001101100000111100110010100100001100011000010011110011101101100000000000011010000011101100001100001000110011001110011110100011111110010011111011011010100101000011100011100011000111110010000111010101011101100000100011010011111010011101100111101011101011010001011010000011000010111110011010101100100111101000100010111111010110010010010110010010111000111110010011001011111111000001110110100000011110110011110011111111111110100101101010001001010000110111100100010101101010000001001000011001111110001110101111101111101001100110010001000010100101000100011110110001110100010010000110100100101101010100010010111100010100011100011111011010010010100111011001100100001000010100001001110101101101101100001101111100010011000101101100110011001001101011111101110111101101001011010000001000101101110111010111000011001001010000100110011010100001010110100011111001100111100110001100000001011000111001101010011010111010011111000110000011001110111111000111010111000110001010100011100110100010101011110111000011111010010101011101111111101100010111111011010111010100110000010101001101101100011110011011101011111011011100111011000011111101111001101100101000110001101000000001110101000111001000101110111011010010010001001011100101001110100001100110110011001101110110101100110010110000101111100000111110001111001111011010110111111000001110110011001100000111011101110110001100000001100000101001111000000100111010000001110001100100010000111010110010010011100101100000001100101100010110011010011100000010101011001110100110011100100011001111000001100001000010010010100111101011110011010111000101011000101110000011000101110010010010101100111101010000111011111101010111101010000100000000010001001111101110000100101101101010001110100101001001110111100011110111101100110101010110110111010111111011111010010101110011010000100100101100011111000001010100011100001101101101011100111001011001000001001111001100110010001101011010101010100100100111001100100110101001011110101000010110011111010110101011111111101010001000010111111101111011010000011001111110100001101101001111010011110011001010101111000101001100101011110000010001100011010111011011000000100110100111110110011000110010001100011001011111101100111011001010010001010001111101010001100000011101101110110010101011000001001010001101010100100000101010111010100111000010110111100101010101010000011111011111001001101011111011101000100001001000100101010000110100011000111011000001011000001110100100001111100001110010111100011010010010100101110110011110010101011001001101010101100101111010101011010101110011010101011000100000110011010101110110000001000100100000010111101001010110010010111010010100101101111010111010011001101100010001010000100010010011101110100111111000011111110101000011001111011110111100101001101011011000011010000001010101010100000001001001000110011010100110001100110111111000100001111111000111011001011011101011101101110001001011110011111001011000010010001011011011000101110011101010111100011001110101100000110101100001110101100000010010101100110111100101010110101000001110101010011011000110110010100001101101000110011011111010101101100011011011100000100111110101010011101101101111001110010001101001000100010001100001100101101111100011100101101100110100100111110101101011111111110110010000011010110000111110100010110111100101000110111111010100011010111101100101110000101100101100111000111110100001100001000011111000101111101001101100111110010101011110101001101100011111110100100101110111111101101010110100010100111100101000100000111001000001011111010111001110001001110101001111111010010111110100100011010101001111110000010001100101000000100100010010111010111011100001000011110111110000010000001011011001111111011101011000011110011000100010011111110010101010111011001111100010111101001110100101100110100101011110110110001100101110100011010011110001100101010011110011100001010111101011100101001000010001101001010001001011101100010101001100001100010110000010000011001100111001001110010000111100000110000101001011011111110101110011111000100011000010100101000010011111011101010110100101010000111000001111100100100101111110110000110011100110111110110101011010100001111101110010011000010111010000010111000101010100010011011101100110101110100101011101000001100001001001011010101111001101000001001111100000111110111000001001100000011101011000100000100001111100110000011111010010101111001100110010000011010010010111100000111000011001111000110011111101110000011011000110010000111101010000001010001011110100010100010110111111010000000101101111000011100011100000010101001000101100111111010110100011100111100101010000010101111110001000010110001001101100000111110111001110101000111100000010010101111010011101011010110111110101001011011100100011110110101001010000100001100000100111011000101010110101110100001011100010111001100001110110110001111111110010001011000100101110100000110011111101010001011011100101100000010001110010011101000111100010111101100010101001010010000000101000001000110110100110111100001011101000010111100101100000001110101101001110100011011010100000110100000101001001110011111001011101100010101000000110000100111000110000111101110000100110101000011000100011101010110100000001100000001111101011101011010010000010011010100010000000101011111100001100111111111010000100100100011101101000010000110101101111111100111001000101010110101110110110000000001000001011111111011011011011010011100001010100011100111001101100010110110101110111111000101101110101101001101011010000010101010100000101001110010101001001011111011000001001111011010000101101111001011110000111100011111010111110010110010101110111011001111101011110111110101010011100011110110101101011111001100010001101110110001111000010001001001001100100100000101011110111010101110001001101011000001110001000101100101011011110011010110110110000000010100001100011110011001010111011001101100111001011111000000011111110011000000111111111101000010001010101101110010010111010000 +111101101100010111000101110100100011001011101111110001111001110011010101100010101001110001100001001100101100101001101010110110111101111010010000010000001110001110101111100101001010011001001011001011000101100100110101011000100011110100111000110111100010001011110000001110110101111011101100101100100010001110101101110110011011100001101000100011010000111101100101110010111000001000111100101011001010000110001101010101010011000101001010000010011010000100010100111101101011001111111000100100101001011111110100111100000011000010111101110011001110010100011011000110001000110100010000100111010010001001010011001001011011001001010011001010001100111100101100000011011111101110011111100001110111101000101000111110010100101111001101000100000001011111100101101001100110110110110011110001010000011101111001010001001111111001011111011101001110111011011101110011010101010000100001101011101001000001101111011111000100000001000111101101010000101000111001010111101000110100110011110001110111001101100110101101100101101001010110101100110100000010110100100110111101110000011110100000001000101101001100111000110010001011000011111111101110111101001111011101111011011101111100111110110001110001000101101011011111000010001101011110011110100010000011011110001010000010011110110010001101001011000110001010111011010010110101011011000011100000110101100100010111111001000110011111100100001111011000001001111110100111001000010001001101011110011110101101100101000100010111000101010101010011010110011110000111000100001001101110000010110010111010110010010100110---------111011000001101110101111011010000100010101101001011100000111001010000011001010000101100110110110010101110010110001011000100011110101111000010101000010101001011010111001000000001010000011010101000111111011110101001110000101111111011000001101000101111000101001000011011101101110011001000100110110110011100011101001110101010100010011010101110001101000101101101001110010001100010111101000111011100010010001011100110000010100101110001010101110110110100100110011101000011100100111011101111101010001001001101110011110000000100100000111001100001110110111111100001001110101101101111110010010001111100001010010001110001010110111100000101001101011000101001101101001011011101111011000001101100001111001101010000101111110111110001100010100011110010000010110011011011001110110010111000111000110000111010011111011110001111111011011101111100011110001111011000001100010101100011110101011111001111111110011101101110100011111111110010011101111100100101010110001010010011001001011111000000010001001010101000101011101000111101011110011100010011000100101100010011101110010011010110111101001100001010001110110011000001001010000011101011111110100000111001110011111110111010000001100000000110000011011100110000111110111110101010011101100111111100011100010111110110111101111001101011100000110011110101110001000101101000010101100010000110100000111100101100011010111000011111101011100111110011010000100011001010101110011101101111000100101011101001011101111110010000110100001010111011110111001010001101101100110111101101110100101011010111111010010010101110101000100101010010110011011111001111010000100010100010010111000011000010001010100001110111010001011001111101011011001100010110101101011100110110100010101001011100111001110011110110101100011101011001111101101001010000101100001110110011010011110010101111101010000011101011001100111011100001100000011111110011111101111010100101100000101100000010010011100000001011010011111011100110101110100010100010110011001111010111100010100101100001110100110111000100100010111001100110101111111010110101000001001011011101010001011111101001101101011001101010101000101000001100011000100011011111111110100100011001000001011010011111000101000010100100010011010111011000111000100100100111000011000100011010011011011101110011110010100101000100010110100001001011001110000011100111100000001011000110010000000110110101101000010101110011110011101101100101000010010000111101101101011101111011010111010110010010011011011011010001110010110001110010110100000011010001000011100111001100100000100111100100010111011101001101110000010110001011111111000100011000110000001000100011110010000111111101011101111001101110100110000100000000101000100111011000011001010110111110101000101101001001010100101010010000010001111111011000000000000110010001111100000110011011100110101010001101010100000101011010111001011100010011011000110110110111101000010001000100101001010010101000110000101110011011110010011110101100101101100111101101100011001010101001000111101000100101001111000111110111011100001010100100010001011011011001100100000101011101001011110111100010001110000100111001101001001110101001000111101100111000110110010110000000100011011110000100001010000001000101111001000110001111111100110011010101010110000001110001001001110111011111000111110000000101111000101011001110010000100001110001001011100110100110010100000101100010101101011110000001011000100010000101110110000011011000100001011000110111100111100101010110001101000111011000100101001010011110101100110011100000110111001011001011001001110110010010111101001000101110101001010111010001000000111010101000111100110110011001010111110010110101011000111001101110000100011001011110010000000111011111000011011001001101110010001110011011110101001010000111100100001001101000100101010111010001110010110100111001101011110010100100101101100101010100011110111000100111111100001100011001001000011010100111101110001001011111111000100010100100000100000011011011001100000001001001101010111100100010111010111000010111101110101110111011001011011100000010111101111000000111111011011100111010100011111110011101110101001010000010001000110001001111101011011100100001111100111100100010100011011001011011101000101101000001010011100000001001111111001110010101011100110001001001110100011000011101101000000110010101101001000111011010111010000100011011100000101011110111011110100010001111011101001111111000000101110100011111001101000001101000000111001101001000111010001110011100101000001100010111001100101111000101111000000010011110101010010110001100110100111001100100111101101101001110100110010100001011100110100101000100101010000001100111010011101111100100010000010001111100001110110010000010111101110010111110101111010001111001011011110110111011000100101110000010001001101010011101111001101011100100010111110000010001010100110110000110100000010010000101111110101001011001010000101010100000111010110111100001001111000011001000000001001001110011100001110100000111111001001010101010010111000000101100100001110101010001110011110010100111100000000110000100000111100110111000010110000111001000011011000101110101111101101010100111010110101111110110100010010110010010010010110000010000101011101010010111111100100010111100111110100101111011010101000110111011010111000101101001001001000001111011101000110110111010000111101111011011110111001110110010110011001001010000000001101110100100111001011100110001010011101110100101000011100010001001111110111001101000100101110011100110011110110111010101101100110001101100100110000001000100110101001000101111101001001111100010111001010100001000001100110011001001001101110000001101001101000000010111100100011110100101011011001101111001011001010010110101110111110110110100010110001111111100010101101001000011010110010101100110001001110000111001000100011110110101001111000101100010011100000001001111110000010100110111010011001111101110111110110000110101111101100100110010000011000100001101011011111001010110011100001001011001100110011100110000111101001010101111010010101101101000111001000100100011001001100000101001101100011101010111011100000100010011010111101000110100011110010101001000101110001101100011111001011011000110100111010110110100011000100010111011010101101010100001001111001111100110001001011011011011000110110001100110011101010001111000111101000111001000000100110011110111111000011010001000100101111101010001011100011101110110010100001100100101001011111111100001100011010110110010001101111001001001110100010010011001000011010011010011000101111111010011001001111001110110110110010110101011111000100011111011110110001011001100110110010001111111101000000000000001010001001000000110101101011011000010010010101110010010101101001010101110011010101010100101101101010011110100110111111001111011000101100101000001100101011100010001010010111111101000111011100101111101111001011101111001011101001011100100010101111001011110011010101111101000110101010111010101100110111111010101110011010001000100011011111101101000011111100111011010010110011010111101001111111010000110110101000100100010110011110110100110111110001011001111100110001010101111000010100111011100000000001011001101011101111000000101110110001101011011010010001111110100011100110010110001110110001110101111110111101111001011101000010001100001111011001111010110010011011111110100001000010010011100000001101010110011101111010001001010010101100100010110101000111011000100111000010011100010000010100101100000100111011110110011101111001000001001001010001011011010101101000110100101110000101000101111010010111110100111100000100010101001110110101010000110101110101010111110000011000000011101001010001100010010001111110011010110011011010000110101011000110000011110000001011101000000001101100001110100101001011101100001111010110000010011011111100001000100011001001101001110101001010101000101101001001110111111011101001011010011110110110010101011101101010100000010100001011111100010001110100101011010001110101111100111000110010010011000010101100110011111011111000010000110100000000000000000111010111000100000111010011100000110101011010010100011110110100000100010101010001011110111100110000001111011011011101101011100101011010011001000111000111110110010101000100000000001001 +110000111101010010101000110011011011010011101001100001101110100011000011010010111010000100000001101101100000000100011111101100011101110011011000001101101111000011110110000011010010111010101010111110000101011001001011001010111111010011000111110011000110111110100010110111110000001101110011001111000001101011110111000001011010011010011010011010100011000111110101001010100010100100010111011001001010001000001011110101000100101010011110100001110001110100010010000110010101000111101110110001000110111110001101100000011110111011011000000000010111111110111111001011101100110100001110101010111110010100001011110100110000101001000101000110111010111101011100011101101001010111001010000110111111011101100000010011100110001010010111111000001110101000100001000001010000101101100001100110001111101111010000010111000100001100011111011100010100001100000001101101110111001100101010101010001000111101111011001100001011001010111110011000000010011011010100100100000000011100001011101111110111110001010101100100011101100110011110010011011001010000110001110100111010001011111011000110101111110110010010110100011011110110100010001111110011010000001010011011010100010110111001101110011110011110110110010110111101100110100011110011111010011100011100110000000111001000001100001011100111011110110101100110111010110010000000000110011011000010101001111100111101011011101001010111110011000000111100001010010101000101111001111100000101100000001101100110001111001010111010010110000000100111001000111100100111100110101111011100011110000000001010111110010001111---------110000010110010101101011101011101001100110101000000101100111011011101001111001011111000011101111011100101010101100100110111111100100010111000100001111011100101010011110010000001000100001000001101000100101101101011110100111101100111101001010100111101000101001010001001000001101010101111100011101011110111110111110110010100000001111100101100011000001100001000000110010000011010001011000000001111110111000110111010000011000010011100100101010001001101100000001101000110111011010011101000100000101101100000110001100111010101100111100010001111011011110010010011100111000000110100111111000001010100010101000011110110010010010100011101001001000000100110100100111001010011100101001111110000100101111001101011010000010000101110100011010100001110000100100000001010001110000101011011001111101000111111011100010101101111000011011110111100101101111100110111101111011110011010011010100010101101011000011001111100011000000011100111101111011110011010111101111001110110100101011101010000111010010001010111100011010111001110110001001100000100100100100100100100100001110101111001000101010111001110011101001001100001010101111101010001000110111000110111111100010100111001100001001000001010000011001011101101101001000001101110101100011111111000001000111011001001100100100000010011010000100110111000101001010001111001110101010100100111111101010011110010011011100111001101111001101111010110111100001001011101001011000100111001010111101101011011010000101010011100000001000111000101001101001010111010000111110000001000010011100001001000110110000100100010101001000101110100110100001111111110101110100101000100110011111010111000010101011100110111001110110100101111001111011100110100110010000110010001011101101110010011010100110111111101001100011000100101100010110101100100000001000111001110101001001101110111000011000110100011100001010101001011000010110001001011101110100011010101011111110101010100111100110101111010101110001011011101110001100001010100110100110110101111100010011000100000011101001010010000111100110011010001001011101101011000001101001101011001011110111110010010011110001010010000111000100101100101100001101110001100101011001101110110000100000111000111011011100010100010100011010011010000111100001011010010101010000100110011010101011101100100000110001001000001010011010000001010111100101010000110101101100110011111000111100111111010100010111110010100011111100110111100111110110001001100011111010001110111100101010001010011111010111110000011100100100101100010110111010100001000111110100001111010010001101111101011000010100101101001001000101111111011101110101100101111000101000100110110101110110111111110001110000010111110000110010111010000010100010100110111101110000100111110010111100111011011100101010011111111011110110110011011111001111011001001111010011100011001101000000011111110111001010110100000011100010111111111000100100101000011100000110100111100000010110100111000001001001110001001000001110100110000111011001011110111101000001110001010011000010100010101001110100101000111101000001100010100111010000001111011100001010111011101101011101110101000110101010101111101000111010111101010011111100100010011111001110110100010110110100001000111001100000001111001010110000101000001111000000111101001000110101010110000000000001100001001101001010011100101111101010110000011101111000001000001011100100111000000110101011011010011001111010110010101111001100110111011110010101000000010001101110001011011011010111010010011110110100101011001100010001101111100010001010111010110100010101000010110111000011111100110010101110010100010010011111011011111000100100011011111100110000000110001101011011100010100000011101100111010010101001100110111000111100010011101100110111000010001011000000100011101000111100000101000001010111011111111110011000010001100011000000110001011110001110111111111001101110000011011100000111100000111001100010101011101110100010101010110001011111011100001101001010101111111111100001010100000000011100111111100001100001011010001011010000010001110111101001110110101011010000110000110011111111010111100010111011001101000000111111000111100000001001101100101000101111101000111101010010010101010000110010100011001011110001100010001011001110100101101110011000100001111100010111100110100001111101000010100000010000111000110111000011010000111011100100110000011101011010100100011111110001011110111111001111101011000010000110011011111111101001100011101110010101101100111100011110001101001111100111011101010110111010000000011010100000111111010000001010010001101111100011000000100110010110111100010011100101101111000011011010000110010010001001101110010100100011011001000001010110010011011101110110101111001000010100100111100000100001001011100111001000000001010000111010001110110001101110001010111101011011101100110101100101100110110010100100100100101100010111100010001111111010111001001010000110010001000100110011000010100001100010111011000111011010111010001001111110001010001111101111011000111100100100011111001010000010011110110000111011101001111101011101011011111011010100011110101000100011010101101100010111111101101001110010111000110110111000100100001111100011011111111001000100001110111000101010110100110100100100011101110001111000000110010100000111110100110011011101101100100011010111010111111101011000001000101011000010001110010101010010101010001000111001100010000011111010101011010111001110000110111000100110110010110111101100011111011111010111011101000001100010001011110101101011100101111001010101101111001111100100010101001110000000100011001101111100000111110010100111101000110010001011100000010001111000101000100001010011110110001011001100011111100000001000010110111010001001110101001100101011100111011100010000111001111010111101101000010100110111111000100001001100010010100100100111001110010010110111011111101001100000011000011100110000110101001101111000010100010110100110000001011001001001110100111110001110110000001111110001000000111001100010001011010110010100011000111000111101101100000110111001101101101000010100011101100101001000011100001011111010001000101100000110110011101111111000101011011001001001110001110110011110000011011000110000110011011000101001110010001011000011011110110101010110000101001101100001010101010000001101101001110110001001010000010101101111001110011100111100110010110001001111110001101010001011100110110100011101001000111101001110000111101011011110000100010010011100000101011011100000100001100000101000101000011100000010000011010001101101011001100111111111111111110111011100000011101101100001110000010100111111100101110011011001110110101111010011100000110000010001000010010010010101100011000011111100011011010000111101011001110000011100001001000001110011001111010011011001100111000010110001001100001010100001100111100100000100100010000010101101110111101011010001111011011110100011011111001110110110110111111111000011110011011101110101000010110001011010000111001000111000111101111110001100101101010010101000011110011110011001100000111100000010000101001001001110011011111011000101100001010001010011110001011010001111101011100101110011001011001000000100101101000101100011101011001000011111001010010111100000101001101110010111000000000101111110101101100010101100110011001101000001111001101001110101001100011100100111011010011011110000010011100111101010101001010000010011100101111100101010000011110110001100010111011101101000010011100001100010110111011100111110010010000111101110010011011001001111111110010111101100101000110011101000000100011001010000111011000001010011101111000100001110011010011100110000001110010100110100101100010110011001100000111010010101110100000100010010100000100111010100000111001010010111010010111011011011011111111001110010001110101110001101001110110010011011111010111110000111010010000011000011111001000010100011000110000011001111011111011110011001000011001011100111110100100010110000011011110101000000100111110010000111111101100011011001011110110000101011010110001111011000101110101010000110111110000001111101001010101110101111110000010000011101100101010011000000100011001010100010000101111011011011000101001010100100100100010101000100100110101001100001011100100111011111000101010100011100001010111010110110001110001101 +001010101101000111000110110001100100111001001000000001010101110101001111111011001111101000110010100100111110101111110010000101011011011010100001100100101100001000101111000100010100001110001000110010001010001001111000000001001010000100001100011011110010101100110011110100111111010111110100110111101000011000000010110101000000000001010001001110101010111110101101001000001001101100010101101111100010011011011001010110110110000011111110000100010110100011110101001011101111001100111001010111110110000001111101100110101011111111000011111011011101100001001001111000011100101011000010001111011110111110110100010011011100111010011110000001101001001101101101011001000101000100100001101010100101010110010011001100100101110101110011100010011001001111100010110000100110001100010100010100100010001100100001100100111100011011111100101000100101101111110000011000010111111000001000100000110000100100110110111100010101100101001111011000101010111110001101011000100101011010110010101000011110000010110110110011011100011010001010010101101000000111100011010100001011001101010100101110110110110000100011001100101000010100010011101010010000100010100000101000100010101101101001101111111001111101010101011001010101110010100010010100010100000110000110100111010111011000010100101111100100010111011101111001110101110010101101000001000001011111010000010000101110000101100001101000011010010111001111010011111011111100011001001100010100010000100011100101111111010001111010111110111011111100011000110010001100110011001000111111011101101101010010101001100011111---------111011001111000000101011101001110100010110101110101000110110111110110001000100110100100100011110101101111001000011010001001001100110000100110001000100001110100001000100010100101000001001010001100010011101001111100010111101000010101101100111101001100110100110100001111101110011001101010011100001110101001101100010011000100010001000010001000010010111100010101100000010100111101111001001110001111001101110100101100110101010100011101011000011101110001100011001110001000001010011000101111110011010101000110000001011001000111001110000111100000101110110110101001010010100100110001010011001000011110000101101010010011000000101100001001001010101101011111000111110111101010010000111010110010000001010010101111100110011111001101100100110001101101101110101100100110001111001010111100110001111010111010111101000011000101111100100001001111010001001110111001100010011111111111110000000111011101010110000001111000110001010010001100100100110110000010000111110010010100011001010010000111001010011010011011111010001110010000000100011000100010001001111100000100010111110010101010001110100111010100010001101101001010110010111010111111010001000010000110000001101100011110010000000100101001100010110011100101110000100110110000001011010000111101111001001100001001000000100101011010010011000000010100001011010000000000011000110010100010101010111101010110011101101011010100000001010100110010111011111010011101110001011010001011101100010100001000110110110010101001011000110100100011100000110100101101000101001100001101101100011110101101111011001001010011111110001101001100100101000000110010001111100011110000010111011010100111010011110001010100111100000001100000011101110010010111110000111011000110000101110100010100001001111010110100101110001010010000110111010001100101010000101101011101111010100110001010010010010000111010011111001111000001000001110101010010010111001011100010010111010101101000110100111101011011010000000011111000010011011000011101001111001011101100000000111001100011000110101011110100001110100101000010001011100110111000001000000000010000111111011111000011110011101001001100101100110101010111111110101011100111100101100000001011000000110010111101110101000001100100100010001000101101110111001011111000011000101100011000011100111100110101110100000110100001110111100000000101011100010101100001101100001101111111001001011001101100100111000101000111001100001000110011110010011110011111111100101100010001111000001011100011010001010111110001011101100010011000110100011000000111101101010110010001110100110000111110001001011001011111100110000011111011100100110011110111011000110110111101110100110011110000111111011101111001110001111111110111001011101010001101010110001111001010010011111010010111100011110100000111111110010111111000101101010001010101100001011100110100000111100110110110010001101001001011001011010001011001100000010010010111111111110110110110000001111000100001111011001101100011100111011010100100010110001101011000000110100100101110101101110000100001011110001101001010101000100100111011001001110111001110110110010101101010111001000110111011000101000000101110000101111000001011111100010011101011000011100001100111010010001111110010111111111100101001101110001010111001011001010101000010111010101010010001101011011100100101111011101011010100011010011101011111111000001011110001010011110010111100111011111100100010110011011111100000010110100001000101011001110010101100001000111010011001001001010101100010010000110010100110101001010011000000100101101010010001000110010000110111000101101111111011000100101001100001111001110000101110110100001111111101011100010110010010110101100011110000000000100110100001000101010000100101000111100001101001101011101001100101000101010001100111100101100101101010001010011000100111111000101111101000101011110010100101101001011110010110000111111000111011111101100011001000110001001100010000111110001000100111001110001010000000001111110100110010001101100110111101010001110110101110011001011000100101011010100101100110011111110011101000110011101010001110101010001000100110000101010101011100100001101010001111011111111111111111000101000001000111100101010010111100011110000100000001110010010000010001110100110001001110011010001100001101011101100010000110110100101111110111000101001010100011001110001111100110011101011101000011011110011000110100000011101011110100001000011000011001101111011110001101100001110011011000111011011011000001000010010000101011101100000100111110100111101011010111101101101001000100110001111111100000100111111000001101000100110011001010101010000111100001010110010101010111010100101110111101000000010010110001010100001001001100100011010100101111110000011110100001001110001011000110011111001010010111000011001010001001011110100101001101100100001010111111101101110011000011000101010111110001000001001001011001110101100010111100101100100011010110001111000110111101011111000101011100011011001100001111001011010101001111010111001110111110000011110101011100001001110001100000111100110111000010110000110101010111100000111110111101100010001110110100001111010101110010101001000000010100011010000011110010010010110110110010101111001010010001000011110000111100010000001000100001100101001101001101110111011011111101011001011001100000011010010010100011101000110000010000000010011000001001011010101011000001001010000011010011010100010100011111110011101010011001000010100110110110111110110101001010001100001000100111000011101011111111100011111011110001010011101011001000110110111100111111100000001000011000000101010010110000100000111011000011010111010110110010001100100110010110111100010001011111110000001000010011010100111111111011011000110000101010101111110000001010110101001111111000101011110110111110101000001110111111110111010100011111001101011010011010100100111111001011111010110111100101000111000001101111010110110101000000101011101100000000000001010111000011101110101101000101001100100100001000100111101000011000000011011110000000010001101110101010111010110110111011101000000010111001011011000100001010101010001000000111010011000111110010000001001111000001000110100110000111001111110100110110000101001101011010101100001000110100010010111101011011001111101101101100100101111101001011111111010011010000110011110101111110000010010001110001100010111100110010000100010010100101000001000111111101001101011010111110111101001111000110110011110111111001101011000001111111010001101001000111011101100100001101100110111110111011001101111000011100110100000010011110001001011111001100011110000001011001110010110000100110110000001110111000001011001111111111011010111101011101001110111000011100101000001000110000000100001011110111111000100001101011110100000001010111101010110000110101111010111011010111110110011001110001111001011100101101111101000100000000010111110101110001111110101000101010010000001110000000010100110011011100001100011111001000011001111111000111010110111010110110111011010101010100000110001001111111111010000001100110010001001000111100110101001111011010100101000110110100101111001001110001011101100010001010111010111000100001100110011101000111010110011110110011010110000101001100110111110010001011110000000110101001100001110101101000000101110111111000110101010100111011101010110010011111111010110110101111000010100110010011001010101011110100110110110111000110101101110010001010001010001011001010011000010011001110001010001011000101100000110110110001001001100010010011110100101001111111110011001010101010100001101000011010011110010100111010101100011000010001100001111001100100001010111011000001100111111100011011001010001111001000110000110001110011001100111000010110101001011010101110010000110000010101111000111000000001111100001111101111011101010011110111111111010110100010011011111010100001000001001000011001110110011001101010010100100000010110111111110100011001011011010011111100110101111010010010111100100010111101110100110000110100101001011100110000011111101001100001001100100001101011111001011011010011111010100010010101000101110001100111100011010111000010110001011101100111110110110100110011001011101101111101111001011000011010001011001001100011100110001011101000001101111100111001110010010101001010011100110010101000010 +101011000010000100100000010000011101011101011101011101101011110001110111010001110000111100010011011111011000000000011110100001101100110110010000100000011011111011111101010111100111010011100001101001010000001111011100000100111011010101010010000010111100110110010011011011001110110110100100111101011101111101001100101010101001000110001001111100001001011010010011001110011111100001100011111111010010111100001100100011000011100010111011010001011011111100100010010010110001000100101000000001011011010101000111100111000110101100010000111101010001110010000110010111111111110011101011110000010110010001001011110100001001101101101010011101100010111011101101100111110111100111001101010001100001001000001111110010010001100111100011110101001110111111000011110011000010101101111001110000000101100010110000110001100000100101001001101000000011101110000100100000001011110011101000000010010111011011111110101011001111111101101000110111111010111110111001100101001100101011111011001001011110011101111111110000100101010111000100001110010101101010011100110011001010011110011000101001011111010101110010001000000011001001011000001011000010011100000001011100100110101010110001100001100001111011001110010101111010000001111001001001110001000011110011110101110110110100101110111100110001011111110011101110111000000001100100111101001101111010010111000011001110110011100010101110110111010010111100001011100101000111100010110001010101000110111111001000101010111011011101010110101110110000000000000111000100111000100111110010110110010001010000010000010110000---------001010110111111011101101010111010011110100111001101011011011110000111000101010101011101100001110110100001011011001011011101111111011010110110101010100110001001111100101001110101001001110100110100110001011011011100010110000110110010111100101001100100010010010101100110010110011110001001111000100010101111111010101011001011110010101101101010100010001010110110100110010001101110000001011101010111100010101010101011001001111000001110000000011000001111101101010111101011001110011000010100010001101101001101110110111001001000111010111110111010010000000111110010000000101100101001001111011011100011100011111111010000001010010000111110001010000111110101000010100110010101001001010101011000110010000010110011110111111110010000111010011100001111001111001100000010000100010011111001011011111110011000000110010100001100110100001110100111111110110111111000100110110100101011001011111110000011000010111000110010101010100100100010011011001100000011011101001101010010111110100000101101111011001110011110110111011011001110010010111001010001100000111001101110000010100111101101000110010010001010010100111010000111001001110010111000001000011010000011100000101100011110101000010010110101100010110000000100110110101011010000010101010001100110111000110000101001111001111001100000111011111110110111110110010010101001111110101011111100101111110101110111001001101111001111001111011010101000100110110011010010011001111010110111110000100110100010000100110010100110100010101100100011010101111011111011100011011011111111100100001101100110110011101000000100101110110100000000001110111001110101110111010000000100011000011101001011010010100111010100000100100101100110111001011100000011100000001101001111010011010110011000001100110000101001000010111000111101111010100000000010111101111010010111100111010100010100100100001111101011111010101111011001100101110110101101101100011100001100111011110110011010010000100000001100001001001111111010011111110010011111111000111111000000110100011010010010000111011110100010001010001000011110100101010001011111101111010100111001101011101001001111011110011000100010110100000000010011101111101011111110001001110001111100101111010100101010001110011100100110110011101001000000001111001101100010110110101001100100001101111101100000011110000110010110000100110000100101111111001001000101011001111010111011101101110000100000011101110110000101010011001100111110111110000011001001110000001010011011001101000001101111100000110000011011100111101110111001101110011000000011100000001100111001011101000100000101010010001000010111000100101111110010101000110110110011111101011111001000001011001100100001110000111111101001100001000100000010001101000100010011100001000110001100000100011011011111011110000001010001110111000111011011100000001000010000100100011101100100111101111011010110011100111110011110110001011100101000110010010111110001000001010101001101111010110101101010001101011010011000001110011100011110010011011011010010100100010010011010101001011010101100011110001110010001011001010011101100100011101010011000000010001010010001010110101011010110110100100101010000000011011101110110110000010111010100101011100011110010100000110011101010001111110010111110111110000001100111000101100011011101100001011110101101011010100110010011111110100111011010101001010101100001110101000100110011011110110011101010111001010110101101011000010011000001001100101011101000101000100001001010100011101001101101110111001101110000111010110010001010100101101001010000100000001001000010101111101111000101110111010011010110100100111011001101110001111111000010101000011011000101101101101010000101101010011101011100011111010110010011101011011110010111100001110010011010001100011001011110110001001000111110111000001011001100011101011010011011010111100010011110101101101100000010110100110010101001100100110001011000000110110000011010011111010011001100001100001110001000011011111011101111101100001111101110001011010011110001001111110001110000110110010111100110010111110011111111001000111011001110010111110110100001110101000001101000000100101110001011111100011110100001110100100001001000110001011000011010111101110000010000001010011001011100101000011101111001000001011001101111100101011010010101111000011010011110001001110000001010110111110011001110000111000111110010001001010110101000110010011010101001010111000110000111011100100010000111000101000000110111000000101011101001000000010010111100001010011100001100110100010111111100000000001100110101101110101010010101101100010011100001100010110101111101101001111001000010011110111000010000011010000110011110101001000000101010111010010001101011000111010000001100011111100111000010100100111001110111111010100101011010001101000101111000010010000011100100010101010101001000011101101010001111101101010110010101001011010001100110111101010010101111000111000101111011000110111100101001000010010100101100000010000000000100000000110110010101000010101000100001111101100111110110011111010001001110111100101001110011010011000000000110000011110101111000001100000110000001001111010011011111000110101010011001000000011000000110101011010011011101110011010111010001100001111111111000101001010010011111000010110001110001010111110111010000110010001010000010001011101000011100000101100011111100100110100001111001110001111100000100010101000010111001100110100101000011100110110101010000001011101010110110010010110100000000110011101100000000011010011000101011110010100101001110000011110101010101011011000101111111101001100000100011001010100100101101100001100001110111000111001001100010000011011111010111010110110100001001101001111011001010011110001001010101100101010111101111100111111000101111101011010110001000110100101000011110101000011000110010100010110111111101111010001111000010000101001101111110011010110000001110000011111100101100001010000100110010001101011110001110110111111011101010001001110010010001111110100101000011111000000110010011101100011001000101010110001010111000100000101110110110101110010001011000110001001011111101111100101011011101011000111001011100010110111001101101000000000100000010101100001011100011001010110010010110010000100001011100110011000001111000100101101101011110111101110000101010000101000111110110001001001101000101111101011001010101101001110111010011110001100000111111000111000000011000001000100001011101110000000111111111001000000100100101110000001010011000101011101110011010011111011110111000111101000010010111100000001010001110011100110001111110100010001100101000011110010000101000011110011011101111100111110000001111111011101010111000111111110001010001000111010011010100000111110001000110101100111110111010110010011101010101001010010111011000001001000100010001101100111010001100010010011001001111000100101110010101000001101011010001010111000111111101001000000000111000111000011000010011000100101100000110011110111101111011011100111100000010101101000101111010110101101011001000010110010110110111000110001100110110001100001111100100100010001111001001001001111100100101010101011000011000111000011111111111110100100000111001101100111111100010001110011101110111010001111111000010010111110000110101010011010100111110011000000011000110001110110010110001101010100001011101100001000101000101011010111011001010101000000001100000101111110111101001111111101000000111110010111110011001011010010001110100111000101011100111001101110010010111100001000101010011001001111100010010001010011011010010100001000000110000101010110101110100100001010010001010110011001100001000010001000010101001101110011101000100100010001111011000010010010011011110111111100101010001100011101110101010000101110000100001100101110001011101111001000000001011100100000101001000011001011011100100111001000011000111011011001110011110010101100110100100001000010000011001111011011111000100010110111010011101111101101101011111010001101000000110011100000101111110001011111011111100110010110100111110000101001010110001110011011010101110000000011110110000011000010000100010010011001011000111111001000010101011001010011110111100101111011011000100011011001010111000110000110010111110010101010101100100000111000110011100100100100000011010000100110001101011001010111010111010101010000010000011110 +ls384msgs +000000000111010001011110010111100111010011110010011010010111101010100010100011001010001110011011101011011101010101000001111110110010000110001111010110101110110010101111010010000100111000111100101101010110001001011010101000111101010001101110110001010110001011001110000111010001010001100010011000101111111111011111111111110000100111010111110001001100101110010010100111000001111010000011011000010010100001000001011101100100000011001101111001110001110101111100010101001011101110000011000010001111101000000100110000100000000111100100011000101001110110001111100101001001101110000110111001100100011001100100000010110011101010101001010000001001001000101001001101101111000101000011111000111010011001001101011110000000011001000100000000100100111011110100000111001100100110111111100000110000001110110001100111100100001101100000100100011111001000110011110001101011110111110101010010011000010101010101100000110010111110011000100011110111111010101000110010001111101101011011001110001000010011001111111011111011110110110101011001000011101010110000000001101100001101100001001010011101111001101011101100011101011100110011000010010011111101100110110101100111110111111000010011001110001111000011001010010101001010101001101111001001000010011011011011011110110000011101001111110000100100010011110111110011111101011111010000001000101011001000100001011010010110101111001010111000100000001111011010010110001010010110110010100111010100111001011100000110010100000000110110000110001011111100110100101100101001001101010101110111111010010000001110110100111110010101011101000001111010000110101000110001100111001011010110010110100101000111100100000000000001111101100100000001111001100000101001011000101010010010100000010101111100010101000110011010111101000011011001111101100000010100110111111001111110010000101011101110101100100010100110110001001101001101101100010100111101111101001010111001000011100110100110010110100100010011101000010110101101010011100001000101100111101000110000110111001001101001101000101000110001101011010111110001101110010010100000111111000010000011010000011110000110011111110100111000011100100101001100011011000001011111000110110000001001101000111101101100101010100001110100100001000010101110010001010101000001011100011000100110110000001101000001110011001111010011010001001101001001111001101100111111010001001011111011101011110101001000110011101001010011100100010101010101001010011001010001111001111001000110110110111011011000010000000101010001111111011010000100100000011110001111101000111111101010101111101000110100100010111010101011011010101010010110001101100111001000010111011110011111101001100101000011000111001010000011010011100111110001101010100100101000110100101101101101001101011111001100010010010100011000010101010011101000100000000100100000110110101011100011111100000111010100100100011011010011110100001110010010110010101110111101110101010011111001111011100010011000100101001000011100001001111101011100001110000101010110101110000111111100101111100000110111110110110101010100010011011101111000111100001001110111101000111101110001000111011000111001100010010001000110010101001110000001100101001011011101110000011001010110010110000010010001011000000110001010110111111001011101111110100000001000101100111000110111110111101100100110011001100001111001110111110101101100110100101010010001100100001111010010110110110001010110100010110010100100100011110000111100010010001100100111010011100000010011010101111000110010011100001110001000011001110010001111101001000111000111010101000100001110010111110000001001110111110011100100101111011100111001100011001110011000011100111000100110100000101100110101000000010000010100000100101010111111001001011001100110111110010101010100001101010010111001000011111100111011011111000001100111001110010101010111001010000100010010001001000011000110011100011010111010001100010001011001000101000100010001110011001--------- +001010111010000000010010011001011101001110110101111101000011010010000001011000110101111011111111010011100001110001011000101011110100101011001110001111110001010101011011000010110110101101000000000001111101011110000101101100100100111100000110110111000010101110011010100001000011001011111010111000000001001000000111110111000110110111000001010110000111010111001100111110101100000010010100101000001111110011111110000110110001000110110101010010100110001000001010010100110000001100100111101000100101100101111000000111101111100110101011110110111000110011111101010010011010111010001011010110000100011111010010110010000110010000100011010001110101111010101110011011110110011111100110100100100111010001111010001111000010001001011101010111000000001111001010010001101001101101110010111101010000011011100010000010111111110010100101101111110110111101011000111011010111001010100011000000101110110001111001000100010110110111110101100110001011011011111000100011010010010110010100111010011010010110111111001101111011000110000010011110100100001010101000011010011100111110011111111000001001011101101011000000010101011100101001110101101010011010110000100111000110011100001111011000011110111100000000010110001100000001100100111111011010000111110101111001111010001110010001001010010111011101000000001111010010001101010011110000000111101000110010110001110110110001000010011001110001011101101110111001000010001111010001010001111011111011000111100111100110010111111111000100000001111110100000111001110010111000011101100111101100011100101101100010000111011010000011010111010001100110011000111011100001010010011110101011000001111111010000111110010101000110001100000111101011101010011101001111001101111001101100100110001010010000100101110110100001011111110000010000111000110010011010111010010010110100100101001111100100010010100010101101101111011010111011001000000000000001101000100110101110101101000011001101010000000111000000100010011110111001010001011001010101010001011001010000001000101101000100111011111000111110111010111011000000101101100111110000110110100111010001010100100010010100000101011000111011000000010001011111110001001111000001101011100000001000111100011100101100110101011010000000011110101101101010100111001001110111111011111101011001001010110000101110000100100101100011100010011000000011101111100100011010100111011001011111011100101000000000111101100111100001100000001110101011110000000010011100111110110000110100111111101100010101011101011111110010101101001000000010000111010100101010011010010011111111000010111110100011110100111111001100001100010101101101011110010111000000101110010001100110101110100011111110100001010110000100111111111110111101000111111111111110010010000011111101111111111100101100010011111100011101110001101111010001010001000111010000111010101111000100000000000001010001000100011101110100101010001000100110010111110101011000101100101001001011101100011011110010001100101001111010101001001100001011010101010101111000110001100010001101000000001011101100111111011100110111110001001010100110111011110011000110100010001001101011100010000111000100010100110100001001100010101111000110000110100101100000110001010010011110111110010101111100110100110100101110010100100010111010111001000000100110001101101001110011100110001011010010101010101110000110010101000100000100100100000011100101010000101110101101010111101111101110001000011010001100110011101100000110100101011001010101100111001110111000110001001000100111011000110010010101101010110100110101111000100100001111111011001101101100000000001011101000111001011100010101011000101111001011001001011001011000011110010010111001111010101010000101110110001111100011111011100000000110110001010110011000010111001000111000100001001001011101001000110111111100100010110001100000101110101011010111110101110000010110001000110010110001111100001101110100011011100001000110000101111010010010101110101--------- +100000001001000001100111010010100101110000010000101111111001001000110010111010010010001001011110101101110101000010101100111111011100000110111110111000000111100100100010100100011111001110101010110110000001010000111110101000010011001010111000110001110101111111100000100101100001000011110111010000100001000001001110011111101100010101011111010011001000010001000100101011100110001011000010110100011111010110100101000100101010011101111001100000000100001011111110100100101101010110000001000100100000011110110000110101110011101111010000001101100001111111100000100101010000010101001100100011001101011010001011000110010011001001010001100100100111100011101001010111010000101010101000000010111011100010111000100100000000011000101011001001011001000010110001011000010101100100001100111101101011001011000111001011001011110110000000001101001001100000111111010001111100000000110011110111010101101110010010100100010011110001000000010101111001110011101010001001110111100101111001010100010101111001111100111010011100000000001100110000000100110010100111010111011011001010100101010100000111110100101101000111110010010011000101100001011001001111001100011100110111110100110000110000101110010010001000010001001101101110001101100100101000111010111110100101000001100011010011101101100110011001010010100100000100001110000010110101101000011000100101110111111010101100011111001010111010001111000101011001100110101110000011001011010010100010001111010001011101011011100100110011010000110010001100000010010111011010101110110001100001101111110101101011101000100010001101010010100000000110010011000001011001101101000101101110010100011111000111011101100011100110000011101001011110001110101000010111010001101100111011100111011000000100100110001011100010100110101010011111100100100011000001110000001011010011111000101100010110010000010101110000110111010000101100001011000000001011000000011000111101110100011101101100000111100100001011011101001001110010110111110010001111111000111011001110101001010111110101000111011110011011001100000011010100101110101010010101111011110010011000101111010101000011010010100001001010100001101010101000011000001011101001101101001000110001110100100001001111011011101000000010101011111111011111100001000100010101101011010110100010100000111001000100110011010110011011110100010010011010110101111001110110000101000110000011111000111001100001101111000110110110100000101011011101011001110110101111011110011110000110000111110111010111010010000001101001011110100000100011101000100101000011111000010010010111011001000011001000110001111100011011010101111101001001011101000110001101110100100010010010110010011110010011110001101100101110011110100100010010100011100010001110001111010101101011110100010001010110011000100100101000011111100101110111101110110111000000101101110001010000011001001011111111100001000100010011001011011010010110101001000000110101100010011111100101001001100110011101110000111101010010100110101110110101000010001001001011000110011011000011000101011000110010010110100001101110011100010001100100000100101101001100001100010111100011111001011100101000000100111111010111001100001011101111101011100001001101100100101101001001111111101111011011111111001101101110101010111111111001000111101101011011111111010011111111011000000101001110111001111000000100101111010010001010101010111011000010010011101010110110100001100010011110010010010100011001101101100101010101000100001010110000001100101111101101010110010000101101100101000001011001010010101111010011001000100011110010001010110010110001100001011100100110011010110100000110100011000001101100011010100010111010111010111010111001111000000110000111001011110101010101001001110110111101001011011111011101011010000010000010100011101000100000110001110010010111000001010110001111011111101011001101010101010000010110000000101001011001110001111101011100100111010000011010110101011000111111000100001--------- +000001111111100010001000110111011111011100000011110110010000000011111000011000100110101001000010000101000001011101010100000101111011111100101011111000111100101011110111011010111101010011010000110001010111001100000011100000100001000000000100001100101110010001010001011110010100001100000011101111010001110011100010010001011011100011011101111011110110101101001100001000101000110000100000101011110010000100010000101100010100101000110100001011110100110010110011000001000110110100100010100101100000001011101001111110001100111000000000010110010010011111110101011010001100011001010010110100100010111101101000101001010101110001111101010110111110110010101001011010100000011010011101010010011001100000010000011000010000101000011100101010101101001110001111111011101001001110100010110010100111111010101101100110100010111100000010011010001111100011110100011000001000110001101111001111110100001100000100010010101110011100011001001111101010101111001110010001000000110001010111000010111010010101011111001111101001110111001110100011100010011010011101100011011111110011010001100000010000001001000111101101111110011000001010011000111001011011110011111111001101111010111000110110101011011010010000100101010101100111101110101010010100000111001111111011110010111111100011110010111110010001001001100010000000001101110111110001100110000001111100001011100101011001100101111011110011010011010001111011100001011000101110010010111111111010000010101101101010110110001111011000000000100000001011001010100011000010011111111011101010100101011111010011000111010110001010011001001011111100001111111011100100100000000000100111001001110000000000111110001101010001101100100010100010010010110000100101101111111111100001010111011011001111111110010001100000110100110001111100100101110001101111101100010111001101101001100000100001101001110111000100000111010011001001111100001011100011101000101010100111000110101011001011100110011110110010001011011001111100010011011110100001111111000000110110011101111101001010001010101101111011110100001100111010100110110000110001001110000100110000111010000011001001000001011001110010110010100100110111000101011000000111110100100011011011001010110101100100100101011100110110001011001001100010111110101110011111000011110011001011101000110010011111010000111001011111000100110110011101100110000100110010110000100100101101011100101111000111011011111111111110111101001011101111011010101100110110111001101110110011011001101001010110100011110110000010111111010001111011110111100010001000000000010010010111111000010001110100101111100011100111110001010000101101010101111110011100010000010111011001000111010100101111111110110110001011010011110000011000001110000110101000111111100011101111110100011000010011000101011101111000110110111100101100101110010001110111001011110100011111110111100000001011101111101011111011111001010101011010101001100010100110101000000101110001100010000100011110111111011000010111000111111100000000000010111111000101101001001010111011011111101001111010111011100100010111010101001000011100101101011101011111010100100011111010011110001111100011110110110001110011001100100100101110001111111111111101100100101010110101110100001001001111000010100111000110110010110011010111011011100111101101011001010011101100100100001100010010011100011101011101101011011111011110010101111101111111100100100010110100010011110110010010100101100011011100111110001010100010111011111110100001100001111110010011010010010001010001000111111100011001110000010000111110110111001001100100001001011010111011001111111100010001001110010000111000011111001011111111000000001101100010001110010101100100101011011011101011000000001100100110010001011100101001000100111111011010101110000101010010001110111000111101101110011000011110110100011101111011010110010111001001011100111001101101101010000010111111010010010110100111001010110101010101001011101000010111010111101--------- +000111110100010000110010110111100101000000100000100000100100100111011010100011010111101010111000100011001101111001101111011111001000000010011111011010000011000101011100011010011100101111001000000001110010001110110010000110010011100110100110000110000100011101000111101100110101001010001101101110100010110110001111111010110010000011100100011011010100111100010101110000010011000111011010110010001111010000101101011111001000100011101111000100010100011001001000010110101101100011011001111100001000100101100001001111110101011101101111101101100100010000010000010101010000100111111100100111001110010101101101111010000010011111111000010110111110011100101011010001011000110001100000001100101000010001000100100111011010111100011110010100110111111111001111000100000101000110111111001100110111110110101001101101010000100110010101100100111110100011000101110100010000111001110101011110110111010011011110001001110011101011101101111101000110100011001111000001000111001101101001111010111100100100110101111000011110100001000000001000001110001110110011011100010010100111011100101100100101000111111000011000011100011111000000000101010110110110111110100110010101011110011010011110101101001011100000101010101011000000100111100010100011100101101100100101011010111001100011000101101011110101001000011101010001111011001111000101011100110110010000001000110000000101000111001000010000000000111111110111111110101111110110000001110100111001010011000000110010111011011000110011000111110110010101100110001111000101000001001110110110110011100100110100100110111011000010011011011011011111011001111011011000111101111000110011010011001110101011111111001100111110011001001111011100011110101101001111010111000100001000001111010011010010110000001010101111111000111001101001001001011010000001000110000000101011110111110001111000011011110000110101101101001111111101111101000111010100110101101000101001011000011111111111000101000101001110110100101100110000001000010101100101010101000000001011010001010001111001101100000011101010000000010111011101110000101001101000000111010100111001001100000010000001100001110000101000111111001111011110010111000100010011100000011010011010101101010110001110100010000111100111111110111101000100110111110110010011001001101111011000001010101010011100011101010010111011101011000111011001100010010100001000010101011010000011111010000011001001011111000110001011101100011101111111011001000111011010111001101011001000101000000100010010101011000100111100000101000010111010110110001001011001111100001001000110110101000000001111000001000100110010000001010001001101101001010100111111111101101001011011010111000101101110110111001011000101001101101110101001000010010110101110010001001101100101100010100010011010000010010111111101001000010111000111001001100111010011001011000101100101100101110110110011110101000011100100100111010101001111111101110001001111000110101011011111111001110111010100011011110101000001101000001001111011111100001000100010111110110000111110010001011101010011010001001010101010000111111000101110111001100101010111000110001101001010110010011001101010010010011011100011011001101011000100101000000010111010011001001110000100011111010111101110010110110101111011110101000110101111000111010001001111010101010001111100100000000100101011100001110001010001000111110001000000111010000110001100000011101000100010111111101100011100010110000011011111011000101111001001010111001011010110011101011000000101100101010100000100000100000011001001010101110101000010110110110011101101100100101100101111010001110100100000111110011000100100100111010100010000110100011001110000101000100111110110101001101011110001110101100001100001110001100000100100111011010110110000111101101101101000000111000101000111110010000011100111000000111101000110101010110110011101010011110101110001000011001100100100010110100111100110000011011100001010000101110011111111110010000--------- +101100101011100011010000010000010100001000011110100111010010100100100000011111100010101001001101011011110111000001101000110010011100111110010000111111001111010000010010100110100001001111001001100001100110011011101111111001101010110100100110110100110000111110101011101101000011000011000010101000111011111001110010110011000000111010011000111000101000111100001000010001111011001100010101101010011111111100001000110110001000101111001001100001001000111110010011011110110100111110001101110110101111010000000010111000011001001111000110110110101000011100110101000110100010000100001000100110010010000011111111000011000110001111011110001000101011111001101111110110110000110011101001010110101000010010110010110100000000000100011101101110011001111101000000000101011110000110100001010101001101100011111101100010001000100111100000001100001110011111110000101110111000001010001111111110000101000000100010000111010111010111000101111100101011010001000101001110000100001011001101110110011010100101101000001000101101010110010111011110000010111000000000000000111011101000001100101100010111100100000001101010111000100000000100100110111110001101111000110001000011100111101001011111100111001010010001010100010001000100010111101001100000110001111011001100010010100101100010111010011100001010000001000111000010101010110110101011111011011110111100101100101101111100011010000110000110100100010010010010101001100111010000101001011011010110010011000101111000001011111111011010110011111011000011111101000001010111111011110111001000001111101110011110011001000010110010100000010001001011101110011000101100000010001101000011001000110101111100111101101111101010000010110001111100100101110111011101011011000110011111100100100011100000101110010100110010111001111110001100011000111100111000010110110011100011011110111100111011010100000010100000101011111101011100100110111101000110001111011010001000010110110110010010101000111111000011000001100110010110011001000111010001110001011011001001001101000110010000001000111101101000100001001011010100010000011001000011110111101111000000010101101100010100001001000010101101101111000100000110001110110101110101001110100000111100001110011100110011001001101110011101011110110110010000101111011111000111001011110110010100000110011101001100001100001111010111011100101110111011011110110001100000001111001011010101010001101000011101001000001101111101010010011111011001100111010100010110101100110100010000101110100100011000101111011100000010111110100010100111000100110001110110111100010111110000011010111001111110110100100101001001001001001000010011001001111001100011011110110001011100111011000110011010011001111000000111101101101001101000001101010111010010111111000100001000010010111000001111101110110000100010110001111010100000110111101001100100010100110110101010001011001110100110101111001011100010000110001101000000010000111100011100100111101011011111111110010101111010101011100011101101100110001101000010110110001110000001101011000100001100000111010101000101101101000101000101110100010001011010011000101011011111101001101001010001101101010101000001110111011001111011010110001111000110010011010101001011010111111100100001000110100001101101011100111110010000011000110100101011010110111000111010011011100111001101101101110110011010111001101010100001110000101010100111000110010111111101001011000100010011011000100101011110011010011100100000100001001101010001100000001011101001000001110100100010011110000101100101010010000010110100011110000111001110000100100101101110010001101101000011100001111010011111100111111101011111001000010011110101010101100111000100011000101110011000011010011111011010101010010110111100011010111010010011101111110001100010101010110011010101010011000001110010010010111100010011111001001110011001010100010110101101010011111101011101101011011010000000010110011110000100010000001010101100010100111111000010100010110--------- +110110111010000111001011110010111110010111110000111001111100110110100100010000011001010110010000111010001011101001100010100010001000101001001110010001111111111010100010100100110001010110100100011110010010111111100000100100001011100011000101010000110011111111010101001111001101101001001111001110000110011100100011010110111101001010010110011001010110101111111011101101100010110000011111001100000110010110100010101011000000111101100110110101100111111110110101101100100101111100001110110100100111111101111011011000010010101101111011011100111111100011100000110100100111111010101010011001111101100110110100011000100101000110111100101110011100001111000100101111111011101110000111100001001010100010011101000010001100010101011101111001100101001000001111011101100011100100000111001010100100101010010111111101101100110001010001101111101010000110110011101100010111010110000101010001001011101100100000101101110101010101011100100001010111011111110011101101100010011001001010100010101010110001000001010011001100111000110001010000111001111111100010010101011011000010011111001100111010111000010101011011110000000001011110101000100110010010101010100011010011110001110110000001001010000001101000011110001101101001110011101111110111001111010000001001001101101111100111110011001001100000010010110100010110000001000110010100111111001000110101010100111101111010110001011101110010101001011111011000000000100100011110110000111011011011101010001011101111111001110111011000000110001100110010000011000011010001111100011111110011000010010001110111101111001010110110010100110111110100111010011001111111011111110100010110010100011001011001010100110111111111101000110110010101111111011110111000100000101101010101010010010010001111101010100000001100111111001100000111010101100001100000000001010110000100101000000111111100100000001001010000001100101100111100110010100000101010100001111011010011010011011011111011111010101000011110101100100010010010011000010111000000110010100001110010010110111111110011110100110111001100111000101110100000001011000010110101100000011101001101001001000011000000001011011001100010101000000110101010001011011100100100010110111101011010111010010111011000100010010000100100101011001000110101011001100111101100010110011101011001100010010100010110101010000111100110010010010001000110000011101110000010010011110011110101000010101011001101100111011111011100001100000111001011010011010101101010001101111101111011011100110010110101010001010010100000100100000001100000001000111111111111110110001101101001110110110111100100000011010111111000110110001010010111010000011111100000110100110101000000000010000000101101101110001000110100111010110000001001011101010111011001110000111011001000100101001010010101110000100111011101010000010000110011010111101000100111101110001100101011000011001101001110100101011001001111011001000110010101001110001101100110110101000110000000010100011101101110110111000111111111100111000110101000010010101100100010010000001000010100100111010110110111110101001010000001100011100010011100110000101111011110111101011101111110111101010010000100010110011001100000110111010100100000110000101100001100101001110000011000110000000101101110001010000101011000100011101101001010101100100101010001101000010101111011101001001111010101000101101111101000010010001010011001111101100101010111111111000110101010110000001011001000011011111010000110001000111000010000110001111101111000001001010001111110000011001110101100010011010100110011011001010011010011010100101010011000110001101010101001110100100100111110001110001001010110001100110110110010101011000110010111101010110010011001110110010111010110100011011000100010001111011100010010110111011111100000100001100001111010101100110111000111111000010110110000111010100011111100010111110110101101111011011111110110110000010011110101011111110101101110100001000001101011111111011010100110011110110--------- +101000101111000101100111101000110101011010001100101101111101100010100010110010101111000110000111001111110110011110000101010001001000010110111010111101000011011101001011101001101001101000101010011110101100010001011001011101001010101000000001011011011000111100111100100010110011011100001011011011011010011001000101011110010111101010011110111110011011000101111110010110101011001101110010001101101100010101100100111011111011100011011001010011010010011100111101100010111001000001110101100010110111100100100101101111110110000010111111010001000010100100111111011111010101001001100100001001001101011001110111100101011101000101011100101000110001110101101010001000001111111010111001010110010110011100101101000101000100010110100010010001000010110101111011000011110001001101110110001011001100001101111110001001111110001110010011001100111111000000111011111111001110011000110100101001010111101000111111000010111011110110110010100010100101110110000111100000010000000010110101101100100001010110010000011110000010010010011101011110000110100011111111001000011110100101101000110011101001010000011110000110010100000010011101001111100111011100011111110000111000001111101000010110011100101010011111010100100100111101101110001111100100110111100001001100101111110011000111001111000100101100001111000001000010100110011010010100000111110000010001100110100101111101000100110101110001011000001101000000101001000000010001010111001110000000011001100111011110100001111101001101001011100100100101001000100100101011110001111111010000001000100000011000110110000011010010000001100101000010011111110001110000001100001010000101100110100011000110111001101010011110000000010100101001001000110110010011110011011010110101110100011110100101101001010111110111011010000110010110000000010110011100111101000011110111011000010010001010000110001000000111101011110011111000101100010010001011001110000011100100100100000110100010011100010010011101101100001000000111111101000001000101001111010000010001110011010110100110110001100000001100111111001010111100000001101010110010010101010110111110100011100101000011101101010111110011011001001100111111111010111100100001001001011010001011000010011110100001111010100100100010000011100011100001101101100111000001011011001101101000101110000000110100000001101001111100111010011001111110010111000001111100001111001101100111011000101011001110111000010100000001001000100101110111001010100010000110000000100000010100100010010011110001110011110000001101110001001100000100010111100000101100110011000110001001011100101010000010100100000000011101100011001111111100010100010001100001111110000001101000011001111100101110110101000100001101001111001010010010000101101010100111111000011111101100011011100010001100111100010110011110011001011001000011000010011000100000011110010101110110001001010010010100001111110011101110110100001111011111101101000011010011010000110001010100001010011001100111011100110110100000100001110011110001010100001011000100001000111000111111010000100010111110010110001001111010011000100100000110110110000011101111001110111101001001011000110000111110101111001111011011010101100101110011011011100100001111101010101101011111000110100010011010001000000100000100110111010001111100110001110001100000001001110010011001010000001100101011100111110110001101001110110110101010110110011101001000101111101100101001100010111110111001000010011111100110100110001010111011001010011000101001001111011101010111111010001001100100001011111010000111110110110000101000111010000011011011010001001011111000011100000010100100111011011000101010110001100001111100001011110110111101001110011011000011110001111110010000010010111001010101010011010101101011100111101000110111100101101111110111100000001011101011101101000100100110001110100101010010110000110001011001011111011000000000000111000011111010011111000101111010000010111000011000110110100101101001000001110--------- +011011011010111000001100010110010100110011100001111010011101101000111110000101000101010001000100111010001100100100110111000100110110110110001101110100110001111110111101110110011111010000100111101111100001100010101111000111001100010000000001111010011001110111111110111101010100110000001001110110100011101110011100001101110111110000110000110000000101000001011111001000101101010011010100101011010000001101011011101001000101001101101011110100000110100011101011101010101010000111101011110100110011110101111010010010100010100110001010111001010001100110101001010101010101101111110101000011001100001110100101001000011011010011111011100110011011000000101010100100100000100111000010000011101011101001011111100010010110000011001101010100011010011001000111110000101101100101000010101101010001000011011011100101000111100110111100111000101010010111010011011110101011110001010010001100000011111111011101111001001110101100001000000011011100001100001110001100001010101100011100101000010000110001110101111101001111001111100111101010111010001101010011000110000111010001100011101100001111100111101100011011010001010111110001001110000010010110100111100110011101100001111110111110111011100111001000111010000000110101011010001001111000110000111010011111000100101001010111001001111101111000001001100110001110011000111010000010100001001110011001111011001010101000100010100001110101110001111111010001101011011110110001100101100100100111000011010001101001000010000101111001101110010001011010010000110001011111001011101001100110001000011100010111001100011100000011110100001111110000011001010000100110110001111001101110100001001111000101000001111101001111100110111000100010111101010101110011111101001001110101000001101001000101100010000111011100011101111110110010000100110111010001110010110011011011110110001100000111011010111000101001100001001000010000110101111111011111100011100000100010111111001101011000011010010110001011101111100010011100001100010000001100001101101110101010101011100110101101011010111010001011111100000000111111010001000110110111101101110101110010001000011111010101010000010000010001101011010000110010111000111000110101001011010000111011100000110110110011011111011100100010101110111001000111110111111110011010100100101010111000010111101110100011100100011000010110001111111110011101010111001110101100111010011101100011000101011111001011100000101000011010011110010000010110101110000001011101100101001100011011010111111000010110001101100011010100111110100110011110000101001011111000011001110111011101010011001111101001000111111001001111111101110101011010111111010110001000110110111010110011010101011011101011010011001101110111001000100100000111101110000100011100101010111001001001111011000010001010101010110011010010001011100001100010101110110001100011011010110111111101101101110011001110111100000100010110000010001011110100111001111111110111111010100001111011100001111110000111111111100110001111000011100011101011101001000100011010000000110111000011011110000111111110001011101010011010100101001011001011011000101110110000100010010110111001100011001000100001111011011001010101010100110001101000110111000000111001100101100011001101100000001011101010110110101111110100101010001011110010110011101100001110111011111000110000000101011101111111000000000011101010000001001000101100000001101000110001010011111100000110111100110011010100110001011011010000000110000011001100110011100001111110111010001101000010100101000000010010111111011000000000000100001001000111111111110001111100001000010010111010001101101000110000001111011111011001100000011110011011001110000101001101111101111010011000100101110011110100110011101111101001010100101101111100101010101001111100111000011101101011100000011100111110110010011101010000100000000101101111111001111111100110000101101000111111010111001110000000000011011011000110011001111101111101100001010000001111100001111--------- +001110001000010011101001000101101110111000111011110000011011101111101100000011100101101011100000110000111000100000011001101010111110001011110001001010101010001010010011011101000100001000110010110100010110001001110110111101110001110000000011101000011010000100010101000101100011001000011110010111001010110010110110101000110001111000110011011111000100011000110011110010110011111011100010111111001101100011000011100100111100010111100111011101101010011101101010110010011011010010111111010011110010111100001111101000000010111011101010101000100101111101011101100110001000011110111110011011110100111001010101110001010101110110111001101110010101000111000001111110111101000101010101100011011110110010011111011000000100001000010010000101100010111100010011100101000100111100111000111011110111011110000011010011010110010001001111001001101100110111010100101110100011001100000110110011001011011100110011101010010100101110111010001001111101010110011110110010010111100010101100000100000111011100000111011100101111001010000011110010110000011010101111101100111100111111101010101100000100010111100101010100011000001111001010011100011000001001110101100111011111010110000111100011010100111111100100110111100110100101110111001000110011110000110010111100010101000011100110010011111100010111111001111100001010110111010111101001100100111100000010111001000101111010001101100101100011101110110110010000101110110000111011101110110111011000000001000111111110110110000011100011111111001111001100011111100100111000001111011100110111001000111101011000001111000000000011001100011010100110100011110001000001111011000011011111001001110111001101010011001110010000101100110100010000101100000100001001111010100001001000010001101110001100001100101110011111111100011011001100110000000000100111010100010000101101110100010110110000101011000000000111111010010110001001101110000011000100001100011011110111000000010100100110101111001110000001110010100111000111111111000000111011000110101010010110111111110101001110111101110011010010100100001001000011010100001101110001011011110000001111010101010111110100100110001100000001010000011100110001000011010111011010111001111000001111010010101010100111110011000000111001001100111110010000110000000000001010000010010110110110101110000110110110010011000110111101001100001010011101101101111000110111000110010100110010001011000000110000101110011000111010101110001010101011100011011100010000001011111010011110001100101001110010100011001010001100001011101010001100010000001000001100001111101110000110110100101011000001100001101000111000001100001011010111111010000001101101011101010010000110000111111011011011100010101010111111001101001110001001001011110010111000101011000111101101100100001001110011111111000001100100110111010001000010001010000110110011010011111110101000111110010000111111100111000111011101001001010100010100101011011001110000101001000000101111010100010101101101111001010110000010110011110000111111010010001000010101110100000001011110000011111000011111101011101000110000111000111111001010100011111001011010110010001011101011010100101000010101011010011001100100111001000010010000101000111010110101010100110011111100101001010000101100110000001111100100110101011101110111101110011101101110010001100010000100110101000101011101110100000110000010110110110011100010000100001010000100110100011001010111010100011011110100100011000110100001011010110110100110110000001111000111100011110111001100001001001110001111001111011010101100001001100101101110001111010111100001000110001010010101011101111000011011111101001101011110101001001110100101101010011100011110000011100000010011101000110001010110110100101010100011000000110100000000110011011001000011101001000110011001111101010011001010010000011101101001011001110011000111001110111101010110101000011110001011111101111001010110011101011110000101011000011110011111000101001001000010100000001--------- +ls384cwds +100000110000001110110001100111100100001101100000100100011111001000110011110001101011110111110101010010011000010101010101100000110010111110011000100011110111111010101000110010001111101101011011001110001000010011001111111011111011110110110101011001000011101010110000000001101100001101100001001010011101111001101011101100011101011100110011000010010011111101100110110101100111110111111000010011001110001111000011001010010101001010101001101111001001000010011011011011011110110000011101001111110000100100010011110111110011111101011111010000001000101011001000100001011010010110101111001010111000100000001111011010010110001010010110110010100111010100111001011100000110010100000000110110000110001011111100110100101100101001001101010101110111111010010000001110110100111110010101011101000001111010000110101000110001100111001011010110010110100101000111100100000000000001111101100100000001111001100000101001011000101010010010100000010101111100010101000110011010111101000011011001111101100000010100110111111001111110010000101011101110101100100010100110110001001101001101101100010100111101111101001010111001000011100110100110010110100100010011101000010110101101010011100001000101100111101000110000110111001001101001101000101000110001101011010111110001101110010010100000111111000010000011010000011110000110011111110100111000011100100101001100011011000001011111000110110000001001101000111101101100101010100001110100100001000010101110010001010101000001011100011000100110110000001101000001110011001111010011010001001101001001111001101100111111010001001011111011101011110101001000110011101001010011100100010101010101001010011001010001111001111001000110110110111011011000010000000101010001111111011010000100100000011110001111101000111111101010101111101000110100100010111010101011011010101010010110001101100111001000010111011110011111101001100101000011000111001010000011010011100111110001101010100100101000110100101101101101001101011111001100010010010100011000010101010011101000100000000100100000110110101011100011111100000111010100100100011011010011110100001110010010110010101110111101110101010011111001111011100010011000100101001000011100001001111101011100001110000101010110101110000111111100101111100000110111110110110101010100010011011101111000111100001001110111101000111101110001000111011000111001100010010001000110010101001110000001100101001011011101110000011001010110010110000010010001011000000110001010110111111001011101111110100000001000101100111000110111110111101100100110011001100001111001110111110101101100110100101010010001100100001111010010110110110001010110100010110010100100100011110000111100010010001100100111010011100000010011010101111000110010011100001110001000011001110010001111101001000111000111010101000100001110010111110000001001110111110011100100101111011100111001100011001110011000011100111000100110100000101100110101000000010000010100000100101010111111001001011001100110111110010101010100001101010010111001000011111100111011011111000001100111001110010101010111001010000100010010001001000011000110011100011010111010001100010001011001000101000100010001110011001---------111101111011011011111011101010111100111000111111101110111000111010100111110011010000111011110101001100001100110010010101101001101011100110001001110101100100110011100000011010110110010011101100010000000000000101101011111101110000001000010110101101001111100110010011000011110111110000001111110011000001101111000100010010011000000000101110101001010100000110010011111100000111010111011000010100000001000001111111111101000110100001101110011101100100000111000011010100000001100111011010000111000010101110011000101000010100101010100100000010001111000010001010111011110010100110001110000111110110111011101000011010101001000111001010111011101001101001011001110101001001110111111100001011101011110110001111100110001100011110111110100111010011110101100110010010010000011001011010110000101010000110000000011010101111001000101011000100001001111101110000111111000110111000001100110101011001011011001101111101001000001001010011100111110100101010010100100010000100111010000100000110110000011101010101011111010001100011100111010001100110000101111101011000010110011011111010111110000011111110001001110100100001100000010101001011000000101010011010000110001100100010011000010000110010110100101010111011000110100111110000000100101111100001001101101000001010001000011010101010101000111100010001010100010010011111111001011100110000001010110000101110110110010010101111001011010110101110010011010100110101101001101101111000010110101111111000001001100100010011100001011100101001110000100111111000110011011111000000111100111101110101100001101010011011001011111000010100110100000001011001010001100000010100111000111100000001110101011101010101011110100110000101001100110111010010100110001100100110101010010111011010100000111100001000001010101111011101100111100101001110100000110000001111110010110111010000100011001010111101000010000110100100000110110001111101111100111110101101001000110111100110010010101001111011110010001111111101110000000010101101100011111010111000111111110111001001101111000110100011101111001101100001011010110111101101010101011111110000001110001101101010110010000000111001000111001011100100001000000111011110100001110000100100001100101000011111010000011101000100101001100001100110101011001100011000000100010000001001101101010001011111101111001011001001100001001010101111100111101100101101111101000000001010010101101010100111100110001110011110111111011011110101000111110101101101111011001100000100111001111000000011000010001110101100000010110000000111001010110111010100000001011010010000110000100011001111101010100000100100000111111001011110010010111001101100010111111101110010110000101001011110101101100101001111111010111011100001110011011100111101011101010001101101001110001011001100101111001111011000011100011011111001010100100100011111010111110011111100101100100111011000110011100101011001110011110100101110011011011110001111110100110001000100111110101111100110111010100111001010010011010101011110011110000111010011100110100110100001001011101101111001011001100000000110011111000000101100101111010000000010110100101100100000010110110000110011110110110110101100100001011010101000001000010111001000001011010110100000000110110001111001011100011010001011001011010001100010110011001011001010111010011011011011100011001111010010101110100000001001100000110100001000111001010001101110001110010000111101110000010100001110110101010110001000011001011011001100101010010110111010000011111101111110101111001011000001100001101101011010000111010100100001000100001110000110010000110001011100111110000111011110111000011000011100111101110011011101010011100001101001101000110100100100110110001101101001100111010011110101101010111110110010101110111110111110000001101101011010111110000000101110110111100111100001011001010001000101011010100101111011111001100100010011111010011010000000100000101011111001000100000100111101001010100011000000110010100100001111001001011010001010100001101110100001000011110011111111101100101101011011011100111000100100111010101001101000011101011011111000000111010101110101100110001111011000011111011101000000001111111011110100000111111001111110100100111000110111100001111011010100101100111001011010111111101100111011111000111011111000000010100100010100100000010110111111111011010001101101101000000000110011110011111101011001010111101000110011000001010111000111100000111011110111110100101111011000000000100001110101111111010101011100011100100100000110001001111001000100101101001111110010010110110101001111111010101000001010011011010110000111001111110001101100100101101111000001001101000011010100100111100110010100001100001001001100111011111101010111100010011010101111101111010011111110110001100001001100001001010000101110110100001111100001101011111000000100001001111000111110100100110111000000010101010100010010111000010101000101011111111100011001011000100111100110101011111101010100000111100111000110001110001110111101000010000000001001010101000101110110011101000010100101110011100011010010000100011001111110000110011001001000101101000011011000000000110001000011001111011111111101010000100011100011101010001000100011101000110110110011100100011100111100011101111011000001101001000011111101101101001010000011011101111011010111000101101101101001110100011110101100001011001011011111000011100011011110101101110011000001100001100101110101100111110100001110111100011110001010011111111000110110000011010110011000011000011111111100001111000100011110100011100011001101010011001001101000011101011010001111011000010111000001101001101100111110101100001010011111110111000001101111010010010110000110000111011001001001000000001010011001110000000010011011001010101100000101110110100101111100111101100101100001011100010110110111111000010010010111001010001001001000011111001000010011110001100111100011101100001100111011010100000101101100101010100000101000110011000111111011011100010010001001100010000110100101110111010001110000110000000010100101010101110100000101000000110010110101111010110101101111011000001010011011110000001111000101001100011010110100111011111111111001000100111010111010100101010110101101011011000001100100101010100101100111000100011101001010001011111011001000110101110010111111001000001101110110010010001110111001000100101110101100110011001101110100000000000011000001110011010110011011001010100001101011110010000011110100111111110011100101010101111000010010110001101110110111100000110111101000101101001010000100000101101001100111110100011001111101111000010001110011010111110000000001100000100001010010101011110001110110000110010110000101011010001110011011010010101001000011101011101010111011011111001001110011000001010000101100100010101100001111100000010111001010100110001100100100101101010110011000110000111001111101101000000110000011111101001100000011001110011110001101001110000011011011010010010111000011110010011111110110100110011111101000111000110111110000010001100111100001100101001111011000000000100100100010101010000111000110000010010010111101001101110011001000001010000010110001100001011010011011000011011111010101110100000010001100111010101100001101111101001111110010011001010011010010111100001000000100010100000001100100110110100110100011110001110000101101011100010001101110101100111011111001010110011101110110000010001001000000011100001011010001100101011110111011111111010111010101000010000000110000101000001000111110101011001001000111110011000111000101011010110110110111000000000010000100110001000011110001001100011111100001011001010011111001101101110100101101000101111000100011101110100000011110100000110001100101110001111010001011101011011100001110110000110111110110101011001101110000010100111011101010001101110100110101100111110100101111011001111100010100010010110010110101000011111110011011010001010010110000101011111001011010011110110011010011101000110111000010100000100101111111101110110100110000111001110001001100011101101000100010010110000001110100001111100111111010100011110010101101111111001011100110110010100010111001010110011101000100101001110100011100011000101111001110010111110110011001011110010011110011111011011010111010001110000010000000011011010110100101111011010010110101111010101100111000111110100111111111110111011111010011111001010001100101101001110000010000001111000011001010010101110000010111101000010100000001001011111110010110111001000110011110110011110101011100100101110011100111110000001010001001001111111100100010110011100100001000111000110101110101000101010100001101111111100101011100100010111111111111001000000011111110000010111000010001010110100010001010001110011010011111110010100000100100110001101100000010000100011100110000101101011010111010000011010111010001111011100000000000100111011000101000101110111100101010010010110010011001110001101011011100010000010101000110100101011011111100110000000000110001100010101010111110000011111100110000000011101000100110101111001000110100100101010100010001000111011000001001001001111111101101100111011100011111011110000010000100100010010010001101000100111011000001101111011000100011101001101011100011001010111010010001000100100000101110010011011011110010000101011001001010010000010000011101110001111000001010111110001111010111110110111100100011100111111111100010000110111111001001001000000111110111011010010011000001111111100011110111111101100000011010110101010000101011101011000101100100011010001100100011000001110011100000000101110000000000111000110011111101111100011100110110000000110111110010101011111000010111011100111110100110101011110101111101101010111100100100010001011111110011001111001111001010000001110100111001110111110100000010010100011011111110010000000110111100100110101101010101010101011001000110011100010000001110001010000001111110101100011101000010011111011110110010100011010010110001101001110011010101010100000100011001011001011100010111111110000111100101100111011010011011110001101000100001100000110110000110100110000100110111100100100011001100001001101001000000101101110001101011000000110001100111010100001101111110011110000010011001100001001111010111110000011100111010110010111011010110000111111100001000001110110001100110011111010101100111000000000010101110110100010110100011111010010111001010111100100010000111001101110110000010001011000011011000011010110011010111111101001010101101011110100100010011010101001010011010000110011111000011000010001000000001100001001010010101110010111000010100010011011101110111001010100100001100011010100111000100101110101101001011011001011111000001010011110000101110100100011011101010101110101000001011011010001011100001011010101111111110101010011000100011101011111010110110000110001000111111100100011100110110000100110010111110010011001101101111011001011101110111011100001111000100010111100100001111001001101101101001101001100010011110100010011000110000001001110110010101000000001101000011001101101011000000101010011100000001101110011001111010010010011000000111000001111010010001100101011010111001111001000111100011100101111100101000000101010111101101010110100100100010111010100101011001110010101110001111110001111000000101100011000000010100111110001001010111011111111000011000101001000110001000011100110010111001000011110000111001010011010011100100001011100001100011000110010111100101111001010111100000001110011011011100111010111111001001101010000001011001001011110010010100001110010010111000010111010011100011111011111101010110010001101001101001001111001000010011011101000000110101100100010101111110001111100000001111101011001111100110100110011011010000011011100111100101011100001111110111100100000011111101010101001010110011100100101000011001000100100001001110111010001010000011111011011100000010111100111100011010100010001100100011111110000111111110010000000000001101001000111000101100100110000111011110101100100011110001100110110010100011010111111100001010100000001010101101000101110000111101001001000110000111101011111111000101000001011010010111001111001011100101000111010100000110100100010111000100000001111011111111001111101101000110100100111000101010100010011110011100100111000011010111001010000101110101110000011101111111111001001001010000110110011101111001001101000010110111000001111010100000100010011101011000001001010101001000000111001111111000110111101100001110100011110110100111111110111100100110000011001101111111011010111010100110110001100101001111100011000001010101010110000111100001101101010011011010001001111111000110101100101001100111111011101000000001011010100000111001100101010101101110100001000101001010100100011100111001011000001000011111111010011100000101011100101110011101010110011000101101110010001100110100101010100010001010000100010011011000110000101101111011111010001101100111111010100101001000100011000100111011101011010011101000111110011101001011100000011101110001000011000100000111001000010111011100100101111001100100110000010111000110111010110110101010010110111010110101011011111110011000001101001110001100010001110010111110010011111101011101111001101100100110001100111100111001011100010010000110100101101101101001100110110100001111000110010100000001010000111001000100010101011111100000110011100110011100011111011101001101001100111101011101001011000111111000001111100100111001111111011011010001011100101100111110011010100010001111001111010110010000001001111011101111101011000011010001100110000101100110001111011110000010000001110011111001100101011110010011110000100110101001100111100110110010101110010111110111111101101011111110100001101100010110110001101011010010110100101010111101010011010000111010110101010100001000100101010100101000001000010111111010001010000000100010100001010011101101111010110011110011101011101101101000110001001110111001110011100011001011001101111011101011000010110011100110111101010101111011001010111011111011100101011000010000001100101011011001011110011010010101011110100001110000100111111010110101011100010100111000101101101001001101000000011001100010101101111011000010110100000011100011100001111011110100100011101101101110001101011101011100000010010111000011110100111010110011101110111000100010101011111101111001111011001001011001100010100001011011010010010110101001101110100111011001111000111110100101111110110010100101101010111001001100111000110001000100111010111000100100000101010110100100001000010111010111111111000101110111100011100100010010000110001000100000011101000000011001111010011110010001111000110001101101111011011101011000111001100110111000110101100011100100110000110000111101110100010101111100110000111101111000101010001101111101110001100011111010101101001100110101010011110001111111101000101100011001110000000111010101010100110001001011111101111110010110100110001011011101001001111011111110000001101111100001111001110111111100101000111000100100111010001101101001101011000001100111100011010011010001110111001100111011011010011000100110001011010111010010011110000000001111111111000111100110101101011000101100011111011111001001001101010011000100110010001000111011011111101110111001011000100101001010000101111101101101001110111101110111010011001010010011101101011011111010010000011011111100011000111110100001011001110101010010010000110101100000100111001101101011010110101100100101011011001000011000110010001100111101101010001111110011100111001100000011000001111100001000011000000011000001001100010100000010010100100100000101110101000110000110110101111100010110010110010010100111011101110111111101001101000000110100001001111110000100011010111001110111001011010111100101111110010100011000110001011011100111101101111001000010000000101111110101100000111101010111001010001100111101001100000000011100010111000110100101010010011001010010011011100000001000111101110011010001001000101110100110101001010000101100110111101100001101011100010011000011100010000000101001101000110001011111101111110100111011101101100111000110100001100101000000011111001111000101101000000011001010001111010111000111110001000100111110100111000100001010110000111110010110110000000010000001100001010001100111101100000001101010111010110100111000101100101100110111001001000010110100011100100000000100100100100100110011011000110010011011011111100101110010000100111101000111111000011011110111111010010000000000001100000010011001011010000001001011001101000100001101101101111010010010010111001101111111111001110110011110110010100101011000011100000110001101110110001000100111110001010110011001000010111011001010010001001110111001011011001100110110000101 +111101010000011011100010000010111111110010100101101111110110111101011000111011010111001010100011000000101110110001111001000100010110110111110101100110001011011011111000100011010010010110010100111010011010010110111111001101111011000110000010011110100100001010101000011010011100111110011111111000001001011101101011000000010101011100101001110101101010011010110000100111000110011100001111011000011110111100000000010110001100000001100100111111011010000111110101111001111010001110010001001010010111011101000000001111010010001101010011110000000111101000110010110001110110110001000010011001110001011101101110111001000010001111010001010001111011111011000111100111100110010111111111000100000001111110100000111001110010111000011101100111101100011100101101100010000111011010000011010111010001100110011000111011100001010010011110101011000001111111010000111110010101000110001100000111101011101010011101001111001101111001101100100110001010010000100101110110100001011111110000010000111000110010011010111010010010110100100101001111100100010010100010101101101111011010111011001000000000000001101000100110101110101101000011001101010000000111000000100010011110111001010001011001010101010001011001010000001000101101000100111011111000111110111010111011000000101101100111110000110110100111010001010100100010010100000101011000111011000000010001011111110001001111000001101011100000001000111100011100101100110101011010000000011110101101101010100111001001110111111011111101011001001010110000101110000100100101100011100010011000000011101111100100011010100111011001011111011100101000000000111101100111100001100000001110101011110000000010011100111110110000110100111111101100010101011101011111110010101101001000000010000111010100101010011010010011111111000010111110100011110100111111001100001100010101101101011110010111000000101110010001100110101110100011111110100001010110000100111111111110111101000111111111111110010010000011111101111111111100101100010011111100011101110001101111010001010001000111010000111010101111000100000000000001010001000100011101110100101010001000100110010111110101011000101100101001001011101100011011110010001100101001111010101001001100001011010101010101111000110001100010001101000000001011101100111111011100110111110001001010100110111011110011000110100010001001101011100010000111000100010100110100001001100010101111000110000110100101100000110001010010011110111110010101111100110100110100101110010100100010111010111001000000100110001101101001110011100110001011010010101010101110000110010101000100000100100100000011100101010000101110101101010111101111101110001000011010001100110011101100000110100101011001010101100111001110111000110001001000100111011000110010010101101010110100110101111000100100001111111011001101101100000000001011101000111001011100010101011000101111001011001001011001011000011110010010111001111010101010000101110110001111100011111011100000000110110001010110011000010111001000111000100001001001011101001000110111111100100010110001100000101110101011010111110101110000010110001000110010110001111100001101110100011011100001000110000101111010010010101110101---------100110100010010101000010111010101110001100111111101000100010101110111100001011011111110000011101100110011111110010001100001111100010100010011110111111111111101010011111000011010110011101010100100011000001010011111100101011000000010111101100111101001100111001011011001010100111110111100100001000110010111111111100001011111001100100011100000100110111111100010010011110110111101101001000100111110000011100110000000110111101101110001111101111001010000101110000110100000110111010010111000101111110101100100011101011100000110100101000100001000100000111011110000001001100001101000011101011000010110010000100001110110111100000001011010011010001001100010111010110010101101100100000000010101000111010110000111111111001001001010101111011101101010000111101000010110010111010010001111000000010001110011111111010010101110110001010111110000101100100001010101111011011111010010110011100101111110101111100110100110110110010001011000110010011100110001100110011101110011001011000101001111010111101001111010100011011100101011000010000010001001011001111111010001011100000100111111111101100011011010111001011110000110110100100100101100101010011001111011010111110010001100111110001111000010010111001000000000000000100000001011001100110101101111111111101011010110111101000111011000110010100001110100000110101000000101001101000011111110110101001100110001001000010111000000011101010011100000011001110100000110010001011111000111001000000110010110111000111111100110011000000110000000100110000110101100000011111001000111101111110011001111101100110010101110010110001010101000010001110010110010100110101011110100010110110010111111010000011101011000100001011011011111011000111010001111101111011101111001100001110000010111011011111111110010001001100000110100100010101101010110000001001000010111010000100000100000001111000000010110101011110011010110011111010000100101110011111100011011100101101010001001011011011000100011101010011001111010101101010101011110110000100000010111010101101100110000111001110001111001011010000001000100110101111011110011101100011100010100011110010011010111011110011010111001010111100111010101011100000011101000010000100101000001101010100110111001110010000110000111101100001100001100111111011011111001101011100010001101100000111111110110110000000000010110010001111101011100110101010011000110101010010110110011000001111000000001000011000011101010101011000000101010100001000010000101110000011010010101010000010000100101010011110101101111111111100100101111001010110100001010110001011011001101010010111001100101010011110111101111101010011000111010011000010011001010000100111011110000111000111001000101011010100101001110010101001100110100011010000001011100111100101100010111110010010000100010100011110010111100001010010000001101000001111001011111101010000101000100001100010110011110010111011011010001100110010110101111000011011011011110000110101110000110010111100101001111101001100100110111101110100010111100110011100000010001100101111100010011011001001110110001011100101000001101000100101110011010100101011010110001111000010110110110101100111100000011001111011000111111011010000001010100001101001111010110100100000010000101110101111011010100010101111101011010011100100111010011111001011000011011110001011110110010011110011101100110101011100001010011001011001000111011110111100001110000000110111100010000101101110011110001101100100100010011101011011000000000110001000001110010100011101100010001100011010111010010001101101001000110110111100000001111011011001010010001101110110110110111100011111010001111000100111010110000110011011111111010001010010101001010110110010000101011010011101000000000100101001111111110100111100011100111110100101011011001001000111000111100011110100011000110000101110100101001001111010000001010100111100001010110000001000011100101011000010101010010111100110100001111000001101100011001100101100010001110111001101001100111001010101111110100101000101011100000000011011101011101100100001100110101110110111010100001001111001111100100110111110111010000111110011100000110010101101110100011111110010111000111101001011110000100100011010011001111111111101110101001010010100101011010010001111010111110001110011010111010110011000100011110111111001011001110111101100101100010011011000110001000110101101010100001011111011110111001110111110001011110110000111011110010011010001011010101010010110101010001011101000111010111000110010111111000001101000011111111110111010011000010000000100100010111110011010111100011110001100000100000011101000101101000010010100000000010010100101000111001010100000000001101011110110101000110000010101010011100111100100100010000010100101001101111111011101111001010011101011010000010111110001100000101100000111110111101111000000001110111000000101100011101001100100000101101001001011110000000001001001011011110010110110010010001111011000111010101111011101000000001011010111101100100101111000000110000000100010111000100000011000110110000010101100010101010101010001000010010101001101110001010000011101011111001001010000110111100001110000110000011001101101110111010100000010111101011000111110011101010011010010110100000000010011100111110110100100001011111011101001111101001000101000000001111011011010001011001111001011010111101111011010101010110111010110110100000011111101010011011001110110110011011001101111100101010111100110000100110001001100001010100110000110101111101000110101010011101010011000111110111011011001101101010100111001111001011101101100011010111000001010110110101011100111111010111101001100110010110000101001011111001111100111110001100001111011111110010011001010100010000001000001011110001111011111111111001010100101100111110111111100110000100001110100010100000000100101110110010010101011011010111110011000001000011000001110101110000011000010000000101111000111101111011010110001000110111011000010000101110101000101100110111011000101010000110100111110001011000110101001100111110101101011101010110000001011110011001010100001011110011011011101011111111100110011001100000100110101010110010001101000101111011001011001101100001100111001011000000100010000010111000101001000101001110111101011001101001100111111010011110101000110111011001010001010111010001001011100100100001100000011011100110011100000100111001111111101110000010000000011110101110101011110110100001001000100110001000110101010100001111111110100001000001101100010010011111101001000110000110011010001011101001100000001011001100101011111110111111101110000100101011010010111011000101011110101000001110001010011110001101101011101011110011010101101100111010101010100111000111111000111000011001100101101011101100010000110011011100000101101010100100110011001000000000100001101010110110000001011110101100001010010100101010110111110111010001100011010111001000100110011100010010000111101011011011011001101100111010010011111110100011101101111011110010010110010101001010000100001110100000000000100110101010101110001000011111101001000101010011100100110010001000101111010101110101000011001101010111001101010011110011111000110011000001001101000100111010110010010100010001101010000100011101010011010001010010000101101110100001010100010011101100111001110101100110011100110101101111111011000101000111110001111101010010100110000110000101111011101010101001110100101000011000111011101011110101111000100101101011011000111111110100111000100111101000100111111100011011011110001001100010100100010110101110100111111001010001110100011101011101101110011010011001001111111100111110101101000000010000100011000100101011000110001010110000111111011000010111001100001100110010010010111100011001011010100101111111001101111101111010111110100100101000011011101110001101101111110111101100001100111100000001110011011000000111111001010000110011000000100111011111010101001001101011100100000100000100110000110001111110101010001101001010010011001000101011001100100101001001100001110111001010011010101010000100001010100101001011010001110000111110101000101110011000011010101001000000010000111111011101110111101011110011011110011110010100101001010100001101011010000000010011101110000010101011010111111000111110100010101111101000100110100011110110111000110001100101001101101010101000100000111001010001011111010010000101110111111000100111001001010001100111100101110001111111011100101101100010100111011101001001000001111010111110100011010110001001100111100111001001011110100000011100001011000011101011000001011100110100000000110111011111111101110100100111110111100000011101011001111111000100111101001101111011100000011100111011111111011100110011100011011111101000011010110011011110111110001111010001110110101000101110100010010010101100000111000110000010000100010111111011110100011011011001111101011001110000010101000000000010010011011111110000110000001010011101100000100011011110011101001110001011010100010001010110011000100101010001000110000010100111011111000000011001110011111000101010111011010110010011010100100101100000100111011000011000011111101000000011110010111100101011100010110010100011101001001110000001000010100100010010100110110001100000100010000111011100111100011100000100100100110011000111000010010110111101100010011010101010110101100111001001010001101000100001011100100110011010001001000101110000000110001100000011011100101001001010000101101000000011110011001011111100100100011101111000000001011101000010001000010101111001111110100111000011100001000000101100011111000000000101110011101111001111110001011100100001110010000011111100101010001110001000010010101011110100011000100101000100101101001001101000001111100001111010110001111101000000100100100010011101111110110010001111010100000011100000110100010110100010110011001010010011000000101101111011111011011010001001110100110101110110111111000001000110111100000010001111011110111011100100000001100100101101001011111111000101100011001101000101000101101000100001011100111111011011000010001100011111011011010011000001011110011010001101101101010001011110001100010001000100000111000100110100111010101011101110011011000000100001011101100110010000011111001000111111111100001010011111111101110001111000000011110010101111011100110100000001111011101110100000100111001011000000001000011111101111001111001011001100010101111100101001001110110111000001101010000011111101110010001100110010101001011001011111100111111001000110110000111010001110100001110111100000101101111101011110101101011001111110001010110101011000011011010101100000000000001101110000001011100111001001010111001111101101101100011101100101010100100101011101111101111101010010101001001001001111111011111001001001001111001001101110001011110011010101101011111001100011100011011100011110000010010010000110100100011110010100001011001110000100000110111110001100101111111010011100110111110110110100110100011000101111011001100001101010111001011110100111000100011110100101011000001101110100111111111011100001010001011111001101100111101001101100010011001001011111011010110100010110010011101101001111000100111110101110101101110111110101111000101100000111001000010010011010110100010001111010111110010000111000100010110110110000001111000101011111001100101010111100110010010001100100101111010011100001111101111111111000010001011010101010010001000010100100101111100110111100000001111110111010111001011000011001010100001000101001110011000100101011001011110001001011111010001011000001010100111100101001001111111011111111011100011101101011111111010111101110011000001111001110010000011110010000000110110110001010100101111000110001000011001000010101011010001010100100011010111100011111100011101101101000010010101000001001110100010101010010100001101100101001101011101010100110100101011101000110101011010110010100010011010110001011100001110101000010100101100001011000111010110100110110100101111011011101101100101010000001010110001111110110111110000011001111110000101101001011110111100000010110011001111110011100110011000100011000011000000100111010010111111000111010000011011011110100101111100011101111001001100111100000000000001000010110010100001000001110000111000011001000010101101100111000100011010010011001101011001001110000001010010110011110000111111011000010011110010011001011010010100010000111000100001000110100110101110110010001001111101000101100101100111110110011000110011011100001100111110111100100110011101100001000111100011001001100100101110110110101100101001110100110001010001010111010011001111111110001110101111000101110110111000101001001011001011010001010001010001110010010100001000011011010000111011010101111011110100101100110010110100110011100001000111111100011010010110110011111010101001001101100010001001100000011100100011001010001111001001000111011111110110010010110110110000110100010110011110000101110001000110110010011010110011101100110011000100000001010111011010010111100010101010001010111001101011100011101100100111010100001101011010110000011001000000010110100101111101001001010110011100011010001011100000111100010111111010100110001000001001111110101100011111101101110000010000111100111110000011100101101000000000011101001101100100011001111111010010100100111100100000111011100111010110000001100000100110001110111110010000111101011110111100101101110000010011010101001111000100000000010010111001100111000101000100011011111000010100000101101010001010000110000101110010100111110011101110111011110101100101111010100100100101001111101101000111100001110011100011001010111100000011011111100110001001000111101001101111100010010100100011010111010010111010010011000110100010001110101011001010011110100010111000001110111011100101111110111000001110100111000000100100111010001001110001111011010101100111000001011111111001101100010001011111110111001101010101111001011001100000010110101010111010000100011000011010010110011000010010011010111101001011010001100111010100101010010001110101110010011000010000001001110011001101000110100101001100010111000101110001111011100101000010101111010011010110001001010111010001100110001110101111101110000000100111011100000101001000101110101011111101111001011101110101001101110100100110010111011010110110100100110111100110100011000110110100001001000101001011000101011110001010110100001110111101011011010000010001101010100011011001111011100110100010101100000001110101110111100010110100001110101001011011001100000100100110000111001011110011110001011110101100111111001010101101001100110100001001011111110100010111101101001100001101100111000000000011110010011011100101110101001001000000111010111001100100100011000010001010111111000101011001011001110111010011110110010000100011101001000101010101010100011101001001101000110000000010000100101110111100101100101111101011010011010101100000101000101100110110000101110011000001010000011101101110111101101101101000000000110111110000100001100000110001110111100100011111110001110110011000001000000110011000010100000100010111000110100011110001110100101110100111011010100000000111011100000000010111100110111011000100001011111100111010010010001110011101000100011111110010111101010010000111111010001101100110000011000011010111101001111100001101100100100110100011001001110010010110110110011101111100100011100101011011100110010011011000001101000100111100010011010001110110111011101101010000110110110001001000011101000100011010100011101010110001111000101100110001011101010001100011100101110111011001010001100000001101001110000011111000010110100100100010001100111000001111100100001111101111100000011110100100001110010000111101100110011110011010101110011000101000011011111100010000011101110011100101111000011101110001100000001000010000011011111100110000101011101111011010001001111011101111001110000011010110110111101111011111111000110110001111111111011110111000110111101001100111111100001100100111100000001011100101100101010001001001111101110111001010010101111000111101100100000010011011111011111010010010110101010011110101011001010011110101000111011010110110001001111000011001111011010100100001010101011000111100101110011101111000101111000001110000010101101100101100111101101000001100110011100110100111100101011110011000000101001011001010100011011000010100011001001100111000011010011101010011101101111101100100000000100101000001101010111111100100111111110110010110010111011000011101000111100000111110100011011001111010000100011011101100110100000111010111111110111000000111011000111101000110010101110101000111101100110010111010111101110110011001100010111100010101011011000100001001101000011011110110110101100110111101101000100110 +111101101011001011000111001011001011110110000000001101001001100000111111010001111100000000110011110111010101101110010010100100010011110001000000010101111001110011101010001001110111100101111001010100010101111001111100111010011100000000001100110000000100110010100111010111011011001010100101010100000111110100101101000111110010010011000101100001011001001111001100011100110111110100110000110000101110010010001000010001001101101110001101100100101000111010111110100101000001100011010011101101100110011001010010100100000100001110000010110101101000011000100101110111111010101100011111001010111010001111000101011001100110101110000011001011010010100010001111010001011101011011100100110011010000110010001100000010010111011010101110110001100001101111110101101011101000100010001101010010100000000110010011000001011001101101000101101110010100011111000111011101100011100110000011101001011110001110101000010111010001101100111011100111011000000100100110001011100010100110101010011111100100100011000001110000001011010011111000101100010110010000010101110000110111010000101100001011000000001011000000011000111101110100011101101100000111100100001011011101001001110010110111110010001111111000111011001110101001010111110101000111011110011011001100000011010100101110101010010101111011110010011000101111010101000011010010100001001010100001101010101000011000001011101001101101001000110001110100100001001111011011101000000010101011111111011111100001000100010101101011010110100010100000111001000100110011010110011011110100010010011010110101111001110110000101000110000011111000111001100001101111000110110110100000101011011101011001110110101111011110011110000110000111110111010111010010000001101001011110100000100011101000100101000011111000010010010111011001000011001000110001111100011011010101111101001001011101000110001101110100100010010010110010011110010011110001101100101110011110100100010010100011100010001110001111010101101011110100010001010110011000100100101000011111100101110111101110110111000000101101110001010000011001001011111111100001000100010011001011011010010110101001000000110101100010011111100101001001100110011101110000111101010010100110101110110101000010001001001011000110011011000011000101011000110010010110100001101110011100010001100100000100101101001100001100010111100011111001011100101000000100111111010111001100001011101111101011100001001101100100101101001001111111101111011011111111001101101110101010111111111001000111101101011011111111010011111111011000000101001110111001111000000100101111010010001010101010111011000010010011101010110110100001100010011110010010010100011001101101100101010101000100001010110000001100101111101101010110010000101101100101000001011001010010101111010011001000100011110010001010110010110001100001011100100110011010110100000110100011000001101100011010100010111010111010111010111001111000000110000111001011110101010101001001110110111101001011011111011101011010000010000010100011101000100000110001110010010111000001010110001111011111101011001101010101010000010110000000101001011001110001111101011100100111010000011010110101011000111111000100001---------111001111101000001101010101100011110100001101100111101110111100000011000010110110110100000011010111001000101001100101011110110101001100011001011011001100000110111100001111010011101000001110100110100100001110101111000110000010001011110111011111101100101011100000010000001011100110011001101110010110100000100001100010011110001100101000101011011101101111100110011000111011110101010101001010011010011110111100011100011010010101000000011100101010101101001000101100011001010101011001100000001000001011000000001010000101011110110010001111010100010011010101111101111111110000001101011111111001010001011111101110001101101110000110011101100001100001100001001010101110011000111111111111010100101111001000000110000110000000101001110110000100111000010001101000110101001010011100110001101111000100110100110001011011101101110010101010110111100110000111010011001101000111010000111001110011000001000110110101110001011010100110001111110111111111110000101101101111000011001111010100000100110111100100100001100010001100110101000011010011010001000011101001001001010110110000111001111110010110001011001111101010011000101111000100100010100001010011110000010100001011110111110011110000010011001110100100001011001001101001011111101110001100110011001001010011000100110011001111101001101001100101001010110010101001011011101001110100110010001101101111101100010011010010001000010011001001100001110101110001110000001100101110100010101000001101101100000010110011010101100001010001110110101011000010100001100111000101101001101011111011100010101110111010001111001100010000001110011010000101000010101000000011011011110001101000111011101111110101110101100011010001000100100100101010010100101101011111001101111100101001110011111011010000001000110101110001111111101001110011011110000100001011101001001001110000110110110001110001000001110100100010000111010011001010010110010111100101001100010010101011101010000010100100101110100111111000110010010010110111001100010011000001111110111001011100100111111100101100011101100110110000100010101101110010110000001011111100010010000111100110011101000000100001001010010101010100101101000001111001110110011001101101101110001101101000101101100110100101110010111000110001011001010010001000011110000100001000001101100011111011111110101011010000010111001001011111100000001000001010110001001000010001100100011111111100000011010001101010011100000010011011111101101000110011110011100001001100001010001100011000011100101001100111101011001011000111110010001001111001100001101010100110001010111110111110110110000100000011011010011011011111010110011110111001100100110010000000010100010111100011010100010101111110101000111000010000110011011000101000001001110000001010101000001100011100101111110000101111101000111011000111110001101101101011011100010110001101111110000011110001001001000101001111111101100100110100111111011011100001111000110001100001100000011100000101101011101100010011001011111101010011110100011011011101111001110001001110111001010101010010110101010001010010000010101100000010000000001001011001111010111101001101111101111011010011000000000100011101000100000000010111100011001000100000010111000011110101110010100100110111111101001011000101111101000100010101010011110001011110001000011011001101111110110010101100101110011111001000101011100100001010110001010111000100010100110110111110111110001100111000100001000100001100011111100010111101100101101010101101110010001101111101100100001100101010001111011011100011111001101011111110001011110001111010101101111101111111111110100011110100110011101101111110010011000101101000011000111001000010110111101111110101010011111001110111010010100011111100001010010100010111111000011001111010110111001110001011000110100011010101011001100011000000100100010100010100000110111100011001010010011000011100000001111001010100000010111101011001110010100100001000011110111101110010100111001111100111000100011011101110101001111100111110000010010011010111000000000001001101101001100111111001001100110010110100011000000011010111011100111000100010110011011010110100001111110111001110010010101010110000101001000100111111111111001111110010010100000111100001111001000010001100111111011101011000000000100000110101100000110001111001000011011000000100110110111100011101011010000101100110000010101110000000110101000010110001011001000101001111110010111101100111100011101111000000001000100000101000110010000011000011111101001001000101100011000110101101111110101011100000101011110110010110100101011001111000110010111111000010001010001100000100100100110100000111011101010010010110001100110111010010010000011110011000111110001101100001100101011000000010000101111011101110101111110100011011100010110001001010001000010000010011111010101110110110000010010000111010110100010001101011111111011011110101111010110010101100010101100000000100010100011111101101001111010000101101011100110100110100000101001101000011010011011000101000001110111010110100101001000110000011011011001100110011001000000010111111100100001000001010110100101110111001110101100000101000111111001101001110011100000100000101111111001100000110000111001000010010111011011001101011100111111110010110011111101100111101100011110000010000101111011000101010000000110111111101000010001101110101010111111001001001011111101101110100010111011110100001010001111001111101101001001000100010010001100001001111000010111010001101001101110100101111111100110110011101101110100100111001101110100101100010011011101111010010010101101110010010010100111000101010100011110010111110010001000110110000000111001011011101101100001110110011011001010001011100000001010101110011101000100111001100101110001111000011001101110011000110100000110101111001111000010110111001001100000101011111111001111100101011000010100110101011001011110101011011100111100011001011011000110010000110011011110101100100011110000010010011001000110011101110010011110011001110010100000010110100110001000010001001010000011110001101110101111101011000110010011110000101011110100100001001111000000111011100001010011000001110101111001110001111011111010111001110000111101101011100100010100100010011000110101011001011101101101110110010100011110111110101010010001000011000001110011110111110100000101011111101000011111100010010000100110000110110111001010111010001110010110010101110011101001110100100111001111100001011110001110110101001010100100001000100100111100101011110001011011100001010111010100001110001001101001100001011101011111011010100100000111011000110001001001100101101110101011000111010011000111000000000110010000011000010010001101110110010111000100101000100010111111100110010000010101011000110100011100100110100011111111001100000100101010111111110011001000101111111000111110011000011001010010011000001100010100001010000111000000000000101111100011100101110001110011000101101101100111011100011100011000000111101100000001000110100011101110000110011011101001010001011111001111111011001110111110101000010111010000011010100110000011110001100001010001111011101011100011100011011010001111000101000110001101100010000100111100101011111110001100001100011001110100101100110001100110011011010001110111001001011000100000001010010010111110100110010000111001100011011111100000000100000110011110101101111001101100100001000100001100111110001010000100110110110001100110010100101011101011011011001111011111010111111111001100010110001001100010001010010111110110111110011000001000101111101000110010100000011100001101010000110010011101000111110010101010100100010111011111111000101111100001100000001011110101000111001001100100100000000010001111000001011100100000110100101111011100101101000100111001110010101111101001100101010011000011011101011111111001111011110000000111011100011111001001011101001111000000000101001101110011110010000100100011010000000110011101010110011010001011111000000011100110001110100110101001110100001101100001001000010000110100110100101101101111101110101011011000111100101000001110100011100110111101100010101100001101111001110010001001101110100000010100111101101100110000100011011011000101111100001010010011001000111010100111010011101011101011101000110011100000000111010101000111110111000010101100011001001101000001010110101110000101111011101100010101100101110101101100100111011000101011010001001110011110010010111110001100001011000100011100010011101110010000000111100011000101110011001100000000110011100001111000010001100011100100101001001101011111011000111101101110010001000110011111100011111010111100101111000101100100001100011111010001100111011110101000100101011001011011101000100111001011100101111100101000000111110101100011001010000110001010100110000011111001000000011100010010001111001001010001110001000000101110010001111110011101001011110100011111011101001111011001101011000111001011011110011010010101001100110110100100101101010101100101010000110000100000110111011011100100100000001001111011011100101111011111010011110100000011110010100101100001011000101000000100011111010011100111100010000001101100011101011001010111011000000000100010110011001111011111111000010001100110101111010011000101110001110111111110010011010111011001010110011110011100000111110011100110100001011011111101101000100010111011001000010101010001111010100100101111111110010110100010010100100011000001100101100001011101000100000011000001101001001010001101110011110001100100110010001001010101110001100001001000000111101000001110101010110100011011010011111010101101111101000000010100001000010100111111010011110001101001011111100011100110000110100010000100010110011010001001100110000001000001000110111100101101011000111110101110110000000001001110110000110111110101001110111000100010100110011110111000111110010101110001000010001100011001001100011011001001101011011000111100101010110101101100000110100111010110000110011100001010000011111000111111101001100010010010010101110100001101100000110101010100111110100100110010111010010100111110000000101010101101111000000011110011001011011010111000101011011111011001100010000111010100100001000100111001010111100101000110001100101010100100101001001001110110101100110010111111011000111011111011111110100010001110111011001111111000100100001100000101010001000101010001000000111001011010001011111011000111010010011101001010000100100101101111111000101111111011111100000000000001000000110110011111001001111110000000001000010000000000111011100000111111111011000100010111100100110100100001110110110110000100101000111011011111110110011010010000010110000010011000001001111001010000111000100011001101000000010101101110101001111100011010111111111001111101000111110000111110100100000101110100000101101000010000010100011000000000111000111000101111101110001100000011101001011111000111011100101100000111100111011100000110111010101111010000011010000100110110011010101011101101010001100001110111011111011111100100111011101110110110000111001111001110011010111011110011110011100100110001100100000111111101110010000011110010011000001001100111011001110011000111111100010111110100000010011001010110110001000010101110100000101110111001000010001000100111110111000011011000011111110111110110111101100001101101011111010110111001110001000010110001001001101010110001111110101010001101001011011100111110001010110111000001010011001111100110111001001101101000101110110111101000111101101110111101111001100101101011101100111111010101011001111000000011010011010001000110111001001100101010010001110001100100100000001111111011011111110111000010010111110001001001111010110110010000101011010101101101000111100111010111011010010010110000010101100100000001111011011000101001101011000111101001001110101010110101110000111010001111100000100001100110010001010100101101001111110100111100010110100110100101001101110001111110010011100111010111011101011001001001110001101111110111111011000010101010111111111011010111010100010000100001011010000101001001011110101001101111110111100000010011011100110000010100111010000100111010100100001010001001010011100101111000010000110101111001010000100100000101100001010110001110100111000010001001111000111010011111001000011001110110110101101111001111011011001010111010001000000011000000100000010101110011011101101100101100110111011111110110111000011001011001100011110100111110110110111110100101011010011100110110000110100110101111100000111100111100011110110000011111111111011000110011000100101100110111010001001010010000101101011110100001011000101001100101001101000011001100100100111110111110001110100011010100110111110111111100010010011100111011111111111000110101100111010001100101111000101111111000101101011000110101011001100010011110111100010111110101111111000001001100111010110100010001010110011100001100111101101000100010001000100111011000100010011110010000001011110010110110001010010110101000101101110010100010110100000110001000010111000011110101111111100100101101111111101101111000110000101100110111110001110110111010101000110001001111100000011101001001000011001000100111001010000101110101110110010101100101100000110000101101001100110001100001010011101110011011111001100011000001110101101000100011111001111001010000111000101111011110001000100010110100011001100011100010101000111101100111010010111001101000010100111000100110010001011010001001000010010111011001000000100110101111100000100011011001010000101001101001100001011000110111101110010101011100100000000110111010000111000011000111100011001001010101010011001101100101100100010110101010111000010100000011001101110110100110000011111111001000010110101001011111001010010000011000110100111100111110110001000001110001110110100111111110100111000010110110000000001111000000011110111011001100000010101001000011001010101110110001101000110000100111111010000101100000100010111111001111010011000000000110001110100010011110000101000110010100001000010010001011000110100000001111110011101111100101001111111001000110101011001100000000110110010010010101010101010000100011000001000100001000011010001111100000101110111010001011110100001000010001000101100000011011001000011110100000100111101000100011100111010000000000110000101100100000000111001011111110111100101010100111001111011011110111000111111010100011011000011001010111110011000111010000001111100110001001011010111110000111000101101010110111011100010011111111110011100111110110000100000111000001011000011111110001000101010001111001101110010000111111000100001010001010110010100100110100011001000111000111001000110110101010011001001111011101101000001110100110110100110000011011101110001110010111000011110001000011101100010100100011111100011111111001110001111001000001110000000011001110111111111111101100000000001001011100100011100000101111000001000111011101001011000111011001101001111101111110100001110100110000100010010010000111011001111001001010101110111101111100010101110010010111001011010011111011101101000001000111011110100101010011110110100000110111000110000111100110110001111111111100110000110011001111110010111100111010100101000101110000100111100001110100001011000100101010111100011011000010011111011110101100010001101101100000011001100110001101010100101111110100000001101010101001010100110000110110000110000011100100111110001111100101010101001000101100011000101000011000101010111010011001101011110010101101100101110100110101110111110001011010000111100001110101010011011100011001000111000101100010111111011001000110111011011011110011100000110000110100001011100010000110111100101011110011010101111111000101010000000100010010001111101100011101100110000001100111010000000010111001111001100101011111101010111011011110010101000110010101101100010000001101011011100101111000110101000000110011000110100110111110101010111100001110110001111010101101010101010110110010011010101000110100000011011110000011110101001011110101011110000100011001000010111011001010001111001101001001001111001001111010111000010111001100010111110001110101101001001101001010100110000001110000000100010010111000100010000111100101000101001001001100101101000110111110001001000100110111101001010101110100100000000100111000110001100001011111101110010010010001110111101111011010111011101001010011010011100001000010101011111101011100011001110101101101010101100100000101001001110111000011101010010001101000001111001000001001100010110011111001100000100111111010001111010110100010101010111010011011100100001011000110001101000100111011011010101000110110001001000110000111101101101011010100010000100000010100110011110111010101111110100111101010010100010010110000 +110010100111111010101101100110100010111100000010011010001111100011110100011000001000110001101111001111110100001100000100010010101110011100011001001111101010101111001110010001000000110001010111000010111010010101011111001111101001110111001110100011100010011010011101100011011111110011010001100000010000001001000111101101111110011000001010011000111001011011110011111111001101111010111000110110101011011010010000100101010101100111101110101010010100000111001111111011110010111111100011110010111110010001001001100010000000001101110111110001100110000001111100001011100101011001100101111011110011010011010001111011100001011000101110010010111111111010000010101101101010110110001111011000000000100000001011001010100011000010011111111011101010100101011111010011000111010110001010011001001011111100001111111011100100100000000000100111001001110000000000111110001101010001101100100010100010010010110000100101101111111111100001010111011011001111111110010001100000110100110001111100100101110001101111101100010111001101101001100000100001101001110111000100000111010011001001111100001011100011101000101010100111000110101011001011100110011110110010001011011001111100010011011110100001111111000000110110011101111101001010001010101101111011110100001100111010100110110000110001001110000100110000111010000011001001000001011001110010110010100100110111000101011000000111110100100011011011001010110101100100100101011100110110001011001001100010111110101110011111000011110011001011101000110010011111010000111001011111000100110110011101100110000100110010110000100100101101011100101111000111011011111111111110111101001011101111011010101100110110111001101110110011011001101001010110100011110110000010111111010001111011110111100010001000000000010010010111111000010001110100101111100011100111110001010000101101010101111110011100010000010111011001000111010100101111111110110110001011010011110000011000001110000110101000111111100011101111110100011000010011000101011101111000110110111100101100101110010001110111001011110100011111110111100000001011101111101011111011111001010101011010101001100010100110101000000101110001100010000100011110111111011000010111000111111100000000000010111111000101101001001010111011011111101001111010111011100100010111010101001000011100101101011101011111010100100011111010011110001111100011110110110001110011001100100100101110001111111111111101100100101010110101110100001001001111000010100111000110110010110011010111011011100111101101011001010011101100100100001100010010011100011101011101101011011111011110010101111101111111100100100010110100010011110110010010100101100011011100111110001010100010111011111110100001100001111110010011010010010001010001000111111100011001110000010000111110110111001001100100001001011010111011001111111100010001001110010000111000011111001011111111000000001101100010001110010101100100101011011011101011000000001100100110010001011100101001000100111111011010101110000101010010001110111000111101101110011000011110110100011101111011010110010111001001011100111001101101101010000010111111010010010110100111001010110101010101001011101000010111010111101---------001100110111000110111101001010100111010110110101101111110000011001110111110100110000010111000111011100010000001111010101011010100111010010001000110000000001111000110101101000101010100011110110000001000011100010110010010101000111100101111000010010011100001001111101110110010011111101111100011011110010101010111011101001011110000001111011010010011000100100100001111100110111010011000010000101100101100011001101001010111001111011001101111000101011100111101010001011010101110000111011110111111011101011100001110110011010011010100100111010101010011101111101011100110110000110001111001110001000010101101000001100011100110110001011011100000100000101110101100101001001100111110111110100010111111111111000011010010110110001011000111101001100100100001001111110100001010101101110111100101111111101011101010001010000110110101001111001111010111111011100010011100010001011111110011001011101111011101111011101011010101111011011000010101011110110111001010011110010000111100101001001001011000001111000011101011010001001010111110000000111100111010100010111100011101110001011101100010100010111000101110110101110000100100011000010101110100101110111001001011111101101000100001000001010000000100101001100101101110001010010100001110101010100111110000000111000101000010111101111100011000111101001010110011000111010100011010000000111001101100111110001000010010100100000110011110011110100100010000110010101001011100000010110101100101100000111101001010000010001000001100010000010110110100100100111010000011100101110111001110101100010111011111010011001001100111101000000000000011101110100000110110010000110110110010111110000000001010001011100000000100100011001111111000001100100000110110110010010000100001111011110110101000000010110010011011111101111110010111010001110100000011000100100110101001000010001010100101010111001010101011010111101101001111110101101010100100110110100001000100101110111110101010110100111001000010001101011110010101110010001100100001110010101111011101100010001100110101110110101010011000111101001000101110010110110010000111100010010111110111001000101110010011010101011001110101101110010011101110001100100011011010110001010101111101001011101111000111100101011101100010001111101100000111101011101001010111001010111111000101001111110100110011011000000000011110011001111010101100011101011001001001101011111001110100000011100101110010000101000101101000010010000010000111101011101110110000111011100101101100001010111110010010000100100000001010101010011000101100000100100000101111010010010011100110110101010110010001010100101011110110110100001111101110011110101111110101110000011010110010001000101110001011001010011111101001011011110111111100110001010001110000011111111101011100011110100011110110011000010100001100101000011001100111101011111001010011011001111110101011111100101110111101111110111100100000011010100101101111000011101110000111100100101100110101010011110110001000100011111000110101110110010110010000000010111011000001100001000011010010100111000000100000010000010000001100011101010000101110100001011001001110010111111101000110111010001000111111110111010000001111000100100011110010100110111001101011111001001011100100011000101001011111011000001100001010100001011111101110000110110000111001011100000111011100101111111001100101100001000000101010110001001111100011000001000101001100010110101110100101111100000100101111011111011110011001010001001101110001100100110011000110000010101100110011111110111011000011111111010100010011101101000001001010000110111110011110011001101010011000011111101000001010001101110111111011000100100010001011000000000001000000111010111001000010110110000100101110001101010111001010000000010101001001101110000101101001101011001110000010000100010010011110000001010111011101101011011001011100101111100101011100111000011011100010001011111000110111010110100000100001010110111101010010001110001100111100110100111011111000100000101010000010011111001001101111000001110101000010100000101011001101111010011110010001011001110100010110001111000101110100111111101100011010111101100110000110000000100001010000111100010110100111001100010000000111110111111000110100111110011011010111000101101100001001001011110010010001000001101101000111000011011000111000101101100101001001110101100011100000000000101001111011110110010001111011100110010101001100010100011110011101001010011010100100000000011000010100111111000010110001100110011110011101010011100110110000110001111101010101000101101111010101001011011100110011001010110010010001111000010010110100101010001100110000011000001101011011000101100011110101101101011001011011010000010001100011110100111010010111000111110100100110110010110011110100010111110110110101001010000001001110011100111101110110101001101101001101101011001100100000100001110100001010110011010101100010011000100111100100101000111110011110110111111110101011100111011101111111011011011111110011110110101111001010111011010100010010010101110001101110101000011001011100000000010111111101010101100000011110000101101111001101111010010010011000011000001111001110111101100110111101011000011110110011000110111010011011111000110000010110100110010101010100111101100110100101010101011010111000111101011011100111100001101110001010000010100111000011011011011011100011101000001110000100110010101110110101010001001100011100000110110101000010010010101010101000011010111010010001011010101011111101001100110011100001000000001000101101110100111101001111100101101000101000001010011111010001101001101010101011000001000101010010011110011010000101100000111011111000100001111101011101011100001111110001101110001100010010101111001001101101010011001001111001010010100000001110001010011111001111001001000111010110111000110110010001111111000010001101100011010010010101101100111101001011100011001100100000011011000001110011001001111000001110010101001000101000001010011100010000001011011100010011001101101110011101001000111111001101000011100011101101101001010011001000110101011110111001001101000011111011000010101001111111110100001110111011100011111011110000110001101000110101001011100001101011110100001011010001001101000010011100010010100011100010100000110000100011110000000110101010100110100001111110001100111011011101101000110001111100101001001101111010110111100100010110001011010011100110101000111100100111001001111100011011001001010000000101010000001011110111110110101111011101010101100001011000000011011101010010101000001010110101001000101110110010000101000000110110010001010100000101010110101111101000001100000100011100011011111111110010111110001100100011101000101100010111110101000101001001110101010010001000100101011101101101101101101100111111111100010010010111111110010101001001101010110111101111011000110010011011110111001000101010111000011101111001111001100110111101100100011100010111010011111110100011001010101011011101001101011100001000101110100011101110111000111101001101001011100000110001101110101100101101110000100101111001100011110010000101000011110111100011000100110111010011000011100111010010001010010111001010001101100101101010000000001100110011110110000010001101000111100110010111110011010111111111100000000111000101110011101000001101001100101101110101111101000000001101101011110110000100001111011000110000000101011111111100111001001001011001100001000111000000111011111110110001000000111001110000010010100101001110110011001110001101001001001000010010000000001001001101100001001100101011010001100000000011010010001111010100111100110100111010111000010110100010010110011001100100000101011000011010110010010100011011100010010011011111110001011001111110011101011111001010011000100100010111101100011010101100000111001011000010111011001000111010111110111010001111110011010100001100101101110001110011011110100010100110100110101000001010101011100100101010100110101100100011001001101100010000011011111010101001011101010000110101010000100000010001010111001111101010100001000000000011100010100011011000101101101110010011101100011001001111100000100101001000010110100101100111100011111001001100000101110001010100110001100111101101111000010111011010011101001011100011011110111011011001010101111000011101010000000101000100011100000001001110100111000101110011001000101110110111101010001111000000001110010000001101101100100100010001100011100010010001101101110101110111011111000000101001111111100011010100011000101101100000111101010101010101111111110100101001110010100101000100100100010111010111110011011111001101001000100001010100101101111110111101010000010101011111101100001100101111010011111011011000100110001010111101000011000001101111000101100100001101011100001001001101111100101010010100011001000111000110001000111011010010110100001110001000110111101011101010011000000000100010001010101011100001111111011001101100110010110110001001111111000011110011010000011110000011111000010100111001111010010100001101000010000010010101010101111100100100111001111110111111110011110000001110100011010110100010110010000001111100011100010000000001000110111110001111101001000111111100110101101010010101111010001011011101001100101001000100110001110000011101111000110111010100000000111110100111111100000011101101000111000101011110100011101000010111110111101100000110000001101110111110011101000011110000000110111100010010011011011101100010100010000101111011001101000111010000101001100010110010111011011010010010010100011110000110010011101000011000010001101010000000000101000001011111000011001011111101000011000110110000111010101111010001010110000110111101010001011010100111010111001100011001110110101001100111101001100010011111010111101000100110001000010100110110000001110101101100110110011110001100110001110101110000001000010011000010100010001000000111011101000100011000011011011101111010010000100011000011111010010101111001011011000000001101111110110010010010001011010010110110001001111011111011100100110100110101111000011011000010111111100010110110000011001111100001110100000110010010010100000100010100000010011011001110111001001010110100001101101000011111000101100001010001111111101100100001100010010000001011101111100100100110010100010011001100011110101101000110000101001101010010101100101001111110100011000011110110101110100111010100100011000110111000100101010011111000001110010011100001111011110111101010110101011001001001101010111110011101111100000110100110110101010000011100111110100010110011110000111110110011100001011111000101110100001010011111000101010101010001010010110010001010110010111101011110100000000001001000000001110101111010010010001100111000001001100100110001000011001110100101100000111000010111000101100011111101100111100011111110010110100111010100010101101011100100101000001000110001111100001000011001001010111111000011011110000011100110010110111011101000101101011110100011110110101100011101010100010100110100101010010100001000000111100011110100000100000111011100101100111101111100000000001101001100110100010010101110101001100101100100010101101111111111110100111110110100000111100111110110010100100100101010011110101100011011010111001010111111001001101000011110100100100011001100111110111011011111011000110101001111110111110001011010101110011001101011010100111011001110000001011010100100000001111101110000110001110100010010111000000111100101000100111101100000001001111111011100001110100001000101111100101000010001010010110110110000000101001110010101101100101111111110010111100000111001010101111000010101101011101111011010010010100010101101000011100110101111011110000111011011111011110111010001101001001001010101000110000101111111111111001111111001110001000111001000111111111101110001111010010100001001010100110111110000010001111111100110110001110011110100101101010101010001111010110100100001110100100101101100100110001111011101101000110111001101001100001011111100001000101001111011110100100110110001101110101000011001110111001011111100100010111111110010111101000111111100000010111110111010011111000010111011001001001010011111101011010000100111111111010111111011000011010110001000001000001100000011100111011101101001011010010100110101100000001011111011110110110001011110001011110011111000111101011000111000110011010011001110000000110101101101010010100101001000111110010111000011001010010000100010100001010001001000000011001001001111001101100011010010000101111010010001100010000110110110101000001111001001101110011011110110001101010000110001101111110000101000001010000000001010011010110000000010010010000101110100011011101111100001001011101000000001100001010011011110010011101010101000010001010000000010110101110000011111110011100010000001110100101001101011001001010111110100000110111000100011100101101011111101000101101000110110000111101010111100111100110110001110110010101100100100110111101100001101001000011001010001111100001110000100101110000000001111011010001000110001101101111111100111000011111000000110000001100011100011110111110010001000001110101101010100100011110100010000100010000101111100101000110001001011110101110010001100001010110000100001011010000000010101011001111101001001010111010100101010110110000111010110011000001010001001000101000011100011110111100110001111111110011001101011100000110101001011100110110001000011100100110100100101111101000111100001111000011011110101011111001010010010001001001011111000011010110010110110101001111100010100000001110110000001101111100000010111011100011101110010101010100111100111110000011100101100101110000010000011110001010001101110000100010001111111010010000110010000111101010011011011000101100111100011101010010110001110000001011111010111000111101000101011100100111100100001110111011111100010010110100101111110101011001010011011101101000011100001010111110110111110000001100011111111001111001101111101101100000011111001111010000000110010001111011011010110111001001101010010111101010100001010111000110000001111010111001000011101010000111000000010101000101001010001001110110010000010100110001000110111010000000110111100001101011010110101111010011101100101100011100010000011110101011100000110001010100000101101101110001100100000000010011111100100111111100111101010001001101010101101010011011011001000100110001011101011001110101001110011011111010111111110010000001011001001000100100101101010011001100011010111110000110011011100000010101111011110101110111100110110010111001101000110010101011000110010111011110110000011100000001101111111010001101000111110100110010001111100011110000000000110101001001100001100001010010010011101111100011111111111111010000110000000110110110001001111010100011011001000110010101100001011111011110010111111111011000100101100111100010010101100100100110100011111111110000011110110111000011000101000011100000100010001101101110000011100001100111100100010101001010100011100011110101011011011010110100100001010000011010011011110010100011001111111001000010100010000110001110011010010100011101100011111110011001111011011111010111100010100101101001010100000010011110111100000111001001110111000010100100001111101101111010011101110010000100001110100001100111110011000010100101101001111111111011000010001100110011110001110010010111111111000110100011010111011111001110011110110101101000010010111011010111000000110011110010101000101011111001010011101100111011101011011111111010010111001101011111100011101100100010010110100101110101000001110011000000010010101000110000001111000010001001110010010010101100110000110000011101010100111001000101010011010001011011110010011101111101100100101001000110010101000010111111110101100011010110111110000000011001110111001000111110101010011110000001101001010111100010111101011010110000110010010001001111001100101011100101101010110110000001101110111100100100100000101110100000010000100001011111110100011011001101110110101101001000000010100000010000110100110111111100001010100001010100011110100010010110010001100100001001000100100000110110011100101011000101111100000010111011001001101101000110011101101001111100101010111110000010000111010111010111011101010111010000101010001111001110000001111101110101000011000001010000100011011101011100100000111110001100010110000111110100010010011010100010101001111000010100000001110011000110100101000111010100100010110110000010101000001001010100011110011111010001100011000001000111110001111110111110010000001000010110101010000001011101110011110100111001101110110111111011111101101110001111000011111100001011101101111110001100000111111100101010011111111000100011110111011011111111101111001011110000010100 +001100110111110110101001101101010000100110010101100100111110100011000101110100010000111001110101011110110111010011011110001001110011101011101101111101000110100011001111000001000111001101101001111010111100100100110101111000011110100001000000001000001110001110110011011100010010100111011100101100100101000111111000011000011100011111000000000101010110110110111110100110010101011110011010011110101101001011100000101010101011000000100111100010100011100101101100100101011010111001100011000101101011110101001000011101010001111011001111000101011100110110010000001000110000000101000111001000010000000000111111110111111110101111110110000001110100111001010011000000110010111011011000110011000111110110010101100110001111000101000001001110110110110011100100110100100110111011000010011011011011011111011001111011011000111101111000110011010011001110101011111111001100111110011001001111011100011110101101001111010111000100001000001111010011010010110000001010101111111000111001101001001001011010000001000110000000101011110111110001111000011011110000110101101101001111111101111101000111010100110101101000101001011000011111111111000101000101001110110100101100110000001000010101100101010101000000001011010001010001111001101100000011101010000000010111011101110000101001101000000111010100111001001100000010000001100001110000101000111111001111011110010111000100010011100000011010011010101101010110001110100010000111100111111110111101000100110111110110010011001001101111011000001010101010011100011101010010111011101011000111011001100010010100001000010101011010000011111010000011001001011111000110001011101100011101111111011001000111011010111001101011001000101000000100010010101011000100111100000101000010111010110110001001011001111100001001000110110101000000001111000001000100110010000001010001001101101001010100111111111101101001011011010111000101101110110111001011000101001101101110101001000010010110101110010001001101100101100010100010011010000010010111111101001000010111000111001001100111010011001011000101100101100101110110110011110101000011100100100111010101001111111101110001001111000110101011011111111001110111010100011011110101000001101000001001111011111100001000100010111110110000111110010001011101010011010001001010101010000111111000101110111001100101010111000110001101001010110010011001101010010010011011100011011001101011000100101000000010111010011001001110000100011111010111101110010110110101111011110101000110101111000111010001001111010101010001111100100000000100101011100001110001010001000111110001000000111010000110001100000011101000100010111111101100011100010110000011011111011000101111001001010111001011010110011101011000000101100101010100000100000100000011001001010101110101000010110110110011101101100100101100101111010001110100100000111110011000100100100111010100010000110100011001110000101000100111110110101001101011110001110101100001100001110001100000100100111011010110110000111101101101101000000111000101000111110010000011100111000000111101000110101010110110011101010011110101110001000011001100100100010110100111100110000011011100001010000101110011111111110010000---------110000001111111000000111100001010001100000110010110100111011010011001001111010110100011101000011000100010100111011100001011001010111001100011101100011100011011000111001111101111101001101001000110010101100010011000000011001111111011101111010011001111110000101111101011110111010011010001010011100001001100100000111010011111100001110101001110111111001111100110111000101111010010101100000010000110101101000011000111111011100110011010111110100110001010111010101001011000100000100001101000001011110011010100000110011010000010100001110110101010101110100111010001010101111100001101111001010010011100101111010110110110100000011111011100000011100000110100100101000001000101110110110101001111010011000011111111101100111010100101010100110011011011101101000000001110000100001110010010011100101110011010011000011110010010010011010100011101100100100111010001110000001100001000011000001011101011101110110000111111011110110111110010000110111101111101111101011110100001010101110000100101111000101110000100101000100110100011100010011101001101110101010010110011111000100100100110000100011010000111001000101001110001111100001001000110001110000110011001111100111011110000001001011110100010100111001100111111010001001000100100111110111101010011001011011001011000100100000001111001101100011010110001010001000101100001001100000000100110110011011011101000010111001111000001110010101001011011001101000101011001011011001010001010001010011010000101001100011010011100110101010000011111011110101110100110011111000001111000111000011111010000000110101100001111000001001010111111000001100100101001011000100000101001110000010011111110010000001000011011111010100000100100111010100110111100000110111110001000101000000111001101010101110100010010100001111010010110001110011010111110001111101010010000000100000001001100011001110101001001001110101000111001111010111010011101101001001110110000010100111100110000111110011010111110111010100101011000001001111100100001111100111111100000101001001011010010000101000100100110010100100111110100000001010011011001100101000001010000010000000100100000111000000101001000100111111000111011011101101011011101010000001011110111011010011011010001000010001111001000000011010010001011100001001011111110101100111111010001010000100111011000010011010101010000110000000010010100101110101000001000111001110001111000001110101000001111001000001111100000010100110000101100111111011110111111101100111100000011000111011100110111110011000001010100101101010010000001100101001010011101001101001100100011000010111111101010101110100101101100110110001010111101000111100001101001010000010100001010101110011111100111110011111101001011111010100000010001100111100101101110001110010011111101011011110110111011011101111011001110000110111100110101000000001101010100101011001110110000010000001110011010010000100101001000101101110000110010100100000001001010010011110000101001110001010010110010100000001110101111100111110010101000101010010110011000111011010001010111011101110101100110110110110010110101001011001110101111001000000011110010110001010101110111111101111101011010110110110101001101010001000100100101100100111100110111110111001001000000000011101101001001101011110111101101000010100010110100110000010001010011001001111010100000000110001001000101000101110010001001001100110111001001110001010001101111001100000011111011000000111001110011010000010111111010010111110001101111001010001110001101110101011101001011111110010101110110001111000001010110000101010001010010110101101100001001010010010101010011011110111111101100101010001000001100111101010001011011100110001001100100111111110001100011000101001000001111111110101011101110100111100101111100001000111000010000101100011101101001100100111011001110111111111000100011000110001110101010000010011100010010011001110100011101111011000001010000010111000110101101101100001011000111111100101011100000010110011001011000010001011010100111011101110110110111010011001100100010001100010010001000001010000110110001101001000000110000000000000000101101011000101110000111110100100111011101011100001011110000010011110011100001101101100100011100111000000100000110000101011011100100000100110011010100001011011110101100011000001011100110101111101000001000010110000101101101000100101011010000000001011000111010001001110100100011011011010011010100010000000111011011011101011000010000100110010111001011111001011010010110001111101101000100010100110010100010000011101010100010000100100000111010010001001110000001110111100101010100101110111010110001101001111111111000111010001101101011000111010100100100111001100001011100010111000101000000011100100010011100001111111111000010001000111001010111101110110101100101011110001011001100011100100010011000011000000101101001000001110100010010100101111001001011110101100011001101111110101001101110110111010000101010000110101110111011011101111000101011110100010000001001011100111010010011011001000010110000011100000000110100101000111011010111001011011011000110010111100001000110001010000010110111000101011100001100101011110001101101111110001111001100110010010101011110101011000110110000000001001010101110000001110100001101000011000100101101001001100011111000001000001000000011111110001101111011101100110001010010000001110100010101111011110100101101110110011111000100101001100010001000111011010100000100010110011110100011100110101011101101001110011101110001000111100000000001101110011001000101011100000100010110011111011100111011000100001001100011010110000110011111110111110011111101010001000010101100110111100011100111001010010110000101000101001110110111010101110111110110000101110001111000000000000001111000011000101111111110101000001011111110010001101000000011011010010010000110111011001110100101000100001011100100111001100000111010011100101111011101111101111011011011001000100000100111100000101101001110100100011111110100100010011100011100000000011111001000000010011011011100011010110011100011010110000100011000001011011001010101011100100000111010101101110001011101111110000000101011101100010010111111111111011000101110100101110010110110100110100101010010101111000100101110100000011011100111111001110101100110000110101110111110001001001101001011010010111000111101101111000100000101000001110101110011100011111000010011101000110011111011011010000010100111110101101111001111000000100101010000101000111101100110001011100101001011000101011001111111000010011101001001110110010001100110001001111000010011001010011110000110100000100001001001101000111101001000111110110000000110101100110010111110101010100000010111101001011000011100001100011010101100110000110001100011001111010110111101000110011111101001100011001101001000110111101111011001101111100111011000111000011001011101010100010011010101111111010100101110101001110000111000011100101111100110010010001000001011100001001110011001001011111100100010001100111000100001100101011010110001111010000010100111010010001100011100010000101111011011010111100110101000010001100101110101001101000110110011101000110111001011111011100001111100100000110110000001010001000101101010000010011000110001001100110001010110010101101111000100001110001111000010110111110001100101110001010110110000100000010001000001111011110100011110100101110101000111001001001010100110101100111010010111010000011010101100001010010100000011000100001100011100111011101000100101110101110100101010000110010100010100001101110110001110010111011001001110100110101111110001011000001010001111111110000010111111100010100100111100110101000111100010010011010000011011011000111111100001101000001101101001100110010111011001100111100001101011010111010010100000111000011110000000000101011101100010010110011010110110101101000110111101100000100101100101000110010000010011000010001001111100011110001100000101111000000011111111011111110110001001010100011001001011000101000011001010011000010110110111111111001011100100010010011100011110001001011000110100000010001011101001111010111000111100000111100000011000111100110001101101000000010101101111101110111111010000000110011010111010001110001111001000001110010000111010001001100011011011010110011011101000001110110101111111101100011000101010101101010111111101111001011011010111100010110000010001001110111101100100011000100010010010110011111110011110100001111000101000111110010001010111011010101010010100111110010001111001000111101000111011000010101100110101011111010110011111000111111100101011100010101000001010111001010110000001101101011111000010000000000000100110000010011101011010110111000110100001000000001001001000100110000011000100011101000001010001011011010110010111001110000111010010100010011010011111000011111001100110011001100101110000001101111111011001010011001001001010101010111100110000110101111000101001011011111101110011100001111000001110101110100101001010100110100001011100101001000100101110010001110111001100100010100011101000000000111110101010001000101000111110000000100011000011100000100111001011111110001101101111110000000101011000001011000011011001100010100001011000001110010000111000011010111100101111111001100110011111101111001000001010101000111111101001101110010010001010001101111011000001011110110100010111100101100010100010001000111110111101100110111100110110111100001110111010100101110100010001011101110110101100001111001001011100010110111111101101101111011100010001010011001111101101001010111111011100111110010100101001100011110101111101001110111110011010000101110100011110001011101001000100111011110111101011000111010111110111000011100101111011111110010100010001110101000010111101100111100100110110100011111101111000111100101011011011011010100011010111101110111111001001100110101000010000000100100110100110000100101000000100010100000010001000001001101101000000111010001011010010111010011111010110011100011000101011110101110110100011001111010100000000111000110100010000001001000110110111001111010110100110010110000001000100111101101010110100010000000111011111100101001010100001100110001001111100001011010000001010111111000000001011001011110111001001011001010100100101000110010101101010001001001110000111001001101110101110011011010100011110111000010011111100000101101000100010000000010101100111100000010011110011011010011101000010110111000100100011011111111010101111101011111001111110011011101110101010010101110000011111010011100110011110110001010000010111101110011101011011100011111010100001101111100101001000101110010100111111000101010101110001111001101001100011111100111011011011101010110111110101001100001100100011001100111110000010100111010110111110001111000000000101111101100001110111010100011111011100010010010010110100110011011110010011000101010101110000100001000001111000101000001101011010111101001010111011000001000000110001011001010100010010001011111101011100000111111100000000011000001101010010100100000010010100100000111110100010000110100010000000110110010011000100001011001011100001011001000101001000110100110111001100011010011001101011111110111000000001101010010111000100010110111111011000001011100001011111101100101110001101000101110100100010100001101011001000010101110101010101110000000110100100110010111010001010101001101011010000000011111011101011010100001101110101111111011100111110101010011001100010101111010011111110011001101010011010001001011000010100110001000000111000110000011011110101011011101001111000110001111100111001010000000010000111110110101100100000001101011000000001110001111101101110000000111101001000111101101101111110010101100011110011111110001111000101100011011100100101000110100000010011110100110011000011100101011011101110101101001010001011110001001001101110111101011100011010110111100111011011001111111001010111000001101111101100000110000111010110000011011000110101111101111100001011000100110101100010100010010000000001001100100111011000001111111001011110110101010010111001000111100111011111010000001001101000010111001011110100011100100100110001010111011110010001101001110100110010101111010000110001111000001011101101110000010000001111100100011101101010011000000000011001011010011000001110110111001010110001100001101100010110110010011000101110111011101011110101111000010100101110001100010001011000000010000110000011110000000001111100100100111110000101001010110001101000111001001100010010011010110100100000010101010111111101101100010111110110110001011010111100111101111110101001101001011111111000010101100100100101000011011000001001000010100011000100101100100001001101110011010100100000111100001101110101010001110011101001001011110100000111011101110010011010110001101011010101001110001111001001111101010010001110000011011101110010011111110010010010010001001011000011000111001011001111100011010100110110010101111000001111000010110010100110101010110011011110101111001100000000010001110010000011010101101011011000111101001110111000001000111000110111011010010001001000010010101011101000001110001000100100001011010011011000110100110111000111000100000000001011110000001110011011100010100111101100001001111111110011011100010101011101000011000100001000000001001100001101101011001000101000011001110100011100100000110001110000110111110001110111010011101100000100101010001011101111000100111110111111100110101011011001101101011000111011011100011000000101010010001110110101000101111111011100100101110101110111001000101011010110111100101111011111011110011011111001000101101111010011100000101001001101010010101001011011011111110001000000001010111101010111011100111010101101111010000011110100110100110001001011101100000011101010001111001001010001111110100011111001011010000010100110011100011101101101110100101010010010110100010011100001000110000101001110101011101000000010011000000110110001000001010000100010110011000100111001010110110110110101011111000110011100010011000001110011100001100011101101110000100101011110100111010111011011000000101000011011000100100011101010101111111100010011100101000100001000100001000000000001011011101010000111111101010001010000001010111101101000111011110001101010011101010100110010111000100111001011000100011011101001101010010010100001100001101001100001011101011110100010010111111011101110000010111001001110010111010101111001111000100110101111010111000100000110110111011101111001001001000101110001110101010001000000111101011101010110110010100010000010011111011000111101000100100111101100100101111101011111010110111101010011011100001011100110000100101010001000000011111111001000011110100011001001000001111000010110001110111110110011011110010010010000101111000110101110111100000111001001001000111000111011110101100001111001000110111101100000100011110111010001001100011010100000110111000011111001101000000011111100010010101000100001100010110000000101111101101100010000001011110101001011100011100100111110010110011110101000111001111111001001100010001111010100011110001111101111110011010001010011111101000110001110010001000011000100110110001101100000000000011011011101010100110000100101000001011010001011101110110100001000111010110010001110010110000011000001000100110000110010010011100010110000110001011110101011100100110010010101110010010011011011110010010000110001110011001011111000100001011111000000001010100001111011101110110011110010001111100010100001001100111111000001001011011000000010011101011000010111111100000101101010111010001110001111000010110101000001000101111001100001011001011101001111100110100011111101011110111011111001101011100010110100000111010111111000000000010110100100000111000110101111100101110011011100110001100001110110000011110011000100100000011011010000100101101011100100010110110000110111010010111011111101000110001101000101001000111101110011001101011111111000001100001011100100110110111000101101100010101001011110001000101000000011101010010001011110110101010011010011101101000000101010001111010100001101000011110101011001011011000110101001010101110010101110110000101110000101001111001100111011010111110101101111101010011011111100000111001101011100011101001000011000011001010100001011000110101111011010001001011101010010010111000110110100111101010111100010010000001011011110001011101001001010000001100101010001101100010100100000110011110010001111111111100011001000111001101100000011101101101101110101010000101110011010001000110100000101100010110100100100100101110010100101110001011011100010011011010010001001011110100011111110001100011000001001000101000111101001111011110011100001010101110111011111100101100000111101111010111111101011101010110101101100111 +010101001101100011111101100010001000100111100000001100001110011111110000101110111000001010001111111110000101000000100010000111010111010111000101111100101011010001000101001110000100001011001101110110011010100101101000001000101101010110010111011110000010111000000000000000111011101000001100101100010111100100000001101010111000100000000100100110111110001101111000110001000011100111101001011111100111001010010001010100010001000100010111101001100000110001111011001100010010100101100010111010011100001010000001000111000010101010110110101011111011011110111100101100101101111100011010000110000110100100010010010010101001100111010000101001011011010110010011000101111000001011111111011010110011111011000011111101000001010111111011110111001000001111101110011110011001000010110010100000010001001011101110011000101100000010001101000011001000110101111100111101101111101010000010110001111100100101110111011101011011000110011111100100100011100000101110010100110010111001111110001100011000111100111000010110110011100011011110111100111011010100000010100000101011111101011100100110111101000110001111011010001000010110110110010010101000111111000011000001100110010110011001000111010001110001011011001001001101000110010000001000111101101000100001001011010100010000011001000011110111101111000000010101101100010100001001000010101101101111000100000110001110110101110101001110100000111100001110011100110011001001101110011101011110110110010000101111011111000111001011110110010100000110011101001100001100001111010111011100101110111011011110110001100000001111001011010101010001101000011101001000001101111101010010011111011001100111010100010110101100110100010000101110100100011000101111011100000010111110100010100111000100110001110110111100010111110000011010111001111110110100100101001001001001001000010011001001111001100011011110110001011100111011000110011010011001111000000111101101101001101000001101010111010010111111000100001000010010111000001111101110110000100010110001111010100000110111101001100100010100110110101010001011001110100110101111001011100010000110001101000000010000111100011100100111101011011111111110010101111010101011100011101101100110001101000010110110001110000001101011000100001100000111010101000101101101000101000101110100010001011010011000101011011111101001101001010001101101010101000001110111011001111011010110001111000110010011010101001011010111111100100001000110100001101101011100111110010000011000110100101011010110111000111010011011100111001101101101110110011010111001101010100001110000101010100111000110010111111101001011000100010011011000100101011110011010011100100000100001001101010001100000001011101001000001110100100010011110000101100101010010000010110100011110000111001110000100100101101110010001101101000011100001111010011111100111111101011111001000010011110101010101100111000100011000101110011000011010011111011010101010010110111100011010111010010011101111110001100010101010110011010101010011000001110010010010111100010011111001001110011001010100010110101101010011111101011101101011011010000000010110011110000100010000001010101100010100111111000010100010110---------010111011110010011100000100010101100000001011011001100101001101010010100000000011001110001111001111111100100010110011110001100100110101010100111000000110110111110110000001001111110111111101101000111011110101100001101011010101111101101111110110010011101111101000111000010001011001100000011110111000111111111111001101101011101101101111001000010011001010011010110101101000001010010011101000100101100011010110110101001011111111001110100000010101111111001101010111100101100001010100101111001111110000011101101100110011001000011011011011010100010010100111010011010011100010110111001111110010101000000011101011010010010110010101010001001101010011100110110011110111100010101110011110101110001111100010011011010111101011110110011111110111011000000111100011110011001111111010001011000010010010000100100000010011010001011001010111000011000101111010101111101010000100111010000001011010101101001000110010101101111010111100100001011100001010000001111101001111011001101011101110000110001110101111010010110011100111010000010100010101100011100111111111111111101110101011111111110110001000101100110101100010101111011100111101100000100100010001011010011101000010101011001110001000000111001100000001110000110111011100000100110110101000111100001010010100101000111001101000101010111111011111000000001011010111010110101000000111100001101101110111110110011000000100111001100011010111000110010110111111110001100111111001101101100111110111001100100100011111111000100001111011001111011100101011010100000111011111010001010110001011010111001010110111000101000001001001011001101101011111011010110110110110100111101000101111101010000110111011010101111010101110101110000001000110010000110101001100100001001011110111011111001010101100001011100111111010110111001111111011001011000100011000111010100101001110110111101001010010010010100111001110001000001100101011010101100001111101100011000110100001101111100000100001001011100011010110101111100000110111001001101011101001010101010111110010011011010100000101000000000100000100001110111010101110000010001100010101010100100000100100011101011110110100011001110110000000011111101101001011001101010100010111011111111000100110101110000011010101111100001000010100111011101011000011010101010010001000111000011101001011101100011000011011010011111101001011000110001100111111011101101110111110110101110101111111101001111100010010010100110001000001001001100111010101111000110001110111101000111001001111111110101001101000011000110110011100001111101101000111001010011111100101101000000100101100001101010010001001000111000000100011011011000100010111001010011011001101011100111010001110100110111011101010000101001111111101110010001001011101101111010110010000101111100000010011011100100101010010100110101010100111010001111011111000110101100100100011010010000000110011101000111001100011101010011000000110000010110110010101001011111011111011101110100000011011111011000101001101000111111101100000000101001001101110110110001100010101101100110101000110000101110001001011110011100100111111000010011010011100101010011011010000011111101110110110001101010110101111110110011010111100101111110001010111110100000111110101101110111000111000000111001101001011010000110011011101011111100011110000001110011110100010011111101010000101110001111110111001001110110011111101010011110110111000011010100101111010010111010110101101110001111100000011100100010001011101000000000001100000101100111101111110100011010110001001110010110100111011100111110111000110111110011110001101111010000011100101011110100110001111101001111000100010101010100011011001001101110010010010011100110110100011010010001110001010100010101010101110100000101010010001100111010100111111110001101111010100001100101011001011011100010001000011100100000100100111011010010100001001101001101001011000100001001000010110110101101101110100100111110100100100010001100000011101110111011100010001111000000010010111000011110110001100110100100000101000100100110111100001101100011000000011000111110111100111100101101110001111111010001001000000010111100110111010100110111101111000101010100100010001000111010101111001101011010100100001000111111101011001110110011001100110001001110110100001010011110101000000001111011100001111011100111011100001010001011111100011101000111101100001010101110000100101101011110110110110111011010011011001001110000111011000100001010100110010110001000000111101110101010011111110010111111011101100010110010110001111100101000010001010000111001101111010010010110011100001000011101001011111010111010111000001111100011011101001101011011101011011001001010110110111001011101001101110001011000011011110001101001010011101110110100010011000010110010110110111000111011100011000100111100111000000110011001100010100110111000000100110000011011100000100000010000010101101001110000110010101101010101010000010101111011101110010010100101101100001100001011100110100100100000101001110111001110001011000011111000001100001101101000111011100001101111011100010010101110001110011000100111000011001101111011011100001111101001011111011010111100000111001100000111111111010011111110111001000010101110100011111001111101000111001001110001100110000010111110000001011101100010100111001011011101000111111101100111101001011000101110101110000001111011010101000100110000010000011111010110101111000100111000111000111001010101100101001000011100000000101000110000011101100011011101100100010010001100110011101100011101000001001100001001010101101110100101110111010001001110011010100111111001010100111110010111011101111011110010001000110111100100100110011010001001001000011000101111111111101100111001101001011110011111111100101001111001001100001101110000110000011100100011110001011000101011001010101010010111101110000010100000111101111000011010101111001111101110011001111110100100011001010111011101111111010110010000001011000110101010011001100010111110110010001010100110100101001010111101001100010111011000100011001100011000000101100011101000100101011110101100000100111001110011101101001001001001001000011000101111100010100111000011100011100010100100100010000011111011100101011111001100001111011111110111110111110011010100101101010011001001110100001000001100011110100110001110100000110100100010001011100101010100001110001001111000111010010011111111100011111011111001011110101011100011001001111110000011010111101111001011111100100111011101110000001010011101110101000111100001111101111011101000001101001011101101101010110010111110110010101010111000110101001011100010100011010001010011110010101100011001111110001100111111101101110100100001011111000000001001000100000011111011110001110001010111110110001010001011011110011010100110110100101000001001110001111001000111110101001101110100000110001100101101110000101010001011001001111101111011100001001000111111010010011100111011111011010110000000101111011100110101100010100011101111100000001011011110000110100001011000011000110110110111001111011000110111000110111101100001101100000001000011101000101101111111001001000100011110001110100001111000011100110011110001000001001100110110111001000000110111010001000000001101101011000101001011010111011101011100101010101111001010100011011010010101010011001000100101100111010000111101010000110010000010000001101111011010011011001111011111001000000011010110010000111010000000011010110011110110010011011110101001000000111000100101111100011100101100001111011100101001101100000011110100011110110110100011100000011110011001000110111000000110100000100101011101010001100001111001011000100000100010100100100001001111110101000011111111101010110111001101011010010001100100000001000100111111110011101001011010000010110100111101101000001101011011001101100011000100101010100110001110111101001001000010100111111000111000011101111010000010111001111010101000001111000000010111011111100000010110100001101101010100010001001011010001011101000110101100100101100101111110100000001001110000101101010101011011111010011011011000011011110101110010111001101111000111110001000001010010100111110101111101111100011100001110011000110001011111000111101001110010101111001001000110000000110100111101010101000101010110101010111100110011101010011000101101100000000101001010101111110011011110001110111001110010000011010101001001000000101011100011111010110011100001101100001100011100110111110101010000111000111010001001111100010000011010011110001101000010101010000001010000111100001111000010010100100010010111010000101110010110011100010011000000110110100011101100100011010010100111110010010101101100011011011100100111000011101100001001000010101010001101010110110010100010001000011111000001010010100000111111011110110111001000000110000000000110101100101011011011011001000010101111001100011111000001010101110101101111111010011000010010101110110010110011010010010010101001001100101101111000011100100010011000111101110110011000101100101101111010100010000011010100001011010010100000000010100100110011011110011101100110000000011101100001010011001101000111000010100100100000000111110011000111101010010010110111101101010110011001111101111110001000110001100111101011000111110000010100110000000011111000000111110010011001000011011101011100000111000101110101111110010011011110001011101010101011000100110001000100101111111101100100111110111010000101010001010101001100100101001011010000010101000010110100001111100100011011111000111100001000010101101011001000010101101111111011001110010111100101100001011111100011101001001101101111110010010101000000101001100010100110011101111101011110100110111110111100100110000000110110011101001010010000011111110100111110100010101001111110101100000100100011010011001001001000111101110000111100001111010011111001110011010001110111000100111001110111100110000001010001111010001111000100100111010100111100110000010011100010011111101101110011111100010110000010111011111000001101100010000100011010001110001110001101011010001010000101010100011000100011011100100001100100000001101100111101000101110011010110111001010001000101000101000000011110111000101110000011101110101010010000111100100111110111001000101010100111100000101110100100100110011011111001101010101110111001011011101001011101100011011010111000101111001000010000001010100100101110110110001000010101110111101011000000010000111011101111010000100100010011111100010000001001110011110110110001010111110100001000111110111101110100100110101110100110000110010010011000100000110110110101000011001001001001111101111101110001101011001111110101001110101001011100000111111001110010100100000101010010101001111111000001100101100010111101101100100100011011010011100101001100110101100011001111110000111100100100110001000111110000110010010101101001001001010000100100011000101000100100110110001100000010000110000110000101001110100010100010100100011101010000010101101000011101000100000111011101101000111000011111110000111101000000111110001011101100001010001101011100110000001001011011011101110011110000001111100001001011100101100101101111111110110101110011000000101100101011100100101101010100111010011100101010111110101001011010000010001001010011110110100011100011001101001011010110110101111100111101101011111101111111000001100111111001101100000001010100110101010010011111000010000110001011001011001111001011101110010001011110011101010101101111100000110101100101010001110001110001100110001011101000111010001011000000010000001000110001101111011111110010111111100010011000100111111111010100101101110001111101111110111000001011010101010001001011001000011101101001000010110011101101100100101101010000110011001100101111110001111011000000010101110010000110111101111111001001110001110001010010010010011111000101101100001101001010101100000101011011111010110011001001010101110011100001001101000001101000000101100111111001100101001010110011010001110100000011111000111101000000000111100110101100101010100111011110000111110100010111101100111010110111010000010110010011001101110011101100101011000111110011000110011111111110101011101000010111001011010010011000100111000100101011110010101001001011000010111011001100010010000110011001000010110101010110111000011111111111110100101101001101111010110100110101100101101000110011100011011010000000101110011010000111010110111111000001100111000000010100001010001000100111110101111100000111111110101110010110100011011111000000001001000000011111010101001010100001101001110010111111011111011100110010011101110001111101000100100011111100101101010010000011001111111111010110001010100010110101011111001100001101110110100100000011010100101000000000000010110110111100001001111010010110010000101101111110101000100010001100010011110001101001010110101000011010110010111111010111011011011000111010101101001000000101101110011001001110101011000100100001000011111101111001011111010101110100000101011100111011011110111110000100101111101111101011100110000000101111011010010010100110100000011011001111110111110110011010101000011110001000110000111010110111110101101011111110011010100101111101100011101000011110011111110011100101001111110001110110100000001001011110111000100101101111110001111000111111011011010000101100001011111111101000110100011000101100111000010101110101111101100101100100100100100111110001010001100011101101010000001110010001111101100000110010010011110110101100101101001100001000101000110111010010111001011111110111010110110000101100000100110000000110000010000011111010010101101011010101101010111100110101101111011110110100110010011111111000101111100101001100000111000010101111001111001111110000101000010010001111000111111111110110001010001011001010000101110111100101100100111100110011010011101100110000111100001110001011111101010111101101010010001100000101101110011010111111111011000101100000000101011100110001100101110001001101100000001101100010010111111101111100011000111100010101111100010011010001001110011001111000010001110101001000011110110110101100101010111000111100011011101110111010111000110111110010010010000101101000110010100000010111010010011110111101111000110111011001100100111010111010001001010000010000001100000101100100011110111010011001010110010100000100011010000110011000100001100000110100101111110000101011100110100111010010110110000100100111111101110010110000111001110111111101101000110111011000001011010000011111001111110100111011100011110100111001101010010101010010101001110101110101010101101100100100111010101011000010100011100111010001101011101001010101010110000100001111010000101111001101111111011000101000110100101101010111101001010100110010100000001111000001011000011110111110100111000010010110101001111101100101000010000011001011101001001111100000111011101011101100000101111011001110000000011001011011000000100101101101101011010000110000100111100100011010100000100011110011110111011111011111111001100110010001001100000100010000001110011010000101110000100111000100011000101000101111010101101010111101011110100110110010000101000100111010110110101110100100011011001101111110101110101100100100001101011100011101001001011111000100000100111000011000001000001011011110000011000110011000111100000010111100100110010111000111111101111111010100101101100110111000111011011100010011100111010100100110010001001000000111100111100110100011101111001000110010001101001110010100111001110110111111000100101101000000011100001001011111010010111000110000001100011101010111110011010010000001010010100101001001100011001010011110101011000111100110001010011110100001110011111101001111111101001100100001010111100000100000100111010010011111001001110001011100101101110010001111111100110100111111011100110011001111100010011110100010111110011101100010010011110110000011100001001111000000010001111111010101010100101000000010011010011100110011100100011100110101100101011110010011101100010101110010111010101001111011100001111110010000000100111010111000100100001101000100000101110001100110100000110011100101000100000000001110100010011001000100101011010100011110101001110010010101101100101010110101101111001100010011001010010000010010100000011100001011101000001001111011011001110111010100100100100010101001011000010101101111001011101100010110100100111001111000101011001010101100111011110111110011001010010011010100111110111011010111001001111000010111110001011010101110000001000100001000001111000001000000011010101110000001101010000101011000010000011101000110010010000000011010100101010001111000010000011011100001110111010110011010010001101000011011111011110010111010010100101011111010100011101100010111 +001010100100101010010111111101101100110001010001101111101010000110110011101100010111010110000101010001001011101100100000101101110101010101011100100001010111011111110011101101100010011001001010100010101010110001000001010011001100111000110001010000111001111111100010010101011011000010011111001100111010111000010101011011110000000001011110101000100110010010101010100011010011110001110110000001001010000001101000011110001101101001110011101111110111001111010000001001001101101111100111110011001001100000010010110100010110000001000110010100111111001000110101010100111101111010110001011101110010101001011111011000000000100100011110110000111011011011101010001011101111111001110111011000000110001100110010000011000011010001111100011111110011000010010001110111101111001010110110010100110111110100111010011001111111011111110100010110010100011001011001010100110111111111101000110110010101111111011110111000100000101101010101010010010010001111101010100000001100111111001100000111010101100001100000000001010110000100101000000111111100100000001001010000001100101100111100110010100000101010100001111011010011010011011011111011111010101000011110101100100010010010011000010111000000110010100001110010010110111111110011110100110111001100111000101110100000001011000010110101100000011101001101001001000011000000001011011001100010101000000110101010001011011100100100010110111101011010111010010111011000100010010000100100101011001000110101011001100111101100010110011101011001100010010100010110101010000111100110010010010001000110000011101110000010010011110011110101000010101011001101100111011111011100001100000111001011010011010101101010001101111101111011011100110010110101010001010010100000100100000001100000001000111111111111110110001101101001110110110111100100000011010111111000110110001010010111010000011111100000110100110101000000000010000000101101101110001000110100111010110000001001011101010111011001110000111011001000100101001010010101110000100111011101010000010000110011010111101000100111101110001100101011000011001101001110100101011001001111011001000110010101001110001101100110110101000110000000010100011101101110110111000111111111100111000110101000010010101100100010010000001000010100100111010110110111110101001010000001100011100010011100110000101111011110111101011101111110111101010010000100010110011001100000110111010100100000110000101100001100101001110000011000110000000101101110001010000101011000100011101101001010101100100101010001101000010101111011101001001111010101000101101111101000010010001010011001111101100101010111111111000110101010110000001011001000011011111010000110001000111000010000110001111101111000001001010001111110000011001110101100010011010100110011011001010011010011010100101010011000110001101010101001110100100100111110001110001001010110001100110110110010101011000110010111101010110010011001110110010111010110100011011000100010001111011100010010110111011111100000100001100001111010101100110111000111111000010110110000111010100011111100010111110110101101111011011111110110110000010011110101011111110101101110100001000001101011111111011010100110011110110---------100110000011111111010101010111010011111110011101100010000110101001010111111001101110001101001100000100001100111110000110101100100111010110001100011111101111100101101111011001010000110100110110010110110011010100000101101010011010001110111011001000101000000011111011111101110011111010111011010000001101110100000000110100101010100000111101011111101000010000101001000110110000011110111010010111110101111101100101001010100010110111100110000001001000001101000101101001111111010111100101111010000100110010111011101110010100011000110011110110111001000000010111010110000001001010010110001001100101011101101011011011011001001101011100011100111010001011010101100011101000110001111010110101000110010011100100011101010110000000011000011001001010100011100011111011101001101001110111001111000010000101011110110111000000101111011000000010101000001101001001100100100001001001000100100101101100100000111000000010100101011101101010001000011001111011000001001110000110000101011101001011000100100101000000110001011110010101000010111110000101001001011000010000111000001000110000001111110010011001010101010111001011010101110010011010001000111111000010011111111011011110011010100111010000000001001001111111111111100100000011111101000110101001010010100111010000010000110101011111111010000000100100101011010101000111101101101101111011100001010101111110101101011010111111011000010110110011011000011011110110110000011101001000000111100111011110100011100011100001110100011100101100000110000110010000011001001001000100100101011000111101010011011100101011110011110101110011010101010101101011001100010010111100111011111100101001101100011110100000011000101001010110111100100010100101110110100101000100101111011010000110111010110011110011011011101101110110101010011100000101111111011111010111101001111111100110101010010100100010111011011100001011111101001000110000101100101100001111100011110010101100111100101010001001011010000000010101011101111111010111011101010000111011100011010100010000000111010011100000011111001011010110100011101010111000100100110100111111001101100100001010001100000001000011011111101100011010110001110111111100000001010100111000000111111011101001100100110111000101110100110011000110111010000011101000000100110110110110001011001010100010001001100000100001011001000000110000100101101011111100111111111011011111101000101010100111100010100100100111110011111011110111110100010001010001011011001101001100100100010001101110000001011100101000001010010111111011010001101111100001101011111000101100011110110011100101100000110010011100111000100111000011111100111111110100011110101110000011010110101000011000010011001100011100001111111000001111001110000110110011000011011100101010010001100000011001100001100101010101101101000001111001110100100111010000001001000101101000111011010010101110110000111001001111011001001100111011010010110011011100000110100011000011010011101110110010100010010000110111001010100011010100001111001010010111101100000110011101001110000111011110100111011010000000100000001100001011110000111010100001110010010011001000100011001110011010011010011101111110010000010010010101010100000111010001101000010001000011110101011010001101011100111101110010001001111111011100111000010000101110100111011000010010110000100110100111011100011111011110100000010101010001101101010001011101101101100000111011110011111110101011100101100011101110010010001100100001001010010011111011101011000011111010101111111001111010111010010111011100110101111010110111110110001101101101010100000010001000101101001011001001111111111110111000001101110101101101000111000001001011111001011011100101010110111101000111010001011101100010110000100111100110100101000100101010010011110101110000000000110011001000011101100001101000011001001111001001011001010110011110001010101001000110100000000000100110111111100101111000100000101110100001111011010111000001000011000011011101011101000101100110110001011000011110010011011110101101010101000011101010011100101101101111100010010101100001001110000010001111111101111100100110000011110000101011011110110000100011011001101011010010101010101110100111000100100110001100100111001000110000101111000110011010000011010111101111100101001001101111011111011111001111101000010111110001111001100111100000101001001100001101101101110111010110001011001110000000001001000110001101101000110101101010101101101101101110110000101011110100100011101001010110010010010011010110101110001010001110110001110100000110100011101001001111000101001000111001100110101011100010000000010111011111001001100101110011011000000110100111100111100010111011101010111001111010001110101101101000000010000001011111110101010101111110011010110111010010011000101100011101000101101100111011111100010100000011010101110011101001000110101110001110010000000001111101101000000101111101101011011111011011000000000011011111111111110001000010110101111111010100100010010000101111101011001110010011101011001111010110101000100000110010000101101000110010010111010010010100010010001111000010000110001101110111101100110110100100111100000001100111011110000001011101001000011110001011111110000011110010100001110000100001001111011000111010001011000101101101100100010000110100100101100010011001111010110111100000011000010000010010001111101111100100101010001000100010001000100110001000001000010001111110111010011001111101011100010101001000010000101100011100010001100001001010100110101000110011101001011111101010010010100110110101001010101100001100010011010111000100110010011011010000101100001100001011000010000110111001100101010000100110010111101000001000100011111011110100110000010111000100111010101001110100010101100111101110000011010111011011111111010110010110100100000011010101001000000100110100011100111110000011000000000000111001100101010111111111001011010011110111011110111000010010010011111111010111011000110001111001010111100001000010000111111000001100011111010010110011011001111011011000101001000000100110111000100110101110111010111110010000011100100110100110111111101011010110011110111010110011000000100110100000001101101100001110010011011001111110111011110110011101011110010010110100001010010010111000100000100110110000000111111100100111100011110001010111000011011101110011001001110001100011001110100000001001110101010111101010101001001110010001101011110001011100000101010100110100011101000111011101100001111000110111101010111001000011000011011001000101001011000100111011101011010010100000001100010011111011001101000100001110100001111110101101010111110001110001111001000000010010101100010000110100011100101010010010101001010101010101100110110011101111001000000011101100010010101010110100011010100001111010000101000110100001101001100001100101100100000011011110011010110111011100100011010010000100111010011011010010110100100100010110001101001000011101011101010001111110100111001110000100011001111100101100010101110111110101011010100010101010101110000101000110110000000001110010110000000110000111011001000010100101000000001101011100001111110101110001101010011101001010011111101111001110111100010010001111001011010100001101011000010000010000000100111101100001010101101100010000101010110111001011000100101001010001011011100001011111011000110011110010101111011100100011111001110000100100001010010000000101111011100111110111100001101111001111101111100101110110101100100001011101101011110010010111001101001101110011101011101000110011100110000011100010010001011001001110110011111010101000010100111110111101101101100000101001100101000101111111110000111110011010000110001111101011011100001111100110110000010011110001100001000000001110101100010100101110100010010011110010001001001100000000000110101110001100011111111100101000011110110001111010001000000110011111010000100111111110101110010110011010000110011000111000010110011110010001011011010001001101110011101111010000110010111111111100000011010001010001111011110100101101011100111001111111001110000111110001000110100010100111001110110101000101111000001101001110001101011110010000111101111011101010110101011110111100000110011111111000101111011001101010001000101100101001011001000100001011001001101100110101111000011111101001101110010101111111101100110111100001000101010001011111000100110100011111011010111000001101011000110110101001100011110111110100001000101010100101011010110100100101110110100111010101011100111100010010010110001111101100011000111100000111011010001111000101000100011001001000101111001001100111101101100001010001010111100110001110101101110111010110001001111010110110101101000000011110100101110111000101101011001101101001000111111111101101110001111101110000001101101111001101011110100011111110101111000100001001011111111011100110000111001000111111111000010110110110001100110101010101101100100110101001111110001111111110011010101001111010001111011111111101101100111110100100001001010111001111011100010001101011101110100010000100111101100011111101101100011011111101000011011010001001000010010100111100101011101111000111111100001101000001011110110111101010100010101111111001010101000010010110000000101110110011100011111001111010000001001111100011010011010101010110100000100101000110111100011011110100000100011000001000101011010101001110111001100100111101101010111000101001101011100101000111100111010101010010000001101010101011100001001010100001010111011010010110101001010000010000111100011101000110111111110100101111110101011100111011010000101011101101100010011010100111010000011111000110000001101101011100010110011110110011001111100001111001011001111111101111111101001111000100110011001111001100111000101011110101100111110100001111011101110011111001110001010011101110011110010100101001110101001100100101010101010110100100101000010001001101011011000111011001000000010100111111011111000111001010100011110110001001011101010001001010111100100101110011010101000010100101011100010100000010111101000110100000011011000111100111010101001111101010011111110100010110100011001100011000100110010110110111001111111000111101011011101000101101011100110100001111010010111100001110000110101001011100100101000000010001111111100101000011101111111110011110110011100011000111000010100111000100101111110100101010100101110010100001010001000011110111111111100011110100111110110010111011100101011011010001100100101001010111111100010000010100100100100010111100101011100111111001010010001000100001011110011010100011101111100001010100000000001111111001101101000111110100010011110011111001010100001000101101010111000000011010111010001101011011100100010010110001011010111001101101010011101110001101101110001011111110001000010010111001100101101011001110001100111110010000001100101000101111011000111010100101011100111110110111001111110000101101111010111001101110100111000001111000001010110111000001001101000111000101111110101110010100100100110000011011100111010100001000101110100000011010011000101001101001010100001001011110111011001000100100101101100111100100010110101111010001010001000100010101000111101101001101010000010000101111011111011111000001100101011101011010110000100101011011011100100100001011011011111101001100111100110110101100110001111101010001001010001111100010100101100111010111110110010010100100100111011110110100110111100001100000111010100100011111001010011110001011000111011111100101001100101100000101110101010101101110101101101000000100010001011110110110111011000110110111001101011110110010001101110011000110100000001000111010101110001010110011110100010001011110000000111000100110111100001010001000001000000100111010101001000010111111010010101001000010001101110000110110111101011010011011001010111011000110110000011101011111100110001011111101001100010010100010010000110010111110011010100111010101000111010000101100010101001001110011010100100100100100101110000100001001010100101101100001100001011101110100000100100011100000000011101110001101010000100000110010001110010011101111001100011110111100110001101110100111010000111011011001000000101000010000001001000110100101111000011001010110010011110100100111000100001101000100000011001110001011110001100101110000000010100111110100100100011001110111000011111110000100011000010100011010000111011111101000111001011100100001010111000011100100110111011001000100110001111100001100101010110001101000001010110000100101110111000010100110011000111000010100110001011100100000011110111101000011111001110101011001101000110011000010001100011111101000101010001011000111010101110110010100010101010000111101101110001010101001111101100001111101011111001101011011110010100101101110111010000001011101010101011110011100111001011101010001001111100011100001011000011100011001110111001011010001111000011000000110100100000101010000001001000010001001011001111100000010111100000100111100111100001000010001011111110101010110001011001010111101010000110100101001001101001101011011111100111101000010001010010110011000101111101000110010100111001010101011110010101100111100000111001111111010001111111101001100111000000100101000001111011100101110101001110101011001010101011100010001001000000111010000111101111111111110010010101001001110010001100001011111011011111001010100101110101001101001001010100101111000100111011010111000011110011011010100101011010111000100000101001110001111110001001111100111000000000010111101011000111110100011001001100111001111010100100010101001001001000100101000001001110100001011011111011110001011010010001000100000000001110111011010100111010110001101001100010111101001010110101001100101011110100110110000110110010000110110011111011001110011000101110101111101110101011011000110111101101110011011101010011110000110000010000000000011100101111100101001101000110111010100011101010010101010101010100000000011010000111111110010111110110001001010111011011011011010000011101001101000110110001000001011110111011101101101010011101101110100010111001100101000000000001001101101111100010001111011001100111000110101100111101110101010011001101010110001010001010001010001000101101111010100001011111110000110011010101001111111100101000010001101100001001000000000001011000110000001010011000010011001000101000010001101111100111101111000010100100101001001010111100010101100111111100010100111000111001100110100101100111111101000111010111110110000011011110010111000011110000001101001110010001000100111010010001010000001011101010100010000010011000100011001100111111110010100000010100011000111011011010110101000110101110101000011001001100001111000111100110001001100011000100100010111111111010011000110110110000100000011110011000011110111011111111101010110010010111010111001100010100110001000001100010000011000000110010111100100000100111100011100011001011100110011011001010011010110000101101101100100000011110000010110101011000000001000111001000110100000110010110101001000100010110000001101100101110101110011101000110110011010010000101000101011011001101010010010100111001001011110101000111101011000011011000111101110101001011101110100000011101000010000000000001010100100001010011110011001110000000001101010010111110111101110111001010100011001110011101010101110001001100101110001111001000010111001110110111001001111110100010010001001011011110100101010111001010000111111101111001111110011010100111111110001110101101101010001101000100111000000110010111111110000001101010101101000110011001011011110100100101110011101001101111100001010100001001111000000100111111001100011001001011011001110111010010110011000010011011100000010110101000100101111111010010011000111100001010101100111101101100110001111011110001001110101111110110101000000110111101111100001011010010010010101100001101110100111100100101000001001001111100000001011011001000001001001000011111110111110011111101001100011100111001101111101111111011100011011010011101100111111100110010011100100111001010001010010000010100111110000101000110110010101011110111001111110100010001000000001000010010011100111100101101001001001100111000101011011010010110010100111010111001110001001010110101111000100110010000110010011110000100100110011001100010011100110011101001001110000110001100000110011010001111111100110101011011100110110011101011110100101001000111110010011001110101001101010011100001101000100110111110011001100110100110110110011001011101111101010010001101111000101100101001010000111111111111000111101001001010110111101101100100010110100110110100101000111000011110000010111000111011001000110111100011000100101101001011001010111111010100111111011010110100010100101110001010100001000111101 +001011001100001101111110001001111110001110010011001100111111000000111011111111001110011000110100101001010111101000111111000010111011110110110010100010100101110110000111100000010000000010110101101100100001010110010000011110000010010010011101011110000110100011111111001000011110100101101000110011101001010000011110000110010100000010011101001111100111011100011111110000111000001111101000010110011100101010011111010100100100111101101110001111100100110111100001001100101111110011000111001111000100101100001111000001000010100110011010010100000111110000010001100110100101111101000100110101110001011000001101000000101001000000010001010111001110000000011001100111011110100001111101001101001011100100100101001000100100101011110001111111010000001000100000011000110110000011010010000001100101000010011111110001110000001100001010000101100110100011000110111001101010011110000000010100101001001000110110010011110011011010110101110100011110100101101001010111110111011010000110010110000000010110011100111101000011110111011000010010001010000110001000000111101011110011111000101100010010001011001110000011100100100100000110100010011100010010011101101100001000000111111101000001000101001111010000010001110011010110100110110001100000001100111111001010111100000001101010110010010101010110111110100011100101000011101101010111110011011001001100111111111010111100100001001001011010001011000010011110100001111010100100100010000011100011100001101101100111000001011011001101101000101110000000110100000001101001111100111010011001111110010111000001111100001111001101100111011000101011001110111000010100000001001000100101110111001010100010000110000000100000010100100010010011110001110011110000001101110001001100000100010111100000101100110011000110001001011100101010000010100100000000011101100011001111111100010100010001100001111110000001101000011001111100101110110101000100001101001111001010010010000101101010100111111000011111101100011011100010001100111100010110011110011001011001000011000010011000100000011110010101110110001001010010010100001111110011101110110100001111011111101101000011010011010000110001010100001010011001100111011100110110100000100001110011110001010100001011000100001000111000111111010000100010111110010110001001111010011000100100000110110110000011101111001110111101001001011000110000111110101111001111011011010101100101110011011011100100001111101010101101011111000110100010011010001000000100000100110111010001111100110001110001100000001001110010011001010000001100101011100111110110001101001110110110101010110110011101001000101111101100101001100010111110111001000010011111100110100110001010111011001010011000101001001111011101010111111010001001100100001011111010000111110110110000101000111010000011011011010001001011111000011100000010100100111011011000101010110001100001111100001011110110111101001110011011000011110001111110010000010010111001010101010011010101101011100111101000110111100101101111110111100000001011101011101101000100100110001110100101010010110000110001011001011111011000000000000111000011111010011111000101111010000010111000011000110110100101101001000001110---------110101111000101111100001111111010010101010010110000101111011100010010000001110100110101011110100000011000000000101001101010101100111011101011101010101111101101101011011100110001100010001100011011100111110110111000010001000100101101110101101110110101011110101100010000110000101110011101000100111110100110110100111101010111110100011010001100101101010001010100011110110000011001110011010111001111010001010111011111100011001011101111110100110100000111101110001001110011010110111001011001110010011000011110000011001111010011011000010000000111110110110000110100011111101111010100101101110011110101101010011110001011110110000111011000001101111010010000010000001001010001110100000111000110001010100111010000110001000101111101111011100101100111110000101110000000100000000100110100110000001100001101100011100101111101110100111101011010010111101111011001100111000001110100011101000110111110111001000000000010010100100100011011010100000000110011100001011101111101100100111101011001111110010000010010000100101101110111110010011001000010000011000101000001100011101111000010100100000101111101011001001011011011110001001001010100001011110011000000100010101110000100010000010101101010101010011101111011011111001110101010110111000011110011111001110010001100110010000100101011000011000001101100100010011101111001111111010111101100010011110101111101010111111101100011101001001011001010111101110100101111010011011111100111010011010000111101010011100110100101010010100001001100111111010100111010001010011110110011100111011110101111101011100101010010110001000110101100101111110000010010100110110110100110100100011001011111000100000110000101000110110111010101001110000101111111010100101000010110101010110110110000011101111000100110111001001000011101100101101010100101010001110110101101010101010110001101111000001100000001011100010111010001111010001011101111000001101000100001000000001010001001100000101011011000100110101011101110001001100101010111100101110110110011011111010000100010111110100001011001000000101001000101001000000001111010110111010101011000111001100011000100110000011000000111110110110000011111011010011010010110100111101000111111110111000011101100111000010000011011101101101100100101111011011100100010111101100011111101101110010011000001011011100010101010111101101001001100010111111010011000001010111101100100000001010011101000101101100110110011100000111100001100110001001000000100000010100000011011010100010011011010001111000100000001101011100101100110010100010000101010110100010000110011010100001011101001100000000000011101000101100000001100011100111100011101100010010101100110101000101101010001101011000110000011110111111010011100110000011100001100010010001111100110010000010010011101111011011001101000101011101100110010111101010101101010110010001011001000000001010100010101010111001110010101100101100011101101000101010011001110010111101101111011111000011010110000100011001010101110000110001110110100010011111101101010111101100101110010010101100100011110011011001010110000011001100010010110011000010100000011110110010101101001110111110100000011000101010011000101101110101111001001100100101100101011101001001001111010000110111011110101111110011100111000101000000010100010101000001100110011010111001100101010010111000000000110011000101001010110000010001000010011111100001110000011111100100011000101101000001011100001100110010111101000111000110110000100001000010101010000001000110101001001101001000111110010011010010111101001001101001010110101101011011001101000100001000101111111110000011011001000001101100110110100010001111001110100100100000110101000111011001001000100101100010100001001001110100010111001110101101010001000011100101000010010001010111100101010011100110001110111001011001111010111100011001100101100000011111111111111001011000000100001000101011101001111101100000011100110011101111000100000011011000111111101011101010110111111110001011000110100011010010011000100110110000101011101011011111011100011110101011101100001111000110101101101011010100110100010100011000110010001000010110001011010111011000000111100011111010100011111011001111000000011110011101011111111001100010010000101110101110101000111011000001100110111001101010010110010111110011110000100001101011111010000010010101100001011100100100010000000111101100001110011010110110000111110010010011101111110011111110001010001010000100001000001011101010000111001000000100100111001110011100000010101101011101101011011001000101111111110100110110110111111111110100111111101101000010100111001111010100110110000111101110100101001110000000000111110100011100000110000101001001101100101010001011010100001101111011011000100111010011100100001100010101000010111011100111101111000001111110110001011011010000101011000010110100001111110011110011111100110110010001010000101100001111101000000010011111110010110100011101011011101000010110111111010101101000101000010100100101100010000101011100001000000100010110110001110001110011010010100001111110000100100000001100111100101110000001000010001011010111110010000000001111110011011100100101010001111101111001011101101111010110000111001110011010000111110110010101001001101110110000000011000010110100011111100010101011011111011100011101010000111011001001001000000100110001101010110010000010001101101011110010101111010001110010101011100100000011100110101000000001111011000101111000100101001010111010110110010001111011001100001110110101011011000011001001111011111000110100011001000101111001111100010111001000110101000101011111101101001001101110010001011010001101011001001111101110101010100011000000011100110101001011111111001001111000101001011111110101100001111111000010110101001001110001011000001010111100000000101011110000111101010110011000000001000001010001010110110001011100010001011010100010101110001110010111010000100000000011100010101111101101000100001100000101001110100100001111110010010001011111011010000001000010110111101111110110011101100111110110101110010110000110101010101110111010110011010000001011001000111000101011100010110110000000001010010011000110100100001111101111111010011000111010001110000111110011100100111001110010111000000110000101101111000110001101000000101011100001101000100011001100110000101001000011011011001001100111101001010000100101001110110011110010110111000000100010110001111111011001110011001110111100101111000101011111010101100111000000111111101010101111001001000010111101010000010110011110011100100011010001101111110110100010111011010111001001000010011100100011101001011110110000001010110101001100011001011010110100111001110011110101001010010010011001000011100000111011000011101001011010001010111000110000001001001011110010100101111000011010100001110001110101010111010011100111111110100010001111110010000010101000110011001010000110000001100000000110100010111011111111100010010101111110011100001011110010100010100100101110001101110101110000100001011111010010100000000111100010110110111000100101011011000011111110000100100010000100111001000110111010110100000110001110111010011110101011110110001011111010110010000111110100101111001000100111001110001010101010010111111001001011111001110111001010101100100110111100101011101110110110101100100011100001010110101011001010101101011101000110100101111110000011011011010000101011000010101011010000111011000101000010001110101010010000100000000111100000011101110111011110100100110000111011001001000010000000111011010111000110011011010101101001101100100000011000111011011101100000010110000010100101000001101011010011001110101100101111111001111101100001111110111011010110111101010101010110010110111000110000110101111110110100101110011001011001000100001111011010010011010000001100110100110000100110111110101011111101110100101110001011110001011110101001111001100011101011011000000110000010011001000011111111101111000101100101000001011110101101011010010011111110101101001101111010011001100110010110011001010011000101111111000111000100010000100110100101110110101110110110111111110001001111111101111100100111010000000101010011101000011110001111000010100010010010100100111010010110001110110000001110010011001111101110111100011111000110001100000000000010000110000011110110100010011001010110111011111111101011010100010010011001100110100101110011001010001111010010110001101010111111100000111001001011001000000000111001010001010000000100101000110010110010011110101001101001000100111111001100010111001011100101100011010101011100010011110100101001111010001010001110101011011011001101000000011100010100111100011000110110010010010010001011111111101000000101010101111111100110110101111010010000010111100110100000011100011111100000110010010110101011000100111001100011110001101011110111111000110110110010111010111111100010111001110011111001000100100111001000110101101000110000100001110000000000010010110000111111111101001011100111110101001010011101011010010010110100111000001010000000011001111110100001001101100011010110100110000111000111110001010101011111001100011011010101000111010101010101100101110010110111000011011111100100100000001010101100000101000010000110100011000100110001100011101100010100101000000101110110000101100100101001000000011111001011100101100100000000010111001011100001000111010001110100001011110010110011111001001010000011010100100111100001110001100011001110110101011100110010000100010111110111100111110010011111110110100000010100100111001010111011000001110111010000111111011010001010001000011011011110100000100011011111000100110011101010101110011111111010000101000011011010010111111111000010101111110100010010110000001111101000111110011100001111101100100000110111011110100001100001101110101111000111010010101101001101011000100010101010010100001110010110001011000100111011100001010110101110000000001000111101111100110100000011111101100011101100100111100001110110100000100000011001111001010111000000101001010011111101111100011011101000000000100011110100110011110100110111110011010110001100110100001010110101101111000010100010000100011000011000101111001000110011000000000110000111111101010110110111101011000011110010011111111000100011110001010011010101100000010101100110010110011100101101001010011001010101010101001110000010101011110111001100111000110010101100011000010011001001010100100100000010101111111100011011010111101110110100001000111101101000010111110000011011110101110110100011101011110010011110101111010010111111011001000000001000010000011001111110001011000110110000000001001100101110101011110101000100011000011101011101001010000111101010010100101010101010001011000011111110001111000010010101011011010101111011100000100000101010001000101111110100101000001111110101010000011100010011100110010000001101001001111100110000001001011001001000100111000100011001110011101001000100010000110100101001000111100101110100001101000100101001110101011010001110001101011111101100011001101010110010101101000111110100010100101110101111011011011010010001101001100110100111101001011110111111011100001010111101100000101100111011100010100111100011100110100101110101100000011000001011000000111110101110100100101000010001100011010000011100010000001000101001010010101111111011011111011101010011111110000111100000001111000011000011000111001001010100100000100011011100010100001111101000110001111000000000010101110001011101000110100011010111110100011111101010000100000010101000000101100010110100111110110111101101111100100111011110101001000111011100010111110010010011101001100010100011101110010101011110101100001101000111111010111111100010110001000111011001110000100000110011100110101101100010101010001011011000100101000101110010111100101111010011111010101111010101001011011100101011111001110001011111010001000111101011100011111001111111000100111101001110111111100110111100001101111000011000001011100011011110110110010011010011010100010101000010100001010011001000010011001111010001100111111001100101111100010100111001001011110010010101100010111010010011011111010101000100001100000011001110111001101000001100001011110010101000110110000010001111101000010010111110000101010101111111100111100101110011111000010011011000101100101011101001110111101011100011001111110110101001010011001001010010010110101011111001111110010100100000000100001110000011100100100001100110110010111111001111110110000100101110010110001000010000010101010001101000100010001001000110011011010100111011000010010110011100100001011101111110101011111011100001001010000100011010011110101110110110001011110101111100101010111101000011010100100100011001011000010011100111110101111111100111001011100100110100011001000110000000101010100011010000101011101111011101101111111100111001011001011011011001110001101101110000010100111010111000010110101011100000011111010001000100111011000001101111110101101111000000010111000001100110101000010111101000000100111110100011100101110001101010001010011010101110000110010000000111100101001011110011110001110111111011000010000011001101000110011011001011101110000111010011001011000111110110001110000010110000010110111011001100001100011011110110110100100101010011100010101111111011010011010101110110110000111110110110001100101110000101111110111100000101001011101111010100110111100101110011110000110000000111010000001101010111000100110001100001010100101111010000100001110101110110110010110000010100001011101110001110010000110001010110011100000011000111001101010001101101101000010010010110111100111100100101001000001101111110001000100010001100100011011010000111111110000001011001110010011010101001100001111001111101100010100000100010110101000011000001100001110100101100101011111101011110010001010000011101110100011100110111110001101101111001110000010110000000011110010001000101010010011010100000110111010101000110000100101111001110110101001110010101110011011010010100100011000111100101100111010010000111010101011100001100001110010010010100000100100001000101011110110111001111110101110001011000100100110100101010100111011100010011001000000100001011100101000101001001100110000011000101001110010000100011110101011000001100010110111100110110111110100111110011000011010100010100011111011100111000011010010100111100011011001000000011111001111001100001011001110111011110111100010001111000110101000100111101010110001111110100001100100101011101110000101000001111001111010110101100110000111111011011010111001000010000000010110100110111110111010000001010111001110001001101100111001011010001000011001011100111100111110011111100101110111100110010010011111100110011101000101101100101110110111110100011100011011111100001011010110100011100100011010001110100100100100111001010111010101010110000000110011101100100110100001110100001110011110001000111110110111001100001000111111100110110111110010110010110101111011010101110011111110000000011011111011110111000011011000001111110000000100000110011100100000100100111101101100010101100010110111111001000011001111011110100000101101001011001111011111100100000010000011100101101001011000001101010000110110010100001011111000111011000110101111001000000101111011111011000110110010111011000111101100011001011100110111000101010111000110001110010100111011011011010111011011011110101001000011001110101010100111110111101000000110000100011100000111110001011000011000101101011111001001000101111101001111011000011110100111110000101100110111111101101000010111010100110111111110111000110010110110101100111111011001010111010011000000010011010010111001110111011101001100110101111010110001111111100110001001101000111001111010111101010010111010111100101011111010001111000100011010000111000101001011011111101110010110111011101001001111001011100101110011000010000000110110100110110110011111101101101111100011111011111101110011010000111010000101000000001001001000001111001011101001001010010011100110111110010011111001101110001110010010110011001011101000111100111011010010010100110000010111000011111110101101000000110110101110110110011001010011101111111101001101001010010000000101100110111110011010011111101111111111010010110110001110111100000110110001000011101010100010100010100000001010111110011010110111110010011110110111111111011001001000010101011001111001111010001001010000010101001010011001000101001111110111111011010100101110011101011110001011101100011111011111001010010001101001001101101100000110111101111101110000010101010101111010011011100011111000100111110011111101001110100111110110001110001111101110101001010010110000000010100111101001110100010101111111011110110110111011011010000101011011000 +101101010001000011011011100101000111100110111100111000101010010111010011011110101011110001010010001100000011111111011101111001001110101100001000000011011100001100001110001100001010101100011100101000010000110001110101111101001111001111100111101010111010001101010011000110000111010001100011101100001111100111101100011011010001010111110001001110000010010110100111100110011101100001111110111110111011100111001000111010000000110101011010001001111000110000111010011111000100101001010111001001111101111000001001100110001110011000111010000010100001001110011001111011001010101000100010100001110101110001111111010001101011011110110001100101100100100111000011010001101001000010000101111001101110010001011010010000110001011111001011101001100110001000011100010111001100011100000011110100001111110000011001010000100110110001111001101110100001001111000101000001111101001111100110111000100010111101010101110011111101001001110101000001101001000101100010000111011100011101111110110010000100110111010001110010110011011011110110001100000111011010111000101001100001001000010000110101111111011111100011100000100010111111001101011000011010010110001011101111100010011100001100010000001100001101101110101010101011100110101101011010111010001011111100000000111111010001000110110111101101110101110010001000011111010101010000010000010001101011010000110010111000111000110101001011010000111011100000110110110011011111011100100010101110111001000111110111111110011010100100101010111000010111101110100011100100011000010110001111111110011101010111001110101100111010011101100011000101011111001011100000101000011010011110010000010110101110000001011101100101001100011011010111111000010110001101100011010100111110100110011110000101001011111000011001110111011101010011001111101001000111111001001111111101110101011010111111010110001000110110111010110011010101011011101011010011001101110111001000100100000111101110000100011100101010111001001001111011000010001010101010110011010010001011100001100010101110110001100011011010110111111101101101110011001110111100000100010110000010001011110100111001111111110111111010100001111011100001111110000111111111100110001111000011100011101011101001000100011010000000110111000011011110000111111110001011101010011010100101001011001011011000101110110000100010010110111001100011001000100001111011011001010101010100110001101000110111000000111001100101100011001101100000001011101010110110101111110100101010001011110010110011101100001110111011111000110000000101011101111111000000000011101010000001001000101100000001101000110001010011111100000110111100110011010100110001011011010000000110000011001100110011100001111110111010001101000010100101000000010010111111011000000000000100001001000111111111110001111100001000010010111010001101101000110000001111011111011001100000011110011011001110000101001101111101111010011000100101110011110100110011101111101001010100101101111100101010101001111100111000011101101011100000011100111110110010011101010000100000000101101111111001111111100110000101101000111111010111001110000000000011011011000110011001111101111101100001010000001111100001111---------000100001011000111000111110011011001010110110001011101100001010000001110101110100001101011011001110111111000001000010000111100000011011011101110000011100010110010101011110100001110101001010101111101110011011110011011100001100001001100100100100001111101101111110001100011110010111000000001010110001111100001101101101011010100111100100100110110000101010111001000100110100101111010111111101111001100001100111000011011110111001000001111101000101010101010011100010011001000010011110111111000010000010110111010000100111110101111100010010000001110100001011110011010111000101001001111001000000110000011000000100110110101110000010111000000100101110100110100101110110100011101000111111001011111111101110010011010000000110010011110110011001111000000101001000101110001111011100111110110100111111001110011001111001010101010100010111001100100111011110011000100110000011101001100111001001100000010100000001011100010101101101111001011101011101011001000111100010101001011001001110110100010111001101011101100001010110111100101100110110111010010000001001101001100101101101101101010110111101101010101110101000101010010000110011111110001011111010111101101110011010100100101011111010111110110011010100101100111110111001101111011000010100101110101010111011101000000110010001110101111110011001110110001000001011001110110101011011101100010101111110100100111101100011001111101110100011111101110100101101001010011100010100110001011011010000010111011110000110101101011000000100010101011110001110011011011011000111011010000001000101011111101110001011111011100010000010100001001001000011111111100010110111101010111101010110101010101011010011001111100111001011010111100011110011110111011100100000001110111110110111010110101111000001011100000110100010101000111110101101110100111100001101010110111010001110101011110100001011111111001001110010010011100001101001010000010001000000111010001111010011001000000001010111101110110111001001100000001111010011101110101111100101111000110001001110001011100111100001111000010010110111100101000101010011011100000000000111110110000001100011001011101111110010111111101110001011000001000011110010101010110000101011111110110110011111101110011110111011001101000110011111110010011011110000100110001101011001010001101111011110101100001011110000011111000001100111110110011011010000110100101100010000111011100000101001110111010010000001111011100001001011111101101011111111011011000000100000011101000100001000101000010111010000001010101010111000011100110111000000111100111100110010111100011011000010010000111101111111101100101001111000111111011101001010111000011000100011010011100011100111010100110111001101101011011111000111110100100001101000000101001111010010110111001000100100001100100110111111010010101101100010000000111000101111000100100011001111010001000000010000100110001111000010110000101101110001111100011001011101111010101010010000110111010010000101101001111011111011101110100010010001111110010100001011000011111010101100011010100000010111111101000010000000101101110101000110111000101100001110001001011110101000110110010100001000101101101011010001111000101100001100101100101001011101111101000110100101100000101101011110010101001110011011011111110110010010111011010111001101110011011001001111100100011101000111101100011100110101111101000110001000110010010010010101111101000101011001011100001101001111101011010010101001001111000111010111001011010000011110100101010000001011001111011110101100111101010111101101011001010000111100101111001010100011101011001000001111011001100101100101100101011101001110000101100011000110101101011011000010010010000010011010011100000001111111000000110100000100000101000000111010100110010110110011101010111101000010110000111111101111111110001000110000011101001111000011101010101001011101010100000001010111010011010101110101011010001011110100001100000011110101010111101101011110111000011100101100000001100111000110101101111010010010100011010001100110010000010000110111000110110110101110110011000010110001001111111001111011000011000000011000010110010110100101011110000000100011010101000100000000100110001110110010010011100001010001101000111001010100100100010110100011010100100011000110000000100011100001010100001000011010111101010001110111101011001111000100010110111111010000001110100101001110111010010001000011010110101001001010110011100001000111111001000101101111100100100111100010011110000010011000001111111011110110011001011010110111010001111100100010110001101010010011101110110111000110000010011110111101111111010110010000100000100011101110000001101111110101101000111010101001001101010110000010110000010010000010111110000000001111011000000111001001011011111100111101011111111010010001101000010001110110101101011010010000010111000000100100110001001101001110000111101011000101110000100100110011100011000110110111001011100100010101011110000000101111010000011101111001001110001110001010010001001101111011001001111101111011111000110111011000100100111100110001101111111111000100100110010101010010110100001011010100000011001001110111110111110000101010110011010000101101001000111011111100011001000111111100110100010100010110001011110101110110000001111010101100011010010110100100011101101110001010111101011100001110111110000010010100101010111000111111011001110111101111100010100001011011101111000111101001100110100110101110000100001110000011111000100011010110111010010111000100100110001100010101011001101110000011110101011001011000100000100011110010011110011010000110011101011111110110111100010010101101110011010110011100010011110011101100010010110110010001010001100001101111110000111110000011100101100110111101101110001011111010010001010001111000111001101100111100110001110110001111101100101010111101010011101101010001000001011111010000101111110110000010110110011101100101001111000110001001101110100000101100011100000000111111111011011111011111111011110001011001010010001011101110101101011101000101001000010011110101000101000111010100111001110100101110111100100001001101100100111100001000010000101001101001101101011001101000100100110010001110010011100011000111110101100010101111011001001110011111101011111100011101100000001001010111010111100011011100111110010001001100110110000100110110101000001100100110001111000110000110010011010101000000000101011101100110111100111000011000110110110010111011011000011101001000101111110110010011111100111011001100001011101001100110101101011110101100101111110010100011000001010000100110101010000001111010111111001000000101001010110001011110000011101000010011001010100011011101100111010101100001110100010100110010110001011001001001111101101010110100111001100001110111110001001101110010110010001100001100010010110110010001011100011011000010011100110011011010000101110001000010000001000000110000011010001000110001100100011000010101110101001111001011111111100101111101101100111000010000010100001101000101100000001010111100101001101111101001100110110001001001100010111011111100000000110011010010001101101100010111001100101001000000111001100100101111011111110111010000110000111111101011100000001100001101111010110010001111000001000100110111111010000011010001111001000110000110101010111010010101110010111010110001011000101100010010010000100111000111100110000101100010100010110001110000001110100101010011110100000011001100100000110111100010110011111111001101111001001100100001101110101001101100111011011110010111100010101111110101100111110011111000011010000010011111100010110101110011001010111111100100010100011011001011011010101011110010111111010100111101111110011100101011101111000011000001100000101010110101001011101101100110011110000110001010001010010110000011100011001111001000100111110100011011011101101110101011111000111100011001101001101000110110011111000011100011100101011100100111000101001101011001100111111011000001000000000100000001010010000010110111001010110100001100010011010000001100010101001110001010001000011110000111001010110011110101011010110110010010000010111111001001000001111010111001111100100111110000101111101101011001100100101000111000001111111111011000000110001001110000001111101011100001101110010011101101101110111001110000100000001100111110011010110101011010111010111100111110101111001010101000100001110111100010100110000100111011101010101000101101010000010101111100011101111111010110110001101010010110010101110011100011111111101001011110011101100110110010100101101111110101100001000110110010011010010100001000111110010010001011000111000000001011000000110110110001000110011000011001010100011010111100101101111000110000010001101000101001100111000001001101101101011111100100100000001100000000001000101101100001110101101101110010101011111000000111100111000001101010111011110001001001001111011101001001110000001010000100001011001001011100000000111111111001001000000111010000010111001111110001111101101110100111001101001101011111001011010111100011011010010110110011110101100110001110101010010001001110110001111001011010010000000101101011011010100101111111011110111100111101100000011001001001010101111011101110100001111100010001011010100110010001011001000011111001001101011010100011000100100110111100101110111101110100101100100101011110000010110011110100110101100101110010011101000010111000011001111101011000110011010111000010010010010000111001001110110001010111000111100000101001110000101110010100010111010000011001100010111100111011010010010011001010011001110110000111100101000011010001001000000111100001011001001000000101100111010011110010010101000111100000001010001110101001110000001110111000111011110010100111010101001001010011101111000100001101000010010000011101110100100001101011110110100111010000011010100000110010010110101011000010110110000100100001001101100011001101110101001110011010000000011101100110011100011010101111010000110110001110010011011111111111011010111000111010110011110101110001110011011011000011111111111100101110101011101101100110001110111011110111011101011001011010011010001100011100101011100001001100101010101000100010011111111010001001001110000001011101110100111000100111001111100111011110010011100001011001001001000111010011001110000011010101110110000010010001000110011000111110001010101010011111100001001010010000000111111110001100011011101101010000101100101110110101101001101010011100110011110100111101111100100111100101001000100011110100000110100000010101000010000100111101000100010111100011000011001011101001110000110101100001111110000111101111010110011011011111011001101100011000111101100001001110000011011000011001000100000010100010111100010110100100011011000011000010011010110001100011011111000101010000100111100011100100011011010110011110010110101000110111011010001110001101111111111111101110110111000001101001011100010011110010110010111000110000110111010000100011011000000000100101100110100001110100111001110001001001101111000110110110110001110100100000010110011001000001110001011001011011110110111000100000000100100001000000011100000001101110011111101010000111010010111011100011101011111110011101010010111101011101111011111100010101011101100000100101000100000000110110110000011010110011011111010011100010010111010000101001100100001011010000111101001100111001110111111000111101011100110110010110101110010000000001001000111100101100111101000100000101010101010111110110011110110001000010101110011010100100111000001100011110101011111110100000000000011100100000000000011100000011001010111100111011010110001000010101111011000100000000101100010010101111010100111011101000101101110111000011011011101111111111110011000010101010001001001101110110010111000000101000011111001011001101000010010010001000101001011010010000100010001000001001000001100101000101011100100111101100110001111100101011011000010001001101111001010110011010110100110010001101001110110000110001100101110110000010100000010000010110110111010000101101001110111111000101101001010011111011111101000011101000101110000011011110010111001100110011110011010001100100010011011111010001001000111110000101011001100111101010010010100101011010111101100101001001111101110010011111101001110101100010010001110001000011001011011000010111100101010111100001000011111011010111010111111111000010011100100110110010001010011010111001101111101010101010101001001011101111001111110010110011110011110010000000111100001010110100111101010001111010001011111011100011100000101101000111110000101000110110110100101000111011001100011001000001110101111000101000000101001001000110100101000001111010101010001100111010110101111100100101000011010100010101010011000010101100101110011011011110001000011000000100111000000011100111100100101100101001011000000110111110101010110010110101000011111110011111000110010110010110011110111110000100110111000100101000110010001110000100011010001010010100100010100001011110010001001001100001110000000000001110000011000110000000011111101101010100010110110000100100001100010011111001101001001101100100011111001001110100100101001100010101100011011011000010001100001000011110111000010001110100011001000010111110101101110100001100001100111010110010111111101001110111111010110011010001110011000110100000010100011010110110000011011111101111010001010100011100010101110100010101011111110001010010101111111001010111110110000010110001000110001100110001100111000101000111110101100000011101001011010101101010000101011111000100100010000110001110001000000010101000001111011010110110110011001111000011000111100111011011000101100110101101011001011110011110011000111011111000001100101000011101111111110010011100011100001010000000001110000111001111001000101001111011100000001011100000001000111000110001010110000110110001111111110111101001010110110100101001011001110111000011001110110000110001110100000001010110110111100101110011111111011010100111010001000100110100001001110110110111011011010111001111001101010001011111111111111100101000011010110010000111010111101010111011011111000011111110111100001010111110010111001011110100000111100010100111001111100010101110101110101110011110001110101000101011010111010101010010111100101000001011111100111000000011011010000110010010111110111101100101110000101000011011101101101100110000010001111111000100001110000110110001011111110100100000101011001100011111101110011101100010111000001001000110011110000100010011011100000000101000101100111010000111010011101100100111101011010001001011110100101101100011111101111100001111010111111111000001101111100101100100110110000101110001001000101000011100010000101000001101010001110011001100010001100100000110100100101010110110111101101101100110010001011101101001111000111100101100100110101101111101010010011011110010010110111110100011101110011001000011101010100001000011110001001001011101110000110110111001001010111000010010010010001101001111010011110000110001100110101001111001111111000011010101010111111000110110110101001001011000110101000101000100001100011010011111001010110111100110101100110001101100110100100110001110111110100100101110001001011111010101011000001001100010000110011111111010100110000001101101001001111100111001011010110011001000110010110000110100000001011101110111000110110010110101010110101100001011100100011101000001010111000101110100101101111010001010110111111010010110110001111010010110010000011111000000001111011101111000000011001111111111000000110100001000000101110101111111111110001010100000001101000011000110101101010011101111010100101111100110100001111100111010010111111110010000100110110010101101010001110100100000111010110110010101101111001001100100010101000001001101110111110101100010000000001011110111000000110000110010000001001110101001111101011100101011011111110100001110000101000100111110111001001111101011100011111101010101011000011010100111001001000111100000110110100111000000100111110010001011101001011011001111010100001101110001100011010111100100000000100100001000100100100000011111101001000010100011011010011100100011100000011010110110010011010000010010011110000011101101010011010010100101011001011110100100111000000001000001000100111100001001011110011011110001111011000100100100001111000001011111011010111101110010111011100001101111011001100001000010110010010011010000010111101001001101101111011111100110011100001010000110110111101001011001100101100010011010110110011011001110110010000100111100111111110010101101000001111111010000001111110110010000110000010010111000100010000110010000101101011100110000111111110001101010110011100011010111000000101101111100011011101 +111011110111011110000011010011010110010001001111001001101100110111010100101110100011001100000110110011001011011100110011101010010100101110111010001001111101010110011110110010010111100010101100000100000111011100000111011100101111001010000011110010110000011010101111101100111100111111101010101100000100010111100101010100011000001111001010011100011000001001110101100111011111010110000111100011010100111111100100110111100110100101110111001000110011110000110010111100010101000011100110010011111100010111111001111100001010110111010111101001100100111100000010111001000101111010001101100101100011101110110110010000101110110000111011101110110111011000000001000111111110110110000011100011111111001111001100011111100100111000001111011100110111001000111101011000001111000000000011001100011010100110100011110001000001111011000011011111001001110111001101010011001110010000101100110100010000101100000100001001111010100001001000010001101110001100001100101110011111111100011011001100110000000000100111010100010000101101110100010110110000101011000000000111111010010110001001101110000011000100001100011011110111000000010100100110101111001110000001110010100111000111111111000000111011000110101010010110111111110101001110111101110011010010100100001001000011010100001101110001011011110000001111010101010111110100100110001100000001010000011100110001000011010111011010111001111000001111010010101010100111110011000000111001001100111110010000110000000000001010000010010110110110101110000110110110010011000110111101001100001010011101101101111000110111000110010100110010001011000000110000101110011000111010101110001010101011100011011100010000001011111010011110001100101001110010100011001010001100001011101010001100010000001000001100001111101110000110110100101011000001100001101000111000001100001011010111111010000001101101011101010010000110000111111011011011100010101010111111001101001110001001001011110010111000101011000111101101100100001001110011111111000001100100110111010001000010001010000110110011010011111110101000111110010000111111100111000111011101001001010100010100101011011001110000101001000000101111010100010101101101111001010110000010110011110000111111010010001000010101110100000001011110000011111000011111101011101000110000111000111111001010100011111001011010110010001011101011010100101000010101011010011001100100111001000010010000101000111010110101010100110011111100101001010000101100110000001111100100110101011101110111101110011101101110010001100010000100110101000101011101110100000110000010110110110011100010000100001010000100110100011001010111010100011011110100100011000110100001011010110110100110110000001111000111100011110111001100001001001110001111001111011010101100001001100101101110001111010111100001000110001010010101011101111000011011111101001101011110101001001110100101101010011100011110000011100000010011101000110001010110110100101010100011000000110100000000110011011001000011101001000110011001111101010011001010010000011101101001011001110011000111001110111101010110101000011110001011111101111001010110011101011110000101011000011110011111000101001001000010100000001---------010010011001000111000100010010101100100111010101011010000011101001000101000101001010110100101011101101010111001111110100000100010011111100011010011111110100010001011110010100011111100010111100111000010011011100101110110110111001111100001110010100001111010000010101001011100001000001010011011001101011101110110000100101110100101000011001100010100111101101011111100010011110110001000110010001111000100111011001010011111001000000001000110101001110110111100010100010100010001001101100010010011101101101110000100000010000100100000101011010010111010010101100101011100100001010011110010100100100010010111100001111101111111101001000110001111001101000011111001001110110101000010110011000111110110111011111111010111100100111011010111011001011011101110100001100101101010000010000010101110111011100100100010010100000010010001011011111011100001001010100010110000101110011011000110101010001100010010110111011000100100000000100010011010101001111010001000110111110110001101101100110111100000011011110101010111100111011101110000000110101100101000011110101100011010011000100110011011010011111100010010100011001000010001001011010100001101000010000001010000100101101011110100100010000110010110100110001001110011010101000010000001110100100011100111100111110001010110111101011110011001111111011101110001010011010010101010010101110011110110010100111111000111111011101110110100000011111011111110000000101010000110011101010101011001101111010100000101111111111010010010100001100101011101000101111000111111011001101101011100011011110101001000000100001000111011100110110101000100100000111011000101000100001110110011011110001010011010010100110001011000111110101001101110111110001100110010000101100111010110100001010100011100100101111000011000111000110010101001001101001111001010000100110000101110100101111110011110101010010110111010110010100000110000000111000110011100101011100010111010000100101100001000000110111101110101110111010100001110101101110000101010011111010011110001011000010101001001010011011001000001010101000110101000101101100010110011010011001100001111100000010011010111000100110001110111000110010001001001111000100111010100101110111011000011101000110110110110011010010111011110101010000111111001011100110001100001010110100010100011100110001101000100001000000001100011110101110100110011110101111001110011111010001010011001100010001101000001001000010100110011011110011111100110001011111101101111100001011011011101100001010111100010101100110101001000001000010111011110111011010110111010110100110001111001001100110111110001101111001101010100010001010011110011011001011010000011100010000010001110011111000111001110000100111010010100100111101001100101010101100100001001110010000011100100000010010110111001110001110111100101010011011111011101110110111011000001101011010100001010111100010111100110111001101100111101111011111000101110110110011100011010000101100111100111101000111001101001111110111111111100100100111111111100000010000101000101100100000111001001110101100101000010110000001011111110111000110011100100101111101111100111100100001000011101001001010111111100000101110010100111001011111100010110100010010001000011101010000111011111100111101011100010110011101110100100010000101001001100000101010010100111001010001110111111100011101100100110011100110111000011010011111011000110111110011000010001111110001111101110011010011111100010111011111101101110110000011110010000110000011011000101111110000011000100100111000000000011110111111111111000100101101101001010100111110010001010111001011010000001101111101010101000111011111101101001110100000001000101000111001011000010000010111011100011101110001111010011011001001010100000001110000011101100101000110010101010101000110101100011111101001111100100010100111010111011100011010101001011011101111010000001100011111010000000101010011000010110001010101000001001010100111100000011100010101001100110101010111100100010011000011011111011011110110111000111011110011111000110100101001101000100101001101111111011100011000110100000100001110011000101011011000101011010001111111100000110111011010100100100001100111011010100000100000100011100011110000110100010100101010001001111001010011001100001111111110000100001011111100001100010000001110010110011000011110011100101011000010000110010110011101010110010100100010011001010001011011011100101001100110010011001011000011100000010100100110010100011100100101011001000101010010111101101001010111101100011111111101010100011001100000110001011000101111100110101110010011000001100010100010110000001001100011000111010110111010011010100011000110100001110110010110100011000100011010100011001110011001010101101110110001101001010110000011100100100110110011110000011101001000100110010000000010110011011111000111110001000111101000100110110010000011100110001000000111000001001001010001001011101011101010001111000011010011110000010101000111011110110110001100100010001100001100100110100101010111001000010101100101000101000110001010101100110001110100111110000101100101110110110101010111001101000001101100110000111011100001111100100111110110000111000010010001101010110001010011011110000101111001110111000011010001110000000101011011111101000110110101010101111110010101001011101111101011111010111011100100001110000101101010001100011000010100101010101000110101101010001110010000001100111000111000010011000000011000111011000010101010011111010111001000001011000111001001111100010001000011010100101101110000111111010110110010110101001011000101011010111010000011101010010000111011100000111010111101101011001100100100110001010001000110010111100000010000011100011100100100001011110011101111011011101111011111100110100011111100100111110111101011001101110100011000110000110101001100011001101000001000010001100001110100000011100110011011110011111000011110010101111110101111000000111110110101110001001001101000111010011110011111101000101001101011011101101011001011110000001100111010011100101011110001100010011101101100110011010111100111010101000001111011111110100001111011000001000001101000110110000000100010010000110000100101100011111101100011101110000101111100011001000001001000011100111110011111010101011110100100111011001110110101011110010111000100110001111000011001010100110101101000101110100011010110101010110111101010001001100101000010001101111111010001111100101000100100011010001011100101110000001110000101011111100111001111011001111101000100011000110000110010111111011001100011000000111001100101000001000000000110011110010001111101000100111000000011111011101000001100101000001110001001101011011000110001100000000001001101110001110000101000001110001110111000000010100010100111000101100000000111001101001110001100001011001101010011001011110111001011000011101111010011110111110101111011110101001010100000010011011110010011010110001010110100111110000110111111100111100010010110001110100000111010001001010010100100101100010111001011110001101100101000101100001011000011010111010110011110000001000110110111110000010000000001011111111110110110100011110010101110000000011000011101011000010101000000011001001101100001100011010000000011011001111100010100000001011011110101001011011000111101110101100010001101111111111000000101100001000011111011110100011000101001010110000010001101100011111000000000010101100010110100000011001110110100010010110100010101010100010010110010010010111000101111001101101000000001000101101100110111010110010001110100101010000011000100010101011011001101111000111110111011010010110110101111001111101011111011011110101010010001011010000100011110011000011001011001001101011110111001111100110000110010110110111110010001100001101000001101010111110101110100100110000001000010111111001010101110111110001010100110010010100110000001101001111010111101001100011011011010011001110110001010001001110011110001011000101011010001110000011111100101110010111011101100110100111100100101011001111111111010110001001000100010110100100110110010001010110111011101001010010111110000111010111111111011100010101000111001101101011010000010001010100111100010111111111011001001110001111101111001111111001101100001111001010000010000000111001111001110111011110000111111010101101101101011001010011111101111101100011111110110101000000001001111101101000000111000000010010101101010111011100110000001001010011001011000111110001100101111001110111100000000101000011010100110100100010110000000110011001000010001000101011100100011101011111011011000011000111000010100011101110010111101110000101101011111101011111101111001001011111001000110010101000100110011111110101010110010110010011100110111101101011000100011000011111100101010000100011001010101011110000100010101110101000101101000011010011001111110100001110001011000000100100101010010100001110101101100000010001111011010111100110100110111101111100000001100110010011101110011011001111011000011111100100000101001110110101110110111000110111110001101000000010000001110001001101110111011100010001101111000111111100011101010001111110011100011110011000111010110011000100101111110111110110010101101011001010111110000011000010010111001111010111001001100101010100110100010111111010110010111111110111011110010001010000001011101111110001101110101001101001010000011111111001000111111111000110010110011111001110100101010111100000000110100000001000110100001010110100000010100000100101001111111011101011011000010011000111011110010011110001010100100011101010010010111011100000010100011000011100110011110100010011101110011011010001010010111011100101111111111010101101111010110001111000110001100010100010001010011101111010111000110011000101111101010100001011011000001000001000010000101100111110001011100010011110001110000001010111011010010010010100101010111010001111111010111000010111101101001010110000111110000010000011011100001000011101111010010011110000100001100110100100011010100010111110010110111001000100111001111011110100010100011011100101111011111110011111111101111110110101010001000101011000101110000101010101011110101100000100001001111111010001000010111101110111010101111100101111110110001110100111001010111000110100111110000111010110110101101001010111011110001110111110111001100110001111110110111111010101111101000101010101111110010111100110100011001000101110011111101001101111011011011111011111000001111011111011111111001110001010011000001001111001001100111011011000000001011001111000100101001110010110100011011010000110010001111000010111100011001001110000010010011110100010100110011000011000010000000000110000010100001100101111110111111100110110111011011111000010100101110101100101010111110111100000100100011000000011011101110111110100100111100111000001011101101100110110011101100110110100000100001001011000000011101010011001101001011011101011000011100000010011000001110101100101000100110100000010001110001111101100011011000100100101011101001111001010011100110111011001100011001010011001111100000110011011011000101111110010101101011100001010000101111111111110011011011000101110010110100101011011001111011111000110001010000111010010101101111111011100011010001001111000110000110100101000001111100001001011001101000010100100000010101110110010000111111111011111100110100101010111010101100111111011011110010110100000000100001011111001001001100101110010010001100110000101100010100100011011011000000001000000001110001110111010001100101011001010110111101000101000110011011101101101110011101010000011110001011000101001110101011001110010011001111100100010011011000110101010001011001001110100101011111001010010111100100000110010110101110010111000011011001110010101100011111000100101011011000110000101011010001011001000110100100000100000011001100110110000100101010111111111001000011001000101001101101011011101001111100010110001001111110001001011101110101010001100101001110110001110000001000110010110011110001110101111001111111000111111111111110000101101001010011100100010010000000010000110000001011001111000000001110111011001100010100010001010011111110011000111100000000101000111111010100110101001101100110111101011010101110100010000010100011101000011101110010011100101110100001110010000011011010010110100111011001111010010000100001010000111111001111101010101010100110001111100101101011111101100011000001000100101101000110101110011000111001110110100000010000011100101000011100110100010000100101110011110111111000110000000111011010011111001110001101010111011100100011010111011100011011101101111100011110110110010001010010101110110111010010111011011111101000001110111000100101101111101101111101111110010100111110001011001001100010011110011100001101010101110011001001101010011010100010111111001101101100110000011000110111101011011001000010110000101100101111101011010011010100101101001111100110011101100001000100000110111111111011110000000101000111110110000011111101011010111010110001100111101010110000101101101101111010000010010110100111010000010000011001110000011011011111100001101010011001001000000101101110011100111111101000001000001110000110111011101011100101111011000101000001110110100111010110110001011011011101000111001101100111100000111000000111110011000101011011000011001011110110100000100101011101010010000000001011000011101101000011001000100100111110000100101001111000110101111010000100100000001000001000110110010001001110001111011000110010001001000000100010100011000111111011101100010011010110011101000100100110111101000100100011110001110111011110000111111011111001001101001100101011011101111111111101100100000111000111011010101100110000011011011001001110011111110101000011010000010011101110001001100011001001110011101100101111011110111100011101111000110111100110101100010011101111000000111101110111000110011001110101101011001111010000001110100101101100011010011110111011100011100101001001100010010100111000101010000101000001100000111111010011110001000100010010011010100000110011011100010100001010100010000010011110101011011001011011101001000011111010011010001111101001001001011100000111101101001011111101001101001101011001111001001110100010100011011110001110000100100111110000111110111000110110000100111111111111111111010010100011100100011110101010100010010011011101001011100111000110101001001011000100111101000100101101000001010010001110101000111010011101001000110111001011100111101011111000001111010111101011110001010111001100010011100011110101100000100110000000100010010110011000101110010010011110010100000000100001110010111110000001001111111000000001011101110001001110100110100111100101100100011001010000100001110011110111010010010001001111101110010000010010011111100100100111001111000010110011101100010101000010110101111001111001110111111111111011101100000000010101001101111110000001001101110000110100000111001011001011111001100011010010010011110010111101001111001011110110110001100010000011011101011000010111111111000100110110011010110111011111000101011110011000011100000010010110111100100000000010011101111010101111101101001100111011110101010110101110111111111001011010100010100011000111101010010111110111000000100110001101111111100001001101010111100011000111101110111100001110110101010111010100100100100010000111010000100001010101110000110001011001001000101101100000000111110011001100111100110111101011010001011010100100011110111010101100000011101101101111110110011111110110100010110111101011111000111010111100100100111110111101001111110011001100011000100010011001111100010001100100111001001111010111010001010100101010101100111000100111000010011011111101011100010101101000011101001010000101010010010000011111101100011010100011101110000111001011110011000100101100111101001110100100110010110000000101001010010110110101110000011110010011101110111011111001011010000000111000110100101011011001100010001100010100001100010100100011101100111101111011010111001101100011111101001010111001001110010010011010010101101110001010011011000100111011010100110101011001100001110101011111000010000001111111010000101101110110011010011100011101011010000100001110101111011110000110110100110110101111011011110011110100100111110011100101010000011111010101001101011010010000011111001100110110101000100111110000000101000000011101100011000111000101111000010101010101110010100010101100101000000011110110111000010111100100001101000001010010011111110010010000001011101010100101110110111011000111000110011010110100010110001110111111001111010111111110001011010111001111000011000000000000101100000011011101011101111011101100010111100101000111111100011010101101110101101001110101101110010011000000011010 +ls5msgs +00011011001001110011011101101011011101111--------- +01010010000001010001000101001100101101111--------- +01101110011110000001100011001011100011001--------- +01000001110001001000111000001011111100011--------- +01111011001100011001111000100010011100101--------- +00110101100101001100100101010110100110101--------- +11111001010101110001000001011110110010111--------- +01000111010101110011101101001010011011000--------- +10110000000011101101010011010100100111101--------- +11001010000111101000001011001111101100000--------- +ls5cwds +1001110011011101101011011101111---------011011100100001001001110000011110111100101011011011001001101111101100000101101001011110101100101011000011000001010100110101011100111100011001000100100001100100011101001011001010100000010111100110100000100011110 +0001010001000101001100101101111---------001001000011110001011100010011011000111011001100101011000000000000001110111000111111001110011000101010000000010100100111010011100110110111101111101011111100110100010111100110000111001001011011100001100001110110 +1110000001100011001011100011001---------000011010001001101100110000110001111010010001011011111100110101000010110110011111101010000100101001111111110101011111000101111111100000111101001010101101100111111010101110110011010110110101000111000010101100111 +0001001000111000001011111100011---------111010011100010011001101011110010000010000111110011101011111111000111010101101001100100101101000111110011010010011010000001100101010010101110000100110000110101100010000010101000001111101101100100000001101001000 +1100011001111000100010011100101---------111100111100100001100101000100110011111110011111000101111101110011000010101011111001111110101100001111100111000000010100000000011110011000011010100001101010101010111110111110010011000111110111001001111010000010 +0101001100100101010110100110101---------110001101001100110110000000101001111111000001111110111100010000110100110111011010000000010101101111101111110101001100111100111001111100101001011101111010100110100010110101111010101111110010110110010000010111010 +0101110001000001011110110010111---------100110010111011011010000101111110000100110101001010110100111000001001110001100011000110010111000111110111101101000010011100000100001011001010010011111010100100000111011010100110001010000010101010101000011111110 +0101110011101101001010011011000---------010011011111011011010110111010110100100011010110001010001100111000010101010110010110010001011001001110011000110100001111010001101001100001101100100011000011000010101000101111011000000111111110010100001001000000 +0011101101010011010100100111101---------110000000011111111101011011101000111010101001100110000010110010110100111010100001111100101010101101001010000111001110110100110001111101001101101100010011111111011100101101111010110101001011101101001100000110110 +0111101000001011001111101100000---------100001101110001110110011011011101101011010111100101001110100101000111100111000001001100000101111001111100001111111101101111110101011100011100010101011111011001101100011111111110001000000110101001111011000011101 +ls10msgs +1101000001110010000010110000000100001010011010001100100010101010000001001010110110111011000--------- +1101010110011011111110110011101111010111001101011000111111111110010100110000101001110100010--------- +0100111000000110101010100001101100000111100011000111101101011111111111001101000110010111011--------- +1010000101001101000001111110100000011011100011110111010100110110111100111001010000000111101--------- +0110010011111100110110001101010000101001000110101010110101010110101100011010000111110011010--------- +1011100110001110011010010110001101100101110110101010110000101010010011011010010101011011110--------- +1100000001011100100011001111101100100001110011010000101011000001010010101111000000000111101--------- +0000111011100101101111101111011000000010000110101010101001011111110111101111001111011110101--------- +1101011010111001000100101000101101110000110110100111101100111111101101010110001100011101100--------- +1010010010001011111111001011101010100000101100011000110011001010110110100101010001110010000--------- +ls10cwds +10110000000100001010011010001100100010101010000001001010110110111011000---------111001000010101110100000111110001011110110001001000111011000110001101100110010110001011111010000100111111000001100100000011101110011001110110101000000101001101111101001010011010000011010101110100001111111100010001111010111001010110000101011100100000010000001010100001010010100011111100001100101110111101101111011100111011100110011110110110010011100010010011010111111000000010000101000101100111001110011000100001001011101 +10110011101111010111001101011000111111111110010100110000101001110100010---------101101001010101101101010110100010100010111110110111010101011111000110100011000001011101101100111010110110100101100100010011010110111101110100010100100001001100001011101111110111010010000001101000100100011100000011100011001010101001010010111001101100000101100011011001001010000010110111011001000110101110011110000111110100101111011101001100111010111011110001011010000100010100001111100011101110101011100010010010010010110 +10100001101100000111100011000111101101011111111111001101000110010111011---------101110111111110000111101111111000011010110010001101010100110111110111010000100101110010100110000000011000110110101111110111010010000101001010011101011011010010001000100111100001010101000101001110110010111011001100101101100000000000000101101010110100111100001011100101111101100011110011101111000100000011001000100010111111101110010001100111111100010101001100000100100100101101111111000100100111111010000110000001011000011 +01111110100000011011100011110111010100110110111100111001010000000111101---------010010010101001011010011010110100000111000001011011110010111110010100111100111101110011001000011000010000100000011000101010100001110000111010101011011010011100101001110110101001110111101001100111001011110001011011111001011011101111000110001000110110100111111111110011110000111010001000111000101011101001010000110110111101010001110000011010100011011011001101000110000010101110011010011011000011111111000110111000000110110 +10001101010000101001000110101010110101010110101100011010000111110011010---------111000001110011011010111110111000110111000001000100011000101111000001101011011101110010011111000000001110100010010011111110001111010000101011001100110101011101000101011011011011101011010001000010111101100001110000001101000100101010100000111001101011111001001011100100010110010001000011110111100110010111100000111101000110010011011110100001001011100111001110001101011101001011000101001010110001111100001101111010100101000 +10010110001101100101110110101010110000101010010011011010010101011011110---------000000111001101000001001100111111010001011010111000101101100000111011111001010110111101101110101101000101101101011011001111010000000011110011000000010100100011000100110101110000100000001100000001111110000111010000101110001011011110011101101011100101010101100000110110101001010100000000000010001001011010100010011010001000110111010110100000111001111010110100100101011011110001000001000100011110010100100110011111111100001 +11001111101100100001110011010000101011000001010010101111000000000111101---------111001101011000111101010010000100010111010011111101000101100100110110001110010111001011101100010011001010011011111101101100000000111111110101111111010100101100110011100001000100001010011101010110111010011101001010111011010001001001100010011000001011110100001001000001110100100100110110101110001001101110101001011111001100111101111110101010100110000100001101100010011010101011100100100100110001010111000111100110010100000 +11101111011000000010000110101010101001011111110111101111001111011110101---------000010110110000001011100000001010011001100000111101110100101001000100111011111101110101001111101111010111111000100100000111100111000011011011011000000100101000111010111101011000011110010100101011111010000011001001100111001100001010111000010011100010100100011100011100110111110010011100001011010011010101110011111011010001010011001010110100100111101110111101111100001101011000110010001110100101100000001011001010001111101 +00101000101101110000110110100111101100111111101101010110001100011101100---------101101001010001001100001110100111000010000011001111000011000000101110011111101111101101000011110101101101101010011100101101001111001111111011101011110001101110000011111000110100001100111011111100101010000100011000111001101101100111010101101111100000001001001110000010001001110110100101010000111000111000001100100000101010100111001010110111111100000011111000101111100011010100111001100011101010111001000001010000110001111 +11001011101010100000101100011000110011001010110110100101010001110010000---------000011001001001001110101000100000000000110111111011000000001000011001001011111101101011111000000101110111110100011011100101111001111000011110100110110011001000100110100111010111110010001101010100111010001111010101010001110010100111010110100010010100011000101001111011000000100100011110000011011111001100000000100101111101101001111100010101111001100001101110100101011011000001000100001001101111000101011101001011101100110 +ls20msgs +01011010110111011111111000101111110001111110011110100111100101011000100110010010010011010100000010110001110001101010100000100100111110000011000101111010110001111101100111110011111010100111000--------- +10011001010010101000000111111101000110011100011111000110011111101010110001011010001101100100101001010110110100110100100011011110100010101111010011101011001111110011001011010110110011001111111--------- +01100001001000010101111000110011100101111001111010100001011101000010101100010110110110101110100010011000010100111110100010101001100000110100000011000010001000010001001100010011000001010101111--------- +01000110010101011001101101111011111011110001110001111100111010110100010100111001010101111110110000110110010110001000111011111110111001010001101111110110011111101100011110110001111000001011000--------- +00011101110110100010001010010101110100100001111110111011111111111000011110110000010000010110011110001011001111110010001011000010111000100011110010100011110000001001110111100100110010000110110--------- +10110000101001010001100000010010111111111110100111100011010011110101000110011100101110101000011010011110111111000101001100001110110110101011001101000100011011110100000010100110101010101011110--------- +11000101011000100010101001011111110010001010001000001001011111000011100111100001101010001110011000111000100011101011000011001000101111011011101101000110100100110111111011111100100110000010001--------- +11001111000010001011110110000010110010111010111101111010111111000111010101101010110001100000110011001000111001111001101011101010000100111001010110101100011001000010110100000000010100101001001--------- +01001011011011011100110100001000111100111000111110110101001110001001101001110010000001110000011110110101111100111111010110101001111000101000010100011010110100011100001100101100011101001010110--------- +01011111101110000101110000100011111100000101001001100010010100011001111000110011000011001000111000110100101000111100101010110110110000011011001110110110111100001001000011100101100001001111110--------- +ls20cwds +1110011110100111100101011000100110010010010011010100000010110001110001101010100000100100111110000011000101111010110001111101100111110011111010100111000---------001011011100011110011010100100100000100110101001100101101001111010011000011100010001000111010110001001110101110101111100110101110011100000000010001100101110111111001110000111110111001000010100011110111000001101100001100001011010111110011001111001101101011111011001101100110111000111011101011010010010011111000001011000111111100100011100001100001111000001001110011110001111111110100100011011010101111100110000010000010000011000100011000010001001100010000101100111001111000000111001001011011100010110111101011110001101110011100000110101111000110110011111100100001010000100011100111101110111111010001111110001100101001100010000101101111011011011100000111011010001101110011000110101101111010001110111011110101001010101111000001110010101000011001011010110110110011101100110010101001110010010100111111101000011100101000011000111011110000111110111 +1100011111000110011111101010110001011010001101100100101001010110110100110100100011011110100010101111010011101011001111110011001011010110110011001111111---------111101111100001101010100110100110001011001011001110110111101011111000110111110011100000100010001101111101111011001101101001000000011111001010011000101111101010110001110100100100111001001010101110000110000100111101011111011001111000011100110100110110110000011000101000011101011101000010110000111101110110101000011110110110011110111011001101011111000001001101010110000100001010100000000100101100001111010000110100101001011111011011110100010000110001110110110010101010101010100011000011000110010111100010011111111011010010111000100000011011101001101101001010000000011110001010101110000001101100100111010000110000011011100000110001110111110000010010011000100010101000111111101110100010110101010111100100001011110001011100011100111011011011010110011000100111010001010101001100100110100001001000000001100110111101111000110111100011001011010100000 +1001111010100001011101000010101100010110110110101110100010011000010100111110100010101001100000110100000011000010001000010001001100010011000001010101111---------001010100101001010111000100000111001110011001110000010010011010001110110001100111000111000010101111100100101111100100100001100010001000011110111111110100011111000000010100100001110011100111111011100101101101111111100010100110011101001011011111101100111010010010110001001000011011111101001110001001010011100110110100100010111011111000100100000110000110000101011010000111100010110110011010101000110010010001000001110000101000001011100110111110000100100101110111011110010011110110111010100011100100000001100011011110000010100000100100001010100010101011000100011011011000101000110010001000110010010101111110010110101100100011010010001011010010011011100001110110010111010101110010100010101011111111101000011111101111011001000101001001010001011010101110001100001111101110110001011111110010100001000001000010001011100011101111100010011100000101001 +0001110001111100111010110100010100111001010101111110110000110110010110001000111011111110111001010001101111110110011111101100011110110001111000001011000---------111111110000110110100101001100101100101010010001001010101001001001000001010111101111011101001011111001101011101010000101000011011100110100100100110101111110011100100100110001100111011001111010001111100001000000101011111111010101111101111110111010000111001101101011001001011101000010001000100100110000110110100011110111010101111001000011101011010010001100000101111000000001011000101100000001000110000101101001010000011101001000101110101110000111000001110000111000010010100101010011110011100111110100101111011101001001010111111010110010000111000101111010101101111000101100011111111001001011000010100010010100000010001100011001001110101011000101100111011101110001110011100110100100000000011111000101101010110000001001101010010110000010110100111011111001010011100010000010111000111011110101000110000110001001001100100011001001110011000001000000 +0001111110111011111111111000011110110000010000010110011110001011001111110010001011000010111000100011110010100011110000001001110111100100110010000110110---------010001010101010001111101001000110001101101010101011111010100110111010101011010000100010100001001110010001100011001011110101011100101101010111110000101100010010110001000110111001101010111110111010010111010111011100011101000011010100001101100011110010001000011111110110111000011001000001000111001010111011110100100100001010100110000111110000101100000010110101000011000100110000110001000101010011000001101101101110000101110010111111101110000011101001011100010001100110110111001010111001111101011101011100110001110011111010011010110011010111110001111100001100011000000111100001101101011111100110111111011111010000101101001111111010000001011101011111011110111010001101011010011110111110000000000110001001011110011010011000010110010001111010110011001000000111100101010000101001000100001101010110100010110111000000101011010110100111000000001000000 +1110100111100011010011110101000110011100101110101000011010011110111111000101001100001110110110101011001101000100011011110100000010100110101010101011110---------110111011010001010100101010111001000011111001100000011010011111010001111011001111010001000001110111001000100011110111100011001101010000110001011000000011010011110010011110001000111011001010101101101011100010000101011101110001100000001011110011100001011000010010111000000100001000011010011000111110001010011111111101001101111011100001100111100011110100101011110011000101010111101101111101110011000011001011011001100110000001101110110000000100001111100011011000110101100111111001001101001111011011110010100100000000010110000000001000000101110000110111010101111001110110100000111101000010110010011110000010000111010100001000110100111011001100001101111010101001101111110101010101101001010110010011110000110001110110010100000001011101010010010100101001011000101010010001100000101000100000001111100100101100000001110001010100100000100100101010100 +1010001000001001011111000011100111100001101010001110011000111000100011101011000011001000101111011011101101000110100100110111111011111100100110000010001---------011110101101110110000011000101001001111100000011001100010110110000000101001001001010100100010100110101111110110100011011100111000001010000100001001010100110110111100010010000110111010011110010000000011101100100111111010111010010101101100011001011111000100010101110001010100110100010011000110111001101111011010011001101101011001011111111001000111000011001100111001011010000001110011000110111110110011101010111010110010011101000110011110100011000010101101011001011101001010001000001101001110000110011011101100000000011001100010011010000000010000111101010101010011000101110000000001101001011110000011011011011011001110010010110010110101110110001000001010011001010011110111100011110001111010011101110000011100110100111010010000001001000110100010111111111111001010001011100010010011010000000110011110111000010011100110110110001111111110110101110 +1010111101111010111111000111010101101010110001100000110011001000111001111001101011101010000100111001010110101100011001000010110100000000010100101001001---------011111010000111000001100000100110101110011100000110110101100100000001100111110001110101010101100110000110101110100100100000101000011110101010011110101111100101110100111111110000000001010110000101110110111000001101010010100111101000101000110001110000110111000001000001100110011110101011101010010101110011011110110100001000110010000001010010101101100000110001010000001000001110100111011100011110111101011000111101111000001100110111010100100100010111110000011000100111010101011000110101111011101100000010000000000111101101011001011101110010000111101101110001010101110000000110001100111111100000100001000010010011000000011010101100011100011001111000010000110100010101010011100010101001001111101010110001111000100100100001000110111111100011001110111000111110110100010001101101010101010010110110101101001011010111011010110010100000111110000111011 +1000111110110101001110001001101001110010000001110000011110110101111100111111010110101001111000101000010100011010110100011100001100101100011101001010110---------100100010110001100001110111110110001011011010110110010110100000101111110110111101010101110010011000100010110001101000001111110010010000001110111000101110000111100111111001011001101110001101000111111011110101001001111000101101110010100001000100001001111001010000100111101110100111011010001111100010000010111011001011110111100100011000010100001110100000101010100000010100101000000100111110100001011100000101100001010011010000011110010011110010010101111011100101110001000111011110010110110101111110010011010110010000111011101000001010001010000011000111100010000101100000010010110110010100111011100011101010011001100111100011100011101100010110101001111011111111010010000111000001011101010010111110011000110010111001100110110011100000111000001011110111110111101000101001101111010011111011001000000111001000011100111001100000000011011000011111110 +0101001001100010010100011001111000110011000011001000111000110100101000111100101010110110110000011011001110110110111100001001000011100101100001001111110---------000100111011000011010011110010110111010100100111100011100011111010010100011000111111010000001101010000110010100000001110101011101001011011000100001100110010110111011111010000001110110000000100000000011100011111111100101010110001001000010011000100110101111100001011110101100011111000101011000001101100110110111100010010010110001100110000110011000110101100010101011010011100100011010101101101111001010110000111011110101111100010100111011001101110010000011010010101010101111110000110111001101001011100110001100000101100110000001100010111010000010001000000111010011010100000111000110011010011100010100110011110010001000100000010101101111001001110001011101111000011001001110100011010000011011000101110110010100110101011000110001000010001011011111000011111010011001111001000111100001101001000001010101111101100100101101000101001000011001010000010 +ls40msgs +0000000111001100110011110000111110000010110100011011001100110110111011111100100000001011011100100011100011101110111110110111010100100011010111111100101101100101110000010111000111000001010110011100001001011101001100011110110000000001110101000110001100010110111000011010110111101010000010010110100110110011000100101010111111000010111101110010111001010010101010000001100001100100000101001100000--------- +0011011010001011011110000110001000010110011110111000011001111100111100101000111011001110100010001000011100010010101101010001101010000100000001011110001011010110100000011001100001110101110100001000111000011110100011101111000010110000101110000001101000110010010100110100001111110001001101011111001111001111100101101011011001001011100100001001101010110000010110011111010101001101110011101101011--------- +0001001100000101101011111010001011110111111100011000111000100110010011011001110100101001111100111001101101101110001110110010011000010001101000101101000110000110100111100010011111001110101000000001100101100010100000111110010000100011001010000100111110000111011111100111111010111100101101110101010111110000010100101101000010111011000101001011011110110000110001010011100000101100011000101011000--------- +0101001011111001000010000111100110111111100101100100001100001011010111110010100110011001101100000000100011100010001100011011111110011010100010010101100000010100101110101001011101001000111111011001001001111111000110111100101010011110000111000100100001011100001011000011101011000011101110011010101111011101101100110101100001000010011100111000011000111101101000100000100001110100000001110000011--------- +1101110100110011101110110011001110011111011011100010101001011100010011110010011110100011011010111000100001100010001000111111001101010100111001000110010110111001000101101001000110111011000011001011111101010011011011101011011101100101101111001001010000111010000101110101001000011011110010101011100101010100110100101001010110000101010111100111100000110000111011011000011001011001111111101010011--------- +0110011101100010001000000001111111100000110001110111101011010001001100011010001111100111000111101011111011000001011111110000101010100110110001110010100011010011111010001000101011101111101100001010101101110000000111001010001011001110101011101001001000011110100011101110001101111010011111011111111011000100110010000010110111111100000101000000110101101100101001000111000001101101101000111101111--------- +0101011011111001001111100101100100111100001111010101010001101000000100100100101000110101100001001000001100000111011101001110010001000110111000011011001101001000111111000110100001110011100000111011011101100100101111111101000011111110001001010001011110011011011000100001101101000100100011000000001110011001000001000001110001101010100010001110011000110110000101111111110000010111001010011011101--------- +1110101111010000101111011100010010111100011001110101100111101110101010000001110100100000111101001100101110010000010111010000010111001111010111100111011011100011000110110110010011000000101101100001010010111010111111011110110110011110010011010011101010011100110111110001010111111100100100001101100101111000011011101011011110100101001100001001001101101101101110001101101110100100111000110000000--------- +1110010001000101001000101100110010100111010010100000110110001011010111110100100101110100011010000010000110011101101111101000000010010110110111100101100000110010010001101001100110111101000110100100111000010011111110001110101011101001101100010001010100111100011001011111101011101101010101010011101101110011011100111101011001000011110100101000100011010001010000110011110101000001001000110111110--------- +1100100100100010101110010000111100010011000000100010011010110110001000111010110111010010010000010100100001111100110111100101011000001111110001101001010111101101001000000110001010011001010000010000011111101000100001001000110110010100101001010100001011101000110011100101110000001110111101001000111100110110100101100000101101010100000111001101101010010101010000000101111111011111010100011110011--------- +ls40cwds +00001011011100100011100011101110111110110111010100100011010111111100101101100101110000010111000111000001010110011100001001011101001100011110110000000001110101000110001100010110111000011010110111101010000010010110100110110011000100101010111111000010111101110010111001010010101010000001100001100100000101001100000---------011010101111101010111101010011100010111010111111101001101101011011100110000100000011100011010011001100111010110110011110111001110011000000101100010001110001111100100000110101111101110100000010111100110001110001001011111110001000111010010100001001111100111000010101001101001110011101110010010101000011101111100000000100111011011111000100101110101010011011110011101011000010011011001010110110110110011011111011000010001100000000100000101000011010111110010100101110110100010001111000101111011000111110010110010000001110000101000001110010001101000001000100000101111100001000110111100001111001110110111100111010100010100110111111100010000010100000000011000100011111001110001101001000101101110011000110111001111110011110110100110111010001011110100010001010000001101110001100000010111110100001000001010010001010101110001111100111100101010100001011011000101010011111111110110100101110001001100110100100001011100000000000011110000011110100101001101011101111000110101100001111001101100000111000101010001101100100000010011001000111010101101100010110101100010000111011010110000011000010001001111010111010111111011001111011100010111101111000001010100100000100101010000010100000101011001001000010000000101011100101111000010011001100100010111100001010011100010101110000101100100010011100110010100010001010011101010001000110101011100100001101010110100011101111100011001010110101100101011011000011010111011000110111001011001110100000101100101110101111011101010100110001011110000110111111000010001000101101111001010101101001111110000000100101101100000011100010011001100101011000110111011101010110111110100001010111110111001110010100100110000010100010000011111100111000000111100011101011011101001010 +11001110100010001000011100010010101101010001101010000100000001011110001011010110100000011001100001110101110100001000111000011110100011101111000010110000101110000001101000110010010100110100001111110001001101011111001111001111100101101011011001001011100100001001101010110000010110011111010101001101110011101101011---------110001000010101000110000000011011111101010110010010101000010101111111000111100001101111010011101110010100111010111100010010101011011110111000010010110001100100101011100001100110111001101100110100011100010001101100100100111110101100000100100100001000110001100111101010001001010100010111111101011001011010111111101000100101001110101110010101101011001111110000000010101011110001111011110101011011001100000100111101001100010001011111110000110011100110101000111010101110011101000100110100000111001100010001100000010011111100101110111110000111111101000001101110010111010011100110010111101000001000011111101100111001100010010101001100100001010110001000011100010001101111011000010100101111111110011111111101000111000001101110110000001110111011101011001101001110101001001000011011110100100111110011110100000101000101110011110110101110010000111111000100100010100000010110001011100011000011010010011000011100000110111011001110100101000000111111100111001000110000100101110100010111101100011000110111000100001011001010111111110110100010101111111111101110101000001001100011101000111001011110000110001111001000101001010001100010101010111110111101000000001101111100011110100010000110010001101000110011011010101010100111000111011010111000101000110111100110001011110000010101110100110101001010100100100011111110111110100000101110101110010011110110100011010101110111111000000010100110000010010110001111000000000110010101110110101011101010111001101100010110101011010000001111010100001011111001000110110011100111000110110010110110000001110001111101001010111111011100110001111111110100010011110101011000110111010111010111001001110101011101000111011001100100010110001010001000001110001100110100101000100 +00101001111100111001101101101110001110110010011000010001101000101101000110000110100111100010011111001110101000000001100101100010100000111110010000100011001010000100111110000111011111100111111010111100101101110101010111110000010100101101000010111011000101001011011110110000110001010011100000101100011000101011000---------001011011011101110010110111111001010011110110111011110010011101001100010110011001100111111100101111010101001110111011000101100100110010000010001011000000110010110100011101001110001010100011111001000000000001001101011011110100111111000000110100100001110101001001001101110010111111111011010000000100001111110011000111101000111101011001011000000100101001011011100101011010111111100000100010110110100111110011110010010111110100011010011010111111111001010101011111010000100101100111001100001001111100001100111110001001000100111100011010100111000011011010001110100100111111110011100110111010011110111111001100011100100100010111101001101001100011111000101001011111100110001111010010110010010000101000111110010001101011010100010001111111000001101001010001010001100011111110011110100001100100001101010011000101001001011011011011100110100100001001101101101110000000011101100111101100001111001101110101101111001000010101110001011110011101010010101110110111011110010110001001000001101101001000000001111101110110001010101010101010110101010100101001111111010001110000101100110110011000001000001101011110100101000101000110111001000100101000111011100000101110100111010010111110111010101111101001100001001100001110111110111011100100100010010110001001001001111100111100010000111110101101011110111000110111010100000100000111111110110101010000011101101110001011101010110110011101100101011011100100110110110000101110000010010001110010000110000100111101011010101011110010100111111111010000100000111100001001101110111100010010010011000101101100101111000011100001001101111101000000100111010111010001001111011110010001001000011101011000110101111101100110011111110011110011010110000110100001001101010000000 +10011001101100000000100011100010001100011011111110011010100010010101100000010100101110101001011101001000111111011001001001111111000110111100101010011110000111000100100001011100001011000011101011000011101110011010101111011101101100110101100001000010011100111000011000111101101000100000100001110100000001110000011---------111100011101101100000011101011011011110001010011011000111010101000001101110011001101101111000011101000100000001101110011110000110100110011100011111100111100100011010011110010100101010010101110010001010101011010000011101010101010010100101110100111001001101010110010101011111000011111011010011011110011011010001110111011000000110101111011001001010100011001000100001011100101000001100011100001011100101010101011111101110001001000001100001010000000110101100100001011100111101011000000110111001001011000110011100000011100101000111011001001001101011011011101100011101110110011110101100001001011111110000001011110110111010011011100111001011111100101110101111010010101010011101000111111100011100111011000110101110101111010101100100010001110010101101001100011101110000111000100101011101010011010100000110000110100001010100100111100010100100000001100110011110000010011010101001110101011111100001101010000111000010101111100001100001110100011000011001011101001010011111000111010100111001110111110010111100011000101101110110000011111011001001110001010101001000010110100000101001110011110010101100100011011000101010100010101011000010101111101010111101111010100100001111010000001100000010011010101010101101001001001001001010110010011001100011100010001000110101001011111111000011101101011111001111001010000010110010001111000010111001100010100100001100000001100001001001011001101110010001100011010111001011011010100001100000101001010111100010111111111111110110001010100111010110010011011001101100100000010000100111100000011100001010111111011111101111110101010100100101111010111011010011010110001111110101111010110110010101111010010011101100101111110100110111011111100101010110001110000111011101001 +10100011011010111000100001100010001000111111001101010100111001000110010110111001000101101001000110111011000011001011111101010011011011101011011101100101101111001001010000111010000101110101001000011011110010101011100101010100110100101001010110000101010111100111100000110000111011011000011001011001111111101010011---------001001100010101010110111001110110110011111010111011011111101010110110100010111100101101100011010110111101000011001100101001111011110011000000111111110110001001101011011100100010110011011101011001111100111100010110010101110001110101110111100110000111001111011000001000000001101101100110000011011011100010001000100010010111100111000010010001001000101010110001010001001100000100011101010111101110111000010010001110001110000100000110001011111110001001110011110001001111111010100111110011100100001100101000001110110010011101100011010001010100000011110100000010100010100000010010011011000001000000100101111101111101101110100011000111001101001011101000001010111111011100101111011100100101111101001010101011101111011011101001101001011100010111011100001110001100000010110011010001000011000011011111100101110110001000110000101111000100011101101000010000010110010100110101100001101101101010101011000100100101101101001101101000111010000011001110010101100011100100111011101000001101010000101100010001111100110100000010110010010110001110111101110111100010100011010010001111001011110101101001011110001101010011110000001001001001100110111011011110111001001111101101010000101100010000101101001111111011101111110101101111101001111111111101001010101101100110100010001100110110110111110010001010001111100011100000011000001000001110011100001010011001101100000110110000100110010110011100110011110010001000000010101100011010011111110110010111001111011010000100101110001101100011100111001110011000000110011011101001110011000101011011101011000000001010101100100000111010111111000110100011101011011111111100100111001101010000000101100100000001011110111100010100101101100100101001010101011101011001001100001 +11100111000111101011111011000001011111110000101010100110110001110010100011010011111010001000101011101111101100001010101101110000000111001010001011001110101011101001001000011110100011101110001101111010011111011111111011000100110010000010110111111100000101000000110101101100101001000111000001101101101000111101111---------101000011011011110001100101000110000100000001110011001000010100101011001100111010011001000101010111111001000001001000001001000100010000110110011000000011001110100010111100111110000011011110011101010011100001011011000100100001101110100000010110101001000110111111010100110000110101000100111111010001010011011000110001000100001000101011011111011111100101011011011101011010100001110101011101111110010011100100000101000100101100010100000110011100001011001011100101101011110111100101101000001010100011011000101001000101111110010011001111110001110110101001101000111101010001010101101000100000110100010001001001111001110110110100111011101011000011101110000111010111010101111011111011100011100100001111100011010010110000010000001001000110101111011111000010111001100010110110100001110100100101001100001000001001001010001011001010101111111101101110001010001111111111100101010100000011100101110110110100100010011110100100110010111010110001100110000001111101001010100001101110111100101011111011101111001100100001111111010001111101100000000100110101001011110010011010101101000011111011001000111000111011111000000111110100100010000001110101011010010010110011001000110111010011100100011000000000010111010000100100010000010100100111110011010101000001111111011110111011000110000001100010011101110001000001100100011001101010001011100101110111010000100111000010111111110000011010011001011111110000100010101001110110100001001000001110011000100110000111100110101111100000010011011000000101100000000101010100000001010101010111010000010101110110001100111101111111011001000110010000001010111010100011001011001001010011000111111101101110010110101011100011011100101100001001110100100100101001000110000101000 +00110101100001001000001100000111011101001110010001000110111000011011001101001000111111000110100001110011100000111011011101100100101111111101000011111110001001010001011110011011011000100001101101000100100011000000001110011001000001000001110001101010100010001110011000110110000101111111110000010111001010011011101---------000010000110010111000100001011110100000101011001100001101011101101110001010011110001000010111001000111111001110110110110010000111110111000101000111000000101111011010101110110111010001100001010010000011001101111111100001111010010000111101010010000110011010001111010111100001101111011000000111011000111001010001110111001110010111011100010100010100010101011100100111011111100111001010010111001101111001101010111111001011101010011000010000110011001100111111111100001000111011000001100001010100010011110010100100111100111010100010000001110001011111100101011101101001100000100101001111110011000111001101101000011110110001110001111000111010101011100101010001010000011011111001110011111011001010011101100111001000011100000010000110111100111001001101111000000000111001011011101100011011011001101001101000100110111011101100100111101110001001111001001001001100001001011001100110111011110110101100101000111000101100001100101000010010100100011110100111111010110101100101111110110000100011000000101100000100101010010101010101100111111011100100110100111010111000100100010100011010010101001111011000100101110111010100101001110110010011111010101001011011000011000111011011110001000100100001000100111111001011100110010110010000000011111011101010110111110000010110011010100011000110000101100101010000001101111111111000101100110010000011001100011101001100001101111001110101111010000111010111011110000010011100100111000111111000001101101010011100101111001011000111001010100110101000000100010110000111111101000001110111000011111000001011010010001110011000001110101100111001011101000001011001001001101101010000110000100000101010101001011011111111010110010100101001111001000010011100011000100011000011100 +00100000111101001100101110010000010111010000010111001111010111100111011011100011000110110110010011000000101101100001010010111010111111011110110110011110010011010011101010011100110111110001010111111100100100001101100101111000011011101011011110100101001100001001001101101101101110001101101110100100111000110000000---------111111110010100001010011010010101000110110110111101000101010100111010101011011101110100111110001111001001101011001000001010100011111110010101100101010001111110111010011100011001111010110011001010010001001101110001110110101100010100101111011101001010000110011000010100011000010101000101110001101110001010101101011101100010100001100011000000110000101011110010101111101110100110111110001001000000101001101110011110000100011001111110110110001110111101011010000000010000011110010001100000000111111101110100101011110100100011110001110001011001000101010010100100000100000111101001110010011001100100001001110101111101000010110011000110111110011110011010110111100001011101010000100000001011100011110011011101001111010011100001101101000011101100101010110100000110010101110000101111110100110011100100011100100011101001101110110111011110100011010111111001101111010100000110101110101111000110001101000000101010101011110101101110011111001110101000001101111000101000010011000101111101000110001110000001100010000001011010111010010111100100000111111011001110110010011010011001011101101111001011100000101111110101000100001000110111010100111001001000001011011010111000100001100101011101110111101001011101100011001100100101111100010000001010001011101101100000010101101110101100011101110110111110101111001010111110011111101010011001001100101111100111110010111110100100110000010100010011001000111011001100110100001000011000011100010101100001001100100000001111001011000001001101111001100000001000000011101010111110101010000001010110110001000011001010001000001010100101010001001010111000101100011111000101010101110100000001110101011011110001110011001011010101000111101100001000100111011111000101011111010 +01110100011010000010000110011101101111101000000010010110110111100101100000110010010001101001100110111101000110100100111000010011111110001110101011101001101100010001010100111100011001011111101011101101010101010011101101110011011100111101011001000011110100101000100011010001010000110011110101000001001000110111110---------111001000000011100100101100100100111001110010110110011000011010101000010111111000011010001101011110010011010101110000001011001111111011110110011001010010000000111111101110000111110110100101110111101010001111011110101110000000001001110010110110001111011100000111101101111010011111001100100110010101001010110000010110100000110111100110011011000110001011100101011101110110000010100110110000110000101111000010100100101010001001101010100101001010011001000110000011000000100001110001011111000110011100111100100000111110110111100111101010110100110000001101101100101101111111101101000111110011001101110111001101010011001101011001000001100011110001011111111001001101110011011001110000011001101101010000000010001011111000010100100001111010111001001001010011011011100001101111001010101100101110010001101001111001010110000010101011101000000100010101101111101110010100001001011001011010101000000001100100011111001001010000100101011100011010010111111101011101000010000001010010111010101001010111000010110110110010000110111001001110000010100111101011100101100000110111001101000000110100000110111000010010101000000011110101010010101110100111100010000010001001000001010011011101101110101011111010001000011100011001110011011111011001101111000011101110000101001111000100111011001110100100000001100101001101101110001000101010101110100101101101010111010100100011100001101110110101111110000111001001100011110100101101110011101101101111111110001101011110101011010011111100111011111010101001101111110111011001101000001100100001001100101110000001111110101000111010110011100101101010111101100010011110101110011001001100111101111011110101010001110000000111111010000000001111101001111010111101011001011101011 +11010010010000010100100001111100110111100101011000001111110001101001010111101101001000000110001010011001010000010000011111101000100001001000110110010100101001010100001011101000110011100101110000001110111101001000111100110110100101100000101101010100000111001101101010010101010000000101111111011111010100011110011---------110011011000110000010010010001001100111010011111111100010000110000111011010011011010010101011011111001100000000010011001101001101010001010111100001010000011000111001100111111110011010110001010010111000111000000110110001111110010011011001011101110101110100111111100001100011111110000010111100110111010111011010001100001000010001110001011101111010000111010101101001010011011111110010111100101000100101100101000001010111101000010100110011011011110100111000110000111001100101000101010001010011000011010010010111000110001100101100001101101100001000000110100111101100110001010101101001000010000001000001101001101010110001111001101110101000001001010001011010010100011010011111011010000110110011100110010110001100001001111001000110100111001111100100101100001100100110110110010100111010010010011001110111010110010100100011001001011111111101100110101000111110100010101111100110111110111101000100110001100100011000111101110010000001101100110110011111001000101111010010101011101100101010000001101000010101000110111100000011010010110100000000110000010001001011010111111111100000001100001010101110001110110000001010001110000010100111110111011000011101000100000110111011111001101010110100011001100110110101000010111010100001100100001011100010110000010100011000000101001011010110001001001100001101000010100000111011111111000010100111101110111110011111101000111101011101001101110010000100011101101101100101111110000000100001101110101001010010100001001011110001001010111000100001010011101111001100011100101101111011011010011100110011100101111001001001110010011100110000100110101110001110010101100101011000101010100101000101010100000010101101000001001110011000010011000101001001001101011111011000010 +ls80msgs +11001110110100001100111110001000110010101011001010011101010111101101001101111111001111011100111001010000010010000011100100000100010101111100001000100111001111110011111000110110010100011001011001000010111001001100010001110010001100111111011101001110100101000100001000110101101101100110110111111110101110000000110100001100000000010001001110101000011101111111101101100111011011011100010111110111000011100000111110100001010001001111000011111001001011101111110101100100000001111110001011011110110000110100110010000010110000010110010110100111111111000110111101110101101010000100011001110001110101100110000100110001100111010111111111011011001111001110010001100100001100010100110010111000001110101010011100000110100000001110100001110000100010011110010010111011110010011000111001011111011010001100010--------- +11000101011110001100101100101000110110100011111000111010001001010101101101001010101110101011011000110010111101101101010101101101111011010000010001011000110011101110001100000111011111110100110110000000010001101001100001110110100101110111110001000110110001100111110110111001011001111101011000011001101100101001111101001010100101100101100011010001111110101111001000101111011110100010110100100111110111101101001111001110000101010111010001010000110011110100000011110011000011010010001100101000000110000001001111110001101001101110010100010000111101110010000101110100110110001111000100001110110111011100000010001010110011011001100111010001001101000111111010011011000111110110110110101001110011101001000110111001011110000001000011001010100000010011100101000001001100101100111011110100110111000010010--------- +00000010101101000000100010110011100101111110001100100001111000101100000000011100101011011101101010001010101001011010110110010101101010010111011111101110010101000001110010110101000000011101010000110111001010100100111101011110100101101100010100000101001001001110010110010100010011100110010011101100101001011000011111010100001000001111100101111000101010000001010110101101110010101110111100100111000110111100001101000010110100101001011010001011010111101101111110001010101010000010111110011101110101011100110011101111101111001100101001111101101110101011110100111111111000111110110100000000011000100110010010010101000101000110101100001111110000110010101010101111100010001111011011010101001100001111000000111110001000011010000111011001111101111011111110100111000011001000001011010010111001011011000--------- +11111101111111101110011111001011011111000110001011000100000000010100101010001000001010110110110101001010010111010100010000001111100101110011111011101101001101110001110101001111010001101011111001011111101101110000010010111111100011010000000001100101001000011110010100011101111010110100100011001101001101100000101000010100001100011011010010100011000101101000110010000100010011110110011101001101000011110010100000000011001110001010010100110001010001001100011101110001001111001010111110111001011100110100101110101011000100001100001101111010101001011110011010011000011001100010100010110011001101001000100100000100100101000001001011011000101010100000101011010111110010000100000101100111011000001100110100110001010100011000000000001111000100111111101000100001110000100000101011100110000000001011000--------- +10001010111000100001000000101111010111111000100001110111100111001100100100110100000111001001000000010110110010110001010001100000101000001110111010011110110011100100011110101101100001000010010010110001001101101000011110010001010000000100101110100111100000101000010001110101100100111010011101110001010001111110011011000000101110000011000011000001100001000100001010011110010010011111000101000011001101000010001101110000111100100100111001001000110111001100100101110011000110101010100011111111010101010110011100100010010100101100110000001001110101001111001100110110010100011001001101100110001101100110100100011000101011110101010111011000000011000110111000111010101110111011001101100000111001100110001011001001111000000101101011111110001111011110110101011000010100010011010101101111101111011011011--------- +00000010100011011010001000001101111110000100111100111100101100101101100111110000000110010010110010111001000111010111011000101010011000110110110110010110100100000110111110000100010011010011100010101011111101011000101000100111110010011100000110111000011001111101100100111011000110011110010111110000010001111101101110001010000011110010110110111101101001100001000101101001100000001101110111111011000110111111000111001010101100101110010001011011100010000001111011100100011110011111111100110010000010000111111110100100001000101101101100011110001100001011101011001011101100100001110111111011010001011011010001000000001010110000011100000101001111101111100000111110101000001001110000100111110111110110010000111100010000111010000100001001001001000010110010011100100101010000010000101011101011001001011--------- +10101101001011000011001110100111101011110110110001110011111000000010111011111100101011001100111001100100101101100010100110101010010110110011100110000001111110101011011001011010001011110110100001100000101001100011000111001000011000110100000010101100000011010110010001001101001011011110100011111111001010111010001011001000100110001111000101000001011100111000110100100011101011111110000010100010110110001001110001000110100001000000011001110011101001111010000100010100001010010011001110001100101010000011010010001011010000111110001100110101100111000110111111000111010100001110010010010001001110100111001001010000010010011110000010100000110010010101001100111111110101110111001011110000001101000110011111011111100001101101010101101110001101010101101010100000010001001011001111001101001001111101001--------- +01110010011111101110011000100101100001110001101101100000000001010010111000110111011110111111110011011111001000101011101101110110100111111000001000000100110111011001001110001111011101010100100000100010001010110001110111111011011110111010101010011011011010010100000110110000111111100111001000010111000000001101110111101001111000001110010110100000011010000111010111001010110000011011100011011001110111100010101101010100100110110011110100000111101000111110110001100111110111101001010111001110001010011011111110100001101100111000000011000010000010111001000100100111100000110101010000101000111101110000101000000011000110000000111001100110110101101110111010110100100001110100110111110010100100011000111010011001110000011000110011010110100110011110010001011110101110011100100100011101100011111100101--------- +00000100100101110100111111100011011111000001011111000011011100011110000001111111000011111001101001110110000001010011000100011110000001010010010000111001110011111110111110001101010000101110101010001101001111110010100100010110011101010000011011001111001011001001010100100000100101001001000011011011100011000010111100011101011111000111110101010010110001101010010010011000100000111001010001000101100010011000001100010011100001110100100000111000000010100001010101100101101011010100010110001011110110100101101011100100000010010110110111110110001100110101001110011111110011011011111011000111010100111111100011110000010001010011111100110010101010110100101010110101100010011100111010110100110111110101011101000010000110111110101100101010111111001010010100000011010101001101101011101101011010110110100--------- +00111101111000000110110011100000011100011110011010000010111111101111100100010010000111001011011001011110111110000000111110011100111000011101011000011000111010101001110110101000101101011001001111101010111001011000000101110011111111011000110100111011101111111101001001101001011010010111111101000111000000101110111100100000111001010111110001001010001101110001101101011000010110000000010001001101101110000111111001111001100010111000111011100000100000010000101111000110100100110101011011001110100100011110010111101001000111100111111101010110100111101010011011110110001111100110011110011100001110001011011100100110010000010100111001001001100001011100110001001011000110100011110000000001100101111100101110010111011101001100101000101001111111101101110000111101011010110100111100001111111110110011011--------- +ls80cwds +0011111000110110010100011001011001000010111001001100010001110010001100111111011101001110100101000100001000110101101101100110110111111110101110000000110100001100000000010001001110101000011101111111101101100111011011011100010111110111000011100000111110100001010001001111000011111001001011101111110101100100000001111110001011011110110000110100110010000010110000010110010110100111111111000110111101110101101010000100011001110001110101100110000100110001100111010111111111011011001111001110010001100100001100010100110010111000001110101010011100000110100000001110100001110000100010011110010010111011110010011000111001011111011010001100010---------000111100001110010110100110001101100010101100110111110010000001101011100000011110011001111101010100100001001110011001010101100101111000111000001001111011100000101100100000110011100000100110101010101011101001110101111001001000001101001010100110010011100000011111011001110010100110000010110100011101101101110101011100000010010101010001010101000101010011010011101101101001000101101011111111100001001000010110111100111111101001101111011001010110101101000100111110000000110011001101010101110000100101110100000010100110000011001101011110001110100110011111011111111001011001101000100101000001010111111000111010100101111001000110010001101101110110110001100010011100010111010111110100000111111010101111101010110110101011011001001111010100001111111010011110111001101000110110010110010000000001001111100111001100010111011001010100110100101000110011110110111010011101010010101111010100111001111000010011101011000001111100001111110101100001111101111010100011010001100101011101000001101010010010000111110010001000011110110010110100111011001101001111001100100000111001010110011001101100001000010100000111001110110001110100110011101011110000100011010001011000100100010001111000100101101101011000111001101001110011010010101000000101010100011011101101100100100110001101111101010010101001010100100110110110111111001111010001111100110100011101110010100101101101010110110101110001101010000101101000111011111000011110001100010101111111010111000010100010000001111111011010100011110111111100001100001100100100100011111110111111101100111010110000011110111011011001010010100100111011111111001100001001101001010010101111100000011010001111001001111001110000011011111110100011000100000100001110001000111110000001101000110010010100010010010101101001110111100000011110000111011101101110001011101111010101011010010010010110000010111010010000001000011100001000110000100110000101111010011000011110010100101010110010100101001001101111100100001001011101111000001111101101111001011011001101100110011100011101111110011100010101001010000011100000100010100110100001100101001000011010100110110111100000011001010011011011111111011000010110111010010010011111010111011101010011001001001111111101111110111000011111011010101101000011101001010010111000111010000111001110110011111111111010011001010011001011000111110110011110111011100010100000001001111111001101011101011110110110101001000000100101001000101010101111100000000111010011100010010100011110001101000111001100011010011110001110110111110000110010011100101111110011010111000111001011010100100010010000011010100101111101110111111011110101110110011000011001111011000111100110100001110010011010110001010000100011110101111110000111100111011101101111101011111010110111010110001011001110100000010100011101100100111001011010100001010010111111101101111100000100101111110110001001011000110010101000110000110100111100101111111100100100010101001110111111000001000011101011110001111011101100011001010010111110010100110011010111111110010011101001111011101101101001011010110011101011111010000011000111110010111111011010100010101110100101101010010010001101101100001101011111010011010001010000100111001001101111111100110011111100010001101100010101111100001011101001001101101011101001010000111011011101100101011110110011001001001010100001111111111100010011000001110110010001110001111011011100011110101011010001100010010001010001111011111101100001101110110000111001111 +1110001100000111011111110100110110000000010001101001100001110110100101110111110001000110110001100111110110111001011001111101011000011001101100101001111101001010100101100101100011010001111110101111001000101111011110100010110100100111110111101101001111001110000101010111010001010000110011110100000011110011000011010010001100101000000110000001001111110001101001101110010100010000111101110010000101110100110110001111000100001110110111011100000010001010110011011001100111010001001101000111111010011011000111110110110110101001110011101001000110111001011110000001000011001010100000010011100101000001001100101100111011110100110111000010010---------110101000111010010100000011101101011010010001001110001000010101011100110000111001110110011100010011100011110110011001000011000010111011011100100111010001101101001010010001100101110100101101111111100111011001101110001110011011001001001011000010000100001111110011101011101010100011101010101111111001111001110011101101010011001110010111100010010111010111111110101000000001110001000101100101010111011110010111100111011101000111001010010110110101110010111001001110100000000111101001110000101001010110010110101000010111000110001010000111100111110101110010001110110010110000010001110111100110111111001100101111110011011000011100000000000001100001001101101100100010000100110111101011001100110101101110110001101111010110101101011001110010111010001101100000101000101100110010100110000100000110000011010111010110000111111001000111010000110000011000011110001011100100111111010110100110010000100011101100100100100010000001110101011101110000001001000110000011111011110001111000000111111111011101001010010010000011100011011000100010110010001101011110111010001111001100010000000100111101100100010110110000010000110000100101100010000111000000101110110001111100001101000111011010010110010111000000111111111001010001011011100111011011001100001011000111000000001110000011011110111101001101001100101010111001011101010001111000011110101001100110100000001100011000010110010101101111011110010010101010001110110100111011111000100110111011010001010101001000000101101101101101111110111100111110011001011101101010001110110011000000110110110000111000001100010000100100101010001010010110101101101110110011001110100111001101110000100101011100101110011011000001101001011100010101000010101000111110001100001101101011101010000100001100001010100101100001000011110010011100011101010011100100101101000101011000001110001100010111011010001000001000110101001101101001011110000000001100011101111010111110110011000000001010011001101011010110101000000110011111000000101011011011011110010100000000101101110100111100010111100010101010110011110011101111100111111011011001011010011110000110101101001101110111011110110101010110001011100001110000011001100110100100111010001110001000000101111101100011010001011011000111001110111011011110111111111101101001010000100100011110101001000101110110000100010011000010001110001010100101110111001001100011000100100101111011000001010111111001000011010100001101111001100011111011010000111110011011110111111010101001111101011101011110001010000011000111010011110001000001010010010001011001101010110110111100010010001111010100100011010010101000011011110010000011110010011011101011111111110101111000110010101101101000100011000100011101111011101100001100101100001100000011101110100000111000011001000001110010111010110010000111001001010101101111010000000101100011110111000000101100001111101011111011011001011011011011111111000010100111000101101101010010001110010100110111100001000000000111111010001111011010000001010000001110111000110011110110011110011000110000101010011101000100100100111011101111000100110100100101001111111001000001101111111000110101110111111110111011111101111101111100100100010100101010011001010011101110100010110100100001011101111000100100000101011011000100001001010101100010011001101100111100000110110010101001111100111001110110000101111001100010111110010010110011011100110111010000111111110100000101001010001111001110110100000011000101011000101110011111010 +0001110010110101000000011101010000110111001010100100111101011110100101101100010100000101001001001110010110010100010011100110010011101100101001011000011111010100001000001111100101111000101010000001010110101101110010101110111100100111000110111100001101000010110100101001011010001011010111101101111110001010101010000010111110011101110101011100110011101111101111001100101001111101101110101011110100111111111000111110110100000000011000100110010010010101000101000110101100001111110000110010101010101111100010001111011011010101001100001111000000111110001000011010000111011001111101111011111110100111000011001000001011010010111001011011000---------000111000011111001000010101111101001100000101010101110101000001110101100100110001110111011100011010101111010000001101011010110100011111010110010100111101111111011101000010001001111101010100010010111011110110110001111110011111100001111111001010010101010100001000110100001111100010101101010111100101101100101111101000101101010100010000110001101101110101001000000000000101100001110011001000001100110101000011100000001100001100001011000101110100011111011110001110100001000011101101100010110011110110111011110101011001010100110110111001100001000001110111101011110000100111100011111100110111000101110011100001100111001100000111100110010000010100111111100011000000000001000101000011101000110111110011101001010000110111000000111101101000100000010110000000010011100011101011100001010011001001010100101100000111110100000000100010001100000011101111000011100001010011010101110000011101010101001000001111011101101100111101110000000001110111111110001010110111101010110111001000011111010000111001101000100000100110011011110111101001001111001001110001001101000110110000001010001100011001100010011110010111011110101011000010000000100000100011100001110001101111010011001111101111110000111100101000001110011000111101011100011111000111100101110111001110001111101000111100000110110000010110000010111110001010101110000101111100000110100011001111110101001100110000010010110100110001111011100101100111110010000011010010010111101110101010100100011110110011101100001110010100100101011100011000000110100010001001100110011111101111101000111101100110100100110110010010100110001000000000110111001101110000101010101001101010011101101111100000000111101111100001100100101011000101000001101010001011010001111110001100110011000110001000111011000001000110110110011111101111111000000011000010011000110011010001010100101111110011011011111001100010101110010011110100000100000010101010010010011011001101100111010100101110100011110110001011001010100011000101001100011101010011011001111100000111101011001111010001111101110011000000101111010100101001011101011100011100011011000110010110011100011011101011111011111110000100111010001111001000100000011011010011101010001101000100111101000010001111000111000101111100111111001110101000010010010101011011100101111000011011100001100111100111001110011011010100110001111011001000000101100110001100111010010010101110011101101101110001101111110110101010001001101111011010110010110110010010111110010000000010111000111011110000011101010000001010011010011101111111001100000000110011011011100010110100110110111000000101010000000000000100111100000010011010001001101000010011101111000111000001001010001100010001110100010110000111101000111110101000110001110011110001010110000101101011111010101101110010100011100001001010110101000010100010100001100111101100111111000011000110001111000001010011011110111010111111011101101011001110011100011101101101010100111000111011110001000010000010011101010110001100110001010000111011000001000010101011101011010111101101111011000101111000110000100101000000010000001011011011110101011010111111111101001010111100100000101001010100010110000000100011111100000111111000000001011100001010110000100100110010111111101111101111010000001101110111100000110011010110111011010011011001000110010000010010101100011001011101011011101111010000110111000001111110001000100000011111001100111101011111110001000111100010100010100000111011010001110001111110100 +0001110101001111010001101011111001011111101101110000010010111111100011010000000001100101001000011110010100011101111010110100100011001101001101100000101000010100001100011011010010100011000101101000110010000100010011110110011101001101000011110010100000000011001110001010010100110001010001001100011101110001001111001010111110111001011100110100101110101011000100001100001101111010101001011110011010011000011001100010100010110011001101001000100100000100100101000001001011011000101010100000101011010111110010000100000101100111011000001100110100110001010100011000000000001111000100111111101000100001110000100000101011100110000000001011000---------001110000011110111111000100101001111001100010101100111101000011001010000110101100010000010100000010001110010101110101101010011101001100010010101001001101110010110101000101111010111110110100000000011111111000001110100000011100101100010011001101000010011100101100000001010100011100000110110110001000101010010100111111010000110011100000111110110000000010101100100100000010100101001010111111000011100001101110110110100100010100000010111101110000110110011100110110101000101000100111111000110101011111110100000001000010101110100101100100110010111010110011001110010100101011001000000111110100000011110000100110111111111011110010011000000110110100001111001001011100110000100010110000100001110001001001011001100100010100000100001010110111101010111100111010110001011011001010001111000100011110110111100100100001101000110011011110010110010011110100010001111101010001101100011001000001011000010011100011111010101111100111011001111100101110110111100001101001000000000011001011001010110100111110110110101000111000010000111000110100101011010001010010000100000000101001000011100111101011110001111100111100010110111101010010100001010011111000111011110110101010011011011011011001001000000101001001011101011011011101101011010001101001111110110010011101001000100101101110110000001010101000011001010111101011000001111001011110101100110001000101010000111001110010110101011001010010100001101011101011110001001001001010000011101011011111110011001000100010000011111010110010111111001101001111001001101011111010000010110101101010110000101110111000110111111000101010000101011111001111110101011010111011110110100111010001000011011010000001100110001111110001111111000000100000110111010010110101011101100000100000111010001000110100001101000111010100111010001001001010111001110011111011100111111111110011001001000011011100010111111011111111101110011000110001111010011011010010100110101110010011011001010110111110110100110110011101101001011010111110011000000101001001111110011010101001001011010110111011000011000011001111010110000011000010010100000101101111100110100001101001010001010011010001000110001000110101000011101000000111100001000010101000010110111100101101111010110010010111011001100111011010011110110011101011011101001101011111010011111010111001000000001001000111010011000010011100110001100000100001100011101111000110010010001101101001111001111000001001110000011010101000111001001100101000011010101001111001101011110111100101101111101001110111000011001110100111101110101010101010111001010000010101101000010100111001110110010010011000100000001010001011110100110110100111111101010000110110110011111011100101011100101011011011101001111111011000001010100101010000100100010101110111011101100010101011110100011110011110111000111110111100000011000010011100010110000110000000100001001010010000111011011000111011001001001101001100111100110011111001110011110100010101100011000000100101010100110010111001111101010101000111101110000100101101111101111101100101111101110111001000110101010011111101001111111010101010110011010110110010011001111111010011010110000100101001000001001110101001001001000011000000001000110000100100010000111100000100000110100110101111100000001010110000101111111011001101101001100111011100101100010100011111010110111111111100010111111100100011111100010110000011001101101111011011001100110010111000001111100101101101001011001110100010011111100011111001011001011100011000111 +0100011110101101100001000010010010110001001101101000011110010001010000000100101110100111100000101000010001110101100100111010011101110001010001111110011011000000101110000011000011000001100001000100001010011110010010011111000101000011001101000010001101110000111100100100111001001000110111001100100101110011000110101010100011111111010101010110011100100010010100101100110000001001110101001111001100110110010100011001001101100110001101100110100100011000101011110101010111011000000011000110111000111010101110111011001101100000111001100110001011001001111000000101101011111110001111011110110101011000010100010011010101101111101111011011011---------101001011000110111000101111110110010101110110101000000110110011011000100100001111101001010111000010010010011010001000001001101010100010010101011011100001100000010110011011010111001001000101111010111100010111000000111100101101111010010010111100010110001011011010111110101000111000000011010010001111100000010101010010000100111111000101011110101110001010101000111101110000001010000011101110001111000110010000000111111011011011000001001101000100110100111011111111001010000100100101100110101100011110011110100000001000010101110010010000101100010010111100001101100111110111010001010100110000110100000101011110001011100111000011101010110101010000000000010101101110011111010100000011001010001110110010100001001111100001100110000001001111100100111010101101100101101101100110101110110101110110100000111000010011010101111100111111111110001011011001110001001000000101001011000101001100001000110001100110101001000000111001111000000001110000000111001101010010000011000011001011111110111010110000100100001000000101101011001101001101101111111010111000100000010001110011010111000000100011001110001100101110111011110111011000010100000111010111010001111011001111010101101001101000011110001010101011111110111001011011110110011000000101100000010000011101000110010000100100110111001110010010001011111110011100101011111100110111000011101001101100011011101000101111011011000101001111110010010010000110001101000101111000101110011100111000000110001000010101010110100011100101011001011010110100001010011111011110000011011100011000100110111011101010001001101010000001000101000101001110110001111101000101110101010111101011001010100011011100110101010000010000011101001110101010001001001110110001011100110010011000111011011000001011110011000101100111010011110101000010000010110111010111010010110011001001000010101001000000000000111000010001101100111111010100110100111101010000111000000100011100010011111011000010010001001111110010010100011000010101000000010110000111001001111010100110000101001000001010110001110010101101100100110011011111110110010010101101100111010111011000101001110011000100101010110111101001011011101111001010001010001010011100010011011101000111001100100111000111001010101110110000010111000011001111110111010110010111110100010001100100110101110000101100010111101000011011101001000010100000011001000011100100100111011100011100001000001011000000000101101001100101001010011101000001000001110101110110000110000111000100101001000100010001111111000010110011110010111111110111011000111010111101001110110000111010111000101110110111101101000011010100000010011000110001011111010001100010110000110001100011000110001100101100111010001110011010101100100001101000011011011000111010011010111001110110000100111110101000010101101100110111000101010111011100101011101010101001010101001111111001110010100001011010001011110001111100010110110111011000100010110010010100100000010101000010011000111001100110110101111011011001000101000101011001000000011100111111000100100100101000011101010110011010000111111001111010011101110110111111100011000010111001101111100100000110100011101001011011110111101011001111010101010000001010101000101101111010000111101100010111001110101100101010110010011011010010000011000110001101011010111100010010011001010100111011100111101111100001110010010101001101110011101000000001111000001100111000100111010111011111110011011011010110011011100011111000000100110111011001100 +0110111110000100010011010011100010101011111101011000101000100111110010011100000110111000011001111101100100111011000110011110010111110000010001111101101110001010000011110010110110111101101001100001000101101001100000001101110111111011000110111111000111001010101100101110010001011011100010000001111011100100011110011111111100110010000010000111111110100100001000101101101100011110001100001011101011001011101100100001110111111011010001011011010001000000001010110000011100000101001111101111100000111110101000001001110000100111110111110110010000111100010000111010000100001001001001000010110010011100100101010000010000101011101011001001011---------111011111100000110110000000111111011111111001111111000100011111000100111101011000001100010101111011011000011010000110100011001011111001000011101010101100100110001001000111010000000000100110100000101001101000100111011100011001111010011110111110010010010110111001101001111001010110110111101011111010111010010001010000101101110110000001110110111111001001001010010011110101001111110000111010110010101101010110001011101010010010000010011010011101100111101100000010101101001100001100111101110001111101001011111101001011001110100001100011111011010010110111111110100101001011101100100010100001101011111100101001110100111100000100010100101111011101101011011101011010000101001011110111000101110100000010110100111000110010010001111010111000000100001001101010000100100110011100001001001110111100101010001000100010111011111001100100011011010000111001100110010011111001110011010110000011101101010111010100001011111110111101100001111101110110111110000001010110000111011110010110110001111101000001111110111101101100110010000011111111001011000010000100000111010000100011000110000110100110010110011111001111001011011000100110110000111000100000100000001101110011000001111101011010101110000101101110001110101111101100101001110101111001110000010010000100101011111011010000100010001011001100000110001000111110111110111111100100010100110010111000101000111000010000100111101100100110001111111001010111101110000000100110101101010100111001100010101001001001000000100011110110110001111111000000011001001000010000111000101100101111101011110011111011011011101111001100010101000101011011011001110101001101111100001010001001100101010011100101010000010111000110100101100010001110100111001111011010011010000100011000110001100111100010111010110100010010000011010001010011010101010110011111101001110000101101000011010101001011111001001011100101100000100010001000010101000011010101011001111000011000001111101001101100110001000010100100010011111100101010011101100110001011100000111110111100101001100101010110010111001011111010010011011011111000101110010010000011001100010011101100001111000101110100010111001000011100001001101000111110001010111110110111000100100101011111101000101110000101001100111001000000101011010111100001111010100001010000100000011101011101010100110010101000110110101000111010011001101010000110011101101001000110001010001000100001101010001101110101100010001010011111011011000000000101010011010101100011010111000011100000000001101100100010011111011001011110111101110111110010111101010111101111010001100101011100110011000101100101010100001011000101100001000000001000001000100110001101000001001100010100101011111110010110010101100000011010010010001010100001000010001000111110011111111011101010001011110011001010010011101011101101010100010111011100101100110011101111100101100001111010001111100010001010101101111000011010111001100110011101110001001001100111001000010011111100111111001001000101010101001001011100001101011111000110110010000111111010011110001010101010000001000000110010110010111010111011110010011001001110010111100110100111110000011010110101101100000101110110100011001000101000011111001010001110001011110001100101010110111010010011101001110101000111111000001010101111101001110110100100101001110000000111001011101011001110001000010100100110000110111101001010010000011100010011101101000000011010000101011010101010010000000010011111011110000000010111001100100001110010110 +1011011001011010001011110110100001100000101001100011000111001000011000110100000010101100000011010110010001001101001011011110100011111111001010111010001011001000100110001111000101000001011100111000110100100011101011111110000010100010110110001001110001000110100001000000011001110011101001111010000100010100001010010011001110001100101010000011010010001011010000111110001100110101100111000110111111000111010100001110010010010001001110100111001001010000010010011110000010100000110010010101001100111111110101110111001011110000001101000110011111011111100001101101010101101110001101010101101010100000010001001011001111001101001001111101001---------000001001001101100100010011011010011111011101011000010110111101011011111001101111111110110110011010100000111001011110010001100110001010111111011000011000111111010001110101011010001101101001101101001011110110001100000011001110011010111011010110010110010010011101101000110100011011010011001011110110001010111011110011010010100101100011011101000110000010100111111010011101010011101110110111001010010100001100110110010110000110011001100101010100100101101110110110000011001011100101100111000001010010111000010110000111101001101000100100101011000111110011001110001000111011011000010001001101010110011010001110110001111110000000110010110111010110111111000010101001100110011101001100100000011000000010011001011100111010111001000111011111001011101110011001110001000010010101110111110101001101101011111000000100000111100101101110001101011111100110011001010110100111111011001101111111101010100010000101000101011000011110010000101100001000110111101100110100001001111110101111000101110010010010110100111111001000110001000010100110101000110111011010100110011000011100000000000000110101110001110000011101100110101010110000101100000101111111010110111010100110010100111010000010010101111011101100010110100110001101111010000001011001010010100011110111101101011001001110001100000000100110110110110000111100000100000000001000100110100000000011010100001000110000101111100001111000010011001110011010011011000011001110111011001000001100000011110011001011111000100010001100010010101110010101101111110110100001111101101001101011000101110000010001101101000001101110001100000001110010001111111010100100100000011101001011111111011110011101101011101100010110111110001011001111011110111111111101100110010100000011011101111101100100101111001001101110000000000111010000000001101010010101101111100100101101100100100100011000000100011110010010100011110111111101101011111000100001111010111011111100110000100010110101110101011011100010111000111100110100110110111100111010111111111110100011001110101000000110111000001011010111000110000011111111101001011000010110010101010100111011000001001010010101111011011001101010010010100111000100011001111001010001111100001110101010001000010010000100000111001111011101100111100000110001110111100000010101011111111110100100000011010011101111011110001010101100101000010001100001110011100000011011111110010001110001101001011001111010011111111011010100010011000010101100011111101010111111010110001110111001011011001011010100001100110000010001101001000111100100011111011111101000000100111110101101101000011010010000110011000111101111011110110100101001100111011010001011100110010101001010100001010110101000001010001010100101101001101110000000011001101101000011010110010110001110101000110000000100010101000111001001010100000110000010110001000001001111000001000100001111100111000001111110001001011000000111010110011100100101010100010001010011010110001101111010001110110000001101101100011110111110001111000101100011000110111000110011001011001000011000110110101001111011101101011110010111010010100100111010011111100010011110111100011101001000010001011111111110110010011101101011010011100100101000010111101111010000001111111101000000010111000100100001001110101001111101110100001100011000010011101111011111011001011011111011110011111010101011111100101010110110110001100110110111110000001100100100000010100100100101111010001001111101001110011100110000100000011110010111110 +1001001110001111011101010100100000100010001010110001110111111011011110111010101010011011011010010100000110110000111111100111001000010111000000001101110111101001111000001110010110100000011010000111010111001010110000011011100011011001110111100010101101010100100110110011110100000111101000111110110001100111110111101001010111001110001010011011111110100001101100111000000011000010000010111001000100100111100000110101010000101000111101110000101000000011000110000000111001100110110101101110111010110100100001110100110111110010100100011000111010011001110000011000110011010110100110011110010001011110101110011100100100011101100011111100101---------100100010101010111011111110100001001000101100010110110100010001100101010100011001000100010000001100010011101000001111011000111111111000011011011111111010000001011101011101001101101111111011101010110011010111010110000010010111010011101110100100001010111001110000100100001010110110101000100001101100101100110100101100000111010000101101010000010100110010001110100101001111011110010100101001001110000100001001000000100111101001011110000011100101111110001000010101001111001110101000000111110001001100110111010100011001001001000001001100100100111011000111110011010100000001110010100100010111000110000111010111001100101110001000000110001010010111010101000101010111111111101110000111011100000011000110011001110111010101101000110101101000100111101010100011010100100111100010101111110010110000011110010111100110011111110101001101010110000001100100011110000010000100011110111010101011001111010100100001110101100101001011110101011110001011001100110101011000111001101110101011101111100001100001100001000011000100000100100001000001000000011111100101000110000111111000001110011010001110101000011001000000111011011010111100100100010011011001001001010000110010010111001110100111011011110100101100100011010010000010000001001011101111110010101011001011010000011100110010011011010010100101100011011101111111010000101101000001011001101110110111111011111100111010010011111010001000000110110111011011110010001101111011000100010011011000110011010101100111111100111010110011111001000010101111001000000111111110011001001110000001110100011001100010001111011000100100001101001001001101011100000110100110010001101001000111010101000110110011010011100111010001000011001100000110011000001101001101001111011011001101001100110110101101111101101011101000100101111111010011111101111111010010101000100001100001011100010111010000010011001110001110100000000110101101111100111010001110100011100001000101011100111010000010000000000001011101001001101111101111101010000100101110010000001100100001111011011111100000111010000010010111011110110011100111101010100101100001000110010110001011000010110111101000010111101101111100001111110110001100011110011111010110101101101111100101000101011110001001001011110110000011111111000100100001011100001011000111100101011100010110010010001100101101111110101101010111110101101000111101000001100000000100000000101001010101001100000001001111111010111000010100100001001101100110001001011000000111100110101010000000011010001000110100000111101110110101001011010000101110100100110000000000111010011001110101010000010110110000111011110111011001100011110111010010100111110010101111011011011111011001010000110100100101100100000010010001010001110111000011000011111000101110110010000011011100111101001110111011101101100110000111111000000110110110111001000110010100111000101011110000101110101011000110100000110100110000111111110111101000011100001011011110111000111111011010100111100011011111110101101110000101111101100001100001111100001010110110011000100010010100100111011100100000011010011010110010110101010001100010101111001111011011101100111000111001101010110100110000110001010011100101001010000000010010110001100010001001110010110111011101010111110100100110110100100110001001000000010110000111110000011000000110111100101011101100011000101011100001101001000101000001011111000000100100111011000111110111011010100000011001010010010111001010011110111000110001000001111000101110001 +1110111110001101010000101110101010001101001111110010100100010110011101010000011011001111001011001001010100100000100101001001000011011011100011000010111100011101011111000111110101010010110001101010010010011000100000111001010001000101100010011000001100010011100001110100100000111000000010100001010101100101101011010100010110001011110110100101101011100100000010010110110111110110001100110101001110011111110011011011111011000111010100111111100011110000010001010011111100110010101010110100101010110101100010011100111010110100110111110101011101000010000110111110101100101010111111001010010100000011010101001101101011101101011010110110100---------111000010101110101001011000100111101000110111000000100111001100101111111010111010110101111010111010110101101100011011000101010010011110000001110110001110110100110010010001001000001100100101111111010011101110100000101110100011101001011010111100010111100010011011110100010000011000000100010110011111010111010010101111111100000110111010100011010111011011111111101011101001110000111000001001001101001011101100111110110111111001100111111011000110010010011011010111011011101100101111111101101000110010100000010110000001010010100001101011100000110100010100100011111101001111110100011111101110100101011000100010001011000111001001011101000111001010101100101000001011100011100100011011111101001111101001001101001001000000111111110111110100010011110111110010011111000000001010111111010111011010011001100010010010110010100011111000001110111010101100101001110100100010100110000000100011001111001011011001011011100110000001010100010010001000010110100111001000110001001100001000110101011010100000110011101000000010011110010110000011010010111001011001001110110011011100100111101100010110000101111000010011100110000010110001010000110001010011110110110111100110010000000100000100110111111010000111011101111101010011011011010011001001100110000001111001011101111000010100010000001110110001100001110111001111111011011011100111001000111110100010100000011001010010100101000100100101100111000000010001111110011100101100110110001100100100110100000111000100110000011000000001011011010111110101010101001100011001011110000101100001101100101111001011011000011110100101001110100111001111111000101101010001001110110100010111111000110001111110101010001100011101100000100111011001100100101110001111101011111010001011101110100111110111001000000001111100101101110111000110010111011001000000001001111011101001110010110001010110111100010111011001001010001000011011010011010000110001010001010101100101010011000011101101011000111000000111101001110101001010110110100010001010100000110000001110000000100111001000101110111010100011011000101000101111000011100010010011100010001110010100001111011001101100101110010101011010011111011111110000111010011001101011011110001000111101110101110101010001111101011000011011111101010111001110100000010111110001000010010001010101110111010100110111100101111011101011011100001110111100001101011000011010101011010011110110101001000100001011001101011101010101000011001101000010110100001011111111011000101101001010111001111111001111100100100110011010111001100010010111100000010111110011111101110011100011001011101000010100111001011111101110101101011001100100001011000001000000100000000111000100000001001011101000000010110000111010011010110111011100000111110000010100001101011001001010111111100001001001110011100111101100010111000000110111100011001001101101010100101011110100100011110011000100110110101000010000001001010001011101011000011011010000111000101000001000100001110010101011000111101000010001110111100100101011010100011111010100011100100010001001010111110010110110111010010100011110000001101011100001111001100000010001110111011101100001111001110101001101101011011010001001101100100111100010010001011110001111101011100010111000100000010010011100001111011101101001101000001110101110001101100101010101011111011111011110011001111101001111100010111101001010010010011010011101000111110110000000100101101111101111110010000001110101001101100111100110111101101100001000111 +1001110110101000101101011001001111101010111001011000000101110011111111011000110100111011101111111101001001101001011010010111111101000111000000101110111100100000111001010111110001001010001101110001101101011000010110000000010001001101101110000111111001111001100010111000111011100000100000010000101111000110100100110101011011001110100100011110010111101001000111100111111101010110100111101010011011110110001111100110011110011100001110001011011100100110010000010100111001001001100001011100110001001011000110100011110000000001100101111100101110010111011101001100101000101001111111101101110000111101011010110100111100001111111110110011011---------111010000001101111110110010110100000000101100100000000110010101001000011011111011000100000110101100110100110110010001001101101001111111100010110001000001101111010000100111000000011111001010010100001111000011010011011110110111100100110100100101001101010100010010110000111000110110100111111010101111100100000001011111000110011101011111110001101011011000101010110100011101110010100010011101000011110100001111110011010110001101111010111100111110101110001010010010011101111000000111011001000001000111001011001011111101011111110000100000101101010011110111000001011011101011001011011110001101101100011100111100000010101011111101111010110101101001101111100001010110111110011001111000011110101101101110000001000111110100011111100001101110010111100001011101010011110111011110010010110000101011110010000100011010010111101110010000111111110001100110111010010011101111000010000110011000110100000001011011000011110101100011100111000101100101110000101010010010111010000000001001100010101111011110000001000110101100111101001000011001100010100110101100011001100110011001000000101011001101110101100111111100010001001100001000101110111010010101001000001011100001001101100011000110110000010000001100010011100100011111110000101010101010000010110101010110011110101010101010011000000110011101100001110001010100001000001000011010001110110110101011111010110000111110010000000110011000111111010001010100101111000001011011000100111101101000000001111001100000110101100001100111010001100011011001100001110001000001100010010101011011110100010000110100100110101101101100101001000011100011010000001000010101010000111110101100010010110101011101100011011110111000011101110101100110110001010110110111010110100110100110100111110011011000000010111111111000100001111001001100011101001001101101111001100011000111101000001111100011010100001110001001111011011101001110000000011001110100011101000111111000010010000100000101000110100111010001101110100101010111110010100100110101111110101010110110001101001100110010000001111110100110110100000010001101101001100100100000001001101100110111110110100001111111100111011101001111100001101101000101001100100110001101100101101000110000100000100010111101010111011001000111001111100111010011111101101011100010000010011000110111100011100111110111100010011001010111000110110101011001100001000110101001100101100100000001011000011011110011101011001110111001000101011011000101111100011100111101110100000100100011011010001111100100111100001001111110011011101100111000010000011001011000010110111110101110000100011010000110101110011000111000101111111101100011100100110001110011111011000010000101111010110010111111001110000110111011000000101010010010100100001001111111111001101000010000100110011000001100001110101010111000101101100000010011011011110011101010101001110110100011101110001101000101000110111001110101111011110000111111111010010101011101111101011001100000101001001101111110100100010001110101011100011010010110101101111011110110110011100101011010100011111101111111110001111111000010100001111001010010111011110000110111000010101000101001011010111111110101000111100111101001111110101100101010100110101010010001001011010001001011010100111000111011000101100101011111101010110010011011101111010000100111000011000111000011001010101000110001110010110001101010011011001010011001100111100100101101110010000000001111110000111100101110101010111111000100010001000111111001100 +ls160msgs +1101110011110010010000100001010011110010110111101011111010011110111101111100000110101011100011000010101101111110111111100101000000011100010000110011011100011000001101001010100101101111011001000100110000010001001010110011000111100111111010100001000001111100000010011001111011011000101000000001011111100000010110101111010011100101110011001010011110100110011001010110010011111100001111011101100110011001111100101110000010011000011010110011111110010001000001111110110110011101101001101011111101110010101111000001111011000110110101111011010000100011000000010001010000100001111011000001111101001111001000001111001001110100000000110100101101111001000101001001010100100001100100101111110010011101001011101001100010111100111010000110001111010000001100101101110000110111011110100111010101000010110011011111011111001110100001010000000111100010011011101100000111111101001011010001000000101100000001110101111100000001011011100010000101101100100000001001100010101010010001110001101111010100000001110100010110011111010110011110110101011101101000100011011010010001101011011100000110110010001100011011111111111110101110111000101001000011110110011110111000110000110011001111001111111110100010010101010011001101110110010111101011011100100000000010100000110010000011010001000100111101101110111111100001100010111000111111010100110000010111101001111011100101110011010001100111011111111001011101001000001110111101100001110011110010010110011011001110100010100000000011010111011111001111111001100010001110101101001100100101001101110100110010001100101011011001100110110010111001001001001110111000000000111001001110001--------- +1111011011111101000101100001100101111010010010100101100011010101000011011101100101111001000010110011110110001101101110000010001001100001001111110101000000000011001000010011110001111100001101100001001001101110101000111110010111100010110001101001000101011101101011111001011001110100000101000100100011100111111111101101010100100010100111101000010101011000111011111011000111001110101110110100110000101001001000101001111110110100101111011110011101000111100100001101110000010111110001101010100000001111100011111011000001010010011101001101000100001010000110001111111100001111111011010100101000011000011111011010001101111011101100110111101011110110111011110001110001000000110110010100100110101101101100110010010010010110101010010010111101101111010000110110001011100101101100100110010111101001110010100100111011100011100010100001100111010110010110101110100001111010000000111101010111010011000111100001001100111010110010000100101110101110100110000100101000100101011110111110110000110000100110110010001100110011110010011000101010110011101011110110110000011000010111010100001001011010100000100101001010111011110010010110100111111111000110011011010100010111100010111011010110111100001101100011101101111001011110111010000010000001101101110001010100111101011011010000001001010111100100110000111101111101111010001000001101101011001100000100000100101010111100000011010000010010110110111000100100111111111011010101011100111001011011011000001100111110111111010110000100110010010111100000001010100010010100010001000111001111000011110011111001110100100110011110010100000110110001001000001000001100101101011011110--------- +0000110000110000110101101011100001011101000100110000110000110110000100011111000111011101001010111001111011000000101001111010101101001111101011010011110110011011101111010001110001110001100100110011011110000011111000101111110010100111101010100001111101001100010110101110110110111010000111101100111111111001010001111111010000110100000010010011111101101010111111101000000111110111001000101110100100111100010101100101101110111100011101011000010100011111100110101111001011100100001001010100100010111000001011100110100111101101110011001100011011101111010001011110101010101000001111100010111101100011000000101001000100111011000010111111101101001010011110010111001000111100001101111010110001101101011010010101000011100100110001100000010111110110110011111110011100001001010100000100101101110110101100111100010111111000001010000001101001001100001000011000001010111101111011011001000010111010111000100010111101111111100101111101010100000101100000011010101110011011101101111110000011110001101110011010101010011001100111001011011011101101010101110011110111111001101110010010101001100101111111001000011111111100111111110111011001011001101110111100111000101011111010001001010010110000101111110100100011010100100110001000100101011110010101101100001010101101111100010101001101011000100000101000011010100101100000001011010001100000110111010000011101101010111000101110001011110110011111100011110101101111100100011110110001011001101100001101001111111100011100001001001100100010110011100101101100100100100010100001000111010110000110101010010001100110101100100100000010100001111101111000101100000011110000000100001--------- +1011101101110010111100111000101000000111101111000000101011101111001100010110110010011110110010011010001011111101101001010101011111011111000010001101001100001111000001011011010111100000110000101100111000010101000010111011100110001001001100100001110000100001011000011101101101111001001011010100100111100000111100010111100011010001011101011001000001000011011010011001110111000110011111111111011111110000101001000011100100011001101101100100000001101000001111001100010110111100011010011110100001111010011011011011001011111101000101010001000111011101111111101111100000110100100111100111111111010110011001100010000011001001001001110110100100111010001111011001111110010101101001001110110010111100000001101011001001110100111000100011011000000111011101101011111101111011011101101001101111001100111011000110100111011011000000010101100100001010110010110010100111001010000110110001000111101110011001010011000110011011100000001110001101111111010000000111010111000011111110011110111111001100010110001101111001000101100001100100110000000011011100110100101101100010000000010010010111000011000011010010111111101010000010110000011011101001000101010000010100100011011001110000100001010101100000010101100000000110010000101001001110110000001010010000000001001110000101101110111101000011001010001100010101011001000111010101101000011101011110010001010010110111011010011101110011010001111010010100001001101011110001000111011010100010011010101001100110111000101111100001111100010111110101101100110111111111100001011101110110111110100000111111000110001110001011000010000010111001001001100111001100100111011001101111010--------- +1011111001001001110000011100110000001111010001101110011110001110101000110111010000011000100010000101100001111010111111001000001100100101010110100111101001110001010110111000000111001100100001001010110001100011010000000010101000110111000100010111010001001011100100010110110011100000011011011101000000010001101011101100001001110111101111110100001111101011010010101011110100100011101001010110001010100001011101110001100011000100111111100111100010110001101111000011010010101011111000110101010010010101001110110010110011110010100011110110011001001010000100101110101110111010001110101000110001101010000000101100110000110111110110011010110010001111001101010001011111001111010110101111111100010010100110111110001000000110010101001001110000101100011100001011011011111011101101110011110100111010001101011101011001100000100001101101100110110000001111111011010011101100010011000101110100001110111010110101101101110100110000001011111010101111100010010010000010101001110010110000111101111001101100011000101000010110100101110011111010000111010101111011110011100110001111010110000100110101100101100010010110000001010011001011101110010010010111000010110011011001001011100100111110101001010001000101011000100000011111110010111001000101000000100010000111000010100100100110101101011011001111000111001000100001000100000000100011011100001101010100000100101100001101110011101111000110110100011000101111001101000111000001011101111111110100011001100101101011010010010111010011110001111000100101001010001011011010100111111010011011001111110000101001000100100011001000010110011011001111110100101001110111011010100111010--------- +1001010101010101000001100101100101100000000010101110111100100110011011111010100001000010100010010010111110100000011010000111001100001010010011000111110100011000011111000111010110011110010100110101011101010101110111111010111000111000001001011010111000101110011011000111000001110001001010111100111100101010001110100100100000010001100000101110000101111011001001110011010011110101001010111000001000100011000010011010100010110000101011010101100011100000111010000001100110101010110001000000100100000101001100011001100000101100110011111000101010011111100001001010000100111000001111111001010110111110101011010101000110001000011100110001000000011110100001001001011111011101001001100001101100100101110010001001111001001000110010011100111101111001000110010111000110100010001001111010001001001000110001100111111001011100111100001001011111111110111001011111101100001011010001010000101100110010001001001011010101011110000101010011000111100100100010000000000011000100100110101001011110010111000110111100111000100110110010100010100100101000100110111101001001001000011110011001001010000010100010101101100100101111110010100001001100001100101011001110100000000101011000001101001011110000100011001101001000111001010011101001101001010011001101110000100001001101011110010100000001001010101111001101101011011101011001000010111111010001110111001101011011111110111011011100101001011000100111011100111101110101100110000110001011101100000100111110101100010000001001010111011110101011011110101000111110011001001100100101000001101111001001101111001110001101000001010011101000001000110001000001000011111001010011000000010--------- +0110011011100100100001000001100101101111010111001000000000111101100111100001011010101101100100010110100110111000011000010111001000101000011000101110101101100000000111011001011110101110100100110011111101111010100100100001101000110111110101101000110001000110001101110001110101111111101100010000010110000011101100010110001111000001111001110100110001110111010110111001001011000001001110010001011110010100000000110110011010001010011111111011000110011001001101011001010101111001010100101100000101111010100101011001111011110100100110011000110001100111000101101001011000100101010000100110111001001111111111110101000101000101110010101011110110010000111010000101010100101101101000111010100101000111011101110011010100110001110111101001011010110010110000001010001000011001100011100011011110111010011111111100011111000011111100001000000111001010100001111011101101011000001001100010111010100111110111000101000010111100001111000110110001001010110011101000101101000111100100010001001101010010001100101110001000011000100011111011011011110001101011010010110010110001001101001111101011110001000111111010001111110001101111101100001001110100100110110100010110010011110001110101010001100100111111111000001111110101011101001000100011011011110111111100111111011000110111001000001101010101111101001111100011000111011100110000010011000110110111101001110101000111010111100101110010000000101100100001110011100010000101101000010110111000100110011000000001000101111001101101100011100001100000001011001001010010111011000100100111110101100111111000001000000000100000101110111100101010010110000000101010010111000000000011100--------- +1011011110110001110110010110111100110010010111110000011011000111101010000010011100100110011110101110101011110010001110000001100101001101011100010101000111111101101111011110000100110110011100000100100010011010010011100000010111111011110111000111000110111010010111111111000001000000111111001101000011001101100100001011100010100000111101100111101001001001100001001001100100101110001001010101000111101001000000010000010010110111001001010111111011011010011110110110010111011011100010010000111110101010111010011111111110101001110101011000000011101110001101001001110100111101010110110000001010011010001011001100010110011010100010111000110110000010100001011100001001101001010110000111000110110001101101010100001010001001001111010001011001101010000011111100111111110100010011011110001001010011010001110001010011011110011101100100101101101111010101001000010010110111011110001011011101001100101101100100111111100101001111011001000110001010100110011000001010000101110000110101110010010011011111001101101100011100010001000001100101000001011001110000101110100110101010111101001000101010101101101000110100011001110000010011001000101011101011011100111101110110011011100010000001111010100000000011111100111011000111100001000110101001100000000011111101110101101010101000011000011011110101110100101110111111110110011100001011000001010000110011010100100110100001000100000011110011111101111001011111000011110101111111001000100011110110011111001000000110010110011011000111011111000111111011000111110001001010111000001111111000001001010011100110001111001100101101010011111001101010000010110101101001100011111100010--------- +0010111010010001100100001111001000010000100011011101100101011011111000010010101011111010000001011011010010000101101001100001010001101101000011111001100110010001000101111010110101011100100111011000110011000101101101101110001101011110010101101110011101010111001111010000011100101100001101011101111101111001010100110100000110100110110000101011010000001011000110000100010011010010011101100011010100101001111001000111110000110000011011010100111001110001011110100011011001001000111110101010111000111100001101010110111101000101100010011101110000101101100110011111000110011110010010100101001011110011100000101100000001010111100000101000111001111001001100100100010010000111001111000001011000000011111110111001011101010110100101101100101010001100100010110110010001001101110100110000011101001011000101111011110001100000001011011110001010100011100110001100101011011000111111000110010100001000001110000111101000010001101000011001001111001000101101000110110010011011001111010101001000010010011111111011101000101000011001111000100000101101110110011101110011100010111010010011101010001010100101100010001010001111101001000111100111011101000001100110011101000111010101011111011111110011000011001011111100011011111101110101110101011011011011010100010101101100000001100011111010010000101100011010001111010111010100000111101010110100000111100111000001111110101101000011110000011110011111101010000100011101000010010111101011001111000100110011011110101111100100111110111000110000100001001100000011111010010010001111001011000101101011101001101111001110010010011000011010110001010100111011111010110111100110100000001--------- +1101100100000100001100010011110100001010011000100001110001000111110010101011001111111001000001000100010011111100101011100001110011001111001011110011110000001001111001011111101110010111111110101110111001001101101011001011001010001110111010111001001010100011011111000010001011100010110001111011110011100110001011110100011000000100101011001001011111110010111001010010101011100110100111100011010001101001101110000110111011100000001111111010001101111101000100011010000010010000101111010011101100011011101001101101000111011100011100000111001001111000101100011011101010101000011011100001001011001100110111100100110001000111011010100001110001010111001000100100011100011001000001010110000110001010101111100000100001001011000011101011101011001101011000100100010000110011000100100101011101110000000110111010111001010101010101111000001001010101011011100101011101100001001101000010000000100101111001010011011110001101010100000001111110101110110000101010000000110100010001011000001000111010000101010001101001011010110001111101111000111000100111001001010000001001001101110010001111110000111110001111000001110011100111001011111011010001101110111100001001100110111101100000101000000111001010101011010110110110001001011110010001100000101100001100110111010110110110111100111100100001111001011111110010110100100101110111101110110110010010010110010110100100110010000111001110011010010011000011100000011011101110000101111000000111001101010111111110111100111010000110000011110111100100111000110110111001000101010101110100100001111111000001111100001001010111000000001101010001010111010111111010110101010010100111000--------- +ls160cwds +11100101110011001010011110100110011001010110010011111100001111011101100110011001111100101110000010011000011010110011111110010001000001111110110110011101101001101011111101110010101111000001111011000110110101111011010000100011000000010001010000100001111011000001111101001111001000001111001001110100000000110100101101111001000101001001010100100001100100101111110010011101001011101001100010111100111010000110001111010000001100101101110000110111011110100111010101000010110011011111011111001110100001010000000111100010011011101100000111111101001011010001000000101100000001110101111100000001011011100010000101101100100000001001100010101010010001110001101111010100000001110100010110011111010110011110110101011101101000100011011010010001101011011100000110110010001100011011111111111110101110111000101001000011110110011110111000110000110011001111001111111110100010010101010011001101110110010111101011011100100000000010100000110010000011010001000100111101101110111111100001100010111000111111010100110000010111101001111011100101110011010001100111011111111001011101001000001110111101100001110011110010010110011011001110100010100000000011010111011111001111111001100010001110101101001100100101001101110100110010001100101011011001100110110010111001001001001110111000000000111001001110001---------011101110101111001110111101110111100010001000001101011111001010101110111011100001001100010011111100110010001001110001110101101110111111100011011101111000101000111101011101100000111100110101110110010001101000001010110001101001100111011000011010010101010100010010001110111001010001001110101111110010000100101101111001000010010000010101011101110101000100010000100010101110000110000100100110100110000101001010001111100101101101001110011011101101010011011101001101100000010111100101011010111001100101011001001110011010100000010101100010101010011001110011100000000101100100110000001011111101101111001100001010110000110110010010111110111010001010000000001110111101011100100010101100000101010101111010000000101000111111100110010111100110011111011010011010101010001011000010111001111011011101010111010111010110011000011011101001101111000000101000000001010000110001000000110110000000010000001000000100100101101000100010010010101000100000000010110011111110010011000101101011111101000110101011001101110111111100001011011011100011101010001011001100011010001111000010001010100110100000101101111111100100100001000110010100000101010101010010111001111011010111001000000101000010110101010000000111100001010101001111110001100110110010011001011101111010010010111101100010011001000001010101001010111111110101001001011010110110101011110110010100101111101011111001001010011011001000101001011101110010000011001101110000010110001111010010110000010001110010001010011000000001111110011010110100100000111010100110101100001111000000010110011101010110111010011001110011000111111000110110011110000110101111100011000011010110011010000111111010010001010010110101010011010000000010000110010000010001010000011010010110100110010100001100110111101001110000101010000111010011100110101111000000011010000010100110010111110101101000011100100011001111101010011101011010110010100010101010101101011110000111110001100001100110101100100111110100011111001111100100110001000110111100101001001101000011001000001001010110001000000100000111101101000100110010011011010000011101111100100110001001110000010110110010110101011001011101010001100110101111101100000110110000010101011001000100001000010010010010110100011110100100000111111000110010001000011010110001000001010101011010101100001001000101101100100011000100001110011011111010001110011111001001001000100011000000101101110000111001000000101001101101011101100011011110100100000010100010101001111101100101100110010011001101110100010010001110110001000101010010110111110011101001110101100010000010100110100010001001100111000011111101110100100000110010010001011001011100111101101010011010111101001101101001011001010011100101100000010110000101111000001110111111010010101101100011001010110100010011011010100000110001111010100111010100010101011000000001110010001111100011101100111011001101001111100000001010111001110100010101011010101000011011111110001001010000101110101110100111101100000011101101100010000110101011111111100010011101100011110010010101001001111010000001101011011001000110111101011110111111011000111000110000001111100001011100001011010010100000001010110000000010011000011101100101111110010111011001101101111100110111011011111000101010111011111010000011001000010110001000100011101001111010101000011011101111010010100111100111101011100010100011100001100001000101111100001100001110000001100101110010011001011110000011010110110100011000011011010011001001001101101111100101001010101010011100000000101000001000111100010001111000001110110010111010011010000110010111011010111110111000111111110000011010110011000010100010101101000011000110001010100000010000110100101111011101000111011000111111001110101001111100111010110001111001011010010000110110000011010010011100110000000100110101000111001011100011000101001011000010000011010010101001001110101101010011001000101100111101000000111111011000101100000000011110110000001110001000000010110000001101101001010000101101111111001010011011001110110101010110110000000011010010000110100101100111111011111000100110101110110000010000001110110010110010011001101101011111100101010100100110010101010111100000000001011111100010001111111011011110000111111110000001110110110011101001111110110010100110000011100000011001101010000101111010101111010011100010101110111000001000100010100000000011111000011000010000001100101110111101010011001100111110110111101110110010100011100011101111001010101010000111010101110101111010010010101000011101000001011110011001100110110011100111001101000110011110101011100010101110100000100110000011110010111001100000101110111111101000010010010100000101011110111111111001111110001011110010011111011001011101101001100001100000000101100111110000000010011001100000010110101010101010010110000000010100000000101101001001010111001001011001100101000100100100101010011001000001010000000110110101110110101100011101000110111110101100101100011110000101111111000000101110110100000000010000100010100101111001000011010011111101111101100100010001100011101100010111010001001111011010001011101101111101011001101101100000110101000011111010110010110100001000111110010100011101011000111010111111111111101111111011001101000011100000110000001000111011101110001101010010110010110010110000101100101110010011011101011011110001100100011010001001010110100101000000010000011100001010111101010111011111010110111101001110101110011010101100001001010010010111101111011101111110111000111000101110110000111011011110110100000110010010100111110111111110010001001010100111000101110111110110010010010101010011010100011011110111010110101100011111100011011000010111010111000111101111010011000111100010010011011110010010100101100001110101110001111111010011100000101011011010101010001010010000101100111101001001110101000110101110111001001100110100111111101010011110100111010101100111001111010011011100000011111001111000101101010001000011111000110110110110100110010111011110001000111011011011111011001011010000010011011110101000000001011100111100110101010101101100010011110010000101110100010011111100110001110101010010010100010101101110001000011011000110011101111001110010010001001000011000001001001110101010000100100101111000001101001000111100100001111010000110001100001100111110010111011011100101101101101101001000100100001100011010010110111111000111110101001010101011111101001001011110100111011001100111010101000011110011100110100001011110100010000000111110000100011111001010001011111010101110111011100010001000011110010000011110010100000001000100000100010100101000000010000101000111001001111010111000111000010010100011101101000101111010101100100100110001000111000110101111001011000001101000100000100010111101001010000101010011011010000010100010001010011011010000010010100100010100011010111100011000111010100100111011010011010001001101101111001110011010011100001010010111011000010111001101001101111000000 +00100010100111101000010101011000111011111011000111001110101110110100110000101001001000101001111110110100101111011110011101000111100100001101110000010111110001101010100000001111100011111011000001010010011101001101000100001010000110001111111100001111111011010100101000011000011111011010001101111011101100110111101011110110111011110001110001000000110110010100100110101101101100110010010010010110101010010010111101101111010000110110001011100101101100100110010111101001110010100100111011100011100010100001100111010110010110101110100001111010000000111101010111010011000111100001001100111010110010000100101110101110100110000100101000100101011110111110110000110000100110110010001100110011110010011000101010110011101011110110110000011000010111010100001001011010100000100101001010111011110010010110100111111111000110011011010100010111100010111011010110111100001101100011101101111001011110111010000010000001101101110001010100111101011011010000001001010111100100110000111101111101111010001000001101101011001100000100000100101010111100000011010000010010110110111000100100111111111011010101011100111001011011011000001100111110111111010110000100110010010111100000001010100010010100010001000111001111000011110011111001110100100110011110010100000110110001001000001000001100101101011011110---------100001101011000111000010011111011010010100100100111011100011100110110111001011101010011110001011110010111011101001000110101010001011000001101011011101001101101101010110111000110110011110011011111000010101110110010001110001001010110010110101000011100110101100000000010110000101011010101010110001011010000001100010110000101100110111110110010111111000111011111001000000001100010000101100100011011101101011001001010100011100000101110100001001001100001000101010111110001010011110001101011101111101011000101011100001011001100100110010011100110011101110100001011011110101000110010000000101000111111111111101010001010000101101110100111101001111011001011011110111111010111111001011001110100001110111011100111111111111011011101100001111010010010010011011000101111110111101011000101011111111111101001000000100110110011001001000111101010000111101010111011101010000111111000010110000110100101110011110101111011100111011001110101011010000010001001001100101110110011100111101101010011100110011010000111101110110000111100011010010000100100101100001000001011100100000110000111111000000000100110001101110111011100000100010110111101111100011001010101100011100111001101000001100111110011010111111011000001110001111011010001011111000000010001000100111101000111010111110111011010111011011110110110000011001101110010000100011101011000001000100011100111100110010101110010110101111000001111111100011101011100010001001110000000010110001010011101001001111101010101100111000100100101101100000001110110010000001101110001101111100000101110100000110001100100010111100100110101011010000111111110010000000101110111010111101100100000110001000111010010110000010110101011011010000101010010010010010010001110110001111100101101111000111010111010100001010010010110001100001111101100000011111101101011110000000001011100111011111111111100101100010011001010101110111110001100101001100110110000011101011011010000000101100111001011110101100011111101100010001010000010010111011111000100111111001011110100111101000111100111010001010101011000011001111000000010100011011110100000000010011000010010011000010100110100010111011100001101111110110000101100101101001000010101101010101111011111100000100101110011110010011100101110010011010000011110011010100111010001011010000101101000101011101001010000100001011011110100000001111011011000010011110010100001011000100011100010011100000110011111011001100000001011000000111010110100110100100101011111001000101101010010111000010110100110110000010001111000100000111111010011101101100001010111111001011011001010101001110010111001101010011010100110101001011010100000011010101100011111000110000101010011110011011101000100111110010010011101110110100011101000101111000011100101100110111011001001111011100010101010101010011101100000110101000001110001000001010001111101100001101010100010000110101001100101110000100100000100000111011010010000000111110000000000100010100001100111111100010001100011110101110100001110000011100011100000000101111000100011100001000000110101111011010100001110100100100110101100010101000111000000010100100100000011110101111100010100111010000101010001100111000011101000010000100010101100011100101001001001110110100011001111100001001111001010001101100110000111101110100011100011100000010011001011101110110000100001001110011011110111111100110001111101101101000001100111110100001100000001011100000010011110011100001101001011010100110110011111100101101001001110000100100111110010000111011000110110101110100100100111101000010010010001101001111110001011011100001010001011010001010110010001111001101101001111111001101100100001000110101000010100110111000111010010111001001001000010100010010000001010100101110001010011011100100010010000000000001101101010001010010011010000010101101111111011001100000111110100011110000101111000111010101110110001000011000110111101000001011110011111000111101000010001010000101101001100001101001011000100110011010111010001110101010101100101000101100010011010100000100011100100111111001011101001111000010110110111111010001011111110111100000010101100101011001101101101000011001011101010110110010101000111111000011111101101011001111100010000011110101001101001100111111110011111010100110011000101110001110110101001110111110100100000001000111001100101001010011100110010001001011011101001111001000100001001110011111101010101010000000000101010000011000011000110010101010101001111011011101110101011000110001010011010010011100101010101101010100100110010000001000100001001111100000111111101101011001100001100100010011010001110111011000110100001111110010110010000011010111111000001101111111010101000100111001011111111010010100010101111101011111011101000100100101100010000111001100100111000111011000100100110001001001101101101100110101000001011001110001101000011111011011001110111000011001100111111000001111011101101101101000000010000000001100111011010010101000101010001111011100101010011010010110100110011110100000110000100110110011000001100010001111100101010001110001111010010100001000010000100100100111010010010111000101100000010101000001011010011001011001011110111100010001001000011101010010110101000100001111101111000111110101101010001001111011110001101100001101011011000001111000000010000011101101110110001100110011010110100000000011101101010000001101110010011010110101110000111011010110100111110011010101010011010101111010010101110001100001001011100000110001100110110110011000100100110000010001111101110100101011111100110110010111110000011110111011111111011101111101110101001101011111001100010100111110000111001011000011011110111011101101101100000000101001000111111101110100110111100111101001101010111011110101111110010001011111011000100110101011110000011001111111010111111010101110010110010100110110011111010010001110010101111101110110001110101101010011111101101000010111111101111011011010110101111101000011110011111101100000101011101111110100101110111101011011000000100101010110100000101000100010100010001001100010110001010000111100011100101110110000101100011111101100111000001010010100101011000001110010010001111011010110101011100011101010000101110111000010111100010000010101000001101110010010011010001010100101001011010111010011010010111001111111101011110111101010111010011111111010111101001111010000101000001011100010111011011110111111010000101001011101000110011101010101100101011100100100010011110010101000001100100111111101011010011101000110001001100001001101000110001001000110001111011111101101111000000001001110111010101010101000101101001011111010110101111011011011111100001010101010110101110100101000100010001001100101111010100111101100111000010000100110001010001100011010110000101010000011000000000001010110001010110101101001100100110101000010010000011110100001001100010011110110011111000001111000001110100000111001001000000010010110011100001010110001110111100100001111111100010111110010 +00110100000010010011111101101010111111101000000111110111001000101110100100111100010101100101101110111100011101011000010100011111100110101111001011100100001001010100100010111000001011100110100111101101110011001100011011101111010001011110101010101000001111100010111101100011000000101001000100111011000010111111101101001010011110010111001000111100001101111010110001101101011010010101000011100100110001100000010111110110110011111110011100001001010100000100101101110110101100111100010111111000001010000001101001001100001000011000001010111101111011011001000010111010111000100010111101111111100101111101010100000101100000011010101110011011101101111110000011110001101110011010101010011001100111001011011011101101010101110011110111111001101110010010101001100101111111001000011111111100111111110111011001011001101110111100111000101011111010001001010010110000101111110100100011010100100110001000100101011110010101101100001010101101111100010101001101011000100000101000011010100101100000001011010001100000110111010000011101101010111000101110001011110110011111100011110101101111100100011110110001011001101100001101001111111100011100001001001100100010110011100101101100100100100010100001000111010110000110101010010001100110101100100100000010100001111101111000101100000011110000000100001---------001111100011001111010110100010100010110101111010011111001001110001111111001000010100011101010110100001011011101001010101001111100010010000110101101010011110101010000000011111010001011101010011111010011011000100000100101000000010100000110101111001000101111110111000010001011100010000001001111110101010011111111000101100110000010010000101000100001100001100110110000100110101100001100110010011101000001001000101001100001000110001010010101010011001101101110000100011011011000001110000100001000111100111100010101111000010000100110010100111100111110110001111101100101010100011110011111001101010100010111000010010000110110101101101101110101000000010000101011110001000000011101111001111000101010010111111100101011001011100010101100111010000011111000011110101110101001101110000100111010100001111011100010000101010110101110010001001000011000111001110010110110101111001010000111011111101101101001100110000001000101001001101010111111010011111010001100011101010001111001100001010110011110111000100000011000100000110111101010010101010001101111001011010110100101010010111101011111111010101100101111101110000010111000100110001001101011111010000101100110100001011000101000000011111101010100101111011010100011101011010110100001011110000101101011000000010010111011101100111000000111101110001111111111101101100100010110000010111010000100101011100000011111011010011101101100000000100010000010010101000010101100011010011010010000100010011100011011011100101000000000011010010101101011000100100101110110110101111011000110011000001010011001010100101100110000010010001011100111110101000011001010010101001000001110101101110000111001111100100001110100100101110110001011111111011000001100001000110111111111111110110110100000110100111010011100101001000011001100101111110000000001100001001001100100011101110010011011011000011001001001001111100110011001011110010010011100110111010111010110110111100101011110001101001001101101010010111101011010011001101101111001001111000101111101100010010010101001000110010111100100100111111011100000011111001110010001011111000000010110001101101101000100011010110111100001000001110100010110100011100010101010100110110000010011001100111101000001100111111010101010100000111111000011100010100110000111001010011111011110110111100001111101001111110000110011100111010010010101110100010011010000101011001010101010110011011000110100000001000111000100101100000110010010100110111111011111110111111010100011011100011001001000001011011111111001111110010000110101101011110001001111001010010101011001111001000101101001110010110010110111100001111101011111011001001111001100010110100011110011010111011010010101110000111111000111000001010111010000100110000100001010100010010011101000010000111101001101000011000011111000000101110110000100000101010110000000101000011011101000100100111000001001000011000001111101111110111000100111001011101100110010101110101101011010100000101010010101000101011110010101111010000111100000000011000011111101011110010100001101110000101010110101110111000011100110110100101101111101001111000011110010100010011111111100110000111111110001011100011110000010110000110101110000100011000011101011110110100100111100111110111111110010111010010011011010010000001111000000001001100001110111010110000011100010010001111111011110100101001010011000000011001011110101010010011111011001100000000110001011011010010000101111001000100011001101111000110011010111100100111001001101001010001010000010011011001011110110011100110000011110100100000110110100111001010011000100111001010100010110011000011011011111110111111101100111110001011111101100011111000011100111100110111111001110010010000110100100011010001101111011110101111011110011101101101011110101111100111011000001101011100000101101001111010011101111011001000010101000001001101011001110010101010010101001010100000010100110111111001011000000001010110000111011000010001001001111100001010000101011001110000111011011011101010000111110111110010110010101000010010111011111001101111110000101010001101111101100101100000010010010010011111010011001010111100011001101000101101010001010001001011100110101000100011110010100110001111010001001010100110111010100100010001101110100100001001001100110011000011001010100001000110010000001100011011001010110110001010110100111001010010100010100001011110110001000010110010000000101010111111011000010001001110111011010111010011101010010011000100010010100101011010110001100000010101010000101000101110111101011000111100111011100101000010000110101100011000100011111111010001111100101010111101011100100001000011000110101110111000011010100011110000100111000110110001010011001011000001111010011001011010101110010001001111110110011100101110100110100110000110111111111001010101100001100111010101000111100100100010000011101000101011100110010011010100100110001011000101001111000100010111111111001110111000111000001110100000001110011101010100001100100100101011110100111001101111100100010111110001101000010101011000100011000001000100110101000011000000010100101010010000010010110010001011011100010000000110010110110111100110001010111010110100000101101100011001110101100010100010010100011101011100011111011110011010110110110011000101011001111111000100000000011010101100010100110000111110000101001001000011110110000001001111011011001111111101111001101001001101110101011110100010101101000000011000110110111000111111010110111100000100001000111010111000011010000100000001000001001000000100010001000111011011010100100011000111000111100100011011110001001001100110011100011011001110110110101000100000000101011001111110001000101100000011001101100011011111110101011011010101100111101010000010101010101101000010101110001010011010111011001001111010010111110101110101011100101001100010000011011111111100101001110101001011000110001100010001010100111001111010010001101110010000101100000011010110001100100001100001100010010111011101011110100110100111110011010011101100100000111101101111010110100100100100000000000001101010110110011001101010110111001100110111001110100101000110100010000100101100110101001011110011110011111100011001011101101011101110000101011100110010001110010000101101010010011011001110010110100111000111110111000100100001111110100001110001110001101011101110100010101101111101000000100101011110100101001011011110001010111111111010010010001110001001110010111000011100100001100001011001110100100110010110100110000101010000000110000100100110000110011100000010110001101000011010111100011001101000011100111101000110001000001110110000100111100111001000111110111011101011010010010001111111011100101110010010110100111111110110100111110000100110000010101011010101101110100011101000001001011110101110111010001100010000110110101000000000100101000110011110010101010011011110101000111000011011110011000100000011011111110101110010110100001000001101100000101000111111000110101001 +11010001011101011001000001000011011010011001110111000110011111111111011111110000101001000011100100011001101101100100000001101000001111001100010110111100011010011110100001111010011011011011001011111101000101010001000111011101111111101111100000110100100111100111111111010110011001100010000011001001001001110110100100111010001111011001111110010101101001001110110010111100000001101011001001110100111000100011011000000111011101101011111101111011011101101001101111001100111011000110100111011011000000010101100100001010110010110010100111001010000110110001000111101110011001010011000110011011100000001110001101111111010000000111010111000011111110011110111111001100010110001101111001000101100001100100110000000011011100110100101101100010000000010010010111000011000011010010111111101010000010110000011011101001000101010000010100100011011001110000100001010101100000010101100000000110010000101001001110110000001010010000000001001110000101101110111101000011001010001100010101011001000111010101101000011101011110010001010010110111011010011101110011010001111010010100001001101011110001000111011010100010011010101001100110111000101111100001111100010111110101101100110111111111100001011101110110111110100000111111000110001110001011000010000010111001001001100111001100100111011001101111010---------111111010011011101100110000011101111000101010011000111000111010001010101101000110001000110001001000011111011100110111001001111011011001010101101110101010111011110001010001001000000011010100100000101100111000101011011001111010001010001001111111011111110101110101111100001010110100001010011000111001100101011010000101110101110001111110010111000010101111100110010001111110100010011100100001011000110100000110110011100101101100011100110110101010100010100111011100100100010111100000001111111111011100011010110101111111000011010101111100111100011010000111000110001111111011001100001111111000100010111101011010010000111110011110011111001011111110100001010110001110000101101011011001100001001001011100011010001101000011011101110110110101011110111100101000100010010100100111100011001111110100010100100010100011111010111011100010000111100000101110111101110000011011101101010100111111010001111010111000011001010101001110011001000010011100011110110101111110100110010101101101101110110100010101101001111001011101110010001101110100101010110100010111010000011100101000010011100010111010110110010011100001000101101001100001100111110010011100010101110101100010111101111010100101101101101110010000101111111001110000110111010010100110011000001011110000110100011011111011100000110110110111101111101011001000001111010101110001010001001100110100101110011000110100010001000100101110010000101010010010000011000001111011110110111000000110001001101001111000001100111110011001110101001010000001100111001110100001101100111100101001011100101101101000111100111110101111011001100111100110000011011101010011110010110001000001001100111010010011110110010111101110101111000010001011100011000011000100000010100011000011110110101101110100011100101011111001001110110010011110000100100111000010110000011011001111101011101100010111111001111100111110000010111010100110011000010001001111101100110001101100001011111011001000011001111111011001111000110011001110011100100101100100101100110110000111111001110001011011101001100100000111010000001001111101011000001100100101101101000001110111110010010011001111000000110001010010111001101010110001010110010001000100000000100100100111111000101010001000100001001110000000010111111001101100110100011100110000101000000001010110100000001000101001010111110110011101001000101001110001001111011110100011111001100001110011101100110101011000101110111101010100000101010101001100011100010000001010110101011010011100000010111101010100011000011011001001010011000111101000101111000111011111001100100010000010011011111111011101101100001010111011101101101001111010001001111100101100001000010101000111100000010010001011101111001000100000001110101001000010010000011101010011000111100000110100110000010111011001110100110100011111010100010110010011100001000011000100110110010011100100000110000010100111000111000011011011001111101100101110110000011101000010000000010111111110001110000010000101000011010001101000000000110100101100000001011001000001010000101110000100010001000001011010100100010001101010011111000000000011000000110111001001010101110111111001001101001100101111010110101011000100010100011111111110000000100011100001000001001110110100101011000011111011110101101011001110111111000011110111011101001011000000001000100011001001110011010100010011101011110100010110111101011110011110001100001001111110110000101000111000011110111001011111100111010110001011001101010011000011001000000100001011100111101110010110001100011100000010111111000111100011011011000111001111111010001101101100101111010111011100111110101000100000101110011000100101000010010111011001110010011110100010101111100100101101100010001101111011000111000010111111011000011111010101111110111111110101110100001011011101100110111111001010000110000010110010101100011011000000110010001110111111000100000110011100101111011010000110001100001011101110000000010100110000010100111100110110100110000000110111011011011000100111011011100101100000101001110101101011100010000010001100010100001101011110000001010011001011010110011101011101010010100011001110001100100000110011000101011100011100111101001001100001011110111001100000100011011000110000111000110010011101000010100111111110001011101000010010010010101101101000111001110011100000100110001110010001010100100100010111111001101010110111111110000101001011111111001101010110110010010110011010101101010010001100100111111100100010111101010111111101111010010111111100010010111010011110111011010001110111000010100101011111001001111100110010010001111011010100011101111100011000011000100100010111101000100110010010110110101111111000101110010101011011000011001011010010000010100010111110111110111010011101110101000011001010001011000100101101100000100000111100000100001111110000100100011011101110010010100000011101111101011110101111110001011111100010110000100011011111100100111010110001011101000000101011001111110000010111110010110110100011011110010100010001011111010011010000101001000111010111010001101111010101001111010101000000101001101111100100001111101000110111110101010100101101001101110010011011000101000111011001011010101011010000111110001101110111100101101110110000111111111010101010111001011011000010011000101100011111100001010111101010011111100110000000010011010101010100001100000101101111110001100000111101011110111011011110101000000010110111000000000101101001000101011111101101111100001001111100011011001110101001110001001110001110011111100000011111110001101010000110101001000000011101101010010011001100110100011101111001101111001101101000000010101110001001100000100110001110101100001010110100100111101110110100100100111101110000101001001100001000100111101011110111001100001101101010000001000101011000010101010011011011111010100011000101110011000001011001001101111110110111111111110001111010000101010011011001011001111110001011100011000010110010011010110100110011110100101000011100100101000000101100101111011001100111100100101111101011110001100000110100001010011101001110001111101101101001100001000000110111010100110001010010011101000011000110010101001100110110110001001111110110010011010110110111100101110010111001010010100111011111001110110000100010101111000010110011110010110101001100001000000001111100101010011110010011111111111111100110001000110111001110011010000111101001011001010110111101000100110101001100011100010101110000010010110110011111110100101001100011010100001100001001001010000111111001101001011010001111100010101100000111000110110000101001100101100101101000111001000000101001000110000101100001000110110101110101010100011011010010110001111001100011101101110001100001101110001001010111000000111001000010110111110100100110101000110100001011111100010111111111111011100111010101000110001111000010111011001011110000101100001111001110000010111101101100011110101001010011101111001101101001100011010001111001100011000110010 +01110111101111110100001111101011010010101011110100100011101001010110001010100001011101110001100011000100111111100111100010110001101111000011010010101011111000110101010010010101001110110010110011110010100011110110011001001010000100101110101110111010001110101000110001101010000000101100110000110111110110011010110010001111001101010001011111001111010110101111111100010010100110111110001000000110010101001001110000101100011100001011011011111011101101110011110100111010001101011101011001100000100001101101100110110000001111111011010011101100010011000101110100001110111010110101101101110100110000001011111010101111100010010010000010101001110010110000111101111001101100011000101000010110100101110011111010000111010101111011110011100110001111010110000100110101100101100010010110000001010011001011101110010010010111000010110011011001001011100100111110101001010001000101011000100000011111110010111001000101000000100010000111000010100100100110101101011011001111000111001000100001000100000000100011011100001101010100000100101100001101110011101111000110110100011000101111001101000111000001011101111111110100011001100101101011010010010111010011110001111000100101001010001011011010100111111010011011001111110000101001000100100011001000010110011011001111110100101001110111011010100111010---------111111010001111011001001010010110000111000111100100000101011101100111010000111011000011110000111101111101001101111100101001111010111111111010101111001101110111101000000011101001110111100011100100010001101011000100000111011001011011010000100100001001101011111011011101101110010101011000001111101110101010111111010101000100110111110101110111000010000010000110111100100010111010110101011100000111011010000101011110001111101001111001111111111101110100000001010101000001001111000111011111000001011000111100001011000010010101001001000000111100100101111100100111101101001001010010100101001101001110110011110101010010101000111111010001010110000010111100111111010011001111001110100000111111001000010100111001111110101011011100100101000100010010110110010011110000101001001001010011101110101000010101000111101011100010110111100101000001010110100100101101101100110111101110010001001001010001000110000001101111111111110011011110011001011011100110001000100101111011011010000101100100010001010111111011011000101101011001110011101000101011000101000110010111011100110011011111000110001110110000101011010110000000110111010001001111000000101111110001111111000011010001110011100110001001101111010111110101010111100010011000101011010110110010000100010111100010000011111100100110001011101100001011011010011001110000010110011101010010001011001100110100111011100011010000111101110000010010010011111000110110101100010101011010011000010101000010111010010000000110000010011101001101101000100011100100110101101010010100010001101100000001000100100101001010111000001001011110000000001001010001100011111000001010010101011001010000110010101010100111111100010000110011010110001100111111101101101101101101011001000110101100010111001100111100101001011000001110001111001111110111111000100000001100110010111111100111101100100011111000100011000110101110000000010111111111001110100111000100100111000101101011110001110111011010010111001100010111010111101001111011111101111010100010101101100110111000110101010001100101011011101101011100010010110011000000000101001110101101010000101110011100100101101111000001111101100000010011101100010001110111001010000111010000100110110110100000011010111100101101000111101011001110011101101010111000010111011110000101101110010011101001110011010111011100101010000110011010100001010111010001101011011001010110001010011010011000100101110000101010110110011111011001011010110111100010000010111010001101110001101010110001111111110011000101111101000001000100011010010000110001100001011000111101011111110010110001000110101100101101101111110101110100001111011001010101011101110100011101110101100001000110100101111100001010101000000011011011100000001001010110010111000001001100101110100000001011101111101010100100100001111011001110011001000101011110110100110001100011110001001110001000000100000011111010111101001100101101010110100000000000101011000011111001001011011110011000001100110110111010110111010010010000100010011111000000101000111000001011011111011001000100111000101101001011101101000010010110111111100010011111000001101111010011010010110000101110010010111010111011100100111001000000010000110011011000101100011101100001001011000001100111000010010100010110110111010101100001100101001001010000101000110010110101011000111001000010111000000111100001100001101100001001101000011111111011101111000001101100010101000010110001011000001111011010011101111111001101010101010111010111110110110000110010111110110011001111011000101101101010010101001001101010110001011111111100010110101010111000100001001101110100011001010101011111110101001001100100000011101011111001000110000000001111011000101111010011111000001110100000110000001011100011111011110100010110110101101110110000100110101101100010000111101010011101110111001101000111100001101010000101111011011110100100011011110010101001111011000111110100010110010010011101101001011110010111100001000000000000010010100010010011110110111100010000000111001011010010111111000110010011110110001101111100111000011010100010011111100000100101000001110111100101000101010010111110100110000000100010101000001011101111010111001101100011110011010110100011011000100110101010010110001111010011001011101110100111111100011010110100011001110100010111010011101000101110011010111001010101011110101101101001011000100000100010111100101110101010101110101101000111101111000011010000010111101010101000101001010000010110110101010001101111011111111010010110101100011111010000000011011001111000010010000011000111010101101110110010011011001000111000100010010101000100011110010111111101100011011001001110000010000110100010110111111111001001000111100010101001111010010001100110100111111110010110101111010101011101000010110111111100011101101110111101110011010011101100111101111000101100100101110101010110111100001001010110110110101001010111110001110100110111000001001110110110111111001101011101001001010100110011100100011010000100010011011011110110010011010111111001101001000001010101010000111111001110010101011001111100011110100101011010001011110111111110010011011010101001101100100110110100000000101010010001101110100001111010000110001111001011011000111011001001001111011111110011111111111001111011000000100111110100101110111001000010101100000101110001111101000100110001111011000110011100100000001100001110100010001010101010001110010001100101111100010011010100110101000110100110111100111111010111001010000000011111011100100100010000001000111111101101010100000000011011010110000010010100101100001011001111110000011110101011011001001001010110110111000010010110011010101010011100000110001011011000010101110010100010111011110001011111111101101101111010111011000101110001100010101110100110001001111111110001110110010101010101010110100001001000010011110000111011110011010001110000111011001000110011100110101100001001000111110010001111100010111110100010010110001001101101011101101100000110101110010110001110110011101110000011101101011101010001100101001110011110111001010100001110001110001100011110100111001000101011100011010100101111111010110000110110010100111111010111011110101110110101000111100110010010001010110011000110111000100101100000011110100001110100000111000010111110010110111000101010100110111111101100111011110000001011010001000101110000100110111011111011011111101110010110001001100000010010101110001110100101110001110101000100111000000001110000100100111111010000101001101101110001011100010100010000111111010100011101000001001011101000100000110101011111010111000111100000110100011111101111101101000001010000001111101011001100000000000000110111101010111001110111110101000010000111010110101101011010001110000111010100100010100000000101000101000110010010111101011101010111111000001111010000000011000111001010111010010101010001110001000111101000101110011110110110001001101001110001000001010010001111010110101110110001011111111 +00010001100000101110000101111011001001110011010011110101001010111000001000100011000010011010100010110000101011010101100011100000111010000001100110101010110001000000100100000101001100011001100000101100110011111000101010011111100001001010000100111000001111111001010110111110101011010101000110001000011100110001000000011110100001001001011111011101001001100001101100100101110010001001111001001000110010011100111101111001000110010111000110100010001001111010001001001000110001100111111001011100111100001001011111111110111001011111101100001011010001010000101100110010001001001011010101011110000101010011000111100100100010000000000011000100100110101001011110010111000110111100111000100110110010100010100100101000100110111101001001001000011110011001001010000010100010101101100100101111110010100001001100001100101011001110100000000101011000001101001011110000100011001101001000111001010011101001101001010011001101110000100001001101011110010100000001001010101111001101101011011101011001000010111111010001110111001101011011111110111011011100101001011000100111011100111101110101100110000110001011101100000100111110101100010000001001010111011110101011011110101000111110011001001100100101000001101111001001101111001110001101000001010011101000001000110001000001000011111001010011000000010---------111111011010000000011011000001111001110100100101000011011111110000100101101010101101101110101010010110000010010100101111001000011110001111000111111000000111010011101100001110110011001010101111000111100111100100111011100001111100100110000100110000111110011010010110011011001000110100000001100100000100110100001010111100101000101110101100101010011010000111111111101011111010010111001011111010101001000010101010110110011111010101001010001011110001111100111111011110001110001101001000100010100000011101100100110011100111110101000010001010111001001000001111000000001110001100100001111111010011001101100101011011011001101000101110110101101101011011100010111010000010100001110000111101100101101110011011000000011100001101000111011101001100110111011000110000111101011110111111010010000011010011110111100010010100001100111101110101010101110100110000100110010011001110011101100101100000000010110000111011110101100011010001000110101100101100110010011000001100010111001000100000001011010001000110101101111001110011000001010000000101111001000110010010010101111001011110010101100111111001000100100101000010101010010001000010110110100101111110000100110000001111111000000011001101100000110111000111010000101010110100001110111110100100010110100110101110111011100110010010010010000110100010011110101000100111100100111111110001001000110111011101011011000100000000010101011011100111100000010011010000011110110100100000110000011101000001000100101000101000010001100001000111011010111011010011000000110111100011001101110110110110100101101111110110100011010100100000111001100110101110110101111111001101011110110110000110011000110110100001111111011001000110111100000001100110101001000101100001111101111010110011100110101010000011010010111101101000100001001000011000101011101010010000111011001111111101100011011111000001111110011000010010111010000000100110111101111000110111110001101111111111000111000000000110101011010011011010010000101100010011000111010101000101000111001100011011010010001111010110111100100011010110000101000110011111111100011100111011110110010100010100101000110111111010000011110100110010111011100100110111101011011001111010001011101010011001101010000010111100000100001011000011111001110011110110010101000001111111011010000110110101111111001001100010100001000000101101001101011001010110011011100011100100110110000111000100100000001101011111111010110001011000100101111011001000101111011011011001011110100110011100111000011000111010111001011010100000111100111110110111011010000001101100010011111000001010100111000101111110111011011101110000110001110001100110100110011110001101110100111000111010100111111001001111010000101010110000100111000110010111111011111000111100011001100110001010001111010101100100010110000101111101101110111011010110110111101010011110111100100100001011110001101001001111010000000100100110001101111110000001001111110100011101010011110001000000001010000011011010100000011011101010000001011111011000101001101011111000100100101100000001111000111001010011001010000010010111001111000001101011011110000111001011110000011100001110001001011001101111101110000110100001101010111010101100001100111110100001000100110111100000100110110000011101110111001110000010000101011111100000100111101100000010110111011100010000110101101011111011001000001111101001111100011110100010101111001110001101101011001110001011011010011000011111100001101001100100111111100001010010001100000111001011101000110100001000001111010000101111011101010010101110010100000110001101100010110111100010010111100010000010000011111000001001000011100100110001100100010110111000100111100001001001000001101010001101000101100001101000010101001101001010010101100110101001011111111100100101010011101011000010010110000010010000101110101000110111110000101100101100000111101010000110110100101101011110010000111011111011000101000110101001111001010110110001010100000110001011000000011011101110101000100110101111001001110100101010000010011001011011000100111011001010110010001100010001000110111110000011000111011001110001111000100111111001101111111010000011001100010100111100110011110111000010000010001100111011110111111110101001110010111011110110010110010000010100011110001110110000011011101001101011100100101111011110000000011011100010010001110110001100111000110011010100110110011000100111110001111100100100001111110100110001001110000101110111111100100111010111000111101100111001111100101111011100011111101111011000101001110101111111111101001010101100100001010000000000000110101001111011011111111001110111011011011001101101011000001010000010101101011011100010011000100001001111110000110011001101010000010111001010100001101001001110001010011111000110001101011010100010110000111011111101010110111101000111010110010010110111111000011001100111100000000100000101101000101101100101101101001100101111000101101011101111101110010100110001010101111000000001000010111100101001110001001110100100011011100010110010110010010101010101110101001001111100010000101010101001110101011010001111001010011010101010100001101000100100110000100100100100101001110001111011100111010100101111101000000000101000111010011111010001100000111010101010011101001111000110101000100100001010011010001111101001011001000110101110100110010011110110011101001110111010100010101000110000001100011101010011010001111001000010101010101101010000100100001111001001101010101101010000011101010100011010100100101111111111001011001110110010001000000011111110101010101010101001011101011001101110010100000101001100011000101110011110111110101011100000100100101000010001101000100101110000111011011101001010001000110011010010010010100101100110001110011010100000110011100100100110101110110010100011101111010011100100100111001001110110101100010101101001000101111100110100111110000111001100010011000111010101110010010001100101110111001101001101011010001001111001100000001111010000100001011110101011000000110110111001010000100111110011101000110011100010010001001011001100101110001001010011000011001010101010011110111000101011011100101011011101101001000100000000111110011110101101110000101111100000111000111000110101001010101010111011000001001101001000010010100001101010101001111010010110100100001011001111110010111010011000011010011010111000101100011011011011001000111100001111101101011101100011000011100100100010101100111001110110110001111100000111000101100000101011010100111110110000000010010101001001100100001010000010000010000110010101101110000101000100101101000101000110101111100001011100111010011110000010101000101110010111101110111010110011111111111001110001001011110001010110111000111111000011011011111101010000111010000100110110100000001010111011010111101010101100110001010011000000111100100100110011111100101100010011111100100101000010010100011010011111100110110101010010101010110010000010111000101001100001010010111100 +11000001111001110100110001110111010110111001001011000001001110010001011110010100000000110110011010001010011111111011000110011001001101011001010101111001010100101100000101111010100101011001111011110100100110011000110001100111000101101001011000100101010000100110111001001111111111110101000101000101110010101011110110010000111010000101010100101101101000111010100101000111011101110011010100110001110111101001011010110010110000001010001000011001100011100011011110111010011111111100011111000011111100001000000111001010100001111011101101011000001001100010111010100111110111000101000010111100001111000110110001001010110011101000101101000111100100010001001101010010001100101110001000011000100011111011011011110001101011010010110010110001001101001111101011110001000111111010001111110001101111101100001001110100100110110100010110010011110001110101010001100100111111111000001111110101011101001000100011011011110111111100111111011000110111001000001101010101111101001111100011000111011100110000010011000110110111101001110101000111010111100101110010000000101100100001110011100010000101101000010110111000100110011000000001000101111001101101100011100001100000001011001001010010111011000100100111110101100111111000001000000000100000101110111100101010010110000000101010010111000000000011100---------000110111011100111100011101010000001000110110100001101001010100110111001100001101001010011000110001110110100100101010101100010000010100110110111010010111000011110101011111001001010001010011011101001001111101010010100110101000010001111101010001000101000001110010100000001110100001000101010000100101011011100101111001100101100001111001000110000101111100000100111011001101011001101110011101100100111011001100011011100100110101100000110110101010111101100001111111100011110011101001010100010001001010110011011110011001110001001010010001111011000000001011001101111011001111001000011111100011110001011000110010111001010110000000011110101101111111110110000001010010111001101010111100011000110110101000001100110000110000011111001111100111111011011001101101101001100111100000000011101110100101110111111100000110000011001101000010011100001011010000101111011001111110111101100001111101000110011100111011101010001101011100111111101010010111011010100011110101010000111110100010011100110011011111011001111100000000001100110001111011010100111101010000000101110101001101011100001110100110010111011110000001001101010110010000010100101010111001010100011010110000101001100010110111010010111000111111000000001110000111011110000100110000100010000010110110001011101110010001101001111100011100000001001111011000001111100000111111111111110111100111000011000011110101100001100000111000000101011001101100010111010000100100011110000110111101111010011101111010001100101001011001000010111101001001111101110111100001001100101010111100011110011001001001011010011100101100001010110101110110011100100000011101101000110001001011011111101000110100000101001111110001101100100101101111101000011101101110001000111110101111101000100010101010100101111010100111011010000001110100011011010001000001100010110100001100011000000111010010111111010101011110010100010011111101110101000010010110001010111111011101101111010100101101110100001000010100101000100110011011110011101111110000100000110111011000110011011011000100001001110100001011110110000010111011111000010000000001110000111111001011110011110110110011100110010010000011010101111011111011010011101001010101111110100100000010010011000101110001110000011001010000100010100101110010000111000111001101000011110100010101000001101001010100010100111001011001110110111011101110010010101001111100000001110010000101010011100110010100111100000010111101110011110111010100000001010111100000110011101010010110010111111011100011001001111110110100001001110111010011111101110101111101001001011011101111011001111011010101110010111111100000101111101011010101011000000111101001111011001101011000110111001111001011001101010011111110110110010001100100010111010110111000010001100100101110111001010110001010110101000010100110011010110010011010010110101110010100000011100110001011111001010100101100011011111101111000001101000101011100111101010100101010011110100110001001101001110110011110001000001100110111001101100010101110100011000001110111010111000011111001001100100111000111001011100110001111001101110001010111110101101101100000101001111111110110000101010111101111011111000100000110011000000001100010011110100011010011011010100000101000101001101001111111100100100100001101111001000010010011010010011011010000101101110011010101011000000011101001101010010011011110011010011000110101000000010011100001010000010111010011010100101101000011011001101110111010000100100100101010000101010111100110101000010001000110101001010011011000001011011101100011001111010101110010100000101001110101100111011111111100011011011001010000100010100100001111100000011111000110110100111100110100001100101011010000001100010110100111010010110101110100010111010010000111001100110011000100010010111001101010000100100010011111010011100110010101101110001100110110001010010001101110000011010010000000101001111011100100011101001001000011011100011011100010001010111101000110000001000110000101011100110000001010111011011100111010111000111001000010010000010000101000101011101011011011110010100101101110110000111011111101000110100010100010101110100000100111011101010110011110010111000000101110010010001011000101010000000001100000000001000101011001011101110010110010110001011100111001001110001010001011011001011000110111110001000001000110010001010010001101111010011100011010010101100010110110001010011100010111110011111111100000001100000111001011111110111111101001101010010011111100110101100110010111010001100001001110000001100010000100101100100111001111011001000110010100110000000011010100011000001100011101100110000110110011000001001001011111000000100001101100101010111101110011100110001111110111100000101000000100111011110011010100100111100011111010011000001010100000000100001110010000010100111100101000101110100001010111111100001111110011001110111100001010010101101000111010111110010111010001010111010111010010001010000010000101111000000001010011111110000000010110000100110110101000101000000010010111100010101011010001011100000010000011011111000101110010110000101110111100000000111111010111101110101101000010010100001010110011000101110110000111001110111111100001001110000111101001111101001100100100110101001010010110101111011111110001100011010100111101100111000001110101001011001110011001110000011000111000110001100010100100101001011101110111000000011110100100110100110001111011101010100000100101110011000110100101100111100111101001001100100110110000001100110010000000110000100101000111111110100111101100101111000000110011100011001111001101011010000010100000101111100010000111011101010110100010110101101010100001101010100010001010101011000111000100011100111000000111010000101111000001010100100100100110010011001101001100111010101010011100011010010011101110011000001000110000100001101010001001010001100110000010110000010001000101011010111001010010010000101001010011110001011110011110001100110010001010100111011110011100100000111111010100101010100100100010001010101011010011011010111001111100111110000101110010001100101011010010110110110100111101110100100010111100010111011001101010001100110101100111101100010100111100011010110111110111000010000000110110011010111101110100101000010101010010001101010111011111110101111100111100001000001111011001101000001001100111011000000000010101110010110111001000110111011010000111100010001010111011010111010100000010000110010111001110000100001010111001100011001100010110111001011111010011100111110100010000101000010100011011111000001001010110010000000011011001011011011111101001010101100101110101100010000101100110000110001110110111100001010100110000011100001110111111100011100111011110111000001011101110011101011011110001010101111000100011001111011010010010100010101110100100111100001000100010111001010100001100000010111011111000100100011100110000100000010100110100100110101111010111001001111001100101101110010011111001101001001101110 +10100000111101100111101001001001100001001001100100101110001001010101000111101001000000010000010010110111001001010111111011011010011110110110010111011011100010010000111110101010111010011111111110101001110101011000000011101110001101001001110100111101010110110000001010011010001011001100010110011010100010111000110110000010100001011100001001101001010110000111000110110001101101010100001010001001001111010001011001101010000011111100111111110100010011011110001001010011010001110001010011011110011101100100101101101111010101001000010010110111011110001011011101001100101101100100111111100101001111011001000110001010100110011000001010000101110000110101110010010011011111001101101100011100010001000001100101000001011001110000101110100110101010111101001000101010101101101000110100011001110000010011001000101011101011011100111101110110011011100010000001111010100000000011111100111011000111100001000110101001100000000011111101110101101010101000011000011011110101110100101110111111110110011100001011000001010000110011010100100110100001000100000011110011111101111001011111000011110101111111001000100011110110011111001000000110010110011011000111011111000111111011000111110001001010111000001111111000001001010011100110001111001100101101010011111001101010000010110101101001100011111100010---------110000101100011110001000101000110001111100111111101110111100001001000101100100100111010111001010011110110111101001000100001011010011101011001000001001110110010110001010100001111001011101100000101001011101100111000111011100100011000100101111001101111100110001111101000101000111000001110111001101101101010001000110000000000010111111101110111101000011111010110100100110001010111011101110000011011100101111110010000101111010001001001111000111111010111111011111001010100101101111110100010001000100111100111011111001110100010111111101010011011100100101010101011011100111010011101101010001000010010100001011110110111111011010001000110011011010001001101011011100011001001100111110110001111101001001001110011000010111010001001100110001010111100010111001001000010000110001001000010110111110101100100101111011011101101101101011111010010100001011011100010101001101010000011100101001111111100011011010111001010101000100110000111010111110001110011101111111010110011111001010000011111010010111110000101110010111100010001010110111110010111101110001001100100110000110111110111001100001010100110101111110001000111101010111010101101100100010111111100110111101110100010000110011001001001100001110101010001111001111110001100101010001100001111110111100000010111011001000001000010101010101111001000000100100101111011000000111011001010001011010010100000001001000010011111100111010101111110000011100011000111001101010000110001010111010101011010000110010100000001111000111011101001101011100001010100101101111001011010000111110110001100101000101110111001010001011000011101010000010100000111100001111101001110100101000111000110000001000011110100111100000111110000111000110001100000001000010100100011110111011001000000000011110001100100000010101001101010111110010010010011011100101111010100101110011000111111110101111110100001010010100100001000111111101001000010000111011010010001000101010101001000110010000001110001100000010010001011000001010101001001000110001100000110010010010000110010001010010001011000100010001011000010101000001010011000101000110000010110010100011010000010011110100011011001100000101010110011111101001100111010001100011111110110011001110010100100110101101110100110111010010101001111100000110011001000100000111100011100010010010011111010111000100100110011101100100001011110000001111010111001110000111100100110011011011111111010111110100111101001010111111001011101001101111011110101001011111100110111010001110011110111111100111001110001000000111000001110101011011001011011001101100010101010101011011111010010010110010110101000101101101101011101101111111011010110001010101101111101110011101000010010001110001011001001111100101110011011000010100011011011111010101110011001010100110100111000111011001000001010000000001010011001110111000110001000001100001100111111100000011010101010010010011001100100011101000101111010001101011001001001100111000111110001111010110011010001110101101011011101010001011101011110110100111101000100011110111111011000111000001110011100000011000110001110100001101101010110100111001000001101111011000101000010010111001000011010000001111110000101000101011010001101011000000010101101011101010011101111111000110011100111100001101010100111000111100000100110110110011011010100100010101010011101101100011011001000111010110000000001001010110110101010110010100001010000110001110000010110011101110000010010111110011100011001010111011001001000111100111110001101110011100100111000100100101111101010110001011011011101111101011001111010000101011011001100010111000111010010000010000101110011100100101011100010110011000000010110010100001101001001011101000000000010000100010101100010100001110010101001100011000011111000100101101101001111010110101011011011001101001000000101000001000101010100111000110100100111010000000110110000110000000011111001101110110011001100000011011100101000100010011110010101000010011010101000111000101101000000100101001000110011010101101101010001100101011101010000001010100101010100010010111001111111110111100000001100110011100011110011100000011011011111111111010110010001101010111011001001010001011010111110000111110000010010000100101110100101001101100100010001011011111110101010110000111101010111011000111111001000111100000111111000011000101101000011011000001011101000000001110010111110111111110001100010001000110011011100101000011010100000111111101011010110011011111000101100111001001010111001110101010111111010111000000001011100101010101010100101000000110110001111010000011011001000011110111111100110011001100001010001100100001000111100010001011010010011001000111010110101110011011110010100000011101011100100111000010100000100000100001111011110001001000100110010101000010110101101110110100001001011100110110010000011110010110100110110100001100101001010011100110011100000000010010101000100000001111010010001000110100001011001101000001111100100001111010111110000001110011100001011001101101101100011001010100001100010001110111011100011101110110011111101100010100001110000111100011110000111111110010000010100000010111001100100010000111110100000011100101010110100110100100100101000000111100011000111000101011010100001000001100111110101011100010010011110010100001110000000010101110100111010100010010111011111000111000001110000100101110010101011010111100100111011100001101100000101100010111000110000100101001101100100011111111100101001111110001011000101011100111111110000110001000100110110110111101100101100111011111010100000001010100111111011000000100011101100100011000000010100011000000110100000010110010011111011100000010001011011111110010110010100011000001111101100110010101001110100000101111110010101001010001000111011001011101010001000000110100110000011010001001111011110100010110011111001010001001110011010011010100011110110000010001100110101001101111100000010100011011001110011001001011111011110000000000110110111011000100000000100010010110011110001101011001000100001011111101100111101000011100010111001000101110110111110010000011111000110011000110000100110101111000111111000001001010101001011100001111011001011100110011101100001001001101100011111110001111110000100001011011001000001010010000001111100101110000000000001000001100010001001111010001111011011111101001000011101010101000111100100000001110111001011111000100001111100111000101010000011101000011011011011001011000001011000111110110001000000101001001001101011100001111111001110011010100001011011010110100111000100000010001100011000111001010000100111000011011111011110001111101010001110011101010100010001000011111011100110101110111001110010001001010010000000100110111010000011111000100000010101001111010010110000000100001110100011010101010010100110100101111000010101010111111000111110100100000100011000101011011111100101101100001100111011111000111010111010111000010101001101100101101000011010001010001110100000110100101010110101101010100 +10100110110000101011010000001011000110000100010011010010011101100011010100101001111001000111110000110000011011010100111001110001011110100011011001001000111110101010111000111100001101010110111101000101100010011101110000101101100110011111000110011110010010100101001011110011100000101100000001010111100000101000111001111001001100100100010010000111001111000001011000000011111110111001011101010110100101101100101010001100100010110110010001001101110100110000011101001011000101111011110001100000001011011110001010100011100110001100101011011000111111000110010100001000001110000111101000010001101000011001001111001000101101000110110010011011001111010101001000010010011111111011101000101000011001111000100000101101110110011101110011100010111010010011101010001010100101100010001010001111101001000111100111011101000001100110011101000111010101011111011111110011000011001011111100011011111101110101110101011011011011010100010101101100000001100011111010010000101100011010001111010111010100000111101010110100000111100111000001111110101101000011110000011110011111101010000100011101000010010111101011001111000100110011011110101111100100111110111000110000100001001100000011111010010010001111001011000101101011101001101111001110010010011000011010110001010100111011111010110111100110100000001---------110111011001100100001101111011111101001010011010001100011000111001010110101100011101101001111110011101111001111010110011010000001100101000000111000000011010011101010000011110011011101110011110110000010011000000101010100001010011001001010010100100011011101000100000101110010011000001001100011011011111101101110110001010010100001010000001001011100010101100011001111101001010000001000010110010111100011010110101110010001111110000000100100101011101100100010000101111000000110011110101101100001110110101101001001110011001111110111010111001010011010011011000110010101110110111000010111100100111000001001010101110100111010001111100110001001001000001111101110011011110011010010110011001011111011101000001100001111000001011010110010010110110110010100110011101011101011100100000111001111001110011000010100010111101011111110010101000111000011100011101000111000101010100110111001111010101010011000001000010101111001111111110110011101111001110001101011101000011100001110011101100110011000110001011001110001111001000101111101010011011110101101001101110001001111011111111100101101010111101010110001111100000011111110001101010101000100011001101010010110011101010011000100000011100000001100000110100011100011010000011110110010000101011100000101010000001100100001101001010000101000101101110110110110111011001000010010111000001011010000110000010111101111100110110001001010111100100011100000100001000111001010011111001010111111101010101111000010001011100001101100101101000100100001011101010110111000011010100111010100101111110101111110110100100110100110000011111110000000100011011100100001001100010011101011100001000000000110111110101001101000110110010000101000011110010100010000000010010011110101111100110100111001110111111001001010101100010001111111110010100011110010111001000100011110110001111110100101110000000110011011011110011111001011111100100000001001100000100001000001011010011100111101101000000100110001101000001000111101001011110001110001010100011000001110010100000000110001100110010100010001000000100110001000000000110111111111100110111010101001111101011110101100001110011001101111001011010100110100001000001011111011011010111010100010000000001101101000110001001100000000110101110110101110111101010001010011001011111110011110000010010111001011101010100000011010011010110111101111100010111101111000111101101001100010011110011111000100100100010011100111110001111100111011000110001001101001001001101001001100011010010001110110011101110011111100100001000110000111010011000010101101100111001000110100101001000100011110001111100101101100110001100101111111000000010001110110101101110110101010000100001111000000010010001101111001001111010001101001010111000100101010011010000110000110000011011011000111010101001000010101000011100000011100010101010010000011111000010100010011111011011101011101111001110110001000001011101101110111100001010011110000111101001000001010010000011111110110011000010110000100001101010001001100000001101110011000110110101000110100000010000000010010011111000100111111110001110010111001001100100010001101010010110111100001011000000111111110100000011001010001111100010110011001111011011011100001001010000111111100101100001001011100110000010000110100001011111010100000110011111100111010001010001111101010101011110001101001011100000000100011100101111111110001100100111101001100000010000111110101010010111100101000111110100001101010000110110001001110111010000111001001000110001100110011110110101110001110000011110101110001011111000100010000101010101100011101010011110001000001001010110100101001111110010111001010100001001111011100001100001110000101100000010001000100010010001100000000000110011001000101000001001010000111011110100111100101100100010011111000001110111011100111010111111101001101000101110101100110101101010101010010110110111011000111011000001101100111001011010101101000101000110101110001100101000001110111101011101001110010001100101100101001010001011101100100101111000110111101101011100110100011000111010001110000001000001100001010010110010001001001011111011010100110100010100000110000011100100100000011110000000000110001100111100111011111110110010101000100111110011110011000111111101110100110111100110001101010011010111001001101000101000011010010010000111100101100010111001100110111000001101010000101101010010111000001001001001101111110110101110010111000011111110101010110101111010101111110111110101000100000001101111011000011000110111111100100101010001001110111011001011011011101000000110110000100111001110110010000111011111110010010011111100011101111001100010101100101101110100101110001110111000000000111011101001000011111010101110000011101111001101011111100000000110011100100100110001101000110111010111110010000100101101011101111001011000100000101110111011100000110101011101011010110101101111000111000010100001001011111000011010101000001101110010001100100001000100101011010111001111111000111110110000101100011010010101011011111111010010111011001101001010001010000011111111010111101110001110001000110110110000011110110110100010000011011101001110000100001101001010011100110011110111111000100000111010010011011000001001111001110000000101001110010110101000000110101111111001100101100111001001011101100101110110000011101010111011000110110001001010010000011000110101100000110010101110110000110010100111011000001100100001111110100000101011111101001010011000100100011000110111000001001000001011001101000101100001001011100010000001000110101101011000000100110111001000101100111111001010100100001111010010010100011001010001000001010011100100101110011110001111001011000000000011010100011010011100010111111001001001001101100001101001000000000000110100010000011010101100111110100010111011101010101010010111000110000001110111100110110011110101100100110010110000010001100101001110001110110100000101000101111111000011010101011110110111001010010100101001110010010000010110100011010111110110011011100010100011100001000010000110011010101111011100011111100101111110101011001100100011110111011101001111010001100111110111011100011001000010011011110100000010101110111010001110101110001101001011001110000101000000101011010010011010010111000100000100110000100000001011110101110101110110111000100101101111011001110110010111001110011000011011011100010000011111111000001001011110110010101100110001111101000110001111000111100010100100101101011110000011100010110101010110110110111101001010101100101110100000100110000101101000110001101011010001000110101010000110110000010101010101011101110001011110100110101001010011101101001010011111010010011000110001111100010110111010010011000011111001011000101111000001010111100110111111000010110100110100100001101111101110101100001110011101010110000011111111110101101100110010111111101000100110001010111011000100000011111011000001000110111100101001010111111100101011000001101010111010011110100001 +00000100101011001001011111110010111001010010101011100110100111100011010001101001101110000110111011100000001111111010001101111101000100011010000010010000101111010011101100011011101001101101000111011100011100000111001001111000101100011011101010101000011011100001001011001100110111100100110001000111011010100001110001010111001000100100011100011001000001010110000110001010101111100000100001001011000011101011101011001101011000100100010000110011000100100101011101110000000110111010111001010101010101111000001001010101011011100101011101100001001101000010000000100101111001010011011110001101010100000001111110101110110000101010000000110100010001011000001000111010000101010001101001011010110001111101111000111000100111001001010000001001001101110010001111110000111110001111000001110011100111001011111011010001101110111100001001100110111101100000101000000111001010101011010110110110001001011110010001100000101100001100110111010110110110111100111100100001111001011111110010110100100101110111101110110110010010010110010110100100110010000111001110011010010011000011100000011011101110000101111000000111001101010111111110111100111010000110000011110111100100111000110110111001000101010101110100100001111111000001111100001001010111000000001101010001010111010111111010110101010010100111000---------001101001100011110110001011011001010011000011000011011110001011111000001010110111110010100111011111011010001100100110000010001100111111100001000010110110100000011010101010000101010000000011111100110001011111111001000000111010110000001011011100111101111011100000111100101011010010000100010100111001101110100001010001101001001000011010100011010110000010011110001101000010110110100110101011110011110100001111110110010101011010101110111000111100101101000010101011000111001011000010110101010000011011110011100101110110100001100110110111010101001001001100000011101101101011001010101000001001011001111010111010110110100000101110101110010101111001010100101100000110010001111011011000000101110001000011111101010100010101100010100001110000101010001001111100111001011100111100100101111100101011001011010111100110110111111000000000101111101000010001110011000001001110101100111000110010001100000101000011010010010001100100011011011100101010100001011101101110010101101100101101110111010100111101111000011101100011011101010010000000001000111101000001111000110101110110111111101111011011111010000101001101011011010001101011001000000010011100100000101100100101011010110010101001000000000100111000000111000000110111011001000101011101101000011001100000101110001100000111110111110111101110110011110001010000110001001101011111111010011011111001011010110100000000011101110000011011111001101101111000000110101110011010100010101111110001001000010001001000101010011011101001101010111010011100111110010100100111110001001100000101100100011011011000011010111011001001101110001101100011010100100111101001100011011100011001000011010000001101100101110110010000101010111011111000000011110001011010010000000110111010011010000111110011110111100000010101001000001110010010101000010000000001101011001011110010000000000000000111010010100011110010011111011001010100110000110101000000101110010000000010111001101010010010111110100001110101011011110100110011000100100010111111001111001011101010100100000010100110111010001000001100111011010101011011010011110100100101110011101010100111100000100110000100101100100100110000000111000110110001101011110111100001100110100101000011000110010000010110010000101001101011000011011011100001000101100010111000000011100011011111110010000010111110111011111011001110100011001101101111011000101010101100000100011011111001000111101010100011111111001111110100111000101010101111111010101011101010010110111111101010100100110001101100111111100111101111011101010110000010001111101110000000100000111100110010001000011100110000000110111101110111111110100101101111001000011001101111000010011111001000001010110111100000110101011100100011001100101000001111110110100100111001101101110100011111101010011011011010100100010000001011000001100101010100000000010010101011000010111001111111111101111010001011110000101100100111111100100011101110101001010001011101110110111011011010010001101111101101101100111100101010100000101101001010101111100010001110011101001100110111010010001010000011000011001011110000110101011111111100001101001001001100100000100101111011001100001100000101010011100101000000110000000110110100100010110110101110011011000001100011100100011100001110100010000000111001001101100001110011110101010010110101101011100101010111101100100010001011110100011000100011000000011001100001011001100111100111101110100000110111100111100110110111110010011010110010111011010111101000000101010000000010101110110110100101000001100011111010101111101100101011011101001000110000011000010011110100001100101010001000001101110011010010001011011000101000110101111001100101110100011010100101111001110001111000101010100011100100001110000000101000100110101111111110110001101010100010110101001101110111100100100100101100101100100010010101000010011111000110111000001011010011000110001100100100101100000111001100100010111101010011110001001110001010011111100000101001111010010010101110001101100110100110010100010000101011011100011011001100010100010111010110010011111111011001010001011110110110010010110001101011000100101000100111100110000010010011001010011111111101101010010000100001100001000100011000110100100111111110011100100011000111011101110010100111010101010110110000100111000000111111110011000011001111011011111001110011101101110100001111001110101111101011000101111001111110110101011001000101111101001101101111001110010101010111011110110010111110111111000100000111100001111101111000001011001011011110110000101010111000011101001010000110000000111110100001101110110000000010000110011010100110100010101001010010001001110100110011110000000001101111101101000100111011111011100000110111101011100110100011100001001000100101001011101011000010011010101011111011010010000100100110011010110000110001101001011010101100100011111111001000011011010111111111010111001111111000011111011110111000101110101101111101101000010000110011100101111110001100111011100010010011000101111011001001111101011100100101010100010001010101101011000000111010001101000110111010001100110001000010001000101100011111011100011011000001000101110010011111010010010010100010001110110101110101011110111111110101110111011110110011001111000001001100101101111010110011011000100111100110010101100001111111001010000000111010110100001001101000011011000110100111110110101100010100000110110101001101100010110101111110111001001011110010010100001101011111011010100001000100100100011000111001110111001110011001100000111001111110101000010110100011101010000011110101011001100000011110101101011101101101010111101111110101100111100000100110100101101101111110100011010100101100001111100000011010110010100111001011010111110001011000101010001000000101101010111001101110001010011111100100010101101110001111111111001011000000101011001101100011101010100011111001100000111000000100010010011110001000110100011100001111010011001010101010011111100001010010011111011010100101011001000101110001111010010000100010010111100010111111011010101100100010101111001010011010111010111001011001101111110010001011101101100100101111101000111111110001101010001100101011011001110101010001100101100001000010010101111001001100001010100110100111011010011000011010011110101101010000101001100011010001101010001010010101101010100011111000101110110111100101010100011100110110100111111100101011110010001001111000011111100111010000000100101101001010001000011100111110101101000010101011001101100010101001110111001111000001010100110010100101111101101111110000100110101001111101100100010100101001011001110111111101101100101100011101010000000010100110011001010010101001111101100100100010100101110111001000010110011100011000011001001111011100100001001010100100111101101100111011000100110110011011011111000010101101100110110000000101100100100111110001010110000000111110011001001101000111110000101001100001000001111010010110010111001101010101010000110110111 +ls320msgs +10010101111011101010010111110111011110000110101100001100001110011001001011001100000100111100110000111011010000011000101000011100100101000110001100000010000100110111010101100010010101011110001110000000010100111001000010011000100111110101011010011100100110011000110000000010001001000011101111111001111000110001110001100000110011000001011110110001111011101001110111110001110101001011011001010101100010000000111011001100001010101010101110101000101011110110001011000001110010011001011111000100110000101101101010001111011101100000000110100001100011001111111000101101101010101100010011101011011010011000000001100101011000001011111000111101011100010101110010110001000001111111110000101000100011001011000011000011000111100111010101101111111110110000101001101101000111110000001010101011000010001101101100011100001010011001101010100111101010000110011000100100110010000101111010000110000100110110011101100010101110010011110010111110011100101101110101010001110010011000001110110111010111100110111101000010100110110010000010001011001100110101101111011000010010100101100001110101010011100000100100000100101100011100110011000100000000101000101111111011010011011101010011100001110001011110110101111111001111101100101000011000010110110101010000000111100011010101001010011011100000010001111101111010011110101000101000100001001100001111101010000111100101010110001111101010101010101011001010000011101011000011000101011011001010101000100110100000001001101101101111001101010001101001100000101011110101010010100110001111100110100010111100011110011111011101001000100001110010010111010001001010001010111101010001101110111000111000000011000111010010011010000001110101010000000111100011101011110010101011101101000000100010001110100101110100001101111001010110001001010111001011000011000110001010110100101111110110010110110011001001101010101111100011000011100011000101111001110010001101010101010100101100000101111010100110001001000000010110111111001010011001111001001011101010011011111000111111010101100011101111100110000101111100010000111101001001001101100100101101111100111010110010000001101001001101001110010000101000110001010011011001000101101010000110011100101011101000011001001010001001110100100001000000101111100101000100000101111110000101001000111011000111010011010101011101011110000011010100110101110011101010111000001000101100000001110101011111010011110101101011111010100001110000000000010000110010010110101110101010100110101110010100110010000101111001110111001000101110111010100010100010111111111010011111110000000101001110011011001011110011101001001001001111001111110101000110011011000101000011000000100100011111111100110001100110100110010001100100001011110000001111110111001101110101100101000011110000101110101000011010000111000110100011111000011001000101100110110011110001010101011110001101011001011011010001011111000100011111111111101010110001010000010010001011100110111111010010101011111011011111011011101110011110001000110101001011011111000110110110111000000000001000111100101000000000000011011010100101111110010110011110011000000011101110101110110001101101101100000011111001111110100110110010001101110110110000000010111100001110001101001010110001100101110001101111100010010100010111110010010111101100010--------- +11101001111011110110110100101010100001001100111001010110100000111100110101010001010110110000100111000000001100110110110111001110101011110101000010010001101101000101100101001011010011000011010000100010101111010101110000000111111010100000010101010011001010111010000111100011000000101110111101011111101011001111001000110101110110110100110010111111011011000110110101100110001101111000010110011010011100100001110110001101001011010100101011100010111101100111000100110000101001000110110100011110111111000011010111011111100110011110001100011000010110111111011000110110000111110100001010110000111010110011100101101011000000101011000010100110000011100010110111101011000110001001010000001010000110011000011010011111000001110111000101110011001101100001010001110111100011101100000110010100111110001011110110000010101001111010100001100010010110111100111000001110110001100010000110101100000000100110101010001100000001111110111110101110010100101101011101011101101111101011100010111101011000111011000000011000110010011000001011001100101010011001111000100010010000101100101011100111100001110111111100011011011011001110101101000101100110110000110000010011011000010000100011101001111110010001001010000101101011100001011010110001101011110011100100010011010001110100011101101100101011111101111001100101000001100000010010111110010100001000110111100101000001100111000011000011111111010001010111010101001011111111001111001111101010100110101100110000000001110101000000011010000000000111010110110100001000101100101100000110110100111111011111010110000011101101000000101110100010011001000001110000001111110000111000111100010000011101000011101100110101001101010100000010001101001011110111101000000110001010001001110110000110010110001010110100001101001110101011000111111110010010111110010100111111001011000010011011111111011111011011010011010101100100110011110010110001110010011000001100110000000100101011011100101100010101100101000011110001010011111011010011101100000110011001110111100010111000000010101101111001100110000111101000111000110000011111110000111001110001001101011010111101011010101110000011111101100100111110011000011100000111010000101100000100100011110111110111111101110000110000100011010111100000110001000011000101110111001001101111111000010100010110001111111111100101000010100110011111010110001100111101001100110011110011001001000101110100100100011100111001001011111100101000100100010001011010111000010000011111001001001100111001101100000100110100101100111101110101110100010001111100100001010001100010101100001011001011100000001110001101100000010101111010100111000000010100010101001110000100101001000001011110111111001001100111100101100011100011010100000000110001011110101011010110100111000100100101001001100100010010111001001101011101111001101011000100111111101101100010110011011011100100001011110111101100110111110101010111011111111110110011110101100011100100001000100101111000000010111000101110011101100111010100101101011011100000101110000000110010101000001010010011011110100010111101100111001101000101101100011110100101010011011010111100101011101001000101000110001100111000010101110010000110101011010011011010011110100001100000111111101101010001000110011001101111000111110100001001011011010111110111001--------- +10011000010101100110101100110010010110000001000000111000011110010001110110100011001011010000111110101000001010010110110111010100010010110010100010111000000101110000011100001001000011110001000011100100100011001010010000101110010100101011101011001111000001100100100001000011110010111000000001100010000111001001001110000011011111001101110011000110110100010110011111000001110010001110011110011110010011011010111111111000100100000100110111110001111011101000110111101101110110001001000011111010011000111011010110000100000010111011111100111101000111111010000110010100100011000011111101101011001101110101010100101101110101111110110001000010000000111111001111011100111011010101110000010011000001001110111011010010011111010011110001010010001111111101110010110010010001110111111011011010111000010100111100100000000011100111100011111011010000010111011001011010000001011100011111100001001001111011110010110011110100101110111101001101100011011111100010011001000001101001000111000001101000001100100100110111101100010001001000101011111110010000110100100010010001101000100110101100001000101100110111011101011111110100001101001110111010100110111100010001100110010000101111110111010000011101011011010111100000111101000101111010110100100100010001100111010001011000100011101001101100011001111100100001000011100110100011000100110101000101001000111011011010000101010110101011011011111001010000100010010010000000000110100100011100111101101011001011000100000111110101010011011110110010010001111010010011110100101011110011000100111001001100011011110010011111001001100101101010011000011110001101011010100000001111000110100011100000100000110010011101001110000100100001111001101010111111001101101011011111000100000100111100111011101011010101011000010010100010101010110110001001011111000110000100010100100111100100001000101101011110000110101011000011100000011001100100010110110111100100001101000000101101011111010000101000010110101001101111100101000000100111100000101000100110111001010110100000001111110001110011111010101011000100110101011111000011110110011001000111000000100101110101110111011010100101001000101000000010100011001111000111010110010000111111001101101111100000111110011010110000111001010100101000010001110010100111111100010100101110100000000010100110100001001100000000111001111010110010001111111110101111011001101001100011111001100100010010111110100001101011110000101010011101111001011011001011010101010010111011000001101110010010110111001100110001110001000000101100101111100000000100111010100100110111010000001100101000110011001110011010111000001101000000001100001100111100011111010101100010100010001001010101010011000000000010111011000001011101011001011011111100011011000110101100011011101000000011111101100001110000111001000100001010101000111111101010011111110110101011001000101011000101100011010001000110010111000011101001000010011000001011110100000110110000001000100110000001100111011000100101101000000011000110011110101110101110011110110111011011000010111000110100001101111000000111001101100000010101001101100001101101110010110100001110110000001000011001101111111011111011001111111000001010110011010001010011000101001001000111110000011011101011000110101100100110111100011000001000101001111011010111000--------- +11001111111100110000111010010111111100101111101000101011110000111111011010000100111101010001101000100010101001010100011101010101101000111001101110110010110011001011101101111001010010011001100001110001011011111011101010010010000100100111110001100110000100010000111000111011110100011101010110000100011111101011100001001110111010110010000100011001011101110011011000011000110101010000001000100101001000110000101101110111111011100010000111111110011000101111011101111010010111001111111101101000001011000100111111011000101001010000011001100011110010111010111111011110011110000000010010101000000001100000011111001011100011100100101011101011011110000101101010101010011000101110010111110000100110010101010010101011111100000101101010011010101011100011101000010111110111010000110001111101010110010010110010111101111010101011111101001001001101011001100100110011101111110001011100001101110010011001111000111111100011010101011001010001111100101100010001010100000010001111111111101010001110100001010100100100111100011110111001001101010110000110110110010100000011100000101001010010110101011011101101100000000110010110011001100101111010000000101010100100110100101001100010110111101000000010001111100111001111111110011001111101010101100011001010011110101000111000010001101110010101001101110011100110111110000001111111100010001101110010101001101000011110001110000011010000001101100100010000101111010001001101111100101000000011010011111100101101100001100101011010101110110010110001101110101110011011010111011101101001000100001001000111110111101100111001110010010010000000010000101100110101000010011011010111010110101110000010111011101101001011000000110101000110001111110010010001011011101111000011000101001111001001010110001111111010010000010101011001110100001110111011110010101000011111100100100011010110000000011011011011110111111100101100110100001101100001110001010000110111010100010011100001100001010110101101011011001111100010001111101100110010110100011001000110101110110100000110111101110101001001010010010010011011110010000111001111010100100110100000100000111101000010000101101111101010010001100001101111100011000000000011110001001000000000001111001001100101100001101000001001111010101110111111010011111011001100011001111010110110110010101010111101111100111010101001010111110111011100110011101100001001011111001011010110001111001101010110111010101110110100100101111010101010100100100000000110100110100001100010000110010110111101001100111001000001000001111010001001100110100110101000111101101000100011010011010101100001100011010010001011001001010110110100000110010000100010101011111111101000101100100010001010001111101100101101111010000001101001011100100100001101100000110110110111001100111101100110011010000101011000000010111000111101000110101011001110011111110110001010000100101010000000100010101110000101001111111010111111101010010011111001010010000011111110100111001011000000101111111011011111100111011010100110011011000101110001101111000001101010100001110101011110011100100000110010101010100000110111001000101110001111000011001010010001101001111011000100111111100111001111111010100100001100110011110100110000001001110010000001100110000101111100101110110110101100110101011000001001010010101111001110011--------- +01011010001101000110101111001100101000101000101001100100010111000111010110010001000111111110001110100100110100110100101110101100011101001001110111000000010011001111001010001010100111001001111000100101101010101011111011001110000110111101110100110100010010001011000101000010100011101101111100000010110100000001011101011100000101000011000100100011111010000101010111001101100100000100000100111010000001000111001011101000000100011001001100110101010111100000001000001001101111111001001101011100100011001000110000001100110111011111100000101101000010010001101111100011011110010011111001111011110011011010111110110010101100110010100010010000100110111010011110001110010111110101111010111000011001111100100101101101100101110111010110101000101111011100110010010101010000110010111101001101110100010011010011000000001001011111100000111010111101110001010000011011101011110000010000110111010100110001000000110010101011111111110100000100111001101001101010101000001001111011000000110101000000010010101000010100010101101011001110001111100100001011000110001101001010111110100001111101110000111111100010100001000011111111001001011000011010101110010010101111110000001111101000110101110000001011100101101001101011101100100010000000101010101100010001011011111111010001000001110100110100110110111100101110111001010001000001011100110001011100100101111100101010110010010011010111000011010111001000001100111100100111001111101110100011110101010110101001001111011001001111111001100000000101010101011001100100110001100100000001100000100011111110111010011000111100000010010111010011001100110100111100000010101001010111011001111110011110100100110010100110110010001010010110100100001110010011101100100010101101001000001111001001000010011001110100111011001000010100100001000010111110011111111111000111011101000000001101001111100000000000010110111111010000100000110010011001100000101101100011101001011101011011001100110011100111010010111111010001111001010111011101011011100110011010101000111001111100001000110011010101100100101100111010010110001001110010001100011000110110111100001111000101110100100101001110101000101111011011100101000001000110001000101010101011100000011000101100000001111010110111111011001111111010111001110001001010100001010100101010111101010100010110010000000111010010000100000001000000111101001001101001010111000000110000011001010000100111100011101011100101101001010110110100110110011101011101110110111100101100101011110111011101111110011111011101000001100000100100100000000111001011011111000010110110101001001100000101111010000110001111011010001110001111101111001001110111110010010110110000111010111110100011010001011010100111011110110101111001000001001110001000110100011100010010101000000011010001110010100011010010011010010110100000110010011011100001001111110000010011000010111000001100110100000000100111110000100001101001111101111000010101000011111110111111010000110101100101001111010100110000000010100011111010110100000101001100110100101000101001011011001000111001101010100100101001001000010101110110010011100010001011011111110110001100000111110011101000111000000001110110110111001111100000101010001100100110101101011000000100000110001111001010111010001110011111100100011011110101000010100110111111001--------- +01000011100010010100010000111110000001100001001100000000100000101010011101111011011010001110100010001111000010100000111001110100110101010010101101100100100010001100111100000001000011001010001101001110010000100001010000110111011100101001000100100000100110110110000000000011000101000000110101010100010100111101111101111100111010011011010111000001100001110100100000010100001000101000000111011100101010111000100011111000110100011100011010110001111000100011100100100101110100110110110010000111011101110111101111010001000100011001001011010110001001011000111010100010110100111110101111111001001011000001100111111011111011101100011110010101010000111001000000111110110010101111100101001101011000101111010101110110101000110110110000100100001110100010111111111101110100101000001110111010001010100100000010010101111100000001000100010110111011100000100000010111011101010000111101001101110010101101101100000011111101111101011010010000000100110101101010111101011011111110111101000011000100101001100010001110001111101010000011111011001001100010100000001111111110000000000100011111000111111000010101011111000110001011111100000000101000101010001001001110111000001001100011111110011110000110011001010110001011010110111101011001111011101111010101100010010010100011110110010001110110011101010011110010001101100001101001011011111000111001111110100110011101100000101110101011011001010111010110101000110011110001110100110101110000001001110100010101101111011001110111010000011001001011110110111110110110001010100100010101110000001110000010001000000010010011011100000010101001111000010000110011101001101010101001010010010010010100110011111100010001001010011100001111000001100101010010101101001110101101101000001011111110001101111110000111001100010110110101000000000100110100110111010000100001111010011000111000101000010100101001011000111011110001010100011011001001100000111100111111110111110100010111010100110101101011101110000100111110010100101001011110000000011101110010011110011001110110100100010010111110100010001110011111001101010011010111010100011111111011110000011110000011111111000011010010110011101111000001011000010110110011101101110000011110000111111101001000001111011010000001000001100100110001110100000110111010011100111101001000000010111100011111111110010110100010110001001000010000101010101101010011000110101011111010000101001010010100011101000110110001100111010101100110010011000101000101100011000110010111110110110011100011111011000110110101101100001001010111000110011101101101110100111110010011100000110001110001011100101101000101101101000111111110111001001110101000000000010000101111100100010001010110010000011110001111010011101010010110010100010101111000111010110111110111000000110100100111010101111000100101001000101111101000011110001001110111111001101111100010100001101111110101101001000011100001100101100010011111000110001011101111101101001000010110111101110010011101011111101101100101001100111111101010110101111010100110001111111010000011011000100110011110110001010101001000011001011001111001100111111111011001010010101110111111100001010101011010010101000011101100000011011111110101010101110101111111001110000101000010111110100011000010100101000011010100011011000101100101110011000111010010111--------- +10010001000100111101111010001001101110100101011110111101000111101011000101011111100110000010010101100000011111100111001000000100001110101000100100010010011010111100001100111110001101010111010001011011001000111000000101110110011111001010100010010100100101011011101001001101101001011101110000110110111000011000100010101010100111011101010010101010100010100000101001010011111101010100011110101010110101101101010010110111100001100111001011000011010110010010001000111011010000011111101111101111001010000001101011101000000001111111111010101111110000000000110011000000100111101010100111100100100111010101111000111011000100100110100001110010001100110001001011010100011100001101101011100101100111000100001111001001101111000010110011110111010111010100101001011011100101010011110011000111010000001111010101110110010110011000111000000100011101111010000100000000011101010110101110110110000101011010000010100001111000101100011010110100100001110101010010000101110111100011000000111011100000111001001000010110101010101101011010001101010110001000001100110110011111000100110101000111011010001100100001110010111101000110101111101101111001011110111100101010011111101000101001000110001010111010010010111011011110110000010111011000000100001111011101111011110010000111001111010001110101110110010010111001101000110011001111010110001000110011001001101011010111001001110001101011110110000011011101001000000001011110111101110100001011100111010100101010101000011011101001000101101110111000111010011001010110100001011000111010010100100001101010111011100000000101101011011101110100010011001111111010101101001111110101010010010010001010100100100001111001011110110001010110110001000000001011001010011110100010100101100011011010000110000101001110010001101010101001100000111011100100110010101001100111110000101110001000100000111100111000110101011110101110100110000010010101100010111000100001100100010110010000101100001000001101110000010100010111100000001001011001110001010011000010101100101000000101101000011011111010100100111001110100101111100001101010110100001110011110011101000111000111011010011000000101110111000101110100011001010100011101111101010100100011000111111111100101100111100010000110010011111001001110100100000001010000111101010001010110001110000101010010111010001110001100011111011001001010000111000010110010000100010101100101001111010000101001111111101100111001100001101000010101001101110011001000100010010100001011100101111001100100000010111111101011001010001001100011111110110110110001100101101111010111110010000011111111110011100110101101110000000110100100011010100010111010101110001001011011000111100011100010100000110000100100101010111001100001000101100111100010100101111010000010000111110110001110100100101001001110110010100011000001000100100100000011010101010100011111010100011001011011000110111111111100011100110100000110110001000110110000010011000110100000011010011101000001100110000111101001101110011111110011010101111001001010001000001101111001110011010001111000100100011101101010110000110011011000111110100001000010010000110111101111101111100101000110010100111100011010001111101100110011010010001101100111000101100101100001110100111101100111011011000001110010000010001000100010100011110001111000001--------- +11110011000011000011110011001011111101100110000001011001000010010110110001000111011011110100000111000101101000111010011010101111110110111010110010001110011010101011110000011100110100111010001101110010011111100001111011001001010110001011101100011100010100001011011100011100011011011111000000010111110110001100101101111001010001101000101111111001010001001000000001111111001110110010001011001111011110010100001101011110011000101110011111001101011111001001001000101110101011100110110000010110011101111001101110000001100111111110011011101111001100111001011111101000001010010100000000110000011111100111110011010100111000100001101000011001101001101011111101010010011001111100011011110111001110100000000001101000110000000010010110110111001011000111010000001110110100111001011110101011100001000010111000111000011000011011101011111101000011011110011101100000101001111100011000011010010110111010001010011011101001000100001010000100000001001010010100100011000000111011010010101111101010100001001010101001010111010111111011010001111111101001010111011100010100001011011001010011011010001110111100100111110101000001101000100100110000101000010100101101111100101101111001001010101100100010110010110011001001000000000111101000101010010101001000011010100110000011000111011011111010001001001101011000011110100010011111101011110100000111010101011111011111100111000001101111011000001001101101001000001101001110100100111000001001000000100101000001011001101000010100000101000010110001010001000011000100110101100110011011111010111010100000000100111100111100101111010101101010100001101110010111010111000111010110101011110000101111011010100001011111000011000111010100101100000000111100001000101101101011110101111100110000111101010101111110101010101100100100101111101100100101111001100000000010111100010000001010110001111100000000010100011000111001011000111101000001000001000101000110111010010000010011011110010001110011101001000011100001011001100101010110010111101101001111100011110001001111000110011110101110011011000111010100011101000100000101011101111001111101111011101111101011011000011000010110110010010101011110100011011111100010001010001100010010101011010100011111001101010111110011010100100110110100110011101100110011110000001000010100101110011011011000110110000010000100100000000011010100001111010000101010101010101100000010110110010000000100110100000000110111100010000101110111110000100100000111110101000010110001001011000111001110001111100010100100100101011110110100111101010001011000111100100111001010010101000110101000111101100001101110100010101100110101011101110001101000100110001100110010010101110110110100101101001110011110001111011000101110010110000000010111001001100100001101101010000001000101011110000110010110100111110110100100011010010100011110110001001111111010111011001000010100011101010001111111010100011110000101010110001101100001111101100111000100100011010000101001010101010111111001110000110111110111000110010010010101111001110001001000100111011011101011100001110100110101011001000101000101011101010101101011000110110000001100010101111001100101010000111000111101010101101010000110100001110000010000011010001101101010110001001110001111111101111100110011101101010110111101110111110100000110001--------- +00111100110101011110110111100100001011110010111101000111101100001000101011100110111011110011100001001110000010111100000011110100000110000000100011001010011001001100011110101011001100110101111101101001010101001000110111000111000110100110101100100010010011110011000001111001001010001101110101100101010110010011110111011101100111001010011100101101001011011111010110010100000101011111101000101000110011110110000110010100010110000000001010110000001000101100111000100100011101101010101110010001001100111010111111011111010111000100110011101011010000100000111111110101100010010001000110111011000101000111000010001110011100011011000000101100110010010100101111111101101001111110110111000011001010010001010001011000000000101010010110100101000010110100010010100000111110010001001101101101001001101110010011000001101000010000010101100111001110011111000101111101001111111100010110011100001110001001011100111101010110100110110110111010001101111001011010000000010011010110100100110010110000101110101010111111100011101111100111001110010011000101100101001101101011010111111011101010001100000011001111100101001110000001001010111011110110111000011011111101010111000010100101100101001110111001100011010101010101110111010100111000011101110110111101011010101101111100101101100100010110000111110101101010100011100011011110011011011101000101111101011101001011010000011100000100000100011100000101111000100000110011010000010101110001101001010011100101000101110111100010010100011100001011000011011011000011011100011111000000110111000111011001000000111000101110010001110110111110111010011101111111010001010010001001000000001000101000010010101011110001100010110001011010010111110010010100000011011101011110010100000111001110101101011010110000001111010010100110011000100100000000011011001101001011010011100001100111010110000010001001011100001001001010101011101111011011000000001000000101000100011000001000001111001110111001011101000111001100101111000010010101101111101001001101111110110101111010100110110001100111110000001010110110010101111111011111110000110000001110001011001111100010001001011101110101111111010110000001100001111101011110010111000011111000010000000001101100011011010110000100011011100000011101000001010101101000111101100111000110110011000111010111111000000001100011110110001011001100000101011100010000001011100010101000100010100101111110010110011100000000101100101000100110110100010111011001101011101101001000010000001000100010000110110011011001100101110010110111001110010110010110111000101100001010010100001111011010010010100010000100010000011000110010111111001111000000100010111111101001101111101111000110110110010011010010111011101010001110101101100010111010111001011011001101110110110100111110100000011000001111011101010100111010101101110010000000011010111111100000101110011001101011111101011010110010110100101000101110110101011010101001011111011101100101000000001101101111111001001011011000101111000101100001001011111001111111111010010001011010010101010111100100010001101011100000100001011111111111000101101111111101001011011000010000000000001100010000110010000010101100101100001110110110101010011100001010011001001001110000101010111100001011100001011100110101100000110001000111100110110110001010100--------- +11110011010000101110011111011101000100001010100010100001101101000010001111000101111100011011101101111000011011100011001011011110110011111000100010000101011111001010101010100111101011111111101101010111000010111110000111110010100011101000100100011101100010010111010101010010111001100101100001001011100001010000100001000110111001011101000100011100001110100111111100101111001110000100010011101101000001101101010101111101000001101010011110110011000101100010011110111100011100011101101110001100101000011101111010111011000101010101001101101110010111100010001101000011001000000111111101001101011110100100011110100100100111101110101111001100100111000000011011000110001100010001101110100111110100001100000000011000000010000101000110011010110100001101100010110111110101101111001000110001001000001001000011110101011011100011010110001101000110010111110100001101001011101101111110110011000110010111000111011011010101111011010001110001111101111010111010001011010111111011101000101111100001000100001011001000010111010010110001110010110001001000011010001001101111110101000110001100100111011100100010001011101001101001010000101000111010111101010101110000110100110110110110110011111011000000001101000111110000001111010110011001000100100010101111110101011101000101001001111101001101000001111010111110101111100010000001101000101011011110101000100000001001001110001100010011100001100001100101011001101101000111110001100101010000110000110001011010010010010011111101001011000111000011011111010100001010010010111001101101110001100001111011100001101100001010000000111010111101101100101111000001101001010100110011111101100001001011100110100101000011001101101000101000100111111101110111010110001111100010011010100111100000001001100010001101011101111111111000111100101011111000111101110110100110010110001110011101111011011000001100000100010011110010101101101001011100111110101000111111000110101011010010110101101000111011010011011111111101110111011110111011111111011100101011000001000010010100111101011000111100011001011110110100101101001111101001101100000000110001110101000011100010010111100010101011001111000100111110101101001100110101011000101010010011010010110110110000010001001011011010111011110101000110000111111010011111010101010001010001101110111111111111111111100111101110100010000011000100110000000010101010001111000111010111011000100110001000000001101001010101001011110101001011110001100001100001100001110101111011000110111011100110111110110011001001000110110101010100101000010100110011111010101001110111000111001011010101110100000010100010010000011001111000011111000010111111010111001011010000011110011111000000000101000100001010000100101011110101101001101100110100001001111110000110000111110110010100000100001010111111111110111010110111010001000001101001010110010110100100000001001000001100111100011001000111111111100011000001111001110100101100001011111111110110010100101100010111110111100011000011101110010100100000000111001100100100111001101110000011100010001101011000100100100110010010010010100101000001110001101011111110111011001010100000110001001000101011010100000100010011001110011001110100011001000010001001100001011001010110101110101001101011001111100000111101100001010000010111111001011111011001001--------- +ls320cwds +0101110010110001000001111111110000101000100011001011000011000011000111100111010101101111111110110000101001101101000111110000001010101011000010001101101100011100001010011001101010100111101010000110011000100100110010000101111010000110000100110110011101100010101110010011110010111110011100101101110101010001110010011000001110110111010111100110111101000010100110110010000010001011001100110101101111011000010010100101100001110101010011100000100100000100101100011100110011000100000000101000101111111011010011011101010011100001110001011110110101111111001111101100101000011000010110110101010000000111100011010101001010011011100000010001111101111010011110101000101000100001001100001111101010000111100101010110001111101010101010101011001010000011101011000011000101011011001010101000100110100000001001101101101111001101010001101001100000101011110101010010100110001111100110100010111100011110011111011101001000100001110010010111010001001010001010111101010001101110111000111000000011000111010010011010000001110101010000000111100011101011110010101011101101000000100010001110100101110100001101111001010110001001010111001011000011000110001010110100101111110110010110110011001001101010101111100011000011100011000101111001110010001101010101010100101100000101111010100110001001000000010110111111001010011001111001001011101010011011111000111111010101100011101111100110000101111100010000111101001001001101100100101101111100111010110010000001101001001101001110010000101000110001010011011001000101101010000110011100101011101000011001001010001001110100100001000000101111100101000100000101111110000101001000111011000111010011010101011101011110000011010100110101110011101010111000001000101100000001110101011111010011110101101011111010100001110000000000010000110010010110101110101010100110101110010100110010000101111001110111001000101110111010100010100010111111111010011111110000000101001110011011001011110011101001001001001111001111110101000110011011000101000011000000100100011111111100110001100110100110010001100100001011110000001111110111001101110101100101000011110000101110101000011010000111000110100011111000011001000101100110110011110001010101011110001101011001011011010001011111000100011111111111101010110001010000010010001011100110111111010010101011111011011111011011101110011110001000110101001011011111000110110110111000000000001000111100101000000000000011011010100101111110010110011110011000000011101110101110110001101101101100000011111001111110100110110010001101110110110000000010111100001110001101001010110001100101110001101111100010010100010111110010010111101100010---------101001000001111000000100011100011100110011110111110011000001101111111010010110010101111111101100000110111110110000110011101010011110110110101001001100101111101111010111001110100001011000111000110110110011111011110101111110100100001110111110010010001100010000100010010101010010111011011001111010111011110101101101110010100101010001010101001000000111100001010100110001011111101000111010000110111111000010000100100111011110001000100000001111011011100010101001111011100000010110011110000101011100100111011001010100000111001010100011010001110010010100001110010111010011111111100010111111111000111100100000101111010100001101001101111011111111000101100101110110001010111111011001101011011001111110111100110010101011010110001111110011101100110001111001011110100010010010101001101000000101100111101110011011011101011011110101101101001111111100010110101000001110010111100010101100100001100001010110000011010101100001100001110010101001101111100001010011111101110101101110100101101111101101011000111101110010100100001111101000111000000110010000000111011110101100000101101111010010101100111110010101000001011111010101001110001111111101110000010011010010011001101101010101001001011111000000101111000011100111010101010010100100011111010101011111011010100011110010110100111011110000000010010000101001011010011110000010010001100110110100111001011110101110101011001100101010011000111000110011100100100100011010101010101110000001010101100010101101101010001101111000011101010110000000001000001001110101111010110000010100001000101101111111000011101001011111101110000100100011101111101001100100011101110110011100111011000101100011011101001101001011001100001001011110010000010010111100010101001111110010011001110000111101110111001001100111100111110100111010110110101111111010000100110001011010010001000010110000010000111101011000110100100110011100011100011011111001000100010011100001101010101011111111011000101011111011100111101110000011100100110111110000010110110010001010010111111101101101010101110111011111011101100100001001101000110101010110101101101000000100000101110100100111001101010010001101111110110010101101101010110001011011111000010001110111001011000110100110010000110111100000001100111001000110101000001010110100011111100111100001011111000011111010101111000101110001011111110111100110000100000001100000000101001000001000000010111001000101000000110111011110011111100110010000110100101100111010101101000101110010011011111000111101001110011101111001100111010100100111101001010111000010111001010111111000010101001011011011010100011010100000110111101010001010000110100010100001011000110000100000010101111101011110011110110001110001100100000110000110100100111110100011100111001101010011110110111101110000100010010011100101001101001000011000111110010101001100001000111100011011011100000011011110111100111010010001100000001010001011011111100011111011100010000011100010100111010110100111001011101011100001011011111000111001001101001000010101010100110101010101000010111000001001110001011100100000101111011100011100101110001110101001010101011110010101000011100011000001011001110001001011000101111110000010110110000101111101110001010001001110011110010000010001110011101110101110101100001001001001010000101100111011011001100101001110100101010001000110001111001111000101100010011011011000010001100100010010011011010101000010101010110001110101111111000101010101100001000101010110111001111011100111111100111010111100101101010111010111110001010101111111011100110111000110100010111100011001101000001110000111100010110111111000010100011111011110010010011110010111000100110011010111011101100011111010101001101111110001101110001011110001010000000010110010101010110010101000101100100000111101000001011001010101000010110111111000000011100010001110110100101001110001011101010000100010110000100010011001010001000010100101010010011001110011110111101011000001011101100111001101001001000010010011001001100001111001000101101001001000010110000011110011100110010110010010101001111101011100101111000000111100101000101100100111000100110011101110011001010000101110001111010000011101110001011000110000101111110000000000010101110111111100100000010010111111100110001110000000110101000111011010000011001010001011100010100110001110110101001010101101101000001101011110101111001110101110111001111010111100011001110100011111010001010110011010011100011101110010001000001001100001010101000111100001110001001011100101101110111001000100101001100001001011010110011000110100101000100110000011100101110111101101001001110111001011001001111101101000010111001100100111010011011011111000001100111110001111010110111000011001001010101010011100111111111011001000001011110101101011011110011110011000001111100110101010111101100100001001001011000000110110100111101000010000011011111000111000100101110110010110111001010011100000110000000111001111110111001000011101100010001101100101000010010000000001011110111101111100011100110001001001101110111001110010111011100001110110100111011111000010100000101001101101100001000010011000001111110101100010101101100001001101001100000110000101011100110001010100011100100100000010100001001100010110001001010001011001110010110010011111111100001111011110110111010111111101011000110010100010110111100011100110010100011111000111001011001000000011000100000101000111001011010110101010101010101110011111000011111010000110000111110100100001100111111100100001001010110111001001000100011011010010011101001011011110111101000000000000100000100111110110001110101111010100000111010101001111010100101100110101001011010101010001011010001001111011011100001101110101111010100100010100011101000101011000001101010010110011101110101010000110000110010001101010100000011011010000101101101101101100100101100101010011111011100011110100001010001010110111101001010000100011000001100111111111110111000101001101000100011110010000101110101011000000001111101111011011010001101011000110011000110111111011101011000101001111000110011101110110001000100110110000001000001100110101000100100110000011011101000110011010101011100100011011101100111110111011000000101100010011110001101110110100011001101010110000101000001101000111000110110100001110100011111000101110000010111110110000110001000110100001111001111110001101010001000100100110000000010111100001000100010010101111101011111010101011111000100111100011111000001011001111011111000001100010011110000000011100001110101000010101100101110111011111101001010101001101101100011101111110110111101000011011100101110010101100111010000001100101101101110100101110111100010100100100011000001110110110010111110011101011110101100101010100110011101001000100110110011110110101110010010110001011101010010111010101110011110110111000101000111000011111100010100001111111010011001101111000001110110000011010101001011110010110101100100010100100100011101010010001110000110111111000011011011110001000101101110011111110110100101011110111001000111101010110101110000010101111110010101011001100101001011110111110100011011110101100010001110100111111111000100111100110001101010010100110111011111011101001010010100110110101010000001111001001101111111100011011100010110111101011001111000010000000011100000111110011100010110000010101001110101101100010000111101100101101111011110001011111001000110001111010010110001000010111010010010011000111100001010101010111010110100010100000000010010001010001001101001001000110010010011111000110111101110011101111011110001010001001100111010010001011010110100010101001010100010011011101011011101001101111001011110001001011100110000110001110111100110000101001111000001011000010110100011111011110110001101000001000111001100011101101000110011000010110010001010111010010101110100001011010010001101001111110011001010000001110011001000000010100010100100101001111010000011110011111111011011010101010001111000000101101011100000101011111010001111101100010001010010011010001010111111111101110110010111010111011010010011001000110000101011010011100100000101100111110001001100101100000000000000100011100111100110110111101000000101101010101010001111001010001100101111001100111110111111000011100111011000000010010100100111011010000100000000010011000001001001110011010101010100000110110001100010010100000000111010101110010010000000110110111010110011001101010101011110000101101100111111001110010101100110100110101101100111110010010101011000101100110110100110001011011110101100010101101111100100011011000110010110111011110110001001101100011111011011011011111001110011000010100100111001011100100011010111110001100001000000000110001101011011101011001011100010011110111001010100110100000100000111111111011101110011011100101111101011101101111010100010001111110010001111001000110010100001110110000111111011010101100011111000000010101101100111000001011100101101000100110101100101001011101100001101111000110010010010001100100010111010011111110101111011111010111101100110011110110111100110101101111000111001001011001111001010010010011111000001000011111011110111001111100001011111001001111000111100100000111001001010010110011100011001100011000001001001000011001010111101000011000000000011110100110111110110110101100110000111001010111111010111011101001101111011110001110101100011001011111110000010000010010010010100011010010011011001000101011101011011011001101011001101100101110110000110000011111111011011111010001010000000100001000100110011001101001101110100100001100101100111000101001001101010111001000000111010000001110110011111010110110111011111110010111110101110011111110101010000001111111101001110000011010100011101101110011110001101010111111001101101111001100110001010011101010001111100010001000011111010110011101000011101110011000111011001101000100001111110000110110010100111000001010110010111000010101011101010011110001011001110011111011111111000000000101111111101110110001101000000010001100111010101101011000000001111011011101011110101011010001011101011010001111011110000101111011110111001110010011111001001011110010100111001010011010001110101011010010000110101011011101101111110101111010111010001100110111001100111101101100011001000000100000000100010011110100001101100101001000010001010010100101111010001101010101101000111001011101001111011100011111111100111111101010110101011111110011101101001101101100110101000101101000100001011110010011111100110111110111000010001111001101100001011010010100001111110100011110011001000100010010111011101001010100010010010111010100101100010010101001011010001001011001001001010000011000110001110001010111100110011000011000000001110001100011001000110100010111111010001111101011010110000000110001100001100111111101010100010011000011110111011010110010101100001101011110001100010011010110110110110110101111100001110010001111110000010101110111001011101111100010000110011010011001000010010110000100101101000000000011010110010011001010011100001001101011111110100111111101011100010010101001000011010000011101111000010110111000010001101010000100111101000001110011010100011011111101110011110111000101011001011110001101001010101101001111101110110110100111100101111110111110100101001000111101001001000111100010101001100100000001010001101010111010010110110010101010101001000000000100000011100101011110010111110111011111011000010111001000101011101111001011100000000000101100010101101110111100010101111010101101001011010100101111101011001111101000101001000011101110000011100100000001101111101001110000010101101010001000011100001101101101000100110000110010101100001000001101111101101011010111001011110110100010010100001000000011011010011000111000010101010000100010100101011011001110011010101100011001111010011111010000011110000110011111010010000100000011010100111010011010100001010110001111001010011100011100000010111011100101011100111100110010010000001010101100101010110011110101011001101100011110001000101101111011101100011100001110101010100110101110101011111001100100110101011001110110011101010111001010011011101101111111100000001011110110100101011100011011100010010110011011001011110000011000101111000101111101010001101110011011111000100101000011010101101001110011100001011101000011110011101010100110101001100010001100001110101110010101100110001110010101000110101011111001101101010001000101010110111110000101000111110101010111100010000000110000111000001111001001110111001111010111100000001111111101100011011001110010010101000010010011111100101101010111101001011110100001111111010010111110111001000100110011111111010000101010011101001010101011010000001110011000010000011010100001001000111011000000011001010100100101001110010100010010001010010011101000001011110010100000000011011000011101100000011011010100010010001010111111100010011110000000101011100101010001011101100110011000111111011111001001101000010000101111111000010011000010010110111001001001011001011111100100111101000011000101110100010110110001010100101001110001111011101011100111001111101011011100110011110010110110011111001110011010001100001100001100010100011110000011101011110110101111001101011010000111011110011000101011000010000010010001101101011000100000111110110010011111100110010100011110001011111110010001001001010000001110100001001001100011110111010111011101110110100000000100001100110100001101000101001111100110110101010010110011011100011111000110111011110100001001101101110010100000010100001011110010111101110110100010111100010011010000001110011011100001010111010111010010000001110110111100101101000001100000000100100111000001111010001100110001111110111110110101000000011100011001001000010101111011111000101001011011001011001111101101101010001011010111110001001110110101001001111011011111001011001101001001111110000001100100011011101111101111010101110011010101100101010011000001000110 +0010110111101011000110001001010000001010000110011000011010011111000001110111000101110011001101100001010001110111100011101100000110010100111110001011110110000010101001111010100001100010010110111100111000001110110001100010000110101100000000100110101010001100000001111110111110101110010100101101011101011101101111101011100010111101011000111011000000011000110010011000001011001100101010011001111000100010010000101100101011100111100001110111111100011011011011001110101101000101100110110000110000010011011000010000100011101001111110010001001010000101101011100001011010110001101011110011100100010011010001110100011101101100101011111101111001100101000001100000010010111110010100001000110111100101000001100111000011000011111111010001010111010101001011111111001111001111101010100110101100110000000001110101000000011010000000000111010110110100001000101100101100000110110100111111011111010110000011101101000000101110100010011001000001110000001111110000111000111100010000011101000011101100110101001101010100000010001101001011110111101000000110001010001001110110000110010110001010110100001101001110101011000111111110010010111110010100111111001011000010011011111111011111011011010011010101100100110011110010110001110010011000001100110000000100101011011100101100010101100101000011110001010011111011010011101100000110011001110111100010111000000010101101111001100110000111101000111000110000011111110000111001110001001101011010111101011010101110000011111101100100111110011000011100000111010000101100000100100011110111110111111101110000110000100011010111100000110001000011000101110111001001101111111000010100010110001111111111100101000010100110011111010110001100111101001100110011110011001001000101110100100100011100111001001011111100101000100100010001011010111000010000011111001001001100111001101100000100110100101100111101110101110100010001111100100001010001100010101100001011001011100000001110001101100000010101111010100111000000010100010101001110000100101001000001011110111111001001100111100101100011100011010100000000110001011110101011010110100111000100100101001001100100010010111001001101011101111001101011000100111111101101100010110011011011100100001011110111101100110111110101010111011111111110110011110101100011100100001000100101111000000010111000101110011101100111010100101101011011100000101110000000110010101000001010010011011110100010111101100111001101000101101100011110100101010011011010111100101011101001000101000110001100111000010101110010000110101011010011011010011110100001100000111111101101010001000110011001101111000111110100001001011011010111110111001---------011000010101001101100101101000001010000100100100111100100011011100101111101011101110111111010011001110111111010000110101011010010010101100000001101111111111011100101110001010111111000110001001011000011111010111110000110100101001101110000010001010101100100110011111101111110100010110100010101011100010100100100000101100111000110101010101001100100100011010000010011101110100011001000001001001001110100011110000011101010001100010001100100111110111010010110101011101101101101001100101110111000011001100011010000110010101011111100011011010110100001111110100101001100111001110011001110110100110011110011111000000110111110001111001001000111101101010110110001001100000111000010100010000011111011111001001001100110110101100101110001110101100011011110010100100001011011011100011000001110110110010010000011111011010111010110101110110000000011001001001101011010110011111100100111010111111001010110000110101110100100010001000001010101001011001000111111001100110001100101010101010010001100001001110100010011110001110101101110000100110011101001010000110110010101111110100101011101011011011110001000110000101001001000001001011100000100110000011110100101000010001110010111110010101111111101110011011010101010111011110100011111100011001111010111110100110101100011011101100000000101100000100110110000110001011001101011000110111011101010010000001111110010001110010010100001101110111001110100011001100110101100000110111001001111000101011111001101101111011001101101110000100011111100100101001111011111001001100110110001010001010101000101011111100100010111111011100001110111100011100001011001000001111100000110111110000100000000111010110011100100010000111100101010111101010001100110001001100110000100100100001100000100001010101011010111110010010100000110101001010101001101101000010100111000100101101100001000010101000000011010001011101010010001101011101000101000001010011110101111000101110000011000110001111101001011111101001000011000011101110110000000110000001101100111100010000111000101001000101110011101000011001110000011000010000011010010011010001110110010001110110000100110111000100001111010010111010001011101000110110111011110111101010110011110100111000011111001100111101011001001011101111101011010000100100010010011100010010110111110001110111011110101011011000000110100100110001101100110100111001110111101110100011110001110011110010001010111010100001110101001001101011000100000111101001011011011101110100011011000101000010001011110001001111001100001111110001001011011111000101100111010010000011111011110100011110110010000101011110010110001011100100010101001010010011110011111110111110011100100001111001101011101011111101100000100101001001110001000111100111010010010011111111111110111011111101000011000010011011101110001101011000010110111101111010000011001101101010010000001000010010001101110111100000011110100011111100001100001100010001110101011010100001111101001100011100110101010000101000100011001011110001100011110111001011000011010111111110011000000100010010110000111000101011110010001111110010000110111001001110101111110100110010111011100101001011001100011101001010010110001000011100001111010011000001111101100100110000011101111011100011001000001010000011111011001000111111011111111111010001000101010000110000101001010000011000000000110011001010011010110010001101000011001100000110001111010110001000010110110110110000001010110101010101110011011110010100000111011001111000110111001000010001000100010000100010111011001110001111111010110100011110101100100000010011000011100110100011111000001100001001111011100111110100000110011001100110111100000010011101110000000100101110101110001111101011011100000010001101110001110001110011010111110100000100001001101101110000011000001000011001101010111100010011110110101111110100100110111001000011101010111010111110111110111101010100010011011001000100011110110010001010111010101000111111111110100101111110100110100001011000110011101101000010010100100001011000100101001101110010111111000111000101110111101100001001110100100010010001100010111010000000100001110111100000011010100011111011001100010001100000100110010101101011000110111000111110110000100100000100111100000011111000001010011000101000100001111010101101010110001111101011011101110100010101010011001111111000101010101111011011111111001110101001100001100111101111110100101001011000111111000101101100000011101110100001110010000001110010110000011001001001110111010101000111110110111111100110000111111010000010101101101010111101001000001110001100010011100011101100011011010111000010001001111000001110100010111000000101111101100110100001110111001100011000100111010101001001111010011010100110000110110100010100111011011111010110000011000000111101110000111111001001111000101111001001101110010000010100000001011000001111110100110101110000011010111010100111110110100111101111111101110101001110101011010110101100011110000100100000011100000101010000110000111110001100011100010010010101111111101100101111101101100110010110011111001010001100101100100101000100101110000110000010101010000100110110001110001000100010011100010000101111111111111100000111100011111101001011101101101001111101110100010100100100100111000110100100001100010000111100011111110000101001100100100100110101000000011010001111100001010101101110011101001100010101111011101011010000111011000000101110111111111011011111000110111110000010100110101010000101100100101011100011110001111000000010100101010100111010010100110010100011001010010100100000101010110000010100010011001001110011100010101011111110111001000110100101111100010001101010100000011110101111111110000010110011010000101101001000010010010000011101110001011010010111100011111111011010100100100110010101011011010111000011110011101011111011001101101110111110010010000100011101100111111110001110100111111100000100001100100011010000011010101010101110110001000011000101010011001101110000100001101100111000100001011100010010011111110011000000111101110111011010000100100101110000000111010001001100001111011011000101111011101110111011011100101000001010010001110001000100000011010111011101101010010001110111001100000010111101100000111001100011011100100111001000100110100001101010000111111001001001100111001011101000110011111001101101000111001100010100011101010110011110101011001011010100011100100100101001110111010111101000001011100101010001000001110010110101001000100001110100101110011110011011101101100000010000100010111001010000001001110110111111110111101001100101111001101010100001110110011101001100110111011101000100100010110100100110101111011110010000001111111001111110111010011100010001010111011110011011101000100011001000110100100110011011110100000100000011001101010101001011110101110011010101101110100000000101110010000001110010000110110001000000100001100110000100011001101011111111100001110111001100010000111001100110000000010110011001101001101110010111101010001110001000111111000110111110101011110010110010011101001001110111010000000001010111111001010010101000111001001110010101000011001111010100100110001100100101011001101010000111101110011010001101011011010001001110011100110110011000000110110101000001100110101110000110101000101011001000001011110000010111111101001101100010110011001100111111100101111001110101111011010110010100101110111011000110101000110010000011101110111100111110101110110111110001000111011001000111101000010000011000110111100100001111011110100100000100110110000100001011011110000010110011100001000111011100010001100111011101101011010011011000110011000100110101010001110011101001110000101000001001011000011101111010101111001100010010101110101001101011001010011001110110101101001100011001010001001101100010110101100011111101000000001100100111111000000010100100100000011000100100101101111011100011010001101110010011001110110010011001100111111000001101111111010100100001110110011000010001010010110011010011000100110001001110000010001011010111010011010110101110101001011101100000010111111111000101001111111110101011011001111010111000111100100000100101001111010000110001010011101101111101101110000001110111001111000001101110001010100000010010010101101111110011000100011101001000011010101010111101100010101011100000010001100001000001101001100011111101010110010000101010001100000100001000000011100101010010010110100011010101000010111101100011110100101101101111001100010100000000001011011010001000101000111001010110010101011000100000101101100101010110000000000011101010101011010001010101101111000101100010011110010100101011111111000101110101001010010011100101101011000111011110110000001111010000010001000111100001100100000001000010011001111001101000110111100010100000101110010100110111100100101001000001011110110111100110010110100011101010111100000101010100000111011101100100110001011011110110001011101010001111110011100001010111100110011000100110111111000000110011001110010100100110101101011000010000111101101101100100100001010011001101011001100011101110001110001110000011001000111000011100000001110101010110010111000111000011110101011011000101111111010110011110011001000110010001000101100111001110000000100100011101100000100011000001110010010100010000101011001101001000001000011111001010001111011010010001000000111111010011110000111011010001101100011001001111011001010001001110010010111001010010000111111111101011000111000000011100001100001000010110001111010110011010100100010111000001100001010011111001101000010111100100110101100011100011100001101000101011000111010001001110101001100001110110110011111100010101000100010101111010100110001000001010001110000000110011001010000000100010010100101110001111011011111010110010101001010001010101110101010011010111101100110101100000100010101100100000011110001010010000101010100111011111001111010101011100110011011101000111110110000000000011001000101000110011100110001001010110011110101110010011010101010001001000110011111101000101011100011000000011101001111101011111000100010010011110001100011110001011000001000001100100110100000001001010010111011010010111001101111100101000000000110101011010100110100110000111111000110111001000001101010010001001100110000111101000101010100011001111010010100001011011000001001011000100101001011000110111001001010011100011110110111000100011110011001111110001101110010010010001101010001001100101000101010110011101001110100000001000010111111100110110010001011011001100001010010100011011000011100100000000010101000000111001110110110100111100111010001101111000101000101000101000101111110000100000101011001111010100001011110001001011010111100001110001011101010100011101001100001101100010011111000010110011110101111010000101111011111110001011101110001000110111101100101010101110100001001101110110111100111010001000101000101010011101011010001011100011100000010111100010111011111000100011010111011011101110110011100110000000010101001001110110110010101100101000110001111111001010001001101001100110100101110110110101011110010011001110000010011100110100011011010100101100111010000110000100000100001100111100100100011011100010100101000010011101110110010010001110001100011010100100110011111000001011000101110110110101001110110000010010010011100101110001000100110001101101100010010100001110010010101111011110001101011000110111111010001111110111010111001001101011000101101101001110101000100010011111111000011000011101011100111011111001000010101101100010010011110100101100111001101111001101000101001101110011011001100000100100011000001100010001100101100011110110110011010011100110110111001101000001010011111000010110111001000000101010010110011001000110010001001101000001111010111001000101101111011100100000100111001010010001000011000001011111110101111100011011110111001011111010110111111101110000010101011010011111110010100101000100000001110111010101011111010011100010010001000110010011010010110010110001110010110000001000000000111001000011011001010011100101110011010110010011100101101001100101001000110100111110001010100100010000010101011101110001101011001100101111010101100010011000000011101100011101010011010100101110111000110000001001010001100101100101001100010101001001110100111101011010111001100111001000100101010101100000101101101000110000011100001110111010000011011011010000110010010011111001001101000000000110100000111111111100001010101111001101011000100100010010111101111100000100110111111101011001111001010110000011010010101101000100101111101011000101000101111100110001011100101111001001100101001011100010101001001011000001111001000000110101001100001000011001001100110010101001011001101000001101010010001110001001001111000100011010100001001101000101011000111111110100010101001011101000110101001100010111001111101100001110010101010110111001001110100010110110010011010001111100011111011100001000001001100100001001101100110110100110101000110110111101100111010110001110110001100100001010100111011110001110100110111110011010001000101011010111110110110110001011100110101011110100011101000011101110011000111111010100110101011100100010101111011111101010000111100110010001111001010111111011000011100101010011001000100100101110100011101010100010100000111110100000111110110010110011100000011100000011010011110000010010001111010010111110001110001111010011001100111001000011110010100111110100010001001110101001101100111011111111100101000101101000100110110110111010110110110001011001010110101011011100001000011111110010001111111011101011100111110011011001001010111000011011011001100001000000010111110011100010000110011010100100001010100001011111101000010110010101011101000010100011010000011000100111111111101011100010110100110111000100000010010001000110001110010000110111001010100111101111001001010010111011111000000101110010000110111000010011011101000100111111101000100101010110 +1111001111011100111011010101110000010011000001001110111011010010011111010011110001010010001111111101110010110010010001110111111011011010111000010100111100100000000011100111100011111011010000010111011001011010000001011100011111100001001001111011110010110011110100101110111101001101100011011111100010011001000001101001000111000001101000001100100100110111101100010001001000101011111110010000110100100010010001101000100110101100001000101100110111011101011111110100001101001110111010100110111100010001100110010000101111110111010000011101011011010111100000111101000101111010110100100100010001100111010001011000100011101001101100011001111100100001000011100110100011000100110101000101001000111011011010000101010110101011011011111001010000100010010010000000000110100100011100111101101011001011000100000111110101010011011110110010010001111010010011110100101011110011000100111001001100011011110010011111001001100101101010011000011110001101011010100000001111000110100011100000100000110010011101001110000100100001111001101010111111001101101011011111000100000100111100111011101011010101011000010010100010101010110110001001011111000110000100010100100111100100001000101101011110000110101011000011100000011001100100010110110111100100001101000000101101011111010000101000010110101001101111100101000000100111100000101000100110111001010110100000001111110001110011111010101011000100110101011111000011110110011001000111000000100101110101110111011010100101001000101000000010100011001111000111010110010000111111001101101111100000111110011010110000111001010100101000010001110010100111111100010100101110100000000010100110100001001100000000111001111010110010001111111110101111011001101001100011111001100100010010111110100001101011110000101010011101111001011011001011010101010010111011000001101110010010110111001100110001110001000000101100101111100000000100111010100100110111010000001100101000110011001110011010111000001101000000001100001100111100011111010101100010100010001001010101010011000000000010111011000001011101011001011011111100011011000110101100011011101000000011111101100001110000111001000100001010101000111111101010011111110110101011001000101011000101100011010001000110010111000011101001000010011000001011110100000110110000001000100110000001100111011000100101101000000011000110011110101110101110011110110111011011000010111000110100001101111000000111001101100000010101001101100001101101110010110100001110110000001000011001101111111011111011001111111000001010110011010001010011000101001001000111110000011011101011000110101100100110111100011000001000101001111011010111000---------001011010011110011001111101101011110101110111110111111011000011101110111101000101111010011001011110000000000101101011101101011011010011110101011000111011010001010001000000000010100101100000110111111110011100111010001011010101001010010110000010111001010011101111001001111001100001011111010010001100100110110010001010110001011010001000100101010000010101010010101100101111110001011110110101000111001101101010111000010010001111011001111111000110111110011011000111110010110100111101100000011110101101001000011010100110000101100100000010101000110111011011000101110001111101100000001001000111001010000111010000101011110010111111000100000001100100110000100110001100001001000100010111000100110110100001001101001111001101101011011010101110011100101000000111101000000000111101101010001111101000110001010110000100000011101110011001111011011000001000110000110110100100110000011011000011001100000011100111000110101010110100001001111000101100001100111001111111101111100011100010000110001010101000000011000101010010000100000001010001000010110010100001001011111011010110100000101110110110011010010000101100010101010011101111010000010011100111001101011001110011001111101010011101100010010010001000001000111010110110111111010000110001110011111010111001011100000011001001101010101011111111101110101001111010001100101101100111010001001011010110000011011011011111111011110011000100100101101110011100001100011010111110101011111110111000000110000101000010111011001110111011100001110011001011010010110101011111000100010010001011101000111000000010100001001111001001001100011010111001111011111111011010011110010010100000011001111011000001001000111000100100111100000101010110011111010010001010101011001011101101000111010111001101011000011100010011101100111010100101011010111100010111111010110111011011001110000000000011101110011100111111111111100111100110011100110110001111100101111010110101010100010110001110011101001111110000100100110001011101101010011110000111010001001011001100010011010010000001001011011011110011111011000001110110010100101110011111111111100001101001101001010000110001111011110110010101111000111001101110100000111110001010001011100101100110000111100110011000110001101000011110011010110110001011101100000111011110111001011100000000011100000001101110111000101000001011100010111111110011000001111110001110001000100101111110011111111011101110101100110000000111000101110001101011000100110000100110010010000111100001110010111101101101011100100110100000101110010100011001111010011101000110000101111110101110111011000110110100011101111011111001110111010010001011110010110101100111000011011010100111011000011100011100010100000110011011000010110011101111011001001011011000010000100110011010000101101111000100111011110011000001110001001100011010110001010110001111111000000011110110100011001000110011010011100110010000000101000000010011010000010001011011100001010011001111110010100101010111111100111101001111111001111100010010001000110110110000011111101011000010100001001010101000100011001011101011100110110111011111001100001101101010010111001010000101100010111010000011010010110111100000000101111110011101101110000111110100100010110110101001001111110110001000010101001001101001110110101000111111011101010010100010001101001000101110001011011011000000011111001010111110101000001001110101101111101001000111110101010001011110111101000011100101010011100010011111001111010101011111101010011010110010101110000010001111111001100010111001100100101011001100000010110101101100011111001100001101111110101100011011010100111010001111110000000001000111100010011111110000111010000101100100000011111111001100110101010110101010101111101001000000011111001110101100110010101000110001001001111111100000111000010101001010111101110111101110000011110011101110110110110000110110001001010100100011100101001010101110110101110000100101101011011111101110000101000000100100001110001001100000001011001000010011011110011001010110100011100000010000000101101001111001001101001100110000010010101000000111011111001000101100011101100011010010110110111111000100101000111001011111001011111110011101111110110011101110010100000100111101110000010111110001110111100000011001111101100101101111100101101010110001111110100010010010111000000011010011010010111100110001101000001011101101000100001101101110101100011010101000100011101011001001101101111000111001100111111111111000000100001100010000101111001111010100110101101011100111110011001010010111001000010101101001111111101110011001001000111101010111010011001111111100101010111010011011101010101011110001011100111101100111001110101011010110010101110110101110011010000101000101110000101110101001001111000101110000000111000110110000100100111101011101100011100110100000010011001000110010000100000011100110100111101000000100110010110001010100110010101010010001010100010101000000100101010110001000111110101000010011000001010111100000011100111010101001000100101100000001011000101011000110001010010100111001010000111111100111011110111000011010111001111110101001101101101010011011101111011000100011001000101001101101100101100110101010110111011110110101110111101001111100000100010011101011000111011011111100010000000110011110100100101001001001011100000111010000110010011111000100001110110010000100111100110110000110011010101010111010110010100001001110100001100100000010011100100001000111110100011111011000001010011000100110000100010000011101000001011100000101111110111001001010100100011111101011111000000100000011111111000011011001001000100011011101010000000101000101001000110010011001011010101101000011100111111010101011001010111100101111000000110000010110110110101110111111110110100101000011111111001010010101000110010101010100100110111100101111111101000000101101100100001110010011010101000110010100010000011010101100010010010001101101101000001111110010001011101110100000010110110010101101101100011000001100110101110011001000010001001100011100010100110011110110110011001000010101001001100111100110010110001010011111110110001000100111010110010110110000101010111111111011010001001010000001001000010010111011000101110111100110111010101001010000101011010001001101001011001011000101010011001101001110000100010110011101110100000110111111101000001000000110001000001111011010111111001010011001111011100101110111100000000010010111001010011010111110010101001111011010010101110001000101011001101100110100110101011010010001011011110000110101000111101110010111100101011010000110101000010011010100011010111011111111001010010011101000110110100111010101000110110111011110110010000110011010000010001111111010100110111110011010100111100101111001111111100010110101110010011011100000001111001100011110000011010111001010001101110110110111110011110101101011100011101011000000110011000010000010100111011111011110001001000111001010000001011100001101110011110101100110000010011110010011100001110010010110111011001001111100011110011001011101000100101111100010100101111010110110001111110000111010001101001100100001100110001100010100101001101010100100101001110001000111000101111111000010100010001100010000111011111100100111000101111011011010010001100101011110111110010010111111001100000110100000100010010000100110001000001010111100011110010010111000000010011011000100010001100000001010101101101101001100001100000001100100011111110010010101010010000000111011110110000000001100100110110111000011111011000010110000110110011111011110100011100000010010001011100001110001101111100100101111001111100001010110001110000001110001100000101111101011011111110111001111101111000100011010000000110110000001001010000111000101001111000111110010110111110111001001111010001101011100111011000111011010011000000000000101110010110110110010100100010010000101101010011111110000000001101111010000010111111001011100100001011011001111101010111111000011011111000101110011010101011010001101100011101101100100001101110010011010010101010011011011000001111001000000101011111111111010010100010010000111111010111100110000100001000101000011011000010000110100101110100001001111010000110001011001010000000010110000011001011000111111101100000100001000010001100101011011100011110101111001100001110110100011000101101010100101101101110101111101000101000010010000001001000000010100000111000101010111010101001011001000111100100001001011110000001100111001101000010101111010100110110001000110010011010000110101010101101011001111010011011001110100110010110000010011100100010010000100010000111010001110011000001100001001011100100010101111000011000100011110111000011100100011101011110000110010111000100110011011010101010010101000001110010010101010011110000000011001100011000000011001101110011101001101010011000111101000100100010010011011101001110011010100001001011010001111010000111001110001001000111111100110001100101101000011000110010110000100101010110011010111111011111001011010100111011011000100111101011110001110101110100101010011111110101111111001000111101101100101110001011100001000110001010010111111101011101010011110000000111010010000010011101011111001101011011001000010100001100001101100110110000111110001000100001010001011001111000011010001110101001001000101110101111111010111101000001101011100111001001100101101110101101001110011011011010001100001100001010000110001010011000100010001011110000011011110001010100111001010101010101010010100001100011011100000001000100010000111000011011011111111111110010010111111000101100101010110111100110000111111100001111010110100101101101000110111000011110100011101100010010110100010011101101010101001111101111010000100010100001100001101111111100101111001010011111101000000010110111000011010011111100110000101011000000001110110101110001000100100110001111000001000001011101110001010101101100000101100011110011010001000110101101011101111011111111000010000110001100001001010111110111101111111101111010100011101001100111110111111111111111110010011001110010001111001101100000000011110000000010011100001011101110010110110101000100111110111110111101010100011101000111000111001011110000111111001010001001000101110011011011010100110010001110100110011110100111101101000111100100010111101011110110100001001101001111101111100110001000101010111000111101010000110011011001001101011011000100101111010110000011000000001111100111100100001001011110100111011011011101011001110011010001101111111000011001100110000100100111101011010111100111110100111010101010010000000000010100100000101010101000011100110101011101100011010110110011001101110011101011001101011100101011100111111001001110000000111011010111111110110111001001011010000000101110101110100001111100101000011110000010010010111000100010000000011001010101000111100010010101110000000001110111000000111011100101010010001000000110111111000100011101100010000111111100000010100011110010111000010101011010101101100010100100000110110101010110110110010011110010110110000101001101100001101100001111111000101001000011100100011011101110101111110100100100001100001110100001000000111101000100001101010100010111010001101110000011010111011110111010000010010011111010101000100010110100100100101110010010000110010111010011101100011111011000000100100001101010010110100000000100110111100110000011100100110001001001111011011100000000001110100100111001011110011001111011100011000100001001001111011000000111011000011010010001111001011011101101001010110101010111001011001010111110101001100001011011011101101001000011011001110100001011101010101111110111111111000011110000010110001100100110100000110010000111101110101010010000000000001110100101001101000100010100110000111000110000001010010100010110010010110111110101001011111101101011100111100101101111001101010000001110100001010001101100111010011111100101100011011111000111000110111100100101110110001010010110000110000100111011111110000001111100000111011111110100001001001101011110000100100011001110110010011000111101001000000000010110000100111000000100100000000110011110000011100101100111001001111010100101110001101111010010111001001001110100110010100011000111011101011010100011100100001110010011111100011111110100000010101011101100010100011011111101100001100100001101110000111011001101000011111001101010011010000001011111000010100001101000110000101111000100011111101100100010100011110101011101011101010100001000000100111011111101011011011101010100101010111100001101011100100010000010100011111000100011010101100101101001010001011011101110111100010101001010110100101100011001001011011001010010111111000110110001011110010000101100011001010000001111010001010110111110001110100010110000011011111110001111111111100110011001111010100001110110111011111000011111001100111100010010011110001001101111011110000000101001111110100100101011110001000001100100000111111100000010111000000101101000001011001100010010010000110000011111011010000100111011010001001010100010101000010100001011011110100000110101110010010111111110110111100100101111100011001001101100010111011000101100011111001000101010001011011110101110010110110100100111011000110110011101001010110010110110001111010000110010101100101000111001101011110000100000101010011111110100011010000101010000010100001100001101010000101110110010001111100101001000110010010100101111100000000110111110010110010111100100000000110000111111001100011000101001110101101110100111011010000001100110101010010101100100000101010011010110110001010011101110010100001001011110111010001000000100100111010001001101100011111110011001001101010000010000001000001001011111100101110000001000001010001101000111111101100001101101100011110000101000010111101000101000100000101000011110010111001011010101001101000100011111100010110011010010001111000111111011111101111111000000000010100111001111010100000000000111000010110010 +0101101010101010011000101110010111110000100110010101010010101011111100000101101010011010101011100011101000010111110111010000110001111101010110010010110010111101111010101011111101001001001101011001100100110011101111110001011100001101110010011001111000111111100011010101011001010001111100101100010001010100000010001111111111101010001110100001010100100100111100011110111001001101010110000110110110010100000011100000101001010010110101011011101101100000000110010110011001100101111010000000101010100100110100101001100010110111101000000010001111100111001111111110011001111101010101100011001010011110101000111000010001101110010101001101110011100110111110000001111111100010001101110010101001101000011110001110000011010000001101100100010000101111010001001101111100101000000011010011111100101101100001100101011010101110110010110001101110101110011011010111011101101001000100001001000111110111101100111001110010010010000000010000101100110101000010011011010111010110101110000010111011101101001011000000110101000110001111110010010001011011101111000011000101001111001001010110001111111010010000010101011001110100001110111011110010101000011111100100100011010110000000011011011011110111111100101100110100001101100001110001010000110111010100010011100001100001010110101101011011001111100010001111101100110010110100011001000110101110110100000110111101110101001001010010010010011011110010000111001111010100100110100000100000111101000010000101101111101010010001100001101111100011000000000011110001001000000000001111001001100101100001101000001001111010101110111111010011111011001100011001111010110110110010101010111101111100111010101001010111110111011100110011101100001001011111001011010110001111001101010110111010101110110100100101111010101010100100100000000110100110100001100010000110010110111101001100111001000001000001111010001001100110100110101000111101101000100011010011010101100001100011010010001011001001010110110100000110010000100010101011111111101000101100100010001010001111101100101101111010000001101001011100100100001101100000110110110111001100111101100110011010000101011000000010111000111101000110101011001110011111110110001010000100101010000000100010101110000101001111111010111111101010010011111001010010000011111110100111001011000000101111111011011111100111011010100110011011000101110001101111000001101010100001110101011110011100100000110010101010100000110111001000101110001111000011001010010001101001111011000100111111100111001111111010100100001100110011110100110000001001110010000001100110000101111100101110110110101100110101011000001001010010101111001110011---------001111010101111111001001111001100100000101110011000011011010101111110111110010000111000000011110111110101111000101011111010011111101010100001100100100100001011100001001110110011111000011101110111111101111110101000110011110011100110000001010111001111000100101100100100110011110000100110111111010101001111001101101100100110111110010100110010111101010110010010010011110011111010100111011110010101010011001010001100011100010101011110001000000111010011011100001001011011011011011011011011011101001001101010010100101100100000011001000101111011011110000001101000111001110010110111100011001000011101100100001010000111010111011011100101000111100000011111001101001010111111010100110100100001111010001000011110100000101100111001111101011101000011111110011000110111000000010101101100010110111011110000000110101010011011011010010111010010000001011010010101111101101000010100010100111010110100110001100000100101010100010001011010001001111110011110000010000111100000110110010111101111110001001100000010100100000101011010010100110001011110000111101101001010011011101000110111110011001000100100010011011111011100010010011011011100111101111011100000110100111100000000011111100100111100001111100101000110110101100110001010111100001100000010001111010101110111010110100101111110000111000010000000001111101100001111101100110111010110100010110101011001110010011010001011100010100010010100010000000100111000001011010001001111101010111010000010001111110110100111010111111100000011011111010101001101100001000111001111100110000001101110011111111011010111000000101111010000110111010000110010011110111100110100101011011000110001010000001011010011001010110101110001101010010000100011011111010011000111111111010010011110001000011100110011011101010110110011001000111110110110010101111111101110001010000011101011000010000101010111001101100010110011010000110111010101110011000110011001010101010010110011001010101100111001100100010000011110110001101011000010110101010001111100010000010111100000100101011110011110011111100010000111111001100100001100100000110011001010111001000100011000101111000000011100100010010000111001111111110100101010000111011110000111111101010010110001011110101101110111100110011111111111111101001100100011001001101110110110111010101110011000011001010000000101010010011101111000111111101010010010110100101101110100100101100011010110010010110111010001001010000101010101010000101101111010011000110111110000101001000101011010110011001100010000011100010010111000010101101010111100010010000000010100111001011011111101110011001100100110000011100111110111001100010000001110011000011000110010011001001010110111000011110000111110001101100110001100111001011101011001001011001000001110011100101001000011110001100101110001101100111000001100111011110110110010001111111000011001101011111000110111001010011100101110101111001010101100010010111111000101100110001100110010001101000000000011000111111010110011101011011000010001000010101110110011100100011110011011110110100010000110001010101110100111011001000011011100000010110101101111011011100110111110011010101110101110101110011010001111010111100011111010101001011100111100011111111111010000110111111110111000111100100001110011010000001111100001000001011011001001110101111001011001110101110010000111000100011001001010111001001101001110111110101010100101110111000101011000110001100100000001111000000001101000010010011000100001010011100101111000000111111010101100000101010000011001001010110111001001111010001100011011010101001001001001000000100000111000011011001110110101000101010100100011110011111011100101100001001110101101000011110001100100000100010111011100000011110001101101111010011011100001011100110011111000011111100011011010110001101001110000101001011000100111100000100011100111000010010100101010010011100010111000100100010110110011111011011111011110101010111001100010101111000111111110011010000001101110100101010011010001101101011100001000111011010110001000110111010101011101010000011101101001000010100011010000111110011010011101111001111010101111101000000011110010000101010010010100110001001111001101101111110010111011111010011100001001010010011010100001101010000010010010001011101101010000001000101110011001111001011011100101010100000101010000111001010100010111000000110111110000101100001110100000011100101110111100010101111011011010100001100001011111101001101111011000001001000100110111001010101100101101111011000101111001010011110010100011110010010010010010001011000000111001100010000111001010111001001101100110111111110001010010101101111110011010101100011010010111101100101111110010001111010000011101111100111110101110011100100010011110001001100101100110100101010110001100111111010011101110101100100100111110010010100011000010001010011110110000000110100010010010000111000010101011101100000000010101001001110001000100110111101001010010010000000111100011111111110110001000010001001101100101110010101010001100100101001000000101011001010011011001110100100111110111011100101110000000101110111010010000011000111110000011011001011011110001111011011110101000101001100001101000100100011001011010001001100101110010101101101010000111100100010011001111011010010001001001101110101011101100011110100001110101100001101101000101110011011011100001100111000110101000110110100001100111101000010010101001110100100100010001010101100111010000001110111101111001011001111110110101010110110010010101100100010000101110100001111001011110011010010011000000110111001101010101101101011101011111000011011010101001110011000100100000111010100111100100010011011100110100111110101000011111011101110101000011101000000001101111101010100000110101101010101000110100110100011110000001110011101000011111001011010100110111001100001110000101010111110111110011001111011101101011000110001000001110000000001111101111110000100011100000001100010111001100111100010010110011111001000101111110011011000100000001000001011101110110100000000110101011111001011100001101001000001100100100001000010001110101000111010110000100000000001110110001111110110110100000000101011010011000010101010111101110000111111111101101000101001000100001000000000010100100011111100100010100000000101001110110110111110010100110100100111011111011110101010001001100000010000000100011000101000111110100100001101000000100001010010110100110110101000010010001110011111101000110111000110100100110011010100010001110000111000100010010111101100010000111110010000110100111010111000010100001100100011100101100001101011001100000000011011110100000111010011100101111111010010000101001100100111101000010100100011011001000110100010011101111000100000100100110000011111010101010110001001111111010110001100111101111011110001100011100010000010100011011000100001011010110101110000010100110000100001111000110111010111111100101001001100000111011100011111001110101000110010001001011110001010101111100001001100100000100010100011010010110011000011101101110000011110101000000110101001011100101111110100111010010001011000100100011111010101011101111010110001100000001110001111001010001010101000110101101000001100110111010110111001111101001001000101000101110111110100110001010001011011000101001101010100000111001110110100000110000111001101110010100000111111100011011001111110111101001000001000101010100001100101000100111101011100001011101010010100100010111010001001011100100001110000111101100011011100100000010011011000111101100100101011101101110011010001111001101111111100011111010110001100011000111001111100101100001010011001001000110101110000000100010110100110000001001100101001110011010111101110111000011011001010011100000100001011010000011111111001101010111110000101110011011101101001000011010100001100101000101100110000111111010101111111000101000011110110010110111001011100000010100010011000011001101100011001100000111101101011000110101001010000001000011101010010001000100010111101011011001101100101001001101011100101111000001000010110111101010101011011010100111010111111011101111101010111101001101100101101110000101000011010010101111001000011110011101110010100000011111000000010010100101100110100101101110010011111101010010010001101000000110111101100101110110000010001111011011110010001100100001101110100110101000011101010100101101111000111101111001110001100010010101101111000110100111010110101011011001110011101000101011101010110101000000111011101100001111101101101001100011111011110000010011110111111111000110111011111100111010100111110000110001001110011110000100000000000111100001111100100100001101001000011000011011110000010111100011101100011100101011011100001011101001000111010000111111000101101010011001000010110001100100111110001100100110111111010001001110001001111100000111011001011000000001011010110100001000011011011101110110000000101011010000000101001010111101111110111001000001111001011111011011101000111111001110001111011101100101101011001100001111000111011000000100010000111101111110100100111001010101111111010101101000100111011100001111000101100101111000011110011011110011011101111111101111101111110110111000000001010011110011010000111010101111000111110111000111100010111111010101001101101101010111100101001111000000110010000100010110011110101011010100011100111010001100011011101011101101110111110001001000011111101000111100000110110101000110011010001001000100001110011001101110000010110111111111000010101001001000110010010001100001100100110011000111110110111110010100001100111010000011001001110011011000101001100000110010001001100010110010101010010000010001011111001010010110100111111110110011001111011010011000011001010111101010001010000111011010100001101111001011101111011110101100101100101100101100010011001001101100001000010101101110001100001101101110001100100010011110010111111000000011011001100101000101011010111010110110000100000100000111001010111101001111110010101000010100000001001110110101010010101010011011010001000110010111001111101011011101011001010011111110011010100101001011000100010110000010011011111000110111011010010010000100000010001100011100110100011101101010010111001011010111011110011000001011000010111011000100000101100001111111000011001010011000111011110111000000001101101000101111010111101110110110000111101010001010100010100110010010010011001011100100011011010011101110101010000010000110001111001110101011000111010000001001101101000010111110110111100110000110100001101111001001110010111110110011010101010010000110100110111110111001010101000111000110101100101010101111010111001000010101011001101100110111000111001101010100011011100110000111110011000001100011111110010111101101101111010001011011110001000111011111001111011010100100010100010100011001010011110000110010110010110011111011100011001110010110100101010100100100110000101101011110001100000111001011100010100000000000011100010011110000011010100010011110100011000010000001100101101100011001101010011011111110011111011000100111110010100001111100110000101110010110111010110010100101001010000101111100001110000110001101111001000111110001010011111000111000001101101101111010010001001110101101111000010010010111010010111011101101111000110100101011010001110100111011100010110001101110101000110100100111000110000101110011010010110010010010110011010110000001011100111001001111000000111011110111010000110101101111010010111101001001110100111011000000101000100111111010110011111100001110111110110111010001101111110110011101100011100100011010001011111110010111111000110011110100000110011001101011111111010100010010011100111101011101101100101101010010010110100000111100010100111101110111000010001100001101111110001111001101100111000011011001110111010100100100101010011111100100100111111111011101110100001000011100111110110000100111110111110010000101010110001000111110000101011110111111001010110110011110010100011010110010100001010101110100100010110111001110000111101111111010000101011100011100010010111111011101111111011111101010001101111010101101000010100001110010100001001010010000000000010110011001111001110000111111111011011010011001001111101110010000011100101111110101000100000110010000010100011101110010000101110110011100101001100100100000101011111110000111001011100001111111111010011100010110110101100011011001011111010010011101001010011101010010100111011101110000010110100011001000110011101111000000111000011001001111010101111010011001010101101010100101101101101101000101100010100111101111100011000101001101100100011110001110101010000000010110010001110101100001010010010010100010100000111110111101001011010011010011011010001100011111111000101110010000000100101010110111000000001000111001010111000110001011010111001010001011011011000010010001111111111101000110011111001111110000011111100010111000000101011011100100101011010010111100111110011110010011110101110011000101100101101010011001100000000110011010001000101011110011110100011000101000010000111000101000101101001010010101011011100011010111100011110101101011100001111110101011110000010000000011000011111100001101001001000010111001111011000010010101010100101010011111001110110101000111110001001011000001001011010011011100101001111101010100111010101100101011110110000000111111010110001111000011000010001111011011011110010111100010111010010111101001000100110010111100111000111110111010101000011010110100011010101010110000110100110110100110000101110100000001000000010011001001110010011101111110001001111110100000010011000000010011111010010101101001011001101011100001111101001101010111010011111000100111100111011010000011010010110101000010011100100001100011111111011001010010010011011001011010011001010000000000100111100001001100110011010110010100000111010111011010101101111001110000001010101000110100010000000110011011001110100011000111110000011001111011111010001101110 +1010011110001110010111110101111010111000011001111100100101101101100101110111010110101000101111011100110010010101010000110010111101001101110100010011010011000000001001011111100000111010111101110001010000011011101011110000010000110111010100110001000000110010101011111111110100000100111001101001101010101000001001111011000000110101000000010010101000010100010101101011001110001111100100001011000110001101001010111110100001111101110000111111100010100001000011111111001001011000011010101110010010101111110000001111101000110101110000001011100101101001101011101100100010000000101010101100010001011011111111010001000001110100110100110110111100101110111001010001000001011100110001011100100101111100101010110010010011010111000011010111001000001100111100100111001111101110100011110101010110101001001111011001001111111001100000000101010101011001100100110001100100000001100000100011111110111010011000111100000010010111010011001100110100111100000010101001010111011001111110011110100100110010100110110010001010010110100100001110010011101100100010101101001000001111001001000010011001110100111011001000010100100001000010111110011111111111000111011101000000001101001111100000000000010110111111010000100000110010011001100000101101100011101001011101011011001100110011100111010010111111010001111001010111011101011011100110011010101000111001111100001000110011010101100100101100111010010110001001110010001100011000110110111100001111000101110100100101001110101000101111011011100101000001000110001000101010101011100000011000101100000001111010110111111011001111111010111001110001001010100001010100101010111101010100010110010000000111010010000100000001000000111101001001101001010111000000110000011001010000100111100011101011100101101001010110110100110110011101011101110110111100101100101011110111011101111110011111011101000001100000100100100000000111001011011111000010110110101001001100000101111010000110001111011010001110001111101111001001110111110010010110110000111010111110100011010001011010100111011110110101111001000001001110001000110100011100010010101000000011010001110010100011010010011010010110100000110010011011100001001111110000010011000010111000001100110100000000100111110000100001101001111101111000010101000011111110111111010000110101100101001111010100110000000010100011111010110100000101001100110100101000101001011011001000111001101010100100101001001000010101110110010011100010001011011111110110001100000111110011101000111000000001110110110111001111100000101010001100100110101101011000000100000110001111001010111010001110011111100100011011110101000010100110111111001---------100011101110001100110001101011011110001001101100001010011000111000101000010010011101101001001010011100111111010000011010001101001011000111111111011000100000100110110010010001110100001001010010100110110100101011001000001111100110100110110011011110010011011110101101010101000111000010101000010000110101011011111010100010101000110110001000110001110110111000101111011101111000000101010100100001000111010011111110000110101110111001011000100010001100110011101101011000100011100000010000101001011111001001110111110111001000100011000101100000100001010110010111111110101101000011001101000000011001001100010011100110110111010010111011100000100100001110111000100011110000000000100111100011101111011010000000101100110011010110010010101100000010111011001101100010111000010010000000010100010101000001001101010111010011000100010000010110000000110000100110000001111101110010101010000101011111100111011011000011010101011001110000000111110101110011001010100101100001000010010011010100111001000000000010001000111001001111110101011000110011100011110111011111100110011110110011011011010011011000100101111011010111010100000001100000110001100000101111000101010110011010011101100101111111010101101010011101101001010101101000001010010010101001111111001001101110110111001100111010000010100011101010101110010100011100110101101101100110101110111111000111101101100011000011001111110100001101001100111000011110011110011000000101111010010011010111101001010000001010110111101010111010101100011111011001111101000101100111101001101011000101000110110000111110101010110001111010001111101101110111110101110000110001001001000011100101110011101001101010111111000011010110010101110000001010101100001100101110110001110011110101011101101000000111101100000111110001001011100111010111110111100101111111000101010011101010010100010110001100000011010110000110110111111110110100111011000010010101100111100010000000111101101001011011111000101100100001000100111001010100011110001010111010111101100101111100011101111010001111000011101100101000011001110101111010011010011110111001010111100011000011101111001000001111010011111011010100000111100011110000001010110010111110111110000001011010100011110011110011000011110111010000010001110101010010111010101110010100111100111100101011101110100000100101001110110111100101100100110100001101111000000001000101001101011000110110101111010110111111010001010100111110011011111000101011110011011010101000010110111010000101010000010111010100000000101100001101100001110001110110111110110101100111011011000000000100001100100111100100011110011001100111000101101011011101101110001100111001010110100100101111011110110000011000010010100110110001101101111100011010111010001110100100011011110110010101000001011011100110100110011101100110101100110100001111100111010101101110110101111100010101001010101010100011001101000101000001010010111111101000101011100111101100100100111111110000110100011111111010000110000100100100110110110000100011101101100010010000111010001110011101111010110001011101110011011111100110110011111111011001010101000001110110101011101011100110010011000110011111100000111000001111011111011110000110101010010000101001110110110001000001010100000011100000100010001101100100110000110111001111000000011100110001100010001010110111101101101000010001100000011000110110010000010001110111101000001010001010001011010111100100010101001010100111000101110101101110110101101001110010100110101001010110100001100101101111000000001111110101100001000000100100001000100011100011011100000110110100001001010001110000100100111101100011011110011100010010101100000011100011001011111000111011010101001101111000011110111110111111111101110111011100010000000111010000100011100001000101111011011101001011010101101111110001010100110001010111110101010101110100011000111000001110011001101010110000100000101011110110011000000000010001110011110010010011110110001010000111001000110111011001000010011110111000011110000001101100000010101101110100011000110011001111001111010000001011010110110101000011001101001111010111010010000000101111111110000100100100101110011111001001010000110100110110100101000110100110000101110001010000101000001110001011100110101011110100000100100000001000111001011001000100011010111100101100100110111110110110000100101100101011011010100101111100010110100011101011101010110000000001001000000010100001100100101010011101100110010111000101100011011111110101100001000101010111000011011000101011010110010101001011111101111100110000000000000110010010000011111011111010000010001001000110010100011100101011011010000100100111001110101011010110001100111011101101011010110001111000000010101111101101111010100111101100100111000010001100010000101111101100100011001011000010000100111000001010100100011000101101001010110010101110100111111000011101100011111001100000011110000111001011110101100010110101100000101000010101101100001111010101101110110100010010111001010011000010000110101111110011011011101010100100110001101011001001100011011011000111101111111110001101100101111011011011001110101111011110011000111000000110111100011111001010001001011111111100010101001101101001101110000110100010010000001100100111011101111110111111111110010010010011111011110110110011111110110000110001110011110111111001100001100110111000001010011011000101100001111011011101101101000010100110101001011100111100000001000101111110101000110001000110101001110100111011110110010101010000010100100011011111101111000001000011011111010100001011001101011111001000010010111010000001101011010011100010000010101000100111001000000001010101111010111111001000100110000000101110101001000001100010101000010011001000110110111100011100100100000111100100100111100100001011111011010110000011001111011011000111100111010111001010100110110101010100000011001001111000110011110111000011100011100000101010100010001111111011010011000001110111110111111110100111001001010001101010010101100110100110100101010000100110100101010111101111001110010111111011111010111010010100110000010100100100111011111010110110111001000111110000110100110000111110110010111001010010011110100010111000000011100100110001011100110001011001111000101011111101011101000101111001010100110010011110111010101111011110010101011100011011011111100110010100010000111110110010101100111100001100010010001110010010010101011100011000001001111001010110101011111110000000000111011011110101011000101000101000011101010000011010100111100001101101111111010000111110011011100111001110100110010011111000000101000010010101100001010011000010010101100001100111011100000000011000100110110010110001011101001101000001010000010101011100011011101000000110000101010000000101001010110001100111011011110011110101000000000001010001100111110110101010001001101111100101001110001000010110100101100111110001100010110010000011110111000000100000101111001000111101000011100110101010100000111100001111011010011010001100011101011000110001110110111110010111101101110101101001010101001110100100001011000011110110000111110110100111100000011101000010111000100010100100000011011010011111101010100011000111101101000101101011001011010111000010011100111010010100000101100111110111110110100001011000011110100110110011010100110101100000001111010011101100010000011010011000010011010101111011111001001101001101100011000111000001111010101011011111000110101111001110010001000000110000111100100011011111011001110001000010110111010100101001101110110100100111101000010100100001000001110111100001110110110001100110101010111010111001000111110100000111110010101101101101001111010100101011010011011000011110101111001011110010100001111000110011101000010010100100110001111011000111100101011100110111111100110011000011011011000111010001011111111001100000010001010011101000100001000011000110001010011011000110001111000101110100101111010110111011100110101100101111101100111000111011011000110011011000001011011010010001000010101101100111011001011110101000000001000101110110010000111111110110000101011111001100011111111101001000100011001111110100010110010001111111001111100111111100001000110100111011100110110010001111110000001000100111111110000101110001000010011001011010001000011000000100111110010000011101011000010011101110011000111011110101010110001101111000011011010000000111011001111101110011010100011101000001110100101100000011101001011100100101100100011010001010010110010110111000000111001001110101001011110010101000111011101101100011011000110010011110111000100110100010111111110001110111101000010111100110110100001111001011010100111001011010111100011111000010110000100100111101110101010110101001000111100001011011111001110100101110001001011010110111110001011111101011001100110011010101111110011010100001110100101100000000011010100011011000111111111111100001100111110101101110110000000111011000111010001000001010110001101111011111011001011000100110101110100110110000001111001100000011111001111100100111000011101100101100111001101000000101000011101000001001111000110001000010111011011000001001001001101010110010001000100000011101000101111100011011010110101100000111100101110110011011101101111100101101001111110111111011111001110001111101001111110001100100001001101001101010100101010011000101100110001000111111000100110100011001001011001010001100000101111111011100101100101011001011100001011111011111010010010001010100011000110011110010010111111110110000001001001000010011001100100010111011000001001001110010101111100111001010010100001111000100110010011100110100010101110100100110101010011001110001001100011000000000010110100111110101101111111101100110110010100110100011100111100010011000100001001011011110010111001010110001010100011110110111011110110100110010100011110100110001100010100010001000000100000001100000001000001010001011010000010110010100111111100001101011001110101010001010111010100001000001100010101010100111011101110110000001100100101000001011100001110001111011010000101111111000001101100000000111101001011101000000100010100110000011010101101110110010100000111100000101100010011010000101101101010110111110111010101011110011011110010110110111010111000100101011010110110001001111001100010011011000001000000111001011111001100110010000101110011110100111010000010011001010100001100010100100111101000100011001010100011000110011100010110100111011000101001101010101010111110011010110100111101010010001011110111000101110001001010001001000101101010000101001110000001100101101001111000001100010111101101010011001101111101001010110000100001111110111100110001000011010001000000111001011011101001011011001111101111111000100110101101011110001111110001111100011010111011101001100010101001001000000110001011011001110111011110010111010010010101110001100111101110010110011001001101011000101110011100011111110101111000000101110001010101001100111001010100010110101110110101001111110010010000001011110101001011001100110110010111001000100100100100100101101010111011100001100001011110100100111110000000101001001011110101101111000000111111101100101110010010010011001111110111000011101101000110001001001100100100010001110100110010111010000010010011110000000110100000101001100001011100100110001110011010100101110011010001001010110001001100101000010000101111000011110101101100101110110101001001101001101000100111010011110110110010100001110001010000100110011011010010111101110001001001010110000101011111001000110011101001100101100010010110010110000111110100100101101111010000011111011101111101110010101101110101111100111000100010010000010111100011010110000010010000101110111001101010011111111110011000010111101111111111100100101000001000001010011010010001001110100110111001010000100101010111110010010101011010011110001011101000000110100001011100110101001101111000111110101001111111100111001111010010111110010000111011100100010000011100101110001001001011110100111100110000001000000011000010100100101100001011100001010010101101101001110111100110111111011100010110010001100010110000011011011110000001100100110111111010011110011011111010100100111000111110101010100110001010011100110100010101110100011010101001011101101001110010110111000110000110111111011000111101011100010000100111100011011111001111011010000100011111101001111001000100101101011011110011001010001001001011100001100111000101000100001010110001111111000010001110000101001100101101001010110111100101100001010100010111000111001001001110010101110011100011101100111100110011010111011100011111000101110101011100011101100010111000100111110110100100011001111000110010010100101101001000000011000101110010111111101101000000111101110110001001100000001010001011011001001011011010010000100111011100100000011110000110111101000101101001000001010110100100110110000101011010111000100000101101111001100110000011011101011110100111001000110001101001101110110010101001110111111110011000101101011110010000001011101010010001000000000100110100110100000001000000001110111111000010111110001001000000101110111110011101101101101011100000001010001110111100010001011110101001011011010000100001111110100100001101110101100111000100000111100111101111100110111000110000100000011000000110100000011011010001111101101001010011000110000000111010000111101000001010000101100011111110110010111000010011100011111010000110110010111111101111001000000100000010000110110011000111000111101111101011000010001010011100010000110000100001001101010010100101100011010110101010110011001101101100001111110111000011010101110010111010100011101000000101111100100101111101101110111011100111010111111110110010010000000000100100111111001110001011010000110001001000010101011100010000100000111010001011001110010111011001000110001000010100000000111111100000100001001011100011100110101010000010110001110100011010110110000100011010100001100 +1001000000111110110010101111100101001101011000101111010101110110101000110110110000100100001110100010111111111101110100101000001110111010001010100100000010010101111100000001000100010110111011100000100000010111011101010000111101001101110010101101101100000011111101111101011010010000000100110101101010111101011011111110111101000011000100101001100010001110001111101010000011111011001001100010100000001111111110000000000100011111000111111000010101011111000110001011111100000000101000101010001001001110111000001001100011111110011110000110011001010110001011010110111101011001111011101111010101100010010010100011110110010001110110011101010011110010001101100001101001011011111000111001111110100110011101100000101110101011011001010111010110101000110011110001110100110101110000001001110100010101101111011001110111010000011001001011110110111110110110001010100100010101110000001110000010001000000010010011011100000010101001111000010000110011101001101010101001010010010010010100110011111100010001001010011100001111000001100101010010101101001110101101101000001011111110001101111110000111001100010110110101000000000100110100110111010000100001111010011000111000101000010100101001011000111011110001010100011011001001100000111100111111110111110100010111010100110101101011101110000100111110010100101001011110000000011101110010011110011001110110100100010010111110100010001110011111001101010011010111010100011111111011110000011110000011111111000011010010110011101111000001011000010110110011101101110000011110000111111101001000001111011010000001000001100100110001110100000110111010011100111101001000000010111100011111111110010110100010110001001000010000101010101101010011000110101011111010000101001010010100011101000110110001100111010101100110010011000101000101100011000110010111110110110011100011111011000110110101101100001001010111000110011101101101110100111110010011100000110001110001011100101101000101101101000111111110111001001110101000000000010000101111100100010001010110010000011110001111010011101010010110010100010101111000111010110111110111000000110100100111010101111000100101001000101111101000011110001001110111111001101111100010100001101111110101101001000011100001100101100010011111000110001011101111101101001000010110111101110010011101011111101101100101001100111111101010110101111010100110001111111010000011011000100110011110110001010101001000011001011001111001100111111111011001010010101110111111100001010101011010010101000011101100000011011111110101010101110101111111001110000101000010111110100011000010100101000011010100011011000101100101110011000111010010111---------000010111011110010011110001111111111110000101000000001011111001010000010011100100111101011100010000111101001101100101010100100101011111011101110011011010000111101111010100101001011011100000001111001100101001101000101010110011010110111011000101001110111010000111100010111001110011101011110101100011001010000110010001111000110000001010011001110000001010100111110011110101011100000111001001101101110111100100111011110101111110100101100000000010001111110110101011010101010100101000111001101011010011011011101000010011100101011000011101101001001010000011000110000010011010001110000111010100001010110110101000100001111101101110010001010101110000001100111000100111011100010000100111000001110111111011111101100110101001010100110101000011010110010000111001101101010101101110010111110110010001011111110011110101010001111000010011001001110110110111100000100010110101011010010110010001100101111011110000001010110001001101110010001000001100101100111101011010100000000010001110001101001011111110011111111010101111101110110010000101111000111111110000100001100110111100011001011011110100010100100111110101000111110100111111101101011011010110100011110000111100100100101110000110111100110011010001100101001000100110110000100111100111010111101010001101101110011010001110001110011111000011011011110111000000011101110111100110001100001001000001100001010011100000001101101101011010101101011111010000011000010011011010100110010111111100110010111001101101000111010000001001001111000101000010010000101110001001100110001000111100001000000011011100100010110101000100101000010111001101100111111110110010001001111011010000110110100001100000100110110111110111000101110001001101000111011100100010001110110001100111011011110110110000101101101000011010111011101111110011001000000010010110111110101011001111010000010101011011001110001110110000011101110110110001111110011111010000000011001100100111100011010100001001111000110000100100011100011001001111100111000000011110001010100000110100111111101111101110011111110001010101001000110011100111011111010111000010011001001001000110000101110011000100100000000000010111001101010110100000000111111101001011000001100110100001000110011101101110100011011010001110101010100111011010110011011101000011001001101001011010110010011111010010111101010101111100101000100001010001110011001000011101010000011100101011110000010000011000010011000110000110001011100100111000110010110101011011001010011111110000111100111011001100000001100000001100000011001110000111101001101111001010111011001111110111111110100001110110011011000110101101010010011000101001110100110110000101100100111011100111010011010000111001110001111110010001110011110100001100001001011110000001111110111001110101111000101100011100111110110101010101101001011001101000011110101100111000101011010110000101010011111000101100000101001111010110110000011110000001111000100011000111000001110110000011101110100101100100100101111110100101111111111010011011111100100110111011011011011001101110101010001111000110011100000101100010010000101101110010000000100001101000010000101101101100101110001111110010100011100011100010101001100010001011010100111001101011110000000000100011101110000011001001010100110100110001010011100101010101001010001011000001100011010101110101000111001001001010001011111111111110110110010110101010000010011110010101000001010101011100111011011000001001001001000010000101010011110111011100010110001100001100000111011000100110110001100010010010010111011100110010111101110000011011010111101000110000110001011001100101001110111010000101110101000111111111110000000000110000111110100110111010111011010111101100010001000011011000010001110101101000110001010011100011111000100011000100010111101001100011000010101110100011000110100000011001100011001001101011100001100101011101101110010111010111001010001011001001111000010000100110110000101000101001010001110010111100000001010111010010110110011001011000110000101100110111000101011100110110011000000011100100001011100000101100010101101000010110111011110100110100101011111110001111100110110101110100111100110000100000010100011100011000000011010111010000101010000101010101110010101011101100000100101100000000010100110110111001001101101000010010101000001100111011100100010001110010100111000110111101001010011111011011100011101110110001110110100011000111010100011100100101110110011010010111001100110001000110111001011111111110010010100010010111110110011011000011010100100111000110010000010000001110011011010011000000110111010001100001010010111010110001011101111011010111010101010110010011010001001011000011111010100110111001000010001001011010001101101010011001110000111101100001010110101101000111110011001100001001011010010101010111011001010111001000010110011000001000001100011101111010011010001001100011111101111010111101001110101101100101100000001100110000000000111100100011111111010011110010011010011100001110010001000111111101001101100010011011011111100011011010110100101111001111001010011111100000111100110101001000110001011010110101000011101000101010000101110111000100100110001011100001011000001110111111110010101110101100001101100100110000010010111101010111010101010101000111100101100110010000100000001101011110011110001000100011001100010000000010001001011011100001100101101111101111110110011011011010111010011110010010101111101100001111000101110111101100001111110100111001011000111001010011101100010111110111010001100001011111111010101101010011100011100001111111010101000110101101110001101011010000110100101110010101001011001110000101100100010101011001011000001110011101100101101010100101001000111100101100111001010100100101101100111110111111100110100111100001101101100011011100111000111110000001100101001110011000001010111101010100111101101111100001111101011100110101010111000010010010110100011110101001001010110101001000000001000011010101011101100111000000100000101000100110000111101111011101111110101100011100000101100110000001101101011111010000100100001111000010100110001100000001110100111111010100111101000100000111100001001000111110110111010000010010100011001001001011101110011001011110111111001001011010111100101001110000011100100111001000000101111101101001010100101111110111110110010000001011001000101111011101111100000011110101000100110010010111110100011111010000110110000011110111001011101010100010111001101000100010000110001010100001010001110101110100110001110110111101111001000000011001111101100100000101101001110110111000000100011010100110111111001000011100001000100100001001100011100011010011101100001111001111110010101000011101111001001010010011001111000100010011011001010000001000000100000111110000010101110110010101111001001001000111011011001010001000010101000111111011101100000011100110000100010101111010010000001110000100000101101100100011000110100010001111001011101111010010011111011100101110111110100111011100001001011000001001111100110001010011100111000001101011111001101101010011100001101001010111100010010001100001010101000001011011001111111100010111010100011100110100000011001110000010000111111110000100001100100011110010000110001001100111001111110110010001001101111000000001001001100111000110000110110011110101001011001011011100001001110011110001110110111010111101011111010100110100111001011010110100010111000011011100110011101100110011011100000011101101000110011100001100110011000010101001100011001000011100101100001101101000101010010000011110110001111010100100001000100010100011000110011100100010100010001011010111011101000011101101000001100001011101110101010001010111111000011100000100001100110110111111111100011010100001111110111111011110010110010101110001111100011101011101100010010011011110001011010100010000110011111110100100110110110010010111100101000000000110000011111011100001100100110101010011010001100000011100011100011110101001000110001110001110110110101111111010101101100001011000001010000011000110011001100010011101110011110110010000001111011000111100011001101110011000001011001010101010010111011000001000111000110011001110001111111100101011010110110011101100100101001010100010100111101000011101110010011100110010011111100111010101011100011001111010011011000111101010100111100111110111001000111010110001001011000001001110101110111110011010010011000000001000110011111110011011001000001100110101011101010100010111110010100110100010010110111001111000011001001101111011001101000000101100110001101001000001111111110011111101110011101010000110100101001011111011101100010011011001011100000011100110010001110000110111000010001110000000001100100011111000100010111100001000100000111100111011001011111001101111001011111101010101111011100001001011110011101001001010101110001100111011001001101111101011011000011111100011100010100001110100010100100001010011111111110110100111111001001101000101010000010001001001110000001010110110001000010010110001100001101011011011101110011000001001101010011110110100000001111101011011100101110100010010101110011001111111011001110111111011110010111001111101011011100111110001001010101101001000110111110010111110010010101010000101000000010001101001111110011000010100101001000000011111000101100101101100100000000011010011011100111011001000100011011010011110100001000011000000111001011010011100101110001010000011110101101000111000111111000000010111001001001001110110110001110110010111100101111001111111101111010010011001100110100111010110101110111110001001101110001011110010000111110011111000110110101100000001000110100110010001101011011001000111111010111000110100100110101011010010011111001010010001100110001010011000000001001000001100100000110111011000111001101110000011110101111011001011001011100110011000000001111001000110111101111010111000011110010110101010011011100001100111111011000001101101001010110001001111000100110001010100001100000000000010011101100111111000101101000100101001110011000111000111000001101011111001101111011110110001011100010111011100011111110101101000101110110110101010110001010110000011110100111100111101110111111011001110000010000001100101100010110100101110110110010101001101010101010110101000001101101010111100110000111011101011001100000001101101110001101100111000010111100001110001101000000101001100101010110011100101001111001101110010010111001110101010010010011101001010011101011000101010010101101001100010010001011001010111011110001010100010010110010010010010000011110000110001101000011000001101010000110100101100101111011111111000011110011000010000101010011111110100010101001100100111110100100101100011010111000000110110101010011000011010010111111010010000000111000000111011010101010100111111110110010000010001011000111000010110111111010100011111110100010110101100100101110111101101011101110001110000000100010001101101100010001110010111010111100101000010101010001010011111101000000000110100000000110001101110001100010000110010001100000111110100001011000111111110001111100010000100110000000000101010110100100011000100101101010100000000101100011110101000011011010001110101110111110101111100101111110011100001100000000101001100101100001010100111011011000100111111111000111110111111011010011010110100010000011101011010010101101110011011001011110010101111011001011111100010000111100101011010100101001111011110101000000011100101101111011010110011011001001111101000011011110011010111111100000001000111010011000000100011001001100001001001100101111000011011101111110101110101100010001100100100110000110010111101101100011110000001111011100111111111111000100110001001011101100010000000110100101111010000001100001001011100100110010010101101101001111111100011101100010001010011101011111101100010011011101000000100111110011100110110110000110011011010010001110101011100110011110110001101110111110100010011010010011110100010011100001000011110010010001001111111101101000100011011100101011000100111100011111100110001000011010011100101100011101010001000111010101001100100011111011101010101111011001010001110101011010010011101001111100000001110100100011100001111110010101001110111111111101110110001001000101101101110000111101100110000001100010110001011000101111110100001010001010100100011110000101000011011100011010001011000110000100000011101011110101000000110101010101100101111101010001100010001111111010101000110001011000011110111101110001100101100001010110101110000110100010111111101111001010010101100101100100111100011011111111001010101101100001010101101110101111011001101100110010111011001101010001111111001000011101111111111100010000101111011110001000101001101000110011110000011100000000011101010101110100000111100010111111101111011001010011010001100101110101011001100010010000101000111100000101011001001011101000001011110100101011000001001011000010001111111100011110100111111101011010100101100010101101101111111101101010111011000100000101100111110011010110100100000101100101011010101101111011000010001101111000111001000001000110001000100011101010011111001111101100011101110011111001011101100111110100111001111110101100000110011110100111110000000010010111100110100100100001011111001011101010010000111000110110001010100111100101110011111110110101010110110101111011101011101011100001111100011111000101100010101100100011111100010111001101011101111101000010011101001100010100100110001001100010100000001111110010110001100011101011011111011110101001011111000101000111100000100010000110010000100101001001111011001100001001110010111100001111000110110111111010010010001000110010010111001111100110001101011011100000011001000100100100111100001100010000001010011100111001101111011000110110000101111101001101001111100011111110011100111000000000100001000110000010101011011010100100011101010110000000011111010000001011011000110011110100001010010010110100110100110110 +0001001011010100011100001101101011100101100111000100001111001001101111000010110011110111010111010100101001011011100101010011110011000111010000001111010101110110010110011000111000000100011101111010000100000000011101010110101110110110000101011010000010100001111000101100011010110100100001110101010010000101110111100011000000111011100000111001001000010110101010101101011010001101010110001000001100110110011111000100110101000111011010001100100001110010111101000110101111101101111001011110111100101010011111101000101001000110001010111010010010111011011110110000010111011000000100001111011101111011110010000111001111010001110101110110010010111001101000110011001111010110001000110011001001101011010111001001110001101011110110000011011101001000000001011110111101110100001011100111010100101010101000011011101001000101101110111000111010011001010110100001011000111010010100100001101010111011100000000101101011011101110100010011001111111010101101001111110101010010010010001010100100100001111001011110110001010110110001000000001011001010011110100010100101100011011010000110000101001110010001101010101001100000111011100100110010101001100111110000101110001000100000111100111000110101011110101110100110000010010101100010111000100001100100010110010000101100001000001101110000010100010111100000001001011001110001010011000010101100101000000101101000011011111010100100111001110100101111100001101010110100001110011110011101000111000111011010011000000101110111000101110100011001010100011101111101010100100011000111111111100101100111100010000110010011111001001110100100000001010000111101010001010110001110000101010010111010001110001100011111011001001010000111000010110010000100010101100101001111010000101001111111101100111001100001101000010101001101110011001000100010010100001011100101111001100100000010111111101011001010001001100011111110110110110001100101101111010111110010000011111111110011100110101101110000000110100100011010100010111010101110001001011011000111100011100010100000110000100100101010111001100001000101100111100010100101111010000010000111110110001110100100101001001110110010100011000001000100100100000011010101010100011111010100011001011011000110111111111100011100110100000110110001000110110000010011000110100000011010011101000001100110000111101001101110011111110011010101111001001010001000001101111001110011010001111000100100011101101010110000110011011000111110100001000010010000110111101111101111100101000110010100111100011010001111101100110011010010001101100111000101100101100001110100111101100111011011000001110010000010001000100010100011110001111000001---------110100110101000100111000010010100011001010000000000010011111100001010110100101010001010100001110010010011011011110011000111111000010000111000101001101111001100110010110001100111100010000000100100001110100111000010100001101011110111000111110000100010111110111101011001100011101111001110101101001011110101101101010100110011100000101111011101010110101000001000101000101111110110100010111001000100101011000011010001110100010010111010010011110111110101001010100100000011001011011010010001101001010010010101000010000010101101101111100010011010111001101011011011110101100110110001001111110010010111100010010001110101111000111001111111111000011001111010000101011000001110100001011110000100101010010110000000011101110011010100000110000010111010111110100000100011110000000001110010101100110011110000010101011000111110111101010011110000101010110111100010101011011010001111001000111010101010000001110001001011100101011000100111010001001010001011010011010010111101100011001010111100110110111101111010100101111100101011011001000001010010111110110011111101001000100111100001111111011000101010100011000011000100100010111010111000110101011111111010001000111111010110100110110100111110001100101110011100111010111111001000011011010010000010011100010001100000011011110000011001001110100000011000111101110110011000110101100000110111010111001001000101101110010110111001001001001111100000001100110001001111111000101001110011010011111111001111011101101011011111111110100110110001101110011100000111000011100101011111101101101111011001011000101110001000001111000001010000010001101011101001001110000111010110010111000110101001001111011101000101000001110011100000000010001100010000111001010101001101101001010011100110100111101010010101100100101010010101010100000110111100110011010100011011100100011011010100001000011000111001110111101111101110010111011100111010110000101110101111110010010011010100111001011111010000010010011011011000000000100001011000001011101011101111010011101001011100001110101101100011111010111101011000000000100111100010001000110011111000111111000011010000100011001010101110100110011100011101000100010001000111001101101101100010011001101101111000010011110111110011001001011001110001111001011100111011110100111001000100100101110101111111110101011101001011110000111000010001100101111011001000101011000010001110110011011000000110000011001110011111111100100111001011101111011001010100110001000111100110010100000110101001001000010110000000001111001000101000101111010011101100100011101011011000100110111001001101011110101000000111001111111111001011111011001101111010110101101111110010001000111111100010110101100011001100100001000011011011010001100010111111011101110111010010100111100000110110100001110000010011111101011100111111011001100100001011010011010100101001111011000001101000000100110111101110101001001000000100110111111000000010000000101110110101001000000100101001101010011001001000101110101000101110100010101101111111000110100011101011110010100101110010011111100001110010010101000110110001010011111000101100100010101010010010010100101111011000011001001101100011100001111111001100001011100110011111111010001001011110110100011101000101111011010011011110111111111001100111100011110100110111001101001110111111001001101010001010101000001001010110000000001001101101101100100101111110001110011101100010111111111101100101111000000000110101011110111100010101101000001110010101011011100000011100000000011000010001100010111101011111011110000010111000100111110101010101000000110100111100110111011000100101000110111111111010111110010001101101100101110111010000001101000100011100000010000001111111111110010101110101101010000000110010110100101100011110011110000111111001110000100001011000110001110101010010111111110101101011000000001001010001000001110011110011010011111010011000011101011101000010001010001111011100101100010001100011011101111001101000111001001111000000010011001100000000010111100101110100010000011101100000100101100001010000000110001100001010110011101011000000001111101100011101001011011111101000111000000110010101111001110001000111100000000110000010100100001111010000011101011010111001110101100101100000010000111111001100100101100010000011010001010111001111101010011100001011001101010100111101000100010101111111001100000110110110010110111110000001110111101110000111111000001001110000100101000010011000011011000101101001010100011110101110101110110111000101100000010100001111001100010110011010000101010110011001111101101000001111010101011010101011001111000110101010111000111001000110110111100010011011010111011001111001101001110110011011000011010111010111001111101110010110100000110101000000111001010001101001110111100100111100011001011110011000100111000011111111001010011101001110011011000011000101100001000001100011101000011101110011011101010000110000011001010111010010110100111100011000010111011100101100101011010101000011101010010000111000101101010111100111100110010011110000101011110100100000011110111000001010000010000100100000111110101110111000101011111100001110110011001000101111101110101101101101110000010001011101000111010000110100000111111011011000100110000100000100101100100000000001001000100001010101001110101100101101000100001101001111000111000001001001100010001000010000010110100110000000011000101001111011001001110100100000100100010001001011100010101110101101101010110010001010111011101010010011000001111001100100110111111111011010001000000011011111111100001001101111010000001000010100001010110010101001110010100110001001111101101001010110100000010110101001010001100101100100000000000001100110101001001101000011000011101100100100101100001010001111111100100110110001010010010000010111111110110111111110111100000001111110111000000000111101111010010010001011000001010110011011001001101001001101110110010110001111000101000111111111000010101010111011100101010001001100011011001011001001001100000110010000011000101100001100111011010110010110011001001000001111010100000100010101000111001101100111110001111011101100101001100011111001001010011011111011110001011001101101000010110001000100110110101000000010110011011111111000000001101000110111001001100100101101100111111000110010000110010000001000101110010001110101001101101010010111010111110011001011101011101000111110010101110111011110101111000101111001100101000100001001010001101001101010000110000011001011011001101111111000101111101011111000000000001110111010001110111010111101100011000101111011111001011011010011000111011101000010011000000101001010100000010110001101101100110011000100101000010000110000100001010101101011111001111100101010011111111100100100110110100010001011001110101110110000111110101111110010010110000000100110010010010101010001100011011101010110100101111101010110101110011011011111000011111110000000101111110111000000110100101010001101010111100010111111101010011011110010001101100001111011001100101111101010100001011000100100111000111101001110000111000001010011000101001111001010110000011110010111000001111011101011001010001010011011010011010000000111001100010110110001101100011011011001000110010000000101110011101001110110101100011101110101100111110010010101110011011000010010011101001110010010001010011100101111100100111011100011010000001100110100001011000110010001111001011100100001001010101010110001101000001011010011110011101111100100001011101100100100001011111111001111110010111101101101101100110101001010010110111110010001111011000010110010011100101101000110101100100010011001001000101001100110101011010010010000011111001100101110100000001111000111010100101001111001101010001010111110100110010101100111101010100001010100111011110001100110100011110110110110010111011010010010000110100010001111101001010010110010000011100000101100100111011111010001110100000010010000000011010101100001101111110011001010011100101001111110000110101110110000000000000111011110010100010001000111110101110010001001000110010100010101111101001110000011110000011111110111000100001001111100011010001000011011111010000000110110111100111011100111010111001110001001100011001110011000100000010100001110000010011011011010001110110111100011001001111110110010101000001000110000101100101111000110010110011000001001010011100001000001100000001011101100101111001101001011000110000001110100110111000111110011110111000110001111001001001101001001101110111100111101011110110010011011111000100100000000010100010010000111010000000111001101110000001001001101101101001100011010011111011000110001000111111001010011111111111000010100011000110011100010000001001001000001010010111001000100111011111111000001010000101001010100100111010111101101110110100100001011101010111101001000110001101110101111001111101011000010001110010101001011001011101111011000010010101010001010101100011000001010011101001010111000100001100010100100111000101011000111111010000100011000000110000010000000101011001100111111101100010011111011101100001110111110110000110011110010000010000111011010010010111101100100100101010010001110001010000001000010010100100101001010110101001110101110100000111101100011101011111000101100110011011110010010010111000000001100011110110101110000011111110110000001111000110100001001110011000101000001011011000111010011000000011010101001101110010111110010011010001000000101000100010000011001100010000000101011010011000010001010011001011000110011011111011001100110111001001101111101010100010110010010011111101011001100001100000100100100011110010111101111000000001010011000010110011110111110011111111100101111101111111100100110101011101100010010000001011000010010011011011001011110100000101101011100111001000101110000110110010111110100010110011010111111010100010110000000100000011010000011111110100010010001001101001011010000110000000110010001111001101010010001000101100111100001100010111111001100001001000010010101010010101101001011011001101110100010010001001111001010011111010110101011011100111010101110011000111110101111000011100101111000111011001100001011010110101010111101110100100010111100100011001101010011000001101010110011100001010000010100110100000000011000011001101100100010100100110100011111011001111110011100000000000000011001001001010101110101110010001010100101111101000101100000001101010010100100010110011100100100101001011010110111100000001000110010110111101001011100101101100011001111100000101000011010110100000011010011000100101111010010111110110010111111010110010001110001101100101001110110111110110100011110010110011000011001001110000011110110110011010011101000100101000110110100001000011101110101011010010110011011000011001110011101111110001011100010001101001101011011100111100111110010010111110010001010001100000101100011011100011010000000101110100001111011010111001111001110000000001000110110101110100110100110110010011101100101100100111111101001110010001011010110100101110100111111101001010111001000100010100100110110010001001111110101011101010101010101010001110111100000001111100010101101011110101000100111001110010001110000011101001111000000010110110100001111011110001011110001011001000101011011000001001100110100110110001011101110100000010110000111100000001101111001110001110101001011101011011011110101010000111011110110111111110100001111101111010011100110110100110010110000001000110010000101111101011010011001110111100100011011100111010001111000101001101010000010101010100101001100001010011101111001000110000010010011000000110011100000101010111110000110111110000111110001011001101100110111000011111110100100000111100011010100111111111101011000000110000001011110001001000000110011101110001111110101101101001001100100110001101100000001101010010001101010111001101001111100111010011011011010000101110101010001101110000000110000101001000101101100010101011011101010110001100001011011000111101010011110100101110100110101111110000100110010000000110100000010011011110111100110001010111010010010111000001000101100101010011010110001101100100101101110001101000011101000001111000000010110010001011110101110101000010100110001001001011010111100001100101111101111001000000010100101010010100010001001000111100111011110001110000111001001100001101001101001110000100001100110101101101100000111101110100010000010011100010110111010011100001000110110011101100000100100101010010110110011010011010010110100000011100111011010110111011001110100110111110011100000011011110100000110111100001110001001111000110001010111000111000111011001011011111110100101011100000001011101111011100101110011000100100100011100110100010110011010000100000111001101100100000001000101001001110000000100001000110101001111100001110010001001000111001110111111001101111111111010110001101011010101101101011011011001111111110010010010100000001110110111100101100110101010110000011001001110110100111011101011011110100101011111001101010010111000000001011011010000110011001000101000001110111010011000111011111111001000001010010110100110010110110001101111110101100101011001000001100000100111011000001001000000000111010010111011000010110010001001001010100100011010010101110100110110101100101110110001010101001010011100001100100001111110110110011100101110111111000010011000101011011001001000010011000111101000011011010111001010110000111000100000100111011001101110000101011001110000001101000000111111011010101001000000111100001100010010101010110101011110011000100111101001110111000000010110000101100101110100110100111100001100010110010110000100001011000110110010011000101000100010111010100111011011101011001000110011101110101101010010100011000101110100100100000010010111111001101011110110010101010101011100001011000000111111011110101111101001111101111000110001110000011000001110100011011100011101101010100110110110111001010000110111000000111001111 +1011111101010010011001111100011011110111001110100000000001101000110000000010010110110111001011000111010000001110110100111001011110101011100001000010111000111000011000011011101011111101000011011110011101100000101001111100011000011010010110111010001010011011101001000100001010000100000001001010010100100011000000111011010010101111101010100001001010101001010111010111111011010001111111101001010111011100010100001011011001010011011010001110111100100111110101000001101000100100110000101000010100101101111100101101111001001010101100100010110010110011001001000000000111101000101010010101001000011010100110000011000111011011111010001001001101011000011110100010011111101011110100000111010101011111011111100111000001101111011000001001101101001000001101001110100100111000001001000000100101000001011001101000010100000101000010110001010001000011000100110101100110011011111010111010100000000100111100111100101111010101101010100001101110010111010111000111010110101011110000101111011010100001011111000011000111010100101100000000111100001000101101101011110101111100110000111101010101111110101010101100100100101111101100100101111001100000000010111100010000001010110001111100000000010100011000111001011000111101000001000001000101000110111010010000010011011110010001110011101001000011100001011001100101010110010111101101001111100011110001001111000110011110101110011011000111010100011101000100000101011101111001111101111011101111101011011000011000010110110010010101011110100011011111100010001010001100010010101011010100011111001101010111110011010100100110110100110011101100110011110000001000010100101110011011011000110110000010000100100000000011010100001111010000101010101010101100000010110110010000000100110100000000110111100010000101110111110000100100000111110101000010110001001011000111001110001111100010100100100101011110110100111101010001011000111100100111001010010101000110101000111101100001101110100010101100110101011101110001101000100110001100110010010101110110110100101101001110011110001111011000101110010110000000010111001001100100001101101010000001000101011110000110010110100111110110100100011010010100011110110001001111111010111011001000010100011101010001111111010100011110000101010110001101100001111101100111000100100011010000101001010101010111111001110000110111110111000110010010010101111001110001001000100111011011101011100001110100110101011001000101000101011101010101101011000110110000001100010101111001100101010000111000111101010101101010000110100001110000010000011010001101101010110001001110001111111101111100110011101101010110111101110111110100000110001---------100000101100011010110111011110110010000100011001000010100000100101011111100011101011100001010110000100110101000110001100100100001000000011111000100001010001011000010110110100100100001101001010101110101101011010011101110001101101110100111011101010010100011100100010111000111101101101111010101000000001000110011001001010100000000100111000101001011110101001101110001011110110111110010000101000100111110011010100110001001000101110000001110100000111011100000000011000011010110011000101010110111011010110001111110000111111000001010001010101100100110000101111111000100100110011000001110000000000011010101100000001100100100001110001000011110010111111001101000110011000011000110101010000111010100111000010110001010001000011001101111110111110011101100010100000111101100000100100111111101011000110010100011011001100000101111010000110001110011110010111010000011101010000001010100111100001110000101111011011101110011000111110110011011100000011111011110110001100111010111101111010000100011111011100001010000000110001110001001110010110010011001101000110111100101111100110010010111101100010101010011111110100000011000110011110011111110010101010011110110100001001001100110011111101101101001001111110010010000100000011001000100100010101111101000110111110001010101011111110110111110111111001100011000111011011010100111000010010010111111111111100011111001001011111000011110101010000010101010011100001010110001010001100110001111101101100110111100111101101101101010001100010001001100001010110001011010001000010101101111011101100110011110011111010010000000111010111110010111100001001100111000001000000011001100000100111001111110110111111111100000101111001110100111111100000110111110010100010110001011100100001001011110111000000001011001110110000110010010111001110101110100110011110111000110001111100011011101111000111011001010000010001001101000010010001011010100111110001000011101001101101111110001111000111001011101010100000111100110011011111110101011011101010101011001110110011111100100001100011001000010011110111111011100111000100011000101001111011101011000111011110100001001011001010010111101100001110011010011110110110001110110000101000001100111010011101000010101000100000010111110011110001000011011101001010100101101000111111011100011100111100000101001110101000111100111110110111101001110110001111010100000110001110101010000010111011001000110001100001111001110011110011001001101101111101010100110000010110011110011000100010001011001000101011111000011001100000011010100000010100100111011111011100000011010111110111000010011110010111001100100110110101110110011101110110111110001010011110010011111111101110011011001000011101000010011011001110100111111001111010100011101001010110011010100001110011000101000110111000010010111001011110000110100010010010111111100111100100010111110010111111110000101100000111110000100110100110100011110111110010000010101010010010111001100001110101101011101101101111000001000010001000010001111101101001000100000010011011010101101101001111100001110110010101000001010100111011111011100111010010011011001011111101011101010001100011110100001100010001111011110010101101001111010100010001011100111100000110111110111001101000000000001000011110000101000110100010111101110110010001011101110000101110001010000111110000010010010111110100000100111010100000100010101110110010011010000110000101110100001001011110110000010100010101001000010111000100110100101001101001011001000011001101011111100000110100010000001110110110101000000000000100001111001011010010001001111000010100000011100001010111011100010001101100101000111000001001111011111001011111110100110100101010110011010101010101000110101101011000010011111101011101001110101011001001111011100011000011100100100000000110111110100111101100101000000010110111010111001011010011111111011101101001001001001001011110011111011110011011001100101101000101011000001111000100101100100100011101110001001001111101110101010011110011000011000001110100111110101110101111100011111010101100101101011001011011100101110100010011011110110010101100110010111111111110100000100001110000010110000000001110110010111101011001011001110000011000010001111010111100110110111100110010011100101011000101011001010100111001101001110011010001010110000100010011000000011111111110000101011101101001110100100101001011001111110000010111011101111001010110010110000111010111011011111111010100001111010000011010010000011101000010111010011000000100111000010100001001000010110101001101111000100111100010100011101110011011011010101110100011010000010011111100100010011111110111111000111111111101111010110001111000101000101111100001101100111011000011100111110011001110011000000111100001000001001111100010011111010000111010000111011110100000000000111010001110010111000000111010101110001000010111010001101010011101101110101011110010100011000110000001110110111001110010010011001110111111111100011100101110101100100111001000010011010101010101011001110100000111100010001001000000111000010011110101110011111000111010111110000001101110110000100110000101011001011101111011001011011110110011110111010100111101100100000010010010111100010111001001001100011001100000011001001011000010011110011100110111001101100010101001111111111000101000110100101101001110110100001110110000110110111101000011011001011010000110111011011110011001001010010011011011111010101101000101010000101000110010100011010101000000000011010110110110101011000000000111011100011101011001001100010101011111111010111001011110110000101000110010110111011001010100000000100100111111100100111001010101100001001010011111100000101101100100010101101110000111110101001011001001110010011111000111100001100100100000000000011000111010100000111001010111100011100110011110101001000110111110101101111000000101000111001101110101011110000000011111111000101000001010110110110101110001000111110111011011100000110001110111001100111111001011010010100111010100000111110000010110111000110001101001111001111100111101011011100000100101110011100001101011111110001101000111101010000110010010110100010000111111001101111100001111010011101010111000011110111001100110001001010100001111011110001101011111001010010011010110111100011111110010110000000010000100011010111011001010100100110010011010111011011100101011100010110010100100101100100110001011101101001101010100110111101101101111011100001001101010100100111001100111100001111011010100110111001011111011111011100101101101000010100111001110000110110111011001100110011101111110100011011000100111010111000101010000100000101111011010101111000010111101111011110101101001011110001011001011111000001100010001001100000000001110000100001111000011001101101111110010110010010001011110101000111101101010110011111100001111111011011101010011111011101001010111000101010010000100101100110101001001111010101110010010101000101110010100011100100011100100100100111011010001010011010000010100011100011010101111100110101111000000010111010101101110101011110101101011010011001000000001011001111000100111010000010010110110000111110001000001110101010001110111000001100100111101000010100100111000000110000000100000101101010011100110001111110000111111011010111011011011011010101110110101010011011011001110101101100001010010101111110011110111110011110110101110110011010010001000110001100110010010001000001010111101000000011000101010011011000100110111101010000011011101100001001011010111111110100111101100100100110101001000110010010100100000000011111010011101000101011000111100100111101011000000101010001000101110110100010011011110001000110011100001010000010001110001111111010011000011001000100000011111110011100100010000011101000110001101101011100001000101100111110110001011001100111011110001110001100011111111010011100100111001001111010100001100011000111010000110000111010001001011010110100011011010100110101010101110111010100001001111111010010001111110010110001000001011010000101000110010000101110101001100110101101001100000101000111110001111101100101111010000100111001100100001000000001000100001000010111011000101000100101111101000000000110110000111100101100011001110110000001100000110111100010011000110010100101000101110010010111000011101100100010101111001111001110110110001010100110001011100100111010000110010011011001100110010001111010011100000011101001000101011101100110010000001011011100001000100100101000110110001100001010011110001001011101010000001110111101000100100011100101100001111000001011101100011010110100101111010010101100100111011111010111000110101010110100001001110011011011010011110010001111010001010111010100001001110111000000100110011001000100001000010111101100011001010011110111001000010000100011111011101010110001001000001100110100100111010100100000101001100100001001010110101100110101010011101101001111011011011001010100001011000101000100101100110000011001010110001101110001101111111110110100010011100100100011110110100001011010100100000110001101000001011000110101110011010000010010110110000011001101000110000001111111100000100100000110000010101100110011010111100010001110000001011001010010100100001010001010111110100110101001010100011101001011101101111000110010000011000011000011000100110100000011011011000101110010010011000001111100010011000011010010000101101000001000010011010101010101111110010010100101010101001101101111111011011111011010100101100000010001010111010010101111111000101000101010100000010110110101001110101001010101101110001110110000000111011010100111100101100001010000000101001010110000001110011100111000110000001000010011010111110100010110100111111011001101100001011100111011111001000111011101010111101010000111011000001100001101101110101011000110001011011010111110100010011000000110000110011101010110110001100110000100110010000011010011110001111011001011111001111110010010001000010000111111111011100111011100011100011000001001011010100000101000010010011101010010000011101110001110100000000111110100001000000111110100001100110010110101001111111110001101101100011001011001001111111001011010001100010011001011100100001000100001110110101000110100001111010111011010111011101000011001110100011111100011010010011111101101000011001101010011000010000001011001111100101011100010110001100111110101010011110011100010001110111111110110101001100010100010011110000010001101100001101111001000000100111011000001100101011101101100110001101010000000001110100111111110000000110110011101111111111100011111110000110101100000111001011000010110111101011010100100111011101101110100011111010111011000110011010101101011110111011011010101111010011111000100111001111111111101101000011010010010010110100110111100001100011010011001001000111010001001110001111101100011101111110111100001010011010100010010000100110011101101100101011000101100100011100101100111111100010011111010011110011011010111000001110011010010110001100100010100100100001010000111010110111101001001000000101111010000100110110111110111000010000100100101110101101011111111010101001110010111100101101111000011110110101110001001100100101100110101100101011000100001100110101111011000011101100010010001111110110011111101010101100010101101011000000010011101000010011000001011111101100110111001111001010110101110000111101010111001011010000001101010001110000011101010000010111011000001101010110101010101101001100110111111010101100111011000100110110111010110010101010000000000100001111011101011101101011110001011110110111001011100001000110110000001010100010110001101111100100001111001100001001110110100000001010000111111100111010011001010011011110001001011111101100111100000101010001011111101100110100101101110100011011010000110111101111100010011100010111000000010001001111101110110001001001010111110111011001011110011010110010110110101010000100101101111010101010000001111111011011101011111001100110101010101001110001110110011111110110000001001101101110001101110001011010010101110011100110010010111110000101111110110010001111100111011101110100001010111000010001010100010100011101111010000100110110110011101101010110010001100101101100110010100010101111001010101011100101111101101000111010111001110001110100011100010010010011001111101100111010000111010000000001100011010101011100010111010010000101100111011110011001010101010011000100010100111100011000101101100010010100110111111001101011111011110101111010101011000011010110011011111110100100011011011111100100010111110110010001011100111010010000010110010000101000100000101001101110110110011110110000010011011101110101110101100110110110010000110001100011000010000110100000100101100111100000100000011001010111010100001000000011001100111010010011110001111010001011010101001000100000101100001111001010110011111110000010010010110011110011001000000110111100110110101011011010001111101011110110001101101101011011111111111011011001011010100110100101011001001101111010110101100001110001100101101011110010010110010001001110011101110101111111101000001111000011001001011100101101010111110101111011101100111100100110101010010100011110100111101100111011101010111000011000111111100000100000100010010000001010011100001011101110101011000000010000100000001001001000111100100100100110111010101110111101111110001011100100010100011100000111101110101001011110101010100100001111000111101100110111111101011110011100101101001100000001010101010101010000111101101011001110001101011000110010101000110101000111001110111100010000001010100000110011010000001101110001110111110101000110010101010100010111110011011111101001101100001111101011000111111010000010111000001100100000001000011101010101101100001011110010011111110011010001111111111111010001110001111101110000010000011011100011111111010101110110001000111101011000001101110001010100110111000000001111101101100110011001101011111110001000110001100001110110 +0100101111111101101001111110110111000011001010010001010001011000000000101010010110100101000010110100010010100000111110010001001101101101001001101110010011000001101000010000010101100111001110011111000101111101001111111100010110011100001110001001011100111101010110100110110110111010001101111001011010000000010011010110100100110010110000101110101010111111100011101111100111001110010011000101100101001101101011010111111011101010001100000011001111100101001110000001001010111011110110111000011011111101010111000010100101100101001110111001100011010101010101110111010100111000011101110110111101011010101101111100101101100100010110000111110101101010100011100011011110011011011101000101111101011101001011010000011100000100000100011100000101111000100000110011010000010101110001101001010011100101000101110111100010010100011100001011000011011011000011011100011111000000110111000111011001000000111000101110010001110110111110111010011101111111010001010010001001000000001000101000010010101011110001100010110001011010010111110010010100000011011101011110010100000111001110101101011010110000001111010010100110011000100100000000011011001101001011010011100001100111010110000010001001011100001001001010101011101111011011000000001000000101000100011000001000001111001110111001011101000111001100101111000010010101101111101001001101111110110101111010100110110001100111110000001010110110010101111111011111110000110000001110001011001111100010001001011101110101111111010110000001100001111101011110010111000011111000010000000001101100011011010110000100011011100000011101000001010101101000111101100111000110110011000111010111111000000001100011110110001011001100000101011100010000001011100010101000100010100101111110010110011100000000101100101000100110110100010111011001101011101101001000010000001000100010000110110011011001100101110010110111001110010110010110111000101100001010010100001111011010010010100010000100010000011000110010111111001111000000100010111111101001101111101111000110110110010011010010111011101010001110101101100010111010111001011011001101110110110100111110100000011000001111011101010100111010101101110010000000011010111111100000101110011001101011111101011010110010110100101000101110110101011010101001011111011101100101000000001101101111111001001011011000101111000101100001001011111001111111111010010001011010010101010111100100010001101011100000100001011111111111000101101111111101001011011000010000000000001100010000110010000010101100101100001110110110101010011100001010011001001001110000101010111100001011100001011100110101100000110001000111100110110110001010100---------001010010010111011111101111010010100110000111001110001111001010000010010110101101010011001100000010100011101001000000101110011001000101001110101001101110110000101001110100111111100111111110000111001110101000101100010000010100101111001101100001010110110011101110001010001101001001010101001000111110101011001000011110110010100101011001011111100011111010111110011010111111010010000000000100100001011000011011001010001100100011001110111000001101101111010101100011111101010000101111000010100110001110000101111010001100011001101000111011000010110101011001010110101001000100011011100000010000111110011100111110011101101100101110011101111110011011011110110110110100011001101101011001100101010111010101110100011001100010110110101110101000011000111011100001110011011011010110110010001110100111111110101001111111001110010000001011000111011000001000110010100100101010011010010010110010000000011100101111111011010100101010010001110111111110101110001100010010110100100100100001111110100110001100000010100011100010111000000111010011100011011100010000101110110001101001110011111001100010100100111110111010010111100101000111001110011000010111100111000000011110101001100100110111110010000001100000001010010101000111111111110011001111111101001000000100110000100000111000111011000011010001110011100010001001011000000110000111001110111011010111010000111010011000001100111110101011100111100001011000011101010001101010011011011011011010111010101100011001111110011101111101101111010000100111111010111000000010010010101001011001010011100011010001100001101001111001101111101011001011100010111101011001001100110110010110011110010101010011001010100101110100001111101001000100000000101111001100111010000011110100000100100111011100111000100101001100000010110001101000000000011000110110010011011010110100010101111000010001011000100111111000001111100010011101000110011110110101011100000111000000110110100111000000111111100011101100000110101000000100010001011111100001001000101111000111000111100000011010110100110110011010001010100110100001101000110010101000101010111010100010000010001001011000100010000010110011101100111101110011100000010101101001100001011101010111110101010010001111001001001101111100100101100111110110000100110101101101101011100110011100011101010111100011010111011100011010100101111100001111101011000111101011101000010101000000010110010110000001110101111000011110010111101101011010000011010000111001000001001001111000100111001110110001100011001000010111000111011010000000010011101000101111001110110110010100001111011111100000110011001110010011100111010100011101000001111101001110101101001010011001000010111110001000000100110000000000011111000100101100000010000101101111010110100010011111011011001100000110010011011110110011100100100100010011010010100100010000110000111100001110001001010100001101111011010110111000000010110110001011011110010101110001001011101000111001000000100111100110011000011111011100010001011010010101010000010110100111000101111101100101101000111111000010110010001000100000111001111110111110011100111011111100101011111000000011101101101001111110011111110100000001010111110000111001110000110011011010010001110100111010101110011111011110111111110010000111111011001011010110101100100101110110101110000001110001101011010001001000010111010010001110010111101010110110101101101100001100010001001110101111001011100011000000011101000100001011100111010011111011010110111001101011100010000001011011011011100111100111010111111011101101100010111101001010110111010101111110110111111110111011011010011010001100011000100000001010000101110010000001101101100010111010010100111111001010000111011011101100001010011010011001000010100100111110010011000100011101001010010010011000100010111101100101011100000110110100001101001110111111010101111111011100011110110110101000010101110100111001111001100001000111000000101011110111011101001001011100000010100011000010111110110110111001101101110000101101101100101010111100111011110010110010000110000011110011101110010001101000001001101110101001001000110001100100110110101100110011111110011111010110110111011001011100100010010000110101110110011110101000100010011011001000110011000101110101000100011011110110110101011100000001011111101100001011001010100110110100110000101001101011110011100010110100011110101001100110000011000011010010011011110011110100110010011000111100111010010000001110011011111001000001011110110110111110111111000101011001100110000110000110110110010100011010110001000110010101010101011111010100000101001010111011000011110111011010011001001001110011111111011111001010000110010011101111111010111111000100110001001110000000001000101110111000101101100111100100000000100100100010010101010011110100110000001000110101110110001001111100000110111010000000001011000011111110010111100100100000001011011010011011000110010000011001101110100010000001001111100111010100001101000100010000100011011101100101110100011010001110101010110011011111000011010010101011110010100111010111010111100101010011011001110110001101000100110000011100001011100000110101100001111001011001011111110110000100110010010111110000010110011000111111011001011110111011111111101101001000001100100110101000011011111110010100011001001010011100110101010110000111001000011101000100110011111000101010001110111010010111101101100001100101000110110101011010101110110111110000101100111010100000010000101000110110011100100010101101111101010101001000001110011110100010010010000010111101111100010100111000000101001000110001110101101100010100100001101110110011101100010100110110100111101100110001111110111101100010010011100011100110110011001110010011101000111011011100110010001000001010001101110110010111101110001101101101100101001001100011001110011010010000011000010101000011010111000110010110000010000001111011001101111110110111000111000111100111110100011111001010010101001000101100010111000000001110010110101110100001110110101111000010011110100001110110000111000100000111100110101000000101001110110100101100110100110110000001110100101000000110010101010111001010011001011001111110111110011101100001011010011101101111011000111101101110011000010111111011111100111001110000011001111001110110111100101110110100011011110010010110000111011101000010011100011101000001000000110001000111101110100011011110100001011110001101001110100100000000110011001100001011001110001000010011001000011111000111011000100000001011011111010011111000000000100111010000010110011101001110011111011001100110000101110010011111001111101001010101010011100001010001011010010001010100001101000010110110001110101010011100100100111010000111010100100110001001001001011010101010010011011010101100011111000100001111110111111111100100000100111111110011000101101100010100011011010000101000111010000111101111111101111001100111000010000110101111110011101000000000010010011011110110010101011011101010010111100111011011011010101111101001001110100000110101001111100011001101111101101111000101000111110111011101100101110111101110111101011110111000101100111110011110001100110011000101000011000011011010111011101111100000101001101010110111010110000010111000011001011100000110100101010110110100010101011010010001101111101010100111111000111000111000001010101000001111010000000101001010100110001001000000001001000001101001000010001010000011100010010100011101010110001100000010110010111011100010000000100101110011111000101110001101111001100011111001111101011000100000111011100111111010011111101110001100110110100111110100101110100011010111100000000001101100011101001100010011101100111010110101010010011100011001100111000111011100000100010100000100000010011001000010001111110101100011000110100111101000010011110011010111010101010011111010001111110100101000001001111100100110010000101111001001010000000110110111110000011001101000011110101111010100100110011000011110001110010011010001001111100011101111101011001011110010100100101011011100011111001000110010111010100000011111111011010110100010000000010110100011000000001001010101101001010110101100110010000100011000001111001001101111111101011101011110011000110111000010111110101111100011011001111100010111000101111000111101101011100011111111000111001000110000010010011110011110111100011101110111100011011100010101000100001010001111011000011100100010001011100101100001000001100110001000110010111001100110111010101010100101001010000100100111011000000110100111001010100011110101110001110010010111010100100100001011101000111100111011101111101101110000111000000101000010001001101100100000011011100100111110111110011101100010100111101000010101101100010001110010011101011111011111001010011000000011011001100100101100111001111110110001011100001111011000111011000011001010000111111001010001101011110111001101110110100100000011101010010101001010001100111011011001011101101111010110111110001011100011110110010110110011001000100000100011101111010001001100000110111110111110001101001110010110101000010010111100001101001001111111000000100000100010010100011001100110011000001000011010110010110010001101100101000111110100000011001011011110110101101010101110100100101111100001110011110101110101000110100100010100100111100100011100110011100011001100000011101111010010011010100011000100110111100100011011000100110001011100011011010011000001111100101110001000110111101110101110101011001010101001100001000001111101000111001001110001110101101001101101010010000011100101111110111000100101101011110000101010110101001110010000111011110100001000010111100100111010000110001100001011000101100111111101100111111111011001011001111011111110100000010111001101001111001010001110001000011011001000100110110010011111011010011001010111000001010011111100101110011000001100111101101100101010010101101001001110101111110001000101001111111000010101010100110000000100010010101010110010111000010100110000001001101100010110011001000101011110111110101100101010011111001101010111110000000101111001010111101001001101000110001011101110111000001010011001100000100000001011000011101000011110000111111000110111101011000101100000111011100001011111001111001001000000101010100101000111011110000011001100110111011011100010010001101101001111110100011010010001100000111000010100010101101110001100010010111010000010000101010110010111101001011111011100010101000010001011111101000010001100111111001110000011110010010001011110110010110000010110001100100110111101010110110010110101000111001101001011010100011110110000000111110000111000011010111011111000010100000010110101000011100011011100011100001010010110011010110100011010101111101100100101001100011100000100111111101010001000011010100011111101111001100110011100110110000001000010001001111001010100101101111000010000000110101011111000011010110100010111111111010001101001000011001000110111011000010000100001001000100010011000010101010101101111111011011011001010010011000010010011101011101110111011000111001000101100100111001001010100100111000010011101100011011001000010011000111110010110011010101111101011011110001110001101101010010010001001001111010111000011011111000100111110011011101001101100111111111101010010111111101011111111001111010000000010010101111100010000111010100000100101010010000100001110011011111010011101010110111000111001010110010111101010110010011100000001001000100111011111011100011010101011110000111100000101010000110010110000110100010011100001101111101111000011011010101111001100001011000001111001100111000100110001011111111000101110010111010001001100011011010010001010010110101100100010100101100000100010101100111111100110100011001101110101000110110010011001110111000010100011010101101000001101001011000000110110111110101010101010000110101000110101100011110111101001111111011111011100001001001110100011110010011011110000110000010101010111111011100110100010010010001011000111010111000101001011111101110011001011011111101111001001011011110111100101111110111111101100111010011111011010011011010101100101110000001000111101001010000000010001111011100011000111110110100100011000111000000110110111001010001101010011101101011001111000110010100111101101011101100111000011110010000010000100101110001011101010101110001110000000111101101001110001100010111111010100001001101111011001100111011101011011100100010101011100111110000001110111011110000101111001000011100000000101001111100101010110111101010101100100101110000000100100000100011101110011011000011100010001011011011001111000101001001110111101011000001110101111001101000001010010000101001010100011101011010010111101100011101101010101111000101011101000010100110000000101101101110000010100100100100110010011101000000001100100101111100100101101110111000010110011000000010110010001100110000111000101001010111111011001111100110101111101101101001110001001100110101011000000011101110000000000010000011000100010100110001011111101101110110110001111010100111001110101001011101111001011101010011101111101101111100111000111011100110001000110101001010010110001111011100001101001001001110001100001011010110110111100011110111010010101100000001100010100000011000010111011001010010111111101111111001100000001101110011110000111001010011111110101111000110011000011101101100110111000001111100111100011110111000011010110100010110011001010100001100100100110010101111011000001110100010011110010111011010110101001011111100101100101100110010100111000111101010111010111001110001111001011110000001000001000110100110001110010000000110110111110000001111111100101110111010011101001001000000001101010000100010111110111110111010111100101010010011000011110111110111001110001011111001000010110111010110001111101110111011001110000100011110011010010101010010100100111000110110100110011000111001001010011001100011010110010101010100100011011001 +0000011011000110001100010001101110100111110100001100000000011000000010000101000110011010110100001101100010110111110101101111001000110001001000001001000011110101011011100011010110001101000110010111110100001101001011101101111110110011000110010111000111011011010101111011010001110001111101111010111010001011010111111011101000101111100001000100001011001000010111010010110001110010110001001000011010001001101111110101000110001100100111011100100010001011101001101001010000101000111010111101010101110000110100110110110110110011111011000000001101000111110000001111010110011001000100100010101111110101011101000101001001111101001101000001111010111110101111100010000001101000101011011110101000100000001001001110001100010011100001100001100101011001101101000111110001100101010000110000110001011010010010010011111101001011000111000011011111010100001010010010111001101101110001100001111011100001101100001010000000111010111101101100101111000001101001010100110011111101100001001011100110100101000011001101101000101000100111111101110111010110001111100010011010100111100000001001100010001101011101111111111000111100101011111000111101110110100110010110001110011101111011011000001100000100010011110010101101101001011100111110101000111111000110101011010010110101101000111011010011011111111101110111011110111011111111011100101011000001000010010100111101011000111100011001011110110100101101001111101001101100000000110001110101000011100010010111100010101011001111000100111110101101001100110101011000101010010011010010110110110000010001001011011010111011110101000110000111111010011111010101010001010001101110111111111111111111100111101110100010000011000100110000000010101010001111000111010111011000100110001000000001101001010101001011110101001011110001100001100001100001110101111011000110111011100110111110110011001001000110110101010100101000010100110011111010101001110111000111001011010101110100000010100010010000011001111000011111000010111111010111001011010000011110011111000000000101000100001010000100101011110101101001101100110100001001111110000110000111110110010100000100001010111111111110111010110111010001000001101001010110010110100100000001001000001100111100011001000111111111100011000001111001110100101100001011111111110110010100101100010111110111100011000011101110010100100000000111001100100100111001101110000011100010001101011000100100100110010010010010100101000001110001101011111110111011001010100000110001001000101011010100000100010011001110011001110100011001000010001001100001011001010110101110101001101011001111100000111101100001010000010111111001011111011001001---------001110010011100011010111010101011001101101101100100100011011011011110000101100111111111111110111110110000010001110001001101100011001111010000111000011011110001010001000011110101000101001101111011000011011001100110110110111111110010011111001100011101110111100110011011000111111111110011001100100011110101010110101011111110101001101000110100101000110110010010100110000110110000111100011111100010011100011010011011011100011101111000100000100011011110110000100110101111101101101000101111011111001000011011010111010111011001100100011100110110011101000011011000000100100100110101000111011101100110110100011100100010011111111111101010111010101111000101101100111111010000001110010011100000001010100000101001101100101110101011111000001011111101100001011010010110001010111110111111000101011000101000111011100100000101101111110010010011110010110100111000011101111100101110010101111000001000100010011010101001100101101101000100000011110011111010001100011000101001100000010001110100011110111100111101100000101111001100010111100110100101001000110011101101000011101011000101101110010001011011101110100100101000010011100000101011111100101111111010110010010001000011100100101000110001011110001100110100010110011011101010010101100110001011001000001101010000010010010010100111000001100110101011001011111001011000001001001110000110011000111000100100110100111000110001100111100101111100110101011010010011010010111111110011110000110010010001100001000101001001001100010110000001111100001100100110001010010001111101101111011000111011111100101100100001100001001101101001111111100011001011010010101110010101100111001010000100111100110101100100010101101000100110101001000000000000110011110101011101101001001111001011000011001001100111001100111011111011000001111110000001111000010101001010100001101111001110111110000000011000100000110100100100110000010111110001111011010110110011010101111011111001111110101010110100000011110111111001011110100110011011100010100110110100010110100111000011110101111100000110111111001110111110101001011111010110000100010001111101011110100100111100111101111100010000111001110100101101110110000100000110011001011001000110101001101110101111000100111010111011011010101000110111010010111010000101100111000000101110111010010100000000011011111011111111101100010010111100011010101010100111011011101000101100101001011000010010001111101010010001100101111000000100000110001101001111010011000110111101101011000100101101110001111101000110011011100111011111101010011100001010111101100101101010000010110001111010110000010111010001101001111111100111011111011010011010110000111010100110010101110100010101101111001100001011010011111001110111101010110111000101011010010100010010011111111100000100011010100010111000111000001010001010010010100011001000100010110110100010100111110000101111010100010010010001100100100100001001011011000001000011111001000110101001010111000101110111101011101011101001101110001101010111001010011101001011010001011011110101111101100110101000000000000110111111111101010101101000101010111110011001111011001110001111000011111001111100010101010110001101101111101110001100001100010001010110110100010101001000111100101001101000001100001100001001100000101010001011001101101010000111101011000101011010011111011111100110000000001010111000101110110000010000011101010100010111110000111011100100111011110010000111100010111000110111000010010001111111001101001111110001000001111111111101100101000110001111000010000101110000110011000010000001000011001000100110000110101011101110110010010001001111100010111110010101001111101111110001010110101001110110001010101000001011000010101101110111111000001010000010110010010100011100110101010001100010000100101110101011101111001000000011000011011111100101001110001100011010110001111101010010101100010100000010011001111111010100010010101000111010111101010000100011111000111110101010001101100011000001100010011000101010010010110100000001010101111110110010110101010010110000101011010011000000011011001110010110110110110110111011101011011011100111101110011100101010001001011111111001111110011111111010001011000011000011111011111100110110000010101000010101001011101101011110101101011010001100111110001011101000010010001000001011001001110000011011011000110111110111011110111100100010101101011011001100110010011011111111001000011110100110101111110100100000101101111110101100001101011001011111010001011111110110101001100100001000011011011010011111111010001010000010111110010010000010000100101010000000111000001001101011111101010110011011101111100001000011101000010011011001000101100111000010001011010011001011100111101000110011100000000101011010011011111000101000100110010001110001011110100101101010110101110101110111111001111001011001100110100101101100010110000110001101101101010010111101001011100101001100111111011000110010011001110101001011101100010011001101010101101000111010010101001110110000101100000010111000100000101000110001010011001010001010110001110001111110110000101000110011000110101110011010111000111110111011101111111001000101111110101110110110100010100011011110001111000111000001000111100000111010111010000001001111110100010111001110100001001110001000110110110000011111110110101100000001000100100100010010110110100111011000000000110101001011111111001000101101100001000011001100110010011100011111000010001000101010010101010110101110011001110101000000011111000101011100101001010100101000111100000110100100100100010111011100011001110011000011111111001000001110011010100001011110001100011010010110011010000111100000001111111001100101001010001101010000011010110011011010110000100101111000000110100001011011100001000111101010100111100000001011101100000100010011001101111001011000110011000010011000001110000010110110010011110011000100000111000011100101011111100001000010101101101101000000100010110111111001101110001100010010110110000100001001111101101101100101000001011101000111001110001001100011100010000101010011101001100001111110010011011000010011101100111011110110110000100011011111101111011010010100111001011000101110001011101001100010010110110001101111010111111001000000100000001000100110000111000101000111000101010010000110111000001100100011001101001001011011110100101101001101000011110101011011011111000110101001000011011011111100111110001011111111101001011001100100110001110011101011101110010001110011011110011011100001011101010001001111010101101100111011010010101101110000010100110011100101001111010111001101110000100101110110000010000010000000010000000011110110010001101000001000001111101110101011011011011101111010011011010000110111101110100001101010100101111001111110010011001100001100110011110111110001101111110101001100101001001101011011000001001100010110100001001001000001111001010111110011001110100100010100001101110000000111000111001001111110010000010000110011100000011101111000110011100001011011010001101111000010010000000100011001100100101110011111000100100010000011010111101010000001100110100111110110001010100010010010111000100101110110101101100110001011111011010010011110111111011100101100101110001110111111110010010100000101101111001100001101010111101100000111001111000100010100001101000100110110010000011011000000000000010001000110011100111000100011010000001111101111000011100001000110111011010110111000011010100110101101101010111111010001101011011111111100100001111001011001100010110000001100000111010010100010010110101000011110111001010001101100011110101011000110111100111011001011110001101110011110000011000111000001000110011000010100111100010110111101111010010100101100011011110010101011001111100111000010110000111001000101001010000101010010101000110101001101110100000000110011111011001001001110110100011101000010101101110101000011111010101000101000101010111000101100111111110010100111010100111001110001100111110101111011111011011000011000101101011000001011010100011101100100001101001011000010011100100100111110110101100110010110000100010001010001011011010101011000111111111100100111001111100111111101100010011011000010010000111101110011000101111001001011111111111100011111101110011111101011010100100010001101000001001100011011101110100011000111100001111101010001101110000100001101100100100111001001000010110101001101011101111010101100100101010101001000010010000010111001001100000000001101100101010011110000100000001111011100001010110001001100010100010101011010111100111001101101111001101100110000001100001100011111111111011000001101010111010101100111110101010100111111011110001101101010111101100000001001011010101100010110110101000010011100110110111001110011110001101010100011010111111101111010101100111101010000010000101011010011010101111101011010011101011001001111001101110010010000100010101111010111111101010101100111001111011000001011011001001101100111110011010111000000001111110100000110110111111001011001000011100011100000101010100111001001111110001101110110011111000111100010001011010011001111000101000000000100101101101100010101010000000111010101000001001001011000100111011110101011010001001101110111101110011011000001101110100100100111010010001100110100111111100000111100011000010100001110011010001100110101101110010110011000111011111111111110101011010010101010011111011111110000010111111100110101011001101010011110000001000110111101010101100001011010010100110101111100100011000100110100100111111000011000111000110001001100000011001101001011110101110000001101110101110100110010000000100100110000111110000001100001110011011101001011100000010010000000000110000011000000000110011101110111110011101110111100111111000100001011110100111110001110010010001110110110110100010101011100001011111001011100101100111100000101000110110000101100001000000101100011100000101111011000001001110000011000101111100110101000111101101000110000101100010100010111001101001010011110000110001010010111100011000000110101110001011000000100111111001110110110110101010110000011010101001111001001100010101111001000100111001101011111010101000000100110111010000011000010010100010100000101100010011011111000000101100110101101111100000010111010000100111001110101111110110000011100000011001111011010100111110100001010101001011100010110101111100101100100110001000110110100111010100001101101110000010101110101101011101111000001010111000010001001001101011010110100010011000100101000000110011110001101000111000101010001111100001101011000000010101010001000101111101111111100101111100100010111000011011110100001011100001011010101010101100111101000001011110011010111010111110011100110101010000010000101000100111001101011111011011110001101011011010111100110010110001010000101110101100111001101011101111001110101101000010110000100001001101111001001011100011100010110101101111011000011100110101111011000011010000110100111011111001000001011101010111100000111111001111011111001111111110011111111101100111000110000101001111101000111000011000001001101010110000000010101000001110100010011010000010011001001101101011011011000100000111100010111011000101010101100000100111111101011010011111110011010000111011010001111110100111110110100011011111110000100000000111010101000100000111010010101011110110001110011011101101111101101011000010010110001111110100001101011001111101010110000000100100110001001000011111100101010110111001101101110011100110000001110011010011010010111010100101011001101011011001011101100000100001000010000000111000000001111101101000100110111101000110111101010010011011100111010110000111010010100010111111111001011111001001010111011100111000011100011100111011010000010100111101010100101011000011011001001101000101011110010011101001111110100011110001011100110010011000101001100101101101100010001001000001010110011110101101001110110100000011000011010001010010100110001010010110101011100110111101101100111101111000010000000101001111101011001010110100101001100101100100110101011110101110011111000101000010011001000001101101000001000010111010001011010000000010111000000100000001010110010111101001000001000111000101100101001000111010110010011111011001111010011111011111110001111101011010011011101000001010001010000010110011000001101010000000110010111001011100000000010111010100000000010010100111010011001010101001001011101111110100001011011100111110000101010101111001100001101111010001111110110000010100101000011000000011011010001011110100010111101100111100100010011001101101000011101101001000101110110100110000111000111001011110001101010101101001000001010011011110101101111010010101000000011011001010010101011011011110001110000000111011001010110001110001001101100100001011110101110000000110101011100010101010110100010001001110111010000110000100100010100010100110010011000011110111100010010001010011100000010000111111010010110011110111011000001001011000001001010101111110000101110011001001110001010111101011111010100001110001011101001000011000000000111110100011101100000000001001001101110000110100100000011101011001010010111100001111001001100101011110101011010010000001111011101010100001001000000101001101010010011001001000101000110110110111100110100100110000111111010011111011101011110011100101011101100000111101111000010111010101010100111100101010010000010111101001111001010110100001001001000101100111100110110000010001111111000010111011111011010001111101111110011100000101001101111011110001110111111100100000111010101101111001000010101011001101111101100101010101001111101111000000101010110111110010101111011011001100111011011010100100110110101101000101001100101101011110001000001001001011000110011001011010010010000011101000001101101111011101110011000111010000100010001010000010100111001101001101010011010000100010010011100001001101110110001011011000100010000001001100100110000001111011110111100111000011110010 +ls7msgs +0010111100011101011011001001001010111111001110000111111000111--------- +1010011010010100000010100111111111111000100011111011100101001--------- +1000000101011010001010011001010011010001110100000010011010001--------- +0110101111010100011010001110011001000100001011010110100110000--------- +1111111000110000011000001000010101000000001001111101010101001--------- +0111111000011101110010111010001110100100000010010011000111111--------- +0001110111101100111000111000001111011000111010011111010001000--------- +1101100000100101001110011110000000010010001000001111100110001--------- +1010110100101100101010000001101101011111010001100010101111000--------- +1101011001100010100111001101101011000111100100010011001111000--------- +ls7cwds +01011011001001001010111111001110000111111000111---------000010111110000100110110011001010111001111000011110001011010001100011011010000111100011111010101001110011011110000100110000011101110111100101011000110110100111010010111011011010010010111110111001100110010011100101111001000010001100101010110101000110100011110011110000101111011011111001011100111 +00000010100111111111111000100011111011100101001---------101000111000000010101011011001010011010110111000001111000111100111001010001001100101111111100100001000111011100001000100110001110110101111001101100011001101001111100010100001001100011010101010011011110101100010100001000100111011010011011000110010111001111101011110010101000110111001111001010000 +10001010011001010011010001110100000010011010001---------001010001000010001110001000110110001000010000100110100100101110100100011100111101010110011100110100010011110001000100001111010000100010001011111010001111110111010101011111001101111011011000011000010001011001101010011110001110000000000000000010101111110101011101000010101101001110011100110000101 +00011010001110011001000100001011010110100110000---------001101110001100110010101000101101010011001011001100000000010010001101001010011110011011100011010110001011011010001010010001111110000011001001101110011000011011110110110010101111010111111100111011110011001100111001010001001001110111001001110011101010100001001110100100110111010110001101010000010 +00011000001000010101000000001001111101010101001---------100011101111101011101110101001111001001101100110100100001010000010000010101010011111010111001011110000011100100000100010000011001011111000101101111001101000101001111101100011111111110000010001100001101100110101011010111001101001000101010111111010010011001100101010111010111100100000111101111111 +01110010111010001110100100000010010011000111111---------110111100110011010000001111001000100001100011100000111100100101001110011100101101110101100100010101101001010110011110111000000110001011000010111111110000111101010010011101010011111110000001101011001001001011100011100100110011111111010001111001011001001001111101111000000111111011011010100011100 +00111000111000001111011000111010011111010001000---------110001010101010111000011100001000110001000101110110010101110111000111100010111110001101110111101011111111111100010010011000000101111011110111011001011011110000111110001011111000000100101111110111001100010110111001000010000110011101000100100011100101101011101010101101000100001111000011100110011 +01001110011110000000010010001000001111100110001---------001110101000010101100010111111000110010101111011001000101110101001001000001000111001001101101010101010111011011011101101011011111101001110100000110001101010001111100101011000000111010111101101011010100001100110010001101001100100101010001100001011010000000001010011000010100000100111001001000010 +00101010000001101101011111010001100010101111000---------110111001000001111000010101110001100011001101111011100001011111000011010001000010001011110011000001101011000111100011101111010100100000111110001000100000111000010000001011011110000101000101010110111011101100011000011111000001010110010110111001100000100110110101100011010100000000001011011111100 +10100111001101101011000111100100010011001111000---------111110010111001111111001110001110000100110000011110100010100100011111010000110000011000010100001011000000110010110000000011001011111000111100011110101110001111110100000011011001001101000001110010001000010001011100010000001000111111000010001001101010101101110100110000100100111000100101110001010 +ls14msgs +00011111111111111010000111000011010000101100010010111100101000001101101000101010001010000110110101101001101111010011000010001001011--------- +00110011001001100111010011111110110101100011101010010101010100100111011001010000000011110001111011011001110110100010111001000011000--------- +01110111110111111100001000111111100011001000111101011110010010111111110111010000111111101000010010110110111000011111001000011000101--------- +00110100111111101001100011011111101101011000001010111010011010010001000101001101011111001010111010011101100010001011000101010000010--------- +10110111100000011110101001010110011111111111001010010001011000001011011000000010010011001000111111010011100110001000100110000001111--------- +00011111011011111000010111110000110000100010110001111010010100100000100001110110011100100111010101111010100111101111111100110100010--------- +11110010100101110101000011010110110100011010111000101110000001010011110001110100100101001001101110011010000001101101100011111111011--------- +11011011001111000000010100111110110101111100010011110100110000010110011001101100100110111011011000101010110110100100001010101000101--------- +10010010111111110001110000001100101010001100110010010111101000001000100011111011111001000110000001010010101011011110111100100010100--------- +11010111011001011100011001011110110111101000000100111000111010110100111011010100011011100011011111110000001000010001100110101101111--------- +ls14cwds +0011010000101100010010111100101000001101101000101010001010000110110101101001101111010011000010001001011---------001101010111011100111001100110110010011001100100001111100010110100110000111011001011011000000011111110010011100101000010010000010100010000110100000101110101100001101100110001101101000011110010100110111111010001110110110001000011000001101011101011000111010001110111110001000111110010110110100001010000101111000101000110001011110001011001001101100100010001011101010010111110010011001110100111101001110100001011101010101011001100000010111010100100101011011000011100101001110100100011101101011110001111101100111110101110101110100101100001000100011101100111010110000111010000000100011110001111 +1110110101100011101010010101010100100111011001010000000011110001111011011001110110100010111001000011000---------001101011000000000111110100011100110010001010101110111010011101110110111111100101011011000001111100111001001000011010001100010000111000010101011100001001101100001011110111110011100010101011010010100110100111101011010011010101111010011100001010110111011000101101101001010001100101011001101100011011001010101110100010111111110110100010101000110010010010110111100001001100011000101111000100110001110100010010011011101100110000010111111001100100001001111101011100010010001011010110000010100000010001010011010111001000010010101100010111111001100111010111100010011110101100001010110011111100100 +1111100011001000111101011110010010111111110111010000111111101000010010110110111000011111001000011000101---------010000111100100111000000010110111010000010000101011111100011111101001100110010111001001110101101010011010110101110100001011100101111010111110101100001011010111000101010000110101000011101111110000111010001010010000111010100101101100100110110010011101011000100101100010001110111101000111100100100010100011111011011011001110101101101111110011101001010100001100011111011111010011101101010010000010010111001011000001000110110110001111000110101001000011011000111000101110011110000111010010000011000010001011011011001111000100001010110001110100100110001100010100001011110010000011010000000001011 +1111101101011000001010111010011010010001000101001101011111001010111010011101100010001011000101010000010---------001010011100100000001001011100011101011110000110111111011100010111110100100000111001011110110001001000001001001110110101010110011110111001110111100001011101000111100110111101110011010010010010101000010000000101000100111101001001010001100001011111001100001111100001011011000011000111001101011101001100101001011110110111111000001100000001011001101000010001110011001101100000001110001000001011011000101010100011010001011110101001111101010000000010111011011010101101101011100000010100101100001101110000000010111111110001111100110010001111100001010111110110101011101110101101100101001100001110 +0110011111111111001010010001011000001011011000000010010011001000111111010011100110001000100110000001111---------001001001010110010111100010101100101111111001100000110101110101011011110000111011010101011000011100110100010101111101101001110110010010110010000011001011100000010010011001011110010101000110011101100100001101111011110010010000111010011100001000100111111001101111001100000110101111011010110001100010111100111001000010100001100111110100110110000100110000010011100001110010001101001011001000000101010101010011100011101110010100011010011110111101010011110011011000001101110001111011100100010000001001101011011101101101111100100010100110010011010110101110000000001000101100101110100110100100110 +0000110000100010110001111010010100100000100001110110011100100111010101111010100111101111111100110100010---------001001010101110111001101101011010010011001100010001101001110100001110111001100011100100000110100100111111110110100000000010110110101011110011001101111101110010001111000101011001111010110101101101011001010100101001111111101011010111100001011010110010101111100110110011101101100010000111011011000110111101000001010011110000001001101101111001100101001110100111100000010011000001000010110101001001000110011010011110000110111000001011101110011011100010000001011010101010001100111010011011001011001100101110001010110111111111110101101100001000111010110110010110010010111000001001011011101000010 +0110110100011010111000101110000001010011110001110100100101001001101110011010000001101101100011111111011---------001001101001100101011100000011101011011111101110111001111100000110101010101100100000011011011000111101110000010100011001010101100000101100001010100110001100111110000101000101001110011111101110011101010010010010010101010011011111001000111111101100010001111110100010011010010010001011101100110100000110011010011100000110011001000000000001001110100011000111010011111101011010110100100101110000001001101000010111111000101010001011101000101010000000110100110111110011100001001110010101011100010100010011100011010111011111100110011101000010010000001001010010001011101011111110111011010100100100 +1110110101111100010011110100110000010110011001101100100110111011011000101010110110100100001010101000101---------100101001111110110010000011100011111011100111100110100101001011000101001001100111010110101011010110101111010100010011010111100111011100110000011011001001011110000001100000100000110011001101001000010110110110100001001010001011011101110100010010001000110101101101110110000110000011111000010111110001001101000100111110011111101001110011001010101110000110010111111001111010100010110001101010010011101010110011011010001010100010010001101100101010101001001101001010110100000101011100010000111010100100111011010010111000001000101100111101100010100010000011101011010101101100110011001111001101101 +1100101010001100110010010111101000001000100011111011111001000110000001010010101011011110111100100010100---------110100110111010111000111101111110000010111100001101110001011110010000101011001101110001010000111110101000111100100001101001101010101011010101111110001001101010010100101001100000110101000110101101110011001100001110001001110101111010110100000001000100110110101100111110000001100111000000001101111001101111011010001010010010001111111100101110010100011001100011000010001001000000011010010000011100010110100100111101000011111001000111110000000011101101101111001010001011111011101110110110101110111111110101001110001110011000101010101100100000111100110101010110100111001001100110010011010111001 +1110110111101000000100111000111010110100111011010100011011100011011111110000001000010001100110101101111---------110101001101011000000011000111000111011001010100111011101011011000010000001101001010101110100011100001101001100100100001010111001100111101100011000111000101100111100111010110010100111011001101001000110010000011010110110011001001011100010100100110010101111110100011101011110010010110110111000101011001000101100001000100110101000110011100011001101000001100010110011110001101100100001101000101000000010001111111110100100000001110100000011001100101011001100001110001000100010110110110101111110011011100001000101110110101011110000111011001111101011000010000000111100011111100001100001101000010 +ls28msgs +0111101101101001100101110101011111101101000100000011001101100110110000110010000001100110001111000100001011111111011000101100001100110001110100110010010101010100111110101100010110110011001010110001000100100000110100101110011110100001010101101100100001110010101100101010110--------- +1000000111000011110111000000011001111110011101100110001111111010100011101011111001001001111001010001010010000111000100110011010011000001101111010011011100110110010101111010100011100001101111100000001111101100101100100100000100111011010101001000001001001010001100110110111--------- +1111010000111001111111101100000111011011001110110011110010111001001111101111101000110011011101110100001110111001101000000100000100010110011101111001111100001100001011110001111101010100010010001100110100000110100000011010110011100011011111100101101101101100110001101011010--------- +0101000100111000110111011001001010000011110101000000110001000111000100010110010101110101001010111010100110101110011101000111111100001101011010011000011111000100101110111001111011001011110111010000001000111001101001111110101010010000100011011001000001001001011000001011100--------- +1001010101100011011100001010110100110110000010001010000110100011001101011000110101010110000101111000010100001010111101101100001011101110110111101101000000000111100101000001000111100000010000101011011100110000101001100101100110001001000111000100100010111110001100101000000--------- +1111011101010011111010111110001101010100000010001100110111110100011101100001010010110011101110111111001111100100001010111000000000000001000110001110001011000110100001010011010011011001111000111110010000000110110010001010001010100101100110110110110001110110110010010101100--------- +1101101010101010001000111100011100010001000111010010110110111110000100000100100101110111011100011101011101111111011010100110010000110011101101101110111001100101010010110011111101010010011000110101001111100111110100010100100110011101001011010100000000100111011010100110000--------- +0100000111001110100101111101011111101100011110001101111011011010101001100100001101000010011110010110010001010101101100011010100011111001110111001010011011110110111001000011100111000000110101001010101001101100011010110010010011110000010110111100000010000100111000110011110--------- +1111010000110111100000010001101101000001101001110110011111110000111010001011111110011000010101010100100100000000010101011001010100011001101001111011000100101101010010101111001010000001101100001011111110110001010111111110000001011111110101010010011010101010100010111011001--------- +0101000110000101100001000111110010010011101111111100010111101000011001010010111100010110111110110001011111111011101110001110011101100100000011101001001111111111100011100001110001001011001011100100101111001101010000110100010100000100100110101100011100011101110111000100010--------- +ls28cwds +01100110110000110010000001100110001111000100001011111111011000101100001100110001110100110010010101010100111110101100010110110011001010110001000100100000110100101110011110100001010101101100100001110010101100101010110---------111000100011000001101101100010001001110100110001001110100100011001000010100110011111110110110001001000110010000110010010111111111010001000000101000111100100000110000111101011010100011011001010010001110100011000100000001000100001110011001111000110110001010101110111100010000111111000111111010011110011100001110001110011101100111110000100101000110010001001011110011011111111001010001101100011001100100001000010011111010011001101111110101101101001011110100000101011000110001011111001110000001000010000011110100111000001100000000000100011100011101111100101110100101011101010000100001010011001000010001110100111010101100010101011011110111110001011001010011101101111111010000101110110010011010011111010100110011110100101010101011111010001111111000111010100011000110100010111111000001100101101010101010100100001010011000000111111010000101000111011001000000001101001101010110011100100000001101111011110110111001001000010100101011001010111101001001000101001101001111000110000111010011000000110101000100010101110111101000111100100010110001010101000100101111110010011100100100100010101010000011111111011110101100101111010011011010011000010000111010100000110100001111101111111000111110011 +11111010100011101011111001001001111001010001010010000111000100110011010011000001101111010011011100110110010101111010100011100001101111100000001111101100101100100100000100111011010101001000001001001010001100110110111---------101101010100111100010110111001011010101001001111111101110011101010011111111011101110110100001001110010011001111110000100111000001110101001101100111010000110101100101100101101100010001111011111100011011111101000111011010010001010110000011011000000011010110010010111011010111010100100110010000110101111010101101100010110000101111110111111011111001011000111000100101001000010010011100101011110111010110010101000101001110111100111100110010110010001111010010001001011011101100011000100110100110110111110010010101001111101100111100011011011101101001010111000011000100101011110000011010001111011101100110010111001110100010100110011110100101011001001010110010011010001100000111011110111110101110100101110001000100011100100011111101011001111000100010011000101011000011110001000111001101100101000100111010001100010001100100110111010000100000010111110100010000101000011011110100111010101110011000101100101000010100100011101001000001011001110111100111100001000011011000011010001011100010101011010010010001111000010000010110110111011110100001101110000111000111100010110010111010101111110110101011000110010100111010011110110011000100110010100100000010110001010011100011011001000110001111111 +10111001001111101111101000110011011101110100001110111001101000000100000100010110011101111001111100001100001011110001111101010100010010001100110100000110100000011010110011100011011111100101101101101100110001101011010---------101101001001010010000001101111000011001101110011011001001111111101011001000011100110001001100100110111000000100110011100110001100101000100101110001111010100110001100000001001011001110110011011011010111011001110111000011001010101010111111001011101010110000110110001011101110000110101000100100100000110111110000001100000101110010001010001001001010000111101100010010101110101001001011110001011100000011001001101000001000110001110100001101000111010110100101100111111001110000101100011001011011001010010100000110011011110000000000111111111001001110000011000110110111000110100100010110111011111110001100011110100111100000000001010010001101001001100010000111011110101100011100111110100000011011110011110101100111100011011000111111110110001100100100011001110001111101011110000111011001111000100101001000110000011100000001100011101100001010100001010000100101100100101100101001010101001111111010111100111010010111001100110001111011111100010100010001110001001101010111011010000000111110011110101011101111100011000111001000111110011101011101101001110010100000100101001001011011010011000001001101111011001111100110001001010111010010010111001000011101010101100111010111000111010000110010000 +01000111000100010110010101110101001010111010100110101110011101000111111100001101011010011000011111000100101110111001111011001011110111010000001000111001101001111110101010010000100011011001000001001001011000001011100---------001000101010000001010011010100101110110101101000110101000010100011101011011100110001000111110111100100011101100101001001110010101000000001010000010000010010010110111001111000100010101111000101111100100010101000110010111111101000101100111110101000111000101001101111101000101110100001010011011100110001100000000100110101100110000011011010110110100111010110101011110010111010110101000011010001111111110011101101011110100010001100100011110101001111001000111000111010001001011110100100111000101000100001101111001011100111001010000100001000011100111000001101011111111000010010001001010101010010011111101101100000101010000010010110011100101011000001101010011101011010010001000001110111001100111000000011100010011111111001000110111111011101100110011100111111111000000110100110101100101100101100011010010100111100010100100001101011110010001000010011111000000110000110111000011101011001110001000001110010101010100000011001101010011000101100010000010000010001011110011100101011011110011110000111101011000100101011101001001110110000111000111110010010010100111011000011110111011100011011111101000000000101111101100101010000000111111001110000011010010010010010100010111111101001000111001010 +10100011001101011000110101010110000101111000010100001010111101101100001011101110110111101101000000000111100101000001000111100000010000101011011100110000101001100101100110001001000111000100100010111110001100101000000---------001110011011101111101111110011111010000111100100001101101000001110010001010000011111011111101100001110011110001101011010111101010111111101010011010101010000111100001001000001011111000110101110100111100111111011010011110110001110000010101001010011000011111110110011111110110000100101001001101111001000101000000001001101000111110001000110111000111111010111100000111001010110000000011001110101100110101010010000100011001010011100110000111001100110011110100011000001100000010001100100001001110110110110011001000100000010110010111011110000100011100011111100100100101100000111101000110000110111111000101101001000001100001000000101110011011101101110101011101101000011010000111111101101100001101101110100011110111001101100011001000001010100111101101111100101101000001100101010000100010100000110110001001010010101110011110111000100001011111011001110110011001110110001101001010001010111110010001111010110010110000001101000011001111000111001111100001100010111010100101011001010000010001111010101000011101010001000000000000010011000010101111110100010000111000111110100011101111100001110000011011001111111001101101001100101100101100101111101001111110101101011110100110101010100011101010101 +11110100011101100001010010110011101110111111001111100100001010111000000000000001000110001110001011000110100001010011010011011001111000111110010000000110110010001010001010100101100110110110110001110110110010010101100---------110110101100011000111110011111110001110001111111000110001010101010101011101110001100100101011010110100000011010000011010111100111101001000001010111000000100111100100100101111100011100110011101001000010000101111100111001000100101010000010000111101110001000001011111000111010110000001001111010001101101111111101111111101101101010101010111111001010000001011010000011001110100001000001010011111011010101001011011000011000110111001010010110010100101010001110010010111111100111110111111110111010011101100111011010101110111100110111100000010001111101111010010110101111010001010000111010101111100110010111111110110110010000001110010100001101010100001101111001100111000000010110000000111000011101100100010000101000100010101101101100100011111100010110010000000111001010011011101000100001101001001101000010011111000101011101001111101110101000111001110110001100100000100110001110011100000100101000011111100011100111011000011100010000101001110011010010100100100000100011011101110011110010111010110100101100000000111000110111101011001101111001101011010110011110100110100111101101100101000101110110010110000100001001010101101100101110101001011001100111010011001011000111000000101111010001110 +10111110000100000100100101110111011100011101011101111111011010100110010000110011101101101110111001100101010010110011111101010010011000110101001111100111110100010100100110011101001011010100000000100111011010100110000---------100011111000000001011111010101000110100111011001010000010011111110000000000000011010000101101010101011111110100101010000010111011111111001111100000101100110001010010000101110101010111011101110101011100111110100001101001111111011110001100000010100011101010011001110010001111001111110000001110111011110100001000011110010011000101001010010100111010110000111001100000101001001101001001100000100100011000100100110111001110011000000110000000010101100010110010011100010110010100000111110111001001111101000001010110101011111110011001000010100110111010101001110111100001111001000100101111110011101010011110110101100010100100000100110110000101011000101011101001110110001011011100000100010000101111001110110001010001000101101000000111011101111011000011000110111100110101110011100110111000101000100001001110101100011101001001000000100101100110101001110100001010110100101100111100000110111010011010011000100101101010010010111011011101111010001000000010011000101000100011010100001100101111010110100011001111011011010110001001000100100111001110000001010101010000111001001100100101011100101100010110101001000010100011001000000101010011101111000100011111100010101011001000001101100101110010101 +11011010101001100100001101000010011110010110010001010101101100011010100011111001110111001010011011110110111001000011100111000000110101001010101001101100011010110010010011110000010110111100000010000100111000110011110---------001101011001011101110011110000111000010100010111110100100000010101110101101111100001011000111000010000001010000001101011010010011001101100011111101110011000011110011010000110111001010000000101001100001111000011110011001101100111101001011001000110010100010101011001101011010010010000001011100000000111101101100111010011010100010011101100110110101101101010110010110010000001111110101011110110001110111010111010011000110011110010111000101000011110001110010000000011111010000000100110101010010110110111101011100011111001010010110001101010101110101001111100011001110101110011110000001010110100001110000010101111101010111000001001101100010000100110000100110100011000001100000000010000100011100011001011001011110110010100110011110011101101100110010000011101111011110100001101001001100011000000000100011111101000000000101110000100000011110100100001111010100111001011100011110001100001010001110111110111100101110011010101010110000010110011000011000010011101100010101100011010100010101010101110011010100011101000001010100000111101111111010000010100110111100111000101011000011001011001011100010011110101010011001100101001100010000011011111011000001000110100000101110000011110100001011010 +11110000111010001011111110011000010101010100100100000000010101011001010100011001101001111011000100101101010010101111001010000001101100001011111110110001010111111110000001011111110101010010011010101010100010111011001---------010100011111111101111001110000100100110001001001000111110010110101100100011000001000110011110100111001001111010100010110111001111100100011001110000000110011011101000011111000010011111011100001101111110011000101001000011101000110011011110101000000100001010001001001101000010100011100011110100111001110101111111111001111001010011011000100001111000111111100111101100000110110110100011010100000001010101000001000010100110000100101011011111010101001110111000011011100110110101101111000101000011001010000111001001101101010000101101101011110110001001110111111010100101101010101000001001010000010001101011111100001001111010100101110101110010100101111011000100110100110001011000010000111011101010010010100100010001011110111010011111101110010100101101111001111110000010110100111011111101111010010010111010010010100111001101010110111100000010011001011011101000101101101111011111010011110111011000000000010011000000011101100010001011001100010100001000010010011011010001101000010001000110011111101000000111011001011111100111000011011101000110010101100010011011010011001111010110010100110110001001100011000111000000011000110011101101110011110000101000111110111010101011110100001100010110010 +11101000011001010010111100010110111110110001011111111011101110001110011101100100000011101001001111111111100011100001110001001011001011100100101111001101010000110100010100000100100110101100011100011101110111000100010---------010001110101110000010010010101000101000001000011011000000010011101011010011101111100011011001101101011110110101110001000000011000111010001101111101100011101000010110111000011111010110001101100011011011000100011100010111100011001101110010000010101000000000001100101001010000011111101111001011010100001101010011110000100100101111101111110000011110000110110101010110011010001011100111101110010111110110001000001011111001101011111001101100001101111100100101101001111111011001010001100011010010001110010100100010000100101110101011000011110101101111111001000110011001000010001001111100111000100011110110000101100100010010001011011010110000010100111000110010000111101101110000101000110111111100101100101011100111101110110010011011001101001111000010000001100100001101110100000100101010010010000110111111100000100001010110110100111110100110110010011100100111011100010010000000100100000010100111001110100100110000100011100101110100100011111000010000101111101101100010110100100110010100100010110001001011011110010100101010011111111011010011101100001101110010011100010101110000101000011110100001010100101000001100011110111110010110100111111001110000011110101101100001010000001111111011010 +ls56msgs +11110101110110100100011111100101111110001011001101100010011010001010011010000011110011010100111101001001011111001111110111110000111011000111111101000101111101110100011010001001100010100101011101101100000110010110001010101111101111001111110110110001010101110111110100100001110101011010000101001110100110110110101011010000001001000101010010110001010001100101111101000010110001010101001010010001111010011101110100000100011100101101101011000010111110111100111000100100010100001101100100000100001110110111011100110011001011101000101010110001000110011000001--------- +11010110011000100010111110100011011010111110101000010010101010010101011110011100100110111101111100111111111110111101110011011101111011110110111111010100111111100001110001010100011100100010011100111100010110110001100010000001000001000101111111001000101011101011111101101001101000000010010111100100111001011100110111011101101011000101011001100101010101111010001100011101100100100001000101100101011100001011000001000100011011000110010111001001010100011100001000010010100001110111000100001010010110011001010001110111010010100111000110000110011101101000001--------- +01001111001001001000111110011000011010000111101101110110100111010111001000110010100000000010111010010010100100011100000110111010000010100011011100111100101110011011001101011010111011011110001100101010000000111010101110011010001011111101011011011110101000010001011110001111000100110010000100011111110001100011011100010000000011111011100010000110111011110100100111001010011110011010010110001001001111011101000011010101100011100101101110101011100010101110011110100101000100010000111000100110010010110010111011110011010100101001011100001101100111000000001--------- +01010110000010001111000101010100101000000111001101101110111101010101001100010000101111111111110001110111111001100100001101011010001001101111011000010010110110110111010001001101111111101111001001000100011011010000111110101000010101101111100111011111101101111000000011010010011001010110100100010110111100111001001111100000100001110011000011010110000001100110111010001101110110001000100101011010011011010000100000001110101111010110111101000101010110000101011101111011101000101100011101101110001011001000111000000010001100011010110110010110110001100010101--------- +10100001000000010000100001011101100111110101011010111011011110000110010100000100000100110000111110111001111101111010101011111001011101101000000111010110010010101100000011101011011001001111101110010000111000000011000001110011101010100000110010111110101010100000010011111010011110011110101011101000111001011111000001011100001101101001101011000000000100111101010111101011001011111010111100000010000001000101100101011000100100101101000111000111110010101001000000101000100111000111011010011111111101000011011010010010101011000101001010110111001011101100111--------- +00101001110011011010011100111101100001001100000100011111001000000101100010110110101110111110011110010001000011101111111010111111110001110010010001000000111100110001111000010010111100001001100011000001101111011100010110010101100100001010000110110111111011001111010000001110010100100101110010011011101110101000011111101001011110000101100101100010011111011000001110101110010111000010111100011100011100101011100100000101100110011000011000100101100011001111101110100011110111111110000011101010011010110111110101010110100010110010100010001100111111111000010--------- +00100100111111100110011001111100011010011011001001011001101111011000000011011110010001101111000111001000111111011011000011110000111111000111010101110111110011001100100011100111100010010111011101111010111010101110001110001010001010100001100111011000111001000011100010001101010100001011100100010110111010110100010011011101100010110100011001101000010010100010001100100111110110110111111001110110110111010011101100101011011110001000000111101010001111000010101100111010100001110000110010010100110100110101010101100110011100000101111010101001101010101100100--------- +00111110110110101010000001000100100011101100101101001110111010011010111110010001100100111000110001011000000001110010010101101000000110010100001010011000011011001110100100110100000110001110011101101110001110111101010010011101100011110000001110010110100110100111001110101001010000111000100111010100001001110101000001100100110010010110001011110000111001111001100001100001001011001100110110011000001011100001111110010101010001001000101011110101100100011100010011100111000000111010010101101000001000011111001000001111001000011000100100010111000011001010100--------- +01011101000101110111110100100110000101011111111000010111100110101000000110110101100001100100101110110000000000100010111100010000110011101010110000111010110110011011111010010010101011110001010001000110111111101110010001001010000001100001101001111011100110111011011000100001100001110010011110110110100000011000100111010101110111101000111111001110101011000010100001111110111010011111000010110000010011100001010010110111111000111010001000001111110110000111000101110001100000010010111011011010101000101011110000101100001000001010010011101101101010111011011--------- +11101001100101000111100110110100110101001000101000010010111101110110110110101100111001111000110101011111001010000101000011100001000001100010010101100000110101001110100111010010000000011111011001011100101000001010100100011111000000111110101001011001011001011011010011110100001100100110101001001100011010100111010100100111110111001101111111001010011101111111000010111110100110000010111101110110100101100010100010111110101010011011011001100111010010000101111000101011001101101110000001000000001010010100100101101111101110010110011100000100111001100000010--------- +ls56cwds +1111110111110000111011000111111101000101111101110100011010001001100010100101011101101100000110010110001010101111101111001111110110110001010101110111110100100001110101011010000101001110100110110110101011010000001001000101010010110001010001100101111101000010110001010101001010010001111010011101110100000100011100101101101011000010111110111100111000100100010100001101100100000100001110110111011100110011001011101000101010110001000110011000001---------001101110100101001100011001111001000100111111011010101111100000111010101100011110000110010100100011110010011110111101011100001111010111000011000100101100101001011010100010100000100001000001110101110111001110011110111000001110101110011000110000101110000110101000111101110111100110011111001110010101010001101100100001100101001110111100000000100010100100100111110100000110100010111111110011101011100010100010010101100001010011000001010101011110010100111011100101011001011100100011101011000100100110111000011111001011000101110010010110100111110110110101010111101010000101101001100101001011110000000000100011110001010010011100100100011011000010110000001101010111110011110110011101110000011001110001100111011111011111111101110001100001111110011110011100100101011001111000000011001101100000000100000110000100011010001000101000001111110000101100111101001000010101001001010101010111110100001001011010111001111100011100110011110001010100101100011010001110001101101111010100101000110110011010001101111011101001111011010110101001000001000000111000010011110000010110011101101111101001011011000111001111001001010100010001111011110111110101000010110000000011011110110101100110010000100100000010010010111111100101100010011101101001110010110011110110000001100110000100101011111100100010001011100000001111100001110111110011100000101101010010100000101010010000110010000000100101011001111001111000011011001110110111110001001001000000010100001101000000110011001111101010111000111101101011011110101110001100101010111000000010010001001011111100101001001001011101001101111101001110110010100111101110110100111001100010010010001001000001001100010000010110000111010111000111010010001111110111011000110000001011110001101001011010011110001000011111001101001010101101111100111100101000001000111100011110101110010100111101001111000111001100100101101110010111011100011011001010000010000001001000111000011001100000001110111111111000011111101001001100100101101100001011101010100111111101100010100001110100010001111011110101110001111000010011001111110100001010001010010100111101101100100010000101101100110001101101110111100100011101000010100010011010010011000110111101110111101101011101011101010001001011000010100010111011000000000101010011100010110010111000011111101101011110101110110110001001110110111110111000010000011110100101000110101010111110001011011100111101001111000110101110010 +1101110011011101111011110110111111010100111111100001110001010100011100100010011100111100010110110001100010000001000001000101111111001000101011101011111101101001101000000010010111100100111001011100110111011101101011000101011001100101010101111010001100011101100100100001000101100101011100001011000001000100011011000110010111001001010100011100001000010010100001110111000100001010010110011001010001110111010010100111000110000110011101101000001---------000001100001110010001110001111011001101001010111101000100111100000000001010100000000011111111100011111000001111100011000001110100011001011010101100000101111001101011100001101010010110010011101001111001011001101001111100000110111010010011110110011011100001110011001011110010111101100100011110101001100010100010000011001010110111100000100110101001000011110101101011000101101101111001101110101100100111100101100001110001001101010111011100001111110101101010011110100011100010000110101110001110111011001100000010101100001011001101101111100111001101001010010101011100111000001100110010110110111000101101001000011100111011010000000110010101010001101010001110010111001111101010100000100110100001010011011101010011010000111001110011111010110000111110101010100011010100110100000000000011111000111010101100110111010001111110100110011001011100010111011001000100111010100001100001100010101110100110000000101111000001110000100000001000001000000000111011111000100110111011000100110111001100000001111101001100100110111111110000101001111000010101111101010111000001010001110011011010101011010111001100000011101110000110011000000001110011000100000100000110101001110000010110011111001000100010110000101101010101101100101100000001000011110110011010001110100111011101001011100011110011010011110010000100100011010000111010001101000010011111000011001011000100110100111000011100011000110001101010010001010010111011000111010100011101110000011001110100110100001000100011010000010100010110111110010010110000100011100011001100101011101000101010011101011011110010111111100100011011101001000001001001000000111011111110000101110111000100110111010111011101110100110100111110011011100101101110110111000101010100001011101001011100001100100000101111100001101101111001101011101111010110000111100011001100101011100001010011001010110010010110100110001101111000101100100101011111011101010101100110011001010111101111001000010100000110011100100011111101100111100011011000000001101001000010001101111101010000001010000111110100111110000111110010110111101011011101000010001110110100010001001110010110101011000011010001001111001110001110011010010100001110110000011101100100010111000100011010011111010110111001110011111011111011111100011101010010001100100111011110110110011010111101101010001111000110110010100000001010110010000000111010111010011010010101000001101111101111101011101100100001010111100 +1100000110111010000010100011011100111100101110011011001101011010111011011110001100101010000000111010101110011010001011111101011011011110101000010001011110001111000100110010000100011111110001100011011100010000000011111011100010000110111011110100100111001010011110011010010110001001001111011101000011010101100011100101101110101011100010101110011110100101000100010000111000100110010010110010111011110011010100101001011100001101100111000000001---------100100001001011010000111000011011100010101111010000111001110111001000001001110001000011111000010011011000010111001111101001011010100001010010101011000101101101010000110100001101000100011110101111001001101000100110000100101111101111100100110100100001111101010100101111010101010011111000101100111111101110010011101011101110011011101001110111111011010111110011100000001111010110111010000011001100010000111000100110110110000010111110111011101010001110000001101110100010010010011000101111100101110100011010101010001010100010010100101101101000011110110010111010101111011111100011110100111101011000101101100010111111001010001011010101101000100011010001000010000111010011000011100010011010001101010100000010110100000110001000001011101100110101110111100001100101110111101110110110100011111011100111111010011000110101010101100101011000100001110000100100011001010001010101011001101111110000110101011011000101000000011000001110000010110000001110001001101100001101010011101010100101100001100001100110001110111010010000111101110011001000000100010001011110110011000000111101001110011001000111111011111110001101101110100000101011100101001001110110100000101110100100111010111100111111000011010000010001011110100100111011100011100101001000100010101101010000001001110111100000000101101111001001011100100001010101100000110111000100101101100011100010010101110010000101100001101000100001111111010111101111000001010000100111101100001011100011100010110001110001101010011101000011111101011010010110111110111110110111000101011010011100010011110001001000110101001001011000001000001000110000111010110010010000001011101101110001001100001011000101101010110011110001010011001110011011011011101110110010111010010110011010000111101000011000111111010100111111000101101000100100111101101101110001010011110110100011101011010001100111101010110110001100110101011110110100001001011101110100110100101000110101011000001111101100111101100010000111101011000000110111110000001010110101100111001000000100000000111100101111110100001101110100100101010001111100001001100011001000101011000111111110110001010101001101000001111010101000010110111011000010110001110011101011010110111000110100110011110000111011111111010111100111010111110101010011001010010101101111111100001101010110011110111001101111000010110100110100000010000010011101110101101000110001010101100100111101110001011100010001111000111101101 +0100001101011010001001101111011000010010110110110111010001001101111111101111001001000100011011010000111110101000010101101111100111011111101101111000000011010010011001010110100100010110111100111001001111100000100001110011000011010110000001100110111010001101110110001000100101011010011011010000100000001110101111010110111101000101010110000101011101111011101000101100011101101110001011001000111000000010001100011010110110010110110001100010101---------000111010011001011111010000011111011101010100011110001011010011000100100100011011001110100101101111011100011100100000011000011111001110101000011100110011110110101011110101010000001101110110110110011100000001011000001001101000111011111111000010101101011000001011101101000011011101001000000001100001100110100110100001011001100111110100011000110000101110001010111110100000100010110000110101011011001000010000101011011000101010011000110110111111101101101010001111100101101101100100111010111110011011011011111000111011010011110101010000001001101101100001110011101001111010010100011011010110001100100111110111010111110010001100111111001101000111010011110001110010111111110101111100111011110001000111000100100110000001010011000110001011011001111110001101111111101111111011010101011110101011011101100010100011100111010010010101001111100001101110100101100111010010111110011001100000111111010110111011001001011100000001000000100100100010100000001000101010000001010101000011110110100011111100100111111011011111100101011101101000001111001000010000011101000011111100101100100100001001011000010010111000110110011011110011110000110010000001010000000011110010111101101100011000000011110010011101011001101011101001010110110100001000000000100111011010100101101011110111010111100110101011010010011100000011111000001011000101111110111010010000101000100110001010001111001011100000001010101100001100110111001011001000011111011101010111110101010100000001000110110010000011111101111001111111000100011111001111110011110101011110101000010001001001001100000111000000001001001001000010001001111110111011001110000011010001101001000000010101100001011110100111010010110110111100111100101010100000100101110011100100011101101110010110001101110000111101110101111011101110000111000001100101101110001101011010101101011111111100100010111110111110111100010100011101000010101111010111111001100000011011010000000110110000001100011110011000001011101000100001101000100011001010011111000101100011010111000111101100011111010111100010110011100100110001000000101111010100111100010110011011000110100010100011100100010000001100010101001111111010001111011101001010001010011101100001110111101011000010110100100111000100111101101000101000011011111011110000010000100111000110010000010000010111001010011011100011011110000000010110111011001001101011010001111010001100100000101010001010010011101001111111110 +1010101011111001011101101000000111010110010010101100000011101011011001001111101110010000111000000011000001110011101010100000110010111110101010100000010011111010011110011110101011101000111001011111000001011100001101101001101011000000000100111101010111101011001011111010111100000010000001000101100101011000100100101101000111000111110010101001000000101000100111000111011010011111111101000011011010010010101011000101001010110111001011101100111---------101100110010011011001100111100001000101110110101000111010001010001000011101010011111001000010000110100011001010111001011010101101000011010101110000101011111100100011110101110000000101010000110000100110101100000001111010100111010100111100111001111000110110111001000001100100010001001000011001001010010011101011111010110000000010100010100100100100101010001000111001010100010111100111101101011010001011110101101101001011010010011111111011100101000101111001100000100001101010101110110101011100111010010000100000110100001111100011010111101011000101101101110101010011011100110110011011110101100001111101010011011110010000110100000101011001100001111011001101010001010000011011000001110001000000010100101100010000110011100011001101111000110000001100111100100100111010110101010100111100000011101111101001000110110001011111001100100111011001110001100110111101011010101110010000101100101011110010011001011110010111000000101011101000001001101011110010001000101101010110001010000101111100111000101000000000011100111001000101110011100111010110011110011111110000001010111000111111001010001100110011111011011100100100000011001011100000010110001111110110111100111000110111111001010100000101011110110101001101111001001010110000011001010100000111110111011101100000010001001110000101110001010100010101111001011101101011101000010001101010010000001110110111111010000111100111000110101101011111101111001011001010000110101111011100001111011101100101011001001111011100100001110110110010100101101100111001000011100010101010100001101001011111010000000111111001111000101101110001111001000111100101011101111001010101001111010011010101110110000110001011011111011100001111100010111000101010001101011101001011110011101100111001001011111111101010000001001010100110010001101110001001011011011011100000011111100110011101001101010110110110011100011011111111101000000011101011000110000100110001010110100011111101001110000110110000011100110101100100011011010100000011110001101100111010110110101011010101010101100110111001110000100001010111100111010000001101010000011011101101110000000000011100100000111111001100001110101111100100001101010011000111001110010110000101111111111010011100010101000110111000101111110011011101101001000011110110101110011010000111001010110000101100001101111011001011111011111011111110001000100000000011110100001010010011110001110110100111001001011110111101110101101 +1111111010111111110001110010010001000000111100110001111000010010111100001001100011000001101111011100010110010101100100001010000110110111111011001111010000001110010100100101110010011011101110101000011111101001011110000101100101100010011111011000001110101110010111000010111100011100011100101011100100000101100110011000011000100101100011001111101110100011110111111110000011101010011010110111110101010110100010110010100010001100111111111000010---------100101101011100110110111000111100101100111111001000101000001111111000110001101001010010111011101000101010110001001010100011100000010011100000011100000000000100001011110011101100110110011010001100010100110100100001110101001101001111000111001000000000111111001010111001111001100011111111011101001000100010101001101111010010110110101100001001111110000000000000010111100111111011001101101000101000011011111001100011010011010111100111100001100111010101010100110001001111010111111111011111111111110010101010000001000100000111011110111011110001001110000010100110111001001100000010000111011001011001010110100110100001101110100001110011100001010000100011001010000001011101001111000001010100101010100110001100010001001011000100000110000110000101100110111110111001101010011001100111001110100010000011101001100011101010001011011111011101111001100101010010000101101001011101010011001111000001011100011101101001000110000000001011100111111101010011011110010111010100110110010110001101101010011001100101000110010011000100100000000010001101010101111111100110101010000001000100000110101111111101000111110000101001101000010001101101111000111010011010000000100001001011111001101011000111100000111011100101011100100000001010011010011101000010011010101111110000100111111001111110010010111110110001010010001111111110100101101001110010011111100010010111000111111000111001001110111101100011000001100000001000010110000110000000101011011101111000110010100101111010111010011011101110011111100001101110111101111100001010001011101011100011011011100110100011011100011011011100100010110101010001000010011000000011101010000111111100001110000100101001110101111100110101010100010011111101101010110011000011001000011011111100111010010110110000100111010010110011000011111110000100011101010111010110100000101101100001010000100010000110111011111011111110010111000000100111101110101110001111000010001110010001110111110000001110010000111010101100010101010111001110100100110110000001101001101000010110100011000111110000001110000000000110101100001000001100101110000000100100111110000001110001110010111000101011011010011010000001100001100000010100101011101011110010011111101011010000101001000110010110001010010101010111111101011011111010110110101010111100110001101101110010011010100111001001101011001001110010010110000011100001100010101011100011000001001110000001001010100111111100111111101100110 +1011000011110000111111000111010101110111110011001100100011100111100010010111011101111010111010101110001110001010001010100001100111011000111001000011100010001101010100001011100100010110111010110100010011011101100010110100011001101000010010100010001100100111110110110111111001110110110111010011101100101011011110001000000111101010001111000010101100111010100001110000110010010100110100110101010101100110011100000101111010101001101010101100100---------110010110110010110011110100101110010111001010000111010100100010011100110010001011011101001001001010000000001000000111000001101111110100011011000011111000101100011010010100001010000001111010001010110101100011000010110011001111011010111111100001101000010010010110100100100101101010010100001000111110000010011111010011111111010010001000101011101101111000100010110111001111000000001011111101010101111000000100011011001000111001111100111001100100010000001010010101011010001110100010110111010011101110000010001100111111110101010000010100000111100010001111011011111011101101010111110111111001101100110100100100110111010000111011010011011101011000010110100101001110110101111010000001000100011110010111010011011100010110101000001101101111010101101000010010101001111111111100010001000001110010110110011100110011011111010110111001110001010101110110011011100001000111100011100011000110110110011101011000000010010110100011000001100100011101110000111000011111101110111111001001010111110101000110010010011010110110101111100011001101000110111001110010101111110010001110010000110111001110111000001110100000110001111011100010101110011111110100111010111000001101101100001111011000101011001000101010100110100110011000111010000100001011010011101011000101001101010011010111110010101011001100010011110100000000001001101010001110111000011101001011100110011101111000011110111100001100011100111011001000010100001110001101001011111000000011000100010011011011010001001001100100111101010010110000010110101011101001001001100110110110000011001111100011100010101011011001111111111100001101110101010011011100010001101100110010101110011110011100010110110001011010001011101001111101011100000110101110011000100100000101100000000011111111000111000011101000000101000111110110111101000010001010111000110100110011111000100110111011101110100110110011010110100111001000011101010111111001100100101011110000110000000001010100010001001011111101101100000111110101100101101111001011000111100111011011101111101111011000101100001001001011001101110011110001101010111111101011000110110100111101001011101110011011001101100010110110111111111011001110000010011111000111011110111111000101011100000111111110000001100101000111101001100110101011000101011010000001001011110110001010101011100100111110010000011000011111011011100100011100000001101001100101010011100100110111110010000001100001010011010101010000111 +0010010101101000000110010100001010011000011011001110100100110100000110001110011101101110001110111101010010011101100011110000001110010110100110100111001110101001010000111000100111010100001001110101000001100100110010010110001011110000111001111001100001100001001011001100110110011000001011100001111110010101010001001000101011110101100100011100010011100111000000111010010101101000001000011111001000001111001000011000100100010111000011001010100---------100001001100101111100110010100110111001010010010001001111010100101011100001110000111100000101101001011101000001011101111111110010110100000010111010101111000010101111010000001111001101110010110111000011001111000001100101110101100111100001101111010011110000111010010010011000100111001010000110000100100000101100111110111110000100110100101100010100101111111001111101101001101010000000101101111111001110000111110011111011110110111110101110111000000010100110011000111111101001101110011001100011000100100010001110110111000110000111100011110000110010111000101111111100110100100101110000111110010000000010001110110100000110100101110010000100111111000001000110011100111110011010011011011101011100111011101001001011011110100110001011011111010011111000110110101100011111001000110100000000010001011110100011101111100000110101100111011011001101000100011001101010110111100101101110100100010110000011001000100001001100001100001001111101111000000000000111101111111011110000110101010101110100100001101111010110001101011111010011010110111011110000101110110000111100001011011101001011110010011001111100110000000100001000001010001011111011000000111111001101000111000100010000001010111011011001100100010000010010011110101000000100010110011000110110011000100010100000011011011011010011000010111110000010110001000101101111111001110011000101001001010001100100011000010101110001010011110110001111111000001111100111110010111010110100000101001010101001010000000001011111100000110111101011101010011000110000011010010011101001101111101101111000111011001000001000010001110101100010110110011001111100110100110110010011010111101010100010100000011011001000000000011100111110111100101001010001111011100010011000101001110011011110100111111110000001111010100111011110011111000011101111000010110001100111001010010000011010111101010110010000111110110100100101101110011000011011101101110000001010110110001111000010100110100001111010010000100010100110000001111101011111101100110111110110001001101010101100111010101001010011110011011011001101000001011110001111011011110111001001101010011000101101100011110101001000010101101001001100111010010101100101101111100110000101110111001011011111011100110010011101000101001100111110011110111111011100001000100001110100000000001000011101100001100011111111110000010011111111110000011010101101110001101110011100110101111010000001101111000001011001100000000 +0010111100010000110011101010110000111010110110011011111010010010101011110001010001000110111111101110010001001010000001100001101001111011100110111011011000100001100001110010011110110110100000011000100111010101110111101000111111001110101011000010100001111110111010011111000010110000010011100001010010110111111000111010001000001111110110000111000101110001100000010010111011011010101000101011110000101100001000001010010011101101101010111011011---------100000110010010011000100010101111000110011111011000000101011000110100110110010011100111010100000101000100111100000011111011011010110011100001111111010101011001100000111110001000000011011111011010000100001000100000001111011111110111101101110011010000011010000101100001100111011001100100010100010010000110010011111011011011001101100101001101101101100110011010110001110101110100101111110100111111001011000010110001111010100011101011010000011100001100110011100111000110111000110001000011100001101010010000111011011011111110011100110001110111111110100010101001010110100101111100011001001100010111101000000010110110101001101111010010001001101111011010110011000011001111101111000100000111011011100100111011111000011100001111011011010111100011010000000110000000110101010000000011010111110010010100001010011110100101101111001110101101011011101001100011100011110010101100010100100011101001100001101101111000011100110011111010000111110110111001101110010001000011101001111001011000110110000001011011011001000111101101100101000100010100001101001111001000010111110000001010111010101010111100000101110100100001000011000110111101111001111001101110000100100110010011100101010001011100000111000101101111101010001110110010001001101110001101100010111100101101100010100100111100011001101111001001001000001110000100111101010110110001111000101101001000011010111101101010010101000111011111101111110011010000011000010001011011000011100011001001000010101011001001001010100101101101010001100000110000111110000110001011111011110000100110010100110111010010111101111000000001001010010010111110110101000101011010011110011011010011100100011111001010001111010110110100111100000010010100100101001010110111100000001010111110010110110010001111001101010111011101010001111101110001101010000100100001001010001110110010111010011001110000011001100001001010111000000011111110000010111110000011111000100110010111111110001101101001100001100000010011100100010110001100011101111010101000101110110010011101111100001101001011010000000000010011001110100011011011111001011110101100111010010100100110011011110000110100001101001010010110110101000100011010011011010101010111100110001010101001100100111010110001111010001100000101101001010000001111001010001010100000000001111111101100001100100000001000100111110010101000001101001110011001001100111011011001101000100000011010001101010111000100111010110110010 +0101000011100001000001100010010101100000110101001110100111010010000000011111011001011100101000001010100100011111000000111110101001011001011001011011010011110100001100100110101001001100011010100111010100100111110111001101111111001010011101111111000010111110100110000010111101110110100101100010100010111110101010011011011001100111010010000101111000101011001101101110000001000000001010010100100101101111101110010110011100000100111001100000010---------100110011101010000110010111101011000110100000100110011001111010101100000010001011110010010011100011000100010011101110101110101000110000101011000100100111101101011000011111101010100101001100000010101011110111110111011101100100011110010010011001100111011111000000000000111010101010101001001111001001111110111011001110000000110010101010111000100100111100110000100110101000110010101101110010011111101110010011010000000111111111111011100011000001010011010000111110101000101100111110101101001011010100101011111110110111010101001111101111100101101100000101010111000001101001100001100010100001101111111010000101011001101101100110000001101110010001000010011101011100010101000100011000010110011010111010000001110110001001100101110010000010000000101110110000110110111110111010100101101011011111011110100110010000001101001110011100111001100111010000111111010010001101101000110101011011011101110001011010100101010101110000110011101111000000110111001011010111101101001000000011111010110100001011011010011110011101110110011110000111010110010110111111011000011110101111111100010000101100100100100110110001100100100001011011101111010100011011110101111000011001001011110110110111111110000100100010101010100000100001100001011101011010000000010101110001111000000101100110101110001001100001110101100110110110011001000111001110001001111100111011010011111010000010101000000100011011010000101111110001011101011001001000010001010011110100000100101100011000011010111001110111110110100110101010111101001011001111110111000010101110101010101001110110101100001111111001100010100011101111110011111111000110000101101110110100000001001010001010000111000011001010011110100100110101100101101110100111100111011100001101011001000000101001000111101101010011111111101000100001111001011101100001111000101010110000001110110100110111010111101010010001010010001010110100001001111011110011100100110111100001010101101010100101011000110000001100010111111000100101110011110010100000111101100000100110010111001111101000000001110100000000111100001111010110110110100111011100001100011011011100111010111001000100101011110001010001011001001110001110010111110001001110110101101100110011011101001101001001001100100000110000101000110100110001101110111111010110000011110111011111100100010101000101100000000111000000010000001111000011111000001110111000100111111011110010110101001001111111110110100110010000111 +ls112msgs +1111110001010101001011101111000101001011010011010000010101010101010110110101011011001001001111100111001100110011110001111001110101000101000011111000011101000111000101101010110011110010011000110010101000101011111010100110000110101101011010011011010111010110011101110010010100000100101100101100100000111010101001101101101110111111101000111100010100101110000000010110011000111010001001100000000111111111111011110011110100000010001111100111100011010101011101101010011000100010101100111000111000011110010111001001011011111010100101100111100100010011100010111100101011101100110001100011000100010111000100010001100001010100000011101000010011011100110111111000100111100110011101011100101011001010100100110110101011001011001000001100011000011111000111011111101111001110000111010110101011101011100001010100000100001000001010110111001001101011100101001101000101111100010101101001111101110110000101011101111111101011101101101111101011111001000111001001100101111101011001110001111000101011001111010111000111001110000100110101010011010101000110010000011010110001100111101000110000101101000010111010111010001100001111001000011--------- +0001011001101001010101110001101001011100101111100000000000011010001100010010011010100001101100101010010100100011110110100111000110111110101100101010101000100101011110010000110100100011001010110010110110111011010100010010000101000111111000010111110011101011010010000011110000100101001110110001001010110110001011011001011000110000110101100000000000000011010010111100100000111001110110111011011100001001110111010010001100011010100010101110010011101100101101100111001101011110110100111110010101110101000000010001100111000001011101111011011001001000001010000101011000000101011101110110001101111011110101011001010011100000010010011101101111111001010111001111010100101111100101100110011101100101111010111110010111011101010011110000001000000000100001001011010110000000001101110000100001011010000100010101100100111000100010111111011010001111010100101000110010000011100101000000111101001101100000000000101000000010001011011101010100111001100011110011000100101010110010101110100110001110111001010111000000101000101010110001110111111001011011010000010110010110011101110011110110000110100001101101000100101010111110101010001--------- +1001010000011011101010100100000101011010001110100110011000010100100100001100001101101000111000001100000111111000100010110011010110011101110010100100111101110110110000011100100100000101011001111111001110111111010100011011011111101011011110100101010101100101110110011110011101000101110011111010000100011001010011111110100011111100101000011110100010010101000111001111111011100101100100111000101110110000111110101100011111000100110011011111111111110010111101111000010111001001001000000001101001100001111010010000000000110001110111100010001101101001001100001100100011001000011101101101011100101100100111001111001100010001011100101111100101110010110111011100011010101011010101000101000011100001111111101110111001001011101100111100010000110001101111000101010100011001011011010100101011100101110111111111001111101010011000001001110001000101100001101001010101110101100001010110010000100011001010110111100111110110111000011100010101010100000110100001011101001101111011011000011001110111110001101011010111000110000110001010111000000110000010001000010110001001011111011000011100000000010110001101101100011000111001001110010--------- +1101010000010100001010101001001101111100111000100100111101110101101001000111111010101100100000100110100111101100000000011111110100011110111110111111110111010000111000101000000010110111111100011000000011000100100111000010100101001101110011101000010101010011001001011110100100001110001010111000100101101001111111111100000011100010111100011111101010111010100101001000101100110000011000100001100011110011111011101000001100100000110001111010110111010010000110111100000100010011010000110101001011111110001000001100010001101001101101001111011011010100011011001011001100100010110010001000010001110100010000010101111110101001110110111010011010100001101101111000011000100111101111111010100100010010111011000010001011110001011011011000001011001001000001010110000111110100000101011010011111101111011000101110010101100010100100010010110110010111011001111000110000011000110011001011101001000100110110010010111010100110000011010100001000100111101011001000001111111101110110010011011100110100100100010011101100101001110111111010100011101011001101010001001010110101101111110101010100101111111100011011110110110011100100000110010--------- +1001100011010001111110011110001011110111001110010011011110111011100010011101101110111101111011101001001100011011001011001000011110111101111111010100110110011110010001101011101010011111010111000010000000001010110001111010000010110011010000101101101001010000110100000011110010111001110111000001010100110100101111110100111001011100000101101001100111100100011010100100000000101110101111010000101001001010111001110100010110001110001010100110010011001000000111111000001000111000111110010101100101111110000001001110101001011110000001111010001010010100010001000001011111110111000101111001000001000111110010101001110101000111011111110011101010101111010000011101011000100110111101011111010010111001110000010100111111110110000000001111111100001110011100110011001100011110011111011100100011001000001010100110000101011010010000100001010010011110100001110000010011111010000110101110010001100100110110000100101101010111111100001010011000111000101010100100001110000000110011101000100010111101100000001110100001010100011100101101000110111101100000001111001011001100110110011111000001100111101101110111010001101111110101010010100--------- +1000101110001011101111010110101011001010010111000001000111011110001100010010010001011100000000000100101101001101001000010010110000000001010001111111010001000010011010101011001111101100011000101111000011001001110000100110001110011001000001011110001010111010001110001001111111011010011001111010000110100011000101011011001000001001001010010100111101110111001111101100110000000110000000111101110001000100000100110101111110101011110000010000010001001111000111110001110101110001000001100111010000000101100101110001101101101011001001011001010110110000101110001101110111110101111100001000011110101110001000001011111000010010010001111011100100110011000000000010110000100001011111110111100110010010110100100101101110100011111111111011000111000111010101000010011100011100101100111101101011101010101010101000101100001010111001100111001101010010011100000100011011010010111100011001101100001111101110100101110010001111001011011110101000101100011000110110011100111010100100100001101001001100000110111001110100110000111011111010111111100000100100000111100010100110000011001001110010001010000111110111110100001001101111010011110--------- +0101010100001111111001001101010011110000001100000101000100011101011111101010100111101010010111011000011110000010000101101100011000011101110000111101011010011011111101111110100110011100010010001010111000000001001010000101110010110010000001001111010100011000011011110110001111001110100011000000110111110011110001010100100100111111101011111110010011111101000101001111010000100100010011111001011101001101100011111100111111011111000101101101011111001110110000101001000100000100100011101011001011111010100101101100000110110111111100000111001111111001110001110110100010100110010110010110001010111111000111010100111010001000100011001010001101100101100101110100001001111010100111111011000000111101101001011101111100011011110111000001000011111000101110000010101000001111110110011001010001011001011010100010011010100101010100010010110000100011111101101011101000111001010001001010000011011000000110000010010100101000011101110101101001101010100010100100010111010010100100000111101010011100000101010010000100101000111111010011100010101001000101101100101101111011100111010101001110110101100000100011010111011110100000100000111--------- +1110000011001001001111100011011010001010111100010011110010010000000001000010101010000001011110011110001111010010001010001010111101001100110011110110111000011110000011100111110110110100100011101001101010000010101010000010110101001010000111111110010011110001000011110110110011111001000011101000111101010011111101100110111010111101111001101100000000101100011010011100000000101101000100111000010000111100001000101100010010010100111100101100000100000010111010100000010100111110101110110100100011011110100000111010100100100111011101111111011011101001010100011010001001111010101101110011011001011111110101011000101010111101101110000110100111001001101110010110001011111101111011011110111010111100101110010100101111110110000110111011110100111001101011010001110101111111010110111000010001111101111011101010100111100010000111100100010010111101011011001110011001001000101111110111110110111110100101001001010100011100100000001000010111010011000111111011000001100110010010110000011100111100010110100011011101110001010000110010000101100001011000100001100100101011111001100110010110001010001001001110000101100111010010101111011--------- +0111000110000011010100011110011000001001000011100000111011000010100010010110010101110011011101111001000100010000100100000111010010011101101011001110111111101111100110110000000101100100100100111000001010010101101000100000110000111100011111001000100110101101010001111000000111001101100101001111110011111001100000001001001110010110111101000111100000001000010010011110111000010001100000001010100101110101001100000001011110100101000111101101100110000011011110101111010001001000100110110110000111001000111001000010111111011010101100111011101011100000000100010010000100001101000000111001100111110101011111010110110110110011111000001000100111101100000101111000011110010101101011111001110110010101000100110000000001010010011001011100010000111000000100110010011011101010010110100101111110000000010111111011001010010011010100000000100001101111001110110011010110111001001011110010100010011011110100000111000001111011100101111100010001110010100010000110010000010110101000000011101000001001100010000010100000001000010010100010111010111000110011000011010010111111110001001100110101010100001110010011011000111101010010010100011--------- +0001111011001110111101010101111011010101111110010110001010110010001011101001101011001110110010011110011101000110110011110111110001100110110100110111110101000011001000001110100011111101011101011111110000111010111001100100001111000111001101001011101011101011100101001101011000000111111001001111010010000001000011111101110010101110011111011011110111101001100001101101011001010010010010111000011111111000011011100111010011110010101011101101100111000110011000111101010100001001011010101001000010010000101001001000011000110011100101101110101001110111010010100011001011011000100001001001011011011110100001010001101100100101100000011011110101111111111011010010110000100000111111001110111111100100001010100110010100001100110101011101010110111001111010110111001000111110110111011100000001111001010101010000010110110000101011000010111111111001001011011110001011000010010011011111010100111011100110110101110101011110111001010111110010010010111100011001110101101001010001110110100101110100000111000001000101001001011011001000001110100110010001110100001010100010000110110000000001111100110010111101111110010111100001110111010--------- +ls112cwds +10101101011010011011010111010110011101110010010100000100101100101100100000111010101001101101101110111111101000111100010100101110000000010110011000111010001001100000000111111111111011110011110100000010001111100111100011010101011101101010011000100010101100111000111000011110010111001001011011111010100101100111100100010011100010111100101011101100110001100011000100010111000100010001100001010100000011101000010011011100110111111000100111100110011101011100101011001010100100110110101011001011001000001100011000011111000111011111101111001110000111010110101011101011100001010100000100001000001010110111001001101011100101001101000101111100010101101001111101110110000101011101111111101011101101101111101011111001000111001001100101111101011001110001111000101011001111010111000111001110000100110101010011010101000110010000011010110001100111101000110000101101000010111010111010001100001111001000011---------010111000101010111100101100100111001110111110010010110011110000111000110011000110100000100001001001001010010000111110011011100101001001010001110011111010010110011010011010011101100110110001110001000101111000010001001111111000101001010101010110101100001110001001001110101110001001001010110011011111000111001000001110010011111111010100001010110010000000011111101100110111111101110000000101000010101010110110110111000011001000000000011101111000000100001000100111000101101101011101001000100100100110110100110101100100000111011110111000011101111111011001111010001010001000001010111000010000111101001001110110111101000100011111100001001000100000001010011001101101001010101000000000100011100110010001110111110011001101110001001100001101100010100111011110010001000001010100010111100111011110011011110110011010111110101010101001110010010010100111000000001001010001100110011000011001101010111001101011011111011010111001111000110110101011001001101101001101101111101011110001101101111000110100010010101110001011111111001001011011001011000001101101001010110000001011110010101000111100111000000111100110011101001101101100110101000111010011100111111110010010100100111010100101101010110110101011101110110100100001011100000111001101010000010111010101100000100100001110000101011110001110010110000110111111100011011101110101011101110110000101000001110110001001110111100000100111100110010110010111100100101011011001011001111001001010111100010001110111100011001100011000001111111010111011011101001010000010010101100000010110010001101001011110101111001110000101011101011100101111000010011110111110111011000000110001101100001011001101011110010001011111100010101111111100110000101100000001111100100001110111100001010101101101010111010110111111001111110111100100001101111110100010101101111101010011101011100100000000111100100100001111111001111011001110100101011100000111011100011101111000110000001110111101101010010010100110000110110111100001001100001110100101111101001001111000111000110111110101101011110100110010110000101010011100100011101100111110100101101001111000000101001110011010111101110011111010011011001010111011100111010111001001010001011100100100110001111000111111010100111011111000000011010100001101111000100101010100000000111011100011010011010010011100000001111001100001110000110110111000001000110111100011000000101000110001100110110101000001100111010000001000010001000101101001000110011110100100001011110111111010110111011011000100011000100011111000000101001111111100111000101110111100010101000111101101010101110100001110111011101101001100001111101001111110001111010100001110001110010011110101001101010110111001110000011100000101011001110010101110101100101100011110010010110000110101010110010111000110100000100010110111100010101111110110011100001101010111100100101101010000010001101000010001101011000111011111011100000000000101001100110011000111110111100111110011110001011100011111110101001011110111000000101111110000100010101010011010110101110000101010001010101001000001101101010100100111101000010000011011110011100111010000010111000001110001111111010110010100110000110001011101011001100011000111010001101011010100001100010111000000100111000010100100100111011101000011100110101100010110110110001010111011010001100010111101110010010001001110101001111111010001110000010010111100111011100110101100101110011011001111010000001100100011110001100011101010100000010110010100001101011010110010100101110100011011010110100101110110111001011000011011010000011101110111100111101001100010011101010000010010111001011010110001000100100010000111100010001011000000011010111110000110111001100001001111101000100010100100110001101110001000110001010000111000100011000111101011011001111110110101000110010010111000000000001011101001001100101101101100110010010110001101100100101111010000010001110111010000000001001101111111110100001011001010001100110101001101110001001111000011111111100110111000001101010111101001100111101101000110100000110010011111010110111100111100101010100101011011001100011010100000100110011111110000110010011101000000010010011111010110000110010011001110000011110100000011100110110001101000011100111010100010111111111000110100000111101100101100001101000101011111101100000000101111001111110011010010101010001010010010010110011100001011100011011100010010100010110000011010001000011011010101111110111000110100110111101110100010100110010110110001111100101011110101100101000000110101000000110010110101111100011110001110100011111011010101110111100111011010101010010011011110100001110000100101100010010101001000101100110111111110011100010100101101011010100111001101111101101000100010100100100101001101110010011010001011000011001100001001011100010000011000100011010101011100100000110001010001100010110111011000000101111100111 +01000111111000010111110011101011010010000011110000100101001110110001001010110110001011011001011000110000110101100000000000000011010010111100100000111001110110111011011100001001110111010010001100011010100010101110010011101100101101100111001101011110110100111110010101110101000000010001100111000001011101111011011001001000001010000101011000000101011101110110001101111011110101011001010011100000010010011101101111111001010111001111010100101111100101100110011101100101111010111110010111011101010011110000001000000000100001001011010110000000001101110000100001011010000100010101100100111000100010111111011010001111010100101000110010000011100101000000111101001101100000000000101000000010001011011101010100111001100011110011000100101010110010101110100110001110111001010111000000101000101010110001110111111001011011010000010110010110011101110011110110000110100001101101000100101010111110101010001---------001011101100001101111011101101000100010011100111101001110110010001010010010000110111110000011111001111011001000110100001001111000101001100001011100000101001011001001010100000100001010000100101011001011111110101100100110110000110100011100110011011111000100010010110000101001100100010111000100011000000111010010101111111100101010110010000101110100001001101100100010101001100111100001001000111100000101111101011011011010000110010001010001110000011011010010111000000111010111010111001011100010010101001101011101111101100001111111001110011111011110001000011011111000011101111110100000101011010100010111011110100101111101010001110011001010100000000100001010000011110010101010011010110111101110110011110001101000000100011010111110101110110000001111010000010010100001010011011001011011111110010100000100100111100000111011110110111010011111100001010010100110000100010111001101101100100110110000101100110111101101011110000110100010100010011011110110011010010100101001001101101111010001111011000110100001010010100010101011001101001110110001001100000001000101000111010000001100100111100100110011100001100010111010001111101001011000011101100011111111001101011110110011000010000000110100001110110111111000100001000101101111011111011111001100110011100000000001001000001011101101011001101111001110000001011100100011001110011101010110000101001101010010110100110100100100110010011000100001111000010101101001111101010100111011000100111101000101000010100100110000100111101101110101000010010110111101010100110101110101110111101100110001111100101010111100010011111001110101110011101110100010001000100000110011001000011100000010010101101000010100011001000111111010110110000010001101100011010001111011000010100011110011111110100010010011110100000111110001001110100011101110000110001000010011000000111010010000111101111111111110011000000111101100011001110111111100100000000000001010111110000000111010111101011110001101000011011001011010000011111111011000000100001100101101101110010110011110011101101111011100110010101001000101111001001101101000011001010011100001110010111000001000011000101001110100010000001010000100001110101000000110010110110011010111000101000100101111111000101111110000011010110011101001100001100101111110110110101111011010011011111101110111101110000000100000011001100101010101011011010010001101111100010001100000000101101001011111111100110001010010100100010001100011111000010000010000000100001010101100100000111101111011010011010101111010101001010100100001010111000010101111101110110001011111110000000110010110000111011101000001101011001000110001111001001100100100100110101111001101111110010000011100011101110110011011010110101001110111100000101000011001111111110000010111111101000111011111110100111111010101001011001011111001110011000100111100100110001011011001001000100110001001101010100010011011011101001100010111111010011001000010111011000000000110000010000100101010011100011000011111111111100101101011010101010001000011101001000101000110010000011110110101000100001010111101101110111110101010111001111000110110001110100101110000010111001111100001001011101111000001001001001101101010010110010111000010010010001010101110001010111000010000110010101010101000101000010000101011101101111000001100000010011001111010110111011110000001101110011010101110000000000100101001000011000111011100010100000110000010011011011001111110010001100100000010110101101011000101001110001101110011101010010101001101101101000111011001101000011011110010111110110111101010010011001010011110000010001101110001010011010001110101011100111000101001111011111101001000000111001110000111101000100011100101001110111011011110100010000100101101111000000111110001001011101011010110100000100000111101011010000111101101001000001000111011010111011010100011000011011000001100001011010010111110011000110101110111111000110001010100110010001110110110010111011011010100111010111000110010101100011000010110010000111011101101111011110101100111100101111011011110110101101011001001010111000011000110100101011101101111000100000101111000001000110110000110110000011101000101010000011010100110111111110010110111000101011110010101111011110111001111001101101101000010000100111001100011111010001000111101111010001111000100010100010100010110100101001110010100001100010110100000111100110011000001111100011011111111001011000100100100011101011100100001111111010111011010100010101110101110011001110011111101101000001111000111100011010101011011111101010101110110111000101001001100111001010100111000100111000000110011101001011010010101110010101110000010100111101011100010000011001110101110110011000001000101010101111101100001110100111011111010100101110101101100100100010000100110101011111011100001000011110110001100110101000001001110011101001010001011111101001011100110101 +11101011011110100101010101100101110110011110011101000101110011111010000100011001010011111110100011111100101000011110100010010101000111001111111011100101100100111000101110110000111110101100011111000100110011011111111111110010111101111000010111001001001000000001101001100001111010010000000000110001110111100010001101101001001100001100100011001000011101101101011100101100100111001111001100010001011100101111100101110010110111011100011010101011010101000101000011100001111111101110111001001011101100111100010000110001101111000101010100011001011011010100101011100101110111111111001111101010011000001001110001000101100001101001010101110101100001010110010000100011001010110111100111110110111000011100010101010100000110100001011101001101111011011000011001110111110001101011010111000110000110001010111000000110000010001000010110001001011111011000011100000000010110001101101100011000111001001110010---------101000110011110010001100001110001010100010011111001010110100011001010100010010010011101111110101111100101110010100101110101100101101100000100110101000010000101001000110110100011111101000110011011010010010100001100010000110111011101001111010000011011110000000001101010110101011000100111101111110000101010000010001001101110110101000100000100100000001101010001111100111001110110000111110011010100011100111000100000010010110001101011000100111111000110100111110011011100110000110111001110111101011011101100101011101010001001111100110000000110100101001101101010100010111100010100110100010101001011010010110000101110110011111000010010011010001011010111110000100011101111000101110110001011011101110101111101100010101100010110101100111110010011100101110000001010100110111100111101000110100100000110001001000100011000111101001001110110101100100100110000010101110000010000111010001110010000001001110011000000011110101101100010001010111011111101101100101111000101011100001100100110010011101110110001111101110000001111100001010100010101101000001011110011100110001110011000010110011000001010100111000110101101011100001101000000100010010001101000010111100001101010110111110010110110110000010101100010010000110000001100101100011111101001011110000000101101001011000101101000011001000011001011001001100010001110000111110111111000110000111000101101010101101101011001100000111010100110000011001001101010100000101101110111010000010111100011111101000010111011110000001000110000110010010111011111011100101010011110110011111101111101010111001010101111100101001110001100111101010100001000101110101100111110000100111001101010001011001100001111001010111010010101000101101100011101010001000101000111001101010011111111110010011110111101111110011011101101000110010000101010111101101100100010001001000010010010011100011010010000011101101001101101011011110110101011101111000000011100000010101000110011001010000100100110010100100101011000100001001101110001101100111101001100111111100111010101000101111001001111011101100010010110101111011101011010011101010101011000110010010111001111000110111111010110011110101100000100000100001111101011111100101001110000110110000000101100100100101001011001011011011010010110111010110111000101101010101001000101011110110010010010110001100111000101101000111100111000101011101110010111101010000001010000110011000110010110010000110100011010100111010111010000101000011111010010010110100000000101000011011000110110100100001000101111100011011110001001101101110000000000101010101011001101010000000000100010101001011000000101000111100000101010001011001101001000100010101100111101011101000000101111000110001000011100101011001010011111010110000010010110111011010110001010000001011110110110011110100001010010001001010111111100100111100011110110010010011000111100110001100000100010110000000100100010011100101000110100101000100011001001011000000111001111100000111110110111011111111010011111000001110000100011111110000011101110100111011100100101110010000110111110110000001011110101001101100010000010001110001100010010011111011010101101000001100101010111001101000101000100100100001110111000101110010100000010011010010011001111111110010011001000000011011000110000110001101010010010001000011001111111101000110111011001010110000011001010101001000001010110011001110111000111101111010011111101100100100110011101110101011100010010001111100000010100000110101110000100011000100111111111001001010100110011000011100001010110100000100101111100111000010111011101111100000101000111101110001111101011001111001111011101101100001101111110010000101101110011011010110010110101010000111010101100011011001100000001000110100001001001100101001111011111000111000101010100010010001110101100011111100110001011000010110101101100001001101000001100110011001101100001111010001110110001111000011110001101000101110001001111110011001101011110001000111001111000100101111110110011010100101100101111011000110101110010101110101111011000000111011101011111010011010010100101011110000101111100010111011011010000000000010100011010101110101111000011011100010111110111010000010010011011100110110011010001010101000101110000011010110111011011010101001000011101001000110000000100110011001100011010011110100110111110100101000100010010111101011111001100001101001101100100111001110010110101101010111010011100001101010010010100111000101110101110100000111011000111011010101011010001010110111111011100000100010010111111010101010000110001110000011100000011101001011010011101000010111110010100100110110011100101110010110110100100100110100011001110001110101100110000101010001000111101101110100100010001101101110110111100011001010100111000010100110100111101010001000110101010100000000001010001111001110001101111110011100101010000010111011100000011100101010011111101100111000 +01001101110011101000010101010011001001011110100100001110001010111000100101101001111111111100000011100010111100011111101010111010100101001000101100110000011000100001100011110011111011101000001100100000110001111010110111010010000110111100000100010011010000110101001011111110001000001100010001101001101101001111011011010100011011001011001100100010110010001000010001110100010000010101111110101001110110111010011010100001101101111000011000100111101111111010100100010010111011000010001011110001011011011000001011001001000001010110000111110100000101011010011111101111011000101110010101100010100100010010110110010111011001111000110000011000110011001011101001000100110110010010111010100110000011010100001000100111101011001000001111111101110110010011011100110100100100010011101100101001110111111010100011101011001101010001001010110101101111110101010100101111111100011011110110110011100100000110010---------000110100011010110001001111011101001100011011110011111101100110001000100101010101000101101011001100011100111010101001011100011001111110001000100010001001100001101100101111110000011101000010101111100101111110001001101110110010000001100100011111101110101000011011010001111011000101001101101110000111110001110111011001111101000001000010001001010001001111011010101010101000000011110001010100101101111010101100101100001101011100111111100110011001011101100100111101110110110000010011011011111100010001010111100111000011101110110001100101010110011001100100000110110001110101011011011011100010010000111011101100111000101000101101001111111111101100000011111101111100011001101110110011010111100010000100010101001111000100011101001011100110101110111001010001011100000000011010010100001001100010011011000110001011111110111110110101110001000011100011110101000111011001001001000101101110010111011000000000110000101110110001100000100111101000101001100010010000111111001110000000101100110101001101011101000011101101110101111110100011011110110110011110111011001001111110011011110011110011111011101001100100001101100101110001111001100011010000011110100111110010101000110010011110100000011100011010001011000010001110010001001001111010101010101111011000100010000110011011101001000110101100011001101110011110011100100001000110000110111011010101011110010011101111111101101000010010011000111010111011111111011001001100011111000010010100000111000001111111110100000111110011001010000001001100010101000010011000000101110011011011001110110010011100000101001011101111000101000001100100110011110110100010001110001010100011111100001100100010100101110011111100100100000101101010010001110010100011001101001000011010010100010111111100011001111001110101010011101110000001011110010010111000100010111100011011101001001110011000001001100011111101110111000010000101101000100010011000000111100000101111000011100101110111100010100111101100100101011101000111101001011011010101101001010100110011100111010110101101011110110111110000111011101101010010110100011110111011011000011111000110001111101011110100000000010011011000110111011000011000011111111100010010011001001000111011110100001101010010101100001101011000100100011011001101101100110101010001001101101111011011110001010010000101100001111101010111111011010001001111111001111001000010100111101000110001001110111010011011001110010100111011001110000001001010100111001001000110010000110100000010110010111010110001110110001110000100010001110010100100001011101011110100111000110010101000101010010100101101100100100000001010001000100101001110000100111011000111110010000110000010100011100101011010110010110101101110010101111101001001101100000100110110110001111101011011001110101101001100110011111100100101001111010100001111110000100100011100110100000100001100001001000101101101011001101001001001111000110100010010110100000010011011101011000011011110111010001011001000111011011110010100101110100001001111100101011110100000010010010101001011110100110001011101010001110000101010011101100010000110111010001110001001011101111110111110101110000011010110001111111011001000011010001110010010101001011001100100110001111001001010110101011111001101001000110010110111010001000111010110101111010000110100110101110000010110000001101001010100001110101110100010100000001110111110111000111001110111010010110000100011110001111011110000010111110000000100101111110001010000110010101110110001110111010010111010110111100101010101001000110110101001011010000001011010011001000000010101000000010001111001010010110101100110110100100010100011000100001100100011011010001001001111011010100110101001010100001100000001100000001100101001000100000111010001101011001001001011010110110100111101111110011111000111101111100001010010000011001000001000011100101011101110111000101111010010001011111101010101000111110100001111110110000100010010010100010010011110101010001110001011001000000010001100111111111101001110010101001101100000101011110011100100010001110001110001000100101101100000001100110000101011100010010101111000110000111101010101001000101011100011001000001101111101011101001100011101101011001111110010111001011001000010101100110111011111111011110010000100100101010100100110011001010111000110000111100000000111110010000001111110101100001111010000101111110010100001001011100000100010010110000011100000110110000001010001010011001111000100101011010100001000111010001001101111100011010000101000011010111001110111010101111001111101110011011010011001011111001100111000000101110001100011110000011101110110100110000110101100111111010111000001110011010000111001101010010101001001000000010110100011111011110011011100101001101111110111100000010001110010101111111001001011100110101001111001010010000110111001011011011010110101010110111101110 +10110011010000101101101001010000110100000011110010111001110111000001010100110100101111110100111001011100000101101001100111100100011010100100000000101110101111010000101001001010111001110100010110001110001010100110010011001000000111111000001000111000111110010101100101111110000001001110101001011110000001111010001010010100010001000001011111110111000101111001000001000111110010101001110101000111011111110011101010101111010000011101011000100110111101011111010010111001110000010100111111110110000000001111111100001110011100110011001100011110011111011100100011001000001010100110000101011010010000100001010010011110100001110000010011111010000110101110010001100100110110000100101101010111111100001010011000111000101010100100001110000000110011101000100010111101100000001110100001010100011100101101000110111101100000001111001011001100110110011111000001100111101101110111010001101111110101010010100---------000001010100110110001101100111001010010111011010000111000110011001011011111100100101100111110110101101100010010001000011001110100100100101010101010011010000010101000010111111100001011000000111101100101001000100000001111101111111111010111011001000010100100101001100001010001111111101101100101100110111101101110000111110010011000000110110111111000101000001110010110010110110111011100001101101110110010001100101100001111010100101010111110010000111001101101101100001100011000101001111101111011110101011011101000000110100011011111111101111001101111110100101000110101000001011010110000100000000011100010011000001110110001000111101000011010110101110111111001010000001011000110100000011011001110011100101110100110111111000111111001100101001010001010010001000111111010110110111000100000110011001000101111011111110110101000101010111011111001100111011001101101001100000111100010011011010001011001011111011100110001100000011000001011001010111010100101011010100000001111001101011110100011001000000010000010110110000110111111111100101111111101110110010101010100110000001011111011111011110011100111000111101100000111011111000010110100000111000110111000001010011001110000101111110100110100001110111001100010000110111101000111111110101100100110011101110011101111110001111100010110011111001100100101101100101001100011110000100001101010101101111000110101010100011111010001111101000100110001010010010000111111111011000111010001101011100001011111001001000110001001001111001000001011101111001100101011110011010101000100100110110001010010001100000101101110101010011100001011111100111001011101111110111000101110000110101010111111100110011000001110011101011101010101011110001011110110101111000001010011000101010110110011100101000011111110110110101011111101101111010001011000010001001100101010000010110100000111001110110101000001001110000011111000110111001111000011001101110010100101000010010011010100010010010111101001000101011001111100001010111011000110110001111110101000011111100001110100111101011001011011110010100110001110001000010011000101101001000010001100111010010000110000011110001101100111010100000110010111101001010111011111111101011100100100000110001010100100100110111000111111101111100001111111000110111011100010101000101010111111010101100101101011101100000011111011010010000001110110011101011111101001011100010001111110111100111001010101011101001110101100100000010111100110100011101110111101110011000110001110110010111101101011110111000010001011101110001000010100001111000011011101011111100001000101000011001111000000110110011111100111110000111001101100110000001010110011000100011000100010001000000110000110011101010111111101110100010010111000011000111101101010001111000110010111010000100010111010101101010010110101101010100011001110110111010011010001011011000000110111100100110011011010100000010001101100001011100010001011000011011101101001010001010110000011001001011011011101110110000000011100000000111011000111111000000010110101011101101000111001011101010111101001000000100010010001010100000111101101101010010100011111111101011001110001110011100100110011010010000000101110001110001000111100111001110111000010111110100001110110100101111011111001011100010111010111111111001111011101101100110111110111101000000101011001001100100100000011001010110001011011111001111001001001101111010111100110010100111111100010111000010001011111111111000001010010000111100010010100110101100000011000000011001011110101001100000100100001001100000111000000100101011111111100101101000101110101111000100101000001101000110000110000000100110111001100001111000010100010010101000111111011010110111000101000000110110111100110000111011011010100001000110010010010011100111101111100101001000101011101000011110111001010111100100011111001110000011110101001000110111110101000111011110010010101011010100000001001101010100000001100011100110100010100110100000011100011100100110000111110011000010010000011001101111001010111101101011110000011101100100101000100101010100011100011011010001010101110101010101001111101010111100111101110011100011011110001101110110101001010011000000001001000110000001111101101110001110111001001101110011111001001100011011011010011010110010101111100100101010100000111011011101001100001101000010110101111010010010111110110000111011100101111010010000001100010000101010100011011000001010111010011100101111001111110100100111101011111101010000011111101010100011010101110111111111000110111101000100100011101100001001111001101100010110111101111010010011000011010101111101100111110001000110100010011111111110001110110000100100010101100001111111111011101010101100011010001110111101000101101111101110111011100110111101011010100011110000100001000111000101000100010000110010110111101110011101001010011100110111011010110100111011011011100111 +10011001000001011110001010111010001110001001111111011010011001111010000110100011000101011011001000001001001010010100111101110111001111101100110000000110000000111101110001000100000100110101111110101011110000010000010001001111000111110001110101110001000001100111010000000101100101110001101101101011001001011001010110110000101110001101110111110101111100001000011110101110001000001011111000010010010001111011100100110011000000000010110000100001011111110111100110010010110100100101101110100011111111111011000111000111010101000010011100011100101100111101101011101010101010101000101100001010111001100111001101010010011100000100011011010010111100011001101100001111101110100101110010001111001011011110101000101100011000110110011100111010100100100001101001001100000110111001110100110000111011111010111111100000100100000111100010100110000011001001110010001010000111110111110100001001101111010011110---------111000010111000011101100001000101010001110011111110101000001100010010111000010000000111110101101010100000101010000010101111110101010101111111101001010000010110011011101101011010001101010101100101111001110000110001010100001010001011001110001010110101000001100011010101101111011000101110000111100100000101011000010111100101111011000110101011101010110000111101110010000111100001011000100100111001011111101111110110011001100000100010111000100010000010101010001101011100000011010011100100111101010101110000011001100110001100101111011010010011100010110011001010000011101010100011010100010000110000111111100010011001010011100010110010101100100110110111011101001111011110010100101011110010110110011111000000110101110000110011111111101001000111100111011000010001111011100111001100000001110010101001010100111110000110110100110001001101101010111100110101011001101110101101011011100000101100011101101100011101111011000000100011000010110000010010100011001100101110011100111011101100111001101001101000011010101011111101110011100110110101000110010110000111010110010101110100000110010110110011110011101010101001001010000101111101111010101001000110100110001000111000011111110100110010011001011011011001101101110000100101011000011111011101101100000110110000001110010100110101000110110101011100000001010010110001010110100100011110001001111100000011000101110010001101001101000110101000000000110101000000100111011111011001001010111100011001110000010100010011010010011100100100000000100010001011110110111001011001101101100010110010100101100010101100000010011000000000010010011000010011011011101001110010000110111101101000100101111111101111111011100011110100101110000100001010011000010010111011101011001010100001001010100101000101100101001111100100110000010000010101111001011001110101111011110101011110111100111011000100011100001001110111000011001100001010010011010110001010010100100111011011001011100100001101101001101101011110010101100110101110010001111000100010100100100111101111010011011110111001010111001011011110110000101110010100110111001110001101000001110110101000001110010101111000101110011100100000000101101111100111110000101000000110100010010100110011001011001001001100011000110101010100001100011011010011001101010010000110101101111110010011001010100001111111001100010100010100001000111000010011110011000100100111110011100101110011100011101000111100011110001100000111001111111101011111001100101010000000110010100100010000110101000110011101011000100011111110001101011111010011011100111011011000001110110110001100100001010110000110000000010010000000100011110001010011110101111111010110101110011101110010001000110110111110000100100011011110101101110100111000011100111111101010111001010100101000001110011001110010110001011001010100111110101111000000011011111100100110000010001101001000110110010100101011000101011100001010010001100111010000100100001110010101011110111011010110011110000101001100000011001110110111000100000000010011001000001010011101001000101100000010001011001110010000010100111011011100111111001000000111100100000010011100111001100101110011001110110011001100000111001100101010100110011010100001011100111010100000010101010111001110111010111110001111000001111111010100000100001111011011011000100110010110101010011101010010111000100111011100000100001001011010111011100000010010110000010111011101111100110001011111110010011010011001010001011010000001011011001010111101110110000101101111010110100000101110110110101000001001000101100111101010001111000011011000000001110110000000000010001001000110001000001011011001000100100101011011110001101011000001111101001101110000100011100100101111000000110100011100000111110101011010000100010111111110000101100100001110110100001010011011010100000100000011100101001111111010000101010100011101101011110011110111011000101010101110101010110010011011011010110111101010100110111001001100101001111111100101011110101000001000011111100100001100010001010111001110011000010000000011011110101110001111101000001101001011010010011011100010101010010110101001011010110010100000001000010010100001100110001011000101010000111111011101100100010111010011100010001110100101110000000110100001001100001100010011001111001111011000010010010000001001100000010010010111011010000011100010001011010101111001001100011110000000000011111110001110101111101011111110111011001111110110011011110101100001110100011101011100101001011011001010111111101000110010110001010101101101101101101100010001100110010101100101110110111111010101111111011110000010100110011111001010100000001011001110100010100000100010000111100100100110111100110010010001110011001001111101101101110110110110001010111010011111000010111101000111100111011001110111010011100010110111111001111010100011110100101111001010100111110000101001111111100 +10110010000001001111010100011000011011110110001111001110100011000000110111110011110001010100100100111111101011111110010011111101000101001111010000100100010011111001011101001101100011111100111111011111000101101101011111001110110000101001000100000100100011101011001011111010100101101100000110110111111100000111001111111001110001110110100010100110010110010110001010111111000111010100111010001000100011001010001101100101100101110100001001111010100111111011000000111101101001011101111100011011110111000001000011111000101110000010101000001111110110011001010001011001011010100010011010100101010100010010110000100011111101101011101000111001010001001010000011011000000110000010010100101000011101110101101001101010100010100100010111010010100100000111101010011100000101010010000100101000111111010011100010101001000101101100101101111011100111010101001110110101100000100011010111011110100000100000111---------100011110101001101010100111111000011100100110100001111110000001010111010111100110000101100111100010010011011101110100100000010110011001101010111111101011111110111010010001101111100000110111101100011011001100100101000000000010011011110100011110010001100111110111011000100000110010110101001000010110101000110110010000000100010000010011000101100111101011101011100100101101011100011011100100001101000111110001101001010000111100110110011001110011010000101000000011100001101010110101000100100101111001111110111000000101101100010101000000000101001001100001100000010010101111001100000001001111010010001101010010001100011101011110010111100101111101001101101111001010101101100010010111100010100111111100011101100111000011101011111010010110101110010101011000100111111001001111010011111111111011010010010111100110111011001111010110010011111011110000010110110111010000011101010111110110001100101000000011000110100111001011000011011010000001011100001100011010101100110001110010001001001001100111011010110011111011110101000011001100100101101111111111011111101111100011110000100110000010101101000110010100101011110011000011110001011110001111110110010110001101101001011011101111100001111001000110110111110001010011010000001010011001100011110111101001011101110000101111111001010110111110100000100000000000100001000101111000111101001111110000001001000011001100000010101001011001011111011010100010011110101110111011011110111111101100110100110011010100101111101111111010000100100000101001010010011100100001000101111011001011000101001011010000110111100111111011100101111100000010010110110100110001100110100010110000010110100100110001000001001110000101100010111101001111010100000011101000001011000111111000001011011010100111010000101011010110100101110100110010110001100101110110011101100010000000100110000010010111010000101010100000111100111111100100010110111100110101010001011011011110110000110100011001100011111110100110011010100100010010111000000101001110000000110010111110111010111011110001110110010101010001100010111100101001000001011011100000010101000011101100100000010001011010000011010010101011000010100001101001111110100001001101100110010100001000001110010101000100111010111100001111110101101001111010110100111010110111100000110001000101010000010000100100000011111010011111001010001101000110010110100010011010011010011000010001011011111000010010001110101100001111111001101111010111101110111000101011101001000001000010101001011111001101000110010101110011011010001001100001010101110001011110110101101001010100001100000101100010111001101101000000011011001101011101100010001010111010010011010000111100110110101011101111011111101111000001110001111001010100100110010101000101101100100101011011100101010111110101111111100101010010011110010111001001010101001000001100110101101010000100001101011110111111000110111011011001010100010101101010100000111101001011111100000100001000110110100010010101011001000110111011001011000110111001111000101111001110100101101100011010011011011011010100110000001100101101101010110011001011100101111111110101000110000101010001110100011110101010011100001110011110001011100010111110011100110101111111110010011001101011010010100101010001000011010010001001101101101110111101110001010101000101101010011101111000001100001101000101100010011011100000001001110101110111100000011001001110111111011100001110101000011111101110111101101001000111110101000101010100000010111010011010010110111010100000111110000011101110111010111000001111110110000010110010101001110111100101110110111111110110000011101001110000010100010100010100110000101110111100110011101001110100000010001000101001101111111010111111101011011101001011010111110110000010100110111000011001001011111010111000110100001110100011001101101110010111000100101110111011100110000100110111110010100001001100000111010010001011001000101000100000010100110011001001100111111010010000000110000101011110111000111001011011000110101100000001011101100000000110010011110001110000011110000001100110110010100101100001000010100001101010100110110010010000100010000101010110000111110110001001001001000101010100010011011101010001001100010111010000010010100011011000111100110110000000101011011011011001000100110011101000001111101100110100100110111001110110110001111000100100110110011110000010100011000001100111011100111000001000101001011001100010000011110111000101111000011011011000010111000011100111001100101010010110111010110101110000001011000000101011010000000101111010001000110100101100011010001001010111111000000011010110011110100100111111011010110111010110101110101100011111110110100010111111001111111010111101110110111110111011100000010000001111011101011101000111011011011010110001111100110000100000000100010011011100010101100101100000111001001111101010011011100100010 +01001010000111111110010011110001000011110110110011111001000011101000111101010011111101100110111010111101111001101100000000101100011010011100000000101101000100111000010000111100001000101100010010010100111100101100000100000010111010100000010100111110101110110100100011011110100000111010100100100111011101111111011011101001010100011010001001111010101101110011011001011111110101011000101010111101101110000110100111001001101110010110001011111101111011011110111010111100101110010100101111110110000110111011110100111001101011010001110101111111010110111000010001111101111011101010100111100010000111100100010010111101011011001110011001001000101111110111110110111110100101001001010100011100100000001000010111010011000111111011000001100110010010110000011100111100010110100011011101110001010000110010000101100001011000100001100100101011111001100110010110001010001001001110000101100111010010101111011---------001010001010111010010100111101101100101010101101100010011101101100110101111000010011110111100010110011010100101110110010101111100100010101101100100000011110001110000100010010000000000011001011111000010111010010010111011000111101111001111011000100001110101101010001010110100010111111111001100110010101010101001010101000101000011011111110110000000110001111011100011011011001011010001011110011000101010100111101000101111111110010001010010000100110101111011001010110101110101100110110011010101101001110111110011101001110001010111110001000010101010100101100101111001110010010000001110011001100110001001111101111010111110001000010100010101110111011011010111100000100001011111110100100010000010011011011000000101101110011100101010100101110011011000100011100100100111111100101110111000011111000000001100111000111110110011011011100110000100100101001101110011001000000111001000110001110001101000010101011001111110111010101111100001011110100000000110010101011110000001000100010010000110000000111001111110110000110010101100011111100100001110011011111111010011101101101101010101000101111110111101111000010001011100011010111001010101011011100011110001100101110111000111111100111101110110100110110111111000001011010110011001010111110111100011111010111110010000011101010000110001011000001000000111000011101000011111101010100001111000111100000111111010110010101111100000100100011111101010111011011011011000110111111011000101000110010011101110010011000110100101011001110100101011001110010011000010001111110100010010010001101100001000101000000111111000110000111100110010011101001101001001100011001100111100111100101110010110111000100011110001011100011111011101000001100101010100110110011100101100110000000101111000100111001000110110010000111111111110111101101100011101111000100110011010011110110111110011100101110111011011010110101100001101110000000110100000101010111101010100111000111111110010000101011001110011101100010010011011110110100010000110010011110010101001101111010101100101000001110101100011110111000101000000010011011001011001011010010110110000101000011100111011111001100010010001100011111000010110110011011010101001111110000111111011100010010100000101100111001110011111111000010001100001100000101111011111101010101110001000010011000110100110010000101000001011011110011101011101010111101000010001001010000111100110111111101111111001100110100110110001110110100111110110101111100111111001111001000001011011111001111010110011110111111000000101010000000010100111001101111100010001000110001001010000011111111001010111101110010100010010001110100111111111001011101010100001110100111111100001000101100110100110100111100100011111010101111011010110011100011011111011010100110011000101101101000000110000011010000001101000110101110100001100111100111010001111001001110111110000111101001001100010111100101111111111110111110100001111011000101100011100100001111000010001110100010111010110100101111101110001110110010011001100101100101111101001110110111011001111100000110011000000100001010110100011111111010101110111011011110010111001010000010001101000110110111100111011011000110010000011011001110000110100110000010001000010000010100000111100111010101101000101010000001100010011111010101101000011101010001000010000100011111100100011001001001000000001101010100110111110100000000101011100010011011010011111001000010100110110100111010001001101001111001010111000001000011000100111001001000011010001110100111100011011011001000001001110110111011101001111110110011000001100110110110000011111011101011010000110101000011110101000101111101001111101000010011001100111000100101101000001100111001111000100101110011001101000101001001101000111001101000111000001011111101001010000100000000010010100100100001000111000100000110100101100100010100101100111100000001100010111111110010111110110110100100001011101001111000000111100010001001100000000000010000110110101011000100101101100110101110111101110010001010111101100000010110010111011111100101001000000111111101001000011001001100001101011000001011101100011100100111011100000110111110011011011110010000000111100011010001000001011010111100111100100011111101010011111001011110010011001101110111011111110001101110001001110111111111101101100110010000010011110000001001011101010111011111100010110001000111000011010011100000000010101011001001001010110011001101100100001001001110101110101000000101001100011101111010011000100100100111101001010111001000011100101101010000001101001101001101110101010011110001110110111100100110111101010111111000101000011101000111101011110101100000001111001010010010011010001111110101111011011011001000011010000000011010100011011111011111100000011010111000110101011101000000001010101101110100111110110000100010000100011000111010001110100101000010110011000011110000000011100000 +00111100011111001000100110101101010001111000000111001101100101001111110011111001100000001001001110010110111101000111100000001000010010011110111000010001100000001010100101110101001100000001011110100101000111101101100110000011011110101111010001001000100110110110000111001000111001000010111111011010101100111011101011100000000100010010000100001101000000111001100111110101011111010110110110110011111000001000100111101100000101111000011110010101101011111001110110010101000100110000000001010010011001011100010000111000000100110010011011101010010110100101111110000000010111111011001010010011010100000000100001101111001110110011010110111001001011110010100010011011110100000111000001111011100101111100010001110010100010000110010000010110101000000011101000001001100010000010100000001000010010100010111010111000110011000011010010111111110001001100110101010100001110010011011000111101010010010100011---------011011011110100011010011001100101100111101000000001110101100110010011001100001111000000100101000000110000111100011011001111001001110111111010111000000100101011000010000110010100010110000001010111001100010010111111111000110110111111000101000110100000001111011100011101011011101100100010001010110101010100010001111101000001010110010100111010001111100011010101001100100000111101110001011101101101011111010001001101000001111110000000001111101000000101000001001010001101100001100000011111000101011000011001000010110001001010111011110111000011101100100110001101110001011010111001000100010111011110100001000101011010101001011101010001111011001100010100011011110010110011100111101000110110110010111011011000111011001111101110100011000000111100101101101101101101011111010101000111000010011011000110100010100100100001001110000010000111110101001001001001011001001110111001001111011010110100010111110110000001001100101110001011011000110101001111111101100001001011000000000010010110111111000000000001001111111011010101100010101010110010110100011110111010000011001110110100110000110010010110000001000110101001011011000110101011110000011111001000101011011001111111110001111101011000011110001010001001100001100100100100101010011001100000111001011010110001101011110001111011100111000111010101001100001101111011010101000101110110001001000000000001110000001111110100110110000110011010100010011011101110011001100101010111100100010001011111111000101010011100101101110011010101101000010101000100101001100110011000001101110111110010011001001001111000001001100101011001111011011110000011110001111101101000011101011011111011101110010111001010100111001111111010000110000001100101010001010100011100001000101110001100101010001011101111110001011100010100110010110101101010101011101011011110100001001101001111010010100000000000011110011111100101010001000011110010110011100110000100011110101011110001100001111000111001001000010101011111000001100110011000001000100101000001001110111111001100000011101000001101001110101110010110111000011010011000010011101101110010000111110100011100010011110110110101101100001010011110001110000011110011001010101011100010011101110110001110010011101011001100011001101001000110100011001000001010000111000000101000011010111110100111100101001100111010011011011101101011010110011111100100110100011011110100110001101010000001011001100010000111011000110011010101010111100000101111000110101001011001001001111010000101000010010101101110001011101110110011100000011100110011101001110111110111101101001111101100010100010100011011111001100001101100100011010001110100111111011110010001101111100000011111111011101100001001111101000101000110110001011001010111001001110111100100101010110010100000001011100010100000011101111101000010100011111100010001100100100010101111111111110111101110010001000100101110001101111010101101101111010000100111101011010011010010100110100010111001010110001101011101100011010010101000010011110010111011011110010010000011110101110111011010111011100000110110011110000000011111001011001100100100011101110110100010000010101010000110010110000011000101000110100111010001001011001111101110101001100100001010100011011111110101010100001001100110111001001100000001011001011000011110010100100011011010010001011110000001110111101101110001111010000111111110001001110010000100100001001100010101101001100111110110010101000011000010100111011000011100110010110010100011011001010100011110000010100011101001011011001001101011111001011001111000001111011111000101111101111111010101100010111010000111101100001110110001001100000110111100101000001110111010001111010011000010100100101000010110001011110011000111101101011001010111110100100011010101010101100101010100011101100111011000001001111101111001001001011010110000100100001010011001010111101000001000101011000101000111110110111000110101000110111000100110011001000101010110100011001110000111100011010100000011100010001101011011111001001101110011111010111011111001111101100111100101011010000010111010111000111001001000110111000000101111101110010001011101101110011011110000010100001101010101010110110011010010011100000000001110010010011110010100110010011101100010101011001011001110010000010000011011001001100101010101000111100101100100001001111001110101011000000100000100111011110101101111101111001001110010110101100110101001010011111111100010010100100011000000100111101011110101001110100000010101000100110101111100101101000000111110100110100011101011011010101110011010000010001010011001101101111111101110111000011101101101010110000110111110110011001011010100100110001111110011100001000011011010111010110001011010100110100111000001100101000000010110111110000110100110111111100101010101101100010111111010111001101111100111010110011111110001001101101001010010001110111 +11000111001101001011101011101011100101001101011000000111111001001111010010000001000011111101110010101110011111011011110111101001100001101101011001010010010010111000011111111000011011100111010011110010101011101101100111000110011000111101010100001001011010101001000010010000101001001000011000110011100101101110101001110111010010100011001011011000100001001001011011011110100001010001101100100101100000011011110101111111111011010010110000100000111111001110111111100100001010100110010100001100110101011101010110111001111010110111001000111110110111011100000001111001010101010000010110110000101011000010111111111001001011011110001011000010010011011111010100111011100110110101110101011110111001010111110010010010111100011001110101101001010001110110100101110100000111000001000101001001011011001000001110100110010001110100001010100010000110110000000001111100110010111101111110010111100001110111010---------000000111001000110011111110000111100000010110111001010111110000101100100011100100111100010000010111011100001110110010011000111010110010001011100110111001011111101010110000110111010100010111010011100100011011110101101001110011001101001010011010000100000101011011011001000011111110011011011011110100001010010000101011101000000110011111010010010001011010101011001100011011010000010111010010100000011101010110101110101110000100110100000111010100110100000001000000001100101100011110001011001011000011000110100010010101100011000101101010000110010001100010011010001110111000001011010000101110000111111011000000011101011100010101110111010110000010101000100011100100111010011111110110110100001001001101000010000100101110000011100011011001110010011000111010100110011111001101111010111000101110110011100101000101101011100000110001101101100010011111111001001000011001110001111011101010001100011100001001101001001011100110000100010010000000011001111101100101101010101110001110111101101000101000110000000110011101111000111011000100101001100101010001111101010101010111001001101111101111010000001101101101110000010100100011000101001110011011101100001101010000101110100110010101110000001101101101101000101101000101010000110111000100001101100101100011111100100100100110001101011101001000101000101000101110111010010010010001101111001001010110110111111000010001010011101110010001001000000110110110100100000111101110001000101110001110110000101001011111000010111011101110100010010000011000100011000101001000011001101100011100011100110011111111011100000111000100010100101001010001100100011000000000000001101011110100000111101110011101110100111000111000010111010100000001110000101000101011000100000000001000010101100011000010001111110011111100100100110001111010110010010110100101010011001000101110111111011010101011101100001001111001111111010110110111110010110010110100110111010011100111101011110001100101001101000100010110111001100111100000011110000000010101110010001101100011111010111111111001000000110101010010110111000000101101001101101010100010001011111001100011011110111111010001011101111100010100010111110011000001100010011100101000001100011100111000010100001011001111001010010001100110100010001010001010011111111110001100011000000010001001101000111111100111101001000100111010101110001011001101101101111000100110100010111000011111010110010011111111111000000000100101000001101101100001000001000110111010010111101000100110011000000111011110110011110101110100100100011110100101011100011001111101110001000111100111100110100011101100111000011010011100111011111111010110100100001111110100110011111011101111110010001111110010001110001100111001101011011000000100000010100001000010101100101111101110101111010011011001111110000000001100111111111100110010101000010110111111000101101110010001110000100110100110100101001111100101100110010000011111100000001010110100011110100000100001110100011011101110011110001000110111000100110001101000001000100110111001001110101110011111001011001010100001110011111010101110100011110001000100101101000001100100011100111000011111010010101010010010101101010010000000001101110000000110010010011101101011000011110000110011010011101000101111110010010110100111011010100110011001100110100100011111111011001110010000100011101101110111110111101110100111010011110011110001100100001101100000100000110011101101001010001100000111100010011111110111111101000101011100100000101010111000100101001100011011001111000101011000100101101011101000001010001110001110100010010010111110001000010011111110110110110111101111101011100011011110111001100100000010101000101110110010101010111011100111000001101100001110010101000100111001011001111101011101000000100011011100000010110011110100010010010001010101000110111011000101110111111111100011111010100001101010000101011010100110000010110000110000101111001110110100110011110101110100110001000010001111110110101111111101011100101111001011010110001000100111010100101011000100110011111110000111101110110101011010001111011001011111101011101011001000001100010111000100001110010011110110010010101010101001100101110111011100000000110110111101110010101010011100001101000111001111101111111100010010011100011101110110111110001000111100010101100110011101101101111110101110111101100101001101100110110110110011001100111110011100101000111010010110011110000011011010001100011100000011111100011110110011000100100111001111011110111001100011001000011011100011000110101100011011011110001010011100100001011101000100101010000111100110111010101101101100100010110101100001010100110110111111010110100000001110010100101010100110100001101010000011100100111111111010001011101110101011001101101101000011110010010100110011001110010111110110010101000001100100000011111001011010100111001001011001011011100111111 +ls224msgs +00111001101100101101000111100001111101111001001010011001011110100100010100101000010010000000100111111011010010011111001011111100001100111010101010010010001011101001100101010101101111110100100001100000101110100010111100110111100000101000011101110110100010011111001111101110111100001011001100101111011000110111001011001101111011011000110001110110000100110011000010000100011101101000111100101101010111000110110110101111011110111110110110100110011011110011001101000010101011110110011011001111011111011100010010110011011010101000011001100000000101011001001110010011100001010010001100010111101100000001010111010001110010000110101001100100111101001001010111110100101111110010111100111000010110111000100101000010111110101001011110010100101100011011001110000110010100001110111100111110000101111010110011001100001001011000010010100110000001101100010010111111100001101010101011000001000000010110001101110110100000101111101101010000000111000110000100111010100110111101111110100100001110110010111111110011010110110101101111100100010011000100100110110101000110110110001111001000100010100010111011111011100110001100011010001101011111001001110110110110010000101110011010000001011010000111110100111001011000000011001000100000111110101100011000111011101111111100010011111001100101101001111100001101101010001010010000100011001111101000110001110010110001011100110010000100100001001010100110010100111010110001100001011001100101100110011110011101101011101010110000101010000101100000111110100100101101000001011011111111111101011110101010001110010100010101100011110100010100011010001001101101110001111101011100100001101011010110011000100011110000110110100111010010101110111010000001011000100011110101101010101111111101110000000011010111011110100000011011101011101111011110111001010001010101010101110111001100101110111101010101001110101010100011111000000001100100011110010001011000110101101111011010101000110100100111000111110111101100011111101110100111101111000011001001011100110110101000111010101001110010101101111110011011110001110110001001111001000110000010100001111110001110010010111010111011000110001010110000010110011110100111011110111110101011000100110100111011111001111110010110011101010000110111010100010010100110111000010010000011011011111100011--------- +00011011111111110110000100000001110111011010001100011111101101011010011011011100001100110110110010100000100001001000111101110111001010010100011111001011000010010100000110110011110010000111100011101011100001011000011100010000101111110010000001111001010100011100010010001001111001011100001110000101001110001000110011010101111000000110001011011011110110011110111001110110011111001010001011101000000000000100010100111100011110001011010110001000101101110111110000011111000001000000010001001000010010101010001110110110010110101001101010111001111110000001110001001101001011110000110101000100010110111111101001000111010000011001011010101110110011000010011100000111011100110101111000000110000100100011101111101001001010100111100101101000100011100100101100110011110010000001000010100101100111000010010010011101111001011001111001100011010001110010100011110000100110100111000010101100100001010000101100100111111111101111111011111110110000111111111011100111111111011100111010111011111010011101010110010000000100011100111100000110110011001110101110011110101111000000101000110000010100111011000010111110111011110011101000011111100001000100000110101001001110111100111110111000000100111101110001110100111000000000100101111011001110101111001101010000100110001010111000101000001101101000110011011001010000110000010000010101111001100000100001100010010000010110111011010110010010110100010011100000100010010100001010011011011001110110111010100101100011110100110101111011111011000101000001000001111110100011001101110010001011001001000111001100100101110010110010001001100010010110100101011011110110100000011001100110100101110111110101010011101110111011000011010101010111001110101001100001001011010010101001011001111011000110000110100001100001010101001001011100101100111110101100010110101001000100101110001111011010011110010110000001000010011010001101101101000111011010000001011101110111111110000101111111101100001100101101010110110010101010100101101011111010111111010110010110110000110100110000000010111100011111000001001001100111100110101100110100111010001110001111111101010001101110100111111010001001010011110111101110100111100110000110110110011100100001010011001000111100101100011000111011011001101111011000110010000010001111100011111110111000110011011--------- +10111001001001001110011100001100011000110111100110000010010001110001001000100110100001011010011111111110010111001000011111000011000000010010001011010110010000111011100010001000110100110011101010100111011111100111000000011100011111001000100001011110111100000001010011000111101110111101011010101101011000111110101101001110010100100101000101010011010111101110011110101111000001110010110011111100100100101111010101110001000000011100111101111011110000111001001010011000111100010101000101111011101010001000010100101111010010010010100010000111001000100101000010000111011001000001010000110111101000100000011010000010011001101100010101100110100000101100101000111101001101100101110000001101110001110110110010000100010000111101110100100011110111010010110100000011010111001000010010101111110010111011001110100001011111011110101000111110101100010100000010000111000100110001001100001001011001100101110111001010010001010000100101100100110100111001010110111100100010000111110000000100000110001011011111110000110011100001101110110000101011101101001111100101110011010001001111011000010101111011011111101100101000010110100001000101111101010011110011010100010001100110001001100100010101001111010001001110000000001101101011100111101111101010101001100010111011010010010011010001101000001010000011000110011110001110000011101100011100111111001111011000000101000111010001001001101101011001110000001000010011000100010001100011100111000111100010011101011100100110111100110110011100100111001011010110010101001001110000101101111001001001100111100101110111100100000011011011011100111000011100001010000011011111001100000011101000011110101000110010101101100001110111111101011111001001101000000100101010100110111111100111101011010100100101000100100010100101010101100010101011100110011100110100001010110111000100011100010010111110010010100110110001101101011001111001111101011100001000000101010101011000011100101001010101011110010110100000100010001000110001111000000011000110010011111010110100010010110001000000101011011101000100001011011101111000010101110000101100011101010010011100000010000101111100111000000110100110111101110010111001011100000010001001010100111011010000101111110011101101111011010101001100001000100110011010010000110001001011010010011101001001100--------- +11111000110111100101000000001010111110001011011000111010010100101111110100011110110011010010111001000001111000111100010100100100001001001101110001100001101011101001000011010010101110010011011110010011000101001100101000100000001101001111100011010000101011001000110111000011110000001011101111001001000101101000100000101101001000100001010101011001010010101000011100001010001100000111111100100110001111100111101100001010010001001010101001011111001001000100011011111000100011010111011101010000011000000010100110111101110100001100100100101001111010100011000110011101000111000010000010000011011010001001111100010111111001110110001001100111101011111101111000100110100110101111111100110111010111000011010111101010011100100101100011011110111110110000010011011110010100100110010100111010010001100010010101010100000001100110001000010001111111100010010000110100100000011000110111001111010000111111001110001101101001100010110100000001111010111011010010100110110001001011110101110010001001110110101111001110110001110000110101101101010100001001100100111011001001110111100101001011000011111100111100001010100000101100000111110001010011000000011000010110011110111001000010101001111010100011000100000110000111000001011010000001111110000101011000110011000001011110100010010010011010101011101101110000100111001001101010100001111010101110111100110100101001111000101000000001000111100010000000000110100001100011110101110001011101100101110000111010011101011011010110011001101111001100100000101011010011011001110010011101001111110111011010110011101011011110100101001100000111011101111110000001010100010110101000011101101110001001101010011010000000011001000000100111100010100100111000000100000010111110001100011001111001001011011100001110110000001010111100000001101101001110000100001010110101100010110110110101111101110111011100111101110011010000100101110101001110101000001001101010011110011111110101011010001111000100111111011001101101011011111101110010110100111000010111001110001101001101101100100010111000101101101110010100010011110100000101111111000010001010011000000111000110011010001110111011110000101010110110110101110110010100000010100000100001101001010011111110001001100111100101110000001111000110101011101001010100101101001111000011010011000100010--------- +11110001001111011110000011100000100101110000101010011111010001111100110111010011100011111011011001010010100100101111001100010011111100100001111011110101111010111110111111010110100010100001110110001010100101101111010000101010010011010010110100111110101100010100111010000000111010101000010110101010011100100010001001001001001011001010010100101000100011110001001111010110100100110000110010111100011011011000111111010001001100011010011001100000001110101000100011001111101001000100110100001011000011001111011000111010110110000001001111100011000001000001011100011101000101001111000110000010011011010011111011101001111100100010111001101000101011001100011001000011101000011010000011000001011011101111011101000001010101111111000101010111111110110100110100001001101000011001010010101100001000001101101001000001000010110100110101110011001010011000111010100100111111110110111001000000111110100000011110110000001110101010010101010100111100000100111011000111001010111100000111100101111000110001010000010111111101001010111110011101111110010111010001010010010111010110010011011111000011110000111000101101010111010011110110111011011010011000001110011110111101011010111000111001010010001000010111011111100100100001100000010101011111000100000000110101011110110000000010010010110010110010110100010011011111101010100110110011011010111110011010101111110110010011101010001100011110100100100000100001111111000000110010110000100110001110010101011110001001000111110101011110100010001101010101011001100010110100010111111111010011110000001100101111001000010100111111110011101000001001110001111101101010001011100010000101011110011101100110100000110101011101100110001101111100011111001010100000010011101110000100110010100011110110011110010110101011000101010101100110001101000000001000001000001010110111111000000101011001100000101000001011001110111101010010101100001001110001011011101011000000110000010000111111011111111000001010010100001100111111101110100110010101101010110111000101111110000011000110110011100001101101001111001000000111100011110110101100001000010101000000000011111100001110011001100010100010111110101001011010101110001111010111111111001010111001100010100111110001011111100000101101111001111101010000101100100011011001011100001010011110101100110--------- +11111110110111001011010001011111101001010110111010100011001111011100001000101111001101001111011111001000101111010110101101111010000000110011111010100100000111000001100010001100100010001000001010001001000100010000110101101111010010010100111000101011011101100011100010111010010111111010001110100111110100001111110100000111000111010001101011111011111100001111001001111101001010010101111111101000001100101110100110111000000011001110000110001111001110001110101110011000001001100100101010100111010011110001001011110101110110010001011011111111000100101100011010001110010101011101001100110001000001001111111110001111010111001001100000100100101010000100000010011001101000001010001101011001010111010011010110011101110010100111010000111011110111010100011111000000101100010011011011000001011100111101000101011101100000110010000110101010010101010100101111100111110001101101101100110000011010000011111001001001110111010011110010100110100110000000011001011010110010010111101100101100000101001111100110110001000100010000110111011110100001011011101001001010110011110010011011001101010000000011011011110001110110100101110000100100110000011100011111110011000110010100100001000001111111000000001100001100000110010011111011001010011111010101000101110100011001000001001100000011011110010111100011000010010010011011101100001000001001110101010101100010111100011101111011101110100011000000011111100001010111111000100111101011111110100011010001100001011011110110111101110010010001100000010001110100111001010001001100010110110001111011111110011110010110101111000100010100011111010111101001011111000111010100101001001110001110011001100110100000001110001111001110111000110000001111111010110011010010111001110100010100010111111111011010111000011111001111100001001111110111101011110101110010111110110100111100110110111101001110111111110010010010010100010011100100000100101001001101011010100001000110011000000000111111100111110001001110110110111011101001111011001111010110111000110100001010001100110001011111000101001101110100110001011111011100001010011000111110011001110011001001000000101101111110011000001111110110110111010101000000110101110001000100101011100110000100011001011000110001011000101101000011100100100000000010010110011001101011111111011100101110010--------- +01110000101111010101001000000101101010000111111110011100101100100001011101010111001110010100011001001001010001010001010110000001100011011111111001001100011010010100001001110001001100010100000011101000010000000111100101001000100101010001111101010000001001010111001010000010100001001010010011010100100011010001010100100001000001101011100110111001010010011000101111001000100010011101101010010100011100011100111010100000100100001001110101110000100011111110000000000110100111011010010101010001010010110011101010100101011111100011010010000100101010100111111110010001011101111100010001001001011011001000010011000010001100111101101000000011010000110110100000110001110110010010000001110000010011001110000111000110110000011110110110111001101010110100011111000101011111110111101001010001001101110100000001110001000110101110010101101011011110000001001001001110111010011010011100010101001110111111110101110011010101001010001101011010011010111001001011110010000110101001111111100000100001100010101011001010011110101111101101110001000000110001011001110100110010111011110010101111010001011101111111010001101111111101100100010101111010010001110100010000000001110101001111110001010011101101011100101010111110001101010100001001100111110100000011010000100110001010100101101101010000101101001001111111001101011000111000010011011100101101100000111110001011111001001000001000010101010101011010010100111111001001111001111001100110100001001010100110101011010111110011101011101100001010010110111001100011011101100100010010110101011011010101011001110101111001001110001000101001010100100000001010000011011100111000000001000001001101101111011101111100100000011010110100011001000110011101100010110111111100110101111000000011111000010100010111110000011100000100000001001100110010000110011001001011000010000100010010000010010101000111101000000001001001111100101011010010101010110110101101111010011001010110010110000010110001001101011110101101011110000000110010010100001101101101000110011001000110000001010010000111000110010001101100100010011100010110111100011010101001111111101010111001001001001001010110101100110011001010001101111111011011001010111111111111010110110010000010110101001011000110000000100001010010111010011110000000001110101110100100101111001101101--------- +10000011011000000111101101000010001011100010101101000110101001000110000100110011011011011000010110011001111011000000011001001010011110111111110001111110001100001000101011011111001100100111101111111101000101110001011001010001101011101110011110010000111000100001001101110101110100010001100100101110111011100100101101110110010110111110001000101110001011000000111100110000100111111101001100100010011000001011001100011111100110101111001000110100010111101010011001011010100001000010100001111001010000001001010101001111010011111010101110101000100100000011011000100111111001011000111101100000110100110110001100101110100100100101011010010110011111111100000000000111000111000100010001011001101011000001001100011111010100000010100100011111000111101011000011000110111000110110000011010111011101001011000010010011100101100011101011100100001000110011000110011111101101010100010101000001100101110100011000101010010111011011001011101011011010110100110011010000001001010100101011000010110001000100011010110111111010001100100100100000011111101010001010001010101100100100101110000111111011011000000111111000101100110111111101000001111000110001110001110000011111110010111001011101111001101001010000010001010111111101111011010001010001011010011111110000000100110101000110111110011000110011111111111101001101101011000100000111010001000100010000111100101101001011111001100100010000100000100100010010001101001110000000110111110101110100111111001011001110101110110101110101000011110011011000010000011011010110101110101100010111011110101011111011101000101011000110000100000111101001011001110110100111110111011000011000110101001001001000001000011001001101101010000001111011000100011010101010100011001010110000100100001101100110011111110011010110010111001011111101001000001011010000101000010101100001100001010000110011110001111011100110000111001101000100000101111110100011101110010110010000110001001001011011111011110101010000010001010100011110111011000111011101000000011111110010110111001111010111010011000110100100111100011111011011011001000000011111111011010010101011100101001111000001111000101111010011100110111010011001110100011001010000010110110100101011110100110011101101010001110111111000010011011000101000101110000110011011011011111101111100000000010--------- +10010111010101111111111101010110011111001111100001110101001101101010111001011010110110100100110001011011110111101111000110010010011010110111110010000010101010111101010110111010001101100111101011111000111000110111110100100101010000110010111111010010111110100010100010001100001010111011100010111101100101110111110010011101111111110111111010111100010000111100110101011100111111111100110101010010110011010011101010001000100011000011111101001001111110010011101100010011100000010000111100001101011001000111000111011110010110110011001001010001010010110101001000101001111010000100100110111001001110001111101000100111011101110010101001101010011111001100101000101011001011001001100110010010111100101101011011010000010001010101000100110001011100110001010110011001110110000001110101100011100000001100000100000010111111111000101111100001111110010001110111111101011110101001101000111011010000010001101110110111001010101101111101010110001100000100000101100011011001110100001111011001110100010111000010111010100000011100101010011011001110000010110111001000100011011111000011011011100010011011011001100010101001001011110010100000100001101010111011011001110001001010111011010111101000010110010011111111010110001001000111001111000010100000100011011111100000111111110001011111010010100111000110011110101011101001111011101110100110100011010110001101011010001000011100111010110101101001010100111111101100100111011110010101011010111111001110000000010010011101010001000010000111111100111100100100100110100011000111000100011101101011111001110001000100010000111011110010101111000110111111010001100010111010100010101000111001111001111001101101111011110001001000011110111010111111000110001011111111100100010011000011110110100100101101000100010110100101110010100000110110100000011110110010101111001110011011000000001010111100010100100001001110101010110111111100001011101100010000000001110110000000011000011111111011101111101110111110001000001010000001000111111001011110110110101000111100001000100001010001110111001100010011001010100000011011001000100000110010110010000011100111011010101011001111000000101101011111000010000100011000001000000111111011001001000111101000111100110000011111011001011011010110101001111010011101000011100000110001111011101110010111010--------- +00101001110000010000001001001010001101001001110010110010100010101010101001100000101110010011110001010001110100101111001101100000110100000101000110101001001101101001101110000000100001110000100111100100100111100100001111101111111101001001101001110010000011101101011100000110100000010001110000111000111101000111101110101011010010100000001011001101100001110110011001100111001100110110111010101111101101000101001010011100101111000101000100110101011110011000111111011011111101011001110001101000111101011011111011100100110000110011110110010100110110000011001000111011011101001101010100010110101001011111110101101101111010011010111000111100111101110101101101111010011010111010001100000000100101010111100101000100000110010011100001001011100001001101001000010110101011110010110110111100111001011110001100001110001011110110010011101010110001011011001101000010011100000000101000110110101100100101110101011000110100001111010111010000011000000000100111100001101111100010001100000011100000100001001110100111010100010101000010011000100011001101110101010100011100100110111100100000100001101000000111000001001101111101101010101110111111110011111110100001111111101011010001101101011000011001100101011000000011101101000011101010101100100111011110001000011100110010110010110110000111001101100101101110111110110101010101101001110100110011010100000101011000010111111000000010100100001001100100111011100110001101110100100110110101101000100101100000000101111111000010011100010100111101001011001000000100000011011000011010010111110110011110100000101000000010110011011110100010110101100010101110110101000100110101110001001001101110101111101010111110001111111001011100111100101010000011111101100111001001101110110101100001001010011001110101111001101001101011100000111101000101101100011110100111110101001110101111011111101100010100111110100101010011101001000010000110000000110010101011111111001110001111101010010000011110101001010101101010011111010000001110001101011100000100100111000010010011101111110101101000011000111001111000110101101010101001100101000100100100001100011110010000000000011101101010000010010111010110010100000101111101001100010111110011110110000101001100111100101001010101110001001100011001100100001111111000011110110001111011001101110111000--------- +ls224cwds +0011001101000010101011110110011011001111011111011100010010110011011010101000011001100000000101011001001110010011100001010010001100010111101100000001010111010001110010000110101001100100111101001001010111110100101111110010111100111000010110111000100101000010111110101001011110010100101100011011001110000110010100001110111100111110000101111010110011001100001001011000010010100110000001101100010010111111100001101010101011000001000000010110001101110110100000101111101101010000000111000110000100111010100110111101111110100100001110110010111111110011010110110101101111100100010011000100100110110101000110110110001111001000100010100010111011111011100110001100011010001101011111001001110110110110010000101110011010000001011010000111110100111001011000000011001000100000111110101100011000111011101111111100010011111001100101101001111100001101101010001010010000100011001111101000110001110010110001011100110010000100100001001010100110010100111010110001100001011001100101100110011110011101101011101010110000101010000101100000111110100100101101000001011011111111111101011110101010001110010100010101100011110100010100011010001001101101110001111101011100100001101011010110011000100011110000110110100111010010101110111010000001011000100011110101101010101111111101110000000011010111011110100000011011101011101111011110111001010001010101010101110111001100101110111101010101001110101010100011111000000001100100011110010001011000110101101111011010101000110100100111000111110111101100011111101110100111101111000011001001011100110110101000111010101001110010101101111110011011110001110110001001111001000110000010100001111110001110010010111010111011000110001010110000010110011110100111011110111110101011000100110100111011111001111110010110011101010000110111010100010010100110111000010010000011011011111100011---------000010101100011001000111101010111101000100001001010000110010001001000100011011110010010111001100010010110101111000110101100000100110000011000010100011101000100000000111001110101011011101001110110100001011100011000011111000100100101101011100101011011010100010110101100000011001111000110111111110001000110001111111110110000111101101000000100000011101010001110100110101001011011010101010100001000101000110100110001100011110010000010010011001110110101000001100111110111000010100100111010011110010110010011000000001100100001011100100000010111111100100111101000000010111011001100001101001111101000011011000000000111110001001000100110100010110100010000100110111011010110011101011000101100100011110110100100110101011010011011101100010100110100111010011101001011001111001011000001011101111001110011101110110000111100010001101110011000110110100011011100101010011010100111110000001001001011101101001100111001010010010110110111111100101100111011000111101000001101111000100011010100110000001010001111101011101110000010111110101000011011001010100111010000110010001111001011101110000111010010011100010111110001001011111001100011110100000000111100011011100010100000011001010010101101010101111011100001000100111101011111000000101000001111101110001101011100000010000001011100011000000001100001110000100010110100111111100110101001110110100100111110111001100011000000111101010111000110000100100110011010111101110101001011100110011110001101111100010001001001000101011110110100110011100010100100001111101110101110101000111100000101110110110001101000101111110101100111100100101010010110110111011011001011001101100010011000001011100100100111010101000101000110110000011000101100001010010100001110110100101110010111010100001111000111000100101011001001101011110011000100010011010001001010110011011111110000000111101010111100101000100110001011100000111100010010101000110110111000100011111000100000101101011111001011110001011111101001110100101100110001011101111110110110110100101101101010001000001101001110010110111001101111100100000001000010011001110100110101011000001111101100001011010101111000010000001101000111111011101010000110010000111010011000001010110011011011011010000001110101011011101001001111011101101101100100010100111100111001000110101110111001101111001010010000101100010011000000111111010100000110001011111100111001101010001010011011010100111011010010001010011000110011100111010110001111001011000110000111000101000111110100101001011100000001000101101110010000011110010010000111111100011011101011001101101110101110010011101001101101010000011011100011111010111100111000111011110001100011011001001111010000111111110101011100100000010110110110101101000111111110100011010010001000000010011001000000100100110010000000110011011110010010100001100111110010011000001001100000001001010001001011111110000000010100011110011001010101101011001010001011010010101110000010000011101010111110101000110000010111101000001111101101101110001010101011101101110011101111100101011111001001111101000011101010000000011001001110100100000000011100111100001011111011011111010110101100011101101001011101111100010010000111110111010111100000010001101010011001011100001101100110111000001110111111111011011001111000100111001101001001000110010000011000011111011100001110101001001110100111111000110000111011100111011000011111000100111110010000000010111111110101100000110100010000110100010100101101111100001000101101101110111010111000101100101101100100100000100100111111001111010010100010010010101000011100010000001011000110011000101101100010110101101000000110101100010100100110010101001110010010010100000101001011101111011100100100111111000100111111101100011111110111100011000101000110101010001111010111111011110001000001011001101101011001110110110111001101110001000111111101001100110010100111001011010010101100110011010110000111101101110010100100111001100010011000011111011100101100111110011111011110101011110010011000111011101110100100010101111011000101001000110000110001100010001100010110001000001111011010101010000010000000111110100011010011001110101101111110010001100010100001001100101011010101110110101011000101111100001011100100101001001010100101000011110000111101011100101010011001001110101111100101001100110100101111100101000111111100001000010100000000100000010110001101010110100100101100100100000001101111001011100001000001110101000111000011011001100110100000011110011101101011111100111010001100101001100111010100110001000101110001001111011011000011101101111011000101110111000001100010111110011010011011111110110000000010000110110110011101110000101011111011100101000000001010011111110110110101100000100010011111010111010110010011011000000100100101101101001001110011111010100011110000011011101011001111010001101111000111100100110110011101011001111111110111001101101100000000110010111110000001010010100010011111010110111011110110111001101000010001101001010011010001111010000001000100101000001010000111100000101100110111011111000100010000011111110001111100000010010011011111000011111100011000000000000101101111011011000000101001001111110001110010010101010100001001000111100101000111001010100001111111011110100001111101101110001111000110111000000101111001100111001111100011011111010100110011000001110100000010111100111100100001010100101001100110011101000101110110101110000100011001111110001000011110011010110001011111111010110010101001111110110001010100000000100111010110010101101110111110000011101011010111111110111111001010111011100001000010110011001011010001010110110010011011100010011111101001111111010101000101000010111011111101101100100100111000000100011011010011001110100101011000001100110000111000100010111100010011001110011010011000000011100100000110111001000100110011110110001011010100001101101010111101000011111101100100001100011011110001101010011011010110011110010110000100011000000110111101101001100010010111011010101111000111010001001001111100011011110111101010011111101000111001101000100110110100010100100010011010101111100100011110010101010001100010010011111101110110111011111101110100111101001101010001011010000011110110101000011101101101110101110101111100110001110010111101001111001101001000110010001011101000010111101010011111000011101010000011001111001110101101111111111011110101111110001110101101110110001000111110000011010111110110000100110100111000011011000010010000100101100011100010011000011001000010110010100001110001100010101000100111100111001110011100001111110101100100100110001011001100000110011010000111101001011101111001101011101101000000011111110001000010001110011100100110100001011000101111010111101001001000001101011101010001010011011000100110000100100100110010101000111001101001011000010001001010110011111011011111000100011011001000100010111100000011011001110110101101011100111001000110011100101000100001000101001111100110011001111111100001110100100100010101010110101001111010111001111000001100101100000110111011110001101100110110100111011000110111101000100011000001111100111011110000000100101111000011101000100110101100000111011010011101000110000100101101111101111111000010011110011100100001010011111100100111010000000000101011101000100100011010110010010111000111011011101100001000000010011100100101100011111111100111000000111000101001111000100001010101111011111011000010110111010011110011001111000011111000001001110000000111000010111010000000111000011110110011000000100101100110001010101101000001001110110001011011110001011011000001101100110100001000111101110101011001100111111111011010110011000111100111101111001101010010000101100111010010000100101000011000100011100110100111001101011101000000110100001111011000101001011000111110100010100001010100000110000001101010111110101101110111010111111100001101001000001101100101000111111000100011000010011100011001101100001110111001111110010010000011101111110000010111111011110010011110011000100000001111111111101000011001010110100011100100100011001010101000111010001011101001111010100100101110001100000111101100000000101000100001001011110111110111110000100111010011001110010010110011000110101011110011000000011100100101110001011001100011000101010001000101101110111110011110111001101001000010100110001111111111100100011101011101100010000111101101110010011111011001100111100001010101011011110111000001101110101001010101001000010011001100100000011111010010101010011001010000001110100110010110111111101010100011100010001010110110100001101001000101111100001100111001000001010100010010000100110110111100000110101000101110001000001111101000000000000100011111111101101010011000011111000111111100110011100011001111101101001111010111001000000000010010000111011000011011110011010101011010110010110001001001001011111001111000000001011010101111001011101101100000010110011100110010010111000100101110000011111101101101000111110010110110101001001001001101110011010111110101001010101010110111011111000001011110110101011111000100110100001001000001100101001111100100011001101100011001011001111011000100000101111101110000110001011101000111001111100101101100101011101111111001010010001010000011100011111011000100010011001110110001000010011001100001000101111011100101010110000001101000111111000001001110010100111100101000110000111100010010001101101100100011010010011100010110101001101100011000101010000001101111100010100011110010100000111001001100001010000111101001010001100101011111101111000101001101000101111100101011001010100011100011101011010101010100000101101010010101101101110011111011011000001111100011110111100100100100110011100010101110001101011110101110111110111110001100110001000110110 +0111110000011111000001000000010001001000010010101010001110110110010110101001101010111001111110000001110001001101001011110000110101000100010110111111101001000111010000011001011010101110110011000010011100000111011100110101111000000110000100100011101111101001001010100111100101101000100011100100101100110011110010000001000010100101100111000010010010011101111001011001111001100011010001110010100011110000100110100111000010101100100001010000101100100111111111101111111011111110110000111111111011100111111111011100111010111011111010011101010110010000000100011100111100000110110011001110101110011110101111000000101000110000010100111011000010111110111011110011101000011111100001000100000110101001001110111100111110111000000100111101110001110100111000000000100101111011001110101111001101010000100110001010111000101000001101101000110011011001010000110000010000010101111001100000100001100010010000010110111011010110010010110100010011100000100010010100001010011011011001110110111010100101100011110100110101111011111011000101000001000001111110100011001101110010001011001001000111001100100101110010110010001001100010010110100101011011110110100000011001100110100101110111110101010011101110111011000011010101010111001110101001100001001011010010101001011001111011000110000110100001100001010101001001011100101100111110101100010110101001000100101110001111011010011110010110000001000010011010001101101101000111011010000001011101110111111110000101111111101100001100101101010110110010101010100101101011111010111111010110010110110000110100110000000010111100011111000001001001100111100110101100110100111010001110001111111101010001101110100111111010001001010011110111101110100111100110000110110110011100100001010011001000111100101100011000111011011001101111011000110010000010001111100011111110111000110011011---------010011010010101101101001011000110011110110110000100010010011110000011010111110010000110100110110010010001110011111111001111011000101100000101111010001100101001110111100011101111110110011100111011100011010111110101100110000101110100110110111101001010110110111001011111010001100110001100001010001000010010101001110100110101110000110010001010100110010000000100111001001110101000111001011011111011111100010111100011001011111000011001010010000100011100111001000100011001001101110111111100111100110101001010011000101101001001111000000100000000001111001010111100100101000100110010111110110101011101101011111001000011110111100100100010110001011100111101111111011110110111111010111010101001011000110001111010110000101110100010111011111111110010000011100110000001101000001100011101011010000110001110101111011010110001000101010010010110101011100111010010110010010010011111101100100100101001111000011001011011100111011111100101100001001011011111110010010001011110110001010100100001101110111011001011110100001111010100010110001011110101111001110110110010011001010010000011111111110111011111101110111001011111111010110000101001001011110010111001101101010111111001000110000001010001101100001001000000110000000001101110110011011001000100100111110101110001100001110011110110001010101000110101011011001001010101000010111000111100100001101000011000100000110010101101101001101101000001100101011011010011010111011101010100110011111010001011001000011010001011010001011000000011111111101101110110100100101000001000111001100000101010110001010011000101101111101001010001010100000110010110010101010111111001010111101110110000101111111011011001100110101101101001011011110001000100010000110000111100100111110001011110100010001011001010011100000011010100101011110100010110101100000011110011100111101010001111000100110111100110110100010110011010111101111001111100100111000011100010000001111100110010110100111000001001100000100011101011001000000001011111010010001011100010101101001000010100101110111001010110101010011101111101010010111111101000101101101000110000000101110011101100011111010010011110110101011000111001011010100011101111010110001000001000100010011101101010111010010111010001101010110000111001100011011001001010000001101101011001010110000000000110110011100000010000100110101100001101001001100001101011011000110011010101010101111000100000101010011100010000010110110010000101110011101111101011001111011000000000100011100101100111110100011111000000010000001101010101101110001011001111001101111011000001010000100010001000110100001100111100101111011100111001101010100111111001111101100011010101010000111000100100101000011000110011011100000001000110000100010000011110010010100001011011110000110001100010001100010000111010001100011000001110111010001101101011000111001010111011010111101111011001010001000010100111101100010010010111111011111111101111000101001100110111001011011110101111100000010011001111000010101101101111000100111000001100101110110101110001110000101101110110001111101001001110010010101011010011110111000111000000001011010010110110010001011000011011101100011000010100010100000110010000010011110100110110111000010011100010001001101100000110010100101000011011100100011011111111000001111101010110001001011001110111001000001000001111100110001001110110110001001111111111011100110011001100001100001000101001100001111101111111010001100110010110011110100110010101110111110110110000011000001011001011111111110000100111110001111101001110111111100011000000111101111100001110000000110001000001011110011110100110001111010111111010001001001001111100111000001000110111101110110000100101000000001010111010111010001111100011011010011001100110111100010001111111010010111001100010100100000011100010000101101101110000110100100000110011001000110001000000101000011010101001111010110111101000100001011100000110011000001001010010110101100010111010100000101110101110000111111001011000110011010000000101000100010000111100111101010011110001001101011110111011100101011000000111110100010010011001010101101011110000011000011101100010001011011011100111111001000110100000110000011001110100010000001001110011111100101101011001000010010000110000110100100011010110100010001001111001010100001000110000001101100011100100001001011100110101100111010000010000011110000001010011101010111000000110101010001000111100101111000010011111111001101001100111000110110000101010110010001101110100110111000101111101111001000000111011101001011001100011010100110100000011100001001111001101101000000000011001000110001101110010010110100011111010011001110000110001101010110110001111010010001111001110000011001010101111101100101000101001011111010000000110101011111011011101101010001001011000000000101000001011010001000101100111000001000110111111111010010011100011011100100011111101010100100010100011000110110111101010000011010110100100111101011111100100111111001011110110111100010111101111001001110000110000101011101001111010001111000110011010000100011100010100001111010000011000010000100001101010011001110111001000000100111100110001001001111101000011110101001000000101000011010101111000111001100000111011111100011100001101000000010110011110000010111100101100100100100001000100011110110001011110010101101011011111010111110111010001010101100011000100101010010111001010001000110111110100011111001010110110010100001100010100110010111101111111000110011110000101011000111111111010011000000000110010111000000101100010101011100111110001100100101100000001000110011101100000010100101011010111010001100001110101000111101010001010111001100101111101111000101001011011100010000110001001010011000000111111101010001110110110101111111001111111011101010101001101111001010001011010100101000010001010100111110011101000010000010000000110100111000101110101011010110110000110011100110000001100101111101100101000111111111101011110100110000010011001101101101100100111011111010100000110111101111000101000000101110001010110100100110101101010000000011110101111110110100110000101110011010100001110000110010100001100011110011111001010100110010111111011000000101010010010110101011011001011001110110010110110101010001100010100001001001011000111110000111101001001110010100001000010010011000010010100100101011111010101110001001100100011000100001111011111011111110101100100010010111001000101111110011101110010100011110100001111000010101011011010100111000000100000000000111001001001010011100011000110101010110010010110100100111101011010000100010001100011100101001110011101000101001110011010100000111110011001111100110110000001010011111010101101111000100000000100111010101011010110010111011100011001110011111100010100100100000100110011111101000100101110100110000101010000111110100010110010011100100011110011110110111011110101000001010111111011101011110001010101010111000100100100001011011010110111100111010100011010110110001001011001100101100010010111011000001110111101110100010100001011010011110001101100011001110000001111011101000111101101001111110100110000101110101100100110110011011000010100100111000110010111100011001101000010010001010000101001101101001110011110101001111001011100010101101101110100111001111100100111010101010111100110111000011001110001001000101000111101100110110111101110110101011011001000111011111011110001001100001000000101100000001111001011111101010010011011001011000011001000001001001011110010011101110111111010100110111110111100111110101000010010110010000011111010101001101010010111101011110011010110000100001100111111111111100101101010111001110111110010110101011001011110101000000100000000000110111101111010111100110111111000111100100011110110001111101111101000111100110110101000111101001101011001111011011000000111011010100001100100000000101001110101100111111101111000000000110001111100100010111110101110001110000000001001000001100011000100100010011111101000001011111111111010110001011100010111100001100010110100111110001000111010111010011001100010000111111011111111100011000001101111110100100100001011000110111110011111111001000111011100010111000100011100100101101010110100001001011001001110100111010000111011000000100000000001101111010000111100011100010111000000001101101011111100011000011100000010011100110101100000111011010101100101000001100111001000110111000110100101100110110001010000011000110100011100101001010001010011101100011010010000110011100010001111111110111010100111101010010000000011100100000010110101101100001000001111101111010111000000100000011001010100001111100101110011100101110001110111100110111011110000100111010101111111111010110100010001110100000011000100001011001111011010011010110011001010011010100001111011110001100011011011010000001011101011011101101100111011001000100100001011101100000100101101001001101101000111011011010101101111010011011010110010011100000001010011110011100100111111111101011000100001110101100001000101111011000011000110101000111001111001101010001101010111010110111111101110101010111000100101101100001010110101000110110000111010101000010111011000111101110110111100111100111111101000010101111101110101111101110101000000011110111001000101011001010100010001101100001011110110011001001100000110100110111000111000010111001010000001010101010101000011010010101100100011010001000101010100001000111111111000011010010101001011110110110010100010011100011110011100010010110101111011010000111100100100000101001010110010111110000101110110010001010000010011011000000100111100111010101001000111111111101101100111100101011100011000011001111001110110000100101111000001001000000100011011111011000101100100101001000011100000101001100000011011000110111001111 +1001001010011000111100010101000101111011101010001000010100101111010010010010100010000111001000100101000010000111011001000001010000110111101000100000011010000010011001101100010101100110100000101100101000111101001101100101110000001101110001110110110010000100010000111101110100100011110111010010110100000011010111001000010010101111110010111011001110100001011111011110101000111110101100010100000010000111000100110001001100001001011001100101110111001010010001010000100101100100110100111001010110111100100010000111110000000100000110001011011111110000110011100001101110110000101011101101001111100101110011010001001111011000010101111011011111101100101000010110100001000101111101010011110011010100010001100110001001100100010101001111010001001110000000001101101011100111101111101010101001100010111011010010010011010001101000001010000011000110011110001110000011101100011100111111001111011000000101000111010001001001101101011001110000001000010011000100010001100011100111000111100010011101011100100110111100110110011100100111001011010110010101001001110000101101111001001001100111100101110111100100000011011011011100111000011100001010000011011111001100000011101000011110101000110010101101100001110111111101011111001001101000000100101010100110111111100111101011010100100101000100100010100101010101100010101011100110011100110100001010110111000100011100010010111110010010100110110001101101011001111001111101011100001000000101010101011000011100101001010101011110010110100000100010001000110001111000000011000110010011111010110100010010110001000000101011011101000100001011011101111000010101110000101100011101010010011100000010000101111100111000000110100110111101110010111001011100000010001001010100111011010000101111110011101101111011010101001100001000100110011010010000110001001011010010011101001001100---------011100011110011101000101111011010001001111100000000111010010001100101110110101000001010110011110110110001010010010101111011101010000000001110110011010010111101110001001110111111101111101011101100101100100001111100000001100100111000110101101110010000010010111100001000111111110011001010000111111011001010100111111010010011010100011011001001001100100110001000010100010011010111000110111010100001000011010011001010000000001111101100001111101100011111111100011000000001010011110001100001100111111101111110010111010000110000100101100001011111001100000000001110110100010110101100101101000001101000100010001010110000011101111011001101110111000100010100010011111011111010100011001010110110100100100111110001010111110100001001110110000001000111110101101100001011011100110111011110100100111011101011100011101111100110101100100101011000010101100110011101010001010100111001000011110000001001101011111010000010011101110100100110000011111011011001110000001000110011111101010100000100001111100111101010000001001100111100101100001111011111101101110000100100011101100101111111101000101101110001000011010000100000110110111101011110001101000101100010011111111010010111110111111101111110001011000110000010101100111100100010111110001011000100010111101111011010011110101000000010111010101110001110110011010110000011101110000001111010001000000111010011100100110111001001110100100001010110110101100111010111001110011001101101101010001000101000110011001001001011100011111101001000010101110110111010101010010011010001000111101110101101001001111111110000111100010000011100010010001010111010101111100101101110001100110101010011001111000001100100100110111111010000000111110001001100111001100000100000010101100000110101101111100010101011101011101111101100110010001111010110000110100000010110101110000111001111111101001100111010111111110001010100010010110000011100010110100110100100101000001001110011100001111101011110111001100011010011000011111011010011011011111001000110101000101011100111011100000001100110010110100011001010011110101100010100001110010111000011100001110011010000000011001101100110101100000011101010000010011101110101100110011101111100110100001111011010111110000010111010100001001010101100110110010001001100111011010110011001101110001101001101101110011100101011110010000111110011011010010000000100011101010111000001000111110010010011100010001011101011111101110000100100011010101010011111100110001000011001011101000010111001011011111100111110001001011000001000100001111010001110010011110011111000111101110011011011011101110001100100001100011110000110110110110010011110011110000010001011001111110000101101011101011001001000110111100110111100110010111010100100111110011000011111011111101110111011110010000010111100010011110101101110100001100011110010010110001001100001100111101101001011011110010111110111101100101001101000110011101100100011010100011001010000010110101000000101110111100111010110110100101100100011111111100100100011011000100110010010111000001000011100000010000110010001011011110101011110100010000011100000110010010001101010101101100110001100110100001111100000001111011000000010101110101001000010110101001111100001110000001000001011111111000001111110110000000001010110110101010111111110011010001001101010010110001000110000101111011100101101010111100100011001010001001100010011101001001011101111001110101001111011001011010101101001111000010101111100101010010100010011101100100001100110000111111101110100011110011101100011011111101110101111001110101001100010001101010000101000111010000111111011010011001100000001110101101111110101011100011000110011010000100110010100111001011010010011010001001110011100011001101010100100101011110000000111010001110001010110010111101101111101010000011101011101000110101101001010100001101100001111110100111100110110011011000100001101101011010000101110011101001111000110011000000011101010000010100011110001101011111110110001010011000100110100010000001001111111011001000011110100110000010110100100100010100010100011110101110100100010000111011011111001010000110001111010110000111010111011110010001010100110101111010000100101011110000010010001100010011100011000101010110100111010000100111010110001001110011111001001111100001001100010101111000010111010100010100011000111000000110101010000101010111001111011001000000011000100101011000011100000001100110100010001110000100000111101000011111010010100010100100011110100101000100000111011111111100001000111000101011011011010110001101011011101010110001110011110001101001000001101010111100010010100001111101101111100001011010111010000000110111011101011001010000011010110111110011000001100100110001110111000001101000100111101111010101010111000110110001100011011001010001111101101111110110011110011111111101111100001000010000110010100000011000010110001100000001110000000111100000011001100110001101001100011010001010010100011011110000011001111000111000110110000001110100011010110010011011011000010011111011000000111001111001110011000001001101010110111011111010111000100101001010011100101110000110010100100001110011011010111011111100001101001110110011000001000110101010111101010111001100010000110110000101101001100000111010011010001110100000110000110100000101010010100110011010010001010011011010100100111010111111110001111010101100110110011100001001000100011101010111001000001010011111000001011111011101100010000101111001101000001101110100100010010011010011101111011111010101100000110110001001101110011001001100011000010011000001000011010000011011101011001010011101111001101110011011100011111100001011111101000011001001100010111010010011110010001001100011110010000100110010011111110101100001111110000001101101100101101010100111101010100001000010101001111101011100100110111000001100000010110011001111111101100011000000000010101010001010001101000111001001111101111111100100110001001011010001100010001110001010110000100011111001010101010001100111100011100000100001110000011011101011010110101111100001010010011011110001010010110100110011101111110110011111111011011100001101001111010100011111010100110011100101100111011110011110100000001100100110001010100111000101110001111110111101111000101010110101101000111011101011000110010100000110110111010011010101101010101111110001000011100011011111110110101001101101111011110101010001111111010111010101111000000100110010001001011101010011011100011111100000010010111011101001000100000100000101100010010011100110011100101010111111000111110111010011001111000000011001111111110011110111000010100101100101100001001011011000010000111101101110111001111001101110111111001011111110100011101100101101000100111101001000111111110010011011101100001101001010011101001101100111010101011101001111000100111101010110011100000010110011110101101111110110100101110111001110100010010011000010000101010111011011100000011010111011011110111011101010011110011001000010000000100111110010100001111010011101011000101110101100000000000010101100000001111111010011010110000011100000101000000110010110001011000100111111001101111011101011100100100011100110011000111101111010010100110100101101111001111000000100000001111011110111101101110000110100010101001110000111110111111100101101010001101011110001110101001110110000010000011111011011001000010001111000000111001011101000011001000000111011110101110101001010001111011010011101001010111000111000001111001000101110001000100001010000000100110011101011010100111110110111011000011101000110011111110101110011010110110101001110101011100000000100100110101111101101001110111110010100011011001100011001011100101111100001011010010111111100101001001111011111100011010010001011100101011101111000001100111111011011110011011011111010000011110110100001111110101001101011111000111111010000010001110011010111111100011011111100011100110010001101001111010010101101111000000100011000101010101001001011101111000101010111000100110101101110010100111100010011000001001000000011100100001101100111111110101010111011000010010010110110001011100111000101000001000110111100011100111001111011001010001110101110011010001011011101101101001101000111110011000000011001001110001011000101010010101000001011011100000101110110011101001101000011010011111010000010010011100011111000100001100110000100010010110111111000011110010110000010110111000001111110011000001110010011101010001111101000100001111000111111110000100110101010001110001100111010110101110011011110000101001110110000110001111111010101001000111000101111110111001111111111100111011010101000111000000111010110010000000000111111110011010011001000001001110000001110101110000001110101111110010101000111011110111010101100110010010111110010110101111100001101001010110001111110001010011100110101101001101001111111111001010000001110111001000010011100001111001001111000101000111001100101111001110111010001100101010110010011011010011000100101001111001000110011001001010011001001100011100010101101110110100100111000111101000111010100000100110010010010000010110001010001110101011000110000111111011010111001010101000010101011000000110010101111000111001010001101110011001100111101110011101001110101110001101100010001100011100110001110011100000101100111110001011100011011001101110000011100110010110101000010011110010100010100100110110111111111110100001101010100000001110100111110000101111010001100101110110111011000100011100001001110110001111100001011110100010101111101101100001010010101101000101111010101000111000000001111001010010011000101110010111000000000100010001010111111100011100000011010100001101110001011101000101011001100110001111000001010000001010010011001101011110101110110101100 +0100011011111000100011010111011101010000011000000010100110111101110100001100100100101001111010100011000110011101000111000010000010000011011010001001111100010111111001110110001001100111101011111101111000100110100110101111111100110111010111000011010111101010011100100101100011011110111110110000010011011110010100100110010100111010010001100010010101010100000001100110001000010001111111100010010000110100100000011000110111001111010000111111001110001101101001100010110100000001111010111011010010100110110001001011110101110010001001110110101111001110110001110000110101101101010100001001100100111011001001110111100101001011000011111100111100001010100000101100000111110001010011000000011000010110011110111001000010101001111010100011000100000110000111000001011010000001111110000101011000110011000001011110100010010010011010101011101101110000100111001001101010100001111010101110111100110100101001111000101000000001000111100010000000000110100001100011110101110001011101100101110000111010011101011011010110011001101111001100100000101011010011011001110010011101001111110111011010110011101011011110100101001100000111011101111110000001010100010110101000011101101110001001101010011010000000011001000000100111100010100100111000000100000010111110001100011001111001001011011100001110110000001010111100000001101101001110000100001010110101100010110110110101111101110111011100111101110011010000100101110101001110101000001001101010011110011111110101011010001111000100111111011001101101011011111101110010110100111000010111001110001101001101101100100010111000101101101110010100010011110100000101111111000010001010011000000111000110011010001110111011110000101010110110110101110110010100000010100000100001101001010011111110001001100111100101110000001111000110101011101001010100101101001111000011010011000100010---------001101100111110010110111001111111100010110010001010001111110011111000111010001000100001001101110100111010100010000000011000111111100010011110000010101000101111001111011010000100100011101101010110110100100100001010000010010100110101000001111010110101001101001001110110000110110000101000100100010101111110110101000101001101001000001000011000000101111000110010111101010100111111010101010000011111101100111000010000111111000001010011111011110101001111101101111110001111100010010000101001110001100010100111010111000100000100111001010000011011100001100001001011011111100001101101100011111110100101100101100010101011000011101001100111111111101111100011100110110001111001100001001010110111101101011010110110001101100011100101101111000111101011111101001100001001101001000001101000100101010010101101101101111011100111100000100010010000000100001100001001011000001000001100001000010010010110000100100101101001100110000000110111100110000100111101011101001000001011010101111110001010010111100110011000110000001010001101000111110101010011010010010010100010101000101010011011111110000011111000010101010111101001000101000000101111011100110010010110101011101101101100011011110100100100111011000100100101111100111011001001011101111100111011011110110001101111001011111000011001011100010111010000100001000100100100111111101000101111011101011101010111010010010001100000001011001100100010101000110101110100000110100110110000011111100100100110001000111110001010101100111010110001101011010001111101010111000010101001010000101111111011110000100110110110010101000011001100000001011110001110100111010010101001111101010101110010011001111110100100111111010010110110110011100001011111100001000101011001010010111111011101011011111101111101111011101111100100111000111111100001111010000000001001011011001000000100100010101100101000110111101100001010000100010101000101110000100101001010001011111001010100010010101010000111001010100111011001111100110111010110000110100011001110000110111101111100010000010010000010111101010000011110110110000100110100001101000010100001100101000011000001111010011001010100101011000010011111101001110011010001001010010101000111101101011010100111000000010101101111000000111010011110111100101000010100111100110110110000110110011100100011010011110000011111110000011111001111001001111001001011000111000000111100101100000111100110100111011010000001011011001111110010100000001101100001011111100101100011100011001101111101111110100001111001100001110111110001111011111011011100000000100000010000111000101010111110100010100101001111100110101010110110110010110011001110010001001101000101100011000100100001101010110011010001110110000100101110011101100010110011101110110101001011110111001110100001111100111100010100001111001111000110110110011100100111010101110001100001110011000000110001110110100110101101010010011100010101000100001001101110110011101000111001101000100000111101010011111010101100010100110101010000101110110100111110010001000110101110110000011010010010011010100001001010011101100001011111000011111010011111100110110111000101100100010101100110000100100000001100111111100010011000000111101000000100000111101001000011110010100001000001110110000001000010111111101101101100111010010101000100001111000000111001101111100011110001000010000100100110111100101101111111110010000010101101100011011001101111110111010101110111111010011011101111101001110000110111000000000001010110110101010111001100010000110101111100111110100101100010001100001110010101110010011011000101100001110001110101000111001111110111001001000001010000001110001011110001101001010101010110100101000111110101000101011010000111101100101011010111011000100011111111101010010111111111001101001110011111001110000011010001000110101001000111111010111111111000101010010010110110000111000111111011111001000000100010010011101001100011001010011001111001001011010010010000111101010001011011010001000011101000011010101000100100000110101010101111001111010100001100100011110100011100011011010010101110110000011100110000000011101110001110011010101010101111111011110110000011110001111111111001000000000011111000100011010110010011100001000101000110101010010011101001101011001010010001010001110010011001010100101111110111111001010111000001011011100000101110001100000101100100111110100101100000111111001001001001000001110110111011011010111011111110000111111010110111010110111110001110101101100011111110001101001011000110001111100010111001011010101011110011011000110101011100110110101000011010111011110000001110111100110101001100110011110110101101101101111010110100010000010110100000000110110010011111100110101110001011000011101100101101101111110111011000011001000100011001011110110010011000000111110011010101100101000100010001111001000011001011110000000111001100100101000101111010010011100110111011001101111010010001110010110001010101000111100000100111010100100011100000001011101101111110000111010100101101001011111010110011011011101011111111111010111110101010100000100111001010101100101101111100000110010000110100010001100001110110000100110100001011101010001000100110000011101011101110000000000001111000100011101000011110111110000110001011011011101111011011100001000110010100110101011100001110100010100001011100111100111001101011000101100000000100000110001101101011110100111100100001001011110100101100111110000010101010101100111001000101010101111001101100010111001111101101010010000001011110011100101010100101010110100000100000010101000001001010000101010011100001101010010100110010001001001011101100101111001001100101100100010101111011000110000111011000100001000011100100110100101110010111101111001110100010010100100000001100110011000101001000000111100000000101010000100010010001011000001111000100010100100110011010110101101101101111101011011000101000000100011001101001010111111001001101111110010101000101001001011100000000111001001110000111000001010110101000100111010111001001110001101100000101001000011000101001101110111010010001110110110010100110100111001110100000011110010100110000010001111110010000111010001011000011100000101000010101110011001110100101110010100010001011010101011010100101111000110101000000100010111010001011011010110111101011101100000110101010110101000001000001000010111000001100101011110110000010110011010100100100001010111010100100111000110101001010111100001000011111010100011001100011010101010000010011101101100100101010110101001110110000100110001110111110101000011001011100011011100111100000001111000000101101000101110101100000011110111100000100100111010010011011101101000101010101000110100111110101111000100100110001100000010111110001110010010000101101010111100110100000111101111101101000100101001110011100010110100000111011101111001100101110000111111011001101100101101010101100010010001101000101111011101100000100011111110110010011010010001100011110010001001100100000001111101111011111010110110000011000001011100011100110101101110111100100001101111111110101010100101000101001101111110111001100101111100000101010000011110010111010011100110110011011010011011010010000110100001011100111001101110111011011110101111101011110101010001001101001111100111010010001001000001101100101111100111000010011110000011110010101010000110100110101110000111101111001011100001101011010001101110001100100001001100011100110101010110111110100111000110000011011001001011011100110000001010000011100010101101101110011110000110011111001101011100100001100100101011011110100011001001110010111011100001000001000000010010110011011110011110111000101110010010001010010001010010110010000100001011110110010000011100110111010101000101011000010000101001000000000100100010101010010011011010010100000110100110100000011101110000101000011010101010101110111000100010011000110000011001111000010101101101111001101010100101000011011110000100100001110110010001101101101000101100000010111101101110110011010100000010000001100000011000101000000110000001100101010011000111110110000011101010100100100110001101011000000011101100010101011000000000011110100101000011111000011110010010000001010000100100001100110101010101001111001000111010011001001001111011011011101011001011011010110110001100101110110110111011101001001011101011011110001110001011101111100010101100100100101100010000000111100111001100110110011011111010111110111001111111100011111111001011100111110100111111010011010000010111001011110111010100001100001101000010011100011110011100001011011001010010001101011011101000100011110000101011100010111011010110011010011111110001000000000101000010010010001111001110111011101010011010001111100000101000101100000110110001111110110011001000100010010101011001011010101001001011111011111100011110100111100011001100010011110011111000010111011011000010110111010111010101011011101100100010000011110110111110100000100001011100001100000110101110110110010001110110110011100001100000111000010111000000100101110001100100011000010111010001111110000101001101100110110110101011001100011111111101001100110011011000010010001001001000011110011101011100111101100110010000010011000111100110011111111011011011101000010110100001010100100001110111110010100110100011001010101001100000100000011100101100001010101111110011010100111111111010010111011111111101011101100111011010111101011100010010011000100011010011001100010000100010011011000000010000000001101111111000110100110101101100011100100011101011011101101010101001011110100100001101111001001001111111001111000110010001000100100010001011000101000110100111110000110010101110100110110111110001100101110010110011001110111011101010111100110101101101011110110011111110101000 +1000100011001111101001000100110100001011000011001111011000111010110110000001001111100011000001000001011100011101000101001111000110000010011011010011111011101001111100100010111001101000101011001100011001000011101000011010000011000001011011101111011101000001010101111111000101010111111110110100110100001001101000011001010010101100001000001101101001000001000010110100110101110011001010011000111010100100111111110110111001000000111110100000011110110000001110101010010101010100111100000100111011000111001010111100000111100101111000110001010000010111111101001010111110011101111110010111010001010010010111010110010011011111000011110000111000101101010111010011110110111011011010011000001110011110111101011010111000111001010010001000010111011111100100100001100000010101011111000100000000110101011110110000000010010010110010110010110100010011011111101010100110110011011010111110011010101111110110010011101010001100011110100100100000100001111111000000110010110000100110001110010101011110001001000111110101011110100010001101010101011001100010110100010111111111010011110000001100101111001000010100111111110011101000001001110001111101101010001011100010000101011110011101100110100000110101011101100110001101111100011111001010100000010011101110000100110010100011110110011110010110101011000101010101100110001101000000001000001000001010110111111000000101011001100000101000001011001110111101010010101100001001110001011011101011000000110000010000111111011111111000001010010100001100111111101110100110010101101010110111000101111110000011000110110011100001101101001111001000000111100011110110101100001000010101000000000011111100001110011001100010100010111110101001011010101110001111010111111111001010111001100010100111110001011111100000101101111001111101010000101100100011011001011100001010011110101100110---------111111111001001100110000111001001101010110101000011010100000101010110101000111101010001000111111101010001011001110001010010101100110101111001101101111000101101000011111010010101000111001011111100101111001001101011101001111010010001111010011111000110000100101010101110101001011100010011110101001100011001011110110000000010100101000000011111001000011110101110110101111110101000100001110111101010001110100010001100011000001000000111101000101110100000000110010110111111100000000110101110001011110110111110100011001011011010001100100010100101011100101011110111101000101011000110011001010100101000001110001000111101110110110100010010110010110110001010101101100010000010110011010101111110110001100010001010101111100011010100110010000100000110010011000100010101001011000011011111001110001110010001010001000110101111110001011010011011111101010001001100011110111000111010111001111101011011011110001001110111110100000111001111000111101111100000000100011110110101100111011100010110111010001011010111010101111110010100010010011011000000001111011100000111100111010110101001010111011001111001001100111010111000011101110100100001000111011010010101010110101101000101000110101011101001100010101101101010100010010111110101110100100011101010111011001001111100111111011111000000110000110111111010101110111110011001110000110010001111111000100101010000000111110010010100110010000000110000010111011100001110110001101011001001011011011000000110001101010100100101000111111100011010110011111110110100011101101010101111001000001010111100001100001101001100011101011110100000101001011100010000111000011011100011110000011111111010110010010110110010011110111110110101001101001110001010000111110000000001110011100101001100101001001100110111000101010101111101101111100111000101011111100100010111001000111011111101010100100001010110110111001101111000110111110101011011010101110101100110101110001001000100001001011101011000110000110010110010011000001000011111100111111010010000011010000111111011111101101101100101010100011000010010000000100101011110010111100000010000011111100001111011110011011010110100000110000001100100101110011111000010101011000110111011101010010010110000001111011010011111111100011011100011000001011011001010101101111010010000110101111000100110101000001011100001001101101101010011100100011100101101110001010110000000000101001111110100010000101011111111101011000110001001111101100011100001111010100110011100100101010011001110000011000100010101110110100011111111011110100110000100000010000111010110110110101100011101101111101110000010101001011011110100110111111100001100110100111110000000101011110010011100100101001011010000000010111101101001101001000001110100100011111011110000000001111111000111100111001001001111010010000011001101001011110000000011100011101110010010100011110100010000101010110110001001011110111001101101010110101011001110110000011111111000011010101011100000000000000111001110011110011011110110110001110111011110101001001110000100110111101010010110010101101101001010000011110001011011111000100111111110000010010111101010101000011010101111001101000111001101001011010111010001100010000101110101110100000011011001001110001101000111000101100110001110001111010010011100100100011111101111001000010100010000101010101010010110011100100111101101000010100111000011000110001000010001000100000111111011101111111100110111110100100110110001000010010001000011000000110110111010110110110110101000001101111110001100111001101101001001111101001001101110100011010011111010101000110011101110100100100100000100100010101000001011100111011011100010111111001110010111010101011000011000110101100100100001110000111011000100101100001011101101111111000001111100100101010100111010010111001000101010011001100111100111111011101110110000100111011011001000001101101101110010110000100010101100100000100110001000001111000011011100011000000010101001000100110000111001101100110001001111010011110011110111110001011110111000100011000110001011101101100101100101110110011000010010010110001011111110101100010110010001101110001110000100001111100101111010000011110110011101110110000110111101001000111010010010001101100000000001101000011011101101111000110011000100001100001101101011010101100100111110000001100111011111111010111101010101000110110011111111110111010000001000110101010110100010010110000110110110111110010111001000010110101001101001110011100101000011011000110111001000010100011000010001011001111101000100011101011001000110010011000011010001010001001101001010000101111101111111111111001111111100000011111001110001111101110011010101001111010000010101111100001010101111101010111000111111100011111110111001100100010001010101111000100110001011011101101001111101011100111000110011010011101110110000011101101011110100011100011000000101000010001100110110011011011000100101100111100011010101110101100010001110011001111100000010010000111111010110111001101110111011000001110101001101111000001101110010110010110000010101111101111001000010110010000101000000001011001101001111100010010010100000111000111111001010010100010111011010100111111111000010011100111100001101001010000100000100011010100010011100000011011011110000001111010011111001001000010100001001011000000111111000111100101110111100100000011110010111001010110111000010110000101111110111010111101100011011001010010100111010000111111001000100100101011100110101101000101111101010110110001110001100111100000111100011100001010111001110011100010001010101101001100101111111010000100001010011010011100011010110001110100111011011010110101111111100101000110001011100110001001000100110100000100101111110010111011100001010011011110000010001001010000101110111010100110110111001000110010001111100000001011000101011010110101110010111100100011101101100111001100010000001001011001010000000010010001101000010000011001011000101101100100111000011110000010110110011100001000010000110101011111110000111011010001101010010100011110100010100000111000101000011111010010101111110001000111111111001100100100111110011101000111010001111111100111101010011010111101001110111000000001000101011011010010010000011101000100100011110011000000010011111010110111100001111010010100101101101010000101100001011110110110101110010101111011010111100001011010000111111110111111100000001111001111101001001111010101011100000001101101110111110011001010011011011110000000101000010010001101111001001101001100101110110100011010000100111011000111110010101000111101101101111001100101001001011011111000101000110101110101011101111111100000000101000000011000010000011001000001110001111011010100010101010011111010011010101110101001001000110100010011100011010101110110100011000100011100101101001101010000100100011000101011100100110000010111110100101000110100111011010110011101011010100110111110000111011000111010100000110101100100001100110001001000111000000001010001011000011100111111001001010110000011010011111101101111101110000001001101101000100000101101111000011011011100011110111100011101100101110111001111101101110000100001001000001000111010101111111001001001111111110101001111111000001110110110101010010011101101000000110000011001100101010111110111010101000010001111000000111110010111011010101100010101101010001011010010110101001001010010110011100110101001111010000111111110100011101011011010111111010110100010001111011110101101110010100101010010001110101101000110100101110101000101110010110010110110101001001110001101100111101011000001100011000110110010101101001111011011100110010001110001000011111100001011000001010100000101001010111100001110110011010010111010000011010001011100101000111111011101111000011111101000001011100101011011111011101100011111111010000010110100001001000111001001001000101010101100111111001010010001101100100110101010000010111100010110000110111000101001001111000110100101101010110101111000010110111000001101001100101010010110111000011100001000100101101110011101000011100010001001000001100000111111011101001011001001101001101100111001011101001001010010010011010011000000000101110101000011101011011100000010010010001110100000100010000110100001100001000100100111111001110000011001111011010101110110001111011000111101100010110011001010100011101011011111110000100111001101100100100001010000110010111111010101111010010110101010111110010001100101110100101011001010101010101101001010110011100111100111010001110111100011111010001010101001011001110101111110000110110001100000001011001001001001010101111110110011011001100101111111011101101101111101111010100000101111011000100000000110101110101111101000000110100000010100011110011011111110011111111110010100011111011100001111011001000100000001001110000101001111110000100011010111110010001101111110010100000000111100111000110101100101001001000001100000111001000011111001001010101001101001100011110011100110111010100101110011101110111100010101011101010000001110001101000001000000001001111001010101011010100110100100011100010111111110101001011011010110011001010100011111001011100110011101110110000011110100110000001101111111011010100010001010110011010101011011110011110011000010011110111010100011110010111010000010000011101101011110000011101001101101010011001000110101101000101001111010001000101111100100111111001110110101010010001101011011111111010111101110111111101001000001100111011111111010111011011110111100011000100010101111110110101011100111000111100100101001100101101111100010001010000110100111011010001100100010100111101010011000011010001000010010011011001100101011100010101000010100111011000001000001110010100010100110101010101000011000100111100101111011000100110100011011000101 +1110101110011000001001100100101010100111010011110001001011110101110110010001011011111111000100101100011010001110010101011101001100110001000001001111111110001111010111001001100000100100101010000100000010011001101000001010001101011001010111010011010110011101110010100111010000111011110111010100011111000000101100010011011011000001011100111101000101011101100000110010000110101010010101010100101111100111110001101101101100110000011010000011111001001001110111010011110010100110100110000000011001011010110010010111101100101100000101001111100110110001000100010000110111011110100001011011101001001010110011110010011011001101010000000011011011110001110110100101110000100100110000011100011111110011000110010100100001000001111111000000001100001100000110010011111011001010011111010101000101110100011001000001001100000011011110010111100011000010010010011011101100001000001001110101010101100010111100011101111011101110100011000000011111100001010111111000100111101011111110100011010001100001011011110110111101110010010001100000010001110100111001010001001100010110110001111011111110011110010110101111000100010100011111010111101001011111000111010100101001001110001110011001100110100000001110001111001110111000110000001111111010110011010010111001110100010100010111111111011010111000011111001111100001001111110111101011110101110010111110110100111100110110111101001110111111110010010010010100010011100100000100101001001101011010100001000110011000000000111111100111110001001110110110111011101001111011001111010110111000110100001010001100110001011111000101001101110100110001011111011100001010011000111110011001110011001001000000101101111110011000001111110110110111010101000000110101110001000100101011100110000100011001011000110001011000101101000011100100100000000010010110011001101011111111011100101110010---------110010101100000010111001000001100110111110101001010011011001001101100011101001011111001010100011110010010111110110111000010001100101010100110000111110001101011010101010101111111100100100101111001100001111010110101111000100101011101011000011110110001110110100110110101110000000111111111110011100111001011110000010111101101100101111010010001111100111001100110001101011000111111110101101110011000010111001100011111010000100001110000001101000110110010100101000000011111100000101000011000011010011001001011010011100010100100011011101011011101010011011011010000010100011100111100000000000111101010010001100011110001001000010111010101001010111000101011001101111000110110001110001011111010000010110001011011111111011000010001111010000110100111001110101101101100101111111111110010111001101010100010001011110111100000010111011000101111001010100000110110111011001110001010011000001000111100101111011101000100100000000111100100110010010001010110110100110000000110111001100000101100110100001011101110100001010010011110000011010010000001011001100010011111000111110010111000000000001110111101111001101110111000101000000100101010001111000111010011111101101010001010101001001101101011010010010010110010000010110100101000001010110110111001110010101100101101110100000100101011101011110111110000011011100011101000100001001111000000110111001101110110110110110011001111110100011000001100100100010011111001101100001001010100101000001111100100011100001100100000000111100010100100000001001101110001110110101001101011100101100001100010001100011100001010101101011011011001100110000001100010001011011010101101111110010110001110001000000010100111001110010010101110010111101100100110010110000000011000010101011000011001011100100011100110001101111111001011010111011101001000000111111111000110101100111010100100011010100101110001010100011010110001111111111101100101010010111001100000011001100110110001000011111101011011100001000101110101110011001101110111111111110101100001100011100000000110100011101100011011001100011001010100010000111110010111100001001001011101010100010001100001010001010100011101100110110101111111011010100011000101011001100011001101000010100001101101100010111101100100011000110010001110000010110101110110111110010101000001000010010001110001101110001010000101001100101100011110101111100010111111110001010000011110100110111011001110001101101110111111100101100001010111101000100010001000100001110011000111010011001011100010101111001111101001010110001000111011000011001101011111111011010111101100110100111110100111011011001101111000101101001010101100000110101110010010010010111111011011110110111011000110100111110010001100001110111010101000100101011111010000101011100011010001000010011010011011010111101010000101001010000110101101010101000101100100000100101101011010011001000000011101011010110001101000100111011100110101010111101100111101001110101111001101011101111001000101001100001001110101100110011001110001110000111001010000101110001010110110001110100100111100001000101100001000001000011111011011000011000100110101010100000010110110001100110000001111011111010111001001100010001001101111110001110011000111001101101000001110101010010001100000101010010011101001101010000110111000010111000010101010011000000000000000001100101101110101001101101000110111011101101000101010101000101111011011111000001111000110001111101010010011000001110001010011010110010111011110010000010110011110011011001001111101101010010111001111010010011111111011010110010111001100111110001001010010011000110111101010000100000101100101100111001111001010111010001000100000000110110110110100010111100000100000000100000010110000100101100101011100011001101100011110101100100001100101101110001110010000011100110100100001011111111111101010001110100110001011100011100101001000100001111111110000111100111111111010000100000110100111110111100001101110101111111110010100000110100100100000001001000101001000100010110111011000001001000110101010101110010011110111111011110111110110010100111000010011101101011011011000001101010010100000111010101000010000101010111000010001110111101100010101110101000011110111111111011001000100100111110011000011100001010111000011101010100011001011101100100000101010010011001101110101101001011110001011011011001101000101010000011100000111000000011000010110100111101111001011010100111110111011100100010001110010010000011001011010010100000101110110011111101100111110100010101000001110110101010010100110001010110100111101001101010000111101010100101010010101110011110011101010110001111100111010010100010000100100010110101111111110000000110100111011101010101100000100001110101100101101101000010111001100100001011010101111110001111111001000111011011001101100101001101100010111001001111111001000100101011101100110011101100000111101111101101000111111001000110100101001101000111100110001010011100011010101011111101111010111100011011101110010110110101010100100000101001011001100011010011101000100011111000101001010011101101001100001111101101111110101100001110011000110110100001110111000000110011010010110100100100000001111111011110010001011100110000011010110111111101111110100011011110111100001110110001011110011110011011011101101001110100000011011011110011001101011111011111001100000011001111101000100001110000100000110110000010111110001101000101111101111111000000110001011101001001111010010011110000100100000111010010000101011110111000101010010001101010000101101111000111101010111010011010010110000111001110001111000110111111110001101010001010001000000101111111111101110110110101001110010001010001001011110101011000000011000011000001110100101001101100011101010010111101110000001000111000011011010010000001100101010101001000100000101100100011111100100010111011111110000101100010001000110111010101000101100010111000000011010011011100000111001011100110111110011001110011101010001011001101111110100111001100001001111111000100101001110100001001011011111110100001011101111101111010101001000011110101011001101011110010110111110000110100100111000001100111100000001110101000010000100110100010110011000011110000111000101010010001000111100001000010001000001001101000110001110000001000001111101010111000000001001000110001110111000101111111111110100111100011000100000010000000001111010000000101010001111110001001010110001000010001100010010011100001100011111011101010110001011001000000110000101001000010101001110100001000111001100010110010000101000001010010011101011101001111110000111110000011110000001001000111100010101100010001001100111001101110010000001111001010011010010101000000101000011110111100001010111011110110000111111110111110000101101110110011001101010011111100000101110010000110000001111010010110000111111111000001011100010111010111001001011111101111100100110011111100000000111001111110110011101101000110010100010010001111000111110011100001000010010110100100010001010000101111101100010010001111001101100011111001000000000011001001001010011101001110011011100011100100000001000111000111011011010111010000001000010100110111001101101000100010100011110100101101111111100100111010011111010101111000111110010111111100100110100101010111110010011001101110101001100010111001101001101000011000100000101100101010000100010100000010100010100000101111000011101101101100100011000110000100100011101011000110001001001000111001110001110001111001111101000110101010001101110011000010011111110010111001111110010100000111001010001001101010101101101011000001001000110101110000001110011110110111100001000101001000100100101110010011001111100011010001101010100110001001010011011010010111110101101110111111000001110100001101110100101100010001010100001001001010001011010111110010000100111101110000111111000110001111110100001110011101100110011010010011111010101011001001000010000101110011101010111110110010011111110000111101011001010100111111111100100010101100000110111101010111100010000100001001000100110101011100011000010011010010010101011000010110001000101110111111011110101001101101111001000111011111011011110000101100000001100011110100010100001010100000111011100011010011100010111010011010000111101000101001000000010111101011001011000100011011001011111110001000000010110110010100001100010111000100000100100010101100001110100110000110100111011100010100000110110011100001110011000001100111010001110000101110010100010010111101111100111001011111100000000001101100111001010100110000010010110101101010001111000100010010000110101010100111100001110010100101001111000111111010011010000110101101010001110001100100010010010010000110000100011110100011100110000110000111101111011010101010000100001110101100000111111101011101001011000110101000100010100011010101011100000011001000011011111110110110010111001010000010110111000111000101000011100011100100111011111110110101101000100011101111111010100010111011101101001011000100010100000100010101011100010111011100010000100011111010000111101101100000111011011110010011101110011011000001101011011111111110000101110101001010001001101000110001101100010000000100100110010101100111011001101110100011010110000110011011011110001000110110101010000110100000100011100000101000111101010101110110110001000110111110000111000011110011000010000010010110011001010011000110111101001101110001000111001011111010000001010000001111010110101010010110010001110001010101100011010111010000011010001001011001101110001000000110100000111000001111011011100100110110100011101101010011000010000101001001111110000111000000110110011111010011100101010011110001111111001011110000110011101001000011100110110100000010110111111101110111000000111000111111001110001011001001111110 +1110000000000110100111011010010101010001010010110011101010100101011111100011010010000100101010100111111110010001011101111100010001001001011011001000010011000010001100111101101000000011010000110110100000110001110110010010000001110000010011001110000111000110110000011110110110111001101010110100011111000101011111110111101001010001001101110100000001110001000110101110010101101011011110000001001001001110111010011010011100010101001110111111110101110011010101001010001101011010011010111001001011110010000110101001111111100000100001100010101011001010011110101111101101110001000000110001011001110100110010111011110010101111010001011101111111010001101111111101100100010101111010010001110100010000000001110101001111110001010011101101011100101010111110001101010100001001100111110100000011010000100110001010100101101101010000101101001001111111001101011000111000010011011100101101100000111110001011111001001000001000010101010101011010010100111111001001111001111001100110100001001010100110101011010111110011101011101100001010010110111001100011011101100100010010110101011011010101011001110101111001001110001000101001010100100000001010000011011100111000000001000001001101101111011101111100100000011010110100011001000110011101100010110111111100110101111000000011111000010100010111110000011100000100000001001100110010000110011001001011000010000100010010000010010101000111101000000001001001111100101011010010101010110110101101111010011001010110010110000010110001001101011110101101011110000000110010010100001101101101000110011001000110000001010010000111000110010001101100100010011100010110111100011010101001111111101010111001001001001001010110101100110011001010001101111111011011001010111111111111010110110010000010110101001011000110000000100001010010111010011110000000001110101110100100101111001101101---------001001100111111111110010011010111000010100101010101110001101010100100010100001000011111111010100011011100100100001110001000011001011011110000011110010101110011100011111001110011011000000000110110101010010111100100100101011001000110010011001011110101011011011000101010111010111110010111101111100100101101010011110101101110001111111110000001011111000101011000000100011100110010010010011011011011101000011000011101011101101101001110001101001100111000001111011010000010011010101110011100100000111100110010001000100101111011011001000001100101011110000100110101111010000100100000001000000100010001000011101001000100100010011111101000001011011010011100111001000111000111000000111100000110010010001010110010101110000001000101000101000110001100000110010100100010111110100100000101011000001100111110011000000100011111000111001100110000011000100110100110110011011010100001111100001101101001101101101100010001110111001011001110010111010101000101000001110100100001101001000110100001010010111000001011101011010000001000100000000111001000001011111111000000100001100100100100110110100001101101110011000010100101011101101000000110001010001100111001101110001110100101010100100001000100110101010011011111000000110010110010101001110100011010000011110011100011011110101100100010110111010000101011000011111110000111000100011010001110100101101111010001011011101010110100101110000011011011111001011001001001111001000110011010110000100001001110010101000010101111101001011000000010110101001101110011111111010001111100100100000001101001101001001011110001101010110011100110010011100001101001001100100001111101101011010111011101101001011100001001100100010110001101010010101010011101001010000001101000100111110011111010000100111000010100011001110100000100110111101010100100000111111001111011010111100100000101011100011000101010101001010111100100000101000010101100100100101101001101110000000000011110010100010001000000110100111111100111110111011001110011110010001001101110110000011111001110110010000100010111000100101010111100011110110011001111011011011011100001000111011010110110110000000011111000011001001000011011001111111011011110111000010110111100010011010000100010001010101000111010000000111110101011110010001110111011011000111010010000101001111111101101000011111010110100100010111110101101111100001001010110100000110110000011001110111100100110001000110111000011001111111010100101011111101100010100111010110100100010110110011010111011111101110010000100110000110000011101011011101010100010000101110110000001000010100110101001100101001100110001101110101001011000100110110111011110110001101111010000111001001101001110010010011001111101010000001011000000101011010001000101110101000110101100100101111101011001011011100010000100011100011110100111100010000010001011001111101110110011100100000101010000011001101000010111000100001101011011010000011111011111011001011001101100101101000000011100100001100011011011111110010011111010111001000101001001000100101000000101000001010111001001011000011001100101001110001110001111101100110110001110011010001100111111100010000101001000100110010100010111011101011111011110111011001000100000011011110101111100000101000011101110000110100110000101011110100011011111010010101111011000000100001111111100001000111100000100110001010011100101110001101101001100010000100111101101000010111001101000100110011011110111101011011011010111100010011110101100010001110110011011111001101111011000011111000010010000001000010100101111110001000001110010111011110011110111001011110010010010011111100100111010011011010000110001110100001100100010111110001001110111011111010000010100111100101010101011110000100110111101101101111101101011001010100100100011010101100101100011111101100011111100100000100111101111101001000001000001001011110000110111110100100011001011111111000110010101011111111010101101011000010010010110000010100110111010100000100010000010110010110010100101000101111000100100010001011111010100100110001001000111101100101100000110000001010110110110110010010011100100110100110000111011100001111110000010100110011110001010010010111011010010101001100111111010001011010111000110111111100001001010110111001111011100010010001001100110100110100110011110001011101000110111101111111110110010100011001111010100011110001101110100111111101111111001101111010001010111111011010001001010011000000000111011101110100111110101011101010100010000010100001100010110101011100001101000001001100000111101111010100100100110010100100101000011010101001111011001011011000000100111101110101011001000111000101110000110100101101111111110100101111000111000100010010101011111010000110011011101100101100111101100110010110010001000010011110110110000101111001100111111100111100101100111011001010111110101101100100101101111100001110000011000111000001100101100110101001111110001110100101111100110101101010010001011110001001101001000010101001010000110111011000010111010110110001011010000011001001100101011101011010011010111001011000011010100001100110101010011010001011001011111100100101000100100100100101000010001000110101000111100000111001100011101111101000011110110001011110110010010111110001110110101100001111100110000010100010111110100001101010101100101100101110000111000000101001010101110100010010101110010000100111110110000110101100111001010010010110111100101001010011000110100010001111110111000000100000101011111010001101000110110000010111110111110101010000110100001010001001011011000001011101010010011011010111110011100001100001000110001100001100111101101010010110111000000010010010110111010000010010010011100001100111101100001000110100101001011011101100010111011100011011011110111001011010010111011110111101010001000010000010001110110011100001101001110111101000111100000011001011011111011111011101100011001010001111001100111110011001010111110000111101110000011100110000101011010010000110111000100110100111110001100110100110010000110011010000110010000000000110010011111100000000111011011110000111000111100111111011000111100100001110101101010000111111101100011001111100010101011010010100101010011010000101001000100101110111111010011101111111101010011111011010110101100000110100001110110001010000110010000010001010101000010010010111010111111011111011111111010110101010000000000111111110000011101110110111100111001101101110111100101100101011100001010001100001110001101010101001100001000111001011111100000110101110011010110111100111010000000001110111000101000001111001100010010000111011000001111011000000000010001001101000001011010100111001000010110100011011100110111100010011010011000011001011101000100100001111111110111010001110001000100010101101010010001101110110000110101010111001100111111010000001110111000111011010100101111111001110010010011111000011110011110001111000101101101101111000001110101101001101011111010010100011100000000001110010100010011111000111100110100001111001011000001100000010101010010001110111001010101011110111110110101100010000000010101100011001100010001010100110111100001101001100100111011100101110111101100110110100111100011011110100001110000011011110001101110000110100110101000101110101010100010111001001000100110111111110000100011011110000100010110100100100011100100111001100000100101101101101000011011010001000010100011010011000011110111011101010111100011000000001011010000010100111111001011001100111000110001101100001101101000100011111101110010110000110010001001011010101111111110001001110001111000110000001110101111001101000001111010110111111001111010100100110110000001010001101011110001100111100111011111101000111001110001110011100100110111011000111011010101000010111000110001101001001011001000000110111100001010011011101001010101001101010111101111100001100011001100110010011011110010000111010001100110100011101001111101010101010000000111100010110010111010101000011101111100110000001001111111111010011100110000001011110110011101011101100000100000011000010001000001100011001010100111100001111011011100010000001010000001011000100001000101000001000100011100111000011101000111011011110000100000001010001001110000110101011001111000011001000110011100101100100111010001110011010111010101100010110010011110001101110100000100111000001010011011011010111010101100111001000100111110001110110111100110111101110011110000111110000010011011000011101100101101110011101001101001110110000000000110001000111110101000100011100100111100001110010010110101000110111001001101001100011011000000000101101010001001000010111100110111111011101101001010000000000001110000011100101011101000111010111111010001100000110011101100001110011111010110001001111110010100000001100110001010110011000101101000111010001010100010010110100100100101010111000111011011110001110110111101101100101011110111011001000101011000111001000101011011111001001101111111111011101010000010010011011111100000010100001001111001001101100001010011001100010101111100111001000000100001100111011011010011011000111101011100110000001110110000000110110101110001100100100101111000111111001101100110111110011001010100011110111001001001011000010100101001011001000110011111100010000001111000110001001111010000001011000001100110110110111001101011111010110011010001010000011101100011000100001000011111110100001011111001011010010110101010010111111111101000000101100001010100000110100010011001010011001011011100000010110001100010111011111001111100101101000111001001000010101101110111101101110001001000100001011011101101110111111001101001101100001110100001010001000101000001111000011010101100111110000110010111001001101110001110010000111100001100011111000101111000011000010110111000110111011100100 +1010011001011010100001000010100001111001010000001001010101001111010011111010101110101000100100000011011000100111111001011000111101100000110100110110001100101110100100100101011010010110011111111100000000000111000111000100010001011001101011000001001100011111010100000010100100011111000111101011000011000110111000110110000011010111011101001011000010010011100101100011101011100100001000110011000110011111101101010100010101000001100101110100011000101010010111011011001011101011011010110100110011010000001001010100101011000010110001000100011010110111111010001100100100100000011111101010001010001010101100100100101110000111111011011000000111111000101100110111111101000001111000110001110001110000011111110010111001011101111001101001010000010001010111111101111011010001010001011010011111110000000100110101000110111110011000110011111111111101001101101011000100000111010001000100010000111100101101001011111001100100010000100000100100010010001101001110000000110111110101110100111111001011001110101110110101110101000011110011011000010000011011010110101110101100010111011110101011111011101000101011000110000100000111101001011001110110100111110111011000011000110101001001001000001000011001001101101010000001111011000100011010101010100011001010110000100100001101100110011111110011010110010111001011111101001000001011010000101000010101100001100001010000110011110001111011100110000111001101000100000101111110100011101110010110010000110001001001011011111011110101010000010001010100011110111011000111011101000000011111110010110111001111010111010011000110100100111100011111011011011001000000011111111011010010101011100101001111000001111000101111010011100110111010011001110100011001010000010110110100101011110100110011101101010001110111111000010011011000101000101110000110011011011011111101111100000000010---------101000011011101000011110101101001010101110111100001010101110100000011111001100011010110011010010001100001111011001111111011100100001000010100111111000001011100110011110010110000010001111010111111110101000111010100011101001010001000010101011010101111010101011010110111111001010111100100101101010011000011111011100000011010000011100011101001001110100001100000110111010111001100011110011001100010111011000100111111111101011110101010010111101100000111100110001110000110111101010100101000011111001000000110010000110001101011101010011011100000110101010000011010111111001110111000110100101100000001111111000011011001111110011100000111101001111100100111001110110000011111001010100101111011010111111000011111101011010110011101110011101110100110101010010110110110100011110000101100011001010100101011010101100100010000010101001010100111100110110011000101100110111111000001000001000110001010110010110110001100110010001010000101010101001011001101100000100010111001010100110010011101111010000000000010101001011011100011111010010110100101101100110101111111001110101000001100100001111010001001110110011011101101110010111010101001011101011110111110001100010111101101101010101101101111010101010100111111111010010000111101010010011111101001011101110110111001011010010000110100011011101111110011001010111011110101001010100110010110101000101000011100111011111111001111110011001000101010101000110111000011000100001000001001110010111110100100011001011110001011100111111001101011101010110100101100110111000000010011011011011111100000100011001100110111110110101100001001101101111100100101101110101101101110010100011100100111110001011000001111100011011010101010101100110100011011100100001000100100011001110011000111110011011000001110111011000101000100111110111111100110001100011011100001001000001001101100000010011001100110011111100000111111101111010000110001011110110000010010110011111011111001100101110000000000011111011111000000111100001111011001010000110110010100110001111001001011100001101011001011000101011001000010000101100110010000000110011010111001001111011001001110100001010101010010111111101110100011101100011110100111000111001000010011011111101100010011101111110100110110111011110001010111111010101000000110000011100011111101011001100001001000010010100111010000011011110100110010001101101001000110010011010011100111110111101000010011000101100010000101001010011100110111101011110000111011110110100001001100001010011111010000011100110100001111010000101111010001011100100001001000011001000000000111100000101110001001001100110101010101100001110110111010001001100111000101001111100101001011101110101000100001010100111010101011111100000101111000010110011100000101111101101110101011011101101001000110000101011100001000001110101110011010000001101111101100011101000101110100001110010000101010101100110100000101110001001101111000011111011000110000100011110110010011010101101011110100100000010000111100011100101010011101000001010101100100000111111110101011111010001110011000111101001100101000111001100101101000001101110011000000000101110010101100101010000111110110110000000100111011001110100110000100110010101111101100101001011101100011110111111100111100011000111011010010101111010010110100110011000110101010011100111011110111011011011111010010000011100011110110110111101011001111111000100010111010101011100000101001010101001001101110000011111001010010110011010100100111111001100010100101000111101010011011011110111001011111100101010110101010000010100010010011010101001011000111010111010010011011100100000000111011001011110110111001001010001101111100110011011111100000011001001011101110111100100001000111111011010110010001001001100111111001111011111100000110110111000001111001011100111100110111001100111000001001111111010111000010001100111010110101010011011110100110010010001111110010011011000101001110010101000100000100001110111000001001101101001001111111110000011110010111100110001010010011110100001101101100011111011110001101010100010101010011110011001011000011111001010100111111011111011101101110000001100101001010000010010000001011111000111000001101010001101011111011011100111111110110010110001110110101011100110000001111100110111011111011110001010110100101100001111001100100110011101010100110010010010111000100100111100011111001111001001111111000100101011110100111011100100111000011110101001010001000011010101010111110100110011101110111111001010011101011011011110111000001011010001011110110110100110000101101000110101011001100111100011111111001011111110000100111010010010100110111100101001100100011001111100010011101001001110101000010011010010011110111101101001011000111000101101101100110001000110010101100101001111100101110111011111010111101100111111001000000111110000100110010100001111000100000110010100001010110001011000001100110101001000110010101001100010000111110001010000000000111001010011001001001100110110000010011011100101010000101101110110111001010101000100001010100100011100000111110001011111011100000000100110001101100001001100101010101110111010000111010101011000110001100100011011011001110101011010110000110000111101001111010000010101001111101001100011111101111110100111100110011111001110111001010011000001000001110001001100001010000111001010000111100110001001010111110011100011110111010010110010111010010101111101010110000011001111111110101001101000101000110110001100010001100000010000011011101110011001010111010111100010010010111100111110100000100110011100011011110001100111001011000000010011111000001110010010011011101100111100011010011001001001001001010000010110010110010001011111101111000111100000011001010000100000000011100001000001001011001011001110000001000110111011100010010101111011011101001100001101101101110000000111111101011110110101100010011011111010100101011110001000111101001000010010100111110100100011111000100100111110110101010011111100000000101000011001101111110111110011111111011100010000101000010111001110100101110000100101100011100010001101001001011111010110101110001110110110110101100011011111111001010010101110001101000100111011011000000101101101101110111010110001000101101010001011100101001101011101011001011101000010101100100000100101010110101000000000110111100011010001110011001001011000010010000000101011100110011110010111110011100100011011110011011100111100000011011011110000011001111000101010001110110100101001111100001101110100011001000000000101110001001010011101111010110100010010011000011101000001111110000100111101100001011100111100110100110100000011100101001000101101101100111011000110010001101100001010100111010000110100111010001000000001010100000100111111001100110110011000001111000010111101101001001110101111101000101100101000100010011101110110111010011001100000000001100110001010100000001001000100011101101111001010110111101101111111011100000110110111111001011111010000100101110100110111101111111100110111100101001011110011101110100110000100111110101011011000101011011100100000110001101101011100001101110111111001101111111011101001101010110011110000011000111000101000111101010110101101001110011101101110010000000111110010010001110101100110000000101001010100111011110001100001010111111001111001001100101000010101010001000100001011010111111101101001101010100101110100100100111101110011101011110101010001011000001000000110010101010101101111000010110111101011111011101101101110111101001111001100010011111110011010101101000011111010010100010100110001111101100000100001001001101011101110110111001001100101000001100100111101000101000101111101000000010111011101000110011110111011011101000011001011110110100110101000010111000110010110101001101000011100000011010010001111010111110011101101101010000111010111001111100110001111011010100011010111011001001010111011000100001101110000011000010011101010111011010001001100000000011010011111111110000111000111101011100001100111001111001000110101001111111111110000100110111100010011001100110100101011001110110100110011011010101001000101100001100110110001001011000101001011000111110110001010110011101000010111111000010110110010011101101011101011011010011111100101011001111100111001100111011010100010011010111100011111001110111101010010001110100100010001100100010001010011010000011110111111001110101010011110001010101101110011111001101111001111000111111000011111111101001011111001010000111010101110110110000011110100011011100000111010010111001100000111001100001000100001110111010100010011011101011011010110110101101010111010100100000000010101101100101101000111010110110110000000011100011101010000100000011100101010110110100011001001001011100110111001010011001101000111110000111001110001101110010100001100100111100100001110001101110010110111110111000100001010100100110110111111100111010101100000110001010000111101100101100011110111000010101011001110001000010101100101111101000101111111010000100100110010111110110101100000001000011001111101110110110110101001010000101101110110100001101110000001101001001101100000110011101100010011000001000100110110100111001010001100010010010100110011011100111011010011010011011111100001110100001111110110000001110110110001000110011000111110011011000110111101100100000100101110011001101101011010100001010111011101001001001001110011000001000111110000001001010011011000111110110110010010000000011111100000100111001110111010011100000000000010111000100100011110111110100110000010011010001011111101101010000101110101010010010010010100011100001110010010110000101111100001011100011110000101000010010110110001010000101011110110100000000000001010110001010011000000101010101001110000011001100111010011110010101001100110010101 +0011101100010011100000010000111100001101011001000111000111011110010110110011001001010001010010110101001000101001111010000100100110111001001110001111101000100111011101110010101001101010011111001100101000101011001011001001100110010010111100101101011011010000010001010101000100110001011100110001010110011001110110000001110101100011100000001100000100000010111111111000101111100001111110010001110111111101011110101001101000111011010000010001101110110111001010101101111101010110001100000100000101100011011001110100001111011001110100010111000010111010100000011100101010011011001110000010110111001000100011011111000011011011100010011011011001100010101001001011110010100000100001101010111011011001110001001010111011010111101000010110010011111111010110001001000111001111000010100000100011011111100000111111110001011111010010100111000110011110101011101001111011101110100110100011010110001101011010001000011100111010110101101001010100111111101100100111011110010101011010111111001110000000010010011101010001000010000111111100111100100100100110100011000111000100011101101011111001110001000100010000111011110010101111000110111111010001100010111010100010101000111001111001111001101101111011110001001000011110111010111111000110001011111111100100010011000011110110100100101101000100010110100101110010100000110110100000011110110010101111001110011011000000001010111100010100100001001110101010110111111100001011101100010000000001110110000000011000011111111011101111101110111110001000001010000001000111111001011110110110101000111100001000100001010001110111001100010011001010100000011011001000100000110010110010000011100111011010101011001111000000101101011111000010000100011000001000000111111011001001000111101000111100110000011111011001011011010110101001111010011101000011100000110001111011101110010111010---------001111000111111110010101101111111101101110000100101001110000011001110010101010010011100111001010111111110001111011100111101001010010101011101010001010001001110011110010110001110000110011000101001101111010000110011111110010111011001111011011010011101001000000110001000011000001100001101101011100111000101101001100111000011100000111101111110000010001011000111001001100000000101110100001111000101001000001000010101101110111101100011011011001000100001000100010110000010001000000010000010111111011001010011111011001100011011001101100110010010100010010000100111101001110100010100000001111110101110001011001011011100100000011001001101110000111100000100010011010001111100101111010101101100101001110100101110100110000100111110000110100111100110001010111110111011010011001110110110001100101100011001011100011101110111100010011101111000111010000101101000001100101101011000111101010101110011100000010101101110000110001111111001011111101110001011010010001101001111111010111110101101110000010011111001111111000010111110101000010010101000101011010010101010001001010100000011001111000100100101010010001001000001010100110101001011110111101010111110111110001011010100101000100010010001101100001001011011100010000100011110000011110111011101111011000000001111110101001101111101010000011010111110010001001000001001101101110001111101111010100010110111011001010001100111000110111011011110100111101001001001101010000110101001000001010011010001100010010000000001010001000010100010101000000111100110001110011000001111000100111001000011000001100100101110010000110011010111110000111011000011110111011111011000001101101110111010011110001011111001011100001010111010000011011111010101000111011011111111111011101100110001110110101011101000011110100111000110001000010011011010100100111010101010111101001000110010000000001000100011010010000111010000110000101011100000001000101000000000110010110011011101100011001011100010100001101000100100011111111001010101001100101011101011010011111100110110010101001111000000000011001010010001110111101011011111001110100011000110101010100000010010001011110111100100111110000110010101010011001101110101001111010111111111100101011111011100001111110000110111011011010110111111110101011101011010010100000000110110111100010110000110010000110001011101001000001110110010011010110000001000000010100010100110111110110111000011111000100110100101110000010101000011101100000000111011011110001001110001101010110110000011000000111100011001010100110101110101000000111101000010011100011110101111001001000011010110111011011000110011011101010110001110101100000110101010010101001101111100000000110101011011010011101111010011101000110111111001111011110101110011001000000111111000111000101001111011000110000100111011110100100001101111011100111111011011001111000011110111101000001011011010010111110000100011010011011110000000011010010100010001010001111001100101110110110100011010010000000010001001111101010010101010000110000001010010010101010011010000001101111100001111001100000111111010011011010001111100011110100110011110001100101101101101001000111011010110101111101100011101011011100111001100111101000111011001110001001101000111100101100110110010011000100011101001110111100000001010001110110000110000100011010010000001110101101101000111101001111001010110111111000010000111111100101011111001100101011001010011000010011110101101110011010100100100001110111000111111111111011110101010010001111110011110010101110000101011111000000100111001101110011110011101001010101011010000011101000100111000000010011011101100011100000100100011001101110111010111111010110010010010110111101101100001111000100001000101000110101100110101000100101010100000000110001101001000101110001101000101010001000011011000010111100110000000101111010111000101011010010000000111010101110100101000101010111011110100011001001011101110100011000001001100001000011110110001101000010110100100011001010001110000001110101100111000001100011101100111101001111001101011011010010101110101100101011011011010011011010101000101000001111111100000100101011001010101100101111000110000011000010110001100111101110101001111110110110110010010000001101001010100001101010010001000110101001101110001000101100111011010110000100100011011011110110101110101111110100110011000011011011100101010100101111100110000001001110001000101100000110011110011010000011010110110100011110101111011101100100101011011000000001001110110011011000010111001101010111100010000101011001101101101111101100000100111011000100111101010001111101111111111110001000000111010010010111111100100010101001100001001001010011101110010111110110000110011100010110110000001011111111011011011010110100000101111111111100101001011010000010110011111111100101101111101011110011111000110100011101010011111111100100100001010010000011111000001000000111011001101011110101011001110000110000101000011000001011010001101000110110001001101011001001100011101010101010010011101011000100000111011101011011100000111111011111100100110000110110110111101101101110000000000010000101010110011110010011000011100011111100110001110101000001110011101110001100111000001011110101101111001001011101010000100100000111011000001110110000110000011111011010011001010010101001100011000110100010000010000010101000110011000000101010001010111010000011110110110101110001011011110111101010010000101111001110011010101111111110011101001110111000001001000011001001000010001101000000110000101010100100010010111010100101010001100110001101110001001010011011010110000011110111011010010100110011011110110111011110110101000010100101100001100010110001111101010110110100011111011101010110011100100001110111100000100100100101100000100101111010111011001001100001101011111101000110101100011011010110100100000011101101011000010111101110100100000000100001001011001001011100000101111100000001100001001101011001100111001001010010101011001111101000001011011011110100111011100110010111110011101101001101100100010111110100111100100010000110110010100101110110000111100101100001011010000100110011111100111101100100101101000010010010001111011101101111111001001111000010101000001100111011111110111000110111111101010100010111000101100101011110101100000101001111110110001010100011011101010010101001011000100001011000100101100010010111011001110001010101010001101100000001000101000001010011000101011010001101001110111111101111111011010110011010101000111000000010010101101111001010010011111110010110110111011010111101001100110001000010100001101011101101101001110011100001101001110000100011011011010110111010011100100010001000110100011011000101011100101000010111001001111101010000001100111110010100001000110000100010100000100110000001001111101110001111001010011011011110101111100011000000101100101000110110111110111001001010110110001011110011110111110100001000001000100000000010001110100101100010001010100101010101110110101001101101100101010101001101110000001111010011001100101110111110010011011000011110110001111011110010001110101001011000101101011110010000111011011100111010001001111001010100101011000011101101110001010011101010101000000100111110000000001011111010100101111001101010011111010100010011001110110000100001100101010010100110010011000100101100110000100011000000011101000111101010001001000001110101010000111111000110101111111100010101001010110111000101000000111010111101110101001100010000011001101000111111010100000010110000111000101111001110010001110110000001110011100010001011000010000010010010100011111111101111001111001100010101101101001110001111000000000011111110111000110011110101001001111001000100101000111100010110100110110110101011000010111111010000101010101011111010101111000111111101010111101010001010000100011111011110000010111101010110110110001000011101111110010000001100001000011101001110010111011001001101000011101110011100111100100000101000101011000011000011001010011100110110110011010000110110010000011010100111001111100001100101000001000111001011011101101000001001010001000001111110000000011101100010010000001010100111111110001100000010110111110010011100000000111010110011101010110010011001000000101101100000101111000010110110000101100000111001110100010010011001001110101111101101111100110111000101100100101110100000111000111101100101111100111001101001100111110111000101101110001011011100011001001110110101110011010011111010101100101100011100101001100010111111111100000000111100010000011000011000011011000100001100000110111101000100010110110110100000011011111011111010001101101110110110100100000001010000111110000010110001001000000011001001010011110110011010010000011100100000001111111100110010111000011111100111110001000011001110110001100100100000111110111110110001001011111000000110001000010010110000001101110111110100001100000000111110010100001010101111110110110000000111000010011011010101000000000001000101001011100100000110100010101111000110111011010110100010000000000111011111011100110100010010001101001001001011110011100101000001011111110010011110011010011000011100101000010010001000011110001011101100100110000001010111101111011001011011001000100100111010001000100011100110000110010000101000000000000001011011010010100000101110001111101001011101000000001100011100000100000110100110010000011101001000101100001101001000111011000110001100011100000110101010000100111100111001101111001001101110110100010010010110111110101000001111101101011110001111000001111111101010000010101011101001100011000010001100100011110100110000010010001010010010111111001101100000001100100100010001111010011001010101111110010001111101000110110001011010101000111110111111000111000111100011101011 +1000111111011011111101011001110001101000111101011011111011100100110000110011110110010100110110000011001000111011011101001101010100010110101001011111110101101101111010011010111000111100111101110101101101111010011010111010001100000000100101010111100101000100000110010011100001001011100001001101001000010110101011110010110110111100111001011110001100001110001011110110010011101010110001011011001101000010011100000000101000110110101100100101110101011000110100001111010111010000011000000000100111100001101111100010001100000011100000100001001110100111010100010101000010011000100011001101110101010100011100100110111100100000100001101000000111000001001101111101101010101110111111110011111110100001111111101011010001101101011000011001100101011000000011101101000011101010101100100111011110001000011100110010110010110110000111001101100101101110111110110101010101101001110100110011010100000101011000010111111000000010100100001001100100111011100110001101110100100110110101101000100101100000000101111111000010011100010100111101001011001000000100000011011000011010010111110110011110100000101000000010110011011110100010110101100010101110110101000100110101110001001001101110101111101010111110001111111001011100111100101010000011111101100111001001101110110101100001001010011001110101111001101001101011100000111101000101101100011110100111110101001110101111011111101100010100111110100101010011101001000010000110000000110010101011111111001110001111101010010000011110101001010101101010011111010000001110001101011100000100100111000010010011101111110101101000011000111001111000110101101010101001100101000100100100001100011110010000000000011101101010000010010111010110010100000101111101001100010111110011110110000101001100111100101001010101110001001100011001100100001111111000011110110001111011001101110111000---------100110111000000111001100011001001000111001111111101000111010010111010110010110101010110001000001001110101011001000010011001000001010111000101100000010011011111010110101011110110011011000110000001101101101010100001001100111100111011111000011001001101011000111010100110001110000010001001001100010101110011011111000101111110000001010001000101000100000110110011001111000100111111100110011110100100101010000000110110100010001010101000011110001010011111011111011110111101011101001101101101010101101001100100100101011101101011000110101000010111011111010011011101111000010000100111010010010011101101100001011101000101110110100011001100010001101011011001001010110010101000000111111111000111010001110100011010011101011001100101010101001001010110101001001101101010100011001010111111110001110101010011101011010001011011111101010010111110000011110001000011111000100100000111000010111101011111100111101110011111011110101011001011110011001110001111100010100011001010010111010101011011001100100011010100010100000010101000110111111011111100000011001111110010001100101011110100110111101010100000011111110111110100100100001111010101001111000000110100001100010101100011000110000100100010100010010101011110000110000101111100100101001011000000011110100001011011011000111000000010010111111110111111101001101010101000001111000000001110101000101001101100011011110100011010011000100100011100110000000100001111011111100111000110111001101000010110001000011011010001000101010011000010010001100101010011011000011111010001001010010001100111101110000010101111001011010110000011111000101101001010000111100001000100100000001011011010111100110110001101010011111001001000010011000001010101000000011001011100001111101110100001111100010010100011010110011000100111011011110010101110101001011011001100101000011000100100111100111111011011111010100010010010001001011010011010101101100100111111100100011011011101110101010111000000101000110011000000000001010111100100110000001011110000011111011001111111011010010111111010001001001110010110111110010111100111110101101110010000100001010010111010010110111010101101100000011111100000100010101000110100111010011101110001101100010110110111001100011001100011011001111001101100011001000011011111111010111101001110111001111001001011100101010001001010010101100010111010000101100010111011011101001001100000001111110100101111000101110110000010110011000100101010101110111001101000001110001000010010110100010100010000111111011010101000010001010011000100111011110111101011001000110000010100010011101100101101100001111111110101101101101100010100100100000100111000001000100111000110011110111001111101101011010000011000101100001010101100010110110110001000110100010100001110101100011010010110000110111000001000000011110010111111100111101100100111110110110000101110100111010000111111101011001101111111011110000010110101110110100110110110000101111110111000101100100100110101100011100100010011010010101111111100100110001001010100100110111111011011000011000000100010100100110010011101000110101000001111110111010001000000111010001000001101111000001011101100100111000000100100110010111011011001100001011010110000110101010011011001001011010010100010010011100101111110011101100111110001000100100011101110010001111010111010001100011011011011011100000101000110111101101111001001101010101100110101110000010000110111010010000000001101100011000011101011110101011010011100001010001101000110010111000011111111101111110011000110101101001001010000001001100001110100010011010100101100010100101010001000101000000110110100101111100011100000111000101010011000101101100010111101000000111010101101101110011101101101110111000101001111001001011001010101100001110000101100100010000110011101010100001110110111011100010100101000011101110001100110110101000010010101100101010110011101001111110100111101111001000011101100000011011101111001010011001000011111110111001001101101001011101101011000001110100110000101110110000010000010111001111011100011100011001101011100000000010111001100010110110101001100001001000101111001111011101100010000111001100101110010110001110000001100010100100010011111101001110101010011101001000001100100001011001101011111111101011101101100000101000000001000111111011001111001001111011011001110100011100110101110111100101111101010100000101110000010110110000001001110100010100110010100001100110100000100110111101001010011001000011000000010001101001011110111100100010000110010110011101001000110001111010101010100001101001101010100011011111111011000011111100101101101110011010110001001011100110010110001101101111011110100110011111100100101000110100101001011101100001110111111111001100001100010010001101101100101010001000111000000110010111111011011111100010100111110010111000010000001110101101010011101111111100011110001000011100111101011111011011111111111000001101011011100011101100001101011110111010011101100010101100001001101110010111000001100001101010011110011111011101111000101111010110000010011000100000010011100000000011110111100111101011000110100001110110001111100110101101000000100110101111011110100111001100000111010111010111100101011111100000001010101011101101101100001010001000011100101000001001111001101110011010111110010000110110100101001011101001011110010100101000001111101110101101011001100101100000000111110010101001100010110111000001001111100101101001000111111010010110101011011010101111111100000100110111110001000001110010011100100111101001101111010110111110000111111001111110101100101111111010011101011000001110000110011110001001101101110011000111100111010010100010001001000000001001100111001010000111100111111010011001100101100010110000001011111000011101011101000110101010110010100000110001000110111101101000001010011011010100101100001100111111110101101001001010111110001010101000000000001001011100010000010010100011110101101100100000010100111011101111110100100000010100101110110010111010010100100011101111111011000111100101111001100100000001111010000010001000110100010001011111100111101001010011110010011001101100110001110100010010010100000101011010001101101000001110101001101001111110000000111000000100001011100101000100110001000000110111000000011001111000111010000011101000000100101100001010001010111011011110000111101001101110010011010101001101001011010000001000101001011011111111101000111010001100110111000111111010100001101010101000011010100001010110100100011100111001101010100111000110101001010011000100101000010100100111010010110010001010001011011111110101000100101111101101101000111101000001111000100101001001111110101100110101110101000100100010011100011011001010010101100011001101010011010101001111010001100100111101110001111100001011100101111010101010011001001111011010000100000000010000000000001011100010001010100100001101101101111111110110100101100011000100110110000100001010101000001010101011111111001011011001001010001001010000001000110111100001010011110110011011110010111000110001000010001000001111111010101100101000100011110001010111111101010110100001011000100101011111101000111011000110100110101110101011010100100001010111101001111001010101100010110100100110110111100111000111010000101001100001011110000110001101101110011110101011101100100100110101010110010110011101000111111111110100000100100001110111011110101010100000011010110111011001001011000010101111110001111101010011001101000000111100110111101000001000111000110011110000001011110111010001000111010101101001111100111111110000100100110110000010100011010100000011100001100101101111111000011101100110101110111001011111001101000010111011110000010111011000100011001100000010010110011110101100011110001101110110100111100111110011010111010111100010101110101101101011010000111011100000011101011100001111111001110100001010000101011010000010111000011100111100001010011011001000110101100111110101011010110110000101100100110100010011100011100011001100010111111110010100010011110001101001111100110101011101110110001110111111101111000011100100011100011011001101111101000110000111001000010100001110000101111101110110110001000001111001010010000011011000011110001110100001010010011011010000001110001000100010101001011111010011001100100100001111000001100010001101101100000000110101111010101101101110110110000000010010100001010101001101111101001111000011001101100100010101011110011010110110000100000110100000101001000010001101111101110000100001000100111001111010010001101100000100010111001101101000010110111100000111100010010100100111000100010110010111010011101110010011110000111001101001010110100001111001100111011001011111001000001000010111011111001101011100101111011110110001100100100010110001000100011000101000011011011100000111001000010000100110101011010011001110110100101010011101100111110011001001100100000111000101101001111001110000000001010011001000111001001000000101101110111100100010000111110111101011101011111010000110101010000000000111111001000111010000111110000110001111101000111010101000001111000101111111001001011011001101101000000011011001001011100010000000100100110100000110111101101110011000011010000011100010011011111000101000111000001100000001010010010001101110001001111110000011111000101000100110111010100001001010111001110011000101101111001011000001111111011000000110111100010100110110001000101100000100110000001100010011011100101110010001110101111111101000110101101011100110011110101011000010000001001010111110000111000101100000011110110100111010010010111110101010010010010000100001110110110011111111101111010100111110101001111100110010011100001001010000111111100010101111110101101000011101101111010001111001110001000100000101001110 +ls9msgs +111011011000000100100111000011010011000110010000111011101100000101010001101001100--------- +101110101111110001010101101110001110000101111110110111000000000100011010010011110--------- +100101100110010011100001110000011001110101010101011101001010001001000110000111110--------- +101101000010110110101100000111100111001110101011010110011000001010111011110011010--------- +010111101110011101011000001101000000000110010010011101110010111000011001110110001--------- +101010011111010001000101101101001110011110110001011001011000000110010100100101000--------- +010100100000010010010100111010010110100011111011100011110111101011110100100101101--------- +101111110010111011000110111010010000111011000101010110100011100001000000111010001--------- +111100111101111011010001011100001010011110101111101010110101001110100001110111000--------- +111001101100101001000110000011110011011011000000010001010111011110011101101000000--------- +ls9cwds +100111000011010011000110010000111011101100000101010001101001100---------001010001100100001110111111110000001110011111000110000011000001010110100100011001010011000011011111000111001101011111100010111011010111101110010110111100011011111101100001111011011101010101001010011000100011000100101000000111101010100101110010101111111010011100011111010011111110000011110110111111000010110000101000011100000111010010010010011111000101010110101010001011010001111 +010101101110001110000101111110110111000000000100011010010011110---------011011100100011000001011101111011011100110011000111100000011000110110001000110100110001011001110111110001000010110111110011000110000110000100010010010000101001011011111100010110011100010101111000010010100100100001011011011010001100001111010010101011011010111011101010110011011011001000110001000010101111111010000111001100101010111100101011000000111111000010000000110010101100001 +100001110000011001110101010101011101001010001001000110000111110---------101001000011111010110101001001110001101001000100111000010110110110100100001010011110001011011101100010001010010011100000110101010111000100001001010111110111010101100010011001111000001111101111011000000110010001100010100111111111101111000000000001101011011100011100100001000010011011011010111101000110100100011111101001010111010011110110010110000000100010011100010111001000011100 +101100000111100111001110101011010110011000001010111011110011010---------001100010010001111111010000110110010001101010101011001011100010011100010110111000011111001111001000001101110010000000111100001110011011000111010001000100010000000110101010101110000001011011110110101010011010110110110110011110101110100111100011100001001000001110011000111000011110101110110110010101000111111000010011010110101011010011111010011101000111010111101101111110111110101 +011000001101000000000110010010011101110010111000011001110110001---------110110000110110001110101100111000101001010010100111010000111000111010000110110111011010001011011111000111001101011100000100001111010000100100100101011011110111011000111101110001111100100000100110001111000101110001110010110110001101000100101010011111010001101100110100011100001100110010000000110011001000001001101001010001000011010010101111011011111111110111111100010110111111000 +000101101101001110011110110001011001011000000110010100100101000---------011011000000101100010001011000011101110010101110001011011100111000111111000001100010100111010101001000111011000101100001111001110110110110010001110010010001111000111111100101111010100100101111111110010010100001000010111001010100010111000110011010111010111000000011101001010111000000111000000011100001111110001000110001111110010011000001000010101101101001110101000011101110110011 +010100111010010110100011111011100011110111101011110100100101101---------011000111000011011000101100101100111101010101111000011001011110000011000010100000110110101011100000000100100100101010001101001100010111111110001010110000001000001010000000011100001101110011101000011111000110000100010101000100001110010111000000100111110001010110111101110011010110001110010111101101010100100010101111111010111100000101000101111110101010000010101101100111100101011 +000110111010010000111011000101010110100011100001000000111010001---------011011010101100110110001001111101001011010100110000110100011100000011001101101010001000000111101100100101111000001000011010010011101111011101010011010011101100100011101000101100100011001111110011011101111101010101001000011100010101100011100100111010010000011000100101001010011000111000010010111000101010110001100010010111000001110011010010001011101110100011100100111101001001101 +010001011100001010011110101111101010110101001110100001110111000---------111011101001110101001000011011100001001011101111100010111110001000010100010000110001111011001101011100000011100011000111010001000100011011010000000010110110111011111110001010110011111110111011101000110101010000010111100001100001110101011011111100101100111001100101000100101000000110101010100101010110001000000000011011101101111110101101110010101100111000110101001100001010011100 +000110000011110011011011000000010001010111011110011101101000000---------101000110001110010101100111000110101110010010100101010100110100110110011101001111001001011100110111100011111001001101011111001011101101010111110000011011111101100010101111001110100110101110110101011100101111001000100101001010100100110101110101110101000001001101011000101111111011011000101100000111001011001100000100110110000010010000110000101000110011101010111100100011111101100 +ls18msgs +101011001010101110101011100101101000011010101011110101011110001000101011001111101000110110100111100011010111000001100000000001111001000011111000111111101011011011110101001--------- +110100111001010010111101011111111111100110111000010000111100110101011010100011111001111000110111001011101001001111110001101011001000100111101101011100100010101110100001011--------- +110010101010001001010110100101110111011010110011011000101000001100111100110001011101010001000111010111011000010011110011000101010111010111010111111101011111110000111000111--------- +110101101010001100001111101100101110101101000010100111110111110111110010111100011110011011111001110001010110001000101011111001101011001101110110001110111111001110110001100--------- +110111100000001000011010010000100110000011010001001001010011110010000011110111011101111101100010111001000011001110010101101001111101011100000011111100010010100100011101100--------- +111010000101000100011010101111001111011011110110011011011000110010011110000001001111000001100110101100011100010110001110111001101110010010001100000011110011011010101011101--------- +110111100001000110111100011100111100111010000011110100101011111101011110000100000101111100110110000000101011111011011010001101011111000000000100001011100100010000110001100--------- +110111101000000010111110110001101011010010010100011100000011001100011101110111110001001101011111010110101010000110000110001110000100010111110110010001010000011010010111101--------- +111001111010000100111000111001011111101010111110010010010010010110010101001010010010001010000000000010110000001101100011100000110001100000111000000101010011001100011100101--------- +100001000011110010001101101000001001101000110000110100000000001101110111000001111101100101010110010001101111110000001001111011000010000001010010110000100000100010110011101--------- +ls18cwds +011010101011110101011110001000101011001111101000110110100111100011010111000001100000000001111001000011111000111111101011011011110101001---------000011011010110111100100101110000001001101100011010100011111100010011111100011100011110000001001101001111110100101000000001101100110001101100111101100110110110011101000011001110111011010000110101110010100100111011101111111100100111101000111100000110100010010100000010010010101011001010000000101100100110001001101100010110000001011101101101001100010001100001110101100001000010111111000110101111110000000010000110010110101110111001000000011000100011011110110010110000110011001011001001010011101000110001101011001101100111000000100110001001001011011101110001111101000011101101010001111101100101011010000111000110000110010100010011001101011101011010110000111101011011010001011100111111011100111101111100111110111101001011111110010011111010110001010000100010111 +100110111000010000111100110101011010100011111001111000110111001011101001001111110001101011001000100111101101011100100010101110100001011---------111000110011101111001100100110110111100111100000110111101101011110110111011111001001111111001000100001010001011101000000000001010001110010101101101011011101100110101010100010101000101001011000000000110100011100111011000111000011001100100101100100001111010011010011011011100100011101010110010001010100000011010011111111000101111011101001001000010100101101000010100010001111000000111011011010111101000101001111011001111101001000111011000111111101010101001110101011110010000010101010101111111111011010001110110100001100000010000001010100101110100100101101111011010000100101001000000011000110001010000110100111000000110110101010000111001111110010100001001100011111010100010010100100101111111110000000101011100100000000001111111110011010100111010010001011010100 +011010110011011000101000001100111100110001011101010001000111010111011000010011110011000101010111010111010111111101011111110000111000111---------110111001010001010111011100011001010011110111100000001011110111101000010011000100010111101011001100101010010101011110011110100000001101001101000110001110001001100000011101111010011000101011001101111000101101111110001111001110001000000011001100101011001000011111010110000110111100011001000110101111010100001000000111010000100011000011100000000101100100011010111011010111111011100100110111001100011100101111101101101100011101110011000000100010010100011110001101000011101001001001010010001100010110001101000000010110101011110101110110000000111001101011000100110010011100000100000001011111111000100010000111100101010100000010100110000010101101101101010011000100011001010101111100001100111011011111000001101001110001011001000011111010010110010101100010011011011 +101101000010100111110111110111110010111100011110011011111001110001010110001000101011111001101011001101110110001110111111001110110001100---------010011111101010111010101111100110101000110111111110111101110100111011101101100001101011100100101001111110010100011010110110010111101000110001100001101001000111011100001010011010110100100001000100011100010111110111000000100111000010000010111110101111001011111000101000000110011001111010010011100000000100100101001111111100111100010001100100101100001010001111001110101111111010001100111000000011100001101001011000011111011110110011100101100110000110001011100011111111101010101110000101000100111111001011110100000000101001110101000101110010011001100011001111000001001100101110000001100110001111000010110111110011110110011100111111010101000010100011101000110100101000101000000110011010001011010111100100011101101011001111111111000110011100100101110101010111110 +000011010001001001010011110010000011110111011101111101100010111001000011001110010101101001111101011100000011111100010010100100011101100---------101111101001001001001001110010011111010001111000000000101000100001011100001001100000111110000111001110010111110011101010000111110000011000101101111010110100000110110010111111110000100010111010000010010110111011011010000111010010101000101000100100100000011010100100011101011111101111010011100001101010100111100011111001111101110111000010011110111101010011111100100000110011101011000110110001110010001011011001100101001100111100101001110111011101100011010110011100110100010010110110001010001011111100100101111100000111101101111011101010000001001011010011110111111011001000101011011010111110100001101011101111000001111110011100011010111111000100111111111011101001111101110000010110101101011111101011100010001111110000000000010010110011110001010100001111110010 +011011110110011011011000110010011110000001001111000001100110101100011100010110001110111001101110010010001100000011110011011010101011101---------110001011111010000110110001010110010110101010001000001011010001000100011111100111010110110011101001111001110110010011011101110001101010100110000101000100000111000011000010100110001001000001110100101110101010100111111000111101111101011001000001010011011010100001100001001001110001111110000100111110101000101011111111001010010000011000101101111010110010111000111100010001100010101101110001010001000101100110100010100101101100101010111111001010100000000001011110000100110010100101101100010100111100001101001010101011111010011010100001011110110111001101100001001111010001001111011111010010110111010100100101010110011011110101010111001010000001010011010011111110101101000010110000011101111010000100000111100001101110000011010110111111111110010101101011100011100 +111010000011110100101011111101011110000100000101111100110110000000101011111011011010001101011111000000000100001011100100010000110001100---------110110011111101000100110000000001101100010000011111001010010011000110111010001001010001010010001011001111000100101011111101001001110101110001011010010111011001000000100011001001100011001001010010100011000000101011000011101001010100001001010000001110110100000111000110010001010000111000010110000000101111000111000100001010010000010110110000001000010110110110011001001110110011110110101011010011111111111101000000110111001100001111100111111010000010110011011011010101011000000010001001001101110110001110100001111101010111110001001110101100111100010110110110001011101010111000000010001011111101101000111011101101100110000000110011011111001000110010000011101100000011001110110110010110001001001011001101000101010000111001110011000011001110011100101000111000111 +010010010100011100000011001100011101110111110001001101011111010110101010000110000110001110000100010111110110010001010000011010010111101---------000111010111101010110111011000001011110100000101111000101000110001111100000111010010001000111111001010110011111001001111010100011101000011101111111111001101010011110111010101101110001000101101000010001001100010111111000111111111000111111000011110100111011010010011101000001111100101111000111110100010101010000110101001010111011011010000011111100001001111000000111000100010111010101010110110010001101010101101111001101110111110001111111111101001010111101011110011110001000100110000010010100110001110110001011000110110101101110010011110000000000010100011010101111111111110011000011110110111001001101001001010111110010101011101000101011111100101001011001000010100100011001100010011111100110100100110101010010100001011110101100110011011110111010000000001001101 +101010111110010010010010010110010101001010010010001010000000000010110000001101100011100000110001100000111000000101010011001100011100101---------001110010101010111100110111110001011101010110000000000111111011110111000011111101100110000111110000101011100101100001001000110000110101110001001111011110101101010100100010110000010101101011111100010010111110001111011110101001011100001111111111100001011101111100011110100000111011100010100111101000000011000101111101011001100010011111101110100101001011100011010001001111010111101101110101010010010000110101011110101111111000110001100100001100100000111110001101000010011011001011000101110110001110000101100100100100111000010010000011101100111110001010000110001010100000001011110000110111110110000101011111000111010001101001101100011010110101110100101011101100010100111010111010101111111111100001110000100101011110110111110011010000111011010001010000100101111 +101000110000110100000000001101110111000001111101100101010110010001101111110000001001111011000010000001010010110000100000100010110011101---------000010101011000110101010101000100100111011010001110011001111100001110011001110101110101000100111001001001011100000100001110111001111100111010100011111001001100001111010001001100100110100000110110000010010011010100111000001111111100011110000000000001000010001011010011110100100100110010111000111001110110010101001110101101011001100000011110011010000010101011001010100000111110101001000011010001111111101011100100001001000101100110010111001100000110100001001110101111000000001110100000110111011111110000101101000011110111010111100101111000001111000110010111110000110111011110101011100100100000001001101011011011100000000010011011100001010100110100000100110001100101010101000001011001001111011100101000000001111101100111000000110101101000101101011110111101001 +ls36msgs +001010001000001000010010011000011111100001100101100000011110100111111111111101011011101011000001101010101100010011110010011010110110010001010111110100011111100001011100100111101000101011110111101110100111100111111101011001000110100110010100010001110111111101011110001001001111000011000010010010000010010001000111111000000110001100100110110000000110111--------- +011000010011000000010010100101011010011000011111001011100011011110001100010100111110001100010101100001111111001100100111100011110000011110100000011001101000110100010100010101100011100011001011000110100010011010001011001011001100110101100110001010111100100010011011101011110100011000001101010011111011101001010101110010111010110111011000110011111011100--------- +100010110111010101110010011100100010010110010000111000111101001011100001101000100110000101001011110011110100111001110010000111000111101111110010111111001001101011000010001001110010000010101011111011000010111110001000000001001011011100101101001011110110010111101110011100100000010111001010010101100110110101111001110101010110111110001001011111010100010--------- +100111110001110011010101110111010010110111100010010100001110101001000001111100100110110111000011000000100010010110001101011101011100001101001100100100110000100111000011111100101111101010000010011111011101010010101101110011010100011000000111011000101100111001101010011001100001010101111011110111100101110111110100100100000101011111100000110001010011000--------- +001010100000100101000001110000010100011010111000100100001001000010111001100011001000010010010110111101110110101010111010010011100000101100101111001000010000001000001111101000001000110111010010010000000011000011010011111111010011011000001011101000011000101000011100010000110000100101000110010001101110000110011111011011001111100100000001101001110011110--------- +011111101001111010011010110100101001001111111000011111100000001100000001100011010110000110111111101110010111001010111010111000101111110111000010101000110011000010111110000101111101110001101111110010101100001100011001011110001110100001111101001010011001101100100111110011010000000011110010000000111010000110000111010111110011101110100111001111011010011--------- +101011010100101101010000110000001001110010011111000010110000100101001000101110010111101100100100011111001000011001001000111011001001010101101111010110001001000101100111011101101011000111001000110001011000110011100001011100101111001011101010101000001100000011000000100001110011100101110011010111010000110100011101011110100011111101001000100110001010001--------- +101011100100100111010100000001010101000101000011000001010001111110100111100111010111010111001100100101010011000100101111110001100110000011011111001110010000001011111101111011011000100011011100010011011101111111111001001100110101101001110110100111011000110010001101000010010010010011101100010000000000001110001010111111011111101011011111100111011000101--------- +101000111110101111111101011111100110010011011011001110010001101010101101101000100110110111001101101000111110011100010011101110101110001111011011101101101001101110011001100000110000001000001100000011101000111100101111101001100101101110110101011101110110001010101011100111100101011111010010101101010110101101110010100100010110011010001100010100111100111--------- +100110010100101111100101001110101110010110111010111010000100001001000101010110011100001011010011100010111111000101001101011101011110101100110100111110110100111111000010100101010010010001100010111011110101000010000111111101100001011111100001000010011001000101100101000100000001010110111110110101101111110110111100111100111111000010111001110111110000001--------- +ls36cwds +111101011011101011000001101010101100010011110010011010110110010001010111110100011111100001011100100111101000101011110111101110100111100111111101011001000110100110010100010001110111111101011110001001001111000011000010010010000010010001000111111000000110001100100110110000000110111---------001110111010000011111001010000111011001001110101110100000011010100110100001111111110100001000111000111010001111110110101001011110100011100101011001111101101010101011100110001111010010111000111100000011111011011100001100110010000011001001011101001000110110010110111110111110111111011011010011111011111011010010100101101010000010111100110110101100111010001001011001000011010110111011001001110010101010100110000001010111001110110010000111101001111101101100100000001110111100100101010000010000111110011001000001110001010000001000011010001100011100011111100001110001101110000011001100001011000010001111111100100001011101011100110010101001101001010010111010000001010000100010011110000101001110010101001000001000000100100011010100010001010111101101100010010111000011101111100010101001110001111010100110100001011000010111010001110100001000110000010111010101100111001111100100100001100110111010010110001000110110110001100100010010101010100011101110010111101101111010000001111000010111001000001110100100011100010000001111010110001110111111101000100110110111111101111111100101111010010011101001110101110110111101101100111101011000001111100010000001000010110111111001000100100001110110111010001111110110000000110101011111011011001011100101111111001111011000101011001001110000011101100111011011100011101001101010001111010100010101101101101110100110000000100110010001111010011011101001010011101010011010010011111101000011100000011011100111010101000111100101101100001110011010011111001010111010001100100111100010010111111110110 +010100111110001100010101100001111111001100100111100011110000011110100000011001101000110100010100010101100011100011001011000110100010011010001011001011001100110101100110001010111100100010011011101011110100011000001101010011111011101001010101110010111010110111011000110011111011100---------001101111010100001001111000111000000010101011011000001001110011011111001111001011101000000111011100001100000001110000110100111011001100111011010000100111111010101110000111010100011011111101111001111011110001111100101000111010011111100110000100100101010100100010101011110000001011000011001001011111111010001010110100101110111000111111110011111101010110010011011111001101001011100111000111000111001001110101000010000110010000101110101100001111110101001110001001001001000101100001011101111101100001000101010001000110100111011001011001000000000001010011111001110101111101000000001000111101010111010111010001110100111111100000100001100111001001000101101010011000111011010101000101101001100111000010110000101011011101100000001111100001110110001111110101001001111001110101100110010100101100000100010000010100001011000100110010011011110101111001110000010110000100110010110110010001111100110110011100001111010011011001001110000111001111000010010100000101101001110100010100101010010001101111100101000011011110010010101001111001100111100111100011111001111100001110010000011110111101000001101010000111011000011100111100010001011001000110010000000110110000010101111100100000010101001101101011111000110100011111011010111010101110011001110110101000000101011111000010001001101101000100010110111010111000010100111001100011100111001111101101110010101101000011101110011001101011000000011100010111010100100110010101101001000011000010111101100001100100101110001111111110111010001011000101000110011110100000101100001100011011111111000 +101000100110000101001011110011110100111001110010000111000111101111110010111111001001101011000010001001110010000010101011111011000010111110001000000001001011011100101101001011110110010111101110011100100000010111001010010101100110110101111001110101010110111110001001011111010100010---------000110100101101001011100111110111001111001000011111100010000100011011110101010000001111001111101100011011000110010010000111100110001100011001110011110110000111111111011010010000000101010000100101000001010111111001001001011111101101111011110111000010001110011101111000011100000011001100111111101000111000100010001101110001010001000110111110010100100111111000100010001001010001011101101010010000011010100101110110110100110110011010000000111000011100100101101110000011100001010010101001010100001010001000101000000001011001000011111101010001100111001110001010011101010000010010100000011001110001111010011110111000001000001101110010010000000010110101110111100100111000001010010001100100101000100001010101110101000010110110100111111000001100000000001110100101111001111101001100110010010110010001011001110111111001001110000010101110011100101111101110010000010000011101101000111001100011111100100100011101011111000110010011111010100000101000000001000111011011110001010010010000011011100101111101011111000100101111100010001010000101110001010111000101001101010100000111011111101111101100000000100011010010000101000101110000000011110000111010101010111100110011111111110010100100101101000101101100011101010101111000001010100011000101101010011100011001110000100000100001100001011111011110100100101000110000000101001010011000010111000000111000110111011111110110110000010010001001010011110001100110111101011111110011101001001000111101001111100001000110001100101111100001001110110111000111001100100011010101001010111010000111101 +111100100110110111000011000000100010010110001101011101011100001101001100100100110000100111000011111100101111101010000010011111011101010010101101110011010100011000000111011000101100111001101010011001100001010101111011110111100101110111110100100100000101011111100000110001010011000---------111101111011010110011111100001100001000011100100100011000110000110110110011100111000010011010011101111010101011110000111011010100100011000001001000000000010010100100101011010001101011000010001001010001111010111111110100100111011001001110001111010100000111100010000010011001100101101110000010011111011111011000011100110111000001100110011100010011010111000010110101110011101001001000110010011001010001110000010111011110011111100110000111000010111100111100010111100011110101110011101001111010011010110111011101010110101010011010110110011111010011100110101000110010011101111111101011110101001000110110100010000001100110011100010110010011010011010101001011000010100001001001010011011101100001110010000011100111011010110011011100101100011110111110010010101111101101100010100111000101010001000111000001110001011111101010001010101010111100101101111001001111111000110001100100111001111010001001100000101110101000010110000011010001100111100100111110100110010000101011100101001101110100000101010011000101110000011010110001010011101111110000110100000011010010111111010000110000010101000101100100101001100010111001101011000011100011011101100110100010001001111101110001010101010011000010001100001111000011001100011011100011101000101100110010110010011111011000011000001011100001111000010000110110001011110111111101001000000011111101000011111011110010010100011011110001110110001010101110010101101001001100110001011000100000001000010010110111011101101011010010100011111101000100101000101100111010111101101101100010000001011100101 +100011001000010010010110111101110110101010111010010011100000101100101111001000010000001000001111101000001000110111010010010000000011000011010011111111010011011000001011101000011000101000011100010000110000100101000110010001101110000110011111011011001111100100000001101001110011110---------110010100000010010010011001110011110010010010010110101000110011100101000111000111100001100010101010011110111011101011010001001001111011101010000001010101111111110001010100010010101110111111100100101110100000000011101110001110010110101101100010111000111110001111110011111111001100001101111001100101011110000001111011011010001111010000001011001110111001101010000111100011011011001010100001011000001010001001010101101111011110001011110001011000001111111010110111001011101110101100010110000011110010111100000110001101011101111010011100100001000111111111001010010100011011010100111010011110010101101011011010000011100101000101100011000110110101001100000000101001011111000001011100011000101111111010101100100001110100101011100101001000111110110101000111100100111011111011001100000000100011011011011110100110100011010010010101010110010101000000000001100010000010001010100110001011010101110101101000110011001011101011111101010111000000010001100111110000110110110010110110100011110111100000001011010101110011010110101010110000111000100011010001100010001110000111000000101100001011010011100001101011011001010110110101110010110000010101010010000011001111011010001101101010101101101100101000111110010111000100101100000101011101101100100101000100111110100100110101000011111011000100111110001100010110011000000101001110111110101000000010100010001100001001000100100110101001100000010101100100000000110011110001100010110110110001110001010001100010011111001111101001111101000010010100101000011100000110001110011110100000100111011 +100011010110000110111111101110010111001010111010111000101111110111000010101000110011000010111110000101111101110001101111110010101100001100011001011110001110100001111101001010011001101100100111110011010000000011110010000000111010000110000111010111110011101110100111001111011010011---------110000110101001110110110010101001110001110100111001110101110100010000101100010110101010101110010011000001101010001110101010011111011001110010001010000001111000101100101000010000110010010001000111111100100000010001011000110111101111101000000100110100101101011010000011111100001110100111010000010100011011110000010000001111111011110110000001010111010010000001000101101110100110110111011011010101000000000010010101001011001001010100111111010000010111000100111001101011100010011011111111101001101100010110010011100010110101100111000100011101001111101111001110111111011100111100101010010011111111111010010010111101111110111110111110101100110100110101000110001110000000000000100100110100111001001000000010000100100001101100100100011111110110110100111001001000001011000100110111011110111100111100010001110011011100010011001111110100000100000111110011111000001010000001101010111011110010100010110011010100011001000011100101000000000110010001000011011100100100110101100110100110101011100101010111011110100101000110000100111011000000000010111111011010010100010101001101110110101110001001001000110010111111001000001000011110101000011011101101010010111110010100011000010100010000001101000010000101101010110011011110001101010010001101010111010011011001010010001010011100111110100101001010001110101110000010011000110001101100111010111000010100100000110100100100100101101001000100011011110100101011110110110011111001110101111010010010000000101001001111000100110111101010111010001000110110000111011110010000000010000111001010010 +101110010111101100100100011111001000011001001000111011001001010101101111010110001001000101100111011101101011000111001000110001011000110011100001011100101111001011101010101000001100000011000000100001110011100101110011010111010000110100011101011110100011111101001000100110001010001---------000111100110011010111001110100100101111101001100010100011010010110011110011011011100011111010111110000000100000111000111100111110000100111101111010010110111010001011000100010111001000000011101110001111011110101111011010001110100110100101001010011010100111101010110111010101000010010010011101001011010110010000100111111101100100010001101001000110010001101110101100111001000000000110101101010001011101000110000101100110011011000010100100001111001110000001101101010000111011000000000011111011001111010011101101110100011000001100111111101111010001110101010010101001000001010001000010000010011111000001101100010111110000000010011100101010101111001000001011111100011111110010011111001001001001000011011011010101010101101111100010011000100000011011111000100100101100111011000110100000000100101111000101111101101100110100101110011100110010100010101000100000010111110110111011111000000011111001110111101001111011111001000011111101011011001110011011001001101110010001001100001010110101000011011001010010000010001100010010110110011010011000100101111001011011011000101111010111011010001101111000100110011110110111100111101101111100010000101001101011011000010000110000111011010101101111101011111011010100111111101101010111111000101110100110001000110011100111110110001111011000111011000100001101110001100001010101110010100101001100011101100000011101011010100110011010000101011101100001111010100100001000011101010010100011100010011011101110110000111111100110111100111010110001011010001000011101110110000000001000010001001010011 +100111010111010111001100100101010011000100101111110001100110000011011111001110010000001011111101111011011000100011011100010011011101111111111001001100110101101001110110100111011000110010001101000010010010010011101100010000000000001110001010111111011111101011011111100111011000101---------011011000011000010000000011001101010100011111101010001110100110011010011110010110101011001001011010011101111010100000101111010011111000101100100010100100110001011011110001011010000110001100111101000100111100001011100100010100110111100110001110111101000001010110011100011100100101100001011110000100101101010000011100010110111000111001110010101001101110000101101010111111111000000010011110000011010011110110000010111110101000010001111100111011001100100001000110101110001110011111101010101010001011010111101101011101001001011011101111001011101100001110000011100000010011111000101011100110110101001111101100010011111100101011111110000100011100011101110100101101110100000001100111111011110000001011110111000111110001010000101011001000001010001100011010010001001000111010000100010101100010000010100110100101101000000010010010100001101111110110010111000010110011111000001110000000111100000010111101110001101101111001001001101001100001001110010110010001101010011111110001011111010010100110101101011011101010100000100100010011101101101111001000101011100110100011011001011101001011001010011110111100100000001101110001000111001000100101101001100001110100010011111000001001011000010001001010111111011001011010010100000101000110011111111110101101100110100000111010100101001100100001100110111010101000101100000100100110001010110100101100100111001001111000010100111010110010011101001010101001011100101111101000100010111011100001111100010110001001000000111000101000101001101011111111111110110100001011001100110011100001110001110 +101000100110110111001101101000111110011100010011101110101110001111011011101101101001101110011001100000110000001000001100000011101000111100101111101001100101101110110101011101110110001010101011100111100101011111010010101101010110101101110010100100010110011010001100010100111100111---------011110001011101010110010110001111010001001011011011010111001010101000101001000001000101000100001010110101101101011110100100000111100010111000001000011001000000110101101100011100010110100100110010111101110101111000001110011111101001011011100001010010111011100011000110100001101100101000011001000000001011001011111011000100110000100111001001110011110100001001100100010011110100111010000000001101101101010101001101010100100010100100101111010000001000000110010010001000111101000011001011101001110101110000000100100010100001100000010001110101101011001111111110111110001111101100110011111000110011110000001001010111111111100011010110111101111111100101001110110011100010001000000011111111110010011111110010101010100010100000100110111101101010011001111011100111101110100001101000001111101010010110100111001010100000101110101101100000011011110001100011010000001110011001000001011101001010000101100110001011110010000000111011011000011100111111000011011111010010010101001101010110101000100010111101000010000111011100100011111101010000100101001011011101111111110101100001010101110000011001001010100010110010000000100101111000101101111101110101111101011001101100011001010111001111001001011011000101001010100111100001010100010101100001110001000000111110011111100101111100100110111100001111100010001100001011000001111110101100000100111111001010001010010101000111010111000000111100110000110000011101001101011110000011011001101010110001011100101010100001001011011001011101100101101100001001011111101001111111110101000000001101000 +010110011100001011010011100010111111000101001101011101011110101100110100111110110100111111000010100101010010010001100010111011110101000010000111111101100001011111100001000010011001000101100101000100000001010110111110110101101111110110111100111100111111000010111001110111110000001---------010011110010000011000100111001101011001100111010010111000011111100000100000100110100110000100001111100111111111101110111010000111010011101001010100101110101010011010101110011110000010010111010101001111111010100000110001000101010011100101101010010001101101001100110101111001001100000110101001011001101010011011000111111101111011110011011101001000000100001000101001100100100100100100101111111101110100000011100011101011011110110101001100001001111100010011101111110011100010011011100010101000001111100101011010010000001110110101101101100101101101011010111101010011110100000000101100110111011000001010011011010000001001001000101011111110110000110100011001100100110010001101011001111011110000001001011000110101111001001100111000100000001000010010010100101010011011101100100111001000010011001001111100110110110010011001010110001101001110100101011110010100001110111011111011001011100110101100011000011011011000100000000110110001110001100010110101111100010101101000111010001010001001000110010001101111011010011110001011110011100101101010100010011011001010111111000110001000000100001001111110110101100000011010000111111010101111110010011111110000101100001100001100010100010001001000110011011111000111101110110111110100100000010110100000010000111101100111110110110100011010101001101000110000000010010011101011000100101110001111010111101110110011010100010001100010011011011001010000000011001110100110010111010100011011110101001111111001111001001011110110001010010100010111011110110011101100000000110100000011111001010100101 +ls72msgs +110110011001010000000000110000011100001001111110011010111110010101110011100100101010110001000100111101010010000011100010001010110001011010000100101000010110100011100010000010100100101110111011111101111001001110101110010110110110000001000001100000101100000100110000110001000111011000100100001011011111010110010010000101110111001110101001001000101011011001000010010011101001100011101111110100010100011001110010100000011010111000000010111000101100010101011110110111011001001011110100000010010111100101110000100100011001001110101100110000011100110111110101001010100010000100010110001110111111111110111111110011010000011110100101010111110110100000001000011000101101100111001101100110110100101000100011100100001001000--------- +000101000111011111010000000110101100101110000000011001010111110010010000000100100001011010101100001000010111111000010001111000101001001110000001101100011000000010111110111100000111011110111011001000001010011111100111010010011001111101011100010101101011000001110101010111000001100111000011011101001111100001000111010111110110101101101101111010101111100000011010011110010010000100110111110100111111100001011000110111001010001010100101010100011010101001000101100110101100001000111111110110101101001010111001001010011000100000011111010001101010001100111100011000101110010111110100010101000010101001010101000100011001101010110010001100010001011010000010101001011010010110101011001000000000110111010011010011100001001--------- +000110111001111011111110001111010010101101101010101010011000010100001101010000000010001110000011000101110111001101000011010010011111010101011100100110001100100010101000101101000110111000111101000011011011001011001011000110000011000000101011010100100100010110110000001001101001110010000100101110101110011111000101101111000101111100101110110111010010011110101101000011101000000110110100001011100011110111010010100000001110100111001001010110100111001010000110101100000100000111000010000010000001011100000110011011011101001000110111001011110111000111001101101111001100111010001001100011100010100011010101010000110110000111111101001110000101101100101101100001111101010100000101010111000001010101000000010100000001101--------- +110100100010011101011110010111110101110101011010011010101111001111000101001000001000100111010101111000100101000011001000011110100100110101110000010111011110001011100100111100110100100101111001000001101110010100111101010101001010100100010111101011010101000101011001100001000101010001111001000000000000111111000000111110100110010011000101001110001100101000001101011101010000101000001100101110010110100100111010010111111011011000011111100001110001011001110110011101110111000000010000010011000100100001010110011110011111100110001101100011011011001101010010100100100001000010111111000011011011001111100101111000010010011100110011101001101011011010011101001000011100010101100110101010101111000111010000100011100011011--------- +000000001110000001100110001101010011000010111100011101110101111001100110001000001100011100001010110011100000110110010000011011000110011010010110000111001001011100011101010001100011101101000110100100111011111101011001011010011100101010100111001100100000100110000001100110001111001001110110001010110000011111100010111000111000100110100110011111011001010100001110110101111100100101100001101101001111111001011110110111110010100011110111001100101111011011000101011010101110100111100000000011101100110000001110110011111100000100111100110000111101001001011110010011110100101101100101010011110101001001001001011011001101000011110111001101010100010010010110000111010100010000001111000100001110101001000110110111101000011--------- +010110100011000010100110011110001010010111011001111001011001001110001000000101001011010000001110001111101000111110110100101110000110011110101000101010101010001011111101111111001011111011111110111111101101011111101001010011110010101111110001111110110100000111011101010000001011000101010101110001101101110001101111101101011100011111111110010011110101011101110011000001101001001010100001001111111110111101101011000101110111000101011111000011100110001010011000100100000101000111001111111100110100001101011110000001010011011100010011000011010111100100101100101011100011101010100011101001010110101101110011110100110000011101110110111100000001010111001101010011110000101001001111011010010100100011100001100101100111101--------- +011010001010100011100001101100000110010100100010000011101110101011111100011010010011101001100110011111000000000011100100100111100001110000110010010000101100111110100101100101101110011110100100000011101110100100000001001111111001000000100001111100011011100100010001101010010001101100011110011110001010010111110111010101100100110110100000010000010011110100111100001110000010001111101111100100111100110111010100010100101011010011010010100100011000101000111111110100111010101101011000000111000100111111010000010110101111111101011100011001000110100111100110001010000101001010011100010100000100011100001000101000011011100000100010011011010011010101001100010000101000111110010000100100010011001101101001110111111101000--------- +101110101110110001111011000111101011000100011101010110010110011101100011000001100101000000010010001001001000100101010111100111100100000110100101110110001110100110000111010110011000101010011000010010000001101110101110011111100010010111101111011011100011101000101000010000101101111111001010101001000100100100100111101011000001100111110111011011111000101010111111101010001010001111010001111101101101010111100100010111111011000001001000110000010110000111000110000011010100100001000100010010100110001001110000101001001101111001100011101001110101010101110101111011101011100100110101000110101100101000001001110011011010110101001001110111001101011010100011000110110100110100010001100001010101010101000000001001110100101--------- +011101000101100000011000000100111000110000001100011011010001010111011010100111111010100101010011101011111001100000101000110101100011001000110110011100100110010110110011001100111110110111010011101110110101111111000111010011010101010001111011101111001110010111100010111001000110101001110110110000101111010110011100111100110011101010000101010010100000001101100010001011011110010010011111011011100001111011010001101100001011000001011111111001010010110010010110011011101100001000011110110101011100100110011001001110010000100101010010000000100101111000110110001011001110101000010001011001101111010100111101000000010001101000010111110011101100100011101001011111101001001101011111010111111110000111001010011101010101110--------- +000111010100110000100100100011100011011001111001100100011101100100100100111100001100000011101111101100111101011000110011011000010100000011111000100100111110010111101001001101110101100100011011010111010010100010101101000111010011001011001000100101100111100111110010011101100100011100110110101110000110010011101111010111100001110000100101101101000101100001101111001100011001000001110001101111010101010111011110110001001011111110110000100101111101000111011100101100001001010100110110110110001001010100110111001000001110010110001111010101011000101101111100110010011011011110001010110011110111101100001110010100101001110010000100000011000110111010111011001011100000101000101110111010010111011100101111011000001100000--------- +ls72cwds +101000010110100011100010000010100100101110111011111101111001001110101110010110110110000001000001100000101100000100110000110001000111011000100100001011011111010110010010000101110111001110101001001000101011011001000010010011101001100011101111110100010100011001110010100000011010111000000010111000101100010101011110110111011001001011110100000010010111100101110000100100011001001110101100110000011100110111110101001010100010000100010110001110111111111110111111110011010000011110100101010111110110100000001000011000101101100111001101100110110100101000100011100100001001000---------011111110101101000101011101010010111010111001101010100000111100111000101011101001100000110101000011111001111001001010001010111010110010101111111011111110000100101001101010000101011010011001000111111010110000001110000010000100001111110000011111001110110111001000001111111101001111101110101111001111010010010001100010000100111110110010111011101100011100111000111001011101111111111000110001111000101100100110011100001101011001010111110101011000010011011011000111001011101101110010010110100101100000001000011010010110101111000110000011110010100100010110110000110000000010010100001001010010111001000111100011001100010100111100011101011111110010010000101010111001010000110011111111001111110110001100011000111000010101100000111001011010011110000000101111110100100111101010010011100001010001010101001001000110001000110110011101100111101100001101011011001011110000100000001011110111110011101100001010011011100101111000100110000010000011111000010011110000100010000101011100000100100100100110011001011000010100101100011010110011011110011110101100101110010010110011110101101000110011010010000010100101100011000011001100101111101111110101010011111100101010001011101010111101110010111100101011001000111010001101111111110010100101011011111011000100000011111110110000100011101110101000010000111000001101011001000111011100011011101001010001010010110011100111100101110000100000000011011000000101010111010110001110110101010100111001000100011110010111101001000110000110000111110011101101100110011011011001001000011111100110011000100111001101111010000100011010001111110000111111100010110110110011001100101111111110100101100110010001001010011000110011001111100111000011111110011000101011011100010111111101101100010100011110100101011001101101011011111110011101010001010110110011011010010010010001011011110000000000110100000111001000101010010010101111000111110100001100010111110110011111010111100011100010110000110100110000001101111100001101101110111000111010100100000100101010110001101001110000001000001110101011001010010111011100010111001001110101001100110011101000000010001000111110011001111011110110000110011100000001001110001100000110001010111010010111100000101000010011001011000000010100100010000110010000000101101000000000001111001101010101011110100000001100101010000001001001111111101100101011001000110010111000001101001001000100101100001000001101000010010101011100001111011100010110111001000010011101101001100101010101001111010111101011010000101000101100101111000110011010101111010010000100000011011001110101100011100011001011100011011011000110100101001010001001100000100000101110001000001011011100111011000111101111010000001110001110010100110100001001111010100101011110110100000110011011001111011011000101111110111000001101101100100001111010110101001010111110111110111100010111001111111010011111010010011001000110001110111111001111100010111000000100111010111000110100011110011000001010111100010011111110001110010101010011001111101100000110111110000111111100011011011001010000010011000010111001111110000101100011000111001100010010111010110 +101100011000000010111110111100000111011110111011001000001010011111100111010010011001111101011100010101101011000001110101010111000001100111000011011101001111100001000111010111110110101101101101111010101111100000011010011110010010000100110111110100111111100001011000110111001010001010100101010100011010101001000101100110101100001000111111110110101101001010111001001010011000100000011111010001101010001100111100011000101110010111110100010101000010101001010101000100011001101010110010001100010001011010000010101001011010010110101011001000000000110111010011010011100001001---------000010111110110110001101101000101001110001100101101011101010111001101011010011010010101110011011000110001101101100110010000100110011101000111100111010101100000010100001111101110110110010110100100100010110101101111010010011110011000011000010110111001001100011001000100100110111101000100011101110010011101000000001110010111001111010000110100101001010010000010010010011001111111111110100011001010110111010000011100101010011110010110100010100000111101110101100111111000110111101001011110000101011010111101111111111000001110011110110010101110001001001010001011000000010111001000101100001101010100001001101001101100000110001001001010111111110011110010100011101000010010100101000011100111000101001110101010010110110011100101011001001000111111011000100001111111000101100000111010000100011000010110000000100111101100100001110001001100011001011001001010111111110100101110111010111011010011010100001010111011010011110010011101011100000100100001110011011000110100101001000111011100100011001000011010000001000110100001111000011100101111000111001000101010111010100000001110101011111000111110111000110000000001110010110000001011110001100101111110100111111010001111010111001001101011100010111010101101010011101100101101111001011110000000001100011101010100101101110111001000100010100010001011111000001101000010101101000101010100011111011100110111000011101110000100100011000011111111001111001110101010001001111100110101110111111111000100001000110011111110000101101110000101010000011110011110011100111111001001110001110001010111000010000000000000101001101101111100110111101010011111111000101000100110010110110101001101101011100100011100100010000001111001001000011011001110010000010010000001011001010001110101101011110010001000111001011101010010110101100101011110010001110111110000110011001010010110010101101111110110010001011100010110010000100111011000011100111100110111001111110111000110100101101001111000101000110100111001010111010010001111001011011000001111101010100110001010100110010011110001111001111000100110110001110011111001000000011101011010101000001011010110011101000100101111100001101001110110001001011001101010001010101001011111111001101101101100110011111110000100001011101111000100001001010110100010101000011011101010100000001101111011010000011001101010110100111011010001111010100100100110101110001101011000011110100010100011111000101001101101001111100001011011101011001011111100101101111100110100100100111011111011100011010110101110111100101010011110101101111001001100000101110001111011110100010111000001001001111000001111001000100011111100000000101010001110000001010100000110110010000001000011111100111111011101010110010101000100000010110010000011111001100000100111100001111110001101110000100011011011001111000001010100011110001001110001000111000000011001000100011100001111011010001010001110101000111101111010011001010110011001000000010100100100001010011101100101000010010000001011000010100011100011010000011100001100101111011010000101110001001010110001101010101000000010000001010001111100001111111100110001010101110101101100001 +100110001100100010101000101101000110111000111101000011011011001011001011000110000011000000101011010100100100010110110000001001101001110010000100101110101110011111000101101111000101111100101110110111010010011110101101000011101000000110110100001011100011110111010010100000001110100111001001010110100111001010000110101100000100000111000010000010000001011100000110011011011101001000110111001011110111000111001101101111001100111010001001100011100010100011010101010000110110000111111101001110000101101100101101100001111101010100000101010111000001010101000000010100000001101---------111000111000100110101011001011010001100010111000001001000010010001011101111001000010101111101011110001101111001001110001010110110011110100101100110111100100011000101101001101010010111010111011100010000101100011010101010010101100001011010110100100010110110000101000000110011001111011101001011001000011110000110000010111001100010001111001100011110100010010100100110101010010011100001111011011000110001101111111011000001101010110011101000111100001111001101101110000100011010001111000100010000010101001110100101100011000110000010110010000100101101001010010000101100011000101011011111000111101011011100001010101100010110011101010000101101000000110101110010010001011110000111100010100100001011100011010001110110110100100101110000010111011101100100101010000000100100110111010101010101110011011011101111000101000111010100111011101010001111010110110101100001011101011100010100101011001001110100010110101010010011000011010100111011001101000110111000101100010101000100011111010010000111100011101110111111100101000111101101101101100001000110011110001001011111101011101011110101011010001111111011110001110100010101011111111100010011011000000010001001011010011011000110010101111010111000100111101111100101001100101001110010001100100101110011010100001101100100110100010001010001101110010111000000110000001101101101000000000011011111011010000101001011000010000101111110001111001011110110010000000001101100010101100010010011110000011100101101110010010001101001001011110001110010011011100101000011110000110100110110111110010010110000001010000001011010011100101100001001111110010100101111101011100001110010100011110111010011100100000100110101110000011001111110000000000001001101110010100010000000101010000101010011100011001110011011101100011111101101010100100111000010011010100000111010000100010010100001001000111010110011000011000101001011011010001001110100100100011110000100010101011011101100111101110110000010001001111101010110001101001111111110010111000100000000101011101110101100100011010100101110100010000111111011011101000011010010000000001111101111111000100001100001010101100100110010010010011000000110110010001110100101110011001011000100011111110000110001001101010111011111011011010101111000100000001101011111011001010100111100010111101001011011010011101010100000001110001111100100000101000101101011001000010110111101011000001010111000100101110101001101110010101110010001100111101010100100111110110011100000011001111000100101110111000101111011011010111110101101001110110111000111100000101000011100111010011001110010000111001001111101111110000011101001111011110110000101010101001000011011011000000110001100010110101101000011101010101010101011010110001000100010110010000010010110001001101100000111010100010101001111000101010101010110011101101001111000010111011000010111100101010001000110100010000100001011010101010010011010100101001111010110001000011100000110110111100001011101011010010101111101011100011001101111101001001100000010001100001100101000100111111111001010101111011011000101011010011011011101010110000011001110100110011110101 +010111011110001011100100111100110100100101111001000001101110010100111101010101001010100100010111101011010101000101011001100001000101010001111001000000000000111111000000111110100110010011000101001110001100101000001101011101010000101000001100101110010110100100111010010111111011011000011111100001110001011001110110011101110111000000010000010011000100100001010110011110011111100110001101100011011011001101010010100100100001000010111111000011011011001111100101111000010010011100110011101001101011011010011101001000011100010101100110101010101111000111010000100011100011011---------111000110010100011110011110100010110101101111010101000110010001110100000001101000101100011111011100010111010100110110100100111000101101101010100111111000010001100010110101100110111010011010101101111001100000111011111100001001011010111001001010001001001100011011101101000110100011000100011011010010010000110100110110011111100001000110001000001001011100100000100100111000111011001110110110101101001110101101100010100110000010101010001010101100010001110000101000100001110011001000011101101101110111000011111100011011100111100101011010100001111011111101111001001001010111000101011011001100010101110011001111111100010000110001110010010100000100101111100000111101101101011110100101000100000010100000100010100001000100100010110011010011111100100110000100011111101001010101011101001110010010010110100101100100110011011010111111000000100101101001101111010110001101011011101011010100110000010110011000011111001100001000010111010110100101001000000010011011001101011010001011000001111001100011010111110110010010111010100100101100110011100110100111011001111100110111110001010010001111111011001101001001010111001110100000010010010001011000001100110011100101111110001011010010000110111011111011100100100100000110110000010100000000011001111010101100010101101110110010100111100011001011010101101000110111011100100101000101000000111101000111101101110001100101111011101101111100110111100110000111110010111101111010010111011110001100110100101101101110101100001101001100111101100101001000001100010100010000110111110000000000010110000111101001111011101001100111010111101010101000101100101110110001011011011110000001000100111010110000011000011101001001100000000111010001001110000001001110001111110100011001001010101110000100100011100101111111111101001001011100001001110011011101000001110101110000111100010010001010010001000111111000111111101010111001000010000001011101011110000000111010110110001011111110111000001011101011010001110110011000101000001111010010010010100101100100001001000110110011010110000110001101111010110011110000001011000001011011000000011000111101001110100011111110010100111100011101101101011100011000111001111001110100110100101111111110001101010110101001011011111011111110100010100011010000011001000110011000110001011011001010010100011100101011111000001001100000110101110110010111100101000000110101000010001101110100011100100110011110111101100000011010100110001111101010010100100011011000110111001011101010110110000000011101010101101000010001000101111101110110010100111101101100011110010101100101100001101101001111110100101100110001001110100101010000101111010011110011101111111101011001111010111001010010101000001111010001010011100010110100111110010111010111010001111111001001111010101110001111100111000111000000101010111101000110001000100111101001110000011011111111111011010100010110111010110111100000111001111011110010010001110110101010101010111000111100011101110010001001101010111100110001101111110110011101000010000000001010101110100100111101001000111100010011100101100110010001111101110111000001001000111110100011010010010 +000111001001011100011101010001100011101101000110100100111011111101011001011010011100101010100111001100100000100110000001100110001111001001110110001010110000011111100010111000111000100110100110011111011001010100001110110101111100100101100001101101001111111001011110110111110010100011110111001100101111011011000101011010101110100111100000000011101100110000001110110011111100000100111100110000111101001001011110010011110100101101100101010011110101001001001001011011001101000011110111001101010100010010010110000111010100010000001111000100001110101001000110110111101000011---------011100011111000011011100110110011101001000101110111101100111100001110111001101100101010000100110000100110000110101001101000000111011001000001110010011010110101100000101011111101111000110101000100011111011111110110001111000110111011000001100011111011000000000001010110001011000011001110100001000100100000010011000010001101100010000100111001000000111100110100000100110001101010111110000010111110000110011001001110100101100100110110100100001000001011111100111000010011111101110000001010111100000110100011100010010000001010001101001000010110010000101001000001100001110110110100011010000010101111000001001011111000000001000100010101000010001011000100000101101011001100001010110110101000101001001000101010111110000100010000011101000111110000100001011001110101011001100110100000010011100100110100101101111101001011101000010101010101001011011010011000001011000001001110001111010001001100010110011110010110011011001000101001011000101101110000111111110110101101100000001011000100010111111101101100101111011001011110101010101010011101100111000001010110010010001000110100100101010010001011101010110111101101100011011100100111111011111100001100111110000011100101100101111111010100100011001001111101100001011011011000110001111111010000110001001001100110110000111000101110110101011110111010011000101011011000000000110000001101000010101011110000010001011100000100001001100011010110010110011010000011011101100101100001101010010111000000110101111000000001000110100101100011010010001001100011110001000010100110111101110100010100100101001110010001100110101100001010010100011000001100101101100101001110111111011000011010001000001010000000001011011010000001101110000110100100000010001000011111001000010000110010111110011101010000000001011101101110101100001000110001000111101101011010001011111010111111011000101101110111100001001011000110111100100010100001011110001001010000111111101001111100011010110111000011011000101100111110100110000101001100011110001010011111101110101111101001100001101101100000000111011010000111111001111100011010111010100100101101101011110111000111000111000011010011001100110011111101001000010111101001101010000111101111110110010111010010000011000000100101110011100110101101110000110111001010111011100110101001001000100110111010111011000000001000101111110011011100111110001101100001100001011101000010011010101010110000000001001010111001010000010000101010010000001011001111111100110110000001000001000000111010111110000110101101010000111000101110001110000010111101110100011000000000011001010100110101001111110011010101100010001001010110000110111000100111011001101011101101000100111001000010011100111110100011110001100000100101101011111010111001000111110100010101100001101011101000010111110100110101111110010010011011000111110101101111100110110001101010000000001110101110011111000101101011010000110001100001101101110101010101110111101000101001010100110010110111110000100101101110001101001100010010001011001010111001110100011000001110111101010010110110110001100110110101010000111101000110011111000101010011001011100000000011110 +101010101010001011111101111111001011111011111110111111101101011111101001010011110010101111110001111110110100000111011101010000001011000101010101110001101101110001101111101101011100011111111110010011110101011101110011000001101001001010100001001111111110111101101011000101110111000101011111000011100110001010011000100100000101000111001111111100110100001101011110000001010011011100010011000011010111100100101100101011100011101010100011101001010110101101110011110100110000011101110110111100000001010111001101010011110000101001001111011010010100100011100001100101100111101---------011110010111110010101011001101010100111000110100001100001010111101101001110001000100101001000111101110100101111100111101111001100100000101010011110000111001001111000011000101001000111111100100110111010111010111001111011010001011010101011010111111000101001000001101101101111111110111111001011010110001001101100100101110110101110101010111010111111010111101110110110101101001001001100000011001100011011011010000010100100111001001101010111111001110110110000111011001011010011100000111111100001101010011110011000110101111011001011111010101011000110001101110100110110110111110010001110101110000111000100111101111010010010111110101001000011010101110000100111100100010001111101111000001010101000111011101010101110111100111001011000101110101010011111111100000001111010000100011010010110011000001101000001101000001100110100000100010011001110010110010000101011110110111010111000101110011001000000111101000011100001000111100011111001111010000111010111111010000101011001101000101111111000101100100011110110110101001010111011011011010101111111101001010101011011000000101011100110010000010000111001101101100110001110101010010010010110111111101111010010110110111010001100110101100100110110000011011101000011011000011111110111110010010010010110101000010000101100001010111001111101001101010010000001110111001110010110010101000001101000010011111011110110101010101101100010101100010001000100110001100100100101001000001100110010010001010110101001110111001010010101000111011111011110001110001100100100001001000000111111111110110001011011100100010101101001000111100110000110001000100001110011000110100111001011001110111000010101111000000101101110001000100010011000000001011000011000111101111100110000110010111110101001000111101111111101110100000100001011100010000101001000011011100000000000010000111001110111011100010011001001111000000101100010011011000000011100110001111000100000101001001011101010010101110100100101110111000001000011011111001100101000100111000000100100111101010110101010101111111000000001101111111011111000111001101111111001100100011011011010100111100010100101100011000000000110011101010110100000110101000010010111010100010100110000111110011001101101000010001101101011001010100111101100100000011010010111101101001010010010011001111001011011111110100101110010100010110000101011000101000000010100001011111111011000001100110111111011010110011111110000101001010111000000001000110111010010111001110001100111110111101011000110110100100001100110110101000001111101001001111110010001100001011100100001000001100111110000001100111011010001100111100011110001001101111100101010000011100010101011110110000101100010100010001000011110111010010010111000000111001100110000110101000000010100101110110010100000000110101000000010000101110101000001111010011100001011000000101100000111011010001100101101011001000011110011001000110100000011110110000000110011010110100101001100010101111001111000001110010010010010011101100010101000100101110100101110110001101111110011111001000000111000011100000110111111110011110001100111101010100001111110101101001010011 +010000101100111110100101100101101110011110100100000011101110100100000001001111111001000000100001111100011011100100010001101010010001101100011110011110001010010111110111010101100100110110100000010000010011110100111100001110000010001111101111100100111100110111010100010100101011010011010010100100011000101000111111110100111010101101011000000111000100111111010000010110101111111101011100011001000110100111100110001010000101001010011100010100000100011100001000101000011011100000100010011011010011010101001100010000101000111110010000100100010011001101101001110111111101000---------001010011011111110001001011000010101000001010001011101101100110110111000101000011011010000101001110110000100100011011111100111111010000101111011000100100000101111001000001010111100100011110011100110000010001011010110111111001110100101110111011011010111001100110000101100100000100001101011000010010011000010010010011000100001111111011111001011011011110100001110110100100000101110011010000100100000000100110001111001101111001000111100110000011011110010001001100111011001011011111000000111100000111111001111100001000010110010110010101001100111001110101000111000010100011100100001100111110010011010111100010100000000000101110110110001100110101100110010100001000111111001011010010001011100110111001000010000111111101101000010010110111000010001100010110111110101000011000010110010110101100111101111111010100010101001000011100010010100110101011010000011001111100000111100101011100111100001001001011001110110101010010111111101001101010001000011100111000000110111111100101111000100001111010010000111000100001010010011100010011110101101010000000001101110011000111010000010001111100001001001001000110110111010110111110011110110011101001001011100010001011101000001000011100111100011000010001111010000110111111011111001011001010011101110000001011010101001110111111100110000001111000111100111110000111011101011011110001011111101101100011000100100010111101010010110100011101010111000001101101001001100001010101000110000000101011110111101000001101011110011111011110011001111001111011111001010101001001001110000101101010110001010010111010101010110110110111110111101011100100000100110100011100011011100000101110001100010110110101101001100000011110001011110100111100111001001111111110001000001101110110010010001010101000000111000101011011100110101101101100110111110111000011110000000011110101100100010010011000000010011100000111110000001111001010111110010100001010110100011110000101101010100101001111101110100101111010011000101000011100011111010101110010101000101001101001100100101000010000010010010000110101100011000001100111101010011111110001111001101101100001111011111110000111010010010000010011110110110111100110001011001010101100111100100110001110100010101010000101000110011000111110101110010000111100001110011100001100111110001011101110101010001011001011000000100110111101110111000111100000111100110011010001000101010101100110000000001110001010101111011110101111000110000001000000010011100100110011000100001011011010011011111001110111100000111011001011010000010001100010001100000011011110000000011101100011100111001011001010001010000010111000101111111001111100010101011010001110100110100101101101000001101010111100111000011100101111011110101000010011111110001000111111100101000110010101100101101011110000001001110110000011101001000000100111110100000000111110001010001100100101011000110001100000011000101111101011110100111111010100001000110100100011011000011101000010110110000010110011001000000101111000101101001011011111110010101001101011110011011011000011011111011111110011000010000011101100010011101011010011010011010001110101110101111 +110110001110100110000111010110011000101010011000010010000001101110101110011111100010010111101111011011100011101000101000010000101101111111001010101001000100100100100111101011000001100111110111011011111000101010111111101010001010001111010001111101101101010111100100010111111011000001001000110000010110000111000110000011010100100001000100010010100110001001110000101001001101111001100011101001110101010101110101111011101011100100110101000110101100101000001001110011011010110101001001110111001101011010100011000110110100110100010001100001010101010101000000001001110100101---------110010010010011111000110011110000100000110100100110110110010110000001101110110010000010110010011001101110010111100001100100011011011010101110001100111100110111100110011011010100001011010101001010011010000100001001000100010011111000001100011010010101111101111000011100011001000000101110010001111000100011101000100110110001000011010001101010100110101001010110010111101111110100001111110010000110110111010101110101010110111011111101011101011100011010001110110111011000111110001110001100101000100001111111111110100110011001010110000100011000101110101100001110100111011100010110110011111010001101100001010001010100111000001100101111011010000111110000011011000111110010100111110111101101011111010101011101000100001010001010110111101110011100010100111000001100100000010010011011010110000001111110111010011101011000111111110010110101100010101111000010000101000011010001101101100100101111011011101010101110100010000001000011000001010100010000101111010101011001001110010000110010011101001000101011000110011100001111110100100000000101101101100000101100000010010100010000010101011000000000000110100001110011100011110000001100100101010110010000011001110000001110000000110011010000100001101011000010010111000001100001010001001100011001100111110100011101000001101010001110000001011101110011111111000110011001000101111100001101111010011010110101010010010010110001110111100001110100000011101110001111010101110101001110000011010110011010110100100000001111100010101001101111100110010100111001011100110101111001100001100100100110100111011100110001101010011011100000010011001101100111110011000011101101000001010101000010011001111000011000111000100010001100010111101000101100110110010011111000010010001010000011100101111001000011110110000001111111000111010011101110110001101110000100100101011100100111000001100000010010011010000110011011111101011000001001000000001110100010000110011001010000001010011000101011010010101111000010001110000101010110000010110001001110111000010000111101111100011000000101011101000000101011001011011010001011000000110101001001100010000011100101000001000001110110011001000101111100110101101000100010010110011010100000111011010101001011010110011100101100011001000000100001011000111001101111001010100001111110101010011100100001100110001000101110110100111100100110000000001000000010111011100000100001101010111011100011101101011000110101101011110001110110110111010111001111101110001000110101110000100111101111111011100101101100011101101100101010011111110011011010001111011101111000100000000001101001111101001011001011111111011011110010011000011001100110111100101001101011001101110011000110110000110001100011010100001000111000011001010010011101110110010101100100100011100011111000111000000010001100011101101010001011010011000110000000000100101001000001111110110010110101111100111001111001100000000010110111011110111100101110110010011101111101100011000110011000000100111100100111011000101101101111010111001101100100111100111111001110011001010101101111111001010000010000011111001001101100110110001010001010100010010101110001001 +011100100110010110110011001100111110110111010011101110110101111111000111010011010101010001111011101111001110010111100010111001000110101001110110110000101111010110011100111100110011101010000101010010100000001101100010001011011110010010011111011011100001111011010001101100001011000001011111111001010010110010010110011011101100001000011110110101011100100110011001001110010000100101010010000000100101111000110110001011001110101000010001011001101111010100111101000000010001101000010111110011101100100011101001011111101001001101011111010111111110000111001010011101010101110---------101111000000110010100001100101111111111010111010011101001011110111110011101111001110110101111100110010101101010011000100111111110100001011010100111011001100101000101110101001100101011101101001111101110000111000010110111011001100110110001001111101011011111111101110000111000111111001000111011001000011101011011010010110001000100010110000101010010100000101000100010100000110010111001101110011001111100000001111100000110111101011001111000110100110001101110011000011101010001001000001011110001011000000101100010000101000000110101011100011011111101000011011000101101110111010111100011000000100010101111011000110001110011100001000000101110110111111111010001000011000010110001010010010000110010110010010001010111111011010010101100100001111010011111110011001011111000001111001001111110010011110101100010011111111010001000000011001011100010101100011000111000011011101100011101101110101110110010010001110101101101010000111000001110001011100101110011101001111110111011001110001110011010110110001100001000000010000010001000000011011010101001001011100111010011100000011100101111000000100000011000001101000100011000110010110010101110101011001000010111010000011110000100101111110111001100000111111110111100100000101110101110101100111110101010101010001001001010110110001001110000011110110011001111000111100000110011101100001111000011011101111100010101000110010100011011000101110001111101000010110011111111111010000100101110101000110001100110101011111111101110110001011100011011001000010101110000011111101111100101011001110001100011011000010011001100011000101000110010000101000010110010110101001010010011100001111101010000001101100010110011111010101001110110011000110000000000000000011100111111111110101111100110100001101000001011110011111000010010101001101111000000100001110101100010000111110111101001111000010110111001110100100110010000110000101111010111100011100111001001101010000110101010101001111000100001000110000111000010110111110010011110010001110110100101100010101101111001010100010011111011011110101100111010010100100011111101000011001000010111100010011000000111100101101001101011100011010100110010111010011101110000001100101110000010010110100000001000110011010011011001010000101010000100000001100001010101110001010011010010110110110000000100101100011010111000011110101111000010100101001010000101101010101101101110001001011010101000111111001011001000010100000000111011100010011010001010100011101111100110100000100011110111010010100000000011010111000101111011101010101001010001000010010101110000110010000111111010100000011010011000001000110100010101011001101000000111010011110101101100111000110101100011011001101110110001000100100000111111000010011000110001001101000100110010100011011101010011000001001001111001000010010110001111111011101011111100011011111000101111001000100010001111001101100001111101100110111010011110100111000111001001010011110011010100011101111011111010101011110000001100011101000111000001000110010110001100001100001000011011110100001000110111010000011110010111111001011101010000100001010101111010111000000101011 +100100111110010111101001001101110101100100011011010111010010100010101101000111010011001011001000100101100111100111110010011101100100011100110110101110000110010011101111010111100001110000100101101101000101100001101111001100011001000001110001101111010101010111011110110001001011111110110000100101111101000111011100101100001001010100110110110110001001010100110111001000001110010110001111010101011000101101111100110010011011011110001010110011110111101100001110010100101001110010000100000011000110111010111011001011100000101000101110111010010111011100101111011000001100000---------011101010010101010101011011100101000000111010011001101100010100001000111111011000101000111111100011110101001010111001001010110001001011000011000100000000101010001011101101100101101100010101000000101000111001101000001101101111101101100001100111111011011100110001000101010000001011011110111100100010010000110010000100100111011101000101011101101100101011001111100100100111110111100110111101000010010110110010110101111000100000101000011011010110110110110010010110100011011100101110001110111111101101100001010010101111010100011011100001111100111101111101010001011000000111010101000010001001111100111001100011111011110001100101011010010011101111000000010001000000000110111101010100101111100010100110101011011111101001001111010010001011001100101101111001011011010001111110000001001100011010000101011100000000000001101110000011111100110110111010010100010111001111011111001110001011011110101111000011110101101100100010111011101100111001001101010111010000101011011000101111001000000000010100000010111111011101111100100000111111101100101101011011100001011100111111001000011001001101010110001110001000111001101011110010000111010010110001110001011000110110100111010100010000001110000001101010011110101011110110100100001011000100000101000000001101110110001101011100011111011100000010110110110100100011011010011100101011111111001101101011100101001111100110010001111010010010110111000001111010001110100100001100000011101100100010010101101100111100111110110110110010110111001111010010001100001110101000111100100101111001001110111111010011011000000111010001010110111101110111001011011100111000011010000110110101110011100000010011011101010100010011001011001000011100100001010011011011101011011001010011010000111101101001100100010000111000010011001101101100001110110010110111111100111000110101110010101011010001101010101000000010011110011010101011101001111101000100100110110010001101111001110110011110011001011001100111100000000010101001011111011010100001000000111110000111110001100000100100110111110100101011001011100000101110111110110110100100101010101011110011010010100110000101011001010110100000111010011100110001011101111100010111011000010000100011001101111111111101111100101110010111101010111011111000100000000100011000010001111101010100001100011011111010101000101101011101100011101111010101101000001011011100001000111000101010010100100010100101111011100000100110110001001100111111000001110101110110000000010001010010111000100001111010010001110001110110100000001100010000010001100110000110100101011101001000110101101111100111110011011111000001011111010010101110001101001001101010101110000110011010101010100001001001100010010011100110101111001010000001111001011011100110001110100111100111111010000010001101101110101110001110011010100111101110111111110001101010100011000111011111111011101001010000011110000101000001000101100001000111000010101001100110101011001101000011000101001111000100010111001011111010100110100110001001101101111100010011100110100001011100011010101111000001100101110001110101000101100110001100111101010100001111001010011 +ls144msgs +010010000110101101101111110011111101110111111000101010111111011110101000010010000011001011111101111110001000001100101101010101001101000111110001010010011011100101010010110111100100010110100100010100000010110011111010100111001000000001111010001110000110001100011110101101000010100111011000010101100101100111111110110001100100101000000011010010101001011100101000101100110100000000001001011110010101110110100111101010001000010001011000000101001010111110011100011000001001001011001011110100111010110101011000110010001110001100001001001010000000000101010100000000000101000111100100111001010010010101001000010111100111101111110101001011100010011111110001100011011011110000010111001011001010001001110011000110010010111110101100111011111110001101010101101100100100101000111010111010111011010011011011111011100010010011000100110110111100111000110010000101101111010010010001101111010010000000011100011110111010101111011101010011010110011011000101110010110110100000010011111000011111001101001101101010110111110111001001110111100010000100000110101001001100111111111101111110100101110001111101010001110001001101010110111110110010000111101101000011110111010000001101101000000101000110101000110111010101110001010011110110110011100110110100011000101101000101010000110110010010110010000110101101110101001000011011000001111110011111111110001110100101001000111111111110011000110101110111011111001111001010010110000001001110000011111010011100001000111--------- +010111011000010100000101101011011110001110100011110011010111101001001111011100110100001000001110110110010000011010000111111110000001001111010100001111110110101101101101011011110011010100011001010010010100000011101001100101101000111111010110101011100011110100100000111010111100100100011000111100000001010000000001100000000010010110000111001100100110111000111011100001111001011110001011011110001010100010011101110010101111101010000000111111110010101100001101001100011110111111101101110101110010011011110000011001111010000110011001110100010011000001111111000110000010110111111011011001011000001110011000111011100000110100010000100010111011111000001001110101011000100100011000110101100100010000101111111101101110110010010111010010010010110001011110101001010000001010001011111010011101010101101000001010101000011100000001101001001101101110010110111011011000100101011100110000011010111101111110011111111001101000100001000100001001000001111100110111011001100101011101100001011000001011000100001110111000001010110010101100100010001100111101110010001110101110000000111111010000110110110010000110110111101101000010011001100100111110101000000001010101000110010000110110111110110101010101110101000100010011100110100110100111100011110100101101101110111111100111110100001110000110000111100000110010110001011010110011011011110000101100110100110010001011011011011110101111000101000010000000100110111001101111001001110110011110000001110000100011000--------- +100011011011001011110001101110011011101110100101110100110110001110101011010010101100000011010011110001001110110011011101011010100011100101101010000101010101000011110001011100100100111110001110011110111111110101010001010100101100010110000011011011010111000111100111111001011010010011111110010101000000100111111001101011100100100011000010101100111111101000101111011011101010101000110111000101111001111101010000010011111011101100100001110111101100011100010000001110010000100011011000010100111100001011101101000100101101101101110001101010110111011001111011001100001110101101001001100111111111001100000101011111010000100101000101011011111110111001110011111110100100010011010111110011010101110101100101101100111111101001100000010111011010000101110011101011000111100110000011111000100011000011010101001010011000001110010011001101001100101111110101111011111000000000101101011100010100111000101110001000101101011110100111000110101101000010101100101001001001111111001011000011000101100101011011001011011111001110000110010001010110010111101101100100000001011111111010111100111100111100001101111111000011110100100001010000001001111000101000101001000101001001000000001000011111010101001100010011011000110011010101101000111110101100101000110010101110101010010101111010011011011001001101101111111001100011001001010111000111100100010101010001100001100101000111110010110111000001111001011111110011101111011110110010110001010100101000110101000001110--------- +101110110001111100001010110001101111110110100100100010000000111001011001100010111001110011100010110011010100001100101000001110011000011001110111111000110110111110111111110001101101101010100011110101110110111100110010111101011100000010100101100001000100110000111100011100111001110010101001110101101010000100100011000010000011111001100110011111101011110001011000010010101001000011111101100111011000100000000010001011101000001000100111100110010101011111101111101010111101000000111010010001011101111011000001100000110010110010100111010011001010010101111001101011110111010010100010101001000111000010010110000110110010101111110101111111101111000001010010111000100111011000111001110111101100101010011111100101001000011100001011000100000010000111001001101111011111000111011001101101000100110010111011001111110000110100000001111001001000000110010001100001110100110001000101001001110100011001111111011100010110110000011101010001000010011001011010000111011001100010101110110101111110111100111001010110110000111100110010010110111101110100011111101100011000111111110010100101010101010101110110110111110110111110110000111011011110000101010010100110010110010100101101101000110100000101100010100101010001111001101011110111010000011000001010101110001000101011000010111110101010101101100101001111001001111001110101011110110011000011110101000011101000011011110011001101011110110001101000000010101111000111011110000011001110001100010001010110110111010--------- +001000111001110111001100101010101111100001110011111011011111011001011110011111110100110101110101000011110101011110111010011111110000000010101100101011100100011111010101010100100101101100100100001100010110001111010011101011001001011111110110000001110100101001010111101100001101101011001101011011100001111111111111001010101101111010111101000101101011110111101000011100011010111101111001100100010011101100100101101010110101111011011100010101111100110110011110010110001001000100111000000010000100000110111010111111101110110000101111101000110111011010100000000110010001000011101010000001101001001010101011111011000111101000111110001100011010101001101111110101010011010110100100111101111101011100000010011000001010010110001101101011001100100111110110111111001000110001001001001000100101111101111011011001101000111000111001111011110000100000001111000001110111100001001000011111110111000100101111101111111101111010001000110010111001000101000000101011010100000101111010100100010010100101110011010000110111011001011101100100000010111100111001110101101100100010011001110010011010001100001000110001000000011011101100101001100010000110100011110010001010101111110011101111100100101010000100111001011110011101010101001000010001100011100110110100010001011000110000011000011000110010001011110100110001000001010000011100010001100101101110100101000110110011011100011011011000000110010001011100011001010011010010110011010001011001001101000111000100001--------- +100000000000001011010001001101110010101010111011100100010111001000010101000101011101111000100001010000001010001001110110001100011011100010001000100001000011000000101010101011110100011101011101110110110111101011101100111010110000100011101010101010110101010000100100110010111010001000011011001100100101100010100100101011101110100010001001000111010110000111001001111010001001101110011011101101101100111011111011000010110101100111001001000001110100001111111000001111000110101000010001100101110111010000110111100011000001101010110100110010100110000010111001100000001001001101100110001111000100001110001111010101001101101000001011010000011101100000100000111010100101010010011001010110111111110001101011101100110000011111110101010111001101111010110100010101011100001001000010110100110011110100111001001111001011000001111010001110011111000110111111111011110110100000110100101101101011100001001010101000001110101001011100000110100111101001010100001010010100010101010100000110111011100001111101011011000101101101010011100011010101000000001101001111101011110010101010010011011001011101000001110110111111100100001001101101000101111110111010111000010110011110010001011100110010010111100000010011010000100100111010110110010101111010011100101100000111000100110111001100101100000001011110010001101110000110101101010000001000000011010110011001010111101011100111111111101100000000111001101000001000111101001100100001000010100110100111100100010001011--------- +101111101010111110010100001110001111101011010010010011011110100101111110101111110001010100000000111000110011010111100110100001001100100010000001000010011000100111101111001101000001001111010010001110010010110010001000111111110101001111010000111101011000100101011010111011111101100110011001001110110010110010011011001011111100010101000101000001111000111010111101001111011110011000010111110011010000011110110010000100111010010100101111001111001101101010110001100111111011110110011011001111001111001011011111001011000100111011000011101000001101110100001100001101101101111000000101100001000111000100100111011111010111111011100110100010011110000101001110110000000100111111100100111100110000101100001110111101010011000101010101010110111110011101111110011111100111011010011101000011111101110000101100010111111000000100000100000001001011110101011100101000100000101011100000010010111110011111001000100010001011000111001011101100101110111011111100011011111001001000001011101101100011000111011001101100111110010010111100100111100110011111100100111010101010000001111100011010011011110000101010001110110011100101100100101100110001101000010111100010100000101001111001001000011010010100101011010110110110101001000000000010111011010001101011111010101110011100000010010100000010100011101110010101010100010101011010000110011011011110011110010100101111100100101111101010100000010100110011010001010100011100000111111100000011111111110111110010101101011--------- +010011110000001010010100001000101100111110011011010010001100000100000110010011011011001111100011010110011010010011111110110111101010001000010101111000010110010111011000011110001110000101010110000101111101111101101011111101001001010101111011110100011010011000000100011010111110110101001011011010101111000100110010010010010011100000010101010110000101101001001100000110001010100011011001011110111110011110010011111001101101111000010011011001111010001111111000001000010100000001011011000001100100010100101011010111110101001111110100011110100011001100011010001001001001110010101010011000100101100110100010001011010111001000101010111011111110001011000011110110000101100010010100000001000100111010101011001001101000010110111010100111001001100110000000110010000100011101000010111110010111010000011111001010011111111011001100110111001111011101000111001010100000010010010011110010001010101110011001111001010001001010011111111001001010010011001100010101100010011001101111101010001110111010001010100110101110010111000010111111101101110001000101001010101001111000001001011111011110110001101010110100100011110000101000001010110111101110111001101000100001011000110001011111110101000001100100111011110001100000001000111011011000100011010100000011110011101111000111010100011111010100010101100110000100010110101101110111011000011001011110101110110000100101010001000111011001000011000110001101001011110000100010101011001000111110010011001011001110000--------- +110001001100110111110001000100010101001010001001001100111000100111111101100110101111111110111011101111100111111001110110010111010001110001001001011000000111000000110010001111010111010101110000110111101010000100011011110010000110110000011100001111101010101010111100111000100010010101000011010101111101010010100110011011100110111000011101111101000011110101101001010110011010110110110000100010000001101111011000100011011110100011000011100000011111100000010001110101011010001010011000000110001111000011010010110100100101011001001000010111101001111011100001101010001000110101010011111000110010000101111111001000011010110110010011111010010100001010010011101011100010101000111011010000110010110001111111110001100001110010110011000100001110101001010011001001011000001000111011001010010101011111101110001001111000010001010010001000010110101101000001010100110000000101001010010111100110101001000010010011101010111011100111010000111010101101000101010111000101111110000010101011100110011110001010001111111011010110010000100100101101100100011110011000110001000100110100110110000011011100010000010100000000001010111101011111110100101101101011010001001011010011100101110110011000100000010011110100101100100101000101011010101001100111101011110010111110110110001100000101100001110011110010111101001000111010001000010111111001101101101000100011011000001010010001100111101001100101010110000000110111000101110001001100000111011000111011000101110010100--------- +101100100111110000011111010111100101111110001111001110001000010110010001011010000011110111101100111001100111001101011110010010100001110011100111000111111010001110011111010101100000101101010001010101000100101101101101011001100111100000001011001100111011011110000100101010100111110010001010100011010001100101111101001100011011001110101110100100111100100110010011010101101101100111101010110001100010100100101101110110001101000010110111001111101101011111110100100001110110011000000110011101000011010100110101111010110101101001001111001000110100100101000000001011010001010110010011111000011100000110010100110100010000001101110101001111100110100000111111101001101010100101110110010101110100011001101110010010011001110001011000011011001111001011001011110001001100011000110111111001001101010000101100111000101110001110001010010010101111010001010101001101001101000110101100110110111111100010010000000110111110101110100101001111010110101111000001111000111010110111100100001111101110001000101000111001111101011010111000110110111101010111000010001101001000100001101000101010110010010111101110111100100010110100110111001110110110111000001101100110110011111101000110001000011100100011100011101100100101010110011010100100100100011001111011100100000111001010100100101101000111001001101001000001000111010100010010111001100100001111101011100001000011100101100110001000100100011001001010110110101010011000001000011101001000101000001001001110001100000--------- +ls144cwds +010101100101100111111110110001100100101000000011010010101001011100101000101100110100000000001001011110010101110110100111101010001000010001011000000101001010111110011100011000001001001011001011110100111010110101011000110010001110001100001001001010000000000101010100000000000101000111100100111001010010010101001000010111100111101111110101001011100010011111110001100011011011110000010111001011001010001001110011000110010010111110101100111011111110001101010101101100100100101000111010111010111011010011011011111011100010010011000100110110111100111000110010000101101111010010010001101111010010000000011100011110111010101111011101010011010110011011000101110010110110100000010011111000011111001101001101101010110111110111001001110111100010000100000110101001001100111111111101111110100101110001111101010001110001001101010110111110110010000111101101000011110111010000001101101000000101000110101000110111010101110001010011110110110011100110110100011000101101000101010000110110010010110010000110101101110101001000011011000001111110011111111110001110100101001000111111111110011000110101110111011111001111001010010110000001001110000011111010011100001000111---------101010010010110101110010111010111001100001000010010101000110110011010110011011000110101011100011011110110110111100101110101110110001010000011100011111011000000011111011011010010001010100011000100000001110111101101011111110101000101011110110011111001101111000011010011000011010111100010010100000111110001110010111011100010111100001001001010010111110000011110101000101011110101010000110110000110011101000110111011011000101001101010000111011001001111111000011000011011010110101101100011001010111010001011110001011101110111111000101010010001001110100011110000111101010001101111000001110111001000100100101001001010101101110000010100011011001001010100101100000000100100011001010100111010000111110101110101111100010111011100001110101101000010011100111010101011010101110010101001110101100011110000011011101011000100110101001111010000001110000101110010100110101101011111111010110110100001111111101101000111100001101100100101011101100001101100110100110110001100001000000111010101011000010001000011001001011110010110010000110100010010111011011010110101101011001001111001001110011101101110001011111100100010100010000000100101111111000010001010111111001001110001101110001110101111110001010000011100100000011111011110100110011001010100100110011000101110010001001111000010111010000101010010101011110110110011111110010010101101110010001011111010100100001011011010101100111110101011110100000100000110100010000111110111110110001001110111010101101101011101011101001110001010111101011100001111111100010000101111100000111001010000100101110011110100001111011101101000000110101101101011111000101101011011111001101110000011011111011111011010101001100110111101110100100000111100001110001110011110111011110001001001101111011100111000000101101110000101110111100101001110011011100000011001001000000000000001010100111101101011000111100111101011111011111001001111000111101010001001000100111001111100001011010000000011101000001010101000010000011101100110001111011101101000011011011001101100111010001110110101010111000001011000001110000000100110100011000101001100101001101000010101100100100011000101010101101000110010101101100110101101101000010000101000000000000100011101000101111110000001010010111100011111000001000010001011001000110011010011110010110101001001111010001101011001000101111001100010101111010110011110110001101011000001101111011010001011001110111010011100100000001111101011010101101011110010101011101100110001010110100101010001000101111111000010010010001101010011110100100011010111011101000101011100110011001100010110101110101010001100011001110011101000100010010101001110010001011000100111110010011010101110000011001010010000101010111101011110100001011100100101011100111011010010100000001010100000011100110011111110111011011110101000000010000001001010010011110011000110001100000111011111000000111010110011001100000100111011001111011101111000000100100100101010011001110001011100001011001011000111001110101010110000101011000110110010100011001111011101110011101001101011010001011111100010110100101101101110011001010011100001101010111011000001001001001101100010000001110100110011111111010000111011101100010001001011111010000110111010110110010011101010110010111101001011100110011000001101001010011101011101111000010101111111111001011101010101110001111001100000100011110001111110100100110011011101100001100100010010010110001001110011100100100000101101001001110110110111110100110010101111110000111101110011111101111101000101000110011110110011110111101110101100010011100010110011011000000000101110000000110101110000011001110100111111110010000010000111111110011000010001001000011010110101000000110011010000010110001111101011111101111000000011001011010000010010000001000101000110001001111001111010001101111110101111110111001100110000010010011011101100111100101100010001110000001011101011101000101001010010000000111101001001100000010010101111100000000101000111110011011111011111011000111110110111101010101101011000100111011011000100000010101000100000110000001001011011011100001111000101011111111111111000010010111101010001001110000110111110010010000111111111001001100110010011001011001010100111010010011110101110100110001111000000010010011010001100100111100111101011101010100000001111111101001111110100110100000101101111011100111001100011011011000011000101001000110110101010000101011000100110111100000011011011110000001001001101011111110000000001010010011101011011011101010000000100010010101111001010111110011110000011110110001011111011011001111001100000001100100110001001100110101011011101101010001110001111011000110011110110111001111011111010010101111001111101011010010000010010110100000011011111110000010111000110111000000111110000111110111101011101001110100111100100001100010111010101001110000101110010110011010011011100000001011000111001001101000000101011110010100001111111100000000001101111101001110011000101111110101010010110001110000100101000011111000010010011110010011001000010111101101010111111000101000011101000111001001011001111101100001100000010111101010010011011110000101110010101000010100100100101100100101100111100011010000010011011111110001110010100001001000111110110111001101111000001111001011110000000010111000110000110100010001110111101001110001000011001000011110010101010000010011100110110101001100100010110010111001110010100101101010100110000101111111000000111111100101010011100110000010001011011010011100111110001100101100110100010001100000101000000001110011100110011110110101110001110011110100010011111011011101000100100001101000001101110001101010100001011101011011100110100011100100111111101001100010010110000101001011110101001001000011101000000110101101111110110111001101111001011110100010000111000100011110000010100010010001010110110111100111001001000001011011100010101001100100000000111010001100010110110001111010111000001101101000101101000001100101001111100110011010011110110111110000110011001000000010110100111101000001001011010110111010010000001110100010110111010100111011100101001100100011111011101011111111101011111000111111101011111001010101100011000010100101000001010000000011001011010101100000011011010100010110000000100101001000110010111110 +111100000001010000000001100000000010010110000111001100100110111000111011100001111001011110001011011110001010100010011101110010101111101010000000111111110010101100001101001100011110111111101101110101110010011011110000011001111010000110011001110100010011000001111111000110000010110111111011011001011000001110011000111011100000110100010000100010111011111000001001110101011000100100011000110101100100010000101111111101101110110010010111010010010010110001011110101001010000001010001011111010011101010101101000001010101000011100000001101001001101101110010110111011011000100101011100110000011010111101111110011111111001101000100001000100001001000001111100110111011001100101011101100001011000001011000100001110111000001010110010101100100010001100111101110010001110101110000000111111010000110110110010000110110111101101000010011001100100111110101000000001010101000110010000110110111110110101010101110101000100010011100110100110100111100011110100101101101110111111100111110100001110000110000111100000110010110001011010110011011011110000101100110100110010001011011011011110101111000101000010000000100110111001101111001001110110011110000001110000100011000---------111010111110000001111000011010000000011100001110010001000111001100011000100110110100111010101101010000011010000100000010010010100010011011110001101100000110100110001010101011110111000011110110000011101101001001100101000101010010011100000101100110100011010111001101011101000010000001111000011111000011000101101110010101111011010000100111110111001111011100011100110101000101010010100011110011101111111011011110100111000111111100010110011001101101111001011000101001101110010101100101001001000100010100000010000001000010110000100000100011011111101111011101001111010110111010110010100101101001001111011000110111011011010111001101011111000100010110100111000100001101111010101010001110011111001101011001010100100101101101010011111110111101011001000101100101100110010111111010101101000110001110111101111001110111100010001101010001010111010000101110000010101111000001001011111010001111011110111110111011011001100100000110111111000110011010100000000001111100010110110011100000001011111100011011101101000100010000010100111101101000011000100101110100111100000010011011110000111110000100101000011111001001001000001010000010011100101010110111010001011001011000000111010011011100111110000111101111010001101001111010111101010000000111100111011111101101101110011000111000010100001010111100110001101010001011011010110011110100001111111101010011010001100111001100001101100010001100001100111100000000100011101101111000101010111111011010110011011100101001111101000101111101101100111101011110101111101001010100100111001101000100101001100001000111110011000101110010000001110110111110000110011111011001110000111110101111110100101111101110001001111001001000111110101111111100110111000001100100101110110100101011011101100101101010110001111100110100010101000010010100000011111110001100010010101001100010010111111010001010011101101101011111001010111111001101001001101011001000001111000111000010000011001110000000011011111111011101101011100010000110010111001111010110100111111101000100110010000001100110110010011111101100110100001101110100111101000000010010001100101011100001111010011110111001100001101101001011011111000100110000110011100011100011101111100100001111010101100101100000010101110000110011010110011010000011101100001101000011100001010111110110100100110000011111100000001011000101011011111010110110100100010100001101000111111101110111100001111000100010100011100010101110111010011101010110101001110000001110100001001111010011001011000111111110011101101011101001010100111000011101111000100001000001100101101001101100011101111100000001111110011101010011110110001100001110000110100010010000000011100101011001000000001011001100001111100110001111110110101100010010000111000101110000010110111100111110100010011111110101111001000010111011110011001001100101111000010011101101111000011110001001100111101111111000001110111001010000000110001001011100010010010101101011101001011110100101101110110100000101100001100101100111101100101000010001111110110010001010111011001101000111111101010001101101010110110100101110111100110111101010110111110011000101001110100110011111011000010001010011110111011011011000011001101110101000110011010011101011010011111110011101101000011010101110001000100101100110111101111110000011010101100100111000111110110110101001110101110011101100011100000100011111111001110110101000100110110011010001010001001001101011111101110110101001110101100101101101010110100010010100110011011001100010101111101000100011110100101110111101011011110110010011111100001101010111001110001111010111111111010010111110000010010000100010001110011001001010010011100111000011100010111111101011111010111000011111100100010001011000101001101001111100000100011110000001011101011111000000001010001101010100001001110101000110101111100101011011010101110001011000010000110111001100010010100010110001110000111101101111000011011111111011000101001001110111000101010111100001110110011010110000000101001101011110011011100110000011101101000111010100110001000010000111001111110111101101000010000001110100011110001001001010110100110110110110111110111111101100011100000100000010110110010110010011110001101011011100000010011101111100111111111100001101111110011000011000100101011111111001010101111111011110100001111011010111011100101001101001000110010001101101111100100110101111110111110110101110011110111001010110011000110111101011000000001000001110000110111111100000110011110111111110011111100000010100011010110110001011110010000101111100101111010100010111001110101101110101101011110100111111101110101011011000010100000111001110000001011100111110000001011111000000111000000011101000010111011110110100110000001110001100010111011010010111101010010000001011100011100010101100000000101011101100001110101100001110101101001010001100001010100001011101010101001010001011111101110111100100101110110010101100101101011001110011011010011001100110100011110000010100100100010011100111010011101011100010100111100111010100001101001001011100001100100001101010010110101011111110010001011010001110011001101100101000100010111110100111110010110110011001001110101011010010100110010100101100110110101110000010001111000001010100110110001001111011101010010011101001110100111101000000100111000101000011100011100110011101000100010100001000110111101110101101100110001001101000100001001011011001110011111111000011011111010010010000101010110111111011110100110001110111001101010010101110001010111011101001101101110001100100000000000000101110000110110101101110001011000001110111001101101111101011110001111010010101101011111010010111110100111111100001111110000101001010010000001111111010011011110100111011001101000100011101001110000101010001101010110001110000010101000101111001110001011010011110011011100010001000010101001100101101101001110110010000010110101000111001110000100111000000000000001010000110111000111000000010111010001010000101001110010011010110101001110101110100011000111101010001101110000101010100101011100010110111101101100111111010110110100111101111001111010100111000101110111010001101000111011010001100111011101011000101010101001111100111010011101100011101110000011000011100000101110001000001111110000011011100010000 +010101000000100111111001101011100100100011000010101100111111101000101111011011101010101000110111000101111001111101010000010011111011101100100001110111101100011100010000001110010000100011011000010100111100001011101101000100101101101101110001101010110111011001111011001100001110101101001001100111111111001100000101011111010000100101000101011011111110111001110011111110100100010011010111110011010101110101100101101100111111101001100000010111011010000101110011101011000111100110000011111000100011000011010101001010011000001110010011001101001100101111110101111011111000000000101101011100010100111000101110001000101101011110100111000110101101000010101100101001001001111111001011000011000101100101011011001011011111001110000110010001010110010111101101100100000001011111111010111100111100111100001101111111000011110100100001010000001001111000101000101001000101001001000000001000011111010101001100010011011000110011010101101000111110101100101000110010101110101010010101111010011011011001001101101111111001100011001001010111000111100100010101010001100001100101000111110010110111000001111001011111110011101111011110110010110001010100101000110101000001110---------001111010001010111110100000101001010110111111111101101110000101110000001000001101001100000010110000010111111001011001010010110001010011000100010011101110101010010000001111110111010101100110010001100101101001011011100001000010000111010000000100110011011110110000001011111110100000110001101010100111101001110101111111010101001101100100001100011011101100101111011110110111010101101010100000010111100011010111000011100101110001101111110011010010001010111101010101010101001110110001100000111000100011100111101000011000110010111000110100011010111000001111000110111101110100011011101011100111001010011100001110111101010001001010110110100000011101000111011111000101101010101101001111101010011011000111010000011101110111110001110111011011011100010101011100101001100111000101111011111001110100110111011011111110010111010011100011110110011000000101010110010101001000010100110010010001100001100101011011010001101000111000111110111101001101010011111100111001001110001011101101100111110001100101111001101110000011011010111110100011001010110111110100111110011110110110100101110111111100010010101011101101011111111111001010101001111010111000111100000000010000101010011101011001110001101000010001001001110011111101000110110000110100100010110110011100010110000111001011000011010101011000001110000000111110011101011011111100100100001100011000101101001010110010110100010101010101101000000010111000101000101010100100010001101010001110110001000111000010100011010101000111001101001011101011010100011011100110001100110110100000111111101010111111010011000001010111101101001110010000100111000110100111000110110001011100000100101000100000001101011001100101010100011111111101000010000110010001001100111101101110010100101111110011001111000101111100101101010010100001101101001101010001001011011000100111000001101101011010000101101001110100010010101110111011101101001010100100001111000000011000011110010100110011101001101100111110001111010111100000000110001100010110011011100101110101110111110111100111000111110000101100001010010000011001011000001110000001111100000110001011100100000111111001011001000011101011101101111110110001011010101101110001111100100010110011110000010101010000100110111000111100001001000101010100000011110101000000100101110001011110011011011100111000010011111011000001001111010110001111110010100000100100010100010111000001100101100010100110101100100011001011010010001000001000011001011101000101001010101110100000011011010000111111100110111000111100101111010110001001100000000000000010100100100000100111011101110010011100001001000001011111010010001110100110000101001000010010000001010111101110111100010100101110100011010111011111000011011101011111100110100101101111011001001100001100001101011111010101010000100000101101010100000110010001111000100101110111111111100010010110010111011011010010000000111001111101010010101100110101101011111101110110000111110011100100011000011001111001111101001101110000101000100111010010110110110111000101001110001100001010010100110000110101001010011000100101010000011001011101110000000000100111100010110000000101111111011010011010001100001001000011011011110010001000100001100101010011011001011101010011110011110010110001000110010110111010101011000010011010100000100010100001011101111101000111111110100000101001011000110110010111100100101101111111101110100110100100101011001101110011101100101010111011111111001111110111100010010101111000001100111001001111000111111111010100110100001100101110100100111111011001101101010011110111001101011111110111000100101101100110000010110111011110111111000100001110000001110110111100110111111101100100000100110000010001101010101011111111010100110010100111111111001001100011110110110101111011100010000010101001000010011011101010000010110011010011110010000010111111000001011010010110001110010111100111011101101110100110001000000000001011001111000111001010111101001100111000101101110010011111001011000010111000011111100000001111010001100011001101000111110111100001010100010011000000111001101111101101111001010011001010101010010101100111111101100000111110000111000110100100001110011000011011100100011110010110010010101111001000000001011010000011110111100000100000111101011011011010101101011000000010110111101000010101110010100110101110100001100111100100000011110101111010000100000000011001111000011111011111101001110010011011111011000110001011100101001000100101101001101111010101011100010110101110010110011000111100110000010111011010101111011011111000001111011001111010111101010000111111100101000011100100111101001001011101100101111000010001001001011001100001001110001000001110000101100101110001001001001011100011110111110010111111000001110111010011000010100011100000001100111101110100011011001011100010110101000110001100100111001001000100110110001001110110010111110001101111100110111100100111000000011001111011000011010110000101010111001111001100110010011101011010010000110000000101001111101011101000100111100101011001111110111100010111101000100010000101111011110001100000110110111111111111000000001111000010001000011101111000101000100101011001111001010011011011101111000111010010110101001100111001001100111011110100100001000011000010101101101110101000010101011110110101100011100110100011011110010010011101000100101110001100101101111111000100110111110010110110001111010101010001000000100100000011010101001010100001110000100101001010100001010011010001001101000101110111010010011010100001101100010011000110101001000101011001001000010100101001100110110110000011000011010010110011110111111110110101000100100001011110000110000100011100110100000000101110111101111101110000101111010011011111100010001101100001111111001011011000000101000011010101101110011010100011011010011001101100001001010101101011100110111001001001100100000101000101011001100100000010111001110100100111101011101000110000010100110110010001100100001010100110101000001110000001111111110001001100010000010101011110100110101011101111100010100101010110111110100000010101111100110011010111011110100100001010011100001100010010101111001001011011100000101100001110001101001000101101010100100000100101100000111101001000100110011111100100111101011 +110101101010000100100011000010000011111001100110011111101011110001011000010010101001000011111101100111011000100000000010001011101000001000100111100110010101011111101111101010111101000000111010010001011101111011000001100000110010110010100111010011001010010101111001101011110111010010100010101001000111000010010110000110110010101111110101111111101111000001010010111000100111011000111001110111101100101010011111100101001000011100001011000100000010000111001001101111011111000111011001101101000100110010111011001111110000110100000001111001001000000110010001100001110100110001000101001001110100011001111111011100010110110000011101010001000010011001011010000111011001100010101110110101111110111100111001010110110000111100110010010110111101110100011111101100011000111111110010100101010101010101110110110111110110111110110000111011011110000101010010100110010110010100101101101000110100000101100010100101010001111001101011110111010000011000001010101110001000101011000010111110101010101101100101001111001001111001110101011110110011000011110101000011101000011011110011001101011110110001101000000010101111000111011110000011001110001100010001010110110111010---------010010001000010001001001100101001010110010000010110010010000111011110000101100101100011101101110101001101110100101000011011001110101100100100010101011011001011111110011010100111010111001110011001100101011011001110000000110001000110000111111110110111011000111001101100110010101001000100101101100110010001000101100011111100011100110011010011001100111110111000111101000111101011110100000111101110100111011101011000011010000110100001111000101011100101111011100010110111100101111011111001010100100100110000011111111011000010011001110111101111110100110100010111100111101111100000110110000010100100100011010011101010010000010111111101000110111101111000101111011100011101100001000110000011100111101001111010101010000011111010000101111000101000100011000011011100100010110111011001100100110100100001010001000001000101101110101111110100110100001100011001110100010010100110101010000100000001001100010101010110110001010111000011011001101111001001101001000100001111001101100010010010100000110111100101100101010000010111110010011101010011001011110000101111110010001011010011011010101000010110010001100011010011010110110110110001111000011100100101101100001011001001001100111001010100001100010111010001101010001000000100011111010000100101010111111101101010000001100110100110000001001000000100111110100110110100111100100101000010100011100000101011001011101010110000000011000000100100001011111001100010011010001111001110000101111100000011001101100110011111010011101011010101100110001111111111000111111010000010010110100101010100011111010101000101011111110101011001001111100101000101000100100100010110110100110100110110000101001000111001111110011001001100100000011100110100111100110010010110100101000100111011101100011111011011110010101001100111000100110011011100001001000000001001010000011001000010111011001001001110100001111001000001100100101010101000001111110000110011000111000011010100001111110100011111000100010011111000001000011110110001011100110110000000100110100101111100110001100101010001010011010001100110000000000111111101101011101111100000011111100101101111101101101100101110001101001010100100001110011001100111000011111100111000111100110001100100011101001000101000110010010010001010000010110101001101001110110011100110000101011011100001001111011101000000001111101010100110101101100110010010000101100011011000100101011100100111001100010111010101101101110101001101010011001100001110111111111001001110010011110111111101000010001011110111110101010101011010011001101111001011000100011010110111010111111101010110100010001000100110000101111000011101001001011000001010010101001111111100111100011111000111000111111111001111111010000100110011011101101111101000011111011111110100001110000100011010001111010111100100110001100101110001010111001010000101010101001100100100101000110001101100000001010111101010000100111110001010111010011011000100000010110000000111000100111010010101000101111111001100000110010111111111011000011101101001001110000111011001100010111111010101101001001110000010010111101100000101000010101001100010110001111001001001110110110111010000111100001010001111101001011111101111001110010011101111110110110111000010001001110000110110000110101111000101101110110101101001001111110011011000111010111011000100001100111100010111101010110100011110111001000101010111011010001110101000011011000101001001101101000101000011101000110010111100101010100001101010001111101101001011111110101011101100001111001011101101000010110100000011011111100000010100000110011110001111010101100110011000000101111110101000110011011110001111000000100000111100000110010110110101101110010110001011111110111111101000010011111010011001001110110111110100000111101100111111111100010000110001101010110011100101110001011001101000110011011011110000011110000110101101011111111001000011111011110010111101101101000001111000000001101110110001000001001001110010110000111110101011100000000000011110011001001010010001111110101010100000110111110001010010100011010000001001110010000010001010100100101100100000101111111101110001011110111110110011110001001011100111100100011111111111110101011110100110000011000000110100101111110100000011000011001111111101101001100101001000101011110100100111000011000010110100110001111001010010110111110001010000010001000000111001011100001111010011100000111110101110010011101101010010001001100101101010101011110111111001011011110011000011100110100011001101100010101111010100000001100111010000110011011100001100110010011001111111110100111000001000010000110000000011111110011011100001011111100000000101111011010101011101110001000101101011001011111101110101111011100000101001111100000101011010001110010011010011110001010110000001101001011111000011001011011010101101111000001100110100100000100010000001001000010011100001011001100000010100000001111101111010110100100101000111111110001101011110110011010101000001100101010110001010000100101100100101011001111001101010011001001100111010011111101101111110001010011100010011110110000110010110101001001000111111001110111010011101010101001100111000110111101110011001111000000110110110001101101101111101111001100001100100001100000100111100100100110001010100000100111100011110001010001110101011110110101101001010111100010100111100110001110100000100010100010001001101001101100010111110010001000011000010010110111011110100011001000100101110111110111110010100101101100010100110101011001001011111001011111011001110011000001000101000101111011010010100111110010110011011110001010101001100000111101100101111100010000010110011100000110111010101011100101000111110111010100100011001111011001010100111100100111000101101010100110000110010100100111101001000101000110110100001000011110010101101110001000111000110110011111111111100100100101100101110111011100111100100101010101000101001110010011011010000001011101100111010011000010010000011110001111110101100110001101111010111010100011101101011000101010011100000100110101001101000000110001111100000000111110110110010011100101110001010100111010011110101001100101111101010000011100111100111101001110010110111101101100100010010101010011101110011100000101000001111011010111001010001101010100111011110000 +011011100001111111111111001010101101111010111101000101101011110111101000011100011010111101111001100100010011101100100101101010110101111011011100010101111100110110011110010110001001000100111000000010000100000110111010111111101110110000101111101000110111011010100000000110010001000011101010000001101001001010101011111011000111101000111110001100011010101001101111110101010011010110100100111101111101011100000010011000001010010110001101101011001100100111110110111111001000110001001001001000100101111101111011011001101000111000111001111011110000100000001111000001110111100001001000011111110111000100101111101111111101111010001000110010111001000101000000101011010100000101111010100100010010100101110011010000110111011001011101100100000010111100111001110101101100100010011001110010011010001100001000110001000000011011101100101001100010000110100011110010001010101111110011101111100100101010000100111001011110011101010101001000010001100011100110110100010001011000110000011000011000110010001011110100110001000001010000011100010001100101101110100101000110110011011100011011011000000110010001011100011001010011010010110011010001011001001101000111000100001---------011110111010101010110001000101010110010010100110011101011010000111001011010111101010101011101100001001101101001010111010111001100111010100100000110010110100111010000010110110000101110001110001101001011100010110001100111000011010011101101101000101001010101001101001110011111110010110110111100111110101011110101111011111001011111111111100000001100010101010100011101010000110110001000011001000100000011000101100111100011110111011010011101110011011000100011000010010000100111111010000101011100000011110101110111011000100000010010010011111100000111100011001100000111001100111000101101100111100000010011010010001011010010110001110110111011111100111100110100100011001101111101011010110100010000010101100010111100000111110111001110111010110010010010011011100100101001000101101011001101111001000111011111010111111011011111011101111011010011101100110110101010110001010101101000110001111001001110110011101101000101100100000111100101010111000010001111001001110111010111100000001011110010000010111101000111010101100111001100101010100100011111001111111010000110101010111100101000101000100000010010110000111001001110100010010011111001000100111111100001110111110100011101010010110001110100101101011111100110101001010101110100100010000100101000100100101001100110110011111001111001101010010110111101111100110000001000001010101101000001000001100011000101110011100000110110001000000011001100101100111110010001101010000101001000111001000000101101101100001011001001100000001000010011011100111101110101000101110110100011101000110110100000111011011100000011110001010000011000011100001111011000011001100010100011000101000100100101100001000101100100001001111000001011010100100101101011111100111001011111101110101011010011100100100110011100110110111011100111111111011010110010001111011001000011111100010101011100010010111000000100110011100111010000111011101010100001101000111010100010011111001011011111111101110011011101110011101010011011000011111000100110011100101100011101001101100100110100001100010111101001100000011110101001010000000000010111000010110100011110001111111100001111010101100100100110101111011010100010010110101010100110111001110011001011101011001010101111011111100111011101000100111100110011111110011011010000000111011101110001011010010100110001000110001001000101100011110101011011001100010001001110011101100100110110100011101011010011101100101101000101111100101001101001011110111001101101111111001101011101001011110101010101001100000100011000110000001110100000100000001001111010010001000011111101101000001010000100011010010110111100101010000100100110111101000100011110001011111111011100001011101000001110110001001001100110011010010110001110000110111000010100010100010100111101000010011110000111010000110000111010011011100101011111000011110000011110011111110001110000111001010110101110101010000100100010110010011010100110011111000111111000100001100010110001001111001011111010111100010100011001110110100010100100000001100010011000001100000011101011011011101001010010111001110000001110110110111110000001011011101001010001101101001110101101000011110111111000010110000011010111101011100110010100001010100011000111101010011001101110100001011111111010001000111111101000110000010000101101101010011001000001010110110100000111100101100001110010100010010000111111010000011010001110001011001100110110001000111001001001001001110111001101110000100011100110110100011000111001011111000010111010011101110000100011110100011001101111101110101001010111000011010110011111000110111110010110000000101101001011000011100010111001001011000111000001001010010111111110010011010001100011010111101110011100100111010010111111100010001110111101111010001111101100100100000010011101100101110111111111111000001010001110100100000100000011011101101100000101101001001011100110010101101010000011011111101101110011010011011010110001100010011000010101010111010000111010000000101001110101010100111100001010000001011000011011101000001101011011111010010101110100000011101000101111010010000100011101100110101011100101010110100101110101110010100101000001011101101110011001111000110001110010101011010001100001010100101110110011001111101101110111111011010000100110101110101010011100010100100011111111101011111001111111000000101110001110011010111000000001111110110101100000110000000101001000001011011110111001001000110000111101101011011111110101011110000111110100110101010110111100111100111010100000111000001000101101001000011000011100001000101011110010100110000001001010001100100010110111001010001011001011111110100110111101110100011101110001111100010000001010111001110010111111011110110010011001100001011011101010110110010001101010001001001101011111100111101100010010111111001101111011100011110010101001110011001101001001101101111110101011101011110100010110000001011001011011101100011011010000001010011100111100010110101001110111110000110000010000110000100111000001100111001000010100011110010100001001110101011111110101010000100001000011111110111001010100100010000110000100001110100010111110001101010100111110101100001010011111100011111101110100111010011011110100011010110110011101100001000111101000011101111011000010111101010110110010111011010110011100101011001100011000000010001110001110110001110100011001110000100001100000111100100001011000110001001101111100011010111100100100111101111111110001001000101111000001110001011101011010000100000101100011000000110001010000101100011000101010010100000101110011001100011000111100000111110111110000100110011100001101100110000110011110101010110100101101111011110111100101000010101110110000100111011000100100001011011111100110010101000111010001001001010101100101100010101001101001011100110001110001101101110101101101110100100101010000100001100110001110100011011011110100111011101010100100001101000110111001111010100001111110111010111001101010010100001100101001110100110111111101110010110110001110010000111000111101101011110000011111101011001001110100011110111111100101101111001011110101110011101001011001101000000010010101101101000111010001101100100101111111011000110100101111100001101101011010110111100001110111010101101100101110000000011100100100100011101110100 +001100100101100010100100101011101110100010001001000111010110000111001001111010001001101110011011101101101100111011111011000010110101100111001001000001110100001111111000001111000110101000010001100101110111010000110111100011000001101010110100110010100110000010111001100000001001001101100110001111000100001110001111010101001101101000001011010000011101100000100000111010100101010010011001010110111111110001101011101100110000011111110101010111001101111010110100010101011100001001000010110100110011110100111001001111001011000001111010001110011111000110111111111011110110100000110100101101101011100001001010101000001110101001011100000110100111101001010100001010010100010101010100000110111011100001111101011011000101101101010011100011010101000000001101001111101011110010101010010011011001011101000001110110111111100100001001101101000101111110111010111000010110011110010001011100110010010111100000010011010000100100111010110110010101111010011100101100000111000100110111001100101100000001011110010001101110000110101101010000001000000011010110011001010111101011100111111111101100000000111001101000001000111101001100100001000010100110100111100100010001011---------001001000100111011110000001110000000100000100101000110100001111000001101110100000000010011011010111111010100000000001010111101101101100010101100000001011001001001110010100000111010011110101100110110011010000010010000001111011001111101100011111000000001001100010010000111010000001010001001010011110001101111101011101101100011011110100101000101001110110110011111101001111001110011010101101001010000101011100110111000011011011101100011100011100010110110100100111001010110101000001111110100111111110111011100000111010000110100101000001000111001010110111011011000000100110110110010100011000000011000010100011000111101011010001011011011101001001011110011100110111000011010001110110001010011000110000100110111011101000111100110001110011010010011111110010011100110101110101101001001011010100010101011010100101011101010100001010101001010001100011010010101110000110001000111000001100010100101000111011111001011101001001100111110100101001110100011011011101101001001001001001011110101010111100111001101001110000111011000001000001100111110000000000011111011011101111011101100001010110011001000001000000001011000101001111101111010110001000110011000000001011001101110000011011011001110011111111000111010001110101110011101100101010101111010101110110011000010000110101111010011011010101000110000001001010001000100111001110011100000010010011010101101010010001100001011110111000001101011110001111000110101000010111001100111101010110101000101010101110101110101100111001011101001100111111101101010110001111110110111110010011101101100111001100000111001001111000101011101010100010000111010111100011110101010011110001000110101000111010111101101101010111111011111101001011110011010110100001010101111110101011111001000000101110101100100111011111100111011100110001011111000000010011110110100001000101011110111010001101111011101111100010001100010100101100011110100001011011011110100010100011101010000111110001000101110001001000101001111000000100110000000001000011010000111010111111100111001110111000011101101111010101111001011100111011111101001010111001100010111010100100101001101100001100101101100101001011010110010010111111100101000000001001110100001110001111111000101001101000111001001101110111100100100011001111011010001001101111010010111110110100110111001001100000011011011101001100011110111100011111110011100101001101100000011111110110100011101011101101100110110101100000000000111110100111011111100010010001101111110010111000011011011000101111001011011010000001110111011011010010001001101111010111101001000101111111100000011000010011011111110101011011000110001010100001000011101010100111111111111101001000110101001001000001100111111100111010101011100001100010100010110000110010011101111100111010000111101101111011010000010010000111010101111000000100110001111010100010101000101000001111111010011010111011111110110010011000001101010101000011100011101100110011101110011010011101101000110100111100000110000100010010010110110001011001110100010001101101110000011001000111001011000101001011011101010101010101010001010101111010000011011001110000011001100100100111101110011101101000011001111100111110110111010000110100001100001010010111101111110011101011000001101110111100001100110011110001000101110010000100010100000011111010010000111000001000100010111011001100011100100111101000001100001101000101101011011000111000111001111100110011111000011101000000110000001000101100101000100101000000001010100110100011100110111011011001000111111010000011100011010011000101011110111010000011011110111011100001001011000000011110110111101100101011100101111001111101101011101100101100111100010101010000101000100100010110111100011110101100010011001001001000001011011011000001111111100110111001111111101010100110000100101011010000011101101111010100001000000101110100001100000110001111110101111010000011010001100100110010111010010010010100110010010001000110000101101111001110010010010111000000100000001011100101110110110010111011111110010101110110000110001100110111111100000001001000111101010111111001000011110110100010111100001111010101011110011001110000110011111000101111011011010010101010111100110110001100110000101010011110010011110100101110000010110101010010001100010111001100101000100010001111010001011010011110110000010101110001010010000010110110110011001011010100100100000111101101100011100111101010101101001101100101000100010011111111110001101100100000100101001110001110111101101101001100010110110010001110001101000010110111001111101100101101110100101010000100101000010010110000111001000000000111100100100100111001001101111000110011100110000111110011011110111001000010001101010110100001100001011000110000001100100000101110110101000011110111010000110000011010000011000011000110111110100111010110110110001100100001101001100011011010101000001000000111001100011010100101000111110101101111010011000001000011010000110100011000111010101110101110011010010010010011011110001010110101010010101001011001011110011010111110100111111110000001101111111110101101001110001010010101000010100000100110010000110001000010000010111001110111001110000001101101000100000101011110010011001001001111101100100101110100111010101101111101001011010000101100000111001110101100010001110000000111011010111010110011011011110110100000101000011011011000010001011001010100001000111011100100001110001000111111000110100001010001101101011001100000000100100010000100110010001010101101001001010011111001011001110000001110101110000001000111000001001100101111011110111010010011010000000001111011010001011000100000110011001100011111110110010100000011001100110010011000110100010101110110101111011110110001101111111100110111011110100101110100001100010111111100000111111111011111101000110011000111001101011011101111011000011110011001110101100110101011010001001111010011110001110011111101110010011011110100001000011110000100100010010000011000111011101110100110100111001000110010100111100111011110001001111101010101000011011001101001111100011111001001111001101100110001111101000010000010001011111001001101111100101001101000100111001110111010011001101100100000000000000001000110001011010011001001110101011011101100100110011011000101011101111 +001110110010110010011011001011111100010101000101000001111000111010111101001111011110011000010111110011010000011110110010000100111010010100101111001111001101101010110001100111111011110110011011001111001111001011011111001011000100111011000011101000001101110100001100001101101101111000000101100001000111000100100111011111010111111011100110100010011110000101001110110000000100111111100100111100110000101100001110111101010011000101010101010110111110011101111110011111100111011010011101000011111101110000101100010111111000000100000100000001001011110101011100101000100000101011100000010010111110011111001000100010001011000111001011101100101110111011111100011011111001001000001011101101100011000111011001101100111110010010111100100111100110011111100100111010101010000001111100011010011011110000101010001110110011100101100100101100110001101000010111100010100000101001111001001000011010010100101011010110110110101001000000000010111011010001101011111010101110011100000010010100000010100011101110010101010100010101011010000110011011011110011110010100101111100100101111101010100000010100110011010001010100011100000111111100000011111111110111110010101101011---------111001101111011001000010101100001111001111000101010101100111100011100110100000110101010001100110010100010101110110101000111110101010001100111100011110000101010011000010100000000011110011111000001010100100010101001111011011100001001110001110001000101101000100010011100101011010111010111011101100100100111110110110010101000000100010011001101010110010100001000100010010000000100110001100011101101000010001001101001000010010001010101100101001011100100001000001001010101111001101011011011100001000110111010010100111011100100010110110100101010110001000010011010011100111110110111001001011110000111000001100101100110100110010101101111010100101011110011011110000101110111110100011001010111000010100110011010110001000110111000101000101101010000000110100100000001000100111000001101111110111000001100110111101101100101000000001011011100100111010001111110000100011011000101000111101011010111100000111000010100110000110011011010110010010101011010011001110111000110111111111000100011110100101011010000111110100001000010001001011001101111011000000000001110100000010010001111111000000010101010000000100100111110100000000011101010011010010111011111000011101001011000111001111000101100110111110011010110101110101110000010100000111101101011100111110001100111011010000011100010001011111100110100100000001011111000111010011110110000001011010001111100000011000101111110101111011010110110111111111000111001000111111001000100111001000001101001100110111001101111001010000100010100100100111010010001010011000010111011110111011100010011110111010000111010010011001011010011101101101010001000110010010111010000001100010011000001010010110000001101001001101111110110010010110100011001101101101101101111000010001101110110110100011111111010101110111001100001011100010010000011110100100000011000110111100111001001111101001011011010101110010110000010111010011100111100111100000001011000110000011011011110101001010011010101101111011001011000011000111010011010001111011001011110010001100000001001000001101001001001011111011101111111001100000101000101001100000111001101011010011001010010110100011000111000101010110100010100010101000000101011100000100100010101101100111000111010011011011110110101010111100100001001110101100000011111010011001101010010010000110000100100011000000000100010000000011010000101110111101101011011001100110000110110111000110100110100111111011101000011100000111011001001101101001001101111010010001010100101100110110101010001100000011101100001111111111001101111011111111111101011111111110011001100001000001100011000000101100011101110100100111100100100011111100110010100100010110101100001011110111111001000110100010001000111011000011000011001100001011100010011110000011001100000010010010000010011011111001010110100011111010101010101010011101000100011001010000010001000110100011110001010011110101100101010111011101111101101011010111101010101011110100111110010011110101011010111010010100000001001011001001110100001101001110111111001010000101101111101101111000111101000011010101110000110010100111001010011011110000000001000010011100011111000110110000010100110010010111011100010100011110101010010111001010110011100110001111000110110011011001101011111000101110101010101100111111111011001100000110011101000110001101000111010100011011000001001101100000011011000011000111011011010110011100000000110000011100011101011111111101010110110100010101100110101111111111101001101101000110001111010110011110110111000110110010001110110100110100010111011001001110100101010011110100010101110000000101110001010001001101111001010001010110100100101111010011001111101001111101010011110111011010000010100010110010011000101001100010010000100110110111101010111001111110001011011001011001100110010101001000001101001000100110010101001101001100101010100011111111011000011110110110000101101010101110111011110010001011010010100011110001100111101111011110000010010000100001000000001011011110111101111011000010011101101000000110011000001101011011011010010100111101100111010110011101110110100101000010011001011100111010000011001010111110011110111011011001010110100000101100011011111010011100011101011110100111101001000110111001101100011100110011110011011101110011111100101111010110010010000101010001100110010011010110011111000101111010101100101000011000111000010100010110000010110110101101011001110100110010011100000111111111010010100111111011001101101101000011001011010111000111001000110010010111101011100111101110110101101111111001000001011110111000010110011000110111011011010110100111001001111110111110011000000011100111101111111010110111100000000000110101110101000000100001110101100111000111010000000101110001101001110111100100101001101101101111101100010010110101101101111111110001011010110111100010001100010001010010011001111011100100000011110110110010110110001001101001001010001000101011111100011000100101011011110110100110001001100100011111101101100101000110101011010011100111011001011001000110100010000001010111000010101100010001101101000110101111110110000101111000100111110001000001001011001101001010010010110011001111000001101000110100000110000000010110101110010011000100110111111011110011000110001000011001101100110100011001100010110000001011101111011101100100010010100000000101100100111011001010010010011010011010010111110110111010010100111010000100100000101001100111011111000101111001101000111001010010101100000011011000100110100010110001111101101100001001000001111001001011110110100111001100001111011111000011101100101011111111111111001011000111000101111000101111011001001011000011100111111101011111001110111100111101000101101000011010011010010111000100000011000011100101000100110111001101000111100101100010001100010010110100110101101101110001100101001111110011101000101111000100111101100111111111010111010011111101001111001011001011101110000101010110010010000101001000001101010111100011011010110010100101010000101011010100110011001000010001111001011001001111100101111100000010001011111110101010000000110111111110101001001101111001011110100110101010101100001101111001000100011100000101111000100011001010011101101000110011111100101001100001101110001101011100100101110100001110101000111010 +011010101111000100110010010010010011100000010101010110000101101001001100000110001010100011011001011110111110011110010011111001101101111000010011011001111010001111111000001000010100000001011011000001100100010100101011010111110101001111110100011110100011001100011010001001001001110010101010011000100101100110100010001011010111001000101010111011111110001011000011110110000101100010010100000001000100111010101011001001101000010110111010100111001001100110000000110010000100011101000010111110010111010000011111001010011111111011001100110111001111011101000111001010100000010010010011110010001010101110011001111001010001001010011111111001001010010011001100010101100010011001101111101010001110111010001010100110101110010111000010111111101101110001000101001010101001111000001001011111011110110001101010110100100011110000101000001010110111101110111001101000100001011000110001011111110101000001100100111011110001100000001000111011011000100011010100000011110011101111000111010100011111010100010101100110000100010110101101110111011000011001011110101110110000100101010001000111011001000011000110001101001011110000100010101011001000111110010011001011001110000---------011111100001010011100110100110100101011100001100100111000111111001100101101000001111010011000000011111110110011011111101000010110011010010011001110010001100001111101110001110100111110110101101101000001111001000001111111111111010011010111110100110100010000100110101011110011111111000010001011110011110010110000001100001111110101001110001111010000001011000110110110111101110111101111101011110010001001000110000101000101000001010110000110101101010100100101110011100110101010000010011000111001000110010111011000001111110000001010110001101001000010101000010101101001000000111100011000100100101001000101101111100111101110001010000101010001111101001000011111001010010110000000010011110001100111000110000011000100000001110001011010101011011110110110100001100101111010010100000011001010001100101001011111010000101111011111110100100010001001011010100001100000101001110101111101010100010010100010000111010101011011110011000101111100100011101100011101001000111110101110110100100100110011100000101110010110001010011111100011111111001000111110100001110011001110110100011001110010111110011110101001111101110110000011110100001000100011000001000111001010100011000011010100100001000011101000101100111001111111101111101100010101010110011001001101011100110101111110100011101100100011111011010001001100001010101000011011100000001001010010011011000001110011010110100100100010010110011101111011010001100000000110111000110000111001011000010100001110010101001010010010010001011010100010101101110100010101110111010110010100110010100001010001101111011001010101010001011010111011110001110101011101011001111111001000000101011001000001011101011001110011000110000111111010011000000101011101101101010111000100000001000101001010110111101011111101110110001111101101000000101000011000000001111110010100111011010010000101001101111001000110001010110001110000111100100100010110011000010001010101101011101010110010010101011100101011101000001010001010100101001000110100111111111010000000000011011101100011010011101111110101011001001000011001000111000010011010001001101100100101000111010111111100011111000000101110111111100111110000000111111001101110011000011100110110011010011100101100111011100010001001010110000111100100001011010011100110011011111110110011111111101001110010110100011010101101100001000000000110111011000011101110011010010101001010110010011100101000000000000110110011001010111000111000111011101011010010111101100011000111100011100111001001000111111101101100110111001110111101001000111100111111110101111100110010111010001100000010001000101011000110011111001010011000010011101011110001011011010100010101011101001110011111011011101100011100101111010110011110100100010111111011000011111101001001110000100001111010001011001000101001011110010110110111010010100101010010011101101110000110001011001001100100000111001100110001010001111010111011000010011110000111110111010111110010100110011101110111110101000001111010010110110110101010100001010010001010100110111000011000010100011001011010110111011101100010110001010001001001010010101101111110111110011010010101000111011111101110100011100111101100011010101011010111001001011010010000010011100100110111101000010101010000001110110010001110101110100110000000101101110110001010010001101100111101001100111111010001101010010011111010111111001001101110010110101001110000110100000010000010110101111101000110000011110000011110010100110000110101110001100110110111010011100001001100010000101000110011100100000010101011010101110010100000001111101110001111111001100011010001001010110111011100001000101111100000111101010111101010001110011000001000001000001001110000111111010000001111101011010101011101011011000000110110000011001001111101001011001011011000000111001001010100010001100100000000001011100111000011101111010000001011000001001100100110111100000010100000100010000010110110111000101011010011110111110011000010110000101011001001110111101000011111100000110010100101101001010010001111111001110001111001101101110010001011010001010101100111111100011101110111001011101010110010111001001011111000110111111110101011010001011000010100110101100000100100000001100001001001000001111001010100100010000110100111000100010111000110010110001100100100110110101010110001110010011111111000110000100110110110101100011010100000111011110010000111101100000110000001010000101010011100000001100010110000001000000010110110110100010010000111011100011010001110000100010100010110110101001111010011000111101111000001101001101111111101010110100011000010001100011000110100000001010110111100010111100111010011000110101011001111011001011011101011010111110000100101111011110011101111010010100001111001000111101110010101100111111111011001110010101010100011000111100111101101101011100110001011001101100110010100110011001110010010000111001000001001010011111110010001100110011000100010001101111011110101000010101111111101011110001000000000100111100001111001010101101010101011111010011111100100001101111011000001010110101110101111101100110111111111100011111111011111101111111011110000111100010011110001000011000110110000111111010111011001100000001111110011001110101001111000000101100001001011100111110010001001001010110110111001010110000101011001011011010001001011110011100000010000000100001011001001100000110100011101010110001101011011010100010111101000000010001011111010100010100100110100010001111010011011011010000101000110111110110100001110001111100100100011100100111011011111101111101100011111100000110011110010110101101111001101101010100110111001111100100011101001010111000000101011111101010011100100110010011001111011111101100100000010000100110101001001101101111101100111100010100000111101010101001010001111110110010100110100111101110110011111011110010000100010111001010100001000100000100010101110100101001101011011010000110001011111110011011101010110010000011010110000011011111111001110111001111010110111111100100001011000001011001101010101011000110101000000000110001101101010100111011100110010000100001011101110110110110011100000110101011011010001001000011010110110110001101110000000010000010010010000010100011111000001011100001001110011011101000100100101000010011101000 +010101111101010010100110011011100110111000011101111101000011110101101001010110011010110110110000100010000001101111011000100011011110100011000011100000011111100000010001110101011010001010011000000110001111000011010010110100100101011001001000010111101001111011100001101010001000110101010011111000110010000101111111001000011010110110010011111010010100001010010011101011100010101000111011010000110010110001111111110001100001110010110011000100001110101001010011001001011000001000111011001010010101011111101110001001111000010001010010001000010110101101000001010100110000000101001010010111100110101001000010010011101010111011100111010000111010101101000101010111000101111110000010101011100110011110001010001111111011010110010000100100101101100100011110011000110001000100110100110110000011011100010000010100000000001010111101011111110100101101101011010001001011010011100101110110011000100000010011110100101100100101000101011010101001100111101011110010111110110110001100000101100001110011110010111101001000111010001000010111111001101101101000100011011000001010010001100111101001100101010110000000110111000101110001001100000111011000111011000101110010100---------100011111100011000001011101110101011110011111000001110101001111001010100100101010100001100100100110001100011111000101100111110110101101111110101000010101110110000101111101101101100101101001001111001010110010110010101100001001011011101111111101111110000101000110101101100010101101011010111000001110011111101110110001001000011010000101011010000001101011111101010110001100000110101010000100011110100011110110100111000100111000101111101100011100001110111111100100110001101001010100111011110010111101111000000011010101111010000010010110011100001000101000011000011000011011100010000001100101001011111111011000011010111000100011000110111101100010001001000011011010000100001110101100100100101011100001001000100100110111100110111111100110110100010010001100010010001101110100000000100111110100001100100110010100011111110010111000010000000011111000001011001011110101011011101000001001101110110100001100111100001101001100101110011101100000110111000011101111111011110100100010010010111101100101011011111110110011111000100011100100111010100110000110111011011011001001011100011000111110000110111010000110010000101101011100100110001011111111010110000011000101110100111010011110011110100101010110111001010100010111011011101100000010010000101011010110001100101001110001010001011101011011011101111011111000001010001010010000100100000110011000111000111000111000000101001111010000100110111001011001001010111101101110110110001100000010101011000010101101001101001000111101110010100010001111000110010100111011000100010000111001110011111010110000100111010000100010110101010110000100111111110111101110010100000101000000111110111010001001000100110110001101010011001001000000011111010001111000101101000111100011000000101001000111101010011101110011010010001100111100110110010100100001001001010101001100001110101001111110100110110000110100001011010101010101110000010001000011001110010111011001001110110110001111010111101110100100100101110000111100110000010011111011011001011001111110110111010111111111111101011111011010001001000111110101110000010010110100001110010011110010101001001011001010111001011010111000010110000101111100110100111010000110000110000111000110000111110010101101101111011110100101100111101001001100111111111111011010111000011010001001110100001001100111111111010000001010100000001001000011000001011011001111001110111101110111011001010111010101011110011110100111001100100001001101110000111111111010011010011110111110111100001111110001110101100101100101000110011101111010110010111001101010001010010101000110001100001010010000110000001101010011010010100001100001100111001101000100101111011001101110010110110000110001011110000011100010111001110001000100111011001000011000100000001110110001110000101011101000111100111110110010011001111001010111000011011010110001111111111101110011111000000000000010100010000010110100101011101110101011010010111110001011000000000111100100011110101001000100010010111001110100010000011000100001110010000000101011110101111001000111000111101010011000111001001101001111010010011000101011101110001001110110111001101011010101011101000001111001000001000100101101101100001000111001100110101011111110011001100111011011110101001100010010110010011111001100001110110001001000111001110001111010100010110000111101001010010110111000001111011010111111100010101000010110001110000010000001110111000001101010011101001100000110000010110110110101000111011101000000110100000000011110110000011010111011100000101001001011011011101010010111111010100111111011101000001001001000100101110100000111010000010000001001111001010100100101001110001011110001100101010101000010101110010010101001010111010111001101100010001111010110101101000000110111001001110000110100100111100100010000010110011001011001111010111101111110101100010100101111111011000111110001011110110111100101000110011101001100000000110111001001000010110100011110011000000100110011001001000110010111001100110111111000001010001100101111101011000000101110010101100010000111010101011101101111111100100101010011000101110100010010111110101110110010100001110001101011101010111110111100111100000010001100000111100100110111001110100101010110010111011001101101111000101001001011100111110111101000110010010101111001101101011101111000111000000110010100110001110111110011011001010011100001101000011010111001000000111101110011110101110100000011110110100111010101000000010001000100101011101010001000001110100110010100100001110110011001001000101100011111011011010010101001010111100100101111100001101100111001111010100111000110011010101111010000110110011010001010011100111101001110111000111101000100010111110011100110110010110011101111000110000000001010100101110010111101001110000100101011100110101001101010011001111100001000010000110101010001011010100010110111010001011100010011110000000000101111110101100011101010111101100111010001111010001011100011111011000100111100001111010010100011101011000111000010000111100011010000100100110011001101111001011000001000001000110000101010111111011111011111111000010010011111101100010010000111000100100010011011010000100100101010011000111000110110011111110110110010010000011011100100111110000010100110100011010001110110100001111001100000100001000011111101010000001100110100110111100110110110011011001010011110100000111111001111111101011101111010000000000101101111111101111101001010000001111111000001110110011100101011111000100110111110001000000000010100110001110111101111011110000110011000000101010010100100101000011101100111100011011010000100110100101111110011010001100000000110001111110000010000100110000010111001101100100101111100111110010011010100010001000110100100101001110000111011000110001010011110010100010000110011100011011001010101011010011011111100111010100100001010111000111101110100010010110100010000111000001011000110010110011101110010110100100101110100010001111101011110100000111010110111111111100010001000110100011111100000111011111101001001010011011010000000100100111101011001011010111111111001001101100100000100011001111001101111011110010110110100101001000010100011001100000100011101010100111101101100101110110110111110001011000111111001101000101111110001100001100 +100011010001100101111101001100011011001110101110100100111100100110010011010101101101100111101010110001100010100100101101110110001101000010110111001111101101011111110100100001110110011000000110011101000011010100110101111010110101101001001111001000110100100101000000001011010001010110010011111000011100000110010100110100010000001101110101001111100110100000111111101001101010100101110110010101110100011001101110010010011001110001011000011011001111001011001011110001001100011000110111111001001101010000101100111000101110001110001010010010101111010001010101001101001101000110101100110110111111100010010000000110111110101110100101001111010110101111000001111000111010110111100100001111101110001000101000111001111101011010111000110110111101010111000010001101001000100001101000101010110010010111101110111100100010110100110111001110110110111000001101100110110011111101000110001000011100100011100011101100100101010110011010100100100100011001111011100100000111001010100100101101000111001001101001000001000111010100010010111001100100001111101011100001000011100101100110001000100100011001001010110110101010011000001000011101001000101000001001001110001100000---------000001101011000110011101100011011001100000111111110011100000111111010100000101001111101111111011011100100001000001101101001001001101000001101001101000110100001100101111101110111111000111110111000110001111001110011110110000010001001100100100101110111101011110110010111001111001101101001101101011000110101011100011110011100110011010000101001111110011110000101010110010010010011011001001011010100010011111010110111000000011110010001000010100010000011000010111100111111000100100111010110100110110000011000000001110101100101101110000011010101001001010011101101011001101010000101110101011010111010110110001000110010111001010111111000010110101110001010001011101100100010110011010001011101010110000000111101111010101010101011001111110110101100000101010111110001101100100001100010000011111111111100111101010001101010000011101100001000111100101101110100000000111100000001000101100111000011000110001010011001111010111110001011011111100111111000010111010000001001111100111011000100111100011010000000101000100111110100110000010010100011111000110010010100110001111110111010001001010111010011000100010011101100010001001100000010101011001111101000011111001011010100110001111111010101001011101100010010000101000011011100011110110010011000010010011001010010100010010101110000110100110110101110011100110000100101111010000011000001001001101011000110100000011111011111110001010011111010010011110000011010000100001110110001110000100100100010111100001000000110000100010111010001011100011111000010010101111010110100010110011110001111001110100100010111100001111111111101111110110010010011011101010101001000101100101000101010000010010001111110010110000000110001011010111110001000010111100001100001111100000110101000010101000100100011011110010101010111000011110001001100111111110011101001111100011000001011000100011011010111001001000110010101110001011110011010101100011011101011101111000110010010000000111101010000000111011101111101101000110001111000011111010000001011110010001011011011011011111011001001101010010011001010100101101001111011011010111001001110001110110111000110111110000111010001110001110010010111101011111001110000010110010101011000100110000101101101000010011111000010010110101001100111000101110100111010000110100101110100011101000001010101001111101010100011100010001101110100001100011110101001100010001100111111011000001100110000011011010111111010000100010011100100100100011101010110011011111011101111000100111010101011101001111010100110111101011000011001010001111000010010011111101100110101110011110110111010001000011101101011010001111010010101110010100011110001101100111010101000011001001100111001000000000001110101001010000110010011011000001111110111010100101100101101111110010111101001101011110110111010100100000110100000111100011101111010010000000011101111101111001110101010011000000000100100111110001011101001010110111110011111001000101010110100000001001011110100000111110101001110001100110010111000001110111011000111110110110001100010101110011010010110101110010001001000101011101000001101011110000000111110000011010111010110011011100100100011001101010011101001111100011110110101101100110011111010011111110001001101011011110111110010001110101011110110110001111001001000110000110011010001110001000000010011101000111010111110101110000100000010110000001100001011111101010011101100100101110110111000100000000100111011000110000111100011110010000101101000001101111000000101101001100111111001010100110010010101000000100101010000111010011101110010011001010010111110111101010011101101001010100010001111000000000100010111111010110011100011000110111011010111010101100000010011101111110111001010010001110000000010101000010101001011011000011101110010011101000100100011101010001010101010000010100111010011100010001010110000000111010000101011010001010110000100000100011000111011110011011001111110000100101111111011001111101010101000111100111010011100110101001100111111011000111011000000010101011000100000010011000011010101110100100010111110111001111100101000111010010101010001001000010100000110000110101111000110110101011011100110001100001010100100000101110100000100101010000010100000001101011011001110001100011110000001011001001111100110001111010011110001010011111011101110001110011100010010101001111101111000010100101111111110011101110110100101111001011010111111100000111001010000111011011001011101010010001111111101010000100101001101010111110011110101111101111010101110000001001111011001101000110000110001100110111101100110011100100111000010110001010001011101010100011101000100001000010101000001100000011000010110111100011100011101010100001000100011001101000100100100100001101100010000000010111000000101001100000101111000111001011111000100110110100100110101110101100100000000101010010101101000111101100101110001010110111100101000001110101011000101110100100010010001100101101000111000001110111101010101110001000001100001001100000110100001000000100010000100101001111111001101010000111000110110010100111110001111010000110111001100101001010011101010001000101001010011100011010111101111000010101001100101101101101010111000110010001110011000110101001010001000110011110010111010101110100010010111100100111011110101000111110101101101010011001100001101000000011110011100111111011111011110001110101111010000011111001110111011101110111111110101001010111100110000100110101011011100101000011111001010110111001000011110101001101001110111100011110101000000101100001001110000011100000100000101101000010111000100111111111111010010111110011110001111000101110100110100000100000110111101000001100110100100101010000010111100110000011010010010100100001011001110101000100010110001100010101011110101011101101111000011111000111100001011000101111101010000100100001100111110001100000000011110100100101011100110011011101011111110110010000000000011011100001110100011101000111011000000111101111010010111001110010110000111111010001101111011100000011101010111110100100000111100000010110010101011100111110010010010100101100000111000110101110111001010001110110111111111011110100101011111100111001010010111000001100010100110111000101011100101011100001101111101110011000100000110110010111001001010011 +ls288msgs +111100101110011110101011101100001001110101111101010111011100100001101000011101101111001001100100110101111001111111000011100110101000101110101011000111100001111100010100011110000001010111100011010011101110000100110111110101100010110001011001001111001100111110011110111111011001111010010111110100000010100101101000001010000101010110101001110110111100010001110100100000101101111011010001001011110010111110111111111010110000010001011110100110001001100101111000111111101110100001111010101010010100101100000101111001110101011011011110110111101000010010100110110111001001011011100110001010101010101001010000001000111000111001110100110111001100101000001110101010010111100100100111010000101011100110011111101011010001000001001011010000110000100010001000000111110111101100101000101011011001110101000101001000100101011110110101110010110101001100011001010000100110001101111011011111001101001101010000001101100000111101001011001100110101011011011110100100001100011000101011000100000100111000100100010000010110001101001001001011001000111010001111011111100100111000010100000111000011100111010001010101101001010110000011001110011010010100111001101001010001100010100110100110111100011101001111110001111011000001111000000110000001000001000011000010100001110011000001110010110100010101000100111101011001100010101110100100111000010010111101110101001110001010100111010001000010100011100100110011001001001011011011000111000000101111000000101111011111111010011001111001001110010010010001010111000011010110101101000011101101110011110001000001101001001111100110111000100100111100100110110011011111110111001101110000110101100111100100101000101010111011010010101100111101100011111000111110110000110010110111111101100001100011001100001101011101110111001111010100111001111001110011010111010011100011100100101100101011000001011111111101111011101000000101110100110101100101111010101001101111111000110101111001100001111001100110111001010111010001101101101101101110110000000110110100111001100011000010101110000110011011101010000100010101101001100101001110000011011100011100011101100011111111100101100000110000110011010001000100101001111101001011001101010001011100001101110010110110001010100001011100110000000101011100110000010110111011000000110001100101100101001001100000001001010100101100110101111101001001000111100001101010001000111111100010101110110111000111011110111111110000111011010100100011010101010011001101100101000111011110101001001010001110000011010110000001001110100011001000110110101010100101010010000001100011101001010101001011011010100011001110101000001011011101001000110001100001101111110110100001000111101100100000001000000000101011101000010001111100000011101001010001010010001011010111011101110101011110110001111000010100111010101010000111011011100101110100001010010011101011000101101111101101110101101111100111110010010010001111100000000010100011110110111000010100111010111010100110110--------- +101111010110000001100101111001110100010110101101010010001101111011111110110011100011111001101001101100111110111111001100100101000001101011100111111011111001110000101000011011001001101110000000001101110011000000110001101010010010110001010110101011001101000011100001000110100100111101010100110011000111011101010000011011110110010001011100100100110011010011111011001101010111010101000111001000110000011111101111001001110110101001101110011011010111101110100100000111001001101001110001111111110111011101110010010111000000111101001010001100001111010001100100110001101000011000000100010111010101100010011110000110110010100010110110010111001000101100010001001100011101011011110010010111010000010010100011011000011101010100101111000010000101000100001011111110010011000010001101110100011001101100011010011101110101101001001000101101100100110010011001111101110000000110100000011100101000001100000001000100001111001001010001111001100110001000001011010001010000101001011100000111100100101100110101101000101001101011011101011011101000100100101110001001111010101001011100110010100010010101010100000110000111111011010110001001101110011000100101011100110000101101011110100110010110100000011110100100110010110111011001110110001100111101000010010100010100011010111110101100111110100110001001010101001110100110101101010110111001110111110110011110110001111010011110110000011101111000101011010010110000101101111011101001110011100011100001010010010111101001100000101000101000111110100100011111011100011101010010010001010011111000001110001110000100101001011111111010111111111010100011100101010111001010010001000010011111111000110100011101011100000010101111111010011010001101100010101001001000010000010101101010111010101111011101101011000000000001101111110101010010011010110111111010010000001110011111001010111111101110010101101001001100110100101011010001110110111000101001110010111111111110000011110011010100110010111100001111000010001110110110111100011000000110110100011100011111101110011001111000110011100010101011010100001000000011001100001011111100101100000001110000000111110001000011001000110010010111010001011111100001011110111101000001001000011011111000010101000111100111100100000110110001101011011111010001011001111111010111011101001010100100010110000100101110010011001101110001010011101010010000101000010110001001100011011111011111000001011010001010010001011001110101000010111100101000000010111000101000011010110001100100000010101010100111001011110011001100101010000010111100011010000101100101011111010010100010100111101100001110100011110000111101011011111010100101010011100000100100011001001100110001001101001010110001011110111001011110100111010010100010111110000001010110011110000101110110101000000001000111010001000001111000110111010111010110010000110111110011100111101111000010100110011111100111101000000111110100110100111000110110110111111101101011011001111000111110011100111000100--------- +011011101100100001011100001010100101001001111101100111101011101000101011101010111100010010100000010100110000001111100110101001010011111010011100010101111111100000010111001100111100100011101100110001100100111111101101001011101111100001100100111001000111100110111110010110111010001010001000101000000110000010010010100111110010001011100010100101111110001110010011101000110011110000000010100001101001100111010000010010110100010111001000001011010011101001011010101101010011110011111101001011100010101001001101010000010011111010101100001100110100100111110010101110110001001101101101101010101001110101110101100100010101000100100111110110010111000000110100100011110011001100110000111101101111110101011111000000101110000010011010110101011011100000010110010010000001100011100101011110110011110010010001001010011001110110110111010110110110000101000110010010111111111000101110110001000011110001111010101100101001010000001100010011001001100100000000001000000110101011100000100000111010110010110101011100010011110011110100110001010111110101011101000111101011110000111000110010111000010010101100111101010110011011010010110010011101000001110011000001100101010001101011100111011101000100010010100100111001000110100101101110111100010101100100110011100111011110011001011001111101001111100101101000010011100111100001110100000100110011110000010111001011111010001111111101110100001110001100011110101100100101010100100000001111010001001011111100000111100110001111010110001100010110111010110010000111110110100011011010001100000010010011000101000110010110011111111001000110100110001100010101100001110000110111011001110110111110111100100101100011000000000110110110111111111010010001101100000000010000111000111010110111101100000100110101101111010010100010101101001101110010110110000000001000010101000010110011010100111000111011111100000000100000100110011001101001000011000111010000001011000000010000000011000001111110000010011001111100000011111001001000000000111100101101010010110011110111100000101011010110010011110010110111101010100011001111101010001010010001111111101001000110010100011011101111101010101110001001001001000010010011001101100010100111001110010010011010011000110001000101010111101001110110111010110100010010101000000111011001110100010100101001011011011011011110101110101100001001101110010010001110110000011000000110110011000110010011101110001101010111011101000101000001010101111001100000001111000010100000001000101111010111110111101101110111010000101111101001111110111011110011100110110101011010100100111110011000010111110101001001001111001011000111101111010010100000011000000110001110011001001110001001011101111110010100001111010011111001110011010100001100100101010011001111000110011111001011110101011000001100100010111000110110000100111111011010001011000011110000100110110110001010001111010110110011011000111101100011111101010100110011110010111000011100011010111010111111110100000--------- +000111011000010110100100101111100110001001010110100010001001101001000001011100000000101101001001110010000001010011010011100100001000010100011010001110111110000110101111101011010010001110010101111000111101000011000001001011101100010100110100011001110110100010000000010110001010011010100111010001010101110100000101010010100101000000110111001010111001000100111101011000000101001001011000000010111000010100011010010000111110111100101000011000110011100111101011101100111111101010000010110100110010101011000011001010110001000010110101110011111101111110111010011110100001110100100111011001001100110001010011011101000001110100100001010101101011010001110011001000110101011101001010110101010100011111110010101110101010110110011111100000010100101100001000111000000011101000111110010110011001011010101101010101111001010110101101101000111111000001000000110000010100000011101001101001110011100010000111100000101101011101100110001001100000001100111011110011001110000110110110101010011101100000110110110011101101011101110000000110011110001110100000110011111100001011110001111000010010110010011011100100110100011000000110010101111011000111101110011000101010000010101011001101110111010100101001100101111001100111010111101100110101010111100111011000000000000100000000110000001001001110010110001100100000000001111110011011100101110011010010010110010001011000111000110111101110100111101010100111010010000110111000000011101111100100101101100111000100010010010100111100011000000011001110110100100100011000110010111000000101000110100000000011110101010001000011100000110100100000000001001111101001001100101000111000110011100010111011111100110101011010110011101110111001101100111100001111010111101101000101001010111110011100010001101101001000100011011011000100101111010010000010110111100000101011000101001111101010010000101111111011010010100111001101011011000010001111110110110000010101101110111101101110011100100101110010111101111010110000011000010111101010000101101011011011101000010100100001010100011100111000110111111100101101011111111111011111010110101000111101100000000001010000100011100010010101000110100000100100101001000110001010000111110010110111010001111101111101101001010100010011001001110111100111111100100001010111000101100111001101001111001001110010101111001010101111001001100010011011100000011111010011101110111000001001000011001010111100000111001001101010010011100111000011101011110110111000010111100000001001000011111001011001001010101000000011001110101100101101110001000000100010100111000101100000011100001100010111011100010010001100001000101110110101100100110000110101011110000000001000000001101101101111001100101010100100100110101100110110000000010000000111100001010001000011000101101000100001010010001111100010111010100001000111101001111011110100111000111111010100010101101110010111010100011110101011000101000110001111010011110111101010011010100010001010110001011011010001100--------- +101000010100011000100000101100001100101111101101101010100110111011111001110010000011100111111101110100000111111110011111101111010110100110100101101101101111010101111000101000100111000011010111111100001101011100111101001011101000100101010011000000100011011001000111011000001101100101000111010001111110001000010001011011001011111001101011111101001000010101100100000000111100000001101100000111110100011110011100101011111011011100110110011111000101010010001000011011000001011010001100011010011110000010011101001110100000110111111101010001101011001111010101111001110101010000011101011010101000110111100010100110011010100110010011101110100110101101010111010000101110000110011110000100101101111101110001011010011101111111010001110000100111111101111011100100011000010001001010111010010010100001011110100101111001100011111110111010000100111110001100011101100000011000111110001000010000100000001111101001001110100100110011111110001111010010000110100001101000110011011000010001101001111010000101010111100110000111111010111111100010001000110100000101011101000110100110101011100111000001010010000100111000010001110000001111001111110011101111100011010011100100001000011011110001111010011001011100100111100001111111101111001001000011100101100110101100010111001110111111010110110000011100100100100101111001100101001001011000001110001011011011001100010110010110100001000000110110111010000111011101010001000100011010001001100010001110110000001100001010100001011001100101110001100111111101001110000111110101110110001010101111010110111110001011101010011110110010101010010110001100010011010010011110111110001001011011001001000100001110010010001011011001100110011011001000101011100100110001001101110101101011101101000000010100101111001011100101001001011100010001100110000010100000010011111111111001101101111001100010000001000101100001101100010011110010011001011010010011001101111111110000111110110101100001111011011111001001000001000101000101101110011001110111101001100011110010110001111110101011011011010110100011000011000011010111101001010101101011100111001111110010100101100111011101011001001011000010000100010000001110010100101111110000000100011010001100110101010100000000010001110100111000010100101110000000011000101110101000101000111010010100101100000011001001010110000011110000101010011100111011001110000101010010011011000000000010110100101010101011111010011000011110101110011100011010001000000111011111100001111010011000100000001101011011100100010100001101011001000110111110001000101011110000111001101010000100110100101111000010000111011110001111001001000010101011010111111010001110010011000101100101110101111101101011101111111001000000000100011000000111001110000100010101011000111110111100100001001100110101001011100000111000000100110000010000010010100010001011111001111101010010011110000110100100110110001010110001011110011110011001111000011100100000010100000001001011010110010011111--------- +100100111001001011101011100010110111101000111101101110011100110010101100111110011101110000111000111010110101010010011101000000111010000110111011000001001010110001001000101000000111011011111001100001100010010110100110000100001000101100110000001100110100001001011001110110100000101010101100010010111111001110101010001010011011010110011011000001111100111111110011001010100110100010000101010111000011111010101011010001001100000101011011010010100000110000011111110101000000111110011110000010111111110011110101100101010001011000110100001000101101000000001010010000000111000111101100001111011100100100011111010011100011001001001010100110011011000010101011000010111000100010010101100000110111001011111011001100000001011000100100001010100101100001100101000010010111111010000010111110011100111110111011000011111111001101001100001001100011110111111110100000010011111100000111001100000110000100100101000011100111001110001111110000100000101101100101100111000101101111110010000110101110000000011111111010100000100000100101000001111000100001001011100111010011110001010010000100110110111100010110100001000010011001110100111011100001010100110100000011001000100111110101000000000101100110101101110110111011011100001010011010101000000001101111001100100111010011100010101001000101001100011000010110101100010101111101110110000000110110110110011111110101011001101010101001000000111011000001100100100100011010101100000111001110010100110000100110011110000010001000010100001000100000011111000111100010111100010001111110001111011010001100110010010100010110000001010110111100110110000111011101011110011101111110100100100011111101110110011010000000011001011001111101010100011011000001111111111000101010011001101000001111110101100101111110101000110101100001001000011000111101100000100000011010001001111111010010000010111001001010110100101100100000010011100101101111010110010110011111011011011111010011100000100101011000010110011101111001101100100101110010111010010001110001010000001101001010001100101010110100010111101000111001100000110000011100110010000101001010101111110111011001000111001111101100000000110010000101001000011111010100100101110000101101011011111100001111011010101011010111111001000101000111000001011000001011011101110000011000100111100010000001011110101011110010000110100100101010100111001010001011001001011010001011000010000011111011100100000000101101100101010101110111011001000111010011001011111110010011111100111100101110100101001110110001110001111101111100010010001010100011011011111101110001101001011001001011111101110011110010100101111011001010101101011000010100101100100101010100000101111101110110110001011010111110000011101100000110111111100011011110101100111101100000011110111111111001101101000001100100010111101111010100000100011101101011111011001001100101000110100111101001111110101000001001011000010110010101000001011011111000010001110110011110101110101001100110101110000--------- +011110011101101001011101110000001000101010010110111010011010010001101111010000100000001101001100001011111000110010100111110010000000111101000001100101001011111110100111011001101001010001010101111011011101101101010011000110000110011001001111010001101010001100101010001001010001001011110010001000110000001011101110010000111100000110100000101000110011101111011000011111101001000011101010100000001011000101000001111110011100000100111001001101110001100100101101010101100000010100011011101111001111110100101111000001111101000101110010110111011001000010111101000011011111100100111100101000111010011011101010100101110000111111000110110000110000100010011010000011010100000110111101001001111100101010111101101001001111010101001001010110111100100100000010001101101010100010010111110001000010110101011011001010110100100001111111100111010110011010011111011001010001000100011001011010100011101011001000011011000011110010011000011111010111111010011111010101101001000101001111010000011010001000001001000000001100101100100110010110111000000111000011001110010001001111100101001010001011000110101010011000110101111000010101010111101111011101111000101011001111001101000010100110011100100011100111110110000001111110100101011110010010110101011010000110111100010110111011000100001001111011000100100100011000011100110110001111111010110101101010100100001101100010111111010010111101000110011110001001000110111000100010010111010111101101101001110000010011110100010001100101000100011110011100011101000011110100011000100111000110011010000010100110100010010010001010100000000101011101000110000111110110110001010101110101101000101001011011100010101001100111101101000111001100110100100101000001110011110100111100011111011001011101100110011010100010100000100010100101001001000010011000101010101010101101100110111101000011000100011010000100001010000011100000100001010111110011110100111110100110110010111100010111100000111101011110001001100001011001101110100100011110010000101000010101001000001011011110011111001011011010010111101110011101011011010010100010100100101100010101011110010001110001100011010001111000000001011100010111001000100010101011101101101100101011011101011111011010010001111111101111001101001100001111011101011010010001010011111000101011111111000111110100011000111100100100011111100111100000100111011101110110110000111111110011011001110101001010011011000001000110000011110111100101011000001110100111111101110110101011111100101111111100111101110101000010011110101110101000110011010100110100111110010001100010011010110010101100000111101111100010011011011010011010001000101101011001010001011001110101101000110101110111111101101011001000001110111100000000111100111000111100101101011111000010001011001111110100000100101110001011101100010101111010111011110010111001001101101001000011110000011000011100110101001101111100011110100110001110010000000001100010111011101101011010101110100000011110011--------- +000100001010010001010000010010111010000100001000100100101010111101111110110101110001110000011101100101101111111101010110011111100110101010010000100110010010011001101011110001111100101111111111110000001001010000001110100011001110001111110001101101110101110010100111000111010000010000110010000100110010101100100110011101010110011100000111100100001111101100010101111101011101110101000011101000110100010001101011110010000001111011110011011100100100101111111110100000110001110011101100111001111010001001111110000110010111101111110110001000010001111010110000100110100011100100010000100101011100110110001100011011101100010101101111011101001110011000010111110011101100101001100111000000011011011011011011101101110001110111100011110101101010101010111011101101010101010111110111111001001111001110001001011001010001101001010101001011010101101000101010100100100111011010111111011001000010111110111100000011011101100111010001111011011100101101101000010010011101110000011110110101001110011001101111000100011111011110110001000111001111100110100100001000101010100101001111000111001001000001000011100010000011011010111001100001110110101110011100111110100110111000111100001001000100001100000010001110101001000000010101011111111110111100101101101100111010101100010101101100111010110110111000011101101011010010000011001000101001010001111001001100101011110000100000101111001010001000101001010001110111101000110010111100100101100110010111010110110000110010011101011101010110010001001010010010000011101010110111011110110101111010001011010111110110010001001011000111100010110101110000010000000100000000000101110100100001101110101101010011001000011000011100011111011110110001111110010000100111110011011001110010100010011100100001000100011101100100010110011010001111001000111110010000001011000000101000110111111100110010101001010001010010000101011110101000001111010010001101010110001101011000000110010010000000100001111011000101110100101010110011000110110000000000111110100110000001111101100001111111000110000101100110000010010100000111111101011100010001101000101011000010010001101110000100000001000101110011111001010111111110010101010000111100000101001110001100111100001000000000011110001011001101111110001000011010110100101010101100000001000001001110000001010011011011110011111000101111000111101011001111110010000100011011010110000010110110110011001101100010011111011100111110100100011111111101100101100011101100111010110100101011110011110111001000111111100000101101100011000010011110001010110010111110100000111001100101000110011010110011101010111111101101000111000101100110110110011001100100010001111000110001111100000011010100111001000100110000111001000000001001110100100001101000101100010110000001001111110100000001111110100110000000111101111010100111011011010001001000011111101100110011010010111101011011011111111111110100101011110100010101010100010110100110011101010000100000101110111011000--------- +010011001000001101100110001100100000101100001010101010000001100000101101110011010111010100101010100111011010111011101110100110110101000110011111110111101001011011011001000110001000000101101110000010000000111100110011110111000001100010001010001001000100001100110101100111011101111011101001100100101111110110001000010001111010000111111011100001110000000110100011001000110010101001110010110101011010000110111110010010011110110111011011101000100011111000001010101100010011011110100110011110010010101101111011000011010011000001011010101001111011101100010101001001110000011001010010000011010010110101000011100111011001100110101010001100110111011101110000001011101101110100100100001001001011110110110000111101110000110100000000001000000111101110110000111101000010010111011111010101110100101000101100011111111100111010010110001111011000100110000010000110001011101111010110010101010110000000001101110011111100000101001101010110011000001000000101111101011000001010001111110011010111111100101010111100111111000011010110111111110110111010100111110100010100000001000001011111010011100011110101000111110100001001000101011111000010110001111010011010000000011001111100001000111111111110011110100100101101111111100101001001001000011111000000110100110100001001100001010000100100110101001110001001111001011001001100010100110000000001000111000111100111001010110111010111010001001111110100111010100011101100000011011010101000111001001010000001000100110101111111100111010101100011110001100000010110001101101000001000010001000000100111101100000101001001001000111101100011000011111010101100010111101111010111010000011100101000011111001010100100001001011001010111011010000101011001111100010011101001011101100000100011010010111111100001100010101000011110000111001110010001010001000100010111101101100101000110011110011011111000111110111100000001101110000001010100000001010111101011101111011110001100001110001111111000000110011001100010001101010110010111000111010100100101010001110100100111101111111001011001100000101111111001001100000101000111110000100010011000001010000011110110000100011010000000110001100010100110010100111100110011010011101001001011010000010110011110000000011001100001001111001001101100010111011110101000101100011110001111010001111011011111011111110010110011011100000001111110010001101110111100000010101101001101010110001100000101010010010000110100111110110000000111100010100011110001000000010011101011100111011101001110111010010111011111101111101001100111011001100111011101000000100111001101101111101001110111010111110000110100001000000111011000010011100100000101000001010110110011010010100110101001101011010101111001000000111100001000010110001110101011001111111110011111011001010011010001111100010000100111100000111001000001010101111100000011110110000001011100100000110011101011101110111110001000010111110110110000100100101011000001001011101101001000111001000110010111110110011--------- +110000100110100110011110000101011010100100000010111100001001011010010011100111100011001000111100011110001110111111101011101111101111010000001110100101001101001010001000010110110110010110001101010100001111011000110000010000110000111111000110110010110100011010101000110111000100110011000010100011000100011010001100010111101101000111110101101101100101111111001011110000010010110001100000101001011011001011101001111111010001010010100011101000000110010000010010110011111111101001000110100011100001000010010101110110110010100001010000111101110100110110111000010001100111101011101001000011010000001111000110100110101000100010111110001110011111010011010011010011111110000001001101000110010001100000001111001100001000101011101111011011000100010101111110000110001010110001111001110100001100011001101111001110011110000001110110111001110101001011101100111011010101011011001101000110110000001100110100000000100011011101000111010011100001111101000000111011100001001011010111011111111101001110100111111110110010100111011000000011111111010011111100110111110010100101010110101100101010110010101111011110011011111111100111111101001000100111101110100100111100001001001000010011000111111110110100011001011100111100000001111111001100111100001001010000100110011001011110101000110100010011101110010000101111111001101011110101001100000101101111111101110000011011011110001101100010011100011110000010110001111100011110011011000010010011111101100011111110011000011101011110010111101000001110000011010100100101110010001110001001111110011011010100111000101111101001001110101111110010101001101101111010000001110000111111001011000000101001110001101100101101010001010110001111111000001001110101001000001100000110000011111101011000110110010000100110110011011011000001101100001001010001001110000100100110100001010001010111011010000001010101011010011101101111111001100100100011101001101110101110110100011000011101000100011010110001001010100000011110000001010001001100010101111101001110111011010110001000000110111011101110100000010111000100001110111101011010100100011111000010001010000001011100110100111000010001100100111011100111011100110001011011001110111011111100111000110101101110011111010110001111111101111101111011111101110001110110110000111100101101110000001101111111000000011100000011011000011111101100110000111111101001110011000111001101000010000001110001001010100001110011010101100001000111111001000000101100000010111010000110001011110100011011101110100010001010100111000010111011001010010000011011110111000111011101111111100110000110110100011010110100000100100100010010101100010001100110001011111110101110000011000100011000001011110101111010110110101000111111000000010010110000110110010110011011001011010000001101101000100111001001001011100010010001110000110000010011100001100001101010011111000100000000111110011100001110100100101001010001111111010111011011011100000110111110110001111011110001000--------- +ls288cwds +001010101010101001010000001000111000111001110100110111001100101000001110101010010111100100100111010000101011100110011111101011010001000001001011010000110000100010001000000111110111101100101000101011011001110101000101001000100101011110110101110010110101001100011001010000100110001101111011011111001101001101010000001101100000111101001011001100110101011011011110100100001100011000101011000100000100111000100100010000010110001101001001001011001000111010001111011111100100111000010100000111000011100111010001010101101001010110000011001110011010010100111001101001010001100010100110100110111100011101001111110001111011000001111000000110000001000001000011000010100001110011000001110010110100010101000100111101011001100010101110100100111000010010111101110101001110001010100111010001000010100011100100110011001001001011011011000111000000101111000000101111011111111010011001111001001110010010010001010111000011010110101101000011101101110011110001000001101001001111100110111000100100111100100110110011011111110111001101110000110101100111100100101000101010111011010010101100111101100011111000111110110000110010110111111101100001100011001100001101011101110111001111010100111001111001110011010111010011100011100100101100101011000001011111111101111011101000000101110100110101100101111010101001101111111000110101111001100001111001100110111001010111010001101101101101101110110000000110110100111001100011000010101110000110011011101010000100010101101001100101001110000011011100011100011101100011111111100101100000110000110011010001000100101001111101001011001101010001011100001101110010110110001010100001011100110000000101011100110000010110111011000000110001100101100101001001100000001001010100101100110101111101001001000111100001101010001000111111100010101110110111000111011110111111110000111011010100100011010101010011001101100101000111011110101001001010001110000011010110000001001110100011001000110110101010100101010010000001100011101001010101001011011010100011001110101000001011011101001000110001100001101111110110100001000111101100100000001000000000101011101000010001111100000011101001010001010010001011010111011101110101011110110001111000010100111010101010000111011011100101110100001010010011101011000101101111101101110101101111100111110010010010001111100000000010100011110110111000010100111010111010100110110---------001001011001000111000101011111101010000011111000101101010011110111111100101100001110100000110000010000011000010100001111100011011000101011101111100111100111100100110000100111110010011111100111100010001000110011101000000001001001010100100101100101011100001000110010011111110010001000001010000111101010011101101001111100011100111111010110011111001111111111110000001110110001000011110101000111001111111100100101011101111111001011110001001100001010001010101111000101000101000111000100101100011100110011011101000001011001011100010110100000001000111000001111110101000011101110100001100000001111011110100101000100011001111100001001001100011010110001101111001100011111011000111010000010010110010110000010000100011111000110011110111110001110011101001010011011100110100101110111101101000000111001000101010010010011111011001101100000011000001111010110110001101101111101011101001111110111000111101111100011101100001000101111010111100010001000111011111001110101100110111110001010000110010101100011011101111011011011000001101111001011000110110010101111110000000010111110101011100100010111000110110011100011001010111101000111110101110101001111010011101000101000100101001110101101110100001001101000101001100000010101111101100111100110000101100111101101001000011000110000100110100101011010011010111111011100001010111111011011010100010110010110101010101100000000100001111101010110011110000001001010111111010100011101100110011000110111111100001001010110101110111101011101010000000011001000100000100111100101001010001110101011010000000010001111010110110001011110000101101000101110001000011101010111100001101110011000100011110011010000010011101101010011001110010110010100001111101100101011001100111010101100010101110100110100101111111111100110001100111001100101001100101100000101101100111011110100010001011011000100001100010000100101010111000001001001011001000000101101100001111100000000110001101100101111110110100001111011111110011100101110111110011111010010001101000010001001101010000111101111100011111000101101010000101010101010001011110000100000101100000111000100011001001010111110010011100010110010011101101001101111000101010111101101001100100011000111101011100110010111011011010000011001110000101011111110111110000010000011001101111011000100001000000011010000110100000011011101010001111000111010011111111101010101100110101101111110111000100110100100100001001111110110100001010011101010000110010111101111101010000011011101100110110001111001110000111101100000010011100001001110000001001110010000100010010110101100001110010111010110001110100000111010110101011000111000000001110001000110000000110011101101100010111000100101001001010010010001100010001011111010011001101000000000101000110100001110100000001011000111010111101011010000110111010011111100011100101010001110001110100110100110011011010110001010011110001111100011110010000000101100010000110010000110010110111011011101000001001100100000110111010110101111110111001011111000000001110100111001001001110111010000101111111101101001011110010100011000010110111101100100000111000111010111010011111111011110010111011110010100111010101100101110101110010111011110011001001000111111110111111011111001000001111010010111110110011010100000000101000101110100111010000010111111001001000011101000000110101110110010000001101001100110010000110011111000010100110111100111101000101011000001100001101100101000011011110111110011010101011001000010101100101101000111011100001001110000011000110111001010110011010110100110111000001001101111010111001110010101011100010110001011111010101110011010110010101011111110000000010010010111000010111111111010100101111100111001101001000001101110111010100110011001111100111110010111100000100100000000000010110011001101110110001110111001011100011011111010010111110111101011111010101100001101111110001000011100000110111100011100110110100110010101100001100111101111100001010001010001111110011101011111011000011111111000101001001101100111010010100100100111110011111001011111000001010010011101100101100110101010001100011001101100011010000000001110110110101111011000001110000011011000010111010000101100000001000111101001110111010111000001111100000001111111110101100010010010111110101011010111110110000011101011111000011011001000110100000011110100101001100110100010000101111101001100011011110110111101000110001010011111100011110000111101001111010001000001001011100110001110101001111010111000010011000111100011001110010101010100110101011100101010001000111011010100101110000000110101100111110000010100011111010111011000000101000100011111010000010001100001011100111100010000000000001010100111111010110000101110011101010000100000110111010000011110010100110001100100011010001100001100101101000000111011000010111110101001000110110101100101100100011010000111000110001111100010000100000100101010111010001001011111010010010000101100101100001101011001000000011111000110011100001001010011111011111010111111110000101101000110100011000001101011110001010111111110110111010001111100001000101001010001100101001111000001011010110011000001110000011101010000001001101000101011001000011100101111010110110100101111101100001011011101001100110110001011111101010011101010101111100100101100010111101000110100110010101001010110000001100110110100100111010111000110010001011011100100101111110110001100100011011110111000100110001110000000100011011110000011110010101111000000101101101011001000110101001001111001010000011111010101010110101001101100101000011101110101011101101010001000011000000101010100110010000111001100011100000100100000101101010010101000101010000011010000001010001101100010101100011101010101000010001011101110010111111000100110101011010111011001011000100010111100100110000011001000101011001101111011101000101101001000110111011000001010111100010000110110010000111111110110000111110001100100111001101111100000011011000101111111111000001001100011101010011101010100101100100010110011010100011111001101110100010100101000001100100011101111001011110110110101100101100100101110110101000000100100000000011101001001110110111011010010010010000110001110110011111011001011110100001011000000011100011010000001010000111100011101110000001001110100111001011011111100110000111010101000111101011110111010011000110110111111000011111011010110111100110100011111100100001000100111100111011110001000101010101011010101011011000100010111011110110101001000100111111010010011010111001101101100010101000100100101100101100110101011000100111101011010100100010000001111110011010110111100011110010110010100100011000101010100010110000011010111010000001010001010100010111000101010001100011001010111001111010011011100001011010110001111010001100110010001111011100001010101001100100011100110000010111000100001100011001001000010100111011110011001010100111010100101111111101101101010000011010111110000000111111011001100110111111100100101001101000101010000100000111111000110001001011010001011001011111011101011001001110110010101011101101010010110100110111110110111101100101000101010110001111010111010101110001111001111111001001101101011111000001011110001010110010001111110001111100010001111001111011010100011010100001100001000111000100111000011110001100011011110101000011010000000111110000010000010111100100000110111000100101001111110001111111001111100000001001110011010111000001001110110111100010111111111101011111100110010100001010111111011000110010101011111100001101000010110110000000001111101011001111010110111100000100001101011101001101100011100010001111000101110101001110100101111000101000010111100111110110110011110110011001011111001101000000100101110101100101011001101010010010100010011110100111111010101001111001101000111100101110111010100100110110011001010001100010001111010101110001100110100111011100101101110010110101000100000011011100000001101110000011010001111010111001100000101011101001111000111011011100010011111011001001001100101111000111001101011110110110011100010000011100011001011101101100111010011000011100101110011110011000111000100000000101001001000110110111110100111011001100111001010100011011011010001011011100110110001010010010111011011011101111100000111100101101110000110001011111010000010110101111000011010000111011111110110101110110110101100010010111110011010110110100011110011100111110100001000111100001111100011101010111101101001010001001000101011010110100001000111110011011100011010101000110011011111001100001100111101100010000000001101010101100111111100000010011000100100001110000101000111110011101110110100011010001110010011000100111110100000001100110011110100101010111110000100101010000101000001011111101100000111000001001100011000000001011011000100110101001101011011001000011110110011101100010010011111010010011111011010001101101000111000001111001101010001100101011111001101110110011111000000110011111111110111001110100011110010101011000110100011110111000001010111110000011100011000110001101000110010101110000010010100010100010100110001111101101111000001101011010111111101101011111100110101001100100010110001001010001101111000010110111010100001101110101010001110100110100111101011010001001111011110100101110100110011010010100010101110100100011111101110111100010010110010110110101011110000100101101011000000001000000001000011001100010111000110110110011111110010010101010001111110001101000011001101111011000001011111000001111101100101001011100101101001001110101011110000110111111100100100110100110010000100001011011110100000010100000101001100011000010001101010101011001010101111010101100010000110011111100000010100001101001110010101000011110111101001000000011001101110011001110110000110110100001111111101011011001011010101110101000100010011000100010111001111100111010111000010100000101111100010000110001100001100010111010100111111100000111001010101111000110001101110001100100111100110010011001011100101011000100010001011010011000001000010011010100111000011110011111001101000100011100000111110100101001100000100101100011111001100000011100001110100100110111101000101101110000000010100101101110000011010001010010011000110111001011000101010000101000100000000000101000010010011011011100000110100111001110011110011100011010111011000000100011011110110100001101110001000101001110110000100001010010011011010000010010110101100001101110110000001000011000011100011001100011111110101000101111010100010101010100111110001011110001000110101010100010101101001010110101000011011100101101001000100101111110111001111001101111111111000011001111101101101011101001011110111001100111010010010011101101100100101100111011111100101001101100111100101000100000110010001011001110011010111111001000110001000010001110101010010010011000000011110110001011100110001010000011100001011101011100110100001000100111010100011001010001110000111000001111001101010000000101000110110011111111000011111110000011100001100010010011100000001010010001010110000001111001101110010101100101000010011000111111000010000101010101111110111010110011001000100010110100010001000111001110011101000001010101101101111000010011001010011100101011011100100001010101010110011001111100100001011000101100110110011000100011101110110010011001110000110111001010001110111101000111111111100111110110111001011100011111010000010111010011100110110111111010000100001111010000000110100101000110001010011110000101010000001100101010001101101100001011011101011010010000010001010001111010101001111001111000111100011000010001111001011101010110100111010110001100000111001010100101110110110110011010011001001100110000100000110000100010011000101010011100100001001010101111000100011001011100011111010011101011110101010001011101000110011011001011100000011001001100100111001000101110110010111000000010000100101110010101100001101111000111100000110110001111101101010110110001010111111110000110100100001110010110101100011010010011101000111000001011111101011011010101000101001010000011010000000010101100110010111110110011010010001000111000111000101101110011111010101111100011100000000010001010110111010111111011011100100010100101111101000010000100101011000001001001100101010111001000100110010010001110010101100100111000011011101110111111101000010101011001001010001110101000001010100101000101000011101001001100011101000000110100010000000010111110111101111110101111011100011110011011010010001111000011100100111110001110001010111001111101011111101100011101011101001000100 +010111010101100010011110000110110010100010110110010111001000101100010001001100011101011011110010010111010000010010100011011000011101010100101111000010000101000100001011111110010011000010001101110100011001101100011010011101110101101001001000101101100100110010011001111101110000000110100000011100101000001100000001000100001111001001010001111001100110001000001011010001010000101001011100000111100100101100110101101000101001101011011101011011101000100100101110001001111010101001011100110010100010010101010100000110000111111011010110001001101110011000100101011100110000101101011110100110010110100000011110100100110010110111011001110110001100111101000010010100010100011010111110101100111110100110001001010101001110100110101101010110111001110111110110011110110001111010011110110000011101111000101011010010110000101101111011101001110011100011100001010010010111101001100000101000101000111110100100011111011100011101010010010001010011111000001110001110000100101001011111111010111111111010100011100101010111001010010001000010011111111000110100011101011100000010101111111010011010001101100010101001001000010000010101101010111010101111011101101011000000000001101111110101010010011010110111111010010000001110011111001010111111101110010101101001001100110100101011010001110110111000101001110010111111111110000011110011010100110010111100001111000010001110110110111100011000000110110100011100011111101110011001111000110011100010101011010100001000000011001100001011111100101100000001110000000111110001000011001000110010010111010001011111100001011110111101000001001000011011111000010101000111100111100100000110110001101011011111010001011001111111010111011101001010100100010110000100101110010011001101110001010011101010010000101000010110001001100011011111011111000001011010001010010001011001110101000010111100101000000010111000101000011010110001100100000010101010100111001011110011001100101010000010111100011010000101100101011111010010100010100111101100001110100011110000111101011011111010100101010011100000100100011001001100110001001101001010110001011110111001011110100111010010100010111110000001010110011110000101110110101000000001000111010001000001111000110111010111010110010000110111110011100111101111000010100110011111100111101000000111110100110100111000110110110111111101101011011001111000111110011100111000100---------011110011111001100110010000111010110010000110000100000001111101000111011000110010000000110000011000010111111110110111010011100101110010011101011001001011100111111101100100101110110111101100101001010011011010010100010011011100111100100010010011010001111101010110011001000111000100000011010110110000001101111101001110000111000001100110101001100111011111010000010000011101111001111111011110000001001000101100110000010001011101100111111110101000100011001100100001000101111001011110000010110100011001101101110110001100100010101110000111111011010001100011000011011110011011010101101010111010111001001001101100010111011011110101011100010000011111010100100011110010010110100100111101111101101011011000101101011111001011010000011111110000001001000010101100000110110101111100110110111000111010001111011101011110101110100010010100011100100010101111101000111011001101000000001100110001111100101000010111101101011000110100101011110010010100000011011000000000010000110101111111110001110110110100101010000011100010100000010011111000111100011111100110100010010100110100000110000010111010011000000010011001000001101011111111001111011000010000011101010111011110111000111010001111011001100110111000111111001001111011100100101110011000111001000010101001000111001111010000110101110011100111111110110110101111001001000110011011101110111000111000010111111100001000100111010111010010011001010110011010010100000110111010101001010110011001011010001111111001111101111001000010010111000010011000010111111110101000010111101011110000011001010110011000001010101001001110001001110110101001101010111100111010111000000001010001101011111010001111101111101010011011101001010001011100010101010111001101111101100011100110010000110000111011010000111100000010111010101101011010001110000001011110111101110000101001001011001010101011011010100010001000010100111100101001000010010100111001000000110010101111000110101101011001011011000101010101011100110101110000101010111101010000101011010001001100011101110010011110001100101011110000001010010001001110000001011110011001111001011110000100101100110100101010011000111000010101000011000100101000101100101010000111101000101010111011110100101101011111110001011000110011001110111011110110000101001000010011101101011100110100101010101101100010011001101011110011101110100100011111011000101100110000001101101111100101001111111100100010011010011010010011000010000100001001111100110001000111100101100010101011111100110100111011010010010011000110110111111001100110100010010111001100100000011011100101110110111110001111001100111111110110101110101000100110111111011010111011110011001000010100000001101010010010001110100100000110100010010101110010110111100110100010000101101100001001001000000010101000011101000110100000001010111011010000101101100111000000111111110110010100010111111000110011100111101110100010010111010010011000011101110011101111110001010101111001111110011100011011011000000000000100101001000010111011011100110110011101101010100000011000010100100001110101010000101100100011000111010001001100101011111101000100000100101010011000001110100011000001111111000100011110010101101000100100000101100011011110001000101111111011110101001011110010010001111101011110101110110111111011001110101100100111001101001000011000000001100111110111001100001011001110011100101110111111011010011000010001110010001010110110111000000100010010011100111011101000001000001000001010101001111111111101011101100011010111011001110011001010111111110110110010001100100000110111000000001100110110010110011110001111000001111001111000101111000111010010111100100101111000011110100101100100111101010000001101111011101000001001111010101010011011010000001000111111110111010011010100000010001001111010010111011100001010101000111010111100001111111111011101100000111001011110001001101010101000101100001010001100011011110111010111010101111001111011100000000011011100100011000011011000110110010110010101111010001111011001111101001010101001011000000010001101110111010000101110001101101110111001000100111100111000001111100010001011011100011010110111110100000011111100000100000011101000100010101100100101100100011111011101101111101111111101001100110000111100001001111100011111001010011010110100101100101110011100110110110111111111110000001101100100000001011001001100000011011010111100101101100000010011101011110110100000001010000100101111100100111100111001010110011100011111011111010001111011101111110010000010101110101101000011000110111001010010100100011000001110110011010001011011000110001011011001100000111111110111011110001101000000101110101101111110100100100001000000011110110010101011001011111001101001111101001111010000101111011001100011101011100111101100011100011010111010100000111001100011111110110011010000000000100110101110101100110001010000100001111110001001100001001010101111001110101101100011001001111100000010110110001000000111010110110101011000100000010100110100101111001010111010001100001110001110111011001001101101111001011000111110111111010000011011110101101110001100000101100010010111110101001100010101100101000110000000100111110010100010110001001011110001110101000111111110011011001000100110101100001010101000010101110001101111001111010110100011001001010100111100111101001001111110101010111001010000001110110011101011010111100010011011101011111100101111101000100100100011011001001110110010000010100101010111011101011011101010110000010011110000000101100011110011000011010110101011100110100001000100100001100010100010010001000111111001010000011100001011011010100001110110011100010001100100110100100100010000111000011100100101100101001101111111010010111000011000001111110100010101000111100001101111011010010110101100010100101101000110001001011100101011101111100100000110110111101101101011010110000111000111100001000110110010011001110101111111111100100010100001110110011000011000010101001011110011110011100011011111011010001111001011101101011001110011100100100010010110000001101110100110111111011011000001111100101001100111111011011101110001100001000001011101001111001111110010000100001000111100111110110111000000010101110110100010001001011110111110111010101101110011111001001000110101111010100000011001111101011111101101101110011001110000101001001111011001010100101010010111111010101110100010111100100101101010011100101101011010110111010011100110000000001010000001110111110000000011001011001001100100011110100010001010000011011111110101101111110000001011111100100100111111100111001001000010011011110111001011011110010010010011011010000011010110011110011101110111110100110001001100011111011110000001100001111110001111101100101000010100010100011001100111110101101100111110011111001000100001001001000101110011100101111000111001011100100110010000100111001011111111111100100001000001110100001010101011110010001101101111101101001111010100011100111100001110110000011111000111011011100101110101111011011100100100110100000111011000111010100110010111101101100101111111011001011110001001000101010110100100010111111100001110101111100110010110111110011101000100110101000010011001001110100101110001101011100110001100000111011000000001000000001101001011010010001110001000011000111001011001001110000101000100001110111011101110001010000000111111011010000111111110010010001000101000101000101101000001000100100011110010011100010001111100010011010000111011111101111001010101100111101110110010011110010100100101010001110011110001011010101010110001101100110110001001100100001110001010111001011111111100000011011111111011010101011000000110010101010110111101101001000111010010010111110001001111011000101011101010000010001101110111000001011100010001111001110100101001010101110001100101110001000000010010001100000011110110000111011101010110001101011011000101011001010011100100111000011000100100000111110011110001111011010010110001111010110101110010111100101101001111100011000001010001101110111001001000000000000101011111100010100100101100110001101001100101110111101010110110100001100011000111101010100111110011001101101100000010000010011010110101100101000101111001011000110101101111111110101100011111111101101110100100000000000001110010011100010011001001011001000010110111111101000111000001011111010011010010011111000101101110100101100100110011110001110111110001011001010110110101001100110011111110100110100010110011100111001011100111011101011011110010110001000010001011001011100010111110001001010010000101111100100000010100011101000110101110000000110001100110010111110111001100011011001111001000010010000011110101010011001000000001101001001001100010111110100101000101110011011011000011110011000110111001000110000011011000000101010110001100010100101000111001010101010010001100011110000000010111110001000111011111111101100100100011010100000000101010111111100001010111100110010110100001010111110010001000000001001101110001001010100111100000100010001001010010110011100010111110111010010011110110100110101001101010011010000010100011011001100100001010111001001011100110000011110101010001011001011000001000011000000001110011110010011111011101011111100011001101110111001100111001011001101011001101010010011100100111000010110011001101010011011000110010111001011011110011100000000000110011001010100110001111011011010100010111110110010001100111000110111111010111000111101000101001011101011011100110110001100101011110101000101100010000110111001101111111110000111101111010100011101110001101110110000100110010001101011111101001001110010111011000100001110011110110010111000011111100001001000000101011010001101110101101101011001011001110111100111101001110011000100101100010111011111011101111010110011001101101010001110110010001011100000010100010100101110000000101000100001100000101000100010010000111011110111110010010010100011000111010001111110011011001101001011100000001010100001001111011010100110010001000100101010100000011010011011001111011101010100010111011101110101111011100101001000100010000100111111010011100101000110000001100110100001110000100001001000001101111100000101011000110001100101010101101100110011000010100010010100000001110011101011011011000000101110001011111001000010101011011101111010011110000111111111011100101000001011111000110111110111111011010101111001100101010100110100010011101111011010001100101000000010011011101111000101000101011011001010000111111111011000111011010110110110111010100111111100111001111111000110000001100110100101000011110011110001001000111101011001101101111101010010111100101100011011111001010100010110011100010101101001010001000100110000110101011011001010011011011011010000110011110110101001100000111001101011010011111100011011100011100111010000000111001001010111010010100100111101101100101101110010111001010001101011001111100101010001001000011010000101001110000110010101100010100101110101000111010011010100100100110111010111011100101101000001000111100101110100011011010101011101001111111110000001110100110001000110011000101110101001100011101010011000111010111101110010110110001010111001010110010101111101010101001011100101101001010011010100101010110001000100111111010011010000110110010111001111100001110000111111111001111110001011011010000000100000111010011001111111101001101100101111100100101000110011000101111011101001000100100001010110001101010111001011110100110110100101110100111001101001011100101001111011110110110101101010000101000101100011101111110100001000011000100000100010110111000011011110011100100001011101111100101101110000100010111011010001110010000100101011010101101100101100010110010011100101101110110111011010011101101011011100001000000011101110001101101111000010111101000110110101010001011010110001001101100101010100101111001010111101010110000010111010100000001011010010010111111010101100100110101010011110010001001110000110010111110100110111010000101011001001011001111100110110010011001010101110011101000100101101111110001100101100011000000001000001101111010101111111001001001001000000110000011100101010011111110100000111111000011000010100100010010001110100010111111000111110100011011100110010011111011110011111111111111011011111100101100000001100110110011100110001101000111100100001001100111101011110101101110110011100000101100111110110001101100000010101001010101011000101010100100011001001110011011011100100110001001110100001100101110110101100101011110111100100100100110111001111110100011100101010 +101010101001110101110101100100010101000100100111110110010111000000110100100011110011001100110000111101101111110101011111000000101110000010011010110101011011100000010110010010000001100011100101011110110011110010010001001010011001110110110111010110110110000101000110010010111111111000101110110001000011110001111010101100101001010000001100010011001001100100000000001000000110101011100000100000111010110010110101011100010011110011110100110001010111110101011101000111101011110000111000110010111000010010101100111101010110011011010010110010011101000001110011000001100101010001101011100111011101000100010010100100111001000110100101101110111100010101100100110011100111011110011001011001111101001111100101101000010011100111100001110100000100110011110000010111001011111010001111111101110100001110001100011110101100100101010100100000001111010001001011111100000111100110001111010110001100010110111010110010000111110110100011011010001100000010010011000101000110010110011111111001000110100110001100010101100001110000110111011001110110111110111100100101100011000000000110110110111111111010010001101100000000010000111000111010110111101100000100110101101111010010100010101101001101110010110110000000001000010101000010110011010100111000111011111100000000100000100110011001101001000011000111010000001011000000010000000011000001111110000010011001111100000011111001001000000000111100101101010010110011110111100000101011010110010011110010110111101010100011001111101010001010010001111111101001000110010100011011101111101010101110001001001001000010010011001101100010100111001110010010011010011000110001000101010111101001110110111010110100010010101000000111011001110100010100101001011011011011011110101110101100001001101110010010001110110000011000000110110011000110010011101110001101010111011101000101000001010101111001100000001111000010100000001000101111010111110111101101110111010000101111101001111110111011110011100110110101011010100100111110011000010111110101001001001111001011000111101111010010100000011000000110001110011001001110001001011101111110010100001111010011111001110011010100001100100101010011001111000110011111001011110101011000001100100010111000110110000100111111011010001011000011110000100110110110001010001111010110110011011000111101100011111101010100110011110010111000011100011010111010111111110100000---------111100010101001010110111100111101011101001000111010100001011101100100001101011111000111010000101111001000000101001001001011000110000100010111000000100111100011010100100010000111010000010111111000001011000011010111010000111111110001011000110111001101101011110111110000111101110001010000100011010000001011110111111001000111011001101101000111000111110000011101010110111001100010110010110110011011000011000100001111100011101011100110010110010000101010011101101111111001011111011101110000101111101001111010111011001010101011000110001111111110101110110011000110111001110110100001000010100110110010000101011000011110101100010000100101100011011110000000000000110000010011001011011100000110101100101011101000101101010000011000111011111001111101001111010010111100111110100000001001000111010000001100010011010000110111010101000100001110101101111010001100000000100111100111101111110001011110110011010101011000000100111110010110100010111011010110010110000000000110100110011010010100110011110011101110100001010111000011011001100111111110011010001001011100011111110111010000100100111111011011100101010011100110101011010101001100000001100101101011110000110001110011010011101100101111101011100110111110110000000110111010011100100000100000010100100101011010010111100011110001011110101000111100101000000001000001001101110001011101101111001101100000010000000100011001010000100001110001100001011010100111100111011110110100001010110110101110011010101001010011100010000100110110010101001000010110101110000101110010001111110001011000010111111111000111010101110111111000011000010011000111110100000011000011001110010101011010010100001011101000111011110111111010111101011010000011111111110011000011101110011011100001111110010001010000001001000110000100101010000101011001011111111100111001011010111100110111111101110010001101000110001001011110011110011110001100010010110011001111010001000100110001001101101000110000101010000101110111010011110001110101001001100110101000110011101010000111100001110001000000100100000010001111000110111100110110001001110011100001011100101000000010011000111100011000010100000101110001110011001101011010000110000101111010010000111111001111110101111101110100011000001110101101011101001111001111100001100001111000011010000001000111101101010000010000101101010111010111111010110001001000111110110000000011101110001010001010111110001000110010000010101100011011001110101101111100100011010100000011100110011100110110111011000000100111101100011111011011100010010110001111010010111011011101111011100011110111111001101100110101011100001001011000101011101110111011100000101111111001101010100101011011110000100010100110101101100000111111000011110110100011001100100101100001110100000000000000011011101010001100000111001000101100011100001001110001001001101001111010110001001111100000011000010110011010011101101001011010100011001110111000111111000011010001100011010111001000111100111100100010100111110101110101000110111101100100011100100010100110011001010000000111100001000001110110000001111111000110000010011110001011100111001001111111001110101111100101001100110001111110010001110010100010100100100101001000011110001110101001111000110110101111001111000100001000010101000101011011011100000110010010111000110110100001100100101010110010001010010001111110100110110110011000111111010110111101000001001100010010011001110000111010010000001010101001011011000111010000110110011011010010110111110110001001100101110001010001010011010000100001001101000001010011000010100011111010110001110001010000010111110011101011011110111010111111101011000010101010000100000110000100100001111111011111000010011101011101111110011001001000001000010001110100010110011111110011001001001110101001011000100111101001000101001101101011110010000100010111100011010101110111111101001100001100101000100001010110010101010001000000110001111001011000011011111110110011010010101111010000111111001001001011100000001101001111101110010111111110111001010110101001111001001001000010000011111101110101111010010000100011101100011001001000001110100100011110100000001000101011111101011010011110000101101001110100011101000001010000011010010001001001111111101001011100001101101100011110100110111000001010110001010101110010001100111011110111001001010000110111011011001101110000100010111001111000111000000111011100101111111110110000011101010010100010001111100001011101110010001010101010011110100011000011101000001100011100111101100000011110010110001101011001100111110010000000000011001011101001001010010001000101100001010011100001110010010001010100110010100111010000000111100110100101011101100111110000101001000110000111010111110100101111011010111110011000111001000011010000000000000101110000010001101111111000001111001111010010111110101111010010111010100001001011010010101111110000110010111010000000011110000000100000110011001111111001101000011000001101010111101100010110110001000111101101111101110011000011110100100101110000001010001101010110100010110010010101100100101110111110010110111100110000110001011100011011001111111000101111010010111010101000010000110001111000000111101000101111000101010111000100001001001111000100010110100110001111011111110110010110010111101110110001111111001111000010100100101001110101111000011011001001011010010000010011110101011001110111011001000100011110011011111000101111100001000111101011100000110000010111101101100010111011101100110110101010000011110110011000100000101111000010111110100100100111010101100001010010001110010111100010000100101011100101011110101001001101100010001100001101010100010011100011011100111101101111101110110101111001001010101110101101001110100011000010111000001110101000010001100001000000000110101101100101111001101010001111101010100011111011010101101101010100100010000111100010011110110001101011011001011001000110011111011100100011110101010110000001101000010000110001000010110010001010100101001100000011111001100011110000011000011101011010010110001101000110010001110100101000001101011111001101111010100100010111001100110110100000011101101001111110101001000001101011010110110001001100110110010011100011110100101110000110100111110010101001011111011101110110010111110011011111011001110000100011111110100111011010101101101011011101000100111011101101100101101101101000000111110101000100111110010010011011001010110000001100111111011101001001011011111010101010010001101111111111101111110010100000010111010010101001010101001011011100110101100100010100100111100010100100110110011010011100110010000100000001010000010001110100001000110000110000010010010100101011110001100011011010110110101101111110100011010000111100111111001100110001111001000011001110000000000000100111001110001111001001110011011001010110010101111001000000111010100100010001011110100011010011010111001110001101000010000110000111010110010101001011110000111110001010011000011011110110010101100101110011010100010110010100110101101000100110010010101000101000101111010010011010010110010101001011110000100000010101000010101000001100001110010111000101000000101010110101111010011101100101001111110001000110010001101100001100010110101111110001111110011100000010101001001000010111100100010010101101111100010100010010010111000100000010011100110001001100011010100101000011011100110011101100000001110001100100111010000001101001110100011111110111100000011111101001111011101110001011001100101001101111110010100000111000011101100011111001000010101000101111010011001001001100010111111111100011110101101001110100100111010100101000001101100110101000010100110010111110100000001011011100100111010110000011111001001000110011100010001101101110100100101001011000101000001011100110000010000100010001001011100011011001001000110011000010110110100010001101101100000110111110100111011100010100110000110000110100010101111101110010100100100101001111010000010001011001001010011111001111000000010011010010110100101001100000111011001110000001110110010000001110001011110010101110101001000010110101011100011100010011111011001101010111000101101001001001111111010001111111100100110100101000100111100101011001111011111001110111111100110000111100111110001001001110000010001000011110011111110110001111000111010101001000000000000001110111100100011001100001010100110100110000100110111010100000010100001111000010010100101101011000010001001100100011010010000000100010001001011010110011110011001001101101000001000101010001111110011101011000001111001101001001110101101010001110001111111101001001101001000101101101010110001011010000010000100111101100110111101001010100110110100011101010110110010110000100000010111011111111011001100100000001000010100010011101110111101001100100101110101001010010100111010000111000011000110111001010000001001010010101110100010000101111110010001001001110111101111011101001111100101111111010001110111011010000010111011010000011010111110000111100110100111100100100011110100111110101101101101100001101100000101111011100000000010010000011111000101111101111101010000111111110100000111000110010110101000010010011101111111111000111100001101101000100000001101001011100011100001100001010011111011110001001000111001011001110101100000000100001010000110110110100101010101101111011011110111110001010011011111111010011100110100110111010000011000111001011101111010010110100111011111100111001001001011110100100001011110011000010101111101101001001011110110101110001011000110101011000011010001011011010011011000011010011001100000011000110010101100111101001000010011111011101111110001001011011111111000000111000001010100101010010010101010011100001010100011010000110101100100000001011110110100101111011111001111001011110001101001011001110010110101011000111111010110101101101101101010101011100001101000010011111111101011011010001000101111111110100110101011001101010001111111111001110110111011110101110110000000001111010011000001011001001000111111110010000101101011111111101100101110001101010101001011110000001011000010000010011100101110001001011100000100001000000101011000101011001001001001100100000001100110010010101100001010001011111000001111111000101001100100100010111111100110100011000110110001000100100100011000101010000001000101001000001101000101110100010000011111101101101101101111000111111001111100100011100100001101100110101001001110010111011000000110010010000010100011100100010000101000100001110011111011101111110010011011100111010100110000000111010100000110000101101000011111011111001010101101010111001101110111111000111000101011100001001100111001101110110101001111100011000111111101001000010010100000001010101001110100111100011011010001110111110100000110101101110011111101001001010111001010011010110001101100100000011001110111000111001111000000110000001010111101101010011100000000100100000000000011111011000001011000011110100110111100111111010000000011010111110011000111110111001100000001110111011111000010110111111111100010100000110110101111101010011001010010110010110010001000111010010000000001000010011000001010010101101001001101111101111101110001011010000000000111111110011111101100110111001111010101111100001001111110101111111000011000100000010111010111101110111001110110000111001110110011101111010101101110111111011010010101011111011100111100100000000011100101110111111111011000000111111111001001100010100011000111101100111011001111100010110000111101101001010001101001101101110001100000101010011101101011100111010001100100111000011100110111101110000001010101001010100011011110111100000101011100110011101111111010001011101001101110000101111110101001101111111101011100000111100100100010101010111000110101001110101110111110011000100011111001010111000001010100110000111100101001101100011001101101100010100011101110100010001110010100101100011010111000001100110011001010101111110010000101011001100110011000011010011100011011101101111101101110101000011001010010100000011000011001001010111111110001101001111010000110010100110000000111110101101000110100010000101101000001110100110111000010011100110111011000011111101000100001111011010000001101101110001000100110101100010111011011000100111011110110101001111001000001011011100001000111001010001000100100101100111010110101100010011111100010100100010000001100111101011010000110011001011001001011000011000011110010111010011000001000101110111111011101111011000001010111111001001111010000010010101110010100100111101110000101110010001110 +011001001100110001010011011101000001110100100001010101101011010001110011001000110101011101001010110101010100011111110010101110101010110110011111100000010100101100001000111000000011101000111110010110011001011010101101010101111001010110101101101000111111000001000000110000010100000011101001101001110011100010000111100000101101011101100110001001100000001100111011110011001110000110110110101010011101100000110110110011101101011101110000000110011110001110100000110011111100001011110001111000010010110010011011100100110100011000000110010101111011000111101110011000101010000010101011001101110111010100101001100101111001100111010111101100110101010111100111011000000000000100000000110000001001001110010110001100100000000001111110011011100101110011010010010110010001011000111000110111101110100111101010100111010010000110111000000011101111100100101101100111000100010010010100111100011000000011001110110100100100011000110010111000000101000110100000000011110101010001000011100000110100100000000001001111101001001100101000111000110011100010111011111100110101011010110011101110111001101100111100001111010111101101000101001010111110011100010001101101001000100011011011000100101111010010000010110111100000101011000101001111101010010000101111111011010010100111001101011011000010001111110110110000010101101110111101101110011100100101110010111101111010110000011000010111101010000101101011011011101000010100100001010100011100111000110111111100101101011111111111011111010110101000111101100000000001010000100011100010010101000110100000100100101001000110001010000111110010110111010001111101111101101001010100010011001001110111100111111100100001010111000101100111001101001111001001110010101111001010101111001001100010011011100000011111010011101110111000001001000011001010111100000111001001101010010011100111000011101011110110111000010111100000001001000011111001011001001010101000000011001110101100101101110001000000100010100111000101100000011100001100010111011100010010001100001000101110110101100100110000110101011110000000001000000001101101101111001100101010100100100110101100110110000000010000000111100001010001000011000101101000100001010010001111100010111010100001000111101001111011110100111000111111010100010101101110010111010100011110101011000101000110001111010011110111101010011010100010001010110001011011010001100---------101000101010101000001111000010100100101001011011110000111010111101110000110001001100110101010111101010001101000100001111100011101100000000011101111101010000010100011001000101110011000110101110011101010011000010101110010011111110010111110001011000110001111010000101010101011111111010110010100000010100111110010110000011100000111101000111010001100010100001011111011001001101000011100011101100001010101111111101100001111001100000010000111100110010111000101101001110010010101011001010111110011111111010100011101101000000000100100101011111101000000010100111110101010001101111111110001000001100111000101010111101110001001000001111111011011011000001100100011101001010011101000010111111010011110110101011101111010000010100011001011101000010100111001000000011111010000000000011110010000111111000001110010110010000010100110011011000101100011110001100110001000100011110011101001111111011100001001000001100100100100011010001101101001111011011001110010011010111010001000101000110111101011010111100011110001100111011011111010100100110001000011101100011001011100011010111011101101101000010001010100111010010110011101010110001001000101010101000011001101010011010000110001000010011000010100101000010001101011000001101110000100010110111100111011110010000011110001001101100100111000111000111000101001101101100110010001010111000000011011100011101111001100011111100000011101000100000101001011001100110001011010100111011000001011110000001101001111101111010110110100011100111001001111010011011011110110110011111000111101000000100100100100000001001110001001000111011110010010010001011000001111100101000000000111111110001111011111000001000001101000011110101011001101111111000111111010110110011001001001111010101111011001000101001000110100111101111111110000111011101111100001010111000100011100111011011101000111111101100001011101101000000111010011001010010010000111100000011110001010110111000011101011100011000000011101011011001010001100100111100000000101011101001000001011111011010001101110110100001011111011011111101110011100000001000011110000000010010010101110011010111000001101111110000100010011101110011101100100001010110111101011101000001110100000000100000100011010111111011110110010000110010110001011010011001110111110000111011101011110001111010111110100010111010111100111111101111101011001011101001001111001000010100011110101100101111010110100100110110001100100010010010101101010010100010001010010010101001000011110110100111101111111111001011001011001100100001101101000111011011000110011100001011001110010110010000110001000100101011000011000001010011110111011011100010010011111100100011001000110010000000010000000000101000110011101011011110110011000110011111011010101110011011101101100010101011010000011000011000100111111011010001111100111110110110111111011001110100001011101010111110110011100000100001100011011100110110111001000000111000100110010110011011010110011111010110110000100000110010101011010101110010001010111011111110100110111110010101101101111010000110000111110101110011000001010110100101101100000010111100001001100111100110010101011000101011001001111011111010100010001100110110010100011011111111111001001000111001000100010111110101000011111110001110000100101010010000010010100001010010011101011001001001011110111100011000010111011100000010001000110100101100000000110010100000001001101111010110111010001011011111111101110010110000010010010101111010001111011001000000101100010011001011110001011111010000100000100111100111000111001110000100010001111110111001010110010110111011010000001110001101001001110110001010110011011110110000011111011110111001101101001001100110100110001100101011001010000010111001110110101000000111001100000010101101011101010000111000010100000000110000110110011001011000001100111101100011101101010111010101010000101000011001110011011000011001001011010111100000100001100011110100010111000001001110000001110010100001100000101100100101101010001100100001110000010010101001011011110000111110110101000100100011010001111111010001101010010001011011111110000001110000111101000111111100100001011011000001100101001100111000111011100100110101001100111110111110011001101001110000000001110110010100001011011111001010101011001001110000001001000010100101101110001010100011010000101100010100101010001100001000100001010000100101010110011101010010101001111000110111101011100100101110000000010111000101111001001011111100101001111000010001111011110001110111011000010000111000011100001101000101100110111000001110010000110011110101110010111010010100110011011000011100010001010000000000110000101001001111111001101110101110000110011010100110011011001010011001010101100101010111010000110001100110111100111011010011111000100100000000011010001011100010111101100011000011000001100100110101001101010110100101000010011100110101100110011001010001011100001111011010000010011101111110011011001110110111110101000110110011100100110100111111001110111011001111000011101100100101100000110011110011001010010011010100001110010101011001001011000101001101011111000010000011010111110001101100000100010101011100110000010010010100111010101110000010101001011000100001110010101011111000100000000100110101110010111111001010111000010010111000100110011010000010011011111010111001110100000101111000010110000100011100110011110101011000000010111000001111110110001010100010110000000001111100111010010100010100110111111000111010110000010100001000001111111011110001101010011110001101111100000011000101000011111011100010101100100000001010011010011001110111111001001001000101111100010110001101100101001111100000101110000101110010000011001000010100101111001110000100111010001111100100111111010101111001101111110010100101001101001001111101111010011101000001001111000000011101100001111111110110100111001111010101000000001001111011101111001101011000001000000101111101011011110001100100000001101110010001111000011010001000011111100000000000111000000010001010011001100010100111100101110000011101111001000001000100000101001110011001111000001100100001001011111100000011100000111111010011011000100111100101101100001100000001100111001100110100110010001101000101100101110010001000011000101110001100100100101011010000101011011001010011010100111010001100010011011111110011001100000000011101001100010001001111000111000010001010001000111101101110000010011111101011001101100001100011111111111100001000011100011110001100111011011101001111011010010110110000010011001100100111000001111100101101110111001111011011011101001100101001000001100000000001010000101010001100001001100100010001111101100001100101001010000011010011111110101010110010100000110001000010011010000110000000010001101000110010001001011111101111110101110000000111101111100100001000111110110000000110111010110010011001100000111100001101011000000000010010000000110111010011011101110111011101111000101111111001111110011101000111101111001111111010001110100011001100111000111110101100010101101011011000000000101001100111110111101000110101100101110010000011001110110010000101010100111111111010100110111111010110000101000011100100000001001011101001111000110101111111010011100011100110010111111101110001011010101001110100111110011111110011010010100100011101001001010000111001000011000011110111001110111010001011111010111111011000100001101011010101101110010101001011011101000011000001100100011101010100001111010101010001110110010001110000000110111000001001001000110000101010101010010001001011000010110010100110001100110111001100001100010101110110010101001110001011100110100000001001110011000101001101111010101000110011001100111101111011100110110000011011000010000011101011000011011010001110111000111010010010000000001101001111101111010010000110111001110000111101010000010011000110101111101101000011111110000100100000001111001101000110100111100001001101000001110110010111010100010001001111111011000101001111011111000000100101001010000101001101010100111101000110111001011111001110001001011001101001110010110100011000011100010111101001110110001001000110110101110011100000110010110010000101011010100100010101110011011011000110011011000100000011111001111010110000101101110100000000100111011000100001100010101100100000100110101010001010001101010011011111100010110001111111111011111010011000001011011000000101000010010101111001101011100000011101111111110010101001111011001001111010110101001010100010101011111001100000100000000100011000000010000101111010110111111011010111011101010101011100111101010101001111001010000110000110001101110110101101111010010111110001111011100011000111010011010011010100110101111001101010101100101011111001111011100110010000001011110100110000101000110000010001110011001011001010110000011001101100111111000001000010010100010000011001011100001001001001100011010101011101110001011010010100011011000000101010111101001001100001000011100110100000110111010011001001010111010010110111101110110011100011110111111101100111111010010111111000011110011110000111111011000001101100000110111001000100001011000010111110100001010101011010101000101101100001010010100110100111000011011111011001110111011001111010111111100011011101000000101010001100101100011011011010010111111110000101010101001001111011100111011011010000001011010100101011001010011010000110011010011111011000011111001000010100100000001101100111100010100000111100100100001000000011110011001011110110111011101000011110001110100110011110011100101111101100010110110111110000001110111001111001101010001010000011100001000000110100110101110110010010000111011001111001011011110100001100011111011110101001011100100001010100000010110100010000101100101111111001000100001111010010101000011001010100001111000001101110001110111010111001001100110110001000100100000111111110011111111001101010000101000110010000010001011111100100101100111000011111110000010011101111101110000110111011111011011111010111000100100001111101111111111110111100000000110111010000011100001001101110010001101110101010110110100111101000001010100010101001111000000100100110000011010101010001011000110111111011100000011101000001111101100100010101100100001111011101001000000101111100110011100111111101011101101011010000011110110011000110011011100111100100000010011100100101001101000100111110101000100100110101011111010110011001010101100101011011111000010110010011000011001101000000010100001011111000101001010100010111001010001011011011001101001011011101100110011100010010111101001100100101111111011100010000000111101101000000000110100100011011000101101100001110010011100100111011110000010100111010101100010101101111111001011100111110111011011001010110000011011110100110010110111000110001001001010000011101011001000111110110110000100101100100110001101010101010011011100001111110000111000010011100011101111110001100100010010001110100001110001010000110011011010100110010111100111000010100100101000101101110100110110111011000111010100110010000100100101001110110110001010010011010011100010100100000001111001011011001001010111000001011110000001110100010000111110011010000001001110001110010010100000101101011011110010111100001110001011110100001110011111111110001111000101100100001001010001000001111110001011011010011110000010100101100011011100010111111000000110110011010000110110011100000100101001101011000001110001100011100101101011001100010101000100001100011011001100000100010111110001011110111000101011100010111110101100101010100001110001000101011110111110000100100001100010010110101100010111110110111111001100001100111011011100000010110101101110110010011111011100001000101101101010000010001010110010010100111100011011011100101011000011100110101100111110100001001010101011100011010010101000101111000001100111110011011010101101111001000010100011111111000010010001101001111001111001010110011011000010111011010101111010011110010000101101100011001010101110110011110001010000001101110010000000100011110110101011010110010111011110101010101000010100011110000001101111011111010001111000011011000010001001100010011001000000100010000111100001100100000101100011011110101010011011100010100100010100111010111111110111010111100100110010111010111011100100100111011001100010000011110011101110000010010001111100011111111101001100101110110110011011100100010101010011001110010111000001011011000100110001011100010010001111000110000111011100010111010110101001111100000110011010110111101110101110111100101010010 +011010101000110111100010100110011010100110010011101110100110101101010111010000101110000110011110000100101101111101110001011010011101111111010001110000100111111101111011100100011000010001001010111010010010100001011110100101111001100011111110111010000100111110001100011101100000011000111110001000010000100000001111101001001110100100110011111110001111010010000110100001101000110011011000010001101001111010000101010111100110000111111010111111100010001000110100000101011101000110100110101011100111000001010010000100111000010001110000001111001111110011101111100011010011100100001000011011110001111010011001011100100111100001111111101111001001000011100101100110101100010111001110111111010110110000011100100100100101111001100101001001011000001110001011011011001100010110010110100001000000110110111010000111011101010001000100011010001001100010001110110000001100001010100001011001100101110001100111111101001110000111110101110110001010101111010110111110001011101010011110110010101010010110001100010011010010011110111110001001011011001001000100001110010010001011011001100110011011001000101011100100110001001101110101101011101101000000010100101111001011100101001001011100010001100110000010100000010011111111111001101101111001100010000001000101100001101100010011110010011001011010010011001101111111110000111110110101100001111011011111001001000001000101000101101110011001110111101001100011110010110001111110101011011011010110100011000011000011010111101001010101101011100111001111110010100101100111011101011001001011000010000100010000001110010100101111110000000100011010001100110101010100000000010001110100111000010100101110000000011000101110101000101000111010010100101100000011001001010110000011110000101010011100111011001110000101010010011011000000000010110100101010101011111010011000011110101110011100011010001000000111011111100001111010011000100000001101011011100100010100001101011001000110111110001000101011110000111001101010000100110100101111000010000111011110001111001001000010101011010111111010001110010011000101100101110101111101101011101111111001000000000100011000000111001110000100010101011000111110111100100001001100110101001011100000111000000100110000010000010010100010001011111001111101010010011110000110100100110110001010110001011110011110011001111000011100100000010100000001001011010110010011111---------100001001011010000110010000010010000110111000011010000011100001100100011110010001011111111001011100111110100010111111001111000000011000111100010111111001101010000111100111110111000100011000001100011000001011110000100000010110110010100100110011111100110000010100100111001110011010001101110001000110011111100010010000011001100111010011010001010010110101110100010010000000101110101001111011000010010101001111101100011100100111100011100110101000111101010111101001010000111011100000111111111111110001110010010101011010100101111110100100001111110100100000011010010010110100111111011010100100110110001010010100011000001100001000000010001110010110001000000000100100001101001111011111010100100011000111110110001000010110101110101011010000100110110001011011010000001000011011110100110100100010001100001111101000011010000000111101011111010011010111010100110101100100110111101100000111100110010011001111111000100110001101011000101010010100111010100111011101111100101000001111010010000111010110010101101011000101111011101101110001111000010011110100101010001000010100000011010111001011000000110101010011100100100111011110100010010011110000101100101111110101101110100100100010100101011000010000100010100111111111000111111011101001001111110000100111100101011011100100110101011100100001010110111010110010101110100110011001100100101000101111101110000010100011100010010010100110100111110000100000111111101101001111000000010100110010101101000110101010111101111001000000000101000100001110010110101101110101010110101101100110011101001010110100111101001010001110011111111101010011110100011011110111101100000010101001101110010010010111101101100111010010110011001101010000110011001010110000011110111010010110000001110111101110101010110100011101101100010111011000000011010010111110101001111010001010101010100100001001010010010011110110000001011111010110001011010011000001100100000001001011110110010010100101110010110011110011010010011011010111101101111110111011100110000001110011011100110001011110100110110010010010001000101101100100001001000001000010111001111010011100010110100111110100000011100111010001001011011001100101000110000100100011011011001100000111011101010001010101011111000111010011111011010011100001111000010001001010010001000110011100101111000000010110111110001000111100010110110100110110010000011010000010001011000100010011001110000110100110010010011001100111001000011111100010011000010001010010101111111011111111110111000010010100000000100001111110111101000111010110100110001001101110100101100000100100010110110011000111010111110000100100010000111010010010000011110001000011010010101000001100100001000011110111110110001111000000101100000101000101001100010000010000000100011000000000110011110011011110000100001111001000000111100111110001001010011000011011111101010111111100111110101000010100101110010011101111001111100101110111000001111011100001111010100000010101111101100000000011001111000010011111110011001011110100100001100111000110100101111000111111110100010010101011010011000011000100100010101110111101010110100010101111001001110100100001111010101010100110011110011111111111010010011111000100101101001100111100101111000010010010001010111111011101010100011010110110011010001110011110001011100111011111000111010110001100101110111001111111110111100100001100110100011111011111111111001001011011110111001100110001110011000111101101101110101111110110100001000001001001001110110000110011001001011100011011010110100100001000011101111001001100111000111000100111101010011011111011011011010100001001001111010100110010100011011111010000101011011001010100110110101111101011111111101100100000111000100101111100100101101010101100010010111101010101111011000101000101100111111001000111100001001110110010110101111010110010110000111001011100111100011011011010010111110011001100111001011011001110000101001110110100011111110010111101010111010000100000100000101101010100101110100101001011100011101111100001010111100001011010000110100110011111101001000110011110101111110010011110001111000111110000110101101010000100001000101101110000011100111010100101001001111011011001000000001111000000001110011000011000010110101011011101000010101100001101000110011111101111010110101000100000001001001001011111101110001011010101011110111000011000111001010001000011010101010100001111000111100001101100101111010101010110110000000000111110111001010100010000011101100111111011110111010000110010111111001111101001100001101000101010101111010111100010110111000100110010111111111001010110001110110010110000010100101001010101001000110110110110111011010000000111101001001110111110101101100101011001110111001001100111100100000111110111110000111110010100100001000001000111100110001001010000000010011010001111111101111000110001010001111001101111111001010101101101011101110101110100111000011101110110100100111110111111110000100011001000101111010001111111100100011101101000110011010100100011111101010000100111101110101000110001011111010101111001111110100010001001110111001100011010101010001101101100001100011101111011000100110110010010011000111100000011001001101000110110111010001010010010101000111011101001010101000001010011101011010010110001000110110011110010010100010010011010100110111110110100110011010001010100011010111101000001000100101011011111100110000000011101010111100110101101111101000000000010110101000101111011001001101111001101110000111010100100001001101001000001001111010111100100110011010100010100010101101001000011101010001010111101100110111010010011101101111111001000111001101010001001001110101100101110110101110010100011001101111010001001100000000100011100001000111111110101010010001011111010000010111111000000001101110000100110111110101110010000100000000000001101101100101101000100011010011110010101001100000001000000011000101100000011110001101101110110011011011111001101001001011010100111111101001101111101101010111010100110101110101010001011110100000000001011100010011011100110110010110111000011001100000001010000011101011000001101001000110111011111110100001100000001010110100101001010100011100101011000000000101000110111100110010101000011000010001101100010000101001010101111110011011111100111100001111111101111100001001010011111010101100000001011000010010111110110011111111110010100000100001001001001000010100101111110100100010110011011111010000000101000111111111100110010111100010010010100010011110100111011101110011110010100010001011010110101000010100111101110001010010110111000100010100100111000001111010001000011111100101010100100110111001011010000010010011100110100110101100110010011111111111010110010001111010000110111100000111100110010111010101011011001011001101011100111011011111011000000111001101111111111000010110010101110110110110001000110001100000000111011010011001101000101100000110100000100010111111101111010001011010010010011010001011110000101010001111111100010111110111000011001100001101000111001010101011001110011000100101111010001010110110110011111001100001010111001001101010100000011000110101111100101100111110010110011111000011111101100111010001010010000111001101000011010111100111111001111111010011001010000111010011001111101111110100111110101101110010001010011110011010000001100000111011010000001001011011100100110011101011111010000101001111100101011110110110000110001001000000011001111001000010111110101101100111100000101101100111101011101110100001110111110000101101101111000101100011000010000010111111110111101010110100111110010011010110101000101110111001110011001000111000101000111111001111011111011000110000011011001111110110110010100100101011100110000010100000011110100000100001010111001111101000000010101101011011111010111111100110110010100010001001001100110100101111111000000101011000100010011011010010111011000101100101100010000111101000000101101110001000100010101000111001110011111000100011000110010101100100000000011101001000001111010110110000011101001001110001100001101000000111101000100001110000011101100000100101001110010011101111010011110101011111010100111111010100101001101010011011101101110010110001000100110110000110110101000110100011011110010111111110100011111100100100000000001111101101100110111001101011110000000111100110000000101011111111110101000111101100111011001000010000100010001100001111001000001000100111111000111010100100011101111011011111101000010000111101000000100111001100110011011111011110111100001000010111010001000001010001110000001010111001011111010011111111000011011111011001001011011010111001000010011011011100110111110110011010110100000100011000100001110101100011010110000101001011110111010110000111000111010111110111101000000011101101110010001100100000111110101100001101111100010111111100000101110011000000110101101101010001100001110111000101000011100000100000011010101111100011111101001101001011011100101010011111000111001010000101010001011101110001010111111000110011001000001001110111101100111111000111011011011000000110010011001000101011100011101010000000111101000000001100001011101000011000010111101001101000001010000110110000001011000111011000101000011001010010111100000000011000010110101000111110001011011010101110011011101100110011010000101010101101000110101011001100011000011100011000100101110010000000010101010101110011000010001001100001101010011110001100100010011111000011011110000100000011001011010000001001010001010110011010100110101100010010001110000001000100001100100001011101111111110111010111011100100000110100000010011000001001111010000000001110010000111100101100111101011011101001111010111101111011110111110010110100011000011001000001010011001010011001011100000001010101101111101101100100010100001001100010001010011101001111101011010110110010000100011111100101010101000100001000000101000011111000100010010110000011100101100100001011001101001111111100010010000100111100000011110101000101101111100011111100000011010010111000110101011111011000010111111010000100001100100000100110101000110101010100011001100111110100010100110010001100010100001110000000101011110101001111100010001001111000001001000101011000011101101010111010101001101101010110001000101001100100101100010000100100001100101111000110110111001000000000001010000000010010001000100000101001011111100101111000001110111111010111001001010011101101110010110111011001110110101010000110110001100010111000010111001111110111101001010010010100000111011011001000100000010100111100000011010111000010011100010011000101000001011010010010000010111110001000111000011110010001000010010111101100101000100011000000101011011011110011011000010110011010111011110100101101100010111010101110111011000001011110111010000000011101111111000011010011111110000011000010101100000000100101100110001110011110111100110001110101010110000011011010110010111110000011111000110101111101110111000010000000001110011010100000100010001110111110011010101100100001110110110011010001001111101011010011000101110101111100011101001110010010001000101100111101110001101011001100011111001100110000111011111010001011000110011101000001100110101000100111011010101100011111100000000001110101001100001100001011101110110111110011111110010110111100000101010011110001111110111011110111010001010010000010011101111001010010100001011100100100100010000000101010001001010001100011000011100101011011010111111100101001001101110100001001011001110011011111101101001001100010110111111000110111011100010010000000110010100001001101011101110001101100001010011111111000110111010000001010100101000100111001110111010111101011010100101100011111101011001011000100101000011010110011110000111110101001001010001111001011110011010100101000101000011101001101011011110101111100010100110101101000100100001100110111000010110100100100011101101000101011011010010010100001011000100111111000001111101101011000011100011010101110011100001101100001100001110011011001101001000110110000000001011110011111100111101001010100110001110011000111011001010110001100110000001111010111001101011001110000111011010011011101110101100100000111111111000100110100011011010010111000110110100000101111000101100110100111100010001011011011111011101011101101011001111110011010000001011110110000111100100010110110111010100000101111111111010010100101100010010000110101010011000111101000110000110011000111101101011011000001001011000110000000000111010011011111110001111011101000011101101101010011111101011101101001 +001111011100100100011111010011100011001001001010100110011011000010101011000010111000100010010101100000110111001011111011001100000001011000100100001010100101100001100101000010010111111010000010111110011100111110111011000011111111001101001100001001100011110111111110100000010011111100000111001100000110000100100101000011100111001110001111110000100000101101100101100111000101101111110010000110101110000000011111111010100000100000100101000001111000100001001011100111010011110001010010000100110110111100010110100001000010011001110100111011100001010100110100000011001000100111110101000000000101100110101101110110111011011100001010011010101000000001101111001100100111010011100010101001000101001100011000010110101100010101111101110110000000110110110110011111110101011001101010101001000000111011000001100100100100011010101100000111001110010100110000100110011110000010001000010100001000100000011111000111100010111100010001111110001111011010001100110010010100010110000001010110111100110110000111011101011110011101111110100100100011111101110110011010000000011001011001111101010100011011000001111111111000101010011001101000001111110101100101111110101000110101100001001000011000111101100000100000011010001001111111010010000010111001001010110100101100100000010011100101101111010110010110011111011011011111010011100000100101011000010110011101111001101100100101110010111010010001110001010000001101001010001100101010110100010111101000111001100000110000011100110010000101001010101111110111011001000111001111101100000000110010000101001000011111010100100101110000101101011011111100001111011010101011010111111001000101000111000001011000001011011101110000011000100111100010000001011110101011110010000110100100101010100111001010001011001001011010001011000010000011111011100100000000101101100101010101110111011001000111010011001011111110010011111100111100101110100101001110110001110001111101111100010010001010100011011011111101110001101001011001001011111101110011110010100101111011001010101101011000010100101100100101010100000101111101110110110001011010111110000011101100000110111111100011011110101100111101100000011110111111111001101101000001100100010111101111010100000100011101101011111011001001100101000110100111101001111110101000001001011000010110010101000001011011111000010001110110011110101110101001100110101110000---------100001110100100011011011010101110110110001101111000010001101110100010101010111100000110111000101101111000101111001100110100111110011111110110100101010001001011101101100100000001111101001001001000110101010001010001011001111010011100110010011111001110111100110111110100110001001100011001000100001110011101011010010111010010000110111100011001000101011110100011101000011101011101011011011101010101101010100000110010101110000000001000111001100011001110010101001000111001010111001010101101110000011001101100101001000011001000111110111001000111000011001101000000101100010001000100000001110010100011111001001111000000011101101111000001110010111101101111110101010010011111100111110111001100100101010101011111111010011011010010110000010110101100101111101000000111011001110011100001001111100010101110100111110110001011110110111100100001110000011011000001111111101110100111001111110000000101000011101110101011010110010000110110010101111010011111100011101001000101011001110010001100010101101011000000001100010100100010111100100111001000010001101111100010011111111100001110111111001000000100010101010100010011011000001101100110100001010000011110011110000001000011011110010101011101001000001110000011111111001011110100111110110110111100101100100000011001000010100001001000011011010100010100011011111111101101001111100111000110000100001100111110011000101100000010010011110100001111101111101001010100100100100110010111110100100110000101011011011000101011011111110011001100101111111110111100110010110010110011001001111100101101010101010010000111101101111000111111100010010000001110010001111100000001111000100111111101101001110000111001010110001101101110000100010101110111100101000110101001111100011001101110100110010101011010111100010111000100000001100000001110100001001110000100101001111100101111000001001001100111111010001000010101111101100001001110001010001101001110101110100111101110101010011011001101100111000001101000000111100010100100111011101110101110110110000100011111100000111011010011011110000101111111001110000010111010100001000011100010110101100110011100110000011110101011010110101000100010010101101010111110110110110001000000010011011010001110010100001011100110011011011010101111001101100111010100000100111101100010100011001111100101110101100101001110011001111100100010001011111110000101000100011101001010001011001011101110001010100001110101010111111000100101111100111101100011100110101010110100100100010010011101011101110001000110101000000110111100000100000010001000011101010010100001011010101001010000001111011010111010001011001000111101011110100110111111101000101000111011100000010001111101010111111111011011010010010010011110000010111110000011000110100110100011111111101001000011011001011100101111011011110100101011000000001000010110101111011000001001101001011001010111111010100001111010000001011001101011100101111010000011010010110111011110111101010110101111001011000000011001110010001000001100010000111010100110111001101111000100111101111111001010101100001011011001000100101011000010100100110100011011101110101100010110010101001111000101001000110100000100001110111101111100111010010101110001001100010111101110001101110010010011011011010000010110011100111101010110011110110101010000011001011111011110110010000111000110100010110010100101101100101010011110100010110100011010000010010010111101000101111010111111000100100011011011110100110001100011001001110000101000111110101101101011011101100100000001111101010100111110110001001110001011110110010101111100101110000010010111100010111011001001000111110011111110101110101011000110001101010111100001111011111000111011001011001011011100100110010101111001001001111000001111111111010111011101111100011110110011110101011111101101111010000001101000101100011010001000110101000001001001001001110011010010100001111110001001011110000010011100101010101000000010110100001010001011100010000111010101010110011110100110011001101011001100011110111010011100111001010000001111110000001010101001101110000001101011101101101101111000101000000100110010110110100110011110010111100011101010101100010111011011110011010010011111000101111000000101011000100001110001011000010010100110010000010001101111011000011111110110010010001111101110100010000110000000011100101101101110101000100011001110000000100111011000111100101000000001111111110100111100110010100110111001110001100000010000100100111111110010111011001000011110000110101010001101001010100011111110010101111001111111001100000110001101100110001000010101100111110111010011101011000000111010000101000011100010110101110111111100001000111110000011001110110010110011100100011011011111110000000011101010101110000011011011000110001011010011111100011111101111101000001111001010000011110011001010100100010110101001111001010100111010111010100111110110111110100110001011101011000010011011101101010101110100110010000100110101110110000001010111101011001000110001000000100111000001101001110000111100101101010101000010001110010000000000111000100011111111001110111011000011011011101100101001010011110011011011000000100011100010000101101011010111001001111110110110011101110111010010000001101010000011111101100011110011010010010101100111010101101110110110111000010011110101010011001011000011101101111000001010001010000101001000100111110000101101101110010111111000001000001001100000110010011010001000110010000111110111010100110000011110110100000110010101101110001111001010111011101001111011111011110001101000001100010111110100111011010000000110001101000011110011011101101011110100010101011100001011101100000001111001011101010110101010001111111111111000000110110101000111111010010110101101011010110001111000010011011000111100011100001011001011010110001001100000001100101110101010010111100000010001001100111000111011100111111101111111000100110010100010001010000001010110000111010001001111011111100001000000110101010001111010001101111011100010010100100010101110110011111010100111111011001011011110100000000010111000000111100001010001111001000101000101011001111101101010111111011010000011110000001111101100010111010110100011010010000010110100101011111100010000000111101111000100101001111000110100000101011011110000111001111001010011110011101110111101100101111000110100111001000010101111010001010000010110010000001011011011011100010011010011001011100011000110000011111010000011000111011100001111000100101000011010111000010011001011101011010101000100000100101011110011000101011100010010001100100011011111001101111000111000111000111000000111001111000010101001101110010111110011000101101101101111100010110010110110111000000111110010001000011110100111010111001110101000111100111101011100100001010101100001011000101101100101110101010011101011011001010111101010000101101010111000000110001100100000101001011111000110000100001010000010000010101010010001100110001111010111100101110000000010101000000110100001110010100101100000110100001111010110100000011001000000010111010001100010010001011011011001100001110100100100000100101000111000100101001100010011001000101101000110010100011111011110111101001010101110011111110010101010111110000010001001111001100001001111110001101000100000100110100010011101000001110000000110100001101010111010110001111010011110000001010110000110000001110010110001001010000111111101000000011010110010110000000111001111111100001111111100011111001111101111110100110011011001110010101000110101101010100001101110101100110101110111100001111001100000000010000110000011011101010001101111001011010100101001101010110110111100011101111110101110010001100000011111111011111000000010010111101110100111011011111111100110111000110000101111000100101011101001000101111100000000100000010110101111010001000110110010000110100011111111110010110011101110100001100100110000001000101000101001110100010010111011111000011010010100110110110100011000010010000000110000011011101000100011110010101011001111100101100101101101100011101110001011111011000001111001101101001110011100100101000011001001011001011010001110000101001110101001100110001010001011111100110000010111010000010111010011100110100010100110111010000101100111010011111101010001001010000011100010010001011000011010011000101010111001001100011011001011001011110001011110100000001000111100000010111000011010111100001100010001110000110010110111001010011101101101110110101001010001001011111110000110100100110011111011000011100011110101010110011000011111111001010101011001001000100111110101010010000001001101110011101111100110000000110111010011011001111000101101001100000000000111010000001010111000001010011010000101110111101100100000001111111000110010000100001110100111000110010010011111110110010000000101101101010110011111010100111000101010110110011101100011000110011101001100001101011000101010101011010101101001101110001111010100100110001001100101111011101000100111011010110110100110101111111001111010110100100001011100011100110011010110000011110101000010010110000011111011011100011100111111011000010000111011101001001100101010010100000011101010010101110110011000011101000100110001000011001010011011100110100011111010100010000001000100110110101000001100111011000010100010010001010111011110011111010011111001011000110010100111011100010000000100000010000011111111000101000110110000101110010011111010001110010001111101010011100100100010001111011101111101100000100000000111001111111110001111010101001011101000011111100001001100010001011000001010110111101101100010110001001100010110111111000011111011110101111011110000110110001100100111000100001000111001111000101010100001111001110000011001110100111001001100010001101100110010101100111111110111111111000001100011001100000110110010100000011000010100101111100010010111111000110111001110110110110000010110100011011101111011000010010100111111010110110001111100110011111111000101101010110001011111010010000101110110100001101011011001100001110101000011001001000100101110100011110011010101010000011100100001000101111011111010101010111001000001110100101100111011011111001111101100101101101101110010010011110000100111000101010011111101000110110000100101101100011010001111010010100100010100110010110101111111110110101110110101111110100100101001010100011010000111001110111111110110101011100011101000100100010110110111111101000101011000101101110011001010001011101110100110001111000101011100110010111000111101111110110110101010100101101011101111001111111010001011011101011010110100101100010011110011011111010011000100010001100010111111011101000110111001100111011001010110000010110100111011110001000010111000100001010100011111101101000110011101001010111010100110000011100011110011010000010010111001110100011110010010111100110000110011010100011001100010010010101110011100011000011111010110100010010001100011011100011001111001111100101001110100110001001001101010010010110000110100001100110010100001100100101011000000100100001010111100101100011000100000010111001101101001011000100101111011110100111011011011111001010001110001100000001101001011100100011100111010001011001001011111000010111101101000111010111000101111111000000100010010011000001001001111001101011001100001100100110000110111010011111111111000100001001110101000001101010111100001110010001110101111000001110010001100101111001110000000011111011010010101101100000011101111101011011001100010110101101001110001000100010001100001111001011111110010111110011001110000110010011110001111001001111010010110110000001110001010010011100000000110100101001101000111010100100101100100100110010110011100011111111100010101011001110111111100011001010110010101100000011010001101010101001001010010001111001011100000010000101000010010011000110010010010100011011010001011101110110010101010011110111110110001110110101010100111111011101111110110110000100100000110110010001001000101001011001011111100110101110001111101101100111011011010111111111001111001111001110001110010100001011110100101110010111110001110000001111001100101010010110010100011101010100111101010000000101100000100111100110010110001100001101100111001001100001100011011111001100100001110100011011001111110011011010010101111101111110101101000110011010110110111110001000110110010001001100001100011010101110100110110110011000000001010111101110011011101011100111110001110001001011100011110110111010001000110111000001000010101101101111101000110000011010110100101000101001101111000101 +101000111010011011101010100101110000111111000110110000110000100010011010000011010100000110111101001001111100101010111101101001001111010101001001010110111100100100000010001101101010100010010111110001000010110101011011001010110100100001111111100111010110011010011111011001010001000100011001011010100011101011001000011011000011110010011000011111010111111010011111010101101001000101001111010000011010001000001001000000001100101100100110010110111000000111000011001110010001001111100101001010001011000110101010011000110101111000010101010111101111011101111000101011001111001101000010100110011100100011100111110110000001111110100101011110010010110101011010000110111100010110111011000100001001111011000100100100011000011100110110001111111010110101101010100100001101100010111111010010111101000110011110001001000110111000100010010111010111101101101001110000010011110100010001100101000100011110011100011101000011110100011000100111000110011010000010100110100010010010001010100000000101011101000110000111110110110001010101110101101000101001011011100010101001100111101101000111001100110100100101000001110011110100111100011111011001011101100110011010100010100000100010100101001001000010011000101010101010101101100110111101000011000100011010000100001010000011100000100001010111110011110100111110100110110010111100010111100000111101011110001001100001011001101110100100011110010000101000010101001000001011011110011111001011011010010111101110011101011011010010100010100100101100010101011110010001110001100011010001111000000001011100010111001000100010101011101101101100101011011101011111011010010001111111101111001101001100001111011101011010010001010011111000101011111111000111110100011000111100100100011111100111100000100111011101110110110000111111110011011001110101001010011011000001000110000011110111100101011000001110100111111101110110101011111100101111111100111101110101000010011110101110101000110011010100110100111110010001100010011010110010101100000111101111100010011011011010011010001000101101011001010001011001110101101000110101110111111101101011001000001110111100000000111100111000111100101101011111000010001011001111110100000100101110001011101100010101111010111011110010111001001101101001000011110000011000011100110101001101111100011110100110001110010000000001100010111011101101011010101110100000011110011---------011001100110011100101111101100100001010111001111001000000011011101011011111001101010000110001001010100010001010110101100000000011010000111101000100101011110010011101111010010111100100100011010001000000111001010101011100101100000001110101011100010001110001001011110001010111011100001010001010100101100100111111110111010011011001010010011110101101101000000011010111011011100001111111111001010001111001110001101110111100000011010010101001111000100000101000011000100010000001101111001001010001101111111001001111010001001101101111010111011011010111011110010110011011100001000001110011100011111110011000000110101101011010001110100010001101011000111001000011001001011000001000010000000110111011111000011110010111101100010110100010001011001001000010111010011010010011010010101101010000110100111010001010011111000010110101111011001011101010000001111110110110010101110010011101101000010011101111001110110001010111001010101000011010101010101010010010111111111000100100011011000011100101111110111011000101101000011100000001010001101001011111110111110001000001011011100011001011011101100000100001010110011011110010110001110011011110110001000001000001010010011011001101011101110011111100110011100000010110000101100000010011011001010110110111011111010010111010101000111011001100111011111001000101001100010110101010001110100110000111001101101000100011101100001010101111011110001101000000110110001010010000100010100100101000110100010000110011001010001011010110001001010100001101010010001001101000100101010011110100111101100000011111000111000111000001110001100101110000100110100011111110110100001001000110011110100001100000111100111010110011110011111011001110011001001011101010001011101011010110001101010000100111111010100011110111110011001111110111100001110110001010110001110000011000011101100011010011001110000111100001111100110010000011001101110011110001101001011011000011111011010010101100010001100110001100110001000101100110010010001100110110111001100000011110000110111001000011111100001001000000101010111010111101110111110010100010101001111000111111000111100110011010110001001001001110001010100111011100111111010000101101100110001010101011011111111001010111000100111110000011011111000111011111111001001110110000010111101001111001100011111001110100111011010000011001011100100001101010001001001100100110110110110001110100111010101000110111001100110000011111011011001011110010111111001100101010101001000000111101010111001101100110111011111110111011010011011110100100010011000011001101001100001011100000111110110101110111000101001100111110110101100000001111110110011000001110000100000011001100110101011010000100111010000100100101111000001101010110100001010011100101000011000110111011111001100011010010110101011100111101000000101100011001011100111100000001110111001110100110010000001010011111110010000100100010111100101000100110001011000001001011001111111011001000110000001000000100100111111001100111000100111101100101110010100000100111000000110101000111101101010000000110001101001100111010011110010010111101100010110110000101101110111110100101001001010010111111110110101011010000001011100001011000100101111101011110111110010111111110011001001111001001110001100111001000011000110011101110110001001010010100001011101110111110110001100110010010110010010001100111110010010100110001011011101001000001101110010100011011011000101111010111011000110010011110001111010011000000011010100111011100011000101001100111000111011001111101101000000110111001101010100000110110100001111111001101101001100010000111101000100111010111101111001110111100101001111010011001111100000101000011110110101001101110101010110001111100001000100100000101010011000100011100110000111010100001001100011100001101000100101101100010101000101011100001000101101111100010000111100100111110011101001010011000100010010110111111011110001101100000110000000111000100011010011111101001110010000010111110011000101110011010010000100101000101110110000101111011011000010110010000100011111001100000100100110111101111111001110000111000101110010010101101000101001111010010110110110010010110010111000110011111000111100011101011001111011101010100000001101101010011101100001101110110111101010111101000001001110000010111100010001010110111110101111110001111001011110001001101110111000110100010000110110000101100010100011111001000000001100100111111100111100011000101001100010110110000110111010010101010110110010010101101101011110111101011001011011001110011111001100011101000011001100001111000000110000010011110101011111011010011101100111110001110110010010001011011110000011000100001011101100011000111011100111011010000110000001111100111000100000101011010000010110001010110110110000101101011100010100001001000100001001111001110011000101011110111111100011000110101000010101001111000010011001010110101100011010000101110100000010100110100010100101101001110011101000101101001000101011101100101011101000101110010100100111110010101000100001100111000011010011100010001100110010000000110110011110001101001101111111000000101100101111000100011011011001110011101010010101000110101101111111100101000101101110101011101010000101010111101000000110111111000100101110111101111001001100111110000010000111001111101100111010001110100100110110100010011001000000010001111110011111011000101001110110011000111111010000100100101100100100000110110101001101101111001101011000011010010111110000001010111101000101010101011000101110000010011101100000000100001010101011101101011011111100001101011011001001110001001001000011010010111100011111011001000011010000001110000001100010111110101000111111110001110011010000100010001100100000111111000000110001001001000011001100010011101111000001110001001010101100010000101010110011001011011001110011011011111101110010010110101111100101101000110111111111010101100010000111001001000000001110000001010001111000101111010111110101101110101100111001011000111011111100000111111011101010110110111111111101100110100001100100110011001011101010101101010001011111111001111110011110110000010001110000111011101110101011010010000000010001011001110000010011000100101000101110100011001101100011000100101100001100011000010011111111000011011111011101011111111001001111100101011101010001000011000101100011011001100001110110000011110100011000100001001011000111101110001100010000011000010110001010110110111011001111001000101001011101111000001010110000010100110011000001110110110110100010110110101100100111001000100000010011010001100110100110001110100011001101000001100111001010101001010010110000111100101001011111110011111001010000011011001010000011111010001011000010111110001011101101000111111011100110101111010111000111100110000100001101110011111101111110111111011100110110110110100111101100010110111011001001100111110110101010010011110111110101001010111001000100001100100000111001110100010111000101101110100001101011110010100000111111011011011100011100010010001110011100010011111001110110100000011110011001011101100101011010100001110011000101010011000101011000010010000001010111001010011000111111001010101101110011100110000000010100110001110101000101110010111110110111110010111010100010010100001101101011011101010110101110111011101001110110101010000001001000001110001010011011110010011011111011111100010111000000101010011000011011110010011011011000011010101001110010011111001001100100101101010011100000110010000110111110101110011101001101001101110101101001011011111100011011100001011101010010111000101000001010010101011010010001000011100000000111000111100111010001000110001100001011001110011010001111111101101101010010010101100001110011010111011000110001000000001110100111111011111011000100110101010010000101111111101110110100001110110010110000101110000101001001001111110100010010010100010001111111010111010010101001010011111101001101101011111101110100111011110110101110011111010101110111000110101001011101111010100010011100000100000111101000111110000110010001111111000010011101101010111011111111110100011011100100010010011000000000000010111010100000011111100100011001110010101011101000010110101100001111101111110010011001010001001010110100110000011111111100111110101100001001011110110000101001000100100110101111110001101001000101000001010000010101101001101010011101001101110111111010010110001001001100101011100001111011001001010111011011010111010111100011110001101010110101000111000011010011011100010000110001110110101101011000000001101010001001010010100111011010000000010000010000111010011111000110100011101100011110110000010001100010101011010110000000110111011101000001101011011001100110101111010011011011001101010010110101111010000101111010101110011010111000000110100001111001110111011111111111111001000101110111000001101100101101000110100000000101110000001101110001111010010011111010111111111111010010101001110110100011001110101100001110000011111111110110101001111111111101001101010000111100110010111100000010101111110000100011100001111110000000111101101010110100101111000001001000110011011011101001010000010011010100111100001101101101000000011101101111110011100110001010100101000110100011110000000100011101011101100100011010110000010111010001101000010111101111001000100001010011101111001110000111010011101010101101001101011001010000101111000010101000100001000111001101001111100110010111100111100001111111010100010101011010001001100100000001000111001010110110101010111011111100100000001100111011111001101011011100111001100110001010011110101001111011010011010000110101100001000110010111101111110000011100111110101101000100001000011001110111110100010010110110110000010100101001010110110101001111110011101111001000000000001000110011110000111111010010001001000010001110111111000011000101101101101011111111010000000100000011100101010010111001001010110010100001101110000101010011100101101100110010010010111101011100001000000010101011000101111011111000000110110011001100110111101100010111110011010101101011011110011101101100000100010001011000110001001101000000001010110011110011011101001000100011111010011111100000000010100010011011010110110000011101111110111000111000000001101010011011110010111100100001001001110010111000001010001100000111001000000011010111000110000000110011101100011000000100110011111110101101100111101000101000010110011111011001001001011100011010111111111100110011010010001100000000100111110111101010011010011010111000101110001110111011110101100100110011110011010110110111101000000111110011110000110010100110110100101100011101100111110111100010111100001011000100101101010010111100000000101011010000010011111010010001110010111000110010010100100111101111110110111001101001010111101001010010111011100010010110001101010110100010101110000101010101101010001001011010101100110011010010100011101111101000011111101100001101001001111010001010110110001010010000111010001110111001110001011001110110101100110000101001111000110100111001010011111101110111100100000111111100100110000010110000111000000011111010111100010001110111001000011100100100100001101110101111101011101101101100110010101010101100000010010111011000001110011010011011011100010100011001111111110000001111001000101010011001110001011101101111011000110001011000011111010001010001111100000011111101001111001110110111011011000000110010010000010100110000010010111101101100100010001111100011000010001011110000010001010101110111111110010011100100010110100100011100101100101100111111000101011110111000010111110111011111010111001111011001101001110110111111000100111010010000000001100010100110010100101000101010010100011111101111101000011011111101000110111111111100010011100110011000100001101001010000000100011010101010010110101011101101101000011111100010011111101100110101000111000101011101100101010000010011011110001111011100101011100010010100000111010101100000010001101111110101011110001011100010111101011101101011101100010110110001000110001110000010111111110001010111101100000101001010001111101100010010010111010010100100101101011100100000010101011111100000011110001101010100010011111011011010001101100011010000111110000110000000000111000110100100010100001101101011010011010000101111000101111111010011111101000011110011000010001111101100101010110000110100001110101010101111100111001010100001001110100110010011010000100100010010101011000001111111010101111011111000000001011010111111110100111100110000000010110100100101100011 +100101011100110110001100011011101100010101101111011101001110011000010111110011101100101001100111000000011011011011011011101101110001110111100011110101101010101010111011101101010101010111110111111001001111001110001001011001010001101001010101001011010101101000101010100100100111011010111111011001000010111110111100000011011101100111010001111011011100101101101000010010011101110000011110110101001110011001101111000100011111011110110001000111001111100110100100001000101010100101001111000111001001000001000011100010000011011010111001100001110110101110011100111110100110111000111100001001000100001100000010001110101001000000010101011111111110111100101101101100111010101100010101101100111010110110111000011101101011010010000011001000101001010001111001001100101011110000100000101111001010001000101001010001110111101000110010111100100101100110010111010110110000110010011101011101010110010001001010010010000011101010110111011110110101111010001011010111110110010001001011000111100010110101110000010000000100000000000101110100100001101110101101010011001000011000011100011111011110110001111110010000100111110011011001110010100010011100100001000100011101100100010110011010001111001000111110010000001011000000101000110111111100110010101001010001010010000101011110101000001111010010001101010110001101011000000110010010000000100001111011000101110100101010110011000110110000000000111110100110000001111101100001111111000110000101100110000010010100000111111101011100010001101000101011000010010001101110000100000001000101110011111001010111111110010101010000111100000101001110001100111100001000000000011110001011001101111110001000011010110100101010101100000001000001001110000001010011011011110011111000101111000111101011001111110010000100011011010110000010110110110011001101100010011111011100111110100100011111111101100101100011101100111010110100101011110011110111001000111111100000101101100011000010011110001010110010111110100000111001100101000110011010110011101010111111101101000111000101100110110110011001100100010001111000110001111100000011010100111001000100110000111001000000001001110100100001101000101100010110000001001111110100000001111110100110000000111101111010100111011011010001001000011111101100110011010010111101011011011111111111110100101011110100010101010100010110100110011101010000100000101110111011000---------001100101001101111010001101000101100001101010010101100010000101100110000010011011001101000011000101001110110110100111001101000111101101001001001001100010011000111110000000100001001110110101010001111101100011100011011110001101110100000111100011110000100001010011101111110001100011011010010100011100100001111001000010011111001111111001010011010100011111111110011110011101110001001000111000001100111100001100001000110111100110110001000110010000011001011011100110111010111100010111000011110110000000010110110011111000101010100011011001000011100001001000000111110001100000110000100000101001111011111100111001010001111000101010110010111011011110010000110000101001001011111000011100100111001010110110000110101000101111011000101111100001001001010100010101101110001000101110100111001010011011000110110010100110111111011100110001100111010110000001111011001011011010110110010110011000011110000000001010010011101110001011101000010100011110111101101011001110111110011111001101110100001101000010011011011001011000101100101111111000001111011000101001010100000001000110000010111000111101101011000001111011010101011000000000000010101111001100111100100010001111000100001000001101101001000100100000111001011010101011101101100000100010110110110001001001101000110000111110010111110110010001100001101101001000100010010101001000001101100001111001111110011100100101000110100011011010010000011011110110110011010000100001000000110010111000011001011101111101111110001101000000010111101101110110100100000100001110011000001100101111100011010011010111011111100001010000011001000101110111010000001111001000010101011101000011010011000111101110111010011100010011001011011011011011111000000000010010111101001111101001001010111110000010101001010001000000101000001001011100000111001011001111100011011000000000010000110110110010101010100111010101010011011110011011010000011100000101111001001010000001101001100000010100000101101000110101010101001110111111100100000100000000000110010000000111110101001111010000101010001111010001101110101000101101001110110110001001001111010111101100010101010100111101101110010110011101000111100111001010000000011101110001000100110001101001000011011110011011010110000000010000001001100101010000101010001011000001000011010011000100011000101110001100010000100100100110011110110010111100011000111001010011011110011110010001110111100111010101000010000001100000110001000110110100111101000111010101011011111110100010101010111010001010100010110101000001000110010100001100010010000101110101001101001000101001010011001100001001011011001011000010110010010000001100010100001100100011110010100001010000000101010000011101010010110011101110110010111110010010110000100010101001000011010010111100011000111111010100111111111001011101110000010111100110101100010110000011011100000001011000110001110000111011100011001101010000110010111000001110100100000010111101110011011110000000101100010111001011100110101110001010100100000001110011101000110110001101010110011110010100110110111110010100001011001010110101001001011100101011111010000101010010000000001000110011011110001001001101111110111001101110000111011101100100011110111101110010110101111100001010110011100011010010011101001011100110000001000000111101110110001101001011100000011101111011110010101110010101110100001101010010001010110010111101111101001000111010001111111000100010110011111111111011001001001010111110011010111010100000001100010101010100100101010110101111001010000011101000001010011111001011110010100011011101101100011111001011001011110100100000100110010101110010000111101011110000110100010111111110010010101111100101101011110010100001100100110000101010010110011110111000100010101001100110010100000000010111110001111101101100001010100011101011101001011100010010001110110100001101110110001101101110110001000110011010100111010000011000100111101111001101111111000011110111111101010011100011000010101110101111100000110000001010100011110101101011111111000010001110010000111110111010101011011101011100111001101110011100111010010000010111101101110001000010011010110111010010001001001010111001100010000000001010101011110110011011110101001010100111101011011101010100100110011100111001101000001011000101111000101011010110111100001010001111101110011110101010011101010010001110101110101010111110001110011000010011100010000110111001001011011001011000010110101010000000100110011101111001110100011111011100010110011000010110011110011100011001011101101111000110100101011011001000100110011001001111001100110011011011111001111000100000011100101001010010100001100110001001110010101001110010101111010011100010011000000011010111000100001111100101111111111101111001100100001100000100001010111000000100110100100011100100001110110011110000110110001011011111010111111000111111011001101111110100010000010001001001001000011010100001001011000101011010101001011010100111001101011001010001011001010000010111011110011010100101101011000011111100110110111110101111100010001001110100110001101110011010010111100110001101111101110111001110011000101111001010001001010101101110110000101100000100110011001001110010000101100010101000011000100110001101011101000000001000011100011011010111111101000100000100100001101101011001111111110001100000111101011101010000001111110010111001000000100111110011001010111000011010100111110111011010101110111010100011010000101010000101000111010101100100000110001100000000110101011101010010000001000110011100101000100111000001110100011001001101010110101001111011111111011011101000011010010010010010000001000101111111111110111010111101111001100011111010001110010100100000100001000000101010100010110011101001010101100110101000011010011101011111101100111001010110100100011101001100110010101000101000100101110011011111000111111100110111111011011010101011011101111011110000011001010100001110101110111000001111111110001100100100010001010001000101110000101100011000100011100010111001001111110101011001011111100100001011101001001100111100000100010101100010010010111010100111100101011111100001010001010011111111110101010110100011111100011110110100111000110101111010001011101110100100101000001111010000001001100101001001001101010011000110011000100101011111111100011101111001010000101100101100111010011001011001010000110011100001010100001011100110000010011111011000000110011001011101011010011001011010111110001010000100001100100001010010101011010101000010011100111110111101100111001011010011011000000101001100100000010111000001111100000010111110111001110101110111101100011100110010010111101001111110010101010001101001101111010110101110101011001011001001000011110100000110110011011011010100001100011101101100100000100010101101101101000111011110011100011101000011011001011100110000110001101000111101010010101110010110111010100100011001101011100001100100110011010111000001110100011001100010111001100110110101110111001000001000110101101100010111001100001111000110110001100001100100001001000110101111101101101101001111110011100011101110111001001101011001000101011111010111000010001010011101010111111000110010010001001100010100101001100010100111100011110111010101110101010000110100010110111101010011101110100001100001100010101101000100000100100001000100010110011100000101110110000101111101110101000111000000001111000100111111110010011000110001100110101011010111001111110010000110000001000001011110011111100101011000000111110010011010001011100111101111111100000100101101110011110000001001101010101011111110100010100101001100111101011001110110001001100101110110010001011010101011000001100011000000001111110001001000100010001100101001110010011100110001011101001001110101111010001011100011111011001100000001101011101001111110111010010000100100001001001010001100110111010100001010010000011010000100110100100100111100101101001101011110010000011010010100000011111101101010101110000100010100100111011000001101010011111101111000000001111111111110011111101110111010001100111010000101111000001110110111000011011000100101010110111010111111111110111000001101100100001011100001110001111101010101110000010100000101000000100111011001001010010100100010101010011010001111110100000010010101111111100000000111011000100011010000100010111101110000101100000011011011110110111011100110011100100110100000101111110110110011101100101001011011100011101001001001110011011101000000011011101011001000100000110111100110110011000001110100110011110101110101111010001011011111000001011000001111100011110001011010010000100000110100001110101000100011011101110111000110110100001001001110011001100001110001100101010011010100010000110001010111000111001111001101000101011101100100100110101111111101101110100011100101101010010111000110011101001010101111100110100110100100110101011111110011000110000000010110110100111001101001101011010101111100101101000100100100111001001001010001000001110001001100010000111010011011100001111101111100100001000100001100101001010000111110000001001010110101110001000011010100100000110010010000111001001100010100010010011001110001000010011000010110011111110000001111111011010000010101111111110110101100110101000001000011001100101111100101010001101010101011011010011101111011001100111000001000010101000100010100001001111010101000111001110011000010100100111101111011011101000011101011001011111000001000101001111111001111000110100010100000111111100010000000001110110010010101010101101011101000000011000000111000001111110001111010111111100101001100001100011010010001111011111011001011011000011010111011000011000100011000010011110001111111011101010000111010000100101010100011101010011111101110011111111101100111001011111011100000110100110110000100100110010011011111111101011110000000110100111000011000011000000011111010000111011010001100100000011011011100001001010001110000011101111000010111000111011010011101000111100000101110111101110100010011110010100101011001110111100111100010101101110101011001011010010000100011001001111011111110111100110111011110011000011100101011110100111110111010101011010001111010100001000111100110000110101001110010100101111100011010101010000000011001001010101000001100110100101100000000100001011000101100011000101100011111001111010000011110011001000110100000000110111011110110001010110100001111001001101001001111110001011010010000011010001010000111011010010010110100011010001100110101011011101101010001001011001110100000100000010100010000001110011001010000000110001110001101001010000110110011101101011011011110011001100010111001101001110101001010100000101000011011101100111100011100100110000000011011010010001110011110010111010010010010111000111111000110111110010011100011101100100100001011000010110111110110101110101101001110111010011100100111011110110110111000001011010011001001001001011011110100101110111111111101010100001111001111000001010110110111100011010000110001001101001011111000110111110110101100001100001000010000101101110011100110011011100010100001110110100110100101000011110000111000010001100100100000101111010101000011000110100101100011101100011111110000000100100100010111101110100000110010110110100110110100101001110110101000000110010010110111010011101101001010111100001011100101001010001110110100100111011111011010000100011001110101100100111101011000111111001011001100111001101000000101111100011100010000110010101100110010010101110001101110111101000111001000110110101110010110011100100000101100001011111010011001111010101010101110000010011001000100100111011011101001101000110110010011010001011010110001001010111100100101111011010111000110111001111111111100010000010001001110001100101001110010010101000010011010111110111010100101101010100010000010001001111100100110100011110111100110000000011100100011100011001101101101011110110000111110010011011110100010011111001000100001100010011011011101101001111110001110100111101100011010001011110011000000000101011010100000111011000110111010100100101101110110110110100000100011011000010011100001110011101110001111000100111000010110001110000100110111110101111010101001011010110101010100111000111011101011000001000001000011111101011011011110010100010101110000010010011111010011001101100100010010111000001110100000000110100110010100100111001100001000100011000110001111001110100001111111011111110000100111110111001110110011111011101111110111110001000110010111101101110001001001011100101111100001111011101010000100001000010 +000011010010110101000011100111011001100110101010001100110111011101110000001011101101110100100100001001001011110110110000111101110000110100000000001000000111101110110000111101000010010111011111010101110100101000101100011111111100111010010110001111011000100110000010000110001011101111010110010101010110000000001101110011111100000101001101010110011000001000000101111101011000001010001111110011010111111100101010111100111111000011010110111111110110111010100111110100010100000001000001011111010011100011110101000111110100001001000101011111000010110001111010011010000000011001111100001000111111111110011110100100101101111111100101001001001000011111000000110100110100001001100001010000100100110101001110001001111001011001001100010100110000000001000111000111100111001010110111010111010001001111110100111010100011101100000011011010101000111001001010000001000100110101111111100111010101100011110001100000010110001101101000001000010001000000100111101100000101001001001000111101100011000011111010101100010111101111010111010000011100101000011111001010100100001001011001010111011010000101011001111100010011101001011101100000100011010010111111100001100010101000011110000111001110010001010001000100010111101101100101000110011110011011111000111110111100000001101110000001010100000001010111101011101111011110001100001110001111111000000110011001100010001101010110010111000111010100100101010001110100100111101111111001011001100000101111111001001100000101000111110000100010011000001010000011110110000100011010000000110001100010100110010100111100110011010011101001001011010000010110011110000000011001100001001111001001101100010111011110101000101100011110001111010001111011011111011111110010110011011100000001111110010001101110111100000010101101001101010110001100000101010010010000110100111110110000000111100010100011110001000000010011101011100111011101001110111010010111011111101111101001100111011001100111011101000000100111001101101111101001110111010111110000110100001000000111011000010011100100000101000001010110110011010010100110101001101011010101111001000000111100001000010110001110101011001111111110011111011001010011010001111100010000100111100000111001000001010101111100000011110110000001011100100000110011101011101110111110001000010111110110110000100100101011000001001011101101001000111001000110010111110110011---------001110001101011110100000101000000010000001111010010100011101100110001110001010111101111101110001000011000111001111010011100011000001011100001101010110001111010000111010110010000001010101001100011111101111001001011101011100001001000011010101010000100001111000101000000011111111100100110100001101000011100111100110100011011010001000011100011100001001011101010100000000100011110010100111001111010110110110111001000101111110100101010111010011111111010001010001010000010000111010110111011000110001110110000110001011010001000111010100001101111011010000110100010101011001010111100111001000101001000000110110010011101010010100110000001001110011010111011111011111101100100101001000110010110111110110101111010111110001111011100101101100010010001001001011111010101010000011111111111111100101011010110001100001000100011010001110110010111101110011101110011000010001101110001011011111111111000001001101111110111011101101110101010011011001100001110000010111111000001100000111100010101000100010011111111100001011000010001011000100001001101001111000100000001100101110100000110110000000000110110110000001100011011010011100010000000100110001001001100001010010101011101100111010011011101100111011001000011101000101001110011000100011000100000001110100001000011001000010010010010011010100001010110011100010100110110100000100011111101110101011110111101101010110111000100110000000000011110100110111010110001101010111001000111111101101101011011001110010010101000111010101110110001111111110001110010011011011010010010001111111010110010011111001101011111010000001000010001011100001101110111100101001100101100010011011111111001101010010111100111001101010111101100011010111000101001110010111100000110000000101000100110000110011101111100101000110110001110101000000110001111100010010000100111011101100101001001001001110010011100010111111011101111100010000100101001110010110011010101100010011101101101001100100101011000101000100001001001111011110010100000000011000100110110011010000101011100011101001110000101111100010011010000111111000100101011000011100110001110111111001110000110001110111100110011101001011101010010001100100110111001100010100110001101111110101001110110000011110101100001100001101111000000001011010101001101100010000110110111110100110100100101000010001101101010010110110100111101010000100011010001010111011010011000101010111111111001101111001010100101000000010010010100010100101100011111110110010000000100011010111111011111111100011111001111111001010001011100101000110000110101111110101001100111000011010110100010010001011010111100000001101110011000111001101101101000101000111001000000001011001100011110110010110100101001110000110001101110111101001001101111100100000110011111000110101101011000011001011100001101100111100101110100000000001010100111010101010001000010100010110010111101111110100100110001010011001001111111101001100001011101100111000110000001101000101111110001101111000010000110010010100011011011011101011100100111110110011111000011000011001101100100011011001001010011001101001111100110101101110111101110001010101001100010100011110100001000000001000011010010001111111101100011000101111001110010011011011010011010000001111110010011100001010011011101101111100110010010010000110001111110001011001011111011010000010110010101101110111110101001011100111101110110000110110110001010010101001111101110101000011100010101010111110010010000100111001010100011101000101001010010011000011001011010001101110111001100011101100011011001001010100011000111100001101111011111011110001101000111000101010010111000111011011010001011001000101111110110110010110111010111000101111001010000001111111101100001011010000011000100111011000000110110010100010110011000100001001000000010011110101001111111110101010101000001001001000001111111001011011110001101000110010010010011011011100101010111000111111011110001001011000110100100110111101100010111000101111110010010101110100011010110000100010101101111110111011011110010100010101000100111101000001101011001010110110100101111000110010111100001101000000100101000111000101100000011000101000000000001000010101000000011000101011100110010011000010101101101011110010110001000011010111111001111101100001101010101110111001011000110111111000001011011111100010010111110101011111011101001110101101111101000101000001101100100110001101000011110111000111011011100111100011111001000101111001000010101001101100111110010101000110111101000000101010101100001000001001000111001001100000001100100000010010110111001110100101001111100000010001110011011010000100101001110111100111011001110100000111000001111000111111100001110011111000101100010001010110010001111111010001001110011001001111000100001100101011110011101010011100011001011111001011100001000111001001001100001111001000101001111001001111101000011000000101010100010111011000101011111011101001000010110011011001011100101001111010111010110110101110000100110110110111011011110111011110100101110010110101000010111100000100100100110100111011010111101011011000000111110111110100101011000011110101100110101001111000010000000101101111110100001100110110100000110111100010011110000111111000010110111111000111100100100000100001001100110000101000101000111110000011010000000110000011001101110011101110001101100101000110110001101110000111000100011111100000100001110001101000000101011100001000010100001011001100010011000101000001111010100100011011000010000101101010100101101001000000100001101000101000100000011100010011010110101101010000101011011101100011101001011101011011010010111111010101000110011111010101010111010011010010000010001011001101000010100101000101101110110011101011000001011110000111000000100101101101100110111101000110110001001101101101010110010100011110100101101111100001111100001010010001000010011100110001011111100101101111010100110000011010100001110110111001000111011001000111010010011000101000111000100010111000100111100011111101100011101100111110000010011001100111000011010000010010001110011000110101100111001101000101010100111111010101011101010000100010111010100000100101000011110110110000011101011111100001101101101000010101010100101001011011101101011000101100100001000110001111110011101011010110110011010101011001110000101001000111010110011010000011000110101100110011111000111100001110000000011101111010000111011101100110110101101001001111111010101000000101101101101111111101001011011101101111000110101110000101110000000100111101001110011101011111011010101011111100110010011110000100000110101011001111011100011001001111110111001101011001101011100110110110011011000100010100011001101110000101110100110101011100100000010101111101111011111000010001100110000010111101110000011101000110011001111110101101101001011001001001011011010010000001011010001100110111000110010001100110110110111101100100010011000110100101101101111001111100010110101010100011011101011111101011111100110110110100101110100010010011100011001101010011111101100001001010011110101011001010110001000000110001110001100010110101000001101010111011000101000111110100100101101101111000001001011010000011111011010000011100101010110011001111000111010110001110101001011010011111001100010001100010010101000100000100010100000110100101101101001101101000010111110001111101000101111110000111101100101111110010100010010001111101100001011001110011000001100101001111111101000101111001101111111111010000100100011111110111101100101010001000000000111111000011011010110101111001001001001100111001000101110001111100000101011011111001101101001101011100100001000111010001101011011010011100101000010101001100100110111101000101110110001101100001000011011110101000101100000110101111111000010011010110001011011110101010101100100111110101010000100011110010000000001111110010000111110111111011001110011110011101100010100000101100011111001011110010111011101110101011001011101000110001011000001110011011101011001011100100011010100101010100000110000011011100010110111000001100100101111010111111011000001000000100100011001100000101100100100111100101101001000001101001001110101110100000110111001000110111010001111011011100101100110001001000110011101010001000101000001001100001110000001100101110111010011110001101101111101100011110000001100000110000101000110110000011010111100011000111000101010100100010000111010101101000000100010111100011101101000111000001000110010000100100100100110101100110001110110100010111110100000011110111110110101101010001011001111111001111011010000011010100101001111010110111100111011100111111010000010101001100001101010010110010111001001000000101100100010000011000100100100010110010010001100010110100010111000011011000101110000100011111010111100110100000010000110000001011001100110101111000011100110011111110110101101110000110101000101101010010001100000101110100001010010100111010101011011100100101001011100110100010110001010111111011110110111010001001100111001100110001000010011010101010101000110110110111101011011010100110000010001100010100011111111100001110010111010001001010101000010111010111001111010011111110001100011011100110101010011111110000011001110111000010101010010110111100001010101111001001001100001100011100101111011000000110011001011011100000010100111010110001101110101111100011100011101100000101110101011010010000011011011001110101001001011010010100111010010100100101110101001100100011111100101011000011111001010001011111110111010001011111100111011010111111000011111111100010011010100111001001011000001001101101100010001111000111101101011101000010011001111011010010000010101100111010000101100111010011100011110110100001000000110100111110000100100100100110000101011101000111111111000101010011110101010000001100010111111101000000001010011111100111110100110111111001110001111001111010101100110000111100100000001011110101111011011011101110010000001001010010100111011011001010010101111101010000010100111100001100100000100111101011100001001110100011001000110101110001110010011010010110011100010001101100010110001100111010011000110111000101000010111011010100110000100110100000111101110110100001011001111001000001111001101110101100001000001010110010000100100000110010010101011101111011000011110010000110011010110110110111101001010001010101101010110010100100100001001011100010011101111000001001000011110000000110110111100110000010001010001101111100110000001111010100110001110000010001101110111000010011110100010000001010000101010110010001100111100110000001101101111100110011001010110000001100100111111100000011000111110011100100011011000001101000000001100001111001011101101100111110111111110111001000110001110111101011110001011010101001110100010011000100010010011100010111010001100010111011000011001101011000111100111100000101101001011011000001110001010000010011101011101010011110111000000111101001100011110110110000001101111111101010001010101010111111000100000011101000010100000110111101111000000000111100101011010010001010010000011011100000001001011111111000100110110010100110010000001110010111011110000101001000001010000110001000011001111001110000111010001010101000000101110010100001011000101001010110001010010110111000101000001111011110011011000100011010101010110010001011010100111111111011100111111011001100101110101111101000011001110001001111101010011000101111110001010000110111001100011011100100100101111100101100000110110000100010011000111010110110000101001111101001111101101000100000100000001111111100001101110101011110011101111101111001110001010100100001010000000100011010011000111011010110001101100010010000001111101001011110000011010100010100000000101111110000011010111111110100010000000001000010010110101001101001000010000100010111000000000010100011010101010101000100001010110011011110000000001111000001010011110101011011111101000010110100111111110010100000111100101111110001101011000001101111101100100111111001010100101010111111101111111000110110110000110001001101000100100101001010101111110010101100100100101100110000001110100010111011001101111111110110110001111111000010011010001100010110101000001001011011001101011110011101010001000011110001100101011011011000011101111101101000111110010010100000000110001000011111101100000011101010100000100110001010001011101101011101110010100110010001001111100111100110100100101000010111011111001110100010010011101011010110011000010101111100100111000100010001011010111011111100011111101111110101011111101111101011000110000000 +000011010000001111000110100110101000100010111110001110011111010011010011010011111110000001001101000110010001100000001111001100001000101011101111011011000100010101111110000110001010110001111001110100001100011001101111001110011110000001110110111001110101001011101100111011010101011011001101000110110000001100110100000000100011011101000111010011100001111101000000111011100001001011010111011111111101001110100111111110110010100111011000000011111111010011111100110111110010100101010110101100101010110010101111011110011011111111100111111101001000100111101110100100111100001001001000010011000111111110110100011001011100111100000001111111001100111100001001010000100110011001011110101000110100010011101110010000101111111001101011110101001100000101101111111101110000011011011110001101100010011100011110000010110001111100011110011011000010010011111101100011111110011000011101011110010111101000001110000011010100100101110010001110001001111110011011010100111000101111101001001110101111110010101001101101111010000001110000111111001011000000101001110001101100101101010001010110001111111000001001110101001000001100000110000011111101011000110110010000100110110011011011000001101100001001010001001110000100100110100001010001010111011010000001010101011010011101101111111001100100100011101001101110101110110100011000011101000100011010110001001010100000011110000001010001001100010101111101001110111011010110001000000110111011101110100000010111000100001110111101011010100100011111000010001010000001011100110100111000010001100100111011100111011100110001011011001110111011111100111000110101101110011111010110001111111101111101111011111101110001110110110000111100101101110000001101111111000000011100000011011000011111101100110000111111101001110011000111001101000010000001110001001010100001110011010101100001000111111001000000101100000010111010000110001011110100011011101110100010001010100111000010111011001010010000011011110111000111011101111111100110000110110100011010110100000100100100010010101100010001100110001011111110101110000011000100011000001011110101111010110110101000111111000000010010110000110110010110011011001011010000001101101000100111001001001011100010010001110000110000010011100001100001101010011111000100000000111110011100001110100100101001010001111111010111011011011100000110111110110001111011110001000---------011001111001111111010101010011100111001000001001011000010101001001100000011010000101011100001001001111001011011010111011001100011110001110111000101001111000010111010100100010011000111111101001010011000011000101100100011100110111011100010000111100110010100111111101011000111000100000000011010010001111101110100101111100111101110011101001111111011010001001100010111111011101110111110001110110101100010011000000100000101011111101101110111001100110001011010011100001010001111110111010011111000110000111110100110111110111001001111010010100100110010011111100101111100101010001110001111011000011001101100111111000100010111000010000011100110011100100000111001000100111110000001100010110110001011001010000110101111100100101111011000111001111010011111000101111001100100000001000011100100010100100101010111101001100101011010010100010011111101111100101111110001110101110101010111011111111010100011101111101110000111101111011101111010101001100001001111100111100100111001010111010011001011101111011100011011001001001001111100001010110101100001011001001100010001010100001110001010111001000011000101101011011100011010011111111100010010100101000100110110011111001111011101110000000000010111000000101101100100010001101111001101110100111011011000111101011001001001110111101000101000101110101101010011111010001010111000110011011011000111000101101001000111101111000010100110010001010101111101001101001111100000001000010101010111001100000011010101111011101100111010101001111010000111110011011110111011010110111011100110010110000100010110111000101100101111010011100001011100110101101101100110110110001000000110001001001100111010001001110111010100001100110011001101111000100100111011001110110100000010100000100000010001111000100011101110000110100100101000000010001011011000010011110101101111111000001010001101000011110011110110010110001110110000000111001110011011011010100110101111110011101100111000001011101000001011100111001011000011110011111110101111000101100111010001110111101110011000111101011011101000100001111101001011001101111011101100101010101001100111011010001000010101110000100010100001001111011110010000001100111010101101011101010001001011010001100001100101000000111101101000100000000000011001111100010110111010001010010011100101110001100011001100100001100110111101010011000111101100001111000110000001111010101011011100100111111001000010101010110100101101001101110101010110000001101100011001010011000010011101000010001110101010000000010101011110000101101010100011110010010111100000000010010011100000011110110100101010011000001011110111001101111000010011000000111101100001101000111000011011100110000100001001010111101011101100001001000000111000011101010000110110011100111101011010010001011010001000010001000111110101110010000000000000011011001110110111000000100111100011101011001001111000000001010110111011000001011101000101110011101100000010100010110101111010011111111011100110101010011011011101001011110101100010100111110110100101000001111011010000111100111000001100010111010101010110010100010000000011111000000101110011111000010010111110011111010111010010110010011011001111011000110101000010011001011010100011001101011110011011001001011000100101111111011101101001111011001000100111011100011111100011101100000010010111111001111010011000111110010011000110010011011101101110111110010011110110000011001101011000011010111110001011101110111000001010001011011011001010110001001101101000000111101110110101101011111100110011110000110001100000110111001000101101111001100011100101101000011101100111111100101101101100001011001110110011011011111110010101000001100011110111100010111000110101001001100001111011110011111010111000110000000111001111011100100000000100011111000101111110011001100011110101100000001101001100001101000100001011010010011010101000101001000110111100100110001000010000011001011111110100110101010101011000011110111001000101001100110010100101001111001100110111001000001110000011100110110110000110111000010000010110000101110001010000111000111010100110011111011101001111011010000001100011011111011000001000110101110000101100000010001000001110101010001001101101101010110101010110011010111000000010111000011100000111100010110101011010101100110101001111000101101100010111000001000100000010011011000011111011101001010100010111110000010101010101011111100101010011001010001111011011000011010011010101010000101110010000101011011000100111101110111111011001001000100011110101100010001110100101011100000011001011010100110001101001000000010000001000100000011010100010110100111001000101100010100101111111001011010001000000010111000101011001111001010011100011100001110000101100101010111110110010011000101111100010110000000101011110000100000001100000011001010101001101010101010010110100100011000001111010001010100111110110100011110010101010100111001010110001100110011111110000110111100011101110110010101010100001110001110111110110001001001100110010000010101000101001011010011011000011110111110000110101100000110000111111010001110011100000000100001011100010000110100001101100100010010000100010111010011111001110110000101111011010000111101001011110111000000000001000001001100101101011001100111011001010101110110110111011111010000000011011100010011111011110100111110101011000011000100100110011010101101011110100100000111101001100111010011000100011110010000000000010100111111001111000110011111010100001100000110101111011111001010111101001010111011111010001001001010011001001010100111100101000000111010010100011000010010110000010011000110000010001110010001010101001000000001001011011000001010111111111001101100001111000011110100101101100111001101011110101011100000101101010001000000100101110101000100101100001110011001110101000100101000010010101010101101111101101111100010101011101111011101101101010000001000111101101110101101001110011110101101011110000011011111001001011011110111101110111001000001000101100110101101010100001000011100000101100001001101101101000111110110101001111000110000101010101000111101011000111010000010001111010011110111000000011000010101011101100010010011100100101000010000110111101101011100100011000001010011011000100000111111010000100101110001001000111100010010011010011101000010010011011111001111000101010111011110001001111100011110110110111110110011000111111111000111101001010100000111000011110001011011010101011100100001000111111100001111101111011110001010110010101110111001010100101111010110011001010101100010000110010001000001110011001110010000010000110100000111001111100110100011101010110010011101110011001000111101101101110110000111100110101011000110110100000101111101110110111010001111010110100110111101100111110110010101010110001000110110001110110100111000111010011101000101010111001010000110001101001000111001100101100110011010000100111110100011000001100001100011101000011011111110111101111111001010100010110001010011100101001001100001001000011111101001110100100011101010011100111010101011110110101001111100111110111110001100110100011110101000110100011010100111000010010000001011110111011000010111001100000000101101001111001111111110010100101101111000101111000111000100000110110110000111111110011010111001011011110011010101000111111101110101101100000101000010010010000111110110101100001011111011000001100010011000101101001100010010001101000011110010110011110010100001100111010100100010000001001110011010011101010001001001100001010100100101001100010101011010000000110011100100111000011011000110110010010110101110111011100000010010100011010010000010100010000011111010101001100111111110101100100010001111000110111110110010111100100011001101010011101011011100010101101111011111110001101000101111011110110001100010100100101111010010001100111000001100001101111110100001110110100000111011110100010010110011001011110001110001000011011000100101100001011111101001100110011010111111011000100100110011010110100011111001010001100010101001010100011100110101101000001110111111101110001110101000011001010100000001101101101100000111000010000111011010010000110110100011000010000100110111101101000100110101001101011011001101001011010010111100111111000100101011111010111100001101110100111111110010001111001011101111100100000110001110111001101011111000100101101010110001010110101001100110101010101011101010110001001100111000110010001100000100110111001011000000100011111000110100000011110111010111111101111011100001100000100000000010100000110101010011110101111110110100100000001001011001101011010101011011110101101100111101011111001100010011111111110111001010110100010010100100110010011001101010001001010101111110001101010110011010100011100000001000000110111101011111010010010110111111011111001001100101010110011101100101010111110001010111111000110010001001001101100110000000101110000010100011101000111101010110000100001100100111011001011000100010110110100111010000001000001010000000110011101111010010101101100010001101101110000100010100101001000010110011111101110001010110011001111111010010000011011011111011011111110101101101011010110000100010100011001011011011101011100000001000110110000010100010101000101010011010111111100100110110010110010100000100101111111101111010111101100011101000000110101000100000110000101000011011111100001001011001011011011110100111010101000100110000101000111101110010111101011111101000100000000000111101101001110000001100010100000010010001001000010000100001101011100100001101100000111010011101010011111010100100100100001111111010000111011111110110101110000010000110100101001100100001110001010100000010001101101101101100111110000011010111001000000100111111011110010101110111100100100101101000010001010100000111101010001011001010101111111101010110011010010011110101011001101010010110000001011110000011100111111101100000110000100101001011111111111110111100000101111001011101011000011010001001100110011101110000000010000000110111000110000011110100111100101110000000100001111011011101110110001101101000010100101001011011101101101011100101001110011101000110001011101000100110010010000010100011010001111011000010100001010001100100001011111110111110001111110011000100111010110111010011001001011010001111001001110001101000001001011010100101011011110111110011011110010111100000011001101001000011110000001010000001100100001110010011100100000000111111110000000000001000100111001001100001110111101010100001011101000000100000010100001110001001110111001010010011000011110111000000101011111101101101010100110000001001110111111101011110001111011001000011101101111101101000000101101110101000101100001001100100010001001110100001010000010001011000000100111000111110011011110010000110101000010110001001110011110111001111100110010000100111010111110000111100111011110000000111010110110100011011110011000010100101100100110010010111010101011100010010000010111000111110110010100011001001111011100011110110011101111011000001101000110101010111011010001101111010111110001010100110010010000101101010100000110110011000110110000111000000100100100000010101000001010111111100110110100111101110110001000100111111100100100101000100101101001111011111111100001111111000111010100001011100110001101000101001111111111101001101111011100100110111110111111101010110101111010111011001100010101001000101001010010100010010111110100001001101001110010001101100111100101000100011110101111010000110101010010110100000011000111110010010110101000011000101100011111001110100011101000111100111110100110101101110101011010110110010010000000011010101011111100111101011010111000011110111001111011000011111000110000011011011111111010110001110110111101010100111000101111010011001000010111100100101110001001110001001001001110010001001101001001010010001011011001010110111000100010001100110100001010010111110010010110100010001010001101111100000010011100100011110000011111101011000000101010111101111111101000100011001010001000011000101101011001111111011000010011110000010011001101000110011110101001110110111101100011111101111101110000001000000101101001101110101000010111100110010110101011101001111110011111100000111001001110101010101011001010110010100111001100001011000111011100001001001110000010010000111001011110010001001010010101010000001001010111101110110100010100111111101010110111010110011111000101111100100011101101100111000101000101011011100010101100101110100110000101101011101111110100011110101010000100100101000110100100011001010010001 +ls11msgs +00000010110000101011001101010111001110011111010000011001000100101010101010100010110100011100101001011--------- +00110110001011000011111111111101101001110101111100010001001100101101011011100010011011011011100111010--------- +10100001110110011100100100110001100011111101110111110100011001011101111001001111111100001011110100000--------- +01111001011110101100110110110010011001111110101000101110010111100000011100111110100111011000110001001--------- +10010001010010011001011010110001011000001010101001001000100111101000110011010001011110011100010100111--------- +11001011011110010110100101011000000101000000100110110110011010111101100110001110111101111110010110010--------- +10111011001000101110001000100011110001011100111101101101001001101000010010101111111111111001100001101--------- +10101110101011101000101011010010110110111111110000100101010101001000100101011100010111100010111110110--------- +00000011101101110100111000111110000100110111010001110010111101101000100010110111001010101100010010000--------- +00011010011101001001111010100110101001011111110111011010100101000100000100000010001100101001011010011--------- +ls11cwds +1101010111001110011111010000011001000100101010101010100010110100011100101001011---------010001010100010000010110101101100001100000011000001010101011001001111000000111001000010001001111000110110000000011011101111110111011010100101011000111010001111011100010111101001010111000000111101110101100001101011001000111101101011100011001010111010000111011001101000111110110010010100000000000010110100100000000011001010100100001111101010001100010110001001110010100101111001011000101101000000000100111101010001000111101011010100111011101100110011101011100101110 +1111111101101001110101111100010001001100101101011011100010011011011011100111010---------000001001001111011010100000000011010010111110010000111101000110000110100011100100000101010100101111000110000101110111010011000101010111001101001101110010100100110110110100111010110110100000101010001011111011001100010111101010110111010111111000000100111011000001000111101001010001111010010100001011001111001110111100101010011100011011100011111000101100110110000000001010101001011111101010000100101010001011010110111100110000000111111010010111011000011010000011111 +0100110001100011111101110111110100011001011101111001001111111100001011110100000---------111110001111011100000110100001111011001000010011100100010000111001010110001101001011000011100001111000000110101001001100000101000101000000000110011000100011010101101101011101110011000010010101111010011101000110001011001101000000000111010110011111111111111001101010101000011100101101101111011000011100011011000011101110101000111111000100010111010100101111010110110101001100000111100101100011100000101110011010110011001101111101010101010100000111110000001000000110 +0110110010011001111110101000101110010111100000011100111110100111011000110001001---------111111101011010011000110000011011101100000011111111110010011001111100101111100101100010010010011111000111100100010000101001001110100000000000111000001111111110001010110111000111010001000111111101010011110111011010110010011111101111111001100000010011001000110100010101010101111010101110000110011001010000100011000011011011001101101001100000110011101110100011000100000010111100011111100011011110111011000010111111110000111101111110100011100011101111101000100011110 +1010110001011000001010101001001000100111101000110011010001011110011100010100111---------100110010100101101110001101010101010111011101101111111010101111100000101111100000001100010100001110111110000001001010101110001010000111000001010001100110110110001010011110101100001000010100110011001111100011100100010101001001011001001010101111111111111011110100111110010000101010000000010101011100110011001000011000000011100011010100010111001110110110101000101001010110000101111011110111000011010001000001011101110000100011101001001010101001100100101000010101101 +0101011000000101000000100110110110011010111101100110001110111101111110010110010---------011110111100111101100101000111010000101100001010111110111011100100000101101100101111101111100100011001111001110010100001010110001011000011000101101010101001010000100010001000110001101100101000000110111111100001001100000011110000101111001111011011100100100010000001010010110101000000000110100110111001101110101001001101000000101000001101001010110110011100001110101101110100111000000101000110001111000100010110010111101111110001010100010010111010110111010011101100 +1000100011110001011100111101101101001001101000010010101111111111111001100001101---------010010100011111101111111111010000100011010101011111100010100000111110010101011110100001001100100101100110001010111010100110000101001000110100110111100110110111000010001110111100010101101010111011100100011000010111110001110100000110011101001110110001101010011001100010110000011111100011110110011101001110101001111001010011110100110110100010000010101101000011001111110101110001111010111010111011001111011001011000001010000001010010101001011011011111011000111100111 +1011010010110110111111110000100101010101001000100101011100010111100010111110110---------001000100110100010011101001111101010101000111011100100000010100110111011100111011110111000100010010111011010100010000111111100101000000100011110001011010010100001100100001001011001110000010100010001111101110101001000100110010111100110100001100100101001100110011111110010110100000100000111011101110110001110011101101010001110110110011111000011010101000000100000000011001011010110110111001010111000001111110010000010011000010011000110010010110010100101100001001100 +1000111110000100110111010001110010111101101000100010110111001010101100010010000---------001001010011011100001001001100011001101111100010000111010000111001001111110110111001110010011010101101001111001001011011111100010010110101110110110000100100001001111000011011100010110101011100111110110011011000100100110101000100010011001001100001100001010000010111111100000100101110011111011011000000110000110000001100001000100010001011000001100001101111101001100110111011011010110011011111011101000000110000110110001000011001011110011001001000100000100111110101 +1010100110101001011111110111011010100101000100000100000010001100101001011010011---------001100110111110110011010111010000011000110001011100000011000100010010101001111111000100000100100000010111011001001111011111101000100110011111100000011101010101111011000101001101100010100001000111110001001000001000001110100011100011110000101000001000000101000101001010010111100011101001000100110000010001101001100010110111101100011001101101100001101111011010001011000101110110000000101010100010110110100001101010110000001011010111100110101101100000101011110011001 +ls22msgs +1001110000001110101011101100101110000110100010000100111011100100100110000100010111111111010110111001001011111001110000101001100101001101111000101010010110000000000111110100101011001010000001000010001111101101001--------- +0101010110110100011111111100110010100011000101101000110001111110011100110011010101011011001101011110101110110100111100101111110110001101110111101111100000001011101011110010011011010011101100000011011101100011111--------- +1111111100110000001000100101111110001100101100100011101111110100000100010001000101001001000101001101011011101000010111100100100000001011101011011100001110000101100001110100000010000010100011101111101001000011111--------- +1110010001000000110001111100100101010101101100110101011100111101110101011001110000010111000110010011110111110100111010000010110011011000111110100101011101011101100010011010111110010001001000010000010101011001100--------- +1110010000010101101110011001110000111010011100100010011011000001110011011001000101011101101100101110110100110101101001111001100010001101001010100010000100010001101101110000001010000101100001110110010010010001111--------- +0101001001111010011010011011000000111100011000101111010010110110100101110010111000100101010111110111010001011010110100001111001011011011001000001010011111101100100110001100100111111110110000000000011010111010100--------- +1100001111010001010100100010100101100000010100000000100000011101011101000000111101001011000110000101000110001110101111000110000010000101010111010101100100110110101101111111000111011101100000001100001011110100000--------- +0110110000101101101010000010101100000001000110101010110010111101100000100110110100011111001100010001001001001110011000100110100101111110101101010000101101111001111110011001011110010000010011011110000100010101010--------- +0000100010011111111100011011101101100100111000010010101101110000010101010110001100110000100110101110101000101100011101101001000001101101000111111111101011001101100010110011111101101010010100101010100100101000010--------- +0110000000111000111011001101011100010010100111011010110100001100111101101010001101010011010110001010010011010010100110111111101000100111110111111100101000001000101011100011000111010001010110001110011101010110000--------- +ls22cwds +10000100111011100100100110000100010111111111010110111001001011111001110000101001100101001101111000101010010110000000000111110100101011001010000001000010001111101101001---------111001101100100110101001101100010000010100111101110000001111001000010001100101011101000000011001101000101110010100110101101001101100101100100100010111111011011111000011010110011101100110001000110011001001000000101110101100011000011000001000111010001111101001110110011000011101010001000001010010111011001111000111001100100101011011011000101101110001001001001100110101010000110000001001001000110111001001110100101000001101110111101100000111010111010001011111010111001101100110110101001101010111101110100011111011101000010011001101001100011110110011000100001001110011101000000100110011100000110100101111000111101100000010011100100001000111001100111000101011100011000011011111111011011000110001110010000011100110110000001110101111111111110101011110111100111001101100110111111000100000100110000001110000111011011011010101110100011010100011101111010100100110010000100101111010110100101111100001101011010111011101101000111000011000 +01101000110001111110011100110011010101011011001101011110101110110100111100101111110110001101110111101111100000001011101011110010011011010011101100000011011101100011111---------011110111110010100111111111001011110111001011101010101010100011101110011110000100001000100011100111101110100111010011100111110100111011011110100010110010110110001111000100011111001001101001110100111010100001010000000000001011000001011000001011100100110010011110100101100001011110000101110111011000001100011110100100110110100101101011101111110111111011010001111100011011000100100001010100100110011000110110000110011111010110001010100010001010100101110101001001010010010010101010110011110010000111110011100100001101010101010111001110001011011000000000110100110111010010101101100000111011011000110010101100001101010100000011110001100000101110010111111100100110000001110101000100100110111010011010111111100010110001101110010011110111011100100101111011100010001000001110000011001011101110100110000011101110010111011011111100000100000011101000010110000111100000101111010110101011010110010011001010100011011111010011101100111000111 +00100011101111110100000100010001000101001001000101001101011011101000010111100100100000001011101011011100001110000101100001110100000010000010100011101111101001000011111---------011010010010010010101010010101011110011111001010100100000011001011100010110110000110111011110100101000011001101000111101110011101111000001110001101101010010000000011101110011110010011110001100000101000101011010010011111111000011111101000011100111001000011011110011010011000101001001010100000010100011001100001111110001111111000111011110111000000110101011000000101110110011001011111110100010011011101100011000111011010000101110010100100111101111110100111001010111111110111101011000110111000111111111110010111011101000001100001001101100110111000101100010110101001010001111101110000101100011001100000001010010011101111001101011101110010101101111001101100101110101101111110110100010011101001011101110101010100000100110110010010000110100001110100100100010010101100001011010111110001011101100100100101110010110110100011100101111000110010001010000010000100011101010101001011001000000011111110001011011110000000000101010010001011011 +00110101011100111101110101011001110000010111000110010011110111110100111010000010110011011000111110100101011101011101100010011010111110010001001000010000010101011001100---------000000100011011010000010100100001011010010101000001000010010011001010001000010000010011011001000100110111000011011010100110110100010001110001010111100100001000010000110011100110010001001100011101101111101101101101101001011010101100011101101011000000110100111010001100101101100010011110010100100110010010111100010000100000010000000011000100101111001001111110110111011011010100011001111001101000101000000000100001011011001011010010110000100011101011001010100100101111001010010010101011101011000100111001111110110000110010000001010010111010100010010001010110000100000101010100111110100000011111010000011110010111010100101000000100010100111001011111010011001111110001000001100000101001110110011101001110110010101110000110011101100011001100011110000100000010110111001111101011000101100001001010010111110111101010011000001001001000100011001101001100001001010011011101101111001111110000111001101001111011011010101110110110010110001 +00100010011011000001110011011001000101011101101100101110110100110101101001111001100010001101001010100010000100010001101101110000001010000101100001110110010010010001111---------011100101101101110100101101110010100000111110111011100001000010110111011101010110100011110001100011010101101010111110000000010111010010110011010000101001101100001001101000000101011001001100000111101100001101011111000100101001001010011110000111100100000011100101011001001110111100011010010111101001100001000111011011100000011101000101001101011011111000000010111111001011010101010100110100000100010110111100111100000101011111011101111111000100111011010001100001011100110001101110101011110101110010010011111100101010011001110101011111100011100110000101010011011000011001111111011110101111101111100101010100100111111100100010011001111001110010111110001000110101011100110001001101101101110011000111101000111101101011100011001010001100011110100000010100111001110001000100011000111000100000000101101011000000110101001010101101011000000111101101000001011100000101010011101101011000011011001001111110100110000000100111011111011010011 +00101111010010110110100101110010111000100101010111110111010001011010110100001111001011011011001000001010011111101100100110001100100111111110110000000000011010111010100---------110011001101100001001100111001011000000111110111010000011100100000001100001001000000011010110101010010111010100101001010110010100101010001100000101010101100011001110100001000111110010010100001000110000101011000111001010101001100110010001100111101000001010011010101101000110011011101011010110100110010000001010101011011100100010001100110110100001010011100000110010111101010100001001011010000101011111011001101000111111000100100101101111001111111010110110101100000001010101001111100010111110000000100011000101101010110000001001101111011101101111100010111011101010100010011111100011011111101001011111010100101011010110001001011100011111000001000011100011000000110000010000001011010100100011111010011101001101111001011000110011110111100010011100100011001001101110100010001111000011100101001000101001001000011001110101000010001001001000010110100100101001011000000101100100101010001100011111001011110010101000000001101011110010010 +00000000100000011101011101000000111101001011000110000101000110001110101111000110000010000101010111010101100100110110101101111111000111011101100000001100001011110100000---------101101100001011111011011001000000010011111110000100011100000100100110100010110001001111011011010000001000011010110101000000110011111101100000111000010000010001100001101011001100110001011000010010111010110011111000000000101110101101010001111111100001100010011111110111010001000011101100011111100111110100100100101110011010000110110011010111100011011010010101011101000111110100100101011110000110001111010011000011101000010000011111110100101001111000000101000110111111011100110010000001001011011000011011000011001100100011101111111000101110000100011000100000101110101101110100011110000100011000010101000011010001100000000100101111010011001011100000001101111101101100111100001001010001101010111010011101001111111101000000101000100111110000001000110001101101001111111110010111100000101101111111101110100110111001110101010000000000111101000000101110001110000001110111101100101111001110110000011011011111110000100010110101111100110 +10101010110010111101100000100110110100011111001100010001001001001110011000100110100101111110101101010000101101111001111110011001011110010000010011011110000100010101010---------110110010101001111110100001110010110101000000110101010100111111011111001011101011111000010001110111110010011010100000110100000111110110001110110100101110011010000011001001011001000100000101101111000111011111000111110001100111011010000011110000010100001011001010010010000100000101110000111001110010001000000110011001001101101101111011111101110001000111001101110010111010010000101010100001011010100000010110000110010110010011101110110001001110000001100101011100100011000001100111111001010000111000110010101000001110000010000011100111111101001101001010110000010110011111000100001111010011100111011001011001010011000101001010101010110111010101001111111110010101110110011010111010010001110100011101101010100101101100111110011111101111000000110011000011111010111110110101110111010001011101000001111010000001110001111001010111101011110111111010110011111100101011100000101001101010000001100010100001011100010100111011011010111111001 +00010010101101110000010101010110001100110000100110101110101000101100011101101001000001101101000111111111101011001101100010110011111101101010010100101010100100101000010---------111100001100000001000011001011001111000001010000110111001111000011101100111001110101001111110001110011000110111111001010100111101001111000001000001101101110001010100011011110100110101000010101001010000000111100110011011111111111110100000011111100110100110100011001010001100101000001110111101110111110000000001101010011011110111011011011101010110001000101100100101000111111110100001010000111011110010010000110000110001110000000101101011110001011010110100100011110001100111101110010000010001000111001010000010011110011001001011100001100000011010010001111111101101111011000110000101000001011101001101011010110000000000011100001100001110111110011101011101111001001000111110000000011111100100010010100101010101100100111000000111011101011010010101111000000000011011101100011111110001001100001101000101110111000101010001001000110101101100001011101000000001111010111100101110001111010110100100000000011100110100011101111001000000010 +11011010110100001100111101101010001101010011010110001010010011010010100110111111101000100111110111111100101000001000101011100011000111010001010110001110011101010110000---------001100110110110000101011110110101011001000011110010011000010011001100000010011011111011110111100001100100001011011101000100000111010101110010110100000100110011000011100001011101001100110100001011001110110111010011101001000110100010110100101111010100100100111000010010010101111111001011100100101010001101011000110000001111111110100000011000001000110100000001110110001001011100000000101001010011010101101111111110000110100110110100011001000110000100101011000101110011101101000010010011100110010110000101001111001000011011010010010010111100011110100010101100001110100111100101000100001011111100011011110011111100111001000110011000001011110000100111000011110011100111111100110101111100100111100010101101011010111100011100000011000011111111101101001110011001100001010100100110001001000000010011110111000101111000100010101011011000111010110101001011010000010010011110100010000101101000110100111100001111010010010011011100001110110 +ls44msgs +01001010011011001111010100001100101100000010011001010110010100110011000110111100101010010101011001111001000111010110010001010011101001001110011001101000000110001001001000001000001001001110000111000110111001000000111011000100111010111110101111110001101100110100100001110011111101011000110110010001110001000001001101100011101100100001001111111111111011110011100010011100110110101100110101011110000100000101101101110111111010101010100--------- +00011001001001001000101111110100111111110001100000000101000011110100100011111000011110110110000101101110000011110100101001101110111010010100101001110010110010100111001100001101001010110000000110001111001001011011100000100011100001111110011001000101110100000110100000001111111010111010011010011110011101111110110101101011010101010100001001110110010000010100100101100001001101110100110100110011011010010110110010100101010101011100110--------- +00011111010010101101111100011110011111110000001001011000100011000100011111100001101100010011100100100110111010111101001110011101110010001110010100101100111111010110100011001110110101010011111001001101010111100011100111100100010101101010100100101001011000010110101000110011110000001001010000100001110110010111111101111101101011001001101011010100011100101110110010010110100101101010111001101001000101011000101011011101001111010101111--------- +11011110100101111111111011101000100110000100111000100101100000111110110111001111010101000111110111010110011001010011100110101100000111011001001101011001101101000001001100011100101000011010011110000100000000000000000001110011000100010010101110110110001111101101000110010010111010110101101110100011101010100101001101101000011001011110010101100010101110111000001000001010000101111011011001001011101101111001100101101111100110001011110--------- +01011101011111100011100111000001101101010011110010101100100111011110111101101010001100110110001110000011100110101110110101010100011100111111001010000001001010000100111111001011101101001101001111111001100101101010111010001010011111000101110100111000101001001111110011101100101001100011010010111101011100110010011010001111011110111110110010000001100000111011000000011101101000001111100111001110111100010101000111111110001001101110000--------- +00000001011100000101001010010110000001111101101101010111111101111100010110001000010111011010111011101001110111011011111001111111110101100100110001000001111111101000100010100110101110011000101110010101101011010111101000000100100101001111111001100011100111110110010110010001001100001000110101011001111110000110101011011010011100011001011010010010110110010011110010101011010010000110111001010011011101010000101110001010101111011100000--------- +01011101110110100111111010101001101001100011011000100100011001111110100100001001011100001111110100110110001011001110111011000001001001110101011010110101010010110101101010101011010010111001001000011101100111100101000011010100100111100110011110111011000011110101000110101000010011011101010001100110000000011001000010100110110011011111100001110101110100101010100110001000100100110100111011110101110110100110111001110000110110101001000--------- +01111111100000001000000000000010100110111001100010011010110101010100101111010001111111011101010011001101101001101000110100000111101001101101111001111101100000000001010110010001101001111101001101000100010010100010010110001000101101000110000011100110010111000000011110000011110111101010111110101011100101000101100000000111010100111100100010011111100100110010011000001100001111001110001101000110001101100011011000011011000000000011111--------- +11001001010110010011011010001000001001101010100110111101100100110000001110010000101100011101110000111111101011111010010101011001010011010110010101110000011010010001111000100110111010110111011001010111110011101110000100010111011001010110010100000011100100010110101101011110101010001111111101001101101001011001011111001111010111011110001101100001100111001111110100111111100011100100101101110011011010010000001101010010110011101111101--------- +11010011110110100010111010011101111011001100011111010001011100011001000101111011111100110010110000011011001001001011111100001100011010111000001010111101101000111100001000111001110001011001100001100110000001111011011010100111000000010110111010000100110111011101001000000100001010110110100111001100100001100111000100001000010100100010111110111101000110011110111110101011101110011000101111100110101000111010010010111010101000101011011--------- +ls44cwds +0101011001111001000111010110010001010011101001001110011001101000000110001001001000001000001001001110000111000110111001000000111011000100111010111110101111110001101100110100100001110011111101011000110110010001110001000001001101100011101100100001001111111111111011110011100010011100110110101100110101011110000100000101101101110111111010101010100---------111111001100111011001100101101000111111001101111101010110110101011011000000000010111010011111011011111000011011010010000001000101100110101111110000101001110010011111011101000011011100010101011110000110000010000000101001010001110010010111101001000100010101011011101001011101000011110000011111001000101011010100010011011110111101011100111000101111100100100111000111110001100010010110001101111001011111011100001010000101000111001111101000010110111001011001111001001000010101001101001110010100000011001101010011111010101001100110100101101010011111111001000010010011001010100111101100101100010100110100011101110101110000111000110111100101001111010010010100010010001011001000110111111110100011110011110001110011001111011000110000110010011100010011101100010111111011010010000100011000101110001101000111001001011100110111101110101010001011000000110110000011110100000010001011100111001111111101000110001100110001010001111011111000000011010011000000000010111011101001000011110101110010110111101100110011001000110110010011011110001001001100101101010110011001111001111000111001000010100010110111110100110100110010010000011101001101110111101111110111101010001010111001010100100001010011111101010110000000111110000101011111001010101000001001101010010101111011001011001010000101100100011001110110111101000101100111110011011100111111001001110111101010001101010101001000000000010010011011100011101011100001101011100011000001001011101010010001001011110011010101101011110011100100110000101111001001010001000100000100001011001000000101111001101011000011000010100011011100011011011011001011010110100001110001010011101011100011001101001111111000110110111010000100001111000100101111101100100110100101000100101011010000110110001010010100001010000100111111000001110111101000000101010110111011000011011101111001000110011001111010001111100011001110111010111000001101001000000 +0110000101101110000011110100101001101110111010010100101001110010110010100111001100001101001010110000000110001111001001011011100000100011100001111110011001000101110100000110100000001111111010111010011010011110011101111110110101101011010101010100001001110110010000010100100101100001001101110100110100110011011010010110110010100101010101011100110---------010101000101111100000000010001100101101100001110000101011010010011000010101010011001111100101010110000101001101010011011110111100100100000101001101110101101001001001111011010101111111010000000001011001001111011101100101010010010101011001000100111001111100011001000111101100110101010100100110101001011111001000010010110100000111011111011101000011010011111110001000000111011111011111100101100100110010010101111100100011110010011001110011100110111010100111000000111111101000100001101100101001001111001001011010100110101101111111000001100100010000111101111000100100111011001011010000011101010011011111110110010010110001101110011100110110011111010110011011010001101010110101010011111110111110111111110100101010100100100110000010110100010000011001110100011110000010010111010001000010001011011111000000100010000110111101001011110010111111001000111001111110001111100001111111010100111001101000101101000010110001101110101100010011111100100010100010011110011000011011101010010011110010101001101000101011001000001101110011011111000111011001111001011001101101111010110010000010001000000011110011110011010100111011100100000010111010111001111010011100011110000011001101010100001001000110110010101111001111000001101011101010101000111011100000101111100101000101100100100001001000110111111110000100101010000011010110001111100100101101000101011111011001010000101000001110010111100100101110111010011111101100000100111000000101011100101010010110000011010100001010010011111000000110101111011110001100111101010111011101001110010101101111111101100010101000011110001010101110001001000111100101000111010011110011101111010111100100001010010000100001101010111001000100000010000010011010010110000111111010001111000010101100101110110111000111010111001101111110101010111011011100001011000010100101010111111000010101001111101101100100111000101100001011100100101010111110110010100 +0011100100100110111010111101001110011101110010001110010100101100111111010110100011001110110101010011111001001101010111100011100111100100010101101010100100101001011000010110101000110011110000001001010000100001110110010111111101111101101011001001101011010100011100101110110010010110100101101010111001101001000101011000101011011101001111010101111---------011101000110100010111001000111001000110100101001011101000110100011100101111111000110101011101100111111101010111101000000010010000010110000011100110000001011100101110000000100000110110001100101000010101001100100100111110110110101111111001111100101011111111011110011001001101101000011001000101100101001110110011111101100101001011101110100111101100100001110010001001100101100100101000101011111101001001111100001000000101100010010000101111100010110100101011010000101101111110111101110011011001100010011001011011110101101100111101001100011100101111100110011101010100011001000110001011011100000100010110111001010010101111100010110000110011110011100110010101110011111000111001010000111001101101110011011111100011011011100101011011001101001110101101011101011000000010000000011111010000011100100110111100001000000000100001110001110000000010111000110000010000110011111011011010000001110110101111110111111010000001110110101111101000011101101100001100011100100111010000111011001111101111100011001101001010111111000111100101000000011100101010101010100111010111111010011111001101010010000111000100000110010101111011011000101011001001101100010101110110101010101101011110010100010110101111100101110001000100100111111001101101110101101001010001111001011000101010000010111111111111101001011001001100010010100100010010101000011000110100100110011000110011010111000000111001011100101001100100011110101010010100001110110010100001111011111100110011001010010111111010000010000101111010101101011100110111111101011001100001100101100100100001000010010000000101000111101000100100000110010000110110001011011101001011001011111110000010111010001001000110101110010101000111101000001000111001011010010010010111001101011000110110000011000011111010010010010111111110100011011001100101100000110110110011001010110001011100100111000111100010000111001101000100011111000111101000110110111 +0111110111010110011001010011100110101100000111011001001101011001101101000001001100011100101000011010011110000100000000000000000001110011000100010010101110110110001111101101000110010010111010110101101110100011101010100101001101101000011001011110010101100010101110111000001000001010000101111011011001001011101101111001100101101111100110001011110---------110011011110100000011001111100000011011110101110110101110110011111000111100110111111000100111001001010011011001000000011010110000100010001010011000110110010111011101010011000001101011010110100111010110100101100101010000110110111100000001110101110001000011010011011110001110011111000110010000011100000101000010011011111101110111011010010110000101100101100111110010100101011000110100010000010010011100100011101011001011100001100001101010110001000001000001001101101011110001101100000010010000111010110010000001010111010101100001000101011101000010101011000000110100010101001001011000110111100000001110101101000101001010001000100111011111010011100110010111100011000110000001101000010100001000000101111110100001011001001001100110100110110000111100111111101100101010100010100011111001101100011010110110110110111010010000100010111011101011101101110111000100010111000110001101110001100100011010100000011110100110001100010100000101010110000100010101111010100010000100111100000010010110101111000001110111000101110111111110010001110100111000011110001110111001010101001000110010110011111011101001110011110001101101001100010101111011010001010100100101111110101001000100111100001110101101100011011000100011011000000011001010101111000110000100010101010001010100100100110010001100100011100001101001011111100000011011100000011001011101111100110010011010000001000110101110110001000010010110001000111011000101011010000101110101001010010111011101011000111010011100001100110000111000100110100001001001110101111111101001001000101010011011001100100010011001111111111111011011000001101011000001101111110101001001110111011001001110011000100100110000100110011110001110010001100101100011101000010100010110110011001010000011100100101101100010101000110001000001000101100101100001110011000011110101111100010000101111100001101011110001111010000100010101001111110011000101011110101 +0110001110000011100110101110110101010100011100111111001010000001001010000100111111001011101101001101001111111001100101101010111010001010011111000101110100111000101001001111110011101100101001100011010010111101011100110010011010001111011110111110110010000001100000111011000000011101101000001111100111001110111100010101000111111110001001101110000---------101001011001001111111000001011111011111101110001101111101010010101010110000100110010001011011011000000110101011100000101000100111011000110110111111000100101000100100110111000001011110011010001010000101000110100101010001001100001010101001111111000100000101101101101110001101101110100101011100011100011000100001011001110110000011010100011101111000000000000001111100110100110001100100010001100100001011000011010011100011011111001110111100000001101001010111001011101011101101000101011001011001101110000000011010011100100010110001111011100101100001111000011100000010000000000101010111001000100011001000110111100101001011011011010001100111010010111000111010110010000011100100110111001000010110111011001100100001011100101001011101100110001100111011000110100110010010110101000111001111000111000001101011000000011111010101111101010100100110110111110111001110011001101101111110011101000001110101100001010000100000111101101110001110011111110111110111011010000111011101111101100001101000111100001100100001110111001100101000100000001011011000110000011011000111101010010100001110100111100111110001110000001101110110110011100001110011001011101101011000101011010001000110011000001101010000110100000001010111000111110001011111101010111101010011100101010010100101010110110100110011000001000110001101010110011011000100101111101011010011100001111000011011101110000111000110101111010111111000101110101111110111001001000001010000001011111111101100000011010111011011010000001110111001100001000111010110010001000011011110001000100101110000010101011000110011000100011010110001100010111111010001010000011000111111000001110110101010000101010110111111011100111101110111111001100010110100001011110011010111111010000110110100010000110100011011111101010111101001100110011110001111001000110110111101010010101111000010100111011101100110111010001111010000101110101010111011100000001 +1010111011101001110111011011111001111111110101100100110001000001111111101000100010100110101110011000101110010101101011010111101000000100100101001111111001100011100111110110010110010001001100001000110101011001111110000110101011011010011100011001011010010010110110010011110010101011010010000110111001010011011101010000101110001010101111011100000---------001000110011100100010100011011110011001101010111011010101000001101000110010001110101110100111110110001001110011100101000000100101101001101001100101000101100101111000111010001101000011110101011101110001010110101011001101111101111101000110000101100000101110110000001011110010010000001001010111101101100011111100001000001101100100000000001111011101011000110100000000100101111101001111101100011001011010111111001110100011000011110101010000101111110101011010010101100001001111100101011110010010101000010000110010111100111111001000110010111010001000101011101110010110111100100110010100000111100001011110001010011001100011010010011111100001010110111011101000000001010011100110101011101001000001011111010010010010010101000000010011110001100001100001100110100010001111111101111101001010010111110110001000001100101000111100101011000000011011001011000001100100100110001000101010001101010010011111110000101110101110000110011000011010111101110001000010001011000000011101101100111111100111010001111011000000010001110110010001001011001101000100011001010111111000110001101001111010101010001001011000010110001000101001111010010000011011000101110111100110111110101010111010000011010101100010001110101001000110011010000010111101100110011001001001011111011011110000100011010111111001011001011010100010111011010000011100000010100110000110101010001110010010011101101010010000011110111010011110000000111000111101001110110110100000101001101001010110011001110100100110100010101111010011111010110010100111000100100011010110011100001010100111111111111001100110000000111000010001000000001101111111110011010101010100110101101000100010111011101100010011111101000001001000010101101000011100011000110010001011100010101010110100100010111100010011001111101010101011010000101111011100101111010001001000000011101110101000110100010111101001001001110101100101001011001010000110001111001 +1111110100110110001011001110111011000001001001110101011010110101010010110101101010101011010010111001001000011101100111100101000011010100100111100110011110111011000011110101000110101000010011011101010001100110000000011001000010100110110011011111100001110101110100101010100110001000100100110100111011110101110110100110111001110000110110101001000---------010011111100111100101100010110101011100000010110111100101011001001100001100100111011001000010001110001101111101100100111110110001100001001010000111001100101011011110100100110000000110001000100010001011000100010010011101011010110111101001110110001011101001001000000010000100111010001110110011111110101111010000000101111011011010011111101110100010111110000000100011001100110001011110010011010010111010001000010110011001011011111101100001011001101110001000000111100111110110011111010101101011110001011110100111001110011111010110100111101000000111101011101010110011010110011111001000001110011111010001101111101110110100010000100010101110001111000101001000111001001000010111001000000111011010111110010101101110000010110101000111101101011010011100110110100100101011001110001001010100001011111000011100010101010000101000101100100100010010010001011100001101101100101110100000010011100000111011001110111001001110101111010111110101010111111001001110010110001101011111000000011001001101011010101101101011010100111110110111000110001110000010000110110010000101110101101111101001001000000011110101000010010010100010000010000000100111001101101010100101111111000011011100011110010001111010011001110111001000000110001000010011110001100001110110101011111000010101001101101011001100000011000011100100111001001011100001111110111001000011101011010110111010100010000100111010100110111110111011110001111100011010000111010101101110010011111001011010101000101110101100011011011010000110100010011101101001010100101101001101000001110101101000001100110110011000000010001011100011101001111101011010010001101111001010011100011101101101011101100001100111001001010000000110011110111100000001110010000011101010011011000110000011101101001011110000011101110000100110010010110111011101100010000001101011000111110110100000101111101100011000000110000111111101000101110010110111101001101 +1101010011001101101001101000110100000111101001101101111001111101100000000001010110010001101001111101001101000100010010100010010110001000101101000110000011100110010111000000011110000011110111101010111110101011100101000101100000000111010100111100100010011111100100110010011000001100001111001110001101000110001101100011011000011011000000000011111---------111011110011101010111011000100001001100101001101100110010101000111111101010101110110101011100000111010001000110110000010001010000111010100110111001001010100001001101110101011100101011110100011011001001011001101100111111110000110011100010011110000111101011110001010000111101010001110001001111011000001011010110100001000110011001101100011011011111001000111001011111000111000100110001100100100010001010011001100000101111100110100111011000111010101111101111001010011010010000011100010011011011011011101101101010110110011111100010100110110001111001110011100110010101111001101100111011010110010010110110100111011010111111010000001110110111001001110010110011001110100000000000000000100011101000010010101110001000001111110110100100000111100011111000001101001111111001111111011001101011100010001100100110001111010001001000000111101001111101011010000101000001000111001011011001111011111101101010000111011000011110010010100111101010101111111110110010100110001101101010101111001111101000100100010110110010000111101011111001101010100110101100011110000011101100010101001011100101110100000001011111011010000101100001001110111011001100110011101110010000111100010101111010010101100000001011000111100000001111100000100101110110100010110001001101100001101101000011101110100000011010000011111111110000100111100010100111011101011010000110110001011101000001101001100010110000010111101111111011111011101111110011011111110011110010100110011100000000110000110101101011001001111010100001001010001000000000100001100100010010100001010100100010010001010010110101010010110111101111000111110001100100100111001010001100000000011110110110011110000110000100110110111001100111010010101000000110100010011111011100000101100110101111100010110001000111001000001100001100000000000011111010101001000010111100110101110010100110110111010010110100111001101001100010001100010111011101011000110 +1101110000111111101011111010010101011001010011010110010101110000011010010001111000100110111010110111011001010111110011101110000100010111011001010110010100000011100100010110101101011110101010001111111101001101101001011001011111001111010111011110001101100001100111001111110100111111100011100100101101110011011010010000001101010010110011101111101---------100110110010000001110100101101000001011010000001011001110100111001111100011110000110000100010011000000110110110010001000010011011001011111010001100110011011101100110100010010011010011001100000011001100100001011111100000110010001101111101001111001000010010010001100000101001110011011101001100101110001010111110010001000011100110011001110011100010000010100111110010100111110100010000010000000011111101100011101110111100111011101100011101110100111101010100011101110010000010100101000001010101000001001000011010011010000010001001110111100110001110000000101001001110000010001111100101001101111101000010011100001101000110110110000110100001111110100001010100011010000000000000001101110010100001111000111010011111100011001001011101111100000111000011010111011001010001110010001101100001000011001111001000001100110011110100010011001010010100111001111011010001110000001111100110011111100001101001101001001001100000100011010011111101100110100100100100001111010110011010011010111110110110001000010110011011001101110001011011000110100101110101111011101101001000100110010110100011001110011100111101101010001111100001110011100001111110010101100100001011101111111010000100000001001000011011110101001010110010011010001101111101000001101111110001100100000011010111011110100010011011011101001000001110000101110001001001011111111111110011101010010011011001111010110010101000001011001101011101011010000011100110010010110110001111010101101000011100000010011000011110100100011010000110010000001000010000110000101011001100011101011110001110110001100001000000011110111010100100110010100000111001010110010100001011000100001110101111010000001000101000010011001000110111001111101100101010010010111000100101100000111110011010110111101111100101100001101010110001111000011001101101010001111111100010001110110001100111110001101100101111101111010101010101111100111111010101101111010 +0010110000011011001001001011111100001100011010111000001010111101101000111100001000111001110001011001100001100110000001111011011010100111000000010110111010000100110111011101001000000100001010110110100111001100100001100111000100001000010100100010111110111101000110011110111110101011101110011000101111100110101000111010010010111010101000101011011---------011000000111101100110011100100000111110110010011110101110001110000101110010000010000100110111101010110110110101000011011101000001001001100100111101100111111010011111100100000101111011011000010100111100101100011100011011111101011000110010110111110101001010000001101000011101000111110101001010110001010000101111011110000110100010001001100001010100111010000011111110101011010100111010111100001101111010000000010110000011010011111001010101101101101110101101010000110111100101100111010110111001011100011010111100110100110011100100100011101010001001010001010100110111001000011000001101110000111110000010010011000000110000010000100101111110101011111101000111101101111011100010101101011110001010110001101101101111001010110100000110000010001111001000010001000001001011011110101111101001010010001110011011001111011011100000000110010101110011101111100101100011001011110101001011010011110111110001000000110010100111001111011010101011011001001000111000010010100001001110011110010011110001001101111100111000000011001100000001110111110011001111001110111101111010011101001001100001101100001101001100010011011000101111101111110100010010101110000011111111100111001110011010100111100000111101010000000110001010111010011101000001101110101110011100110001111111011101100001010111111001010100111100000011011110000101100010111000110101010101001010100000110011101000100101011110010110100011100100010101001001100100000110100010101100100001000110000000101110101110101100100010101010101100110100010000111010010011101011001100001010011010111010010111100100111100000110011011010111111101001001000111010000010010001101100000100101000011011010110110100101110011110010001111001110100010110010011110111000100001011111010111001010110100001010110101111001001101100001001100110011001000111101101110110100001110010010101101110000110101000101000001001011011111110111001110000011001010010 +ls88msgs +1000011010010010010001001000100100001011111100110010001100000000010010111000110111110101100010110111111101011100110010001010101001100010011011111101000010000110000110000010001010010001001100101110001101111000001000011000101101101001010001000011100000001000101111010000110101010011000101001001010100111010000100000011001101001100001110011101011101000000101110101110100000111111111011111001001000100111010100010000011010111000110111110111110001101100010101001110110111111010000000100000000101000011111101010001101001000000000001001101010011001001001111110111001011001001000111001011100011010000011110000100010101110100100000100100010010101011110101100010001010100100111111111111101000111000111010111100000100000010111100010011110101101011011100111001011110111111111011000111001010010000111010001010011111000101010000101000100101101010111011001111001000011100010111001011011--------- +0000111001000111111011111101110100000000111111001001100111101110111011011100110010011000111000101101100110000011101100111011011101001101000010110101011100111010100010110011000100011000001001100101010101000001110111001111110010000110000010110010100010001100011111001001000010111100110100100010001101000101110001110011010111010000100110100101110100111011111100100000101010111101001010001111000110000011111111110111100010000111100001001101011011010100000000111111100111100010010000011000101011011110101011110101111111011010011110111101001100000001010111010100110111111001111111110011111011110110011101101100101110101110001110111000001011111101101100010011111101000001010110000101110111100000101100111011111001110110111010100101100110001101101010111011111011111010100010010000111011100011000001000000001000011110100101011100101100011100111101101100010110011100010110001000010--------- +0011011011010001101101001100000000010011110000010101111111101000111001111110100110100000101001000010101011110111011111100101110101111001101111101011001101110100100101101001111110010100110101101001111011100110100001011101000110111100011111010011000110001100101110101000000111110011010011001011100110011101011100100000011000001000100111011110010001110111110010100111010011000111001100011011000010100111110100110110100000111100101001100001100111111101000111100101101001010010110011011000001000101000101100001010011011100111011111100101010110010000010110101110110001011010111101011100100010111011100110100100011011000010110101110000100011000010011000110010101010001010010001111100111010000111011010001010011001110010101001001010110000011100100011100101000100110101111010001000000001110010100010101011101000000000000011111111001001111110110001101100101000000110100110100100010--------- +1011001000111001100000111101101111100110000001001110110000100111011110000000001100010011110100000000100110111010011111010011001011110000100001101110100010011010001111101100011010011100000011110100011110010011110101001001101100110100001000110011010010100110000001110110000100110111011110010000111000110000101100000111000111011000001111001011011101110001001101111101010100001001000011111010111100101001111001010000011111011100110001001010011101001011010111110011111111110001010110010001100000010101011011100011011001011000000101010001000000011000000110010110011010000011110011011001011011001111110001011100110110011110011010011011111110111001011110100111111000001100010011001011101000100001000011101010011000101000110010010010011110110010001111010001000001100111101101110111001010111101111110010000110101001010101111110001100110001000011110100110110001101100110010101100010--------- +0010100111100110010011110001100101010110011100011101101110011011001101001000100011101000010000101110101001010111110111101101111010001011111101010110011100010110011111000001111110010000011010110011011010000011111000111111100100011001010100100110101110111111010111011001111010010100111001001101001001111100001100010111110100000101110001110111001000111001011000001000001101111101100010000110101001110100111111001100111000010010001110001010101011010010000111111100011100010111100111110010001000010001100100000011111100000010100110100010000111110111001000101111001111101101100110110100101000000001000011001011100111011101010010110010100110011100110110011111011000100100110110001100101110101000111011010001100101010101001000011011001000001110110100111100000010001000010011001101011111101100001001010000010001100101101110110110110111011100111001011100110111010111110000111011101--------- +1111100011110100101100110000110010001011111010011001101101001110001010110110010110010001000010100010100010110110010000010001100000100001011001100011000100000010001101100100101110001010000011101010011100000100100011100111011111111110101011001100010111000100000000110001100100111011110101011100010010100111110010010110100011100010110110010110001110000100011110011011001010111110101000100111001011101001101111110110111000110000010101111001010011011111010101100111100001000010011001010110011001010100110000111000010111000110100000010110101110101100000111101011100000010111011011111111111010001100000110110100110011100111101111000000011111110111000001100111100010001100000110101000000001001011001011100011100010010101011011000101011101010001000100110010110101010001000110101110101010001001010110001011101101011010111110100011000000100100010010000000001000101111001100111101101--------- +0000111011001000001100111100101010001001011010110111111110101110010101101111111100000101011110011111001010111111100100110100011111101010011001010101110111100101111100001011110101100110001111011000111000010111111100001100111101110001101001000000111111001001111100100000011011110110101011110111100111011001011100101101100010100010111101000000100000011100101100000000100111100111101000101100010001001101101111100011000110111111000001001000011101110101100111010101110100011010010101001000100011000100001011100111011110001111111110101101011101101101110000000010010010001111000101111011101100101101101001110000111001001111001101110110101101100011111011001110001110000010111011001101010100011101011001010100100101101100010010001010101001010100000101110010000111100101110000101111111011010001000100100001110110011111100110111000000101110000111001111100010011011111101111110101001--------- +1110010110101101010110100101101010011110011010100100100111101101010111110111101100011011000100011000011101000000100010001010001011001101111001100000000000111111011000000001000001111011110100110001011001101000111001101010010000110011111010010010011110011111001011111000110100101001010011110110001100010100000110000011111110010001010110100011101100110000101001110101001000101001100111111100011011001001011101001010010111010101001000001010011110100010010011101111110111001101110100111001010011101010110101100001010010010100000110100001111100110110010000111100110111001000010111011001001000001111011110000101101001011101010100010010001101000110100101101001010110010111001101110010111110011111111001000100111010001001010010101001001000100100010001011110100000011000011100001111011100101010001010000000110011000011100001011010111000111110001000000110001101100000111010100100111--------- +1011111111101111001011100010011110110110110010110001000001100100110101011010110001100101110010111001001110011101001000111111111111011001110001101101010110001000110011000000000011101000010100110111001010001000111000101000111000010000100001110010000000111100011111001110000110110100001000000111010110000110000001110111100011010010100010110001111000010001001001000100010000101101011000000111101010101100011111011101011011110101100111101110010100001101110111110111011101001011011101111010000001101000101111100100101000110010011011110110010011110011001110000000111001010100110110011100001000101101111011110011111110111111000101100000000010011011011010000110110011101010000100001111001110000011101000010111010111111101010110100101010001001100101010000111001010001101010000101011100100001000011010011000010000000011010101010101000000101100000010000100110010010010010010101011111--------- +1010000010010101100000011000101110010110100000110110111110010010101010100011110101101010000001110000011111110011110000000101110100111100101110101011110001011010011111100101000011001110001001001110111001010110000101001111011101010101011101011010100010001110110010001011110001000011101111101101101110100000100001001101110011110111100100101111001011001110111011111000100011000111010010110000000011100101110011000011100110100010110010001001110000000010011100000111110011111110011100100100110011000101000100010000111110100000110101110011111100000000011001001100101001100010011101001010101100011011000001111001111010101010100010110010000010001111010000010101000010010000110101101101010110101110001011001011011001101011100001000001101101000000010010011010000010100110011111111001001111010101100100101010011111100000110011101010010111010011111101011010011011001011011001010000101--------- +ls88cwds +10010001001100101110001101111000001000011000101101101001010001000011100000001000101111010000110101010011000101001001010100111010000100000011001101001100001110011101011101000000101110101110100000111111111011111001001000100111010100010000011010111000110111110111110001101100010101001110110111111010000000100000000101000011111101010001101001000000000001001101010011001001001111110111001011001001000111001011100011010000011110000100010101110100100000100100010010101011110101100010001010100100111111111111101000111000111010111100000100000010111100010011110101101011011100111001011110111111111011000111001010010000111010001010011111000101010000101000100101101010111011001111001000011100010111001011011---------110100110101000000110001100000100101001010111111110100011110100000001011100111011010001000011010010101011000100110101011100110010101110010101010101001111001100000100100010111111000011011011000101001000111111011100101111111001000110101001101101101110010101000101010111001101011111101001000010011010110000000110000010100010111100010000001001011010110011110101001101101110010100100110100111001001101000001101000110001100011110101011100110110111110111000010111111101111110010111000110100001100111101011000010010110100010000000011100011111001011010011111100100101111110001110011011100010010111110111000011101011011111001100010000110010010000011011100101010011000110000110010111111101011011001010000101000011110110000101101101010010111110011110111011001000111001001000101101100001000100101101101110101111100111110001000011110101111100010001101010001000101000011101001111110100101010110100001011111100100010000011101101011011100111001010101101011010110000101010000100100100110101001111001010101110001111110110101110010000000011100011110110010010111101100100000100100101000111010110001100001010110000110000110000010000011001101011000101001101101011100100111001001100001000001110011010101011110100010110110100001010110101000100100110110111100101011001100110110010111111000111110101000111100101000101011001001010010101001001111011000000100110101100011001110111000010011110100110001110110001001001001010110101011101011101110011001001010001111110001011101110000001101101001101111110011101111100100100110111111101000110101000000000000010010001000100101110101011101011010111001110010100011111111110001000011101010010111101110001101110001111010010111001001111101000001101011111110010110110101111011011100101100100110111110100111000010111010101110110110111111110011010010000001001000101001110111011000100010010100000101001111001110111010101010101101110111001010100101100101000111010011100101001110101001111110011100100111110111110000001011000011100000000110110110011100010000000011110101001001000001100010100001110111100000000001100001111010110011111100110001111100100111010100001001010010100100011001100101010001010011111001101001011010100000000011100011111011100110111100111111000011110001110010010011100111101010011001110000000001001110011010010010000001110010101011111000111101101100100000010010010101110100100111101110101010100011100100111110111100011110110010111000110000001110100111001111100111111111011001000001100101000111100000110011000100000110001100110111100001110011001011101011100011010100101101111101100011111100101111111010101111011001101110101010011011010011011111011001010011011111111010011111010111011011001101010111010100101001011101000001100010101000101010111000011110001110101010001101000011011100100000101000110001110101010011101010111101001101110000100011110110011011110000000100001110110110011101110100011100100001111011010001000000001001101111110111110101111001001000101010101111011000101011111011100110101001111001000111111000101000011111111010011010001110010111101011000010001110011011110101000010100100111001100111011000111100010001111001011000110001010110011111110110111001101111110101010001101011101101011011100001001001001110111101011111111001110011010101100100011011000001111000100011001010100011100111100111110100100111100000010011100001011011101011111011111011000111000100010100111000010100110010001110010011000010110100101101010111110000000010101011000101110000101000110110010001110001101010100111010111111000110010010001111011001000000000101011101001110101101111000010110010011011111001011111001100100101110111111010100000100100110110101011110000011000101111001010111011001011110000011010110011001001111110111010111100001011110110100101110110100101011011110001101010010100111 +00011000001001100101010101000001110111001111110010000110000010110010100010001100011111001001000010111100110100100010001101000101110001110011010111010000100110100101110100111011111100100000101010111101001010001111000110000011111111110111100010000111100001001101011011010100000000111111100111100010010000011000101011011110101011110101111111011010011110111101001100000001010111010100110111111001111111110011111011110110011101101100101110101110001110111000001011111101101100010011111101000001010110000101110111100000101100111011111001110110111010100101100110001101101010111011111011111010100010010000111011100011000001000000001000011110100101011100101100011100111101101100010110011100010110001000010---------100010001011001111110101101001100011001110110100110000111100001100010000010001001100000011110111110110010000110001101011101111000001000001100101101000110110011001110000110111111001111100001000010101011011100111100010100010000000110001000111111101000001000110000100110010001010001110101111011110011101010011001001001101100000101011100101101101101111110000101000011101101011110010000010110100011100001000111000111011001100100000011010000110010001011011000011110111001110100111111010100110010100011010111011100001010000101011011100100010111100101001010001111011111101111011100001100111100110101001000110000011110100001010111100100100001100011001111110100111001110011100101011100001110010100010110011011010111100010101110010000000100010100000110111111111101010000000011010110101000101000110100010110110000010110111100001111001100110100111111111110111111101011001101101011011001000000111100101101100010001001110100101000010011000110001100110010011010100001011100011011001010110010110111110010000000010101010011101000010001001001010110110101001101011101010101100010001100011010111110001110010010001001010000100000110010110111111101000110111111011010010111111000101010111110000000110111101001101100010110101110010100111110001001010010100100100011011001110010010011011000000000000010010001001001001100100010110000001011111110001110110010110101101100001001001010010000100100010111100000010010011010110001011100001110011000101001111000010111111001101001101011110010110001001100111110101001110111000100001001110011001001101110001000111001011000000010110110101010111110010011000001100101011100111100100010111100010110010110101101000110000000010011010001011101111010011111101111000101011111110011100001011010011011011000110101010101101011010001101000010110110110011111010010100010001111000000011101111101010010011100100110100010110111111011000000110010110010011110101001110001000110000100101111010101101101011111101110001001011000100101001001000001001101101001011100001110000000110100001110101001000001101110010001111011111010010001000100101001111101011101010000111011010101000111111000000000001111011010000110001001000001100101110000110001111010101110111101000110100010101001001111100011110011010111010011101000100010010001101110101000110011101100101000000100100000011000001010111101110101111011001111000001010101011100110000000001110100110100011100001101100100110010011111111101100111111101011110010101001000010010010000000110010010110010011111101010000010001101001110000001010010000101011001000001000011110010100101101010000000011100000110110010001110110110101111100011011011010100010100111000110111010001000111101110001111001000101101111011011101011101010001100001101110100111111000011011011000101000110000000100100001100110101101111011011011000101100101100111010100110011011010110101110010001101000010001011110100011000101100111010100000101011001011111100000111010110110100101111111111011001000011000001001000001110111000100111011100000111001100001001001101001110011001111001010001100001100000111101011110100100101010100010101100001011110100010000100011010010110100001011110011000001000010111001111100101001111101101110000011010111101001001110010101101110111000101010101001111101110011011000101010111001011100010000110010011011100011000111100111010101001111000100101010010000010011101101101000011101111101010011011101000010010010000101001010110010101111101000100010110010111001010100010111111010011101110111100011000111100000101101010100001101100000110110010110110110011001111010100000100010001101100100000100100000110010110001101111011000100101001111000010000100011010100100010011011000111111110000110100001110000100000100101000111011000001000010011000001110011000010010100101001101111010111101001110110 +10010100110101101001111011100110100001011101000110111100011111010011000110001100101110101000000111110011010011001011100110011101011100100000011000001000100111011110010001110111110010100111010011000111001100011011000010100111110100110110100000111100101001100001100111111101000111100101101001010010110011011000001000101000101100001010011011100111011111100101010110010000010110101110110001011010111101011100100010111011100110100100011011000010110101110000100011000010011000110010101010001010010001111100111010000111011010001010011001110010101001001010110000011100100011100101000100110101111010001000000001110010100010101011101000000000000011111111001001111110110001101100101000000110100110100100010---------010000001111111101011100100001101111000100111011110101000000111011000010111010001111110011001100000000100011101110110010001010000000111110000010111010100110001010111111111011011111110001110101011001111110101001110011100110011100100110000011010101111000001111011011110111000011100111010000011100011000000011100011111000001101011011111000110011110010000111000111011000001000000111001100110000100000101111011001000001101010011100011010000011001000000101010010111010011011000101010001001000010111010000111010111000100111101110100001100000000100000111110001001001111100110001000101011101111011111001111100001001110011110011000111110101011011111000001010100101010011011001110100110101110111101101111010000101011101010000010111110110101000011101110011010001011001111001111001100001000000010100111011000101010000010110011011100111101111111010000001100110111010111011110100010100001000101000111000010000100100000001001010011000110110010000011111100100101101111000101000111001010011010110101000000110000001111100110110010100101010001010101110111101101110010100100001001011111010000010001101000001001100001010010010000101001101100110100011100111110010101010110110101011010111001011011100110101001010001110111011110100100000001110011111110001011110101011000011110000110011001101110101001101111111110011100110100010110100010101001111000111100001000001011101001011000001010110000111000011100001111111000101101101011101010100111010111100101111101010001110001001001111000101110111100110001111010110101110011101111100000010111010000001001110100111000000011001110000100101000110111011101110001001110101101100110110101001110000010101000011110011111010100100001111111001100001000100100111001011110100010001000110100111001011111001011101000110110000100010110110100101011111110011101111011010111101001111100110001101001111001110010001100000000100101000000010001111011101001111111110011001111100101111101101001101001110010010010100100010111111101011110001001010111000001011011101001101010010000011011111100111111100110101111001110101111001001001110011100111011101101001100011011011111010110101110111000111101111101001101010011110010110110000011001101000101110011100011110000100111011110010111011101100111001110000011100011111000001000100001001000000110110110010100011110100001101100110110000110100100101011001010110001000010001010110100100101000000101000111110001000010010001000101101100001001011010010111111001001111111001011010100110111000111011010000010000000000010001010101011101111110000110110011111010000111000111111101000000110110111000101111100101110100101101001110111011001101110100101010111010010010001111110101011110110011101001101001100100111001110011110110000010111000110111100000011011001111101101001001110001011001101010110100010000000010100100001000111100010111001011101011010000111111010100111011001000101101100000111000101010111100010100000011110011010011000101110001100101100011111101101000001001110001110011011011000111011101111111111100111110110100001001011011010001010110101100100101110010100110000010101100100111011011010110010011001000111010111100010110100000000110001110101100100010010001001000111100011001101100011001011111010100001111101001100110011101110011011001000000011111110100011010111111101110001010110110000100111000010001111101111001100110111001000110110110000100101000010000011100001011000011101010111001000111001101111101000101000010110011100001000100001010010001100101001100111101101100110011101110011111010110011000100101011110011000000111110100101100110010001011101000011001001001101011000010110110100100100101010001011011011110011000101011010010110101100101010000010101101011011110111000011101111001000110000100011101001000000110111100101000010011100100011100011101011110100100 +10011100000011110100011110010011110101001001101100110100001000110011010010100110000001110110000100110111011110010000111000110000101100000111000111011000001111001011011101110001001101111101010100001001000011111010111100101001111001010000011111011100110001001010011101001011010111110011111111110001010110010001100000010101011011100011011001011000000101010001000000011000000110010110011010000011110011011001011011001111110001011100110110011110011010011011111110111001011110100111111000001100010011001011101000100001000011101010011000101000110010010010011110110010001111010001000001100111101101110111001010111101111110010000110101001010101111110001100110001000011110100110110001101100110010101100010---------010110100011001000111001011001100010011110010111110111000010101101101111011110010110101011111000010101001000110011010010000001001001101111101100111011111001000000000001100110011101110011110001001011111000111011010010101000100100011001101101110000011010100110010111111100010011100001000101101110010000100101000000100110001001111011100000101100010000010111110010101110101111001000010000001001000111011000001101111110010010011010110111100011000000100110100100000010101000111000101111000010010111110111100101011110010110101001110110010001110010010101111101001000110110001111101100110011100101110101101110110011011110000001100110100100111010101100110110100000111001001110100110111011010001111011010001011000110100111010111000111110101111010001100100010001011111011001010111111101001100011000100000010101100110101100110101010010100010011010110111010110101010110100011001001010100010111000101110101011111110001100000100001111110110101110011110111001001011110010100011000011101010111101000111101011100010111011011101110011001000101111010001111111001111110101100010111101010100001010100111000001111010001011001011000101000101110010011101011110110110001011001101001010011000001000100000100110111001001101000010011001111111001001010011111101001100011110101000111011101011111001010001101010011100100110101010110101111000110001111001010111110001000100001100010111011100100011101000001111001110111110001110001100110001010000101011111010111001011000101110000110001000111110101010011101001101111101110101001000010111000110101000001010110111001001101111111110101000111111110111001011110111011000010101011010010011111001111000000011111011000010101110000100010010010101111001011000110011111100100101110100011100001100001011010010101000100010011001000100010001001111000000100001111001111111110001101101010100101000001101001010001111110100000100101100101000111110011111101111101110001110010111100010101100010110110111000010110100000111100110101001111101000111011001110010000010101110111000001001110011110011001100001000101011101001011001100000110111110001110010000001111010001010101001000001111110111111100101001110100110100000110000000110100000000000101000101111110011101001010000110101001101110011010110100111100000110100010110011111011000010001100001100101101001000010111001001110110001110101111110011000000011101011011001001110111000001000010000001001110100110100101100110100101111001011011011000010101101011000011110001011011001101010000001000011010010101110010001011111111000000011001111001000010101111101001101010000010110100100100101000111100100111110001011000000101110100001110101101011111011001010001111100011101001001001001101000101010011111110011110110101100101001101110001010001010100111010111011101001101010101001111101000000100100110001001000010101010000000010000010000000001100001110000011010010101001010100111110110001101001010100111010101100100001100111111111010111101100100011101000101111011110110011000000110100101010000100010000101011100100100101111010001110110111010110111101100000110010101001001100100001011100000001010010011000101010101010100111001000000010010111111011101101100001010111111100111001111010000011110000110001111111101110010101100011111000101000111011110011000010011000001110010000010010011111100101010100000010010011000110011010101000000011100101000010110011111010100100100111110101001010110111101000000000010011011001111111101011010000111101001011001111010100000011111011000000100111010001001100111100000110111011010010111000111100111011010001101000101100100111101011011011100100011010010101110100100001000110010101011101100010111010100000000010000010110100100000000011001001100011010001101000101100101101101001111111000100110001100001001011010010000110001100000100111110000101 +10010000011010110011011010000011111000111111100100011001010100100110101110111111010111011001111010010100111001001101001001111100001100010111110100000101110001110111001000111001011000001000001101111101100010000110101001110100111111001100111000010010001110001010101011010010000111111100011100010111100111110010001000010001100100000011111100000010100110100010000111110111001000101111001111101101100110110100101000000001000011001011100111011101010010110010100110011100110110011111011000100100110110001100101110101000111011010001100101010101001000011011001000001110110100111100000010001000010011001101011111101100001001010000010001100101101110110110110111011100111001011100110111010111110000111011101---------101001110011001011100100000011000011000011110010001001110100101010010101001011011010010100011001010101001110100101000010111101101010010011001010110101110000010000001100101110011111001110101111010111011111111110101100011001111101000011000010001111001000110001001010101001111001000000001101100111010100100011111100111111011001000100010010001011011011110101110001010100111100111010011011000100001001011110100110010001000010101010101001011001111100011100000110111010100101100001100000011111000001000101110010101001000010110000000000111101001011000000001111101011010101010100110001011110100011110010110100011110111100001001100101001100011001010001111011101110111111110111110001101101110110100000010000110010000000010010110110100011001111000000110101111111011001111010001101111111100110000110101101110101111100011111111101000111000110010111111100011011001010000001100010010101010010011000010101100100001111010111010111100111010000010000011000010001100111011110011101001100010011010101011000000101101101110000101011101011010000101100001111110111010100101111101001010010000100011111010010010100101011100001010100111111100100000001111000010110000001111000110101011111000100100101001110111000101010111100000100110111110010000011101010001011010110101100100111001000111011101111011111110111011001010101101111010100110011000100010001011000011111101010100110011011001100111101001111100111110101110000001001001111011000110010110010100010110010001100101110101100110011011101010001001001110100000011000101010101111101010111000010111001111010101101110101000010000000100001011011101100011001101100010000110001011000110011100101110101011001111001111000111011101010010111001111110010100000001110100110011110101111101010111011011110101011011111011011101000101001001110001110001101110110010000111110110110011011010010000100110000111110110001101000001100011111100000000110101111010010011001011011111000001100101011111000110000101101010100000011000100010000000010100101100101111111100101110110011000011000001101000110001110001011011110011000111101001101111001000101011001101011010101000010101001010000111010010011100011111101101000110100001011011111010001101000011110111101011110111101001011100111000011000000011010111010011010011001011110000001011011100100110101011100101101001001101101101100110000000100000101101000110011000100011011010011111010010001111001100111101101001001101100000010101101000010111001011001110110000001010010010110100110100001101010110010000011100001010001001010111010010010011111111011010100000001111110111100010010000011011100001111111111011100011000111010110110001101011001010100000110111010010111111110011010010001001100110010111110101010010111011110101001101001000011101111000100110111100010101101001010110000010011111110001011001010111100111010010101110110100110111100111101011010001111001101001010000101001000101010000011011101100110101001010010000001100011000110011110111001010101100101110101111011010110101000111011010010110000010101001010010111001100001111001111101110100100000001111001001011001011111101000010001010101000000011110000011101000010010000101011111010010111110000110001101010100011011000001110101111101010101000101110001000110001111010011011101100111101101001110010110010110111001110100011011010001101010011111101101010111000001100110011101101111011001111110100110110100011010111011100010000111101111010011000101101110001001001101100101010101101010001110010100000101001101001010001100101000010110110110110011001100100101011001010100000100010010101101111010100110110101110111110101011100111011100010100011011000110011000101000101110011011011110000011010011000000000111111101101110011101000110110001001110111101100111011010101101101110101001110110101110101100011111001001000101 +10001010000011101010011100000100100011100111011111111110101011001100010111000100000000110001100100111011110101011100010010100111110010010110100011100010110110010110001110000100011110011011001010111110101000100111001011101001101111110110111000110000010101111001010011011111010101100111100001000010011001010110011001010100110000111000010111000110100000010110101110101100000111101011100000010111011011111111111010001100000110110100110011100111101111000000011111110111000001100111100010001100000110101000000001001011001011100011100010010101011011000101011101010001000100110010110101010001000110101110101010001001010110001011101101011010111110100011000000100100010010000000001000101111001100111101101---------111010100101001111000000010010111000011000111001000001100011011001000110001010110101100001101001001010101101010000111011010110111100101010001101101110010101000100011000001111001000100000010011100000111101100100010001111100011011001110001000111110110110110101010111011111000000101101001111001100000001000101110000110111100001101000001100101111011110011110001100110001100010001000110011101111011001011000111010011111110100101101100000001011010011110111111110111010001010000100100110000111101000101001110110101001000000001000011101001100001100100001011111010000000101110010000101111101000100111111000010101111111111010010000111010110011110000000100011110100111010000000001111100101100010011100000010000100000011111101111010110011111000110110111001101101111001000000000111111000100011011111100101001111111110000111011010001011111010000110001111100111101000100010011111100010111001011101011101101000101111011110100010100000001110111110110110111000011011000011111011111101110110101011000011101111000101100110100011101110000110010011010111110001111100111101110010001011001000011011111110010011111111111100110110111000010111011010101111011110100000101111110000110011101110011011101111100011011100000001110111011101100000001111011110100010110000111010001111101010001000011111011010111000000101000000000111000000100011100011101010000111000011010000101100100001101011100011010110101000110101100101100001010110011010000101100110110001010001000100011110010011101001101010011101010011011000010100000110011110010100011001000100101111000010000110100111011111011110100000110110000100010000100110000001111101010011011101001010001000010011110011001001100010110101001000111100011000100001001101001001111101010100011011010111110000100100101101010001101000001001111011000001000000100101101010100000011011101111110000011010101010010111000001110101101110110100110010000100100100001010001001011110100101100010001010010011011111111110000110010000001111100101000111111001000110000011000011110000101000001110000001111011011001101101100101001110100011001011010011011101011101111000011100111110010101010101101001000000011110111110001001100000000101000000001111100101101001001110001110010111011101101101001010100101111100011100001100110001010100100111110100110010001100101101001111011101100100011101100100101011010011011000000101111111010111001011101010011110110110101111100110111010000101110110111001011100101110001101010100101111110000100110100011001011111110001001111000101011010110011000001101110110000000001110110011001111011011101011110010001101010101110000011110100010000011100111010101011001101010000100100111110010100000110100000001001011000110101000001100101100100001110011110111000101111100101111001110110011101001010110110010110010011111001100000110000011110011111111001010110001111000001111001000111010011000000101001000011011001010011010011110000011111111000100110111110000001101100111001100100101011000101011000001010111000010111100111010101010011101010100010011100100111011110111101101000001100111010000110010110001011000101000010110000100101010101011010100100100101111110101001101010101110101100100101100001101101000001101110001101110010101100010100000110100110111101101010100000110110001000000011011111111010101110000000011110100011111011110010100000111011010100001010011110000010000101010111101100011000010101011101011000011100000011100100011101111000100010100101111111110110111100000000011101111111000101101111101001000000010100010000100001111011001111101111010011111010011100010110111010010001110100111101001011011100000001001111000111011010001100010100110010111010110110100010111110101011011000000011011111101010101101110100100101001001110111110000111110111101010000010101100111011000011011000110110011100 +01100110001111011000111000010111111100001100111101110001101001000000111111001001111100100000011011110110101011110111100111011001011100101101100010100010111101000000100000011100101100000000100111100111101000101100010001001101101111100011000110111111000001001000011101110101100111010101110100011010010101001000100011000100001011100111011110001111111110101101011101101101110000000010010010001111000101111011101100101101101001110000111001001111001101110110101101100011111011001110001110000010111011001101010100011101011001010100100101101100010010001010101001010100000101110010000111100101110000101111111011010001000100100001110110011111100110111000000101110000111001111100010011011111101111110101001---------110101100100111000111110111110011111110011000101010111110000100010011011101011010000110011010011111110010001101011101100001000000010000010111001001100110110111110000011001100001110010110110011011001101110011100111000011001011100010001100011000001011100000111011100110000010010100010011011110000100010101001000010100101010110000110110000011010011101000011101010101010000010111111101010010101101010011101000000000111010101110111101001001101110111011001010000001011000101111100100100101111101110000000110110010001010000110010000000101100101111001101100110111011010110110101101100001101001010001100010010011101010111000111110100111001110110000111111011011000010110011001101000001010010110110010111110100110011101010110000110001001100010100010011110111011110010100000001110001000001011010010101101110100010101100000001100100110110010110110101101011001111001100011110000011011100000101011000000011000011101000000001010001001011010101111000010100101111000011011110111010001001100000010110010110001010101110011111101000000001100101001100000011000011001110101000101100101010100001111110101011111100000001100001100011100010111000101110010001011010111011100011111010010110010110010011001110101101001001000100010010010011101100100100111110101010100001110011000001000001010011000101101110000101100110010101100010000001001100001110000110000001001100101100000111100110010011010101001000011100100100000001001100101011101000111110101100110101000110111100101101011001011000001110101000111100100101110001001110110011100000101111010110111001011000111110001000110101100001101110100111101010010100100110110000111010110101000111011010101001011011111101101000100010100110000110001111001010010101000100101111000001111100111001100100111011101010101001110011100111101000010001000100100100001001100000001100011101111000000001111101110011111000010101110111111100010011111111010011010011111111000100011011101100111111111101001101000011100011101011100100001110111101110110001110111100010111001000101111001011100100000010001101110010111100011000111101101000100001011001011100010110000001000001101000000101001011000111110100101100001111010010000001100000001101010011000001111100001001001111000011011011100101111001001011111100011110000111011001010110111100101000111110010011011111100010100001101100110010111111010110111101010001101001100010001001001110110111011001010100011000011100001101100111001001111010101011011011101101000110110010011000100011100111001100111000010111010000000111111010100100000111100111100011000110101000110111001010001101111111001111111110001110101000000010101101111010001111101110101111110101111100111001100111100100100000101001010000010100000100101101010111010000011110110010001011011001000101010001101010011111110010001010101110011011001110011111110111101000110100111101011100011011110101011100011011001101001111110101001001010111110100011001011001011011101100110001101111000000011111000101010101100011010100010111110100001110101110000101101010110001001010011011010001100111011110100110011001010000100101101010101011001011011100010101101110100110000010000110110110110000001100000110001111000000000101001001111001010001000100011011100000100111110111011000100011101100011001100110001001111010001111110001100100101101100111111001000111100001100000101010000111111101000010110110011100111111101110011011001101000101001010010111001011010001010111101010111001000101010001000011001100100101011010000000111001001101110011111001110001001000001001101011011100100011110100110100111001001110110110111111000010010010001000001010000000010110100110000001001100000100100110110011001010101000101100101010101101010001010010101001000010011100000011000011101001110101000001001010111111010011111011001100110011111101000110000 +01111011110100110001011001101000111001101010010000110011111010010010011110011111001011111000110100101001010011110110001100010100000110000011111110010001010110100011101100110000101001110101001000101001100111111100011011001001011101001010010111010101001000001010011110100010010011101111110111001101110100111001010011101010110101100001010010010100000110100001111100110110010000111100110111001000010111011001001000001111011110000101101001011101010100010010001101000110100101101001010110010111001101110010111110011111111001000100111010001001010010101001001000100100010001011110100000011000011100001111011100101010001010000000110011000011100001011010111000111110001000000110001101100000111010100100111---------111001111000001101100000100111000110111100100010110010110101000000010100001000001000100100010000011011000011100000000000000101100101001001101000110011111010010000111111011001100100001111011110010011001000001101001000000101110011100100101111010100001001101111110111110100000001100001000010011011110001011000010100100001111001011010010110110011011101110000110010111010001011011111011010100111010010110001000100001010110100010111001111001111000100100101000101010010001011111110011110100101110111000110100101110000001011100111001111101010110000011011010010000111010000001001110011110000101010111111100001010000010010111011111101001001000100011001100100011101100000100100100000011011001000110100111001010110110101101100100011100110111101111111111010000000110011001101101101111000100011001110101100111000111000111011101101001011101011111000110000000110110101111001010111010011000111001000110000100011011111010110000000000100110000100111101011000010010010011101011111000110000101100100010111100010000100011101000011011100001001001010110000110110100010101111101101110001111000111100000000101000010101100101011010010001100110110110000111011100000010101011110111100110111100011011110000010111001101011101101010001101010010010111001000110100010011111111111000111101111010101010011000111100011100110011100101010010101111100000001011011100011111110001000110110000110110110100000101010000001100100011001001110011110000001110011001011011000011010110001101100000101011010101110110011010000111000100011101001010011010100111011100000000101101101100010000000110100110101101100001001011101110111101111010001111010011111000000111100000010010010000000111100111101010000110100100100001100101010011111000011000110000110101101110100011100011001110101001011101111111100101101000010001010100010110110110110101010011010100011000101011110111111000000111010010000110001111011001011010010001010001111010011010001001000101101000000000111111100011111010110011000000100111111011010110010101010110101111001010110100011111001000101000011101111100001111001000011001000001111011100010011001100101011011111000000111111100100110111010100110000010100010011010101000001000110001100011101010011010011100000011000001010100010000101111111101110010010001110011011111000100111001010000001111100011010000100101111000010000111110110010110000011101001001011111011011001011001000101010100010111010111011101001011110100011000011111010101110101001111101001000000111111001100000111011101110111100110100011101010100111110010101000101000011011101110110001001111011100010101110001101111100010010101000010011000000111000100101101101010111110010001100000100101110011101000000001111011011100011111000010000000101100000110000011000011001101110110111111110111001011000110100000100100000111001111101001101010110000100001101000001100110100000100100111100110101000110100000011010001100101000000111110001101111111011111110100110111000010110110111010111010111110001000010110011110110101010101011111010101111100111110100000110001000111110000011101100001001101101110011110100111100101000110011011011000001110110110101000101010101111110000011111001101100011011101011010110010010110110010111100111001110111100111110101111101000101100001000010001100010010100101001100010100011000001110000001111010000100010001110001110000011000111000001110100100010010000010101111111010100000010100101011000111011100010010001110101010110111111011100100110011001110010001100001101110010101011100001011010110000100101110000100110101000010011111000110000100010101000111000100001011011001101101011001000011000001110101110011001111000010010100010100111000011100101110010010010000100010100000111000100010010000111100111011100001001010010110110010100110110001001010101000100101110101010010100 +11101000010100110111001010001000111000101000111000010000100001110010000000111100011111001110000110110100001000000111010110000110000001110111100011010010100010110001111000010001001001000100010000101101011000000111101010101100011111011101011011110101100111101110010100001101110111110111011101001011011101111010000001101000101111100100101000110010011011110110010011110011001110000000111001010100110110011100001000101101111011110011111110111111000101100000000010011011011010000110110011101010000100001111001110000011101000010111010111111101010110100101010001001100101010000111001010001101010000101011100100001000011010011000010000000011010101010101000000101100000010000100110010010010010010101011111---------111100010000010101110111010011100011000000101000010010000000010000010101000001010010100010101001100001000011100011000010011110010101011010010011101100010011111010000001110010000100111101001011111100001100100110011111100011011001100001100011101111111001100110101000110101101010000101110001100001111100100001001011001111101110111100001111010010101011001101101100110101111110110000010011011000101001000101101111011110100111001010101001101110111101110100111001101000010100100011101101100011111100110001111100101111101011111001110110101110000100110010100001000001001101101000111011101011000011001001100101010011100100111001100100111010110100111100001100101110100000000110101001100011000101111000001111000110001100000000100110110010000111000110010010000010001101101010111010000011111101000010001100110110001011011000000100111010110111111111111011111111110000111001010101000000110000100100111001001011100110110100001110011101011000110011101110000000101011100000011111000011111111100110110100110111011001001101101000101100110001101101101111000100011011100110100101110001100010011100111011010000011000110110011111101011000110010101010110111001110000100011101010100110010110100011111110110101001110101000010010000001001110100110010100100001001110111111111010000010101010010100110000101100010111111110101011111100111011111010100011110011011111110100000010011100100110111010110101011111010101101011100011110101110110110111101011001111111101111000110100101000111111101001110001110000110011101101100010010110100101011011101100101110100111001010111000010101010011000100100010010110001010100101011101010001111000101000111110010101100011110110100110010101011110001110100110101010011010110100001110100001000011100011101110100000000110001110111101111001110111110100011000100000010001000110011001000010110111111011010001011011100101101100110011101111010101100100000001000010111000011111100010011001001010101101111011101100010110111010010000001011111100011110010111011010001011110111111100100011110001000100110111010000001000011100010111010011110110110011101100000000011011011010001111111101101010001010000110100000001011100110000100001001100010011001011011011111000010001100001001001100011100001111011000101010111001111111000100110110111111010111011101010000010010101001101001101111000101101100010011011101011100000000001100010100101100000001001111001100010001011000010011101100101001010101011011000101000100111111000111100011110111001110111011000100001000001100000111111110100010100011001001011010001100001100111010101011110101001111110110111011011100010110011000101100001011111011101100111001011110101101110111001111111000110000101001110001100001101110110011111010101010110010111101010111100011010011001001001100100111111101001111000000011000001010001111000011111001001111100111110110110000111010011000011001011111011011000000010010100000011101011101010011001101001010110000000111101101010100101001010010000110110100010000000000101111001111001011010111100100100110000010111001000101000000001001101001111001101101001000100011101010000001001100101011011100110010011001000101100111100100000010111111010011011011011011100110011110001111001011111000100001000010101000010101001100100001011101000011000001101101101011011110000101001101101111011000100001110100101110010110110110111010000110101101110011100101111000011101011011010011100001100011000101111001101011011100000000101001010111101101101100100110011000001101010110011100101011100101111110100000111010101001010100001100111100011000100000011011011001111101100101111100001111001111100011011110100011011101001110001010000101001110101101110100101101011101110010100000111010010010110110111110001000010010000010100001111110100001010010011110010101110111110110110010010111 +11001110001001001110111001010110000101001111011101010101011101011010100010001110110010001011110001000011101111101101101110100000100001001101110011110111100100101111001011001110111011111000100011000111010010110000000011100101110011000011100110100010110010001001110000000010011100000111110011111110011100100100110011000101000100010000111110100000110101110011111100000000011001001100101001100010011101001010101100011011000001111001111010101010100010110010000010001111010000010101000010010000110101101101010110101110001011001011011001101011100001000001101101000000010010011010000010100110011111111001001111010101100100101010011111100000110011101010010111010011111101011010011011001011011001010000101---------110010101000001010100110111001110001000111011101111000111110001000011010011010011011010000000101111101110110110101111010001011011100011100010100110010100100010100010100011100110100111010011101001100110001010011001101001010101100001001111000111111001011110110101000110001110001111010000101001011000111001000101100011101011101100000000000100111110010101111100011111110000101101100110001000010110101000011100001101010110001110101110010000110111100010010110111111100100000110010001001000000100011001010111011000010000010000111010100011001101001111111101011111100110111100100101111010001010100111001010111110111101101110111010100000100010000010110010110101010111011111001110010001010111100000011100010101001001010011110011011100001111100100100011111000001000000001001100111011101011101100001110100001111000000011111100011110100110011100000101111001101100101000011001000110111011011000001101010000110010110100110011011010000111010101111011110100010001101101000110010110010100101111111101111101011011011111110101111110101011100110101011010101011110101100001001110001101100111001011100000010101111001001101101111101100000010111111011000111111011101001101011110100110000001101011000011000011111010100100110111101010101101111111110100010100100011010000001101100000100011000100010111110111010110101000011111010101000001101001001100010010110100001000010110110100010011000011000011001000111100000010100000001100100110101010111001011111000110000000101100100010001011001100010100101000110110111110110000001111110010110110010001010110001101010111111001111110110010011001001010000100110010110110100110101101010111110011000001100010010100010001110100101100111100000001110111101111011110101100101001010110111000110010000110110100001111010010011011011100000110111011000001010010111001111110011110011111010111110011110101000100000110100111101010000010110110110010001111111010110011100110010011000011110001011100100001000101100101111100101100001100011010110110111001010001110000010111010101100110000100000111001110010000111110101110110001010110110110110011000010111011000011010001010100010111100111010011111101110101101010111000101100000010010111101001110110000101001101001111110111101000001111011011111100010110010111000011111000011110111010111100110101010101101000100111100110111111111001000111100000111001101001010001011110010010111101001110000100001011111000001000010000000100001100100010000110011010010111010000101000110111000101111010110001100001011100100010101100000100010101101000101101100111101011110110110010001111000101010011010001010110111011101100000110111100001110110110101100100011101111101011011011100100101010110111000111110001001100011101011110101100101100001100011101100010011101000110111101011101110101010001000010111100111111001110001011101011100110010111101011111110101010011110011000110001111100001000111001001001010110011011111001000111010111001111000000111110000111111011110110101100000011000010110111100100110011110011001001110010111000010010110000001001101001101001000011011010011011010010000101001001111011000100110111011101001001110111000000110110100101101000011100100111000111000011010001000011101100001101001101001101001000111011111111000101000110010001000001111110010100001111001001010011111100100111000011011000110001010000011100111100100010001101010001011110000011011101010011010101000100001000011111001101100101000001000110001010001001001110110010001011011011101100111100011010101101111001110100010011110100001111001001100111110111100010011010011011000101001010010001000010111011110110001111101000100010100010000111010011111111100010011000011101011111000011010100001111011110101101001001111101011010000011011001100000000001011010110001001001011111111001111001110000000100001100010110 +ls176msgs +01110101010010001011111110010011110110010001100000100101110011111011101110110011111000100101010101001010001101110101110111011001000100011000010000010011101001110010111011111001100000111001000001011001100100001110001110010111000100110001111011001000110100001110101110001000010010111100011010100001010101100010100111010011001001010001111110100100000000101011000111101010110011111000101001001110000111001111110010000010000000111011000111100110011001111101101011000100001111110101111000001010100000000111111110010010110001011111111010001011000110101111011110110011101010011010011111001010111010100110111101111101000100100001110000011100000001110111101011010011101010110111000101100010001010100111110000011011101101111001000100011110100001001011001010000010010111110010100011011111010011000110110100111000101110001001101010011100101010001111011010101111110111010111111000011101110111100000100000010001011001110001101000001001100110011011111010110100000101110010011001010111000101110000010011110101110111011111000001010000111111111100011100000011010011011000111010001000101001101000101001100110100001000101101110111110001011011111010100110001110011111111000101000101111011011010011111010100100100010110100000000011001110111111001010011000010000110000100111000111011001101100001001110111000100000010111100101111111110000100111100010001100111100000001011000110100010110001010000101000000101000101011111010011010100101110111010110100101101100010000101101000111110101100010111100001001110000111111110010000000110001110010101110010010010011001001011101001011110010011000010100101110100001000100100011110100111110101101110010000100110110011110100110010011101111010100110100010011010111011000000000111000000111010010000001101110000111011001000110011011011001111111--------- +00110000000011100111000010010101111000111101000000101111100011111001111001000100110001110110101111110001000001110010000111000110010101100110010000011000110011111101100111110010111100111000000101011010011101010110101000000001001010000110111101011001010001011111010101111011101011100000110100110000011010101100010101000110001010100101101010011011010001110000101111011000000010110001011001111001100001110010001001101001001011010110010010101101010000110100001110001001111111110001000011010100011000110000010111110001000000110101011101101011000100101011010111010100101000110100111111101001110001010110000001110010100110110011001111110101111100101111101001101010101110000110010111001111010000011010110111011011111100101100110111100111010111010001111001100000010010001000111111000011101110101010011100010010010011110010101000011100000001010111001011100110000110011001101011111011101111011101110010000010001100110000101111001111100111011010011100111011111101000001010010001111001111110110010110011010010011100011010001110001011010000010101101110011110101100111010010010000000011011101111001010001100010100101001110111110011000111000101100001000111110111100010010101000000010101000001101001100100100101011110100011101010110011100000000010110011011000011100101000010100001011110101001111111111100010110011100000000111101110111110010001110011100010101110010011111110001100100101110100010111101111001000111000010001111101000010100111010101000010101101010100101101111110010101001101100010001100101101110100000100100010011011001010101100010101110001101100110010100001001101100110011110101010100010000110110101011101101111110100001000101001001010100011000000010000111000001010100101000001100110100110110010111110010000001100001100100010000001110100100010011010011110--------- +01000110011111100100011111100001100001101110110001101100010100010011000001011000110100110000100101111000011011111110100101010001000110100100000000100111110001000100110100100010000001011100100111001100110011101010110110100110010111011110010101000010010000101011100010101100111110001010011100010100111010010001001001000011101111000010010001111100010110001100001001111101101100011010010101111000111010010000110010101011110111101001111101001100011011110011000101101101000101110011101100100111010000010101011101101110110011001111101001101000011100100010101011001001101001000111011001000100111110001100011110011100011001101110101000101001011010010000001010110001000011110000010100101010000011001010111110000101100011111101010010101000101101101111001000111101101000100111001011110100100101000110101001011110100001000110011100001011100100100010111111010011010100101111001010000011101000010101111110001100111110011010010110000011001100101110111010001001100101111000001111101000001000111101111001010101100111010010011010011101011010100010110110100100010111110100000101110100011001001101110000110011001100111010101110100110110101101010110111110100000001010001011001001001010010010110001100000101000101101100110110000110101010010010011101100111001100110001001110010001101010010000111100000100010110000001110100010011101011010000100110010110101111101111100000111001100111010100001101011110110011000101101100010001101101101111000001110110000111010111111001111110011011011111011101110111000001010111000100000111011000110011100100010010011011001100000110101010010011101100000000000011101111000001000010100101011100101101111100010010010011010111001000110011000111010110010000100111010101110010001100000111111101010001110100100101001000001101110101111110000000011001010--------- +01110000100101001001011000100111010000100101100110110001110101001000111001000001110110010001001010010001011101000000110100100011011100010100110101110100101011100100111110110100111101010110010001100001101111101101001010011010110100001001110111111001100110010111010001000001000011110111010000010001110001001001010111100010111011110010010010010100011101101100111001100001110110110011111100110100110011100110101111101000000110011111110101000110111000111011100011000010101110110111101111011110001111111001101001010111101000010001011110001101100010101101010010111100011101000110000100010110001100100000101101111100111001101111110110110111101111111110100000101001000100000110001100110011011111001111001100101111011110111001111111111010100010000100101001000000101101111110110101111101110101101011100100010110000110101011111111011100011001001011011010111110101001001010010101000110010001001010000011111100001111011100010110001110101010101000101001100010100000101111110101010011000110000010010011011001100100001000110111010000000011100010110000010100001100100100000101010010111101011000101110010001000100111000001110110001110111101000110101000001011100011010000000010011011010000000111010101011100000110000010100110010101001011100100001100111110111100001111101101011010100101011101101000100010110000110101111111100000010011011110000010010111110000001011100010011101001111011011001010011111000100000001010010100101100101000001101101100001010000100111000000110011000010001001010110100000010100111101111110101011001101110110010100000101111111001111110110010011110000110010100100100101100100111110110010000101001110011110101000101010111101100001010111100111011101101001110101111110101001000110101001111010111010010111011110011101010010000011011011100101001001100011--------- +10011001101001010001001010000010100111101111100010110100101010110110010101010110101011110111010110001011010111110000110000101110010111110000001110111011010011110100110011111001111010100000000001110011101100000001011000110000100111011011001010010000111100011001000101000000111110000011111111100111110001011010000100100101011011110011111000110110010010101011001110101100101000101101000101000111101000001111101001010011100011110001011000010001001011001000110010101110101000011100101101010100010101011011101001100011011000011000001100101100110010100110000110000010111010010110001101100001111001011101001000011011110110001010010111110011100101111011010001100011111111011110001010011111100111010101000110100100000111010010000100100001101111001001111110011110111101011000110010100111100000110101110111000101001111010101101110001101111100111010001001010101010010111101001011000001000110100001101101001000101101010011000110110110001001010111110000011000001101000111011010010101011111011010001101111100000111100110010000100000100110000010100101101011110010000111101011101010111111011110100111110010100111001000011100100000110011011011010001010101101101010000001010000101001100011000110000001001111011010011101110101001010101111111110010000001110110010000110110011011111101010000110000001111110110001000101101101111000111011010011000001111110101010101100100110011000111001111110000111111000010001111111010100001000010110000101101101001101001000000011011010111101101101110011101100100100001110100101001010101111000001000110101001010010101010111111000111011001001010100111111011000111100000111001010101010110010100101011111110100101111010001110010000001110101001110000101110001010101110111110110101100010110110010101010001010110100011100101101100100001001001010110--------- +10011101101110000100001000010100000000001100110000110010111001110001000000000101010010111001011000010110110000011101101010001001011001110100010010010011011010100111011001001011001100010110001001010110101011001011110111110101011110110110111100000011001110011010100011111011001111101000010001100000110010000111001000110001110111000101010001100011101111010010101011001011001010110111001101100100111101101100100011000110111101111010010011000011101110110111010011100111110010001011100000111111001000011000000111011010111101001000000000111011010010001000000000000100100010011100101110111100100001101010010101010110110101101101111101000010011110000001001011001111011000000001110100110101100000000100100100000101011000110011110101101110110001000100101011101110001111111111011010011101110011111101110111101011101010001111100000010000000110001011100010110000001000010010001001100101110000111101011001010011011000001001100000111010100100110111000010011000011100101010000010010010010101111011011011000101010001000101110110110101011100000100110001000101111010011010101111001011001010111010000110000111001011110101111101111110101011011100000111110100011000101101110000000111000011010111100100011011100111001101101110000101000111111011111010101011111111100010001001111011010101001110111100011100101110001000100011000100100100101000000011101010001101010001110000111101010010001100001000110100001010000111110001111010010101001101101110110001011100001111110010010000101011011000101111110010010110011100000011100010000110001010011111111101011100011110111100001110101000011110100000110101100110101001110000111000001100111101100001000001000110101001000001101110000110110010111001001111011101101100011101101000010010110000100100000111111001000011101111010111011100000101010--------- +10010111101011011111010010011010010101111100111001111111011011110011100000000000011100000010101000100101101001011111110100100100010010001001001001101101111010101001010010100001011110001001100110011010001110101111001000001101111110100100011110011111011001111001001010000111000100000110111100010010101111000110101010001000001111000100011111110011011110110111110000110101011101001001011011010010110101101110001011010000110011001011100011001001011001000011001011101000110110101111000101110101100010111011000110110100000101111111100011011001100110101101011101100010010000100001111011100110100001001100000011000011111011000110010101111001100001000001011101110110010111000101111100000100110100111100000110011110010111010010111101000011111110010000110111011001110000000111101011100001100110110010001100100000100010001111110101100010100101010010100111101110100100110101001111001010000111010100110111111011100000111110001001101111010000010100100001111011001101011101011110110100011110110100110000110010000000010000110111100100111000010010011011100000110101011100111110100011000010001110000111111011101010111110001101111100001011110000010010011101101100000001101100001011111101111111111101000100001111011011001011010000101001101000010101000000100010000011101001100111101110001111010000011100100001111011000001110111100001000011101000110111011101110000001001100001001110110001000010001111000001001111111110110010111111111011101101100000100001001001100010001001111010111111101000011101100101110110111000011001000111110110110000001100111110110011110100000010111000101000000100000000100111111010000011101100010101011001100000000100001011011010101010011100001010101011011010010101010110110001100000100010101110100010010101110111110111100110010101110100010000001100000--------- +01101011110000111000111111100010001000111110101010000110100001111000100111101100100010010110111110100010011101110011110010011110100011110101000101011000011111110100000111001111001000011101011111110010111111000011110111101110011001101111110011010110001101101100110110000011011101101100110110101100000100000111000101111010101100100010100111110110010111000111100101110100000101011100000011110000110000000111110101000111101011110000100100000100011001110001011000001101010111010101000100011110000110001010010011110000010101111011010000011010000000100011110001001001000100110100111101001011100011111010011011010100111100111110101011111010010110000000100100000000110111111110011100110011010110000111110100100100000110111000001110000001000110100110000110000001001010111101001100010000100101100100001101000000000000100110111100111101000001001111001001101101111000111110011111100010100001110100001100110000010010000000001000011010011100111001011101111110010100101111001001111000111011001101101011111100110100000000101001001111110000000001000001101110110101011111100100110010101011000010000110110010100100000111011110000100001101101111100000100010001000000110100100011000010111111100110000110011111001110010011010010100101011001100010000010101111001100000111101011011011001001111101001000111111110111111010100100110001110101010101001111001011000000000100100000011011101000100101111111100011111000001100000000001010010011001111101111011101010010110000011010111101100110011001100101000101100110100010100110011101011000011011010011111011000001011111001100011111100001001100100010001110111110110011101001110000000011110111000110110011101101000001000110011010010111101011111000010110000010011101110101010000101011010010101011111101001101110110100100111111011011101010--------- +11000100011001001011110110110010101001100100111110111111111010110010111010010100100010011011110110010011101000001000010100010100110000101110000001000101000101000000110110000101110010101110110101110111111011001111001101100011010101111011011010110010110110110100001111010000011100101001011101101101011010000010011101100011010000001101111110100111010000100100111010100011101001001010000101010000111001010100010000010110000001111101011110010001110100000010011011110110110001111010011111111101111001100100001100001111010110011001000110001001010100001000111101001101001001110011001001110001101011110010010000110010001100011001110001000111011010000010101100111000101000100010101111100110011011011011101001111101100000101011011111011001010101001100011111100101110100110000001100000011111011110111111111001000111000110100110000011100011111011000100010010111110110011100100011101011001011100100000011011100101100011101110000110001111101010101001101011010111101100110000010010111001001010101111100001011000111101011001011100001110101111101000001111110011100100110011001001110110100001000110001011100101001100100100100110010001001101011111001001111110100000000010001011010110000110000001110010001100100001111100100100011001011111101100001011001101101000100110000010001001100100001101110101010100111110010100001000101010101001011010001010110100110001001111001000010111001100111000110001100100011000010111000111001001011110010100101101001010101100110001010111111000110001110100011111111101001111000111111100001101111110111010000101111000000010011101011111000111101110100101010100001011100111000001000011001000000010100100011110110111010001010110110101101000110100111000011010000010001100110101011001101011000101010010010100111110010100111101110111011010000110100010--------- +11111010100100000111001110110110011101011011111000111001110000000100100011000010001110101100100100001101001100101111111000000000100000111101110100111100000000100010100101110000010000011000101100001010101000110100000010101110110001001010110010001111100001010110100000010101101010101010011000000011000011110010010101110101010101100000010000000001100000100000001111011010010100001000000011111111101111101111000110111011011110110111110110001001010100111011011110011110110101001001101111000110110101001011101100100010110111010111001011100011001010111000001000001110100000111111101011100100101100000101110011001000001100011010000110011010111111010111111001111000001010101010100010011101110010101010100111101100101011111101001100011001110111011001001011110011100101101100100000001100001010111001011110111001001110000111110011111111011111011010111000111001100111010011010100101010110010101010011110111001111000111101100011000100010101011001010100110111100111110000111011100010011111001110110110111111110011100110010000111100000111101000101110011000101110011011111000110110101011011100100000001000001001011101111001100010011111110110001000011100111011001101000000110010110011111100100001010011001110100101010101001110101001010101011010001000011010010001100101000001111100100101100101001111000000010111011110000110110111110010011001100010000010110011111010010011010000010001011011101110111000110101101100010010100110100101111110001110001011011000110010100101111000100111011011000001111001000000100111010001011000010010101100010101101111101001110110110111100100010101111110100100010111010111010110010011110001010100000100010000011010000001001100100010011010101001100000000101010001110011100100111110000110110100101010110100010100101110110111010100101001100010000--------- +ls176cwds +1011000111101010110011111000101001001110000111001111110010000010000000111011000111100110011001111101101011000100001111110101111000001010100000000111111110010010110001011111111010001011000110101111011110110011101010011010011111001010111010100110111101111101000100100001110000011100000001110111101011010011101010110111000101100010001010100111110000011011101101111001000100011110100001001011001010000010010111110010100011011111010011000110110100111000101110001001101010011100101010001111011010101111110111010111111000011101110111100000100000010001011001110001101000001001100110011011111010110100000101110010011001010111000101110000010011110101110111011111000001010000111111111100011100000011010011011000111010001000101001101000101001100110100001000101101110111110001011011111010100110001110011111111000101000101111011011010011111010100100100010110100000000011001110111111001010011000010000110000100111000111011001101100001001110111000100000010111100101111111110000100111100010001100111100000001011000110100010110001010000101000000101000101011111010011010100101110111010110100101101100010000101101000111110101100010111100001001110000111111110010000000110001110010101110010010010011001001011101001011110010011000010100101110100001000100100011110100111110101101110010000100110110011110100110010011101111010100110100010011010111011000000000111000000111010010000001101110000111011001000110011011011001111111---------101111110000001001100101000010100101001111100001000101101101010010001100010000010001110011100010011010000100010100010000000110001010000001010101111011000100101101000000011111111000000111110100101100100010101110111101111100010010000110000011011010101101110001011000110011110101110001110100111000111111110100111111110100011010101101100110001000101010111000111110100001101000100110100111010011011111000110000001010110111111110001001111101101100010000110001001110100000101011001010111000000010000001100001001000101111000011101011000101010011100000110101111100111011011111011011111110100011010101010110010011111101001101110010011001000100100100001110100111001000010000010010001111010100011110010110110110110010001010110101111001100100011001000110111100110001001010100111000111111000110001110000011110101000111110110011110011010010010100101100101000001110110001101001101001000101110110000110010101011010110110011010111111000110111000111001000100111100000010101011011101001101000001111010101000101000010110101001010111001010011100000100100011110001111001011010000001010001000001001011010001101001111111101110001011111100100001000101011001101110011111111010100001011110011001001010010011010110001010011110111011111111110010001011101010000100011101001011011110011010000001101001000111000001111100010001011100111111100010110111101001110110101001000110101011100110111000110111110100011000111110010000111111000001111111011000110100011001000001011111110001111011000111110101000110011001001110001110110100110001011011000001100010011110101111000000001110101111011100010110001101101010001110111100011101000100111110011111010000000011111011001010011101100111000101101100100100100010111001001010100110101000000000001101101111010010010001100011011100111010111011011110100100001010001111001100011001111111111010110000010110000110010010100000111010111111011000010100000000101000101010000101110110010010101001011101101001000100101110111000010111111011110110100100110000010011111001010110100111010110010011000111111000100101010100101010111000101011011001111010001011100011001110011001100010000111000110101111001011101000110110111110010100100000101000111110011011000101001111111010101010000010100001100000100001100110010111110011011101000001101010011011001101010110011010110100101110001001010110111101100001101010010001001110010000100101000001000010100100101111100110100000010010001001000001110110010100001001101111101100010100101011101001000111110000010100000011010111110000011110110110111000110011000110011100111111011101111111001101111010110000101010011100100011111011011101111111101001111010000100100000110001110111110100101000011110000110100010001011101100000110110111000111011000001011001110000010001000100011110111000001101101100100011100100110001000110110010111111010111110001011011010110111001010011101110101000011111101000101010101000101000110010101111100110010100001001010111101100011100110011000111110011101100110010011101110011100111000011010100100000110101001101110010101101000100010111000111111111011000011001101110110110100100110001110000001000110000100000010011101010101010010001000101111000111000000110001111011010010100100110111111011000011011010001110010000101110111100101101101010011010001010101001000001000101001110000000111010101001010010001111001110010111100010001010000110011011111100000001000111100111010001000000100101011011101100010100111010010011011110110011101000000111001111011111111001111010101001110000100111111100101001111011001100111110001011101011100111000000110010110110110110010011010111110110001010001011000001011011000000100011110011100000000000011011100101110000010011111111001000100000000100111001100101111011100011000100101000100001101010110001110010110111000010100110100100110100011110100010110010000110010110111110100111000100100000000001010110010011001100000000001111111101010011111011000110100100001111100100011001110000011101111101111110101111100000100100110110110000000010000101000110000001010010101001110100100010010100011000100110010100101011011011001100110011100010110110101101110100011101100010000001001111100101101011110100000101100110000010101000100110000010000100010111100100100110100000000000111000110001001110110010001011101010011101101100011111100100101101001000100111101101100000001000110111101000110110111111110011110000100110100100110000100001101101101010100010010000101100110110100111111000000111111101010001001100101101011101000110110100001000101001100011011110100110000100101010101100000011110111001010101011100100001110110100111100001101000111110100100000100110101100010011011101110100010000100110111011110110111111000001111111110101110000011000011010010011110101110010100101011111111000111001010111001101110101101110101000001000111100100000011110011000011111001000111110011101000000001111111001101111000000111100011010011000011101010011111111010011110001010011011101101101001000101111111111100001011001100011101101100101011000111000001011100100000100000000100110011000110111110001000011010001011110111010001101011010111001011111010011111001111110001011111010011111000110111101000100001111011000010111000010000111101010101111011101010001100101100111001100010100100011011001000000101011001010101111101101010001100100000111110000010000010011001011111111011011010100111101011001110111000100111100100110000000001010111101100010111001001110000100001111101100001111110001111110010001101100010110100000010110110000001010000101010100111101001011111101010100011011101001110011001011000010101110101101110110010110000001111111000100100001110010101111111111000111111111011100111100110001011100111111111011000101000101101110101010100001011110110101110101100111110100110100011111101001011011100011100101001010011011110101101011110011110110111100110100010101101010111110111100001111001100111111111000001110010100000011001001110111101111011010101100100000011101111000000101100011011100100100010101000110001011010010011010111110001000101011001100101111101111011111001100110111100010111101100100101110100111011100100111100110100100100011010000110010101001111000111110110011000100011100011011011100000001101001100010110110001011110010001010011001101101010011101001010110000011011101010001101000011011100001011011000100011001011011100001101100001001001100000110001101101010000111011100010101000111101011011100101110111010010010111111000010111010101111110101100001111000111001100001011111000000101110011010110111000000001001000001101111000111111000110001100100001000111010000100011110101000110001100001010111101000101010010110101010001111001001010100101101100011101000110010000010011100111111000100000101011111010111001111000011010100011110001010001000011111110000101101100011001100001100101010101001110101011011010010110111010001110100101101010011101110000101100111100111000101110000100101101011110111001011101101110101000111010111101011011000001001100011011010110000110100100000001010110111011111011000000001001111111010110101000001101100111100010010110011001010101100000100001100110100010110000010001101001100000110001111101111010000110101101010000100101000101011111100100101010001011111101101101001000111110110001010001111110110101110000110011101100111010010010100110100101100101010001010001110110010000000100110101000010101111010000100011011010010101001000001100011000101111111010001010110001101101110110011011110011000101110101110110011000010111011010101000110011000011001100111110110001111000011110000000110000100101010101101101111000011010100110111101100001100001 +0000101111011000000010110001011001111001100001110010001001101001001011010110010010101101010000110100001110001001111111110001000011010100011000110000010111110001000000110101011101101011000100101011010111010100101000110100111111101001110001010110000001110010100110110011001111110101111100101111101001101010101110000110010111001111010000011010110111011011111100101100110111100111010111010001111001100000010010001000111111000011101110101010011100010010010011110010101000011100000001010111001011100110000110011001101011111011101111011101110010000010001100110000101111001111100111011010011100111011111101000001010010001111001111110110010110011010010011100011010001110001011010000010101101110011110101100111010010010000000011011101111001010001100010100101001110111110011000111000101100001000111110111100010010101000000010101000001101001100100100101011110100011101010110011100000000010110011011000011100101000010100001011110101001111111111100010110011100000000111101110111110010001110011100010101110010011111110001100100101110100010111101111001000111000010001111101000010100111010101000010101101010100101101111110010101001101100010001100101101110100000100100010011011001010101100010101110001101100110010100001001101100110011110101010100010000110110101011101101111110100001000101001001010100011000000010000111000001010100101000001100110100110110010111110010000001100001100100010000001110100100010011010011110---------010010111101100101110100100001111011001010101111000111111100111100111000100101011010000110000111011100101110111111101001110010010011010100000111101110010011000100011111101010011010011000001101010101000100100100011111100110000010110010100111110110111101011110000001000111110101011110110101010100000110101100100001110110010001101011010110001110000010001010100101011111000110010000100000101110100101110000011100100010010110111101011011000001101100000110101001011001110001000000111011001010010010011111010110101010101110100011100000100111000111011100010111010101101000110011011001001011111010000000000010101111010111000111000001100010101111101001001011110001111000100011000100010011111010111111011000010101110001100000101001010101111011111110000010101001010001010010011000110011110111011011101111010011011110100111001001000110110011101011011011011000011101011011010000000011001111011110011011000100001011101010111011000100101110101110011011010011000010100000110111101001000010100110001010001001001101000100011010100001001001100010011111011001000000011011010001011101111000011100001111110110000001100100111011101100110011100101111001101110110001010010101000111011010001100101000010101010011100010011100110111101101100111000011111010111101110010111111010100100001000100111001000111111110001010000011110101100111000101100010010111000010000001001110001011100001110110110011011001010011000100111001000111110011101111010010101001100100001011001010111100010011001110110101110111000011101011011011110100010100000000001110110110110110111100110100101011011000001101110111001001100110111101001101010011001110101010001010000110000101001100011101100011010110010111000110010000011110000111111011100111110001110001111011010011110011000100011111100111111000111100010000010101001101001110011000001011000010000111000000011110000011111001100110101010010101010000110110010100101001110110101000101111010100011101110010110010110101011010000110010100101101001001101000001011101011111011001011110001111000111001001101110001111111110001000011001010101010001001100101010111011000100110101100001110110001100111001001110011101001001100011100011010111100110111011111001001000101110110010100001111111101011000000101100110010000101101111110010111010000010011111101110000101000010010000111110010011101011010101101101101100110111000001000101101100101111011000101011111110111011101010000000101010001110001100110001100111110100110011111101101011011100111011010100001101111101110110011111000100010101000000101000110100110111111110100111011001001101011101010111111110010000010010001101000100011011110010111010101000000111010000010000010010011011111100110101011010001101001110110110001001111110100111011100111100101011000000111101100110110011100101001010001100100010011111000100100001011111111100001000001110010001001011011000010010011100011100000110000010101000011011011000011101101001010000100110101010100000100001011000010111111000011111111110110011101010110000110000011101000101101010100000010100010111101011100100101001100000010101100101100111011001001111010001101110001110111001101100111010110010111011010101011100010000000010111001111010110000011111010011001100111100101110110111111110101110010111010110001000100101001010001110110111110010000000111110010001011100110010000100010100011000111001101100110001101110110010000010001010011100111010110111010001001000010000011010010001100001111101100101101011100110010100110001101110101101101001101010110001110000011001000001001010101010001010111111001010110011100011011011000100010010111000110100000110010110110000011001011110111011101101111001110010011001000000000100101101000110000101011000101101000100001101011011001101100100100010010111101111011001111011111000100001100001000101101010011101011001000111001101101010100000110011010001111100000111110101100011101000101010100010000100101011000111010010000101101010101001110101011001100001100101011111011011111101010111001101101101111101101100010011111001000011101010100100101110110001101010011111010011000100011010101110110001000010010101011101010001111011001100111000000111111000011000110110010010110110001111110010110100111110110000100110000101101001000011011000100000011001100010011011100001100000011100001100010011001100100011110111100011111010010000000011100000111100010010111000010011110100111100001000100001110000101011011010100101100111110100000011010010000101000001101000100100001011011111101110101001100000101011000111001011001000110010110011101100000110000010011101110011111111010100010001100101011011111101011101010010011111101100100111000100000110101111111110101010100001100100101001100001101110111110111100001001111111000010010010011101000010110100111011110101111001110111000101101111011110110010010101111110101010100100010011110111000000001001001110100000010010000100101000010110010010100011110101110010111010111010111000000000111101100000010000001010000101110001010010000111110000011110100101101100110110011010101101001011001100010011100110010011001001110010000101000110101111001100001001010111011001100011010110111110011101011011000101000100110110110000100100000010011101110110100000011000001111111111101110000100110111010110000111010111101111011001101101010100010111110011101001001111010001000011111000000001000001100000100100110010110101101011100001101111011001111000001011011100110000100000000110000110101000110001110101001110000001110100111110000000001110000011110010111111000111101000110100011100010010110100001100110001011001110100111111110011110001010011011110011000111000011111011110100101001011011011110010001100001000100001110110010110101111011011100110110100101011010110101111110010000100011111001110000111000110100001001100001101010011011110001011000000110100011010001010110010100100010011111011101110110010011111111000100110111010011101000010001111011011010011110100101111100110011000101010001001111111111010110111010011101000000100010011100001110101010101110111000001001001001011001101001011100111101011001011001101110001000101001000010111100110111110110101001101010110010001111000100100100000001010101011100011110011000001110001101010001010111100110011000100010101101001101100100011001011111011000110100101010011001000101111001110100100101010010100010110111011100100101111101000111001110010101100001110101101010001101101110101111001011011011010000111000110010110010110101011111011111011110000110010010101010000110101001110010111110100011110110011110110101100011001100100111011101110101000010011000011010011100001010001101100111110111111111001100101000001101100010000000000011111010100100111000000011011011110101100101001111110001011101110000001001011101011101100100001010010011111101101010110010000111010111011001100101111001010101010100111000000001011110001011111011001111000011001010011010010110011010011001110111011110001100000100000011011011111011000000000011111000100111100011110000110110100100100011111110011110010011111001110111110000110001101100001011010010000001001001001000100100000011101111001000101001101001000111101110010111110111010100101000001010101000110101010100010100101001100010110100000100110101011110010101001000001110010111010011101010110101011101101001000110010110011010000000010000110111100111011010010101010111111101100111000011010000111011010011111110100110010111010001111100110110011011101001001011101111001101110100010111001000101110010110011101001010001001100110111010111110100011100001001110001010101001101100111001001100010110101001010101011101010000111101011100100111101 +1100001001111101101100011010010101111000111010010000110010101011110111101001111101001100011011110011000101101101000101110011101100100111010000010101011101101110110011001111101001101000011100100010101011001001101001000111011001000100111110001100011110011100011001101110101000101001011010010000001010110001000011110000010100101010000011001010111110000101100011111101010010101000101101101111001000111101101000100111001011110100100101000110101001011110100001000110011100001011100100100010111111010011010100101111001010000011101000010101111110001100111110011010010110000011001100101110111010001001100101111000001111101000001000111101111001010101100111010010011010011101011010100010110110100100010111110100000101110100011001001101110000110011001100111010101110100110110101101010110111110100000001010001011001001001010010010110001100000101000101101100110110000110101010010010011101100111001100110001001110010001101010010000111100000100010110000001110100010011101011010000100110010110101111101111100000111001100111010100001101011110110011000101101100010001101101101111000001110110000111010111111001111110011011011111011101110111000001010111000100000111011000110011100100010010011011001100000110101010010011101100000000000011101111000001000010100101011100101101111100010010010011010111001000110011000111010110010000100111010101110010001100000111111101010001110100100101001000001101110101111110000000011001010---------001101001101111101000001101100111010110101111100001001100100011110001000101000101011011110010111011001001100111101000011000001101010000110000111011000001001100110001001101010100000001101000111011011101101001011010011110110110001101101001101001010001101011111100110000101110001101001000110000101101000100001010011011111100110010011110001010101011001100111010001000111101110000111000011100100001001111101110001110000101010111111001111010010001111100100101111101110110010000000011111110010100111000001100111010001110110011010011001010100000111010101111000110011000101011011001111010110010110111110010000010100111001111010011011111001100111011001001011100100110001000110100110110101010110011111110100000111011110000011110011000011001010110100100101001111001010110010110010010001001000010000000101011110100110011101101010101000001011100101000011101101101010001100010111101111111010000101010100010011011111001011001010110110001110010010100100111001010111110100100111011001011010001001010101001011001001000000100000100110110111110111101111101000100000101111000000101111111100100001011111001011000111100011100000001100001101110011111001111001001101100001110101110011000111001000001000010001001000110000100000110111001010110110110101001001100001110100101001101111100000101010010000101011111100100001011001110111111010111110100000110010011111110100110100101101000000000010011000110000111101000001110101000000111101001000010001110001101000011111010101000000111000100101110000100101011011010111110101100111011110111011100000010110100010010100101100101100011101101101101010001101001111010101100100000110011011100111111000001101000110100111011100101100010110011111011001101100010111011000011010010101111111010110001111001000110111011111101000010011110100011001100001100111010110000001101101011101001011101100011011000001011001110011010001000110101110110000010000100000000100110110100001010001101111011110111000111011110110001100111100111011111011111110011010101010110011101100101110101110000011101010100101011111100000001001100001100010001100100001111010011010011011111001010100101111111001011100100110011110000101111010101000000000010110100110101110111111100001111001100111000100101111100101001001011110100000101010001100011101010000001101110101111101000001010001010100100110011000101111101110100000000010110000111000101100000010010100101100101111000010011110000001101010010100000110000101000001011100110011001011110011111011110001101001111001100001011001100101010010000001101100000011000011101111010000101110001100100010100001101100100010101111111010010000001010011001010110000011101000000101011101111111000101011101001101111101000010000010110101001011001111001111010101000110111000100101000011011010101001110101000101010000000000010011111100101011000001011101001011111110111000001010100000110111110010011110011110111011010101011100010110110100100100110001111101111100000101101001010110001101100101111011010110001011011110101110011010001111111000110101011000100110001110110011101001110000111000010111001000111100110101011110000100011010100110100100011110110010110111101011100010001110101001000001111111111000101100010001100010110000001000100101101101101110000111110000000011010000101110110101100111011010100000010110000101100011011001000100001101100111000000000001010111101101110000110011101111101001110011011010011000111111110100110100011000100011010110010010100000010001001100011011011111001000001101100100000110001010001001111100111110110000101011000001111011001110011011010011101010011011000110100101110000100011011111110100100000010101000001000001100010111000100000111100101100100000110100001101000011110110101011000101000110010001100001011011101010001011010011111000100110111111010101100001110110000000100011111011011101010110011100001110100001111111000110001111010101101101010011111101110001010101111100110010101110110100111010011101001110101111111101110110110011001110110001010101010011101100101001010111010011111010101111101100111001000010100001111110110100010110011001100011000011011101110000100110011001001001010010001100101101101010101011000101000101100011000100010011011000001101000100101001100111111101000010101111000110111110011101001111100111001110110011010110101000100101101101111101001111101011111101010010111110000000010101000010010101111100000101110000110111000000101101111101101100000011101011111110110101000111001111100100001000111111101011100110001010001110110011000011000101000100001110110011001011111110101011010010011100101110101101101101110111100011111001011010010011110110101000111010101111010001111111011010111111000010010110001011100111110001011101111010110111011101000111001101110000101010101111010111100110100101101000000000011010111000111010000011000101101011111011011000111000100101010011010001000001001100011010110100000010110111111110001101001001000001110101111010111011001010100011001100011011011000110100010010000010110101001100111010110010111010100100100101111110110100000011010001101010010000010100100101001110110001101110011000101110100010111001101011111100010101000110110010111100000000000000011011011100000010010000001110010101101000101100011111001110110111100011010001000100000110011111010011110111000000010000110101111000010110010001000100100011010010100010100100101001011101001111111100111001010110010111001110011100100000111011000010110100110111011100110111001111001000101101011100011100111011000110101010101101000110110101001101011101101110100010100011111100100111110100111110010010111110001110011101001010011000110011001100101101011101000010011010001010000011110110000000011111000101110101011100110000001111001011001011000111110010010101010001011000101111001100111010110010101110000011101000111110001011000100000011101000011000101000110011100100100111011011100101011110011000111010101101011001000111100010100000111011011110000001010110010110011101010011010110011101001101000100100001100101000100101001010001111111011100101011000100100001001011000000110001101110110011101001001110011001100100000110010100101111110101100010000111000000001100110100100001110010101001110010001011110100011110110000100010000011100000110101010110011000110101000110011110010111101011100111111100011000011100110100000101100100110001110000001000110101110000111110111101100010111011101111101101001000010101010001011001001101010000010111001001111101100101001101010001001000100110011111101000000111111110111110111011101001001110100011000010100001100001010011110000101001111000010100011111000000000111001011110011100111101000100010011000011101100111000100000110010001111100010010011011010111010100000001110110011011001100001101000100010011001101001100010001100011101010101111100101011010110101100111111010001000000111001111100101110010000100000001001101111011101110011111111101000110100100000000110101111001011010111111110011101001111110001011001111010010000101000011110001000100110011001010100101010101011000110100001101111011000110010010110100001000110011010011111000111001110110100111110010010100100000000000000010110110010000001011111001000010010000000010011111001011010100001110010111010011100111100100100011010010110000110111100010111000001111111110001110100101101011111100100000010010100101100110110101000001110110011000000010011011000011101001000001000010111000001101100010100011100111011000000010100110000000011010110111100111110100110100100010000010110011110100011111101111110110110001011000100000001101001001011110010111011111101011100010000000010010001100110000011111000101 +1100111001100001110110110011111100110100110011100110101111101000000110011111110101000110111000111011100011000010101110110111101111011110001111111001101001010111101000010001011110001101100010101101010010111100011101000110000100010110001100100000101101111100111001101111110110110111101111111110100000101001000100000110001100110011011111001111001100101111011110111001111111111010100010000100101001000000101101111110110101111101110101101011100100010110000110101011111111011100011001001011011010111110101001001010010101000110010001001010000011111100001111011100010110001110101010101000101001100010100000101111110101010011000110000010010011011001100100001000110111010000000011100010110000010100001100100100000101010010111101011000101110010001000100111000001110110001110111101000110101000001011100011010000000010011011010000000111010101011100000110000010100110010101001011100100001100111110111100001111101101011010100101011101101000100010110000110101111111100000010011011110000010010111110000001011100010011101001111011011001010011111000100000001010010100101100101000001101101100001010000100111000000110011000010001001010110100000010100111101111110101011001101110110010100000101111111001111110110010011110000110010100100100101100100111110110010000101001110011110101000101010111101100001010111100111011101101001110101111110101001000110101001111010111010010111011110011101010010000011011011100101001001100011---------011100110000000011010101000101001101010010011011101011101010101101000010011000000001110010111111111001111111010011010011000101111000000100100100100100000000011000001001111010001110010000001001010110001001111010111001111110001111100100101000111010111000101101100100101111010000010101011101001001011011001000111010001101100100001110100011100001101101001101101010101000000110111011001011010001000011101111100101001001000111100000010110001001010101110100100001111100101100001100010100101001111110111001101010111010010010010010000010101111011101010010011010111011011001111000111001110001110110101100110000100111110100110000011101111110001100101100000111100001011010010000010001100001100110100010000001111101011010110110000111110101011110001000011110111011010000110011001011100110011001100010100010101001111010011011011000111001100000011001010100010111010010100010110010010010001100001001011000111111001000100101111111111101001001011010101101010110000001010000011110100011110101010001111111010011011010110000110011101110101111101100111001100101011011011001110101000001001000000100010000111011100010100110000100101101110001000100111111000001001010101101100110001010101011011101111011100111101000100000101101100101111100100001001111000100101111000100101011010000100010000000100101010101111101010111111010110101001000111100100110111111000000110001001111101011100111110001000101110110100000110101111011101111111111111100011010110110000111010100110101000000110000100000011100110101101110100110011100110100010110000010010101100000101100001011111001110111101000000011110001100001101010111000111011101110010111010100010100000010111000111001001101100010110000010110000010000110001111101101101001100100100011100100100111010111010000101100010101000111000110101110110001010001100000011011010100010011011100111111110000101110101111110110011011000100000111100011110100110100011111111100000110001101110110111111101111100000110001010010100101111111011101010110001110000101111100011101000010000111110100000101111011000110011011001011110001000110000100111001001101000000000101110010011110000011010111100000110101000100110101011100101110000001000110011111100001111101000000010101101111110110010000000011001110000001110101110100100111110000011101000101100100010001101101111100101110110110011001110011000001000101010100001000001011010111010001010101010101110011100010110100011010000011001001111011111100111011110101001100000010000000110110011110011100111011110111000110100000101110111110011000110010011100011000110111000101001100001111000101011110011101001011110100001101111100010001000011100000010101110100011100010100111001101000001110011110000100111111100001100101100110000111100111111111101101000111000111001101100101110010110111100111100110001000000100110011000101010011010101101101111000111010001101100111110100010100110010000111101010000100110111100000010000000000100011100000000110010010001010100010011110010000011110011001100010001010100010111010000000011000110000011010110010011010111000001100010111000111100110000100100011010001000001001100000110111111000101001111000000100100010000001000100110100010010110101010110010111001011111011111010101001101100001101100110110010110011000111000110100110111110110011011001111011011010000010100100011001000010110011100110000100011100110110011011110100100000110001100000011100000101010111111001010110101100010001011111001000100001110111111011010011101000111101011010000011000100111010001010011010111110001000010000100000100101110011000100110111110110001000001111110111101010111010001011011100001000110010111101101000001100101011100110100100010100001000001101111001011101010000100110101011110011100111010011000100011100101101000100010101111100001101111100001001100010100010101010000100101110011110111001100111100010110101111111100011001100111111101000110000101001110111101010101011010110001101001101110010101001010000011011111011001011101110011111110001000111001000101001110010110010110011011100011100100000000010110100011100100010011110010001110100111000000001111100100011001111001100111010011001010000000100111000001110010110000000000011101110111101111110100010100001101110000111010001000111111110101000000111110110011100000001100111000100001110110110010011110100010111100101110110011100010010101000111110100100100101101101100101101111000111000000111111101110010001011100011000011100000010101011010110011101011100101010101100100011001010100000101100101110011010001110010111110010100111111110101000001101010001100110101101011011101111101001100100010001111101000000100110001011101011011110010011010011100010100111111011001101000000000100001010110010101111000110101101011101010010101010001010011011011011001100001000001101101011100001000001011010100101101001011000110110010110110101001100110000101000010110111101001001010100000000010000011101100100111111001101110100000001001010110111011111000110110110111011001100111100001001110101001001100000100111010100011110000111101001111000100110010100100111101000110100100010000101011111100100001111011111000111010100101010000110011101000110000101101100001110011111011000000000010101010011111101010101101001011011101010011101110101100001000001111100111001011011000010101000010010101101001010000110000001100000101010111001000001101100010001111010110010111100011101110110111001011000100001011001101000101000101001011000000101011101111111010111110011110100010101011010111001101000110010000001110010110000100010100000010011110101100110000001101000111101110010100101010000101101001011011001001101101100101111000011010101000110000011000111001110110110010000000000111010011110001000001000001011010010101101010101110110100100110000010111111100111101111000001111011101011111001101010110010001010110110110110111110011000110110110111111011010101011100010000011111101100110101100110111000110111110110110001100100001001110111110001110100111110001111101110111110101110000010000110000111010000000111001011000100100100100000001101110110000101001101000101100100010110011011010100011101101011110011010011111110110110101100101010010010101111111101010010101101100001011011000010001010011100100110011011010110111101101110001001111111101110010100110011001011001010101110111101110001011001101010001011100110001011001010111000001111000010100110111111100000001100101011111111110111010001010011110001011101011000000110111110011001001000011011010000011001101001110010001110101010001101110011001000110000101100011001000110111110000111100100011000010011000001100000111101110101111000111000101001110000001011010010110101011111110111000011110001001100101011000011010101110000001110100111101001001000010110101010011010101101101110010100101010101001011001110110000011010001011001110101101110010010011000000100100111110110101011111110011101101110101110000110001110101011001011111011100011100010011100110010011011111001011011001010111000100101110001110100010110010011110000110100011111000111111000111001001101001000110001110000111111101110111000111111100010010011110010001010001101010110000000010100000010001000101010001101011010100111011110110000011110101000000111010100110111000000100101111100110111000100110110101111000111111110101010100111110111001000011110001110100111000001110010001010000010101010000011011011000001111010001011010000101110001110101011011011101110000001000100010010101001101000011110010001110110010011000101010011010011100110000011010010111111011101010100101010000101100010100111100000100011011001011100011101100001010001110010110101111111000101 +1011001110101100101000101101000101000111101000001111101001010011100011110001011000010001001011001000110010101110101000011100101101010100010101011011101001100011011000011000001100101100110010100110000110000010111010010110001101100001111001011101001000011011110110001010010111110011100101111011010001100011111111011110001010011111100111010101000110100100000111010010000100100001101111001001111110011110111101011000110010100111100000110101110111000101001111010101101110001101111100111010001001010101010010111101001011000001000110100001101101001000101101010011000110110110001001010111110000011000001101000111011010010101011111011010001101111100000111100110010000100000100110000010100101101011110010000111101011101010111111011110100111110010100111001000011100100000110011011011010001010101101101010000001010000101001100011000110000001001111011010011101110101001010101111111110010000001110110010000110110011011111101010000110000001111110110001000101101101111000111011010011000001111110101010101100100110011000111001111110000111111000010001111111010100001000010110000101101101001101001000000011011010111101101101110011101100100100001110100101001010101111000001000110101001010010101010111111000111011001001010100111111011000111100000111001010101010110010100101011111110100101111010001110010000001110101001110000101110001010101110111110110101100010110110010101010001010110100011100101101100100001001001010110---------001110111000100000100111001000001011111100000110111011111010000011111000100001100010111011011100001111011100101010100101101001101000010110111111001010110000000100000111011111101110011110010001011011101111010110011110011101000001010010101111000011110111001010011100010100011111010000101101101100110100111010000011101111110000100100010010101001100101101001001101111001011101010011001100001101101011010000111111010000010110011011100110001101011011001101111011101001010100010100100101101001100010100100100110110110010001011100000001110001000010001001111100110110100010010101001001001101110111100110101101010111000001000110110011010010001101111101000010111010001100100111100010010111010100011010100101010001011011100001100001111111001010100101010000000111001110001100111011100100100110110101110101010000001110011110011000100001110000100011010000000011010011111000100101110000111010101110101110111100000000000100101011010110010011111100110010010111100101100001110011010001111010111110111000111101110101000010001011001111001111110110001100000011010101001010011111010101011011010100001001001101011111100101011101110110001010100110111111111101000110000101100111001110011111001000101111010000010100110100010111111010010011101101110110010000100101101000101100101100111011010111110100101011000011001101000111010100110111010101111110001000111111101110011010111111100000001110100100111110000001011001101110111100111100011010110000011101100111111111000111000011110101000111001110001010011000011101010110110111100101100111010010000111011101111111100110101001011100110001101001000000011010101101111100100011010011011001001000110110000111111001100001101111000111000101000111010010010110110011111001000011101001101110111010010000111000001000110000001111101000101110101100011111110110011000000010001100110010101001011010000100000000001110111110001001111101110100110111010101111110101100001100011011000000110111001010110110011010110111010111101111001010010111111111110010011111110110110010100110001001101011001111010100111111010011101100011000100000111101111101010000101100010000101011111101100000110100110111101000100011011010010101001111001001111001101101101011100000010010010111010011111100100000101000001000100010101011011011001111010000111011100001010001001110100101001001011110000100011110111011010101110000011001010010011100000011001100110111001110110100111000101001011110101101111011110110110110101010001000011000000010110000100010100010001010001001001110000111110000101000111010010001001011011000010010110011000100111000101110111010001000000001100101110011010000001010101011010110111101000011111001011111001001000010000110000011100100001000011001101001100101100011000011100010110101000101111000111010100110110101001010010111100100110111101111111001011110011001110000111100100011110110000110001101011011000110000111000111001111100111001010010010100101001110111111011100110101001000111101101100101010110011010110000001010100110011111110101101000001000010110001111001101111110001101010001111011010010011010110101010010101100001010100001001010001011100101001100010001001000000100000110000110001110101110101011010101110010001010010111110100101110100101001100100001000000110011011010001100000000011010000110001110000001010101100101110000010110111110110101101110001110100010110100110100000001100100100111010111011000000101000001000110000001110000101011110000000000110011011100101110000100011100001000100111100000010001011010010011100111110100001110110011001001100100111000001111011101001000010101100100000001011110100100001110110101001101010100101000111010011101011010101010110011101011110111101001011010100110101100100011000001110111000011110000110110011011100111001100100110010010100000010110101000100101011100001101000010111101000111010010111100000110010001100011101110001111010001101001010011000110000001001111100001000100101001100100001011110101010001000000011101101111100010111101011011100001011011101110001011010011101100000010000000111111011000001100101111001111110011000010011110001011001110010111000011110000010110010101000100111101110000110011110110001101001000111110100000111000010010011001001101011110001010011111101011111011100011000110101001001101110100100010001100101001111111111100011000000110100001011101011100000001011100010101110011011100111011101111000000011000001010001001111111101110010110101000000110100000111001001101011011001101100100001100110010101001111101100110101000011000010101000100011111100111010000110000111100100001100100101000101110110011011101010001100100000110101101010001100001110000110101101110100111000011111111111001111011000010010101010110011110100010100101011010110000001000110101110000010000010001100011100001000010111001010000000011100000101110111001011000000110101101011010001011101111100100101100101111110111001010100010100110100110101111010100100011110000110000100010100100000011101000111111101110110100100010010010101111111000111000110111010000100110010101111010010110000011111111100001000111111100110110011001111001111101111100111000010101001100101011111100010010010010000011001000010100110010111001111001100000100000000111001111111010100100101100100000111001000100001010110011111111011100100000000100101100011111011010000010111101010011111111111101110100010101010001111100000101000001100111111001100101101111011110110111100110010111110010101011101001111001010100101101010000101010010100111011000001000010010100011000001000100101101010011100100011001111110001001100011110111011001000010001101110110001010111101110110010100010010110011011110011100001111000110100101111000010000010011111111000101001001110100000001100110000001001111010010101011010110011010010011110001100000011010010011100110011101100101100110011110010100111010111101000111111011000101110010111010111010011110101110111100000110100101000010000001000101011010110000111010001110111111101100111010011110110000010010001101001011001010110110000111101010001111010110000110000010111101101010110001100001001001000000011001001110011010011111110110001001100001011011010110010011010101100100000001011101010111111101100001101011001111111010101001101010100011111001001000100001011101010010011001101110110011100001111000111010101100010100111000101001011001000111001000011011101010101101111110000011011100111011100111001100000011001010011111001100100101100111001101000111110101001110101110110000001010101011111100000111010110101010101111100100101110111101110110001010011011110100001001010100111010000100101010111011101110110011011101011100100010111010000110100110000100100110001011001111001110100101011101101000101001100110000110101110110101010000000110100111100011000111010110111110111110100101111001111010110011111001001001010001011010001001101101001111101110000010001100111101011100001010101101100000101000110100001100111100101001011110110110001111100001000001110001000011001111000101011011000000110000110010010010111011001001011010100101000111000000010110011100111111100110111001111010000110100101111101111011110010011011010010011110010110101011110110110001101110101000001100100111011111111010111001110101001110000110100101001001100010110110010101011010100011011100111001011100110110100100101011000000000110101111011001111000011011001100010101100010010110001101001000101111000001101010011110101101011110000111101000111111011010001101010001000101010100101000010000100110011110010100001001000001010101010000111000011011011001010100101001100111011101100010010010100011010000110011001011101010100011100000111011 +0010101011001011001010110111001101100100111101101100100011000110111101111010010011000011101110110111010011100111110010001011100000111111001000011000000111011010111101001000000000111011010010001000000000000100100010011100101110111100100001101010010101010110110101101101111101000010011110000001001011001111011000000001110100110101100000000100100100000101011000110011110101101110110001000100101011101110001111111111011010011101110011111101110111101011101010001111100000010000000110001011100010110000001000010010001001100101110000111101011001010011011000001001100000111010100100110111000010011000011100101010000010010010010101111011011011000101010001000101110110110101011100000100110001000101111010011010101111001011001010111010000110000111001011110101111101111110101011011100000111110100011000101101110000000111000011010111100100011011100111001101101110000101000111111011111010101011111111100010001001111011010101001110111100011100101110001000100011000100100100101000000011101010001101010001110000111101010010001100001000110100001010000111110001111010010101001101101110110001011100001111110010010000101011011000101111110010010110011100000011100010000110001010011111111101011100011110111100001110101000011110100000110101100110101001110000111000001100111101100001000001000110101001000001101110000110110010111001001111011101101100011101101000010010110000100100000111111001000011101111010111011100000101010---------101101111001101000000000100111000110011001010011101001000101010110011101100011100101110101011010011000100000001010101111101010011000100111111111100100001110010101010110010000011000111000010011001000101111101011110000011011010100101100010101100010011011100111101001011001100000111000111100010001011100011110111011111101110011011100110100101110111001001101110110000001110010111110111101001010001101100001010110011000111101001100010010000010100001110010111001010011111011110011110001001111110111111101110100001100000111110001001000001100100011000010011000101100010100101011110010000110101010110111010111010110110100111000010000101100001110111110111010100000010001100000000011001100010010010011100100011101001011011101111000100001100100110101111000010001110000100011011110111100101011011010101100110110000000001101100000000110011100010100000101000000110000111011000011100101111110010100101000011001100101110100010010000011100011000011111000011000110110101100011001010000000101010110010010101101011001111101010011111001000010001011111011010111100001111011110010010110111001010111011100010001001011010101011110011111010110000010101000001100100010101101110110001101111100000110011011010100101100010001010110111010001101010100101000010010110110101001001111011111110111001001100001111000011010011000001101100001001000000110110101001111011111001101101101001111100001000110000000000101110011110101010010001101100011111011111010100010000101000100010000101011000010010001011101111101100110001010101001011111101101001001000000011011110101010111000110111111110011010010100100110011111101101010110000011001111100000100111010111111110100011011110000110010101011000110010000111000001000101101001110100001011011110101110001011100110100011010101010011110011100110010011001010100001110110010000010001111110110100100011000000001101101111010011111001111011100011010111111011000100011010100100000001111101001100111111001110011100001010010010001001100010101101011101000100110010011111110011110101000011101110000100100101111111101111111001101000101001100010001100101100100011110110010110111011001101100010011011011110101100000011110101110100001001111101011001100100100000000101010111110011100001011011110100100011100101101111010000100111101101011111110011011011101111011000001111100100111011111100110000001011000010011000101101001010100011001011101000001011001010011100110011000111010001010001010011100001011000100101101111110000100110110111011101110110011101011010100000100100100111100001000010110101001000110111001101110011111001001010110010010000110001000000101100101100101000111001000011000100001110111101001111100110101111000100101100101010111010000101010001011111001010011101000010101101000011101000100011010011001000010000100110100100111111001001011011110011101110010010000010111111111101001010101101101010101111011100101000101000011111011001111000101111000011001001010001111101011000101001001010001011100100010010110101101010001010101100111110001000100011010000000011101011100100011111100011100101011110011101101000000010001111001011011000000010111010001001101011111011011111101110100010111010010101010000110001011000110110101111110110101001100110000110000110011000100111110100011101010001100010010001101110000001110100100001011010010100100111001001011011011000010110101001011110000010111101000010101110100110101001110110010100011111000101100011100010110100101000011000101100110000001101010101100110111111100000101001000010011001100111000101101110000110011101011011111001100000010101000100000101011111101110101001110101010000001000111000111111100100110100110010011110110111000110000101000010111100000011110011000010000000010111101101110101000100011101101011110110111011011000101001100110100001001100101100101011001111100100100100011111000010100001110000001001011011110111101111011010000000000101000000000100000110100011010000110111010110101000001001001011001000011101001011011110101000110101111111010110011101000011000110010110110001001110010101101010000111001011101101101000111001101111001111011111010011011111111100100110100100100000111011111111000110010110101111001100110000010110110101100100000001000000101000100001111000101000100001111111010101010100010001001100000011111011100110000111001000110001010010001100010000010011111010101010101110110001101001010001001010010010100110110111100000010010001001010011100111011110110010100000000010001110010010110011101010101000001001000000001001111101001111111000111100001010111010100000111110100111111111101101010000011001101101000000111110111001010100111111001000001101101001111101111000110001101000001000011101101100000100101110110101110101010010100100110011100010000010011110111011110010001101000011001101011110000001010110000000000110000011001010111101010110001011110011110011111000000011110100110100010110100100100000001001111011011001010000111110111001100111010101011010001111110010110101100101000010000111000111100100101010110001011110110101001111000001110110111000101010110101010001100000001001111100011100000011010110100100100110010000111111101011100001100100110110010101100101000100100101000111110010000010110100001010101010100111100001011011001101001000111100100110111101111000111011001010111001000100000010110010101010111110011001101111111101011010110100000100010000011010101110111101110101100100100001000011101111111101101000000100101111110001001001000110010101000000001011111000101011110111101111101110001110001101110001010010010101100111010011000011111111000101100000110010001010011100110100111001111101100011011000000101101000000000000010111100010101001100001011111110010110010100000110110101101111111010010101100101100011011100011001110101101101001110011101011011101110110010100001011111100110100101111101100010000110110101000011010111000010100001111000111000100101010101111110000101110101111101010110000101000110111000111100111001001110000101111000001001100100111001010110000101111111100000000000101100101001110001110101011010011100101110010111111101011010010110001100111111100111010100011001111001101001101010001110000111010100111011111101110001101101100101011110110001000100111010001100010101000111010110111111001001000001111101001011100100001111110111010000111110001011110011100110011110111100001111000100010111101100001100001001110111011101100111001001000100100000000110100110101111001000000001010011001100110011110101010100101001100100100110101001100010111100001011001110010001111000111111001010010110101111100011111100101101110110001001000110001100110100100101011000001000100001011011101010010010000010100011100101011011011110111000100101010000100110010101101101001110001011101011001100111010110011000111000001010110111111110000100010010000001100111011010001010110111111101010010000110111011001001110010000111001111101110010111101111100101011110101011111011110101000110110011010100000001100010010010110010101000011011000011001001010111110001011010101000101000001100000000101011101001010110100100111001101111110110001011001011011000011011101011011010101110101011000011000000000011000111111110110011110010010000101111010100011101100100110000001010100010101100100100100111100001101110100101011001100110100110111100100000110001100001011111101100001010011111001101100001000000111111101011001110111010101100101100000000001011001001100010101100110100001001001001011011100110100100111001110001100110111000111100100100010000100101101100000111101100000110001011001011010000111011111001001110001101001100001001001001011111001101100001111111010111111100 +0111110000110101011101001001011011010010110101101110001011010000110011001011100011001001011001000011001011101000110110101111000101110101100010111011000110110100000101111111100011011001100110101101011101100010010000100001111011100110100001001100000011000011111011000110010101111001100001000001011101110110010111000101111100000100110100111100000110011110010111010010111101000011111110010000110111011001110000000111101011100001100110110010001100100000100010001111110101100010100101010010100111101110100100110101001111001010000111010100110111111011100000111110001001101111010000010100100001111011001101011101011110110100011110110100110000110010000000010000110111100100111000010010011011100000110101011100111110100011000010001110000111111011101010111110001101111100001011110000010010011101101100000001101100001011111101111111111101000100001111011011001011010000101001101000010101000000100010000011101001100111101110001111010000011100100001111011000001110111100001000011101000110111011101110000001001100001001110110001000010001111000001001111111110110010111111111011101101100000100001001001100010001001111010111111101000011101100101110110111000011001000111110110110000001100111110110011110100000010111000101000000100000000100111111010000011101100010101011001100000000100001011011010101010011100001010101011011010010101010110110001100000100010101110100010010101110111110111100110010101110100010000001100000---------001100110110010101011100011101100110001111111011100011101001110011100010100110110011000101100110011001100101110001111010111100001111001000011101101100110110110001111101101010100100100001110000101101111011000000110011000011011111110110011100000100110001001000110101000001001011001001000000000001000000100011000001000101101001010000101111010101110100101110010110100111100110001001011000100111010111011111101010101111100001101011001100011011010010011010001010110010110000000001000000100011001010101101001011101010010101001000011100000100011100001000000001010000000001111010010001010101010100011101010011000110100011011010000110000100000111110010111011000111011110001100100100011001010000101111000011000010110101100110010000011011110100011111101010001011001011100111001100100011111001111001110000000000000011001100100011010111111101100010111010001001111010011101000001010010101011000100101010011011111110100100100010011101110100111101010000100010010110000011001111000000011111100101001100010010001101010000100000011101100000001000110101001111111011000100001000010101010001111111111010001101101000101010100110001111010111110000101001111100100100000001110111110100110101101001011000101100100000010000000011111001001110100001101100000010001010001101001000001000111010111001100001110000110001101010010111110110010100001011010111101110001110000110101110001101001110100000110100100111001111011111100011110110010110011100110000110110001101000000010001000011100100011001000111000100111111100111000010101011101000101101010010010110111001111110000111000011001000001000110110010100001010001110000000111011101010001101111001000000011000010001001001111110011011111001110101010001010110100000011000111010111101000111011100000100010101111111001011011111101000100110110001000001110111111111001110000010011000000010001011000010001001100001100011000111110110101011001001010111100000110001000111100101111001110001100011010100110000010100001001100111011000010100011101101111001100111011001000000100001100010000000101110001000111010010010111100000010010101101001001100110001100000110000111011110010111001101101100001100000011001100000010101000000001101001001001111000101101100000100110000100100010010101001000001010001001000001001111001100110101001011101100000100110111011100000101110000001011100000111110001100100100011110100111110110100010110100001001011010101011011111001110100000001110111100001100111100010000011101110111001001111010100000100010111110000000001111101011110110111010110111011111111011110001110110100010011101000011100111000111010010100010100010110011000000101110001010010000001011101001010010001101100001111110000100100111010111011010100100011001000001110001101100110001010000110101111111000011111010010110010110100001101100100010011010010001111100111101010111010010011100000101000101110010011101101101010101001011100100011111100001010011010010101101100100010010100001011001100100010001100101011101000101101100011101100010010000100000101101010110110100010101100100011011001011110111010111110000001011000111000110001000100011101010110111010001000000100111000000011101011010101111111010010001011010101011111100110010110100110011111111100100011010010101111110110111000011110110000010010011100100000111101001010010010010101010111101101110111011101111001001100011000100111111000101001010100111110100001101101111010001011110101000111101101100101100111100001001110001010101100100100101010000010100100110110001001100100001110101001000101101011111011100000101100101011101010110000001011111000010100011011001000011111100100010001111101100000100001010000011001100000011110001110001001001001000111111000011000100001010001010100100010001011001001100110011111000110011010110000101000111111101011110100010010111001001110100000011000110000110000010001110001101011101010110011001001000011100001010000011010111100101011001001011110010101010101001111001101110000011001111100010100000100110111001111101011100101000001010011001110001001101101010001110101100101001010111001001101000100100011110100000000111010000001111010110011000100110100101000110000110110000011011111100011000000010100011000010110011001011111111000111011111000100000111101100001110011101010000100000010110001000010100101000110100110110000001001101011111000111001100101100011001000101111111100000010101101001001010111100011111000011111000110010011110001101001111001100110110110100100100010011011010000111001010001000000100000100001011000010110100110000011101011110000101010110110010101111000001101010101100001101111111001011011100000000001010101011110111001101101010100010011110100100000011100001000110111111110001111110011000101101110010110111100110110001111010001010101011011101011101000000011111101101101100100110110111100011010010101000011001000000101000110011001100110101000011110000111001101100111111100101110011100000001011111000110111011011001100010000000011100001001111010111010101111001100111000011101100100001110001001001001011101010100101011010001010100110001001110010010101001101010110101111111111011000110001111111110100111101011000111000111001101001001111011011111110111011100011111000011111000100000110101000011011010010101111001101010100110001011100000111010101011110111011111011100010110100111101110100000101110101001001001011101100001100110100111111100000010001001001111011100101000000011101111100001101000000010011100011000101001010100101000001010100111101011000111100001110100100100010001111111100110011110010100001000111011110101010111001010001110001100100000100000110101010101011100101011100110000011100110001011000011011011010010100110111100111101101101110111110100010011000010011001010110111000000011100001000001001001011101011001110011110000100111100001111111010010010101111110001100010101100111001100111110000110011001001010001101001111111001111011100101010000101100100110011110001101010111101111001100110101101000000001000101000111100011110000000111100001101101100010111010111010000100000011110101100110001001101110110111101110010111000010100110000100100010011110111000100000011000010001100110011110000010101110010101000110001011101111010011000001111101110001000010100111010010000110000001001110010011100010111001010001101100110001100010001001001000110001101011110010011110000001010011010100001001110111100001100101100100111000001000110110111100011100100001110011011110111111001001110011011100010000000011001110011010101010110101011000110100000101111011101000011111101111100011010000110111100010001001111101111010111000000111010111010110000001000010111111000100010101011110110101000100100001010101110001110101010101101110010110000110010110000000111000101001100111000110111101011111101101111000101110001000011010100010101111110001010111000000111101000101010011011001100110110111010101111010111111001011001111001100011100101010010111111000000001111010000011100000000001101010110011100000011101101100110001101011001110011001011010010110111010000000001010011101000111001011000101101111011010001001100001001110011110111100110001101100001110000001011111011000010110111101010110101100000111110001010001110110101101101101110111111001011100011110100101010010011001110110110010000110000101000111010100111101111000111001101001001100011100001111000110011100001011000001110101111010011110101111010010100011000110101100111000110110010111110110111001001101110101010100110110101001000110011010111111010100001100000001011010001111100010001110111001110101011111011101000111111011011110111000001000001101010110010010001100100110001001101011101 +0111100101110100000101011100000011110000110000000111110101000111101011110000100100000100011001110001011000001101010111010101000100011110000110001010010011110000010101111011010000011010000000100011110001001001000100110100111101001011100011111010011011010100111100111110101011111010010110000000100100000000110111111110011100110011010110000111110100100100000110111000001110000001000110100110000110000001001010111101001100010000100101100100001101000000000000100110111100111101000001001111001001101101111000111110011111100010100001110100001100110000010010000000001000011010011100111001011101111110010100101111001001111000111011001101101011111100110100000000101001001111110000000001000001101110110101011111100100110010101011000010000110110010100100000111011110000100001101101111100000100010001000000110100100011000010111111100110000110011111001110010011010010100101011001100010000010101111001100000111101011011011001001111101001000111111110111111010100100110001110101010101001111001011000000000100100000011011101000100101111111100011111000001100000000001010010011001111101111011101010010110000011010111101100110011001100101000101100110100010100110011101011000011011010011111011000001011111001100011111100001001100100010001110111110110011101001110000000011110111000110110011101101000001000110011010010111101011111000010110000010011101110101010000101011010010101011111101001101110110100100111111011011101010---------111001010010110001000011011000100100100011011010101111000110101001000010001101100010001111100101100100001100110010010001010100101101000111111101100011100100010110010100100111000001011111110110110011110100111110101001011001001011101111111101110100111010101010110010100000101000000111011011111100000100111011001100011011000100111011100111010100010110000111111001011011001001000110101110000100000110011000110011001101010011100111101110100101001110111001100111001101110111110111111001111100000100101100100101001001010101110110110000000011011100010101001010011110000110101011111100001001000111110011011100110010100001110111010010111100000001010100101111100001001010111101001010101101000101001011110101101101100111111001001010111111110000101100010011101110001101011110110111111000110011111101101001100111011111110110110100100011000100101000100110011001011001000101111111110100011001000110010110101001110001011100011110000111101111100000100100011000010001000101110011100001100011010000010001111101010101100111000110111101101011111011010010110011111001000010000101010111101111010100100111000111000010111101111100111010000010111011111011000110100111101111010100100011100101010110010110001011111111000001010111010100010000001010000110111110100010100001101110000111110001101101010010001000110010111001111011111001100000000011111000010110111011101010000100101100111100100000011111100101010111101111010111000000100001010001110101011001111111110000110110011001011011001100001000111010100100111011011101010011111111111000011110100010011010111010010111011110001010110000001100001110011100111001100100101111100010011001011111101111001001001101011011010000011100110000000001010001100111110010111101100110101001111111110011101011101101110101101100010101100011011110111111010110111001100011100010101100001111010000001011000111010011000100100100001100011011010011010000001100101100110100100101101110110001010101100010110100111111110100101100010010000111011011101110111010001100100011010011000000110011011000011100101101110101111111100110101111110100100001101000010001000011111000111000110000100001110010100111111111011111000011101000001011110100101101010110101010000100101111001110101100100110110011000010111111111000111100001101011001000110110011110001010010110010010001101000001000000100011100000000011100010000111011010011111111100000000001001101111101110110101111000011011111110111010011001000111001101000111101011100001000000100110100011011000111000100111100111000100011010001100100001101100000100101011100111110111011001100111011100111000011100010001100000110101000111101110100110010011010001000100011011110011010000100101111100010001010010101101011101001101000000100001110101010001110001100101010100010001001110101010001010001110001010000110111100000110100100111100101010011000111011000101101110010000000111010011110000000011111111110111011100000101100010110100001010010101100000010101001101101001000111111101010110110000000101100010101101010011010000000110101000100110111001101101110100010111101110011000011000110110011001101010001110010000001010010011101110011111000101110001111010000110110010011110011001001001110010001000111111101000010111010101100100111110010101001101111101101011111000111110100100010000110011100010100100101110011100100111011100011010010100111010101110100110110101100111101010010110110101011010111100000111000000010000001111011001101101101000000101110011110011011111110110100100110001001110000000000011111101000011001111011101010010001110110010100100011010100011111001011001011011010110001001010010001101011101111101110101101010110001010100100001101110111000010010000010110111001100011000110010011010110000000001000101110011000000001001110101011000011011011101110101101110101111000101110110100011101111101010100100010101010101011010110000111000000001001110111011010110010110101111101011010010010111100001111000010101110101001011100110100011001100100101001100110100111011001010011001111000001100100110101111101001101111011011000110111000011000010100011011111101001001101111001011101011000000000100010001011110010100110110101101000001101110100101010111000011110100000000011010010000100110001110000110101101000001010000100000010001001100010001100100111101111011111011000011000111110000010000101010010001000100010010100111101110000110110101011001100111001101101011110010111010110100011110000111001010000000001011001110011100101000011000011111011011110101101011011110001011001000011011010100100100010110010011001000000010111011110001110011111111010111011000111010100110100001000001100110101101011000100111001001100011111011100001110111110010001011001010110100011011100011010010011111110111111111110001101111110000111110010101010001101100000100001010011010010011001111000000011101010101100010010111111111001001000011001111110010111001101011101100010111101011101011000101101110000001001010010110001000100100100110111001001110000001101011000011100111101111111000110001010100000110000101101010111001011000001111111100001100101110001101100011100101100101101011001010111011010111010010101010111010110000001111001010000101111101111100100001101001001001110100001011101001100011000100011011110111010101110101101001111110011011100110100001001011110010110101011011111011111010100011010111001011101010001100010111010110011110110000010010101000001110001101001011101001111110011001110110101100011001100011000001111110100100110010111011000010001001100000111110000001100001011110000110000000100111010111111111101101110110000000000000001011110110111000001000010101001101100011100100001011101000011011010011001011010100110110000000010100101010011110000011000010010100111000101101101000000101011010111000111100010110100100000100100001011010001111011100100010100000111101111001100010000000000111100101100000000101011100000000001101011110100010010000010010101011010110111010011000000110011000110101110101010101010011111000100101010110101100111000101101100111110101011000011001110100110010100010011000111111111010111110110001100011001001001000100011001101100111100001101100111001010101110101110110101110000011011000001010011000111100110100000111111000100101101110001100110110100001111111101110110110101100011100101011111101001010101010101001000111001111000000111111101100011010101100011111101000011100100111101101101110100100101000001110100000101001000010010110110100000000101000011110110100110011001010011101000110111011000010011000100101101111000000010100011111011010011110110100100010011110010111101111100101100001100010101100011000001010010110000010011010010110001010111001100101010010111000000010100010110011101101011011010001111000101111011100010010001011010000011101000110001100111100010001100000110101011111010001110100010000001100101011100101111010111000100111010111000111110010101101111001101000001001110010010010011101101010010010101000000110011010100001000001100110011111111100010100100111011000001111100000000000010111001010000010000010001110001111000010011010111011010000010101011111011111011001101000010110010111011010111111100101100000010001000000011011010000111000110100001110101000001101001000110010001010001010010100000010001111010111110010111100110110110011101110111001001101111111001000110100101100111000001111100101011011101111100100101000101001100011001101110000000111111101101001010001011110100000011110011110000101101011101100110110110110000100111011001110000111111001110000011100111101111011001110101000100001011000010010010111100110011010001000111110110010000001111101101111001000000 +0100111010100011101001001010000101010000111001010100010000010110000001111101011110010001110100000010011011110110110001111010011111111101111001100100001100001111010110011001000110001001010100001000111101001101001001110011001001110001101011110010010000110010001100011001110001000111011010000010101100111000101000100010101111100110011011011011101001111101100000101011011111011001010101001100011111100101110100110000001100000011111011110111111111001000111000110100110000011100011111011000100010010111110110011100100011101011001011100100000011011100101100011101110000110001111101010101001101011010111101100110000010010111001001010101111100001011000111101011001011100001110101111101000001111110011100100110011001001110110100001000110001011100101001100100100100110010001001101011111001001111110100000000010001011010110000110000001110010001100100001111100100100011001011111101100001011001101101000100110000010001001100100001101110101010100111110010100001000101010101001011010001010110100110001001111001000010111001100111000110001100100011000010111000111001001011110010100101101001010101100110001010111111000110001110100011111111101001111000111111100001101111110111010000101111000000010011101011111000111101110100101010100001011100111000001000011001000000010100100011110110111010001010110110101101000110100111000011010000010001100110101011001101011000101010010010100111110010100111101110111011010000110100010---------111110110101000110100100101101110001001101111011010100000001001101110011001110001110011100111000000011011111110111100100000000010100100101111011011101001000000110011001110110101100111100101011111111100110010000000000101100001100100110011111111111011101011001011101100000000000001011101000110001100011000100100010100000001110110111110101010001111111110111000100010101001110110110100100110111101011101001100110011100001011101010010001001111100101001101001001001010011110011000001111110011100001100111001010010001001011110010011000010100100110110101001001001011111011101110100001101010110100010111111000111010100010100000001101111111100110111100101110111011110111000011011001111001111001101100100101110001110001010110111110111000011110010011100000000000101100011101010111000100011011001101011000011000100101101001100110110010001110001000101001000011100010110100101110111101100010010101000110100011110110110010010001111000010110010000110101000100010101001011011010101011111010111010001111001010011010101001011000110111011110010001001000001010100001001111001010100011000100111011011111110111000110100110011000011001001111011110101000001000111001101110001011011111111011111001000001101011010100000110100010101010100000110000010000101000011111111110100100011010011011010010001101111001101101100011011011101110010110101111000010101011001011011110101101001101010101010100100111000000011001101101010110000011000010100111111101111001011111000111100011101101011001011001101000100011000101011100110010100111111001111011001101100101101000001010000100100100110010100101001111000100011110011010001000110101111111110001001001010011011010000000101001111010000000001000000001010110111110000000110000011001110101010111001111110010010001010101000110100000100111101010011110000100000101000111010101010100011000011111110010010111110101011010010110110001100000100011001011001000111110011011100001000111111101011001011011001001100001111001011010110000110010000111111100101000001100010110100100010110111111111100110100110111110001111101111111001000111100010001110001011101011000101011111011101110011011000011111010101001110101011110001001110101100101100000000010011110101110011000011100111010111111010111111001001101101000100111110110111000101000101101111100110010000001101000110010111100110100110111001110001000110111101011001001011110000001110001001011001101100101110100001010000100000111100010100011001011001111000110000110001010010001100110000100100101111110001101100110100100000110110001110111110010100010100001111011011111000011101111011010101110001001000110101111010111010101000100101100010011010100101111011010100101001011000100111001001001110010110010100011100011101011000110110111010000100110000001101111000010011011010101100000111101110000011010001111000011010011100101100001111111001000111101010001111101101000011111010001100000110110111000100100100100010001100110101110110000111001111100010011110011100110011000100010000100101110010100101010100011101001111010001111111000100110101110110001100101001010011000101101011110110111100010000111000100000101010101001111010010010001001010110110101100101010111000010111101110010110011110111101000001001100001011100110000110010101010000010011101001110010111011100100000000101100000111111111010010101101001001011101000101010011011101101111110000111001010011100010000101100111111111111110111001000010011111010100100110101100111100010101000010001010111110100000001110110101101000000111010000011011100010100011111110010010110110001010001110111000110111111011011000000000001000000100100111100110100110101110101101100000000111100100110110111101101011100111000111110100111110001110101100011010111011001011011001010001100011110101010011001111110111111010011001011011101111001010000000011111100101000011111010110011100101011100111000011010000010101011001110011011111001100001111111101010000101001001110111111000000110111101000111001011010110000011101101100001001100111001101110001001000001111011110100000100110001000111001011111111000111110100111000010011101100100001101010100011101100111110010000010111001000111001001100111100111100011100011001111100111111110011100000011011000111100001011001011111100010011111100010101111011000101011010001000110010110001110000100001010011011111000010101011010001010010110111110001011000000111001110101011011110000100011111011111000100001111000011111111010001011111011100110110100100011111000000011000010110011010101001000111010100001010010111000100100001101011001110000111110000111000110110001011100100001110011001111000111010011100001010111101101111100110010000001000010101010010111111110010100010010100001010110011100111111100101110100101001001011011000010001101110011110111111110001111111111001000110010101100101000100000100000001001111100001111000101001001011101000010000011110110011000001101100111111011111110000111101001010101010101100000101110110011001011011011011010110101000001110000111110111011011001000011001000001000011000110101111110111010010011011001110110000110001110001000101111010100101110001111111000001101000000101111111110010011110111111011101010001101100110010101101110010000000010110011001110101101011010001110001110011101110100011010100011101011010010100000011100111001000101010101010001001100011001100110100011110100010000110100110111001010110001011010101110101000110011000010101000001110001010110000110110110110001111110000100101010000111110001101010111011010100011111110000101100000010100111101101001110101011001000011101110111100110100100001011101100001110010100001100101000011101010010110110101100000001110100111101001000000111101010100010111001111011010001001001110000011110001011001000011101100000100110111101100110101001010011111001010111110111001111100010111100110100101110011100011101100110100010000110111101101101111001000101101111100101001010000110110111100000100001000101100000110110000100001000111111000111110001100010000101101111100001111001100010111111110110001001100110100111011001000111000101011010111011110111001110110000010000001101011100001011001000000101110011001100110001011000001110001100011000111100001111011111001001111011001111010001000101100000010110101001011000010000101010011001011110001011110101101101001010001000000111011100101011010000111110011111001010101011010110000000100110010001011101010110101001100010000100110101011101110101000000111111011010110101010101000000010110001010110010011100001010100000100110110101100011110101111101110110110000100110010000011011110111000111110001000101111001110111111111100100011101010001011010111001111100000011010010011101011011111111001100011011010011001010100111010000010100010111011110011010110001100001000000111011111011010111100100100111001000100111101011111010101001111111000110000011101101110001011100000010011011101000000010110010001011110000000100001100110011111101111101101000100111100100100010110001011010100110111100100000010101000111011001010001101011000001001101101001100101000011000001110011100011101000010100000110101011001011010001101101000110010001110000101101100011011100001010010010101111001011001110101110010000111010101011011110011110000100101110001100010101011111000010111110000000111011000110001010101000000101010101111110001010110101011011110111101110100111111110010101011000010110100000101001011111110111011000010100010001100110000101111110111101101010111001100001111011110110101110011011000111100111100101110011000010110111011111110110000001010001011010101011000000101110110010000001111011000011101011011011001011011101 +0000001111011010010100001000000011111111101111101111000110111011011110110111110110001001010100111011011110011110110101001001101111000110110101001011101100100010110111010111001011100011001010111000001000001110100000111111101011100100101100000101110011001000001100011010000110011010111111010111111001111000001010101010100010011101110010101010100111101100101011111101001100011001110111011001001011110011100101101100100000001100001010111001011110111001001110000111110011111111011111011010111000111001100111010011010100101010110010101010011110111001111000111101100011000100010101011001010100110111100111110000111011100010011111001110110110111111110011100110010000111100000111101000101110011000101110011011111000110110101011011100100000001000001001011101111001100010011111110110001000011100111011001101000000110010110011111100100001010011001110100101010101001110101001010101011010001000011010010001100101000001111100100101100101001111000000010111011110000110110111110010011001100010000010110011111010010011010000010001011011101110111000110101101100010010100110100101111110001110001011011000110010100101111000100111011011000001111001000000100111010001011000010010101100010101101111101001110110110111100100010101111110100100010111010111010110010011110001010100000100010000011010000001001100100010011010101001100000000101010001110011100100111110000110110100101010110100010100101110110111010100101001100010000---------001000011111100111100011001110110000110101000101111001110100011110011101011111010001100001100111111011111010011110100011101101010011111000101010101101011011001101101001000010010101100111100101110100100000111110100100111011100010101010111100101111110110001111001110001011000010010101011001011101001000111000011101000110101000000100111000001101011001001010101111011010001001001101110011001000001100000111010010101000100001010111000011111010111101010100001111111001111111110001100111100110101110001001100100110010100001010011010000101110001110111100010001111101100111100010000101001001000010101100011100110000001101111010111001101110011000101000001111111111011000110101111110001011001111100001111000011110101011111100001001001001101101100101110001011000000000011111100010001000101110000101000000100011000110011100100000011100011011100000011101111001010010000010000001111011101111010011101010001011010001100100101100000000101010000100111111100111010011111101011010010110110000111011111111011110010100110100110100000110110010010111111110001110100001000101011111110111101001110011010110010100110111101100001010110000010001011001001000011101010110110111101111101101100101111101111010100000101110010100011011001011001100101011111101101100011011000110100110001011100010100110110011011011100111011011011100000110011111111010110010111101111001100100010100001110110001010110011101101011000001111101000110001100001100011010110001111111110010010011000000001110000000010101010011110101101011000000000111010100011010011111000101010101011001101011010010101010100000000001100011110011111111101100000010001100111011010011001011111111011111011010111001010101100111011111111110011010101001100001001101111101100000100011101001010101100000111001111001101001011100100110010001110011011100110100000110110010011110010101110101101010101110100101100100101111111001111111010001101000001000100010101101011100110010100101001111011111100000011101111010010010011000111010101001000100100010101100100100000101010011110010001110001000100010010000001010101010110010101001010001110010000000110000001110111010111010100000110010100001111110110001110101111111101101100010000001101111011000100111000001001000000010101110011011100110110110001100010111000001010111011000111011100010101000000011100110000100000110011010100110001100001100000001110010111100101110101001000011001011101111111100010101100000000000100111011100011110100011011110000111101110010001100001111110101111000000110100010111010100111010010000111110011000111000001101110101100010001100101001101001100110100000100111110101011101011011100100000011001110110100110000010101001010101100110111010111000101001100101011100001100001111000001101100010011100101001011101100001110101010111011010110001000011110000111010011111000001111001011000011110101100111010001110001101001111101010001000111101010101001110110000001111111010101001011011101011100110101011010110100100010101010000000101010100101011100101001000010001010010111110010010001100000001011001001011111000011111000100000100111000011010100010001100000101011010011001000010111110100111101000010011110000111110100000011101001010111100010000011101011001010111101000100101001000111110111011001111000111011100010010101101101100100010010010001001011000000001101001100110001000111111010110110011010100011011001100100101000011001010100110110111111011000110100100110011100111011110101101111110111011000111101010010101000101111010110000101011101011000011000111001010111000010010110011001101111101111000100000000001110010000110100101000101000101111001001001010100000010110010010010111011111100100011101000110000000011000100110110101010010101110110101111001010010011010101010000110110111110010101101000011101100111010110000010101010000100111110101110010011000111001111101010010011001100101001100111111111011001111010101111101101110101000001011100101010101101110001001111001000110101000000110111101111001100101011111100000100011101000111000110100110010110101101011100001111100010001011011000110101110001011101000100011010100001001010010010001111111100110011100011000010101100110111110011101011110011001001111001001111110100001111111011011001001110110101010000101100101001011011101010010000010101110100101101110111001000011001111101101010111000011010101010001101101100101110000101011101011110011000001100000001111001010001111000010100101001011101100000101011011010010010101010011001110100001110100000000010011111000001011011110000001010011110001101110010110001010100011011010010001100010110011011100101100000000001011111100001010111101111000100011101100101100111101001000111001010100110000000000111110111101001000111010010100101100111010000111011011110000010110110111011010010101010101100101110110000100011011110001101110110001100000100001110001111111011111011110000001010011010100111011001011111001101110010111101010010000110010101110110100101100000010110001001000011110011101010111111000111011111001101010111010110110001111011110010001000010111010010001000001001111001000111110001101101111000010011000011100110111000010000010110011110111111000111000001101110001000110111101110011000110110101010110110011111100001111111111000101010100111010010110110111100011101010100111011101101101101000110111110100110011110101001111000111101111010011001100100101101001101000110000100101111101101101001001011001011100000110011111001110100000011011010100111110011101100110010000011101011101010110110000100000100010111000010111100011010000000100111000100000000011111100101100001000010001010000110011111101100000000011010111001100011001010010000000101001110011100010010111100101111101110010011001100010110110110011101100111010101011111100000101001101000000011011111110101101101100000110010001001100100111111100100000100111100100101000110010001111011101010110101110000100000011111101011110010100011110111000001010100110110011111100101001011111000101000110101101010101001100000011100011100111101010000000110111000001011110101000011010111111101010000011101111011010101010010010011011110010101000110011101111111000001101000100000101100011001001001011110000111010010000101000011101000110001110000000100101001001101010011101000001011110100010111110010100111011111011101100001111101110111010010001111010110010101110100100111010001110100011110101011011000000110010000111100110110101010000011010101110011001011110110110101011001111101100111001100100001000100000001000001101010100110100001100001110100010001001000101101110110011100101000110010100110001010110100001100101111000010010110100101101100100001000101010011111101100011100001110101101101111101000001010001010111110100111111111010010111011001111101100011011010101101101100010000110010011101110000010100110101000001111011110110110001111100111011011100111111000100001100010010111010011110101001000010101001001111100000111110111001100110001010010010101101100001010100111011011110011011000111100001111000111011001110010001111001100110100010010000000100001000110110111011101011011011110101100110100010100011110110000011000010001001100011001110011000001001110001010100011111010010111001110101001010010100110110001111011010001011000101100100101000101101001000111001000100000100011101111110110111110001010001010111101010010010000111000010111011100011010000001011101101101001100011101011110101001100101101000000010110011010011000110111101001011100111111111001100111010101111000110110101111101001111010000000101001000010101110011111001001111100010011111110111101000100100111000111100101110100011110111100110100000010 +ls352msgs +0101101011110000111101111011100111100010001010011111011010110110101010110100111111111101001101110111101100000100010110010010001001000100001011011000001100001011010111000101000010000001101000010010001100111011101011100111000110011101011010000010000100110010011110000110010000000011110110001110001011010001010110101110111101010000110010101001000100100000100010010111111100101111100100001101111000001011101101110111001000010000001110111000011111010001010001100001001110110111101101101001101010100001010011011010011111000011111101100111001000010001011111010100001110000000010010010010001101000001011010100110000111101010100111011001100100010100101010110110111100000100001000010111101111101011110110111100111100001011001001011101010000111101010010010000111000111111010101010100000111001100010111100010100000100100111000000010011001111000010100110111001110011100000101010101100010011100100001110001001011100110100010101001100011101011100010001001100001011100000111000100101101111100111110101011110001011111101101010111001110010101111001000101111101100000101111011001010111100010011111010001000100001101111100100001011001100100111011100110110000011100001010011110111110001110110010100000001101110010001111111110001110001101011001101110110010110001010001101001010111100110101000001001111111001011011101100000110000111000011111010010011111001100101011101100101111010001000110100110010011101001110101101001001010000110011111010000011100101101100000110100000101110011000011000101111011001110111000101101010110000010011110000100001101000001011001001110101101101001110111011000011011101010011100110100111100011101000010010001001111010011110101011110001101101101111010101101000000100110100100100110000101101011010011001100111110010110001001010101101101011101100011000101001011101110000111000101101111000010111101001101101010011011100010010100100001011011100101110000101011001110100011010100011000111011001100010100101110001010011011010000000001010110100111011110101011111111000101000010001000000010010001101100101001000000000101110001101101000000010011100111010111001110000011000111001110111010000010111111000101100011100000000000100110010010110111110001111101011101000010101000111100110001110101101110100111100011010101011101011101001111000000100110011110000100110110001110101101010000100110000000001100111010011010101110011100110000001001010000110010100101110100011011011000111111110111101101101111111000110101100111010011110111111111000001001001001011100100111011001111101000111010111100101000001011101111001011001101011110110001000110101010101001000011100110100011111010101001110001000111001111100010101100110111000101110100011001011000001001001011010110101110101011001110010111110000101010101100000101101000101100100111000001001111100000001010011110010100110110011111011001111010011001011110001011010010100000110000010001000010110000101000101111010000101011000010001111110111001010100110110100010110001101111111100000101100000010001110100011100011111111000011110110001011000101110001110000011011000000011111001100001010100110011110101000100011100110100100000110000101011010000101110011001101101000110110111100101001100111110010111111111000010011010110001000100100011011110000010110100000010101001011111101110101111101101011000011011011111100000000000100011001001110101001000100100011010111111110111010111010000111010101110110000110100011010000000110000110011110101100000010101000110010100010001110101001100000010000101101101000111011111000001010100100101101111001001101100001011100111011001101000110000101011011011111010--------- +0111101011111011101001100111100010010110001001101000110110111110110001001111001100101000011010100100100000110000111000101010001111110101110110100000001001110110101011010101010011011000000110000101100101001101000000010111101110100010000111000011011011001001101111110101101011111100100100011101011101100101000101110010011000100100101001010000001100001010011011100110110010110110101011010110000111000010110101110011100110000011110110111011111101110000011101001001001111110010001110010000010110100101111010101000101100100000110101111011010000111010101110001011010110010011101000011001011110001101000111010001101111001010001001111110000101100011000000111110000010110010010100011100110101101001100000001010101110110001111001101111110101011011010101000000111100001111100000100110001000001010010100001011111001110111111001101111111110011101100111001000010101010001001111111101001001011110000010011111110100010000000110100001000101001001110010001010001111000001010011010000101110011010101110110000110101011010100101101011010110111111011100101001000110011100100011000010110100101101011110011110011111011101011100010010000100111010101001001110011011000101110000010110011010001111111010000111011111000111101100001111001110111011101010101111111110011101011011011100011110000100111100101000010010100000001000010110111111001001010110110100000101110010111011001000110110101001000111101111000110101000110001100000101011110000000100001000010111010001001001000111111001101010111111001000000111100000101111111101101110010010101001110000011011010100101000010010001011101101000001000011010101000010010111101010110111101110101110001000100000000110111000000001001111010000101000110001100110100000110100110001000111110110000001101001101000101101101101101110110001110101001101010000101011100101001001011100011001001100110011011001001111011110111010000111000101111010100001100110001101110110110010010110101110010011110001001010101100001110011000101101000001110001001100111101110101000110111000101000101100101000011111000111110110011100011011010110011101100000111100111100000111100101111111111100110111110010001100001011010001010101110101110010111110010000101001110110010011010010010111101001001010011111110011000000110111110010011101011010010110101011010111010001000101100010110101110110100000111001111000111010010010011001010000001110000000000001010111001110110110100010000101000011001111101010001111111111011001010011111100101011010000101101111000110010000011110010111011110010100010000110100111111100000001101100010111000110000100011000100110000010111000111011000100011111010111110100011111011001110010010100011111010001100011011101101100111000101111110111010011101111010000001000101101001100111101110110111110010000111011111010101110010000101100110011001101000100011000111010110111011111011001111000000100111011000011111110000000010000000000000111111011100100110011000001100000111111010100101010110111100000110011110000101101000000100000011000110011011101010110100110110110001000100011110110111111010011011000101101111000001010101000001011001011000110100111000000110010010011101100011000100110001100001010011010101001011100111001111001110101011110010001011010001111111010111110101011110000010000101111010001111101110011001011001101000000110100100011101100101111110001010001001101010110000101001001100001111000010011110001111000111000101100111000000111101011001100001001000001011011111110111010010000010011000100100100010110001001000111111000011111001001001110111100011101101010110010010011001000001100000001011101111001110001111000110--------- +0100011001101111000100100010111111010110100011010111011101000111111100110111010001110100101101001101011010101010001010000010101010000101000111011000011001011111100010110000011000000000111000100000101010011001000110011011011011100110110011011001101000111100001010100101110010111100010001001010101101000000111111000101101011000010010010111101100101110110011100011111111001111001011110011111110001001110111111010111011000101110111101011011100001011011100101000101000010100110011010101010111001000010110010101111000111111101010001011000000100110001111011111011001011110100111111010110100010011010001111111011111111110011000110111010110011100100111111111110100101101110010100100111001000101010000001000100110011110001011111100000100000011101111111111001110010101001100101011110001001100110000101110000110111001101100111001001110000110000110011110100101001001010000010010101100001110110111101001101011110001000001110000011111100100011100000000000100111100010100100000110100100110111110101010100111001010101001010111100111001010001100000010010010100010000111010110100111100111110011011011010101110011010101000111010101011101000010101100000001011000101110001011101100010101001110001100010100011001011110000001111001101011100101100000011111100111011100100100001001100111100100001000011100101100101011011010101010111011010001011111101000010110100101101011001000011011011001101101011010101000000110001110000110000000011110011000010101111110101111110010000010001000010010101010101001011111001001100101010100000100010111101000100111010101111110111000111011010100001110101001011000000111011000000010001010011011111101100000100001111000000101011001110011011000011001111001001100111100000111000111011011110100011100111111010011100001000011011100001100100011110010001010110000111110000111000010010101100011010001011010011011001001101000010111100001100101100110010111111001111110101101001011101100101111101100100011100111111110000100000000000111010110010000111001111100110011011111011011001001110011001111011111011101111001000101101111101001010111111110101000100110000000001000100111110010100101010000111010101110111011011001100100001101010011010000010000001110101111101001000101111100110001110000111001110110101110110000101001101000100100010010000101111010101001111001000010011011111001100100100111010110000001001110100101101000010001101110111001101001011000010110101001011011001100000010000010000100111111111100111100001001111110011111001001010101000000100111100000111000011100011111011010111011110011101101110101010110011110101111001000001111111010110011111010011011000110101110001111101110010111010001001100000000100100011110101111101010111111010111010001111011001001111100111111100010110100100100000100111100110101011000000101100110100110000110110110101111000101110101001101001001111101000010011011110001110000110010011101001011110010110101010000111010111110011111111111100000000010100000110110000111011010110011011110011001001110000111101111010111000101000111011001100011100100011110110110001100000111001111001100111101001011010010110101101110011110001010111000001100111000110111000111000101000000101101011111101110101110000110100100101111110101000000101101110011001111001110001001001100101101110011010100100101010101011111111110111111010110010001100001110001100100001111100110110111000101101011110010000001001100010100010110100001111100000111010101010010001111101110011011110101010111110101001111100101101111110000001111011011111010001100101101011011010001010100000010011010101111100011000101100101100000000000001100100000--------- +1011010010011110000000111100010111011000001110000101000011100100001000101110100111011110111000000110110101000011111001000011000001001110011111010010000100101100110110010000100010001000110111100110101111011100100010110000101110000101100110010000100110000111101110111111101001110000000001110010011000010001101101101001000110111100000011011010010111011111010001000100001111010000101100011010010111011111100010100111100000011111011110010001000000100111001110101010101101000011100110010110001111110111101000111111001110110001010000001000100100010001111000010100001000111000101000101010010100110011011110010010101100001011000101100100001111010010000010001111001100110010100001110000011101000000100101111101001010101100111001111100100011011000011001010000001111110010111011011011111011010011100011010110011111110111000101011111101111011110011100001110110111000101000101001001011100110111000100000110011011000111110001101101011101110000111110111111001110100000001010001111101000010001110111011100111001000001110001111010110001000110111100000101100110111111101011111011101001100010011100010101111000101111011100111000110101101100110101001111110111111101010101111011000111101101000111010000001010010101001100110101111011011010101101001001000101010001000100110110111100000001111001101010000111001100110001000110110111001100100000001111010100011011110010001000101100110110000000111000111101010110111111010001010111011010000000100010101010110100011010111010001010000100011011110110110110111001110111000011101110101010101100010101101000001000001110010111001110011001010001001101101000101101101110111101111111000010001001101000101100101001111110111001100111101101010100100111000100000000000010010011111001011111111010101000000100011101111001110111101110100001101110011000000000110110001001100010011011110101010001010100101100100101100010011111110011000101000000111000111011010110001001000100011001010010001110011111100101111100010010100110111011111111001010001100011011100110100000110110011001100110010111101001001101000110100010010010000010100101010010001000111001010101011010010101010001011110000111111111010101111000110101000010011111000100100000011011101001011000010001001010010011100011000100100111011000000100100100011110010101111100101001010001010101011001001101110101010001101010011100111110101001101001111111000000100010000100011000010011000010111111011010000100101000011110001101100001101111100001001110111111001001111001010000010110100101011110001001000010111011100100011011011110101101001000000100101001111100111011100001001011000100011111010110111001011100011101101011101010111110010000101010111100100101110000011111001011110010101010000111000001100110011110011000100011111101100101000000001010110101110000001010110010101100010001100000111100111001101001110000011001101000111011110110000111001110101111000111110010100011001111100101111010011001010100110011010011000110100000000100110111111010000010110101100110010101101111001111011110011011111000100100010001110000110000110001110111010000101001010101001001010110000100110010100101110010100000110011110001000101100100111101100101110000010001011111001111001000100011010111110001101000100101110100001101011000011010011111111010011010110000100111110000101010101001001101100000101011011010011100010011101101100101101111101000011101110111101000011100010111011111010000101101001000011001001000011010010000110000110000000111100111111110110110000100101111110101001001111100000010000111110100000011100000100000111000011000011110000001101110111101111000010100110011111110101--------- +0111111110101101011101100110000100010000100100011111000110100001011010111001111101001000001000001011100011111100101100001000010111100011001100010001101010100001110111100000101010011111000000001100001101100111110111100011100100011110110010000111010011111100000111100010110101010101101000010111001010000001011011110100100110010000000001000100101110001001011101011010110100000100011111110100110000000110111111100111110110001100010100000001110010011110111000101111000100110101000010000100111110010100100000011111100000110000011110010000111110001001100101100010000111001010110101111110011100001101011100110100001110100101111011111101111110011110000111000010011010011111011000010010110001110100100011001111010100000100100000011010110010100011011011010111011001101111011000110111010000011100100101011100110001000000100000001110101010100110010100010011010101011110010001111101100101111110100010110110011010000011011001100011101001010011001011111001110101000000100110001001101100000000001111111001011110111000100111011000101110000111001001110011001001001010110101011001111011001011000010110110110101111100011000100101000001111110010001111011010010101110100010001000001001011111111101111101000101110100101000110001101010101101100000001110001011111110110000010101010000011011111111000111111010100111001100001110110110110010110110111010100010011100000011000010011110010110001011000111011101010011010100011010110111001111001011011000001000000010110110011000110011101111001100011001101000101000100111111110111010100011110101101010011110110100101110000001101000010010010111000110011100101001110011101010111100101001001100111100010000111000000010101100010101010101000111111001110010011111011100111010000100000111000011111001101101001101111110000110010011101101101010101100111110011100010011011010000001100110100100000000011101010010110010100111001011100110101111000001100000001100100000100001000000111010000010010100000011000110101000111111111000100001101001010111001101100001000110001011110100001010100011111001001100100011001011111100111110010101111111001100001101100001010101110111001000011010100001111110000111001110010001101001000100000100100011000101000001110001100100101010001111011000000100111101101110111001111010111001101101100101101000101100000010101110000110100001000100110100001100111110001111101101000110001111111101110001100110100000100000100111100000011110001111001101100010011110011001101001101011001010010100000011101011001000001010011100000111010100001001001110000101100010001001000100011110110111001010001111010111001101110111101010110111000010111010001110001110111001111011100010111101100010111111001101101011101110100001111111110001111011100010011100110010111101110000000100001111000101010011100001011000011111010100111001100011111000010010010011100110100011000100000111010000011011111010100101100010100101100100100111011110111110010001111111101111111010101101111001111011111010101100011011100000011011010001000011100001011010001001010011101001011011111101111101000010000000111010100011111000111000010100100001111100000001111011001100010001001101011010011000101100110111100001110011001100100001001000001100001100101101111011101100111101110011101001100000101111011000100110001001011010000000000101110011110011100110000001100110100001111111010110111011111100011011110100101111101111011110110100100001100101111100011011000010110010001011001110101100011110011101001011101001100110000010000001000101100110111110011001001011101110001111010110111011000011101111011010100110111110010101100001100111101001110110010--------- +1011110010110000000110000000001001100000111010101010110111001100010001100111100111010100101101110000111110101001001101100000001111010000001111001111110000100001100010111100010111011001101011001110101110010001001000100100110011101010110010000000101110011010000100101001011001011000000010001011000001111010001110111000001000001010100000100001111111101010111111100011110101111010111101000001001011001101100000011101001010001101000010101100010000111010101001101110111000101001101011101010110001110010101010010100010000010010000110111100111100011001010000101101100010011110110001000101000100010111100111000111011101100011001010100101110101010100110111110001000100101011101100001011101011000000011100100000011010101000110100000110100111000011100001111010100001011110001011101110101000101001000000110000000111011000100010110111110111001100001111001101000010000001011101111000011110110101011000101010011101111100011000110001110111100001001111010100011100101011101010110100110001111111001110001010000011111001100101110101001010100110010110100111100000010000010011010101101111001011110100110110001100001110111000010101100101001111000111100000001101001111010100100111011011011010001100110100111110100111111011111010011001011000011000001000001011101111111000101110001001101100000100100010101110000110011010101010001111010111111011101101011110001101000001101111010111001100110001100100010110001111011110001101111011101101000111011111010000011001111111100001100101000011111110001110111001011010011110110111110001100011101000000100001001000111111000011001110101101101010110110000110000011111101101010101100010111111010000000100011000011001001110010100110010001111000110111111110101100011100110001101010111111010011110001011111010110001010011000010110111010110111110100100011001011111101101101111111110101100000001000100001010010110111100010010111111001101110110101010010000010000001011100110101111000100110101101111111000001110010011101000110100100000101111001011010110011010011010010011100101110000011110110111100000001000101110100110101111100011100101111101100011001101111000000011000001000110111011001111011010100010100100101101000000101011100100010010110000011110110100100101011101111010111110000100001010010010111100111010000000011001010111110101100011011001111111101110110000000101000111011010111010000001101000101101000100011110010100001111100011100001110000010100010000001100101011010111000000010001010110011110000001100000111110000011110101011001111011010101100011101101101000100010101110000100101010110110010011001100101011000111000010100101001111010100010111100101100101100110101110000010001110110001101000000111000111000100101100001011110011010110001100010100110001111111110111110001011000010100101011001110100000011110111110001111111000001001100011110101011110000111001011110001000110101010101001011010110001110001101111001000110100101000011111000001001110111110001110010011110110001111010101011110001110101000001101010001110000010101010000011010101101101111000111101000111100110101111011010110001111001100111001010100000110001111000001010100010101001000010000111111011000001011011001001110101110010100101111001001000001111010101101000110110001101000000100001100111000100000010110111010000111010100001110101001101000011101110100010010110010110011011010011010010000011010110000000010110110111000010110111001111101001110100100100100011101010010110010011111101001001001010100111110100111010010110011111000101010110011100011000010100101111010000101010110000111001100101101100011000011010011010100111000011011000001001--------- +0011100011111011111001010100001110001000110100000001010001110110011000100110010010110111001110101011100000100100100111101111011101110111111001101001001101100001000010000101001000100000010100011011111010101001111100011001100101110001010111110001000011101110001011110100011000011011111100011011111010001100001100100001000000000111001001011010110110100111000100000100111110001001011001111101100001001010110101101001101110010110011100011111111000011110111010000001010011001011011101100110010011010000101010001011010000011001100000010101100010001111001000110101100001000010000010001011110100111000110001101010011010111111001010100111100001010100010010100000101000101000010110001000010010111101011001101001111110011100101010110011111100011110110110111111100000000111101100011011111011111100100111010001110101000101100101000010101110111000000100000101101100010001001111001001101011000010100000101011000001010101010000000011101100110111111001111110110111101000110111001101000101011011110010111111110001101101000111110101001111000001010101100010100001110001100011100010111100001111111001110001111111100111001110100000001101100000010101100111100101010001000011010100001110001000100010101111011101001110110100011100001000000101011100111101110010001000110110110000000001000100011000010110001101110101111010000100100111010001000010000100111101111010111011110011110001010100101011011011100000010000000101001011000001000000111110000000110101011101111111111000100001110110011110101000010010000000101011001111101011010010110011010100001111001011000000001010111101010100100001111011001011001010110110110111111101000000110011011001000101010000111010111000100000010111111101101001110111011111101011010101011001000100101001001000101000110111001000000111100010110010001010111111000011000100101001101110010100111100010101101101001100100111101101100001101110101111000110101011001110011110011001001010010101110110001101110011101000110101101011101110000000110100010010101000100101111110110110101010000001100000100101010001101111010010000111100011011111111100000111000100010000010110110010111101100110110011010000011011101000011011101100111010110111001010010010000101101100011000110001010101001000011101101001000001101111100001111100101010011100010111111110000111100100101001010100110010010011111100010110011100111010000000000110001000101111111110000001001101010101110100101001100000100100100110010100101100010111000101011001100100011110100110110110010100011000100011001100011010111101000011001100000000010000101110010011001000001100010011001000100101010101110110011000110110011111101011000001111111001001101101010110100010100100000000001001101101000001000101111101001001001111110100101000001000101000010110000010011101110111000010000010010010010111011000011000110111100010011100000000000001110111110110111100110100101001111000011001010011101011111110110110110100110101010100010111101011010001111110000101011011110011001011010011001011000101110010101101000001100111110011001000001000011010011000001011000001001000100010111000110100011000111010110101000101100011010111111011110100100100101011010010110101101011010110000000001111110010010010101110001110101000000001110010010001001010110001111101010100000100100011011101100100011000011111010110001000101000001000110001101011011111010010100111010110101100001101011110100010100000010001011100101101101101010011011110110000001111111101111111111000001000000000111100010001110011100110110101100001001101111010010010001110100111100000000001011100111001100111110111111100111001001101000101110111011--------- +1100001110010101100110101101000100101011101100001011100001101100010000110101000100011001011111100100001101111000000100101001010101010010000100100110011011010001110000110001110111111111001101001010010111010111101110011010100101010000111000100011111010001100100100110100110101111001000110011000111111101000101101010011110001110100000001101011111101110101100101101001111000111001000110110111100001111000111111011011100111000011010101101010010111011010101111000011011110100000000111110101011011101010100110111101111100011000000100000000001110110000110010111101111111111110111100101001001101010010111110001111001101010101110110001101010011001111100111001100101100001011000000000011010110010110001011001001001000000110110011101011100101110101111111011101110111100000111100110001011011010011011100111100010100111001101111111010111100110100111001100000010100001101110000001101000111011111010001010100101100001100000001000100110111101010100011001100110011000001110110010000101011100101001011011011001000001010110011011100111011001000011000011011111001101000101101110100000011010101001011100110001000100010010001111011010011100101111101010001111000110001011011010010000000000100011101100001010110000001100111001111000011001000000111110110111011000110101110010001100000000110101110010010001011010010111010110111110010001111000100101001101100100011011110101111110100100100101101111011110110010111011011100110000011001111100010110100100010001001011101011001000011100010000101110110101111010101010000001011011011111100001001110000101101111000110101010001110100000011010001010001101110010011000101100000101011000100111001100001000010011101110001101010101010000111001000101100111000110101101010000100001010010001101100110010100000011000110000100010110100110001111010011100101110111111111111000010111111000001001000000110110010001110100101011010001010010000011110000101100111101101101101111001100101110010010100011011001111001110100101101001011111011111001100101001011001010000011111101001001101100001011000110011010001010111111010111010100001011000001010110011010001000100010011010001000110000100011000100011001010101101100100011101111101001101110101011011000100001010011100001111101011011011010100011011000000001101111100000001110101000010011000111001011010111100110101110000110000000111110110101011010011010111101111001110011100011110111100110010110100100100111000111111110000100010111001010110101101011011101101000001011110111101100011110000101000001100011101111010000000001010010111110010011010010010000001000110011110101001111011100001110010001110111000001000111011111111110101010101111111110101100011111001000111110101100111010111001001001001010000111000100010110100111110110110010011001100001011000110011101001011111101101100110000000100101101111111010110100100101110000101011000111111111110011111000111101010100110111010000101010011011111100101100000000001000000100110111110110111101111110001100001011010110111101111101001101011001010010110100101100100010000101011110001100011010110100011101111111001110001101010011000110100000100011110100100000000110000111000010010101110001100011011001101100100101011111000101000000111110100110101100000001010110111010100111011100100010100001101011101001000010100011101110010011100001111000000010000010111100100010110101100110100001010100111001111001101110100110111010110001001111111101100111101011111011100110010001011101100100011010111111111001010100001001000101110100000110110111110001110111011110010110011111100111101110110010110100011011101111001101011110100000111011011001010110--------- +0111011001101111110110011110001010111000111100011001010111001110110100001011010010100000010010010100100100110110000010110010100111110100001100001011011011111100110100001100110100010110001001010110010110000010011001110011111011101010100110110000000010000011111100101101011100111111000011000101001001000010110111110001000010011101101110011011010010101101101001010001101001001010001000110010100000110111011001011010001011001101011111001110111101100010101101001110010111010000011111101011111100111110001101001010101011110110100010100111001100000100011101011010101001011100001010010000001011011110101101010001001111101011111101010011111001101101001110100101001111101010001011011100100100010100010100010011110110100111101010110011100001011111110110101101011101101110100010000100111100010101001000101111111000001001001010010110110100101000100100011010011001110101110000111011111110111010001010100111101010000101101010010001011001000110011100101100010101110110111101110010101110110000001111000101110011011111111000011000111100011000111001001010000111001011010100011111001000111111100100001010000101001101110001011000011101110100011111011000010010001111101101100110010111011001001001011001110110000011110000100001011110001100011001010110101100010111010110111000100010000011001011011000101000000111010001100011000000001001111100001110111000010000101101001110000110101101001111111011111100100111111001101000111001011000111000010101101110011111100011010100001101011110101000011010101011111100100010000000100110001001010100100010110110001110110110111000110110110001101100110100011010001000100000000111010011101110000100111101001110011100110110010110011100011111010001010000100100100001011100000110011000100000011011100001111100110001000001110100111101001111111101110101011100101000101111000110111110000010011010010100000110100011010100010110100010101100101010010101100001000010011110001111110001110100101000000001111110001011011011101110100100010001010001010010111000011011011000001100111011010101010000010000101111111000110001101111111100011010010000100001100110100001101111111000101110111111100011010110000010001011011111111111010111001111001101010110100101100111100001010110000000110010010011101001101111011100001111110100100101000100110110100111111101110101111000110001010111111100111001000100001101001001001000010110100000001010011001100010000110110110110010101000110010000000011000010101001010100010001111001110100011001111110000101000100011001001101001010111001000100011101010010011001110100111001001001001110110100000111010101110010110110010010100110101100110010001100110100100101101010110110100000110001000110011100001101011100000000000110100011100011010010100110100010011100011111011000111101001101101100011111101001100010011101111011111011111100110110001101110010011111101110100100000000110110111001100011111101100010110111000100011011101011010001110111111110000111100101101111001011010000010110000010001011001010011101001011101010011001100101111110001101001001001010010110110110001010001010111111000101111110101111001000110011000000000001111100110111000110111101101010010110000000110011011100010101100010101110010001001100010011100100001010011001101010001111000100010001010100010100100101001001100101010011100101101001010011101101000011110111001100101011110100011000101000001011000011000111110101101111111011000100110000101001101100101110011100100100000001010110100000000000010100001000111001111001011001011000010000000011001011111100110001101101101011000110100110110011110101011011110111010101011100111101000110--------- +1100110000000011101110011011001111101010111101101101111010110111101000111000010001100000101010001101101111011110111001000110100010101101001000011101000010010111110100011101111000111100101100011110011110110011100010011111001110010001011011111110001000011100011010000010011010100001010110011110001011001011101011101001001110110011100111001110001010111010101110011001100000101100111001010110000101100010011010100000010001101110011110000001100111011111000010010011011001010100110000101000011001001011101010110000011010000011010100101101100110000010010110011001101101111000000110110110010011011001001110101001110011000110101111100111111000010110001011000110101100101010111000111111000111011000000100101000100010110000110111010101010000111100001000001000011100100101101100101110110001011011110111001110110101100111110111100111101110100101101101001011111001000000000111111010000101110111111001010000111001011000010101111101110000011011011110110010000011001001010111101001011000010010110000100000101100011101100001001001100101101101011001000010110011100011101011101011011101111001011101011110111110011000000001101101111101111000011011000100101011100111001001111101010111100110101110001111111011010111010010001000000100101110010111001101001000011100101010011011010111001011111000010011110101000001110100111110000111001101100010111010101000011010110011000100111111111010101101101100000000100101011100100001000001101110000111101000100111000011110010001011110000111010110100000010011100111111010000010001011010101110111001101100010010101000111011111010010101001110001111111101001100011000110001010000001000000001100011001001111110001010011010000101001010001101010000000111010011110100001011001101100011010111010111111001010010110001000111001111100100101100110011001101010111100001011110001101100010101001100011000110001100000100100110001000111110010101111110011010010111011101000001101100100011101010111111010101001011111111011100110001001000100110010011001000000011111110111100100010111000001001101001010010101000101101000100011101011000111101111111101110101111110111111111010101010100001100010100000010111110011101011001111101001110110111000100010011011111111011011100010011011000101011101000000001001011011001111000110011001100110010110110100111100110011110001000101110110011100111001010101111011111001110110101111110011001100010100100100001010001100101001100101010100011010101101001000110000001010001001100100000000100001100111010101100010000101010110111110000001110001110110000001010100101111110101010010001010101100110001101001000100010000110111011011111011000110001010100100100100001000101000101011111011001011001101100110111010100011000111101010110100001111000011100011001000110000001001011100111000000111010110101001110010101101101101001100101100111000111100000001001001101011001001001010000100010110000111000101001010111100001110111010110101101111110010001010101100001010101100001110100100100011110101111100001011101010101000000011000100011110010010000100010010111100101000000010100011100101101001001101101000011111101010110101111100101101111011001010011111101110001010110010010010101110010001011000100111101101000010001110110001111111100001010000101010000100101110011101100100001011110010110101101001010010110101011100001010111011000011000011011011111100011001000111011000110010111001111101110000001110000101000010111111001010101011000100010011110000011100000111000011111110100011001110011111001000000101101000010010000101000111100011101101001011000101011010010100101010101100001111001011100110101001101101001001--------- +ls352cwds +00001011001001011101010000111101010010010000111000111111010101010100000111001100010111100010100000100100111000000010011001111000010100110111001110011100000101010101100010011100100001110001001011100110100010101001100011101011100010001001100001011100000111000100101101111100111110101011110001011111101101010111001110010101111001000101111101100000101111011001010111100010011111010001000100001101111100100001011001100100111011100110110000011100001010011110111110001110110010100000001101110010001111111110001110001101011001101110110010110001010001101001010111100110101000001001111111001011011101100000110000111000011111010010011111001100101011101100101111010001000110100110010011101001110101101001001010000110011111010000011100101101100000110100000101110011000011000101111011001110111000101101010110000010011110000100001101000001011001001110101101101001110111011000011011101010011100110100111100011101000010010001001111010011110101011110001101101101111010101101000000100110100100100110000101101011010011001100111110010110001001010101101101011101100011000101001011101110000111000101101111000010111101001101101010011011100010010100100001011011100101110000101011001110100011010100011000111011001100010100101110001010011011010000000001010110100111011110101011111111000101000010001000000010010001101100101001000000000101110001101101000000010011100111010111001110000011000111001110111010000010111111000101100011100000000000100110010010110111110001111101011101000010101000111100110001110101101110100111100011010101011101011101001111000000100110011110000100110110001110101101010000100110000000001100111010011010101110011100110000001001010000110010100101110100011011011000111111110111101101101111111000110101100111010011110111111111000001001001001011100100111011001111101000111010111100101000001011101111001011001101011110110001000110101010101001000011100110100011111010101001110001000111001111100010101100110111000101110100011001011000001001001011010110101110101011001110010111110000101010101100000101101000101100100111000001001111100000001010011110010100110110011111011001111010011001011110001011010010100000110000010001000010110000101000101111010000101011000010001111110111001010100110110100010110001101111111100000101100000010001110100011100011111111000011110110001011000101110001110000011011000000011111001100001010100110011110101000100011100110100100000110000101011010000101110011001101101000110110111100101001100111110010111111111000010011010110001000100100011011110000010110100000010101001011111101110101111101101011000011011011111100000000000100011001001110101001000100100011010111111110111010111010000111010101110110000110100011010000000110000110011110101100000010101000110010100010001110101001100000010000101101101000111011111000001010100100101101111001001101100001011100111011001101000110000101011011011111010---------100100110000110101000001001001101001000100110000001100110110011111010010111011011010100000001011010011100110000100100101110010100011001000000000000100111101100100011010001000011000110110010010111010001110011001000101110011010000100110011100000011011011111100100010001100100001000000010100010100011001010010101110011111111011100100010100011001000111011000100100101100101001100011010111101010011010111010001101010101111010000110100110101000000000110000100010110101101001001000110111110110100110001000111010000001000110110101111011010000010010000001010100001111000011100010101111100101000111100111110001110001110101100010111111111001101011110110010100000100000011100010101000011000001000111110000111011010111011011001101001011000010110110000011101000110001000001000111101110001111100111001101000001100111110101100011011011101000000011101001011101011001111010110000000111000110101101011111000111111111111111110010010110110000101100111101000101110111000001001001000011101110000110100111101100011100001000110000011110101010010101000010100010011101110000001011010000110110011100010101101111110011000100111110001110011101111001011100011100101010110011000110001001110010101101110000100001100001111110011001100101000000010110010110111111100110001100100000101100100011011101011010000111110001110001000010101001101000100000100110011001010101011111100010111011100001000011000000111101001001011010110110001110011001000011011001100011000111110100100101000111010011011001001100101110001011100011111111110000100101100010001111110111110011111111110000001101100110000011111111011100011101101100010101111100011111111000010010111001110001101110001110010001001011110111100010111110100111010110000010001010001111101010101100011001111001011101110001111001101110100101001100101010110101101011110100110101011111001010100110101111000011001001001110011100001001000000001010110101010100001001101011001111110101111001011000010000100111101111110001111101000111001001110000001110110110001110000110011100001010001000110111100010000111110111010001001111001110000011000000001011101011100000001110011000100010111000100000001001101100001110110001110100010000100001000100000010000100101101100010011000001111110100011001011011100010010010100011101111111101001111110001010000010010010101111000011011101110011010100001100000101010100111101101010000100100100010000011011011100111011100010110101110010011110011001111101010000100010101010101111001101111001100010110101100000100000010010110001011101001000010101010010001100100010010111010010000001011110100000100111011011110100001110010110100001000100111110000100111010101000000100010100001001010010100010101110100100001111001010010111000100011011101001000011001111111101001101110001111011111101000110000000111110011010001011001001010111101010001000001010110010000101010101010000110101100000010110010000111101110111111101100101010000111011100101010001110101110001001111010000010101100011011001011010111110111100001000100001010101111101111111110110110110001111010000101001010110000000111110101101100101011101101100111101011110110110100010110100011000111001001011011010100001111100000101001011001001010100111111001000010110111111011110100100110110100011100111110111011100000110100111111001011101110000110010101011000000101010001001011111001001011110001111110110001111110100110011101010101100010110111101000100101011010100111011100111111101001011001111101100111111011110111011011000000100110000101001100010000101101010101011110101011011001100111111100010110110010000011010110001011101111000101101111011110111111001001100011101111011100010001111010110000110011011001001110111011001111111001010000000110010011010001110000001010111101111001111111010011010110001111011010100100001110001101001110000010010100001100111010000110110111110101110111101001000010111100101110111000000101011000101100001100101011000001111000101011011110011001101000110110100110010100010000000110110000100011101110101100001001011111110011000010110011011010101110111111010101011110010111111101000001111001110001101100100101011100000110100111101011001010011010111100000111001010111110001110001010001000100111000010100101100010100110110111011001001100000011101111010111010110011010100101010110101010110010111011000111000100000101101011111110111000111001001100000101010101110000000001000111001010101010100001010111100000100111111011111100100000110111111011111111011010000111101010001011101111010010101101111010001010111100000100100111001101010111010111100110010100011011011110011011100100111011011001000110010001011110110111000110011001101011010000000011001000001000011110101111111100101110100000011001100001110010000010101000001110100101001111000000110100100010110101110010100000110110011100000010000111101001010000111100010000001101101100000110011001101000111000010101000011001000011010011101001001111111000101011011001000010010100111100001101010011001110100001111111011111010111011010101010100010000111111001111111010001011001000010101111011100010111011100000110000110000011001000000011101111101001010101110011011101111000101101011100101011011101111111011110110111111111111110110110010010111000011110100011101010110000010111001000011000011101000111111000100111000001100010111100100110110000111011111100111010100001101010000001010000111001010100101111100001010011000000010001111011100110101111100001010111110011110001010001100110100100000000000000011110101010101000101110100110110001000010000001110110010100110000010101101010000110000110010111110101000000010011100000000010000111100001010111101100011101001001101000010010111000001100011101010000111011111101010001100111000101011101010101011001111110100010000110010010110110001110111100110011111110100101101000011001101011000111000111101010001010000011111001010101001100111000101001110000010001010010101101000010100001011001100001000100101111100100100111011100001100010100000011000001011111101001001000100111000000001100110110010001011100110111101111110110100101100000101100001001010100010111111010101111001011111011111000100010011111001101110100000110100101000111111011101110010111011010110100000111001101000110111100111111010110011001101100001111001000001010010110111011110101000000011000011100001000111101111100100100011111011010011101011111111100111010111001111010110001011001000000110111011001100001100101101111010100100111100101101001111010111110000100001000010011000010101110111111110011100101101110110011011001010100011001110110110100010011101000010000010000100000011001110111010001001010000000101001001100101000001010010000011000100001100000001011011110001111000111011011001011011100100100011011010010111000000000100101101100011111011101010101000011001000110111101110001000010000100111011011001111111100001100000010111001010000011111000010010010111101101000011101101001111000111101101111100111110111101100101000001100000110111101010111111100110110001100100100110000111011110011110000010100110111101000010101000010111101101111101101001001010001101111001001001000110011101111001001110011001110011111110010100101000000111110001101101111000000001000100101100110100010001001111001111000000100000110101110110100000100110011011101101001101010010000110100011100110001000000010010101010010101010011010111011101110000110000011111111000011111111101011100011100010110000000010000111000011001101101110001010110011010011000010111110011010001111101110001001110011000010001011101011101011010000101111110000110111100000000011101011010101011001110111111011001011001110010110100101001111101000001010011001010010100000001100111110111101100100111101001011010000001000011011100100011001100010001000010011110000100111000111111001011100101001110100101101101100110101010000110011100001110000010011001000100100010101000101111101111001011101100101010001111110011001101100110100110010010001111001011111100010010101100010001011110010100000111100001111010101001110100000010111001111010011001110010000111101100100101101110000111111110001010110010000101001111011011111101100111110010110011010010010011011101101110101010111110111100001110011001011000000010100010110011101111111000011111011001010000110111000110101000110000010111001111110100110111100001001101110001101101111101001010001011000101010101101010111011110110101111000111101001110100101101100000011001110101111111101001001111110011101000100101100100111010011101001100111001000111010000111101011111101001010100110110010101100010101000100010101111101001011110110100110100001010110100101111000100001010000000001001110100001000001000010101100111011111110010110001110010001001011011010010110000010100111011010000001001111001101000010010101110010100001011010001000011111100101110010011100011011011110000010001000011001101110111010101010001000100010000001001000110110001100010101100100001100010001000110110111010001100001011101101101010011111010111111101011000110010110011111101011000000111100000000001001111010001100100000110010111110101100010001011011000000100011101110101101001111011010100101100010011001000101110110011100110100001000010010001101010011010110000011011011000111000011110111110000000000100010100110110010001010010100010000111001110010101011000000101100000001100110011010000000100101101101001000001000000001010101010010001001010101011011000001011001100101100101001001011000010001101100110100100000010110011011110011101010101101011001010011001110000110000101010110110100100110100100000101001111011010011101010011101110110100011010000111000100010110111001100111101011101011110101111011101001010100000000100101110101001010111100001111100010111000011101001000101011000101001100001011010101011110010111100000111000101100101001111011111011001110001111010001101100010111101001010011110011100011111100011010111010000010010010111101110001111110111100001100010100100100001110101001001001110110000101110110101001000110101010000010001000000000001010101110111100011011011101010100000001110111100100010111000001011010111101101001010001000011110001000001100101110110000101111010010101000111101101100100101111101100000110100101000001100111101101011100000110110011001011011001111001011001101011101001100100110111001010001100110100110000100101001101010001011011101010000000100011011100110100111101101010101110001000010001100001011000011110011110111101011100011100010001011011010011101011001011100111011111101110000101010000101011000101001000110011010111011110101111011100011111110110001001101100010010110001010101010111010110010000110111010100001011001010010110000110000101101010100010001010110111001100000011110101101011100001111000110110001100010001000101010111010000111010110011101000100000101010110111101011110101100110100100111000000011110010111101000111101101111001110010001000111110100000110101010100100101100110010100110100010101110110011100011101001110101000011000000011011000001011010000011100010100000110011110010010110111000000010100110001110000110011010001010111110010100111101111100011110110111101000110000011000101101101001000000000010101110010100010110001111111111010000110011011101100001010011011101010110010000110001111101110000111010110101000010101111110100000110000010101100011000001001001010000101100101011000110100110110100001100010010010001101001101001101110101101010000110101111010100101001011011110100110101100011011110001101101111110001001100010011101100111011110001101001100110100110110000111110010001110100110101111110000010000010001101010100011001001011001000101110010010011100001110101111000001100001101010011011111001001110010100000001100100110010001110001110110001000010010011100101001010101010110000000111101011111101110100000000000000011010101101010111000100010010000110001100001001011001111111010010101010111101010010101110011101110001011110101110011101011001010010101100001100100111010001110010111101000010111011010000010111000000111110100110011100100111011010110110000100011110110010110010011100001010101000100101110110000111000000000010100100100111110010101010100100000000110110011001011101111110011001110110110100000101101111100010100101011010001011101010001100111010010000010000010111001001111100000100100011101000001111111101111000110111010011010000110110100101000010111011011111011001101001011101011101000010001000100101011000111010010001011011111100000101010101011001000100101110110111100010001110111110111010000110111111000110111011100011110111011101111010100010001101000011000110100101011010101111100011011111001011010110110100001010111010100111100001000010111111101011110010011110011101111100101001011101010111100101011010010111110111111110111010000000001011011111011001100010000111000111100001110000100000101001011111110110011010000110100000110000111001011100001100111000111110110000111110011010001010011010000010001000001111011110011001100100000011001011001000011111100110101101100101110101001100101001110100011001101110011111100011000100010001010001001001000101011110000010110000010100010001001110111111110001100101000101110010101110011011110110000111110111000010001010101000011001000111011110001001100010110100011001110001111111001001100001111100111011100010101110000011010101010110101010100100101101001000000000000101111100010010010110100110100110001111100100011000000100110110000000100010101010001111110010000011001111000011001101101100101101010111010111001100100101100111101101101010110010101001100011100111110100111010111000101010001000000000000100000101001101101001000101111110101110001110010010000110000001010111000100000011111011011000001100000100010100101011011001110110001101010101011101010101111011001000101001011100111000011100010010011111110011100010001010010010111011110111111100100110001101101010111101001010010101110000101001100111010111111011101111101110100100000101011101010100111011011100100000011111100001111011011111000111101110110101100011111111111100010100101101001100110110010000011100110000110101010100011100001101101110100101101101000100011011010111010000001000110010010100001001000100001110011010001111110000010011110100111010101001001111100011111000111011011100001110011011100110010111111110010100110001100101000000110101100010110011110000001001010110101110100110000011010001010110101110101010110111011100111111110100010010001001110100010011000011101110101100101011000110010011001010100111100000011010000111010011110000110010110100101101000110110011001000110001010001111110100111101010100101110110001100011100001111100001011101100010110011010000110000101111011101010010011001110101010110010110010100111110110001001001101100111011001010111010100101000010011110010010001100001000110111001111101000111111101010101001000000111011111010111010000100101000100111111000000001001111100011110010111001100000010011011111011001111110011010111111010110100010100111010011001001010011100100011001000111110111001010000000110100000111010101000111110000100010011001000000010000111001100111110110000001011000011000111111000100011110001101100100111111110101011100100100110011101110010011100011110100111001010111110001101001000010011100001110111111011000010010111001001111000001110110 +10110001111001101111110101011011010101000000111100001111100000100110001000001010010100001011111001110111111001101111111110011101100111001000010101010001001111111101001001011110000010011111110100010000000110100001000101001001110010001010001111000001010011010000101110011010101110110000110101011010100101101011010110111111011100101001000110011100100011000010110100101101011110011110011111011101011100010010000100111010101001001110011011000101110000010110011010001111111010000111011111000111101100001111001110111011101010101111111110011101011011011100011110000100111100101000010010100000001000010110111111001001010110110100000101110010111011001000110110101001000111101111000110101000110001100000101011110000000100001000010111010001001001000111111001101010111111001000000111100000101111111101101110010010101001110000011011010100101000010010001011101101000001000011010101000010010111101010110111101110101110001000100000000110111000000001001111010000101000110001100110100000110100110001000111110110000001101001101000101101101101101110110001110101001101010000101011100101001001011100011001001100110011011001001111011110111010000111000101111010100001100110001101110110110010010110101110010011110001001010101100001110011000101101000001110001001100111101110101000110111000101000101100101000011111000111110110011100011011010110011101100000111100111100000111100101111111111100110111110010001100001011010001010101110101110010111110010000101001110110010011010010010111101001001010011111110011000000110111110010011101011010010110101011010111010001000101100010110101110110100000111001111000111010010010011001010000001110000000000001010111001110110110100010000101000011001111101010001111111111011001010011111100101011010000101101111000110010000011110010111011110010100010000110100111111100000001101100010111000110000100011000100110000010111000111011000100011111010111110100011111011001110010010100011111010001100011011101101100111000101111110111010011101111010000001000101101001100111101110110111110010000111011111010101110010000101100110011001101000100011000111010110111011111011001111000000100111011000011111110000000010000000000000111111011100100110011000001100000111111010100101010110111100000110011110000101101000000100000011000110011011101010110100110110110001000100011110110111111010011011000101101111000001010101000001011001011000110100111000000110010010011101100011000100110001100001010011010101001011100111001111001110101011110010001011010001111111010111110101011110000010000101111010001111101110011001011001101000000110100100011101100101111110001010001001101010110000101001001100001111000010011110001111000111000101100111000000111101011001100001001000001011011111110111010010000010011000100100100010110001001000111111000011111001001001110111100011101101010110010010011001000001100000001011101111001110001111000110---------111011111101010100011000000010000011110010110001010000000010001010110010001001010101101110001001111111010011111011101110100100110101110001110101010111101001101010001100110101100010101110110011011010010001101001100001111100111000011011111110100101111111000111001011000101001111110000001100011101010110111110111000111000001000110001010110011000101000000000011011001011010101011001100011011110111100010100111010100101101010011011100100011100111101000111111100000001111001101011000101100001011100010011011111010111110011101001001101100111100111110100011001011010000101110011110000010100111001111100001110011010101000001110000100111101000001001101000100101000111000001111101111001110010011000001010000010101100011101110101100000000110110111011000110111010011111010010001010001110110011110000100001001110100011011011100100110110010110001010100000010111011001101001101011011010000101001000011010101010111001000001101110001101011110101110010010010100101010010010101001100110001010111100011010100011000010001111111011001111111001001010011010011101000101100011000000001111111100011111101100111001000111000001000011000010001010101010010001011101101011100010001010110110000100010010010101001011101100100111111000001101100101100000011011111100100111110000101110100101101010011111010001001000001101101001010000111011101010000011001011100001111111010011000010111000101101011001101011000100101000010110111110100010001010000110011010110000000001011110000111110110100100111011001001011011100100101001111101110100110000001111110011010000110011100111010111011111001100011010000110111110010111110101010011001000100100011011010101110100001111011101000001110010011111010101110010010011000010101101100010011000101101100001011110010110111110001011100001101101010001001010110010001001011010101110001000111000111101010110101000000011000010111111111111111000001110010001001110111000001001111011100000011100011000100110010101111001110011011101100011011000101101011011001001000110001101100010010000011100000100101111011110110000101110001010110100101101110110100010011111000100101101000110110110001110111111101010100011001011111100010000110011100111100011000101100010011010110010100011100110000110101100000011100000010001100000110111000010100011110110100011000010000000001010001100111010000011100000001101101011010011000001010101110100011100110000011011000010111110110110000110000010000011001100000011110110001000101100000100101011111100000000101101010011000100110100010010001000010110011110100100111011110011100001001010100001101101111100000110011111010101001111010010011110111101101010110111011011101111100010101011110001010010110101010000110111011001010001100110111111101000001111110101110101010100110011100000011100000011011000110001000110000010110101100110001011000000110001000011100101100000000010111011000001000000011110001000010000101110101101011110011101110000001010111011101100011110001011001001110011010010101001001000001011000011111111110101011001011010101100011011010100100101101000110010011000010001111100011000111011110101100110010110101001011000110000111111111010111110101111010100000111000100110100110010001111111111001110101000110010001011011110010000111000100111111010101101010001111000010101111001110011110001011100001001101101011001111111101000101110101100011000101000110010000000010010101100000000110100000000101011110010011001101100000101010101110011110000001011100001001000101011101100100011001000011101110010100000010111000111101101100001100110011011111001001010000100010111001001101000110001100100010000111001001000001000111100100011111100101100101100001111001100100001101000000001101010110111101000100001010010101111010101011000110001100101100100001001101100000001011011101011000001001100010101000010011011001100101010011101111000100100000110100011100101110010111100011011100111110111010011001000000110000010000100111011110110011001011011001101100110001010100001100101101010100001110001000011110111010100010000000111111010001001000111110111010010111001100101000101111100011100000001111011111111010100111000011000001011011010011111010010111011111111011001011000111111110010000010010111000110111011001110011111100010100101010010000101011000110001110001111001111000110100111011100111001001001000011110111101010011000110101000101100001111010000110011001111011101100001100111011001001000101001110110110010100010111110000001100101001110010110010000100110000100011011010011111000101101110010000111010100001111010000101100100100111101100010010001001100000001101001111100110111000111101010100010000110010111110010111000000101111001001100000011011101010010000110001010000000110010111100000011111001100000111111110001011100111011010010110111110001111011100001101110010101001001111100100011110000100100101101110000110100010101010110010001100110100011111111010001001010110010011110001100101000110010100001111111011111111000000111011100110000110010110010101001110000111011000010011000110110110111001001011111000011111001110101110010010001110001010110010000001111110001001001100101001000111101101101001010001100000101000110100010111110010000100001111000100010010000101111110011111001111101001010101011000110010110011101110001100101010011010110010000110110100110101101001010101001111011010011101011001011110000110110111010110001111101100101001111011111011000011011011010111000011110100101111011000000111011100100100100110010010100100111011101101100101011000000100011110110100011011110101101110101011100011000001000110101100001111000011100101100101001100101001000101000000011001011101000100000011000101101010000001110001100000101100010001001101000100001111100000100000101001001011010101110100011101010000010010011110100100101111000111110111000000110111010100010011010010010111110000111011111111100000110100010110000011001001011011100101110101000111000000100010111010011001101001010011011000000001111101111001011101110101101000110001110110101111000110110110011000111011111010010010111100011111100110111001011111100000001001101011001101100110011100010011101100111111000001011000000001110100110101000010000001010010000110101101000101000111110111101101001011111101000000000111011110011101110011110010010110010000101001110101000001000101111100001000100111000101111110001110100011100101011100000101011011011001111011111001100100110011101001011111110010101111110001011100001111110101000101100010000100011111000011010000110001011101000010011000100111000000101011100111001010011010000000100010000000100110110100111010010010000010000101001000100111111111001000110111100011011111110111001100111001011000111001011010110111000100111010010010011001101001011110100000110111000011010110101100111111000110010000000001111000111011010110001101011001100010100001000011000011100111111010101011110000001011110100001011101100000001100011011000011110100111011111000111011010000101100010111111101101111110000100011100101000011000011110101001110010110010101110111101010111010011010001110111101000001101010011011001110110110001111010001111011101111111001011110100000001001001000011000001110010011111010111100110000100110011111111000001010001000011011010011001101001011111011101011001101110111111001110100010000100101101110010010011000111100111000100100000100110110101011101101000000010100101001011011010100000110010101100100101100011000111011000101011001111110101101001100001111100101011000111111111000101110001011010110010111100000101111010011001101001101011000101111111010100010000000100010000001111001010111111101001111111111001111011111101000101010010111001101100100100011100000110110001010101111110110110000011100101100101110010101110001010110101010000100010011001001101001110011011010010110101100101110011100011000000010101011000011001101001000101010110011001111001111011100000111011011101000000110000010010010001000000101001010010111111011000110101000111101101010001100111110110001101001001000010001011100100011100011110111000011011010000101001000001011100011011111110110000010011110010100001100011100111011111101011111101001100100101110101001010100010001100110000001101011001111000001101100011011010011101110110101000001011101010100100011001001010111011110100010100111000101110110011100001100100101001010111001101000011100110000010011001101101100010011110110101000000011011000001101011100010100101011100001000101011000100001011111100101100100010001110011000010111001001001110111000011111011101101000110010011100110110111110101101011110001010000011011110101101000000001001001100110010000110100100001001001000001101000100000100111010111011110010111110111000001000110000101010011111110110011000111000110100101011011001010001000101001001001100000001010110100000111111101101111100110101010011100111100111111111011101111011111101111110001010011010111111101001011101100100101110110101011111010110110010110001110010011110111110000000111000100011100010111101101101101111000011101000101010111111111000100011111011100011000001001001011011001110100010001011000001001100000100010011000010000011101000101111110101100110011100010001001010111101101000100101001010001000111010100111110001011011111001010111010010001111110001111111011001110111000111111101110101010010100011000110010010000001101000101101010111010010011011011011101111000100000101110000001001000000001101111100000111011111110011000101101000000001111101100100001101000111100100000111011110000111000011100101100100101110101111101011001100011010110111100010101011011000100110001001010101010100101010110010110010110010010101111101011111101101011000011100011001111000111000011111100111101101010000110000011001101111111001100110011011111010111111110001011010011011110010110101001111100011000110001100011001100010110101111101010011100010001101111001001100100001100001101100111000100111100111100110111011010010101010100110111000101110100011101010011100010110101101011000010010101100001110000111100010111010011100000000110000011111000010011011010110000010111001000000100111110111111110001000000110010101001111010110110001001111110001101101011100101111111110100010100110101011011111001011001100011010101100100100100001110001101111011011101100000111100011100110000111001111101110101110101111111110101101101110010010100011101010011011011000100011000000000111001000100111110011000011010100001110111001010011010100100010001110100111101001110010100111000011101011100001111111000011100100111110000101110100100101001010101010010101110111011101011011111010111110100001100111100001010010011111010101010011011001000111010000000010000011011100001011011011010110100001101010111010110111100000101001101011011001100010000100100010011111100011001111100100001111001100011110110110010111101010001001001000001000000101101011101001110111110110000001111000010110011110001011111000100111110111000111100101101001000011001110001000101111110000000000011010100110101010110101110101010000110000010110010001010000000010011100101100101110100110010011000000101110111101100010001000001011100010110011001110000000110001011001010101000000001001010001111101111011001100111101100111111100110111101110011011010111000000101111111110010011110101111001100100010101000010000101110011010100100111000110101110000100010111001010101011010101100111011110010011110001111100100100111011100111011110101011101101001100110101001110101001000001001111111111011000000001010100101000101001110110110110010101011001001101001100101111100000101001011110011000101101111100111011111111100111110101111001110001000001101111111011011100110101001010000010101100100110011000101110001011011011111010110101110001110110101111001000101110011110111111111010110010101101111001011101010110110101001111111011100000100001010000000101010010110110101110001110111000011001111111001111111101001100001011100100000000001000011011011011001100000101110010110110001000010010111010000011111101111111011011100010000111000000100110100111100000100001110110001011011110000011101010110011101010111101111101010101101111000101110001001000111111010010100001010101101101010110100101001010111000111101010101000011011011010101101001001001001101010000011001111100010000001110010011001110001110111000010001011000111111000100000011011110011000001110011001001011101111101100001000100110010000001111101000101101011000011000110110010010011100110110010001011011000001000010010001111100001101001110101111111110111111101001110000000000110110001010001001101110110101000110010010111010011110110110000011111101000111101110111000101110110010001000001010010011010010010100001000110101110010111101001010101111111111001010111001110101111101001011110110110100000011110010000101111000000101010111100011101101011011110110001010011000100011111000101000100111111111100001011010100101111010000000110001101111100110111111001011100110111000111011001011100100101000011000100111111111101010000011011111101110011110011010000100010000111101000101100011111101110101111000011000101011010010000100100001010001010001011001011101000000111101100011000110001111011111111111010101110001000111110101101100000000110101100101000010010001100100100000000001000011110011101111110010010110010010100101011111001101100001010111010010110101001100011111110101010001100111110000001101111110000110111101011011110001011000010000001001110101100000001010000010000000011011101111011110101111111001100010000110100001001111011011011011101010110111001101110101100110101011111110100011100111001000000111100010010110100001101111011111000111000001011000101000010000100000101111110101101111010110000101100101110010101110100100001111000011010011100110111000000000101111111110000110101010110000111100001110010110101010001110100010110101101001111000001111111011110101011110111110100010110001111001100100101111111011001101001001100100010000100111000011100000100100110110010011001010010100100100011001010100001001000100110000000010010010010010110110001011010111111001101001100010100010011111000101001100100111010100100001011000011011110100110101100110100000101100111111010100100011000001011001001011111110110101100111000111011110101011100000010001111010011111011010010110010000100010110000110110110000110111100001000010001010011111100100001100010011111010010000110100010000010000110011001110100011001011111111000111111011001111110100011011110010011100001110110000100000111111110011111111100000011001000000001000010001011001111011111010100110010011000101110000000101001010100011100100011000010010000101101100010100110101100010001111111101111100111100100011010111001010010110110010100001100100111011100101100000011010111110101001011101101101100000100000010011110000010011110111000111000001101011110100110101110101100111110100001100101011011101001001101000001111000100010111110100001000001000011000011111001111001010110001111101010101100101101100110111100010001001100011000101101110011001110001100110100010001111100001100100001001100011000101101000110111110011011111101100110101111010101000000011001100110001100001111101001100110101000100001101100001100010000001110010110010000101001011110000111001011011001001011001001010100011110100000000001110010 +11110001011111100000100000011101111111111001110010101001100101011110001001100110000101110000110111001101100111001001110000110000110011110100101001001010000010010101100001110110111101001101011110001000001110000011111100100011100000000000100111100010100100000110100100110111110101010100111001010101001010111100111001010001100000010010010100010000111010110100111100111110011011011010101110011010101000111010101011101000010101100000001011000101110001011101100010101001110001100010100011001011110000001111001101011100101100000011111100111011100100100001001100111100100001000011100101100101011011010101010111011010001011111101000010110100101101011001000011011011001101101011010101000000110001110000110000000011110011000010101111110101111110010000010001000010010101010101001011111001001100101010100000100010111101000100111010101111110111000111011010100001110101001011000000111011000000010001010011011111101100000100001111000000101011001110011011000011001111001001100111100000111000111011011110100011100111111010011100001000011011100001100100011110010001010110000111110000111000010010101100011010001011010011011001001101000010111100001100101100110010111111001111110101101001011101100101111101100100011100111111110000100000000000111010110010000111001111100110011011111011011001001110011001111011111011101111001000101101111101001010111111110101000100110000000001000100111110010100101010000111010101110111011011001100100001101010011010000010000001110101111101001000101111100110001110000111001110110101110110000101001101000100100010010000101111010101001111001000010011011111001100100100111010110000001001110100101101000010001101110111001101001011000010110101001011011001100000010000010000100111111111100111100001001111110011111001001010101000000100111100000111000011100011111011010111011110011101101110101010110011110101111001000001111111010110011111010011011000110101110001111101110010111010001001100000000100100011110101111101010111111010111010001111011001001111100111111100010110100100100000100111100110101011000000101100110100110000110110110101111000101110101001101001001111101000010011011110001110000110010011101001011110010110101010000111010111110011111111111100000000010100000110110000111011010110011011110011001001110000111101111010111000101000111011001100011100100011110110110001100000111001111001100111101001011010010110101101110011110001010111000001100111000110111000111000101000000101101011111101110101110000110100100101111110101000000101101110011001111001110001001001100101101110011010100100101010101011111111110111111010110010001100001110001100100001111100110110111000101101011110010000001001100010100010110100001111100000111010101010010001111101110011011110101010111110101001111100101101111110000001111011011111010001100101101011011010001010100000010011010101111100011000101100101100000000000001100100000---------011101000110111000111011110011100110110001100101100001111011100100111101110000111110010100111001011010001000110011011011111000100111111010011000101101110010110000000101000000111010011010001110101111000010011010000010100000101000011011010001101010110110001011001100010000001011011001011011011100101111110000110100100111010001001011100010100010101101010100100011101111110110001111011010100110010000111111111001000111110101000100010011110101011110111100101101011100110001101000010010000011100110011101101101011000011010011010110101001011010100011011000000111111001101100011010111000110011111111111011011111011001110000010100001100001110111110111110111000000010111001111000001101010101111110111101111011000011111000101010111000111001110000010100001001111100011101010011011100010100010000111010010110110011100010000101000011000101001011000101111010001011110110111000101000011100011100110110011101111100010110110111101110000100111000111100101100110100101101001100010111110111011111101110111100101111101010110101011111110100101101111001001001100000111010000000111001000001110111010101011010100110001111000000010011110000110111101011011101000011000111101001011111000100001111010111111110100111010001111000110101011110101100101100111011000000110100101110001100111111100000010111110110100111010101101001111100111101010000001101100110101101010011111000101011010111011111111101011010101001100101100000001101100111011110111110101111000010000001111001110011110001011010000000111000011111000111011111001101000111010011010111000100110001010100000101111110101101001011011011011011100110001010010111100011011111101110010110010000110000000111100010011011101111111011010110111100010101011011111001000101001000101110000011010110100101010000011101101111110110111000110111110001100101100110100011101011010000101111100001000111001010010001001100001100101011000001110001011001011100110010110101001011010011000101100001111000100111011011000011100111101011011110101010010101101100110101001001101110100000000111000010010101000111011110100101111000000011000001000010110001000001001110010101111000011111110100001111100110000111010101101000010001100011001101100000111101101111000111011010010001011011100000100111001001011010010010001001111101000111111010011111011001011101000001001010111010110111000110100000111011010001001001101101111111101111011101100010000010010110101001111010110011100110100110100010011001111100101111111100111110000101110001001010101111110000101000100001001001111010101010100111110110000010101110101001111111010010101110100110011000111111100010000001000001001001110111111001011000001001100010011101010100000001111000001111101111011000011111011111110111110101010101101000011101011011111100001111100000111101100001100100101101000010001011011010111011111011100010000011000111010101000100001000100100010000100001001111101010001110000101010101010011101110100100111011010100110111000110110001011000001000100110001000100010000000110101110101110111010101001011101001001101101000110011100001100010100110110010101001011110000100001000101100110011011011000100100110011011001001100101101011010111000001110111101011011111000011001111110001101000010101110100000100011100011100011011010011000100011010010010110100110010111001110001011100010110001000001100111010100110001110011111111111101100001001100110100100110101110110000011110111001011000000000011011110111101111001000100001110001000000000101111101010100010011010101011101101101100101101110101111110010111100111000101101011011100101011010001010110100000000000110100100100010101100000111000100111000110011110001000110100101010101111010110110100000110111011000000000100010010110100001111100110101011000001110001111100100001111010011001101101011011010110000011000001010000101000011110101000111110001111101111110010011010010111010011011111110111110100000101000111110010001000010011010101001000010110011110101011101101001001011110000001000100000100100001011010010010011010011000100111001011101110000000000111110100110011000101011110000011110100100111011110101000111010101110101110111000000101001010000011000111101101001100100110100100111100001011010001110111100100011001000100000111000010110000010111111111001110001000100001100011010011101100101001110000100010010100000000011000100100100010011000011011000100010001001101010010101110100101001011101110001010100000111000000101011011011101111100100011011001010001010001111100000000001111000100000010111010010100000000001011100011110000101001100101000100010010011101110010010111100010010010100100101100101010101101000010011001110000010101100011100010001100101000000111111011111100111101111101011101111001001101000011011100111110011010111110000001101101000011111000000000100100101011000100010110001010001001101000111111101000100100010111101001000111010001101001100001101100111000110110111010001110000010100010001101110111111011100100110101111110110111111011111011001001001100000010000101000101001111010110011001111100010101110101011000000000001010011110000011111101100101011011011100100010010011011100110001011101111010111110101000101010100011110001111011010111101000000001101000011010101100001111111000001110010011001100100000001110000101111000101011011000100010011110111011010111010111110100000101111001011101011011001111001111110110001001010100010000110000111000001001001011111011001100011000100101010110111011100101001100001010001011110000101001110001111101111010011101011000000111110100011100010011101111011110001100001011000101100010110010010000000011111101111000001011101011110110100111100100100000101100111001101001110111001010000111011100110010010001110000000101100100000001010100101111010001001111100010111010100000100000000101011000001000100110010011101010100001111001011111110111101000101101011001111101110011110010111010110101000100001000001110001000110001010110011011101111000100111111101110001000100100001110011001101101101011011011100000101010110001011110000101010000011011000010111010111010001000101000100011111101010011000010011100100100111010110100010011001101101000100011000000010100100100110101011100000101101010011111101001101110010001100110000111100010101101110100000110011100101111110010010110000010001111111111110101110011011100011001000010011011010000010010110101000110100100100011111010011100110010010000010001001010000010001101000100110111001000011100000111000111001011011110100000111001100011101000100111101010001001111010111101001010001000100000010011000000000111011010010101010110101111110001001111001010110101001110101001100011111101110011001100001000110011110111010001100100011111001101001110110000000100011111101011111001101101000111011000111001011001000010011110100100000001101110111011000001100110001101100110001111010010101000000010110001001010000011001100001111101101010001000100110101101011110001000100000101000010000010011010100011110110101000101001011101001111010011100001001011110110111110001011111011011010100011010101101100110111001110101110110010001010011011010111100100011100111100001001000111101001110111110011111100001011111101011111110000100010101011111100010101111001001011010010010011010111001001011100100000000101010110101111011000101100000011100010011100100011100000010011011100100111010010000100000000010111101000001001101110110001100010100111010010000100110001001110110000111010010001100101100100110000101100101011111001111010110010101011011110100111001000110100100101011000000000001001010001001001111000001101110101011001110110010100000100110011011001101011010011001111101001011000110010001110000110001011110010001111001100010111001110110101000101011001011100010100001010110000101100101111111110001111001001010100101000101111111010101000001000001111100011001100000011110010100101101101100011101101111001010000101001101110001110101010001111101111100011100011100010011001010010101100110010111011100110010011111011011110100100110010100000101011110000111101101000001100101000010110010101110000100100001010001011100000111010000000101000001001101111001100000101001100110000111100110100000110111101111001110011001010001011000000001011110001010000111000000100001101010000000110000011010000010100011010001111100101111010101101011010010100100101110011010110110001110010111101100110001011000000110001110000000101101011100000000101010000010000100010101011000101100101111110000100011110101001100010010111110010010001000100001000000010100110111011010000010010100010110111100101111111111011010010010001110110011000011001100000000011010110001001011000100000110010000000101001100000100000000110010011111011011001000110101010010010011011010110000110000101000110100010011110101110010000110110000000010110000100001011111111100111110011010011101110101110001100110100011010101110000000001001101000101110101001011010111011110110001111010010100101001011100101101000101100111111100111001110100001011001001110010011100101110111101100100001000110101100011001110100001000100010010111000000110111010111010111011100001000011010011011000000110000011010011010011000111101111000000010101110001100110010010111101110010000101010111011000001001101100110111111010111001111101111001111111000101100011011100000001011001110111011001011011101000011101011101000000111011110111110110010100011111011000010101000011110110011101110000100011001010001010111000111010011000101100100101110000000101000101000100110000111101110100011100100000000000011000010111110100101011100011100110110000010010110111000000000101000111011011111001011000111010100111111111110111111011100100000101111011101011000111100100000001111101100101011000110111010011011110000101100111001011010110110110101011010001011001101010101001101101001000111100111110000101111001111111101010100000101111000011100101000111111100100100000100101010010111100011000100111110111100010110101100111011101100110010110101111010000110101101101101100110010100010110001000110001011000110001011010101011011000001010000001111100011011011110011001111110010111011001110100000011011001110001010111000001010101000100111110101010111000101100100011000010111111001010110001100111101000000110111101110011111101000010110010101000010001010011011011011100001001110010000001011011110110101010100000011101010001101001010001101011000011101110110110110001011011100100100011000011001100010111111111010011101001110100000111010010100001101101011110000000011110100011010010001110000000110110111010100000001001101000110000110101011110011101010000100000001001000100001101000001010100101111001110000001011010110100010110100011100001010111011010101011000011010110000110001101011101111001011100110100011100011010011100010110011100000101110000000101011101010000010001100110011101111101101111110111100100101100111000111110010000110110111100000000101111110101001000110111101100011110010010001001101111011101000111110101111001011100001011000110111100110011010001000010000101100011011111010011011101110011111100101011001101010110001001001011000111001001011101110010101001010010011100111010011010001000011111011100101011011001001100110000000001011010111010000011110110111000111111011100001000111010101100010011000011100000111000110000111011111001011111110010010010011001010100101110111100101100000111010000101010011101110101101010111101111000101101100010111010100011011000100010110010100111010011010011010011011011110001100111000100101110101010001111001011111111011111111010001010100111001010001100111100011101011010011110111111111101011100111101100100100010110110011111101010000001001110111101011011110101000010101001011100000000101100111000010101110111010000111010100110100111001111001000010000000110100101000000000110001101111110010011010100110100101001111001101010011100000101010000001110101001110111100101100001101010000100000101111110110111101111101111101100001010011111011100100001011100111111011100101111011011110101101100110001101101111010100111000110001011000000111100010010100001001011101100010011000010011111011010011010100011001011100001000010010111011001000010010100111010011111111111101101011100111101000010111101101110111001101101001111110010010010101101000111000001111001100001111000001011000000011000010110001100010001000100011101101111010111100100001110000010011001011001011110110001100110010101110001110101110111010111010101111001011110111100000110101001101001110000000100000100100001001100011010101000101101010100000110011110000101001111010110101101111111110000111101111110001101011010100011011100101111010001001101110010010000101011111110011111101111011100000010011010111110011111111110100011001110000101000111100101001010011011001010111101001011010001111111110001000000000111111011110111001000111111011111010110000011111011110100101110100111111110111110001001110011110010110001000100010100011101000101100001000111110010011010100011111001110000110101110100000010010010011000111001100001010000010100100111101001111010110010100111101110010100111111110000000001110011111100111100011101110101011111111110100001010110010110100110001010100001111101000110011000101111101111001100011110110110100110101011010001011111101010100110010000000101110011110010001100110100011011000111101100010110010010110011101001111111000101011110011001110100001011110011101111010001011110100001000001101101100101011001101010110100101000001000000001010011010101110010001000111110110010001010010011101110111110111101111010010001011000111011010001111100001111101111100000101001100000000000010010111011101000000101101010110111100101000011100100111110100100111100101101000001110110101000101101110001000000111000001000010010011000011010000110000000010001111001110111011101111111000101000010110001011100100000101011111010110010101110011001001011011111000000111010101110000010110101111101110100001111011010000001101001010110100110110011010010101000011010110101100111111101110010000100110000100101111000100011011100010010001100000110110011110010111100011011000111010111110001100010010001011110101010001001111011000001010001101101101111110001000011010011010010000010011100010010010101100000011001101001011111001000100100101100001101101011000001111001101011111001110010110110100100101100111100000110101101011100001001010011010110100010100100100100101110010001011011001111010001010111000100000110011101000110001101111010101010111011000000111010011101100110011111011010000000100010110010100000100011001010011010100101000010010100011011000101100111001011010011011000000100010001010100000001011001011010011111100000001101011010000100101001000110010100101010100000001001100010101010001010100010110001110000111001001011010100010101011110101101000000100111011101111010001011111101001110101010101110010011110110010110000010100110000111000010010001111010101111111111010110001100000101101100110000110110010110001100100100111010111111001000111100100001011100000001101001001111001111101101101001010100100101001010111000111111101010111001110011110010011101100000010010010100011100011101011010010100001110110011100101011010001011110010101001110110111001100101011010101011010001000011101001010011101111100100111100101100110101 +10101100111001111100100011011000011001010000001111110010111011011011111011010011100011010110011111110111000101011111101111011110011100001110110111000101000101001001011100110111000100000110011011000111110001101101011101110000111110111111001110100000001010001111101000010001110111011100111001000001110001111010110001000110111100000101100110111111101011111011101001100010011100010101111000101111011100111000110101101100110101001111110111111101010101111011000111101101000111010000001010010101001100110101111011011010101101001001000101010001000100110110111100000001111001101010000111001100110001000110110111001100100000001111010100011011110010001000101100110110000000111000111101010110111111010001010111011010000000100010101010110100011010111010001010000100011011110110110110111001110111000011101110101010101100010101101000001000001110010111001110011001010001001101101000101101101110111101111111000010001001101000101100101001111110111001100111101101010100100111000100000000000010010011111001011111111010101000000100011101111001110111101110100001101110011000000000110110001001100010011011110101010001010100101100100101100010011111110011000101000000111000111011010110001001000100011001010010001110011111100101111100010010100110111011111111001010001100011011100110100000110110011001100110010111101001001101000110100010010010000010100101010010001000111001010101011010010101010001011110000111111111010101111000110101000010011111000100100000011011101001011000010001001010010011100011000100100111011000000100100100011110010101111100101001010001010101011001001101110101010001101010011100111110101001101001111111000000100010000100011000010011000010111111011010000100101000011110001101100001101111100001001110111111001001111001010000010110100101011110001001000010111011100100011011011110101101001000000100101001111100111011100001001011000100011111010110111001011100011101101011101010111110010000101010111100100101110000011111001011110010101010000111000001100110011110011000100011111101100101000000001010110101110000001010110010101100010001100000111100111001101001110000011001101000111011110110000111001110101111000111110010100011001111100101111010011001010100110011010011000110100000000100110111111010000010110101100110010101101111001111011110011011111000100100010001110000110000110001110111010000101001010101001001010110000100110010100101110010100000110011110001000101100100111101100101110000010001011111001111001000100011010111110001101000100101110100001101011000011010011111111010011010110000100111110000101010101001001101100000101011011010011100010011101101100101101111101000011101110111101000011100010111011111010000101101001000011001001000011010010000110000110000000111100111111110110110000100101111110101001001111100000010000111110100000011100000100000111000011000011110000001101110111101111000010100110011111110101---------011111001111001110111010000010111010011001100011110110001110100111101001000100010110010001100111111001110111100111101100110010001010001100110110110000101100001001000011100010001001000010000000111110000101110000100011001111100001100110111101100100000111110001111111001010011011100101001110010000010110101010101101010101110101011100010010001101101110001100101011111000011000110000010101001111000111100001010100010010010111011011000101010100101000010110111001001100011110111000011011111111001000100100110011110001010010100111000101110011010111011000011101110000111000101110110111001111001001101100101000011101111010010011101000101111000010000110001010101010111001000100100111000110101000000000010111101100000000000100110100110101001101011011101001101100100010011100000000010010101000011110100101100010101001011011001111010100001100001101000010001101100110001110110100001011111010111010101000011011011100001011101101011010100001100010000111000011011101000001000101101000100001110010001111010001011111011100100000100011010001110010001110010001111000000101010000100001110010011000101101001010100011000110001111110010100011011011000001001101100111101101100100110010000000110101110100001110100011101010110001110011000100110000100000010100101010101101111100001001100011111101100100110100011110110101101100000101111100010101101010101010011111001110000101010001100000101110111010001110000111011110000101000110100001111011010111111111100001100001001111101010011001011001100111110010101100101010100010000100111001000111010110001011100101000110110001100101010100100101000111100011100000101111001000000100001000000110111000011101111100111110100001011010101100111001000011010100011111000001101000110001100001111010110011110000010110100001011011101101011011111101011111100111010000011111111110101100001001011011001110000010110100010010000110101011110100101100010110000100000101011110010100000111110001111101100001100111110111101011111111100100000100011011011001110011000100011011101010010011111000100100111001001101111100001101011001100000001000110100110100101101100110101000101111001101110000101111000000110011101101101011011100110000100110101110001100101001000011011111101111101000111101011111101101101100010001111101011001010010110100011010110001111111000001010111001100110101100110011101111110100000100110000010000001110010110010100110100110001001011000110001101110101101000000101000010001010111101100010000000111100101100011001110010101011000001101111011111111100011110100100011101110100111000010101100101011111101111100000101011110000001100110100011110111000001100000100101111100000110100001010001011010010010010000011101000101000110011100000101000000100110001001101111001100111101100101001010101010011100101011010010001111011010110010011101000111101101100000011101110100101000101100110111001011011100010000101010011111100001001001000100110110110010001101110001010110011010111111010001011110000101010100011111001110111000111101000001011001111011100110001100101101001011000010010100100000100011010101111010101101110100000110000000000111011010100111011001010110000010111010110111011111010000110100000101010011111000100001010111001000011110011010111111011110111101100010100000111010111010100111100001110000101010010000001000000001011010101000101000110111011011001001010111100111111100000010000111100001001001111011110001101010101010111000100000010101000111000100010000111000110110100001000010100010011110011001101100111000110001110011010011010110110010011010100111101000011100101110110001101000100010100111010001011101011101000000101100000010011000110000011111001001001000000110101100011100101101011001011001001010101110010010011111011010111010000110100100101011011011011010111000000101011010101101111101001001000000010011101000111110001110101001011011110000001110000100100111110011101100100001000000110111101111100011101111100011000000000001000110011001000010101101010011011000010111100011110010000101100111000011111010111111111011010000000000010011001000010100000010000110100010110101001101001101111010110001001001100110100100011111110101101010000001010111010100010101010111010111010110001111001101010000110100001101110011011001110010010010001011101110101101111110110101001111011111101100011100001101010010110001011010001110110000110000110010000001110111101110101001111001010100101011001000000001010011000100001110101001110100110110011100010110001000111000111100101111111001001001101100001111100101011110111101111000000011010011110011110001000010110111010010101010001111001101111011000011111100100000110000101111100001101000111110101101100010001100100001101101110001000101000000111101111100111001111000110011101100100110110001001001111111000101110011101010100001000100001001011001000110110100111110110101111110000100000000001111110100111001101101001001101000000000101011001000011011011101010011101011111010001100001111100011011011010111110011001111111100111101001101011001110111110100101100101100010110001001101011000001001000001111110101100100001101110111101000001100111111011000001001101010110011111110100101001011011100110011111001100101010110110010010111011000010101110100101101010011001001001100101000100001000111000010111111100100011000001101101001110001000001100000011001110001001011000101010111101111101001001100000100110011100001111011110110110101011101100010111100001000001101101111001111101110000001110100100101010100111100100010010110000100111101001100101100000100110010001011100101010011000101010101010100101110111111100101010001100110111001110100001110100011001101100100001101010011010101100011011001100101110110100000110110111000010010100010111011011110101010001100011000100100011000000100000001011110111011110110010001100101001111100001100111111011011111010010001110111010011001000000011101010101000100000100011001101010011001001001111011000110000111000100011011000101001100110111101000010000100101100101001010011100001010001000101011000100011000010101000000000100011111101010101111101001000100001101111011000111101010101110010101011010110001101110111111001110001010010010000111101010011110001110010011101011000111101101111110110000110110111011010100001010100111110100010101100011111101010111101111110000111011011110110100110000000100011111111000101010010100100000111011110000001110010110001101001000110101111011010111111010001010000110101000100101010100000011000101010100110111001001000101100110110110011110011001101111110111111000001110011001111001010001111010110011010000011101101001000001111000010100111001010000111000010001110010000110100100010010111010000010000000001101100001000111100111010111011000010100100111010010110111111110011111000010000000101101101111010101000101000011001101011000100100001100101110010010001001011000100011110101011110100111110111011100101000010010111010111110001011011100010111001110100010110101100111111100000101011101110010111100011011111000000111000101110000100110001000011001010111011001100011110000111100000011001000101100001000001101110001011100111011000110000001110110011101001100111111100011011010100001000000010110000010101110111101000010100101011110101011101111001110001000101101111100010011110010110010000010111111011000100001111010100111010111101100100010000001111101101111110101101010111111111100010101100100111100001110000101000100001100100000110000100101011011110010101001001011100001000111010010001100001100111010101011001101000101011001111000110100011111100010000111010001011011101010111010010011010001110101011010011010011100111011100111010010000000111110011011001011011110001001010001100001000100101101110001011101001001011100110101110011100010110011010111101010001111011100001100111011100011101100010001001000101001010001000011011100101011011110110000011001011011100000011000000001001001011111101001001000010011110011000010010011001011011110011110111000000110010111000110110010011111111011111011011111100001010001001000000101111101011011000110011000111001111100000001111010111110101011011110111010110110000110101100100000011111001110100111001101011010011010001010011110000111010110000101101101001101001000001110110011001011001110111011001101001111100111010100010010001111001101110010101100111100001111110001110110000010011100111001101010111011100010100010010000011111111000110000111001111000011110101101010010111011111001010100001110100100110011001100000101001111110001101110101001010000100000100011001110001110011000001100001011110011011101111000101110110010000101110010000000011010101000001100000101011011011010010001100000111011100001010011010101001101000011111101111001111011010100100110100101101010100001001100010101100100101101011000110111111100101011011000110011011111010010111011001110000000011011000011110000011100011101101011010000101000010011100100110111000000110111101010111001011100110101100101100110001000010010101110010001010011001000011111011101110011000010101111001111110000100011110110111111100100110110111110110010110111110000010000101000101010101000000011101111001100110011110110101010001111111001000111010010101000011110011011110011100101011101001011011110011100001110000101110100001111000001011101110110011010010000001111000010001101001100010000001101111001000001100100111110010100011010000000010101100100100001011011000000000100101100001110000111000001011010110110000110111110011001001111000100101100110111011100011101111000010010000000000010110111000000001011000000010000101111001100010111101110010100011110110001011011000001001110110001001101010000111001100101001101111110111001100001011001011001110011000001001100000110011010010011010000100001111000111011110011001010010101100001100110000111000110000001111100101000000110100111011110011010000101110100101001000000101111111010111100011011100101111110010011110100110001011100001110010110000011110110110100101001101001011001111001100101101001110011010001010111100100000111010110011101110111101100011100110111101110111110001011111110000010010110111111110010101000011100100011001110011101110000000000111000001011100001101000010101001110010100011100110000110000110011111100100101000000011110001100100011001011011001000110000010111110000101000111000001111101111001000001111110100010100110000100100000110111010000010101001101100001011010110111010010110110111111101010000110001010001111100111100000111110110010001101111001110011011010010100110110000110110000000011010001010010100111111011001001111110110110010100110000001001010100001010000010101001110101111000001011111000110011101100100001011110010000010110000000000110100000100000001011111110011110101111011111111110111000000110100101111011100101010111001110110101000101101111000000011010101100010011111101010110010000100010110001000011000100110001100011111000000100110000101111000111110100111001010010011110110000011110011000100010101001100010111001111100001101010010000001101110110110001101001000000000001000110110110000011110111111111011100111000000100110101000010100011101010111101010110100001011101110000101010010101100110111011111101001100111110001100100101011000001100101000011001010011010110101100011011001101111110000011110010110110111111011100111101111011110110010011011010001001011111001110110111100100010111111101000011001101000000000100000110011110000000111010011010100000010011100111101100111000110011001100011011111110001000010001001101001110000001010001110101110010000100001101011010101011000101010001001011011111001010011110110111111110101010001110100010011111110011101000101000111101110111100011001010111110000010110100100010001000000001001011001100000001000110101100011101011111000101111001101101010111101011001100000111011010010000001011011100001010000110010111100001111011110110111000011110110111010011001100100111110110011010111110110110000111001010010001010101101101101011000011010010010101100011111010001011101001010101111111100001010111110101010001101111010011011001110010110011011101100000001011111000101001100011110011001111001101111100011001010100010101101100100000110011100001000110001111010100000000011000100100101000101101111001101001110101000001010010011010100111001110000101101011000011101011110010110100010100110100110111111001001011110100101111011110011110100010101000110101000001110100100010101010011000110100111011111010110010111100110110110101111101111011001010000010010010000111001101011000111011101010101101011000100000010000110101010100010101011100011011000000110001111000000001101110110110110011110111010101001011001000011111011011011111100100010100000111111110100001010111011100100000001100001010001110100111001000100011101100000100000010010000011011101001011101011101011001000100101100111001000001010101110101110011000111010100011110101100000101000100000001000110111010101100000111011011001110000110100100111010100000001010111100001000100010010100001100101101101011010001101111100000011101001011111101001110111111000011100001111101011110111101100000110000100110000000111100101111000100100100011101111010010001111110111111101110100110101110100110011111010000001100110101101111101101010001100010110100101010110100110101010111001100001111000111001101011010000110110101111001111111001100100101111101111001001011010010011110001111111100000111110100111010110110011110010011001000101010000111101010111100000011010100111101110101100110111001100011000111000111101000110001111101101110110010101001100001011000100111000101011111011010000101000101000011111110001110100101000100000011011000010010001011100010100100010110110001111010010001001100110111001000010010101101001010000101001011100101111011110111001011101101100001110001111110000010100101110101000101011101011010011000000100011111110101001011110100100001010101100001110010100011111111011110111101111101001100101101001011110011010000110011000011011101111000110000000001111010101111111011010000101100111000010111010001101110100001011011010011101110011000010011110010110011000110001100110110111101010011011011111101010111001000111011001010111000110100000111110111100100110001111010110001011111011000000011000000011110111110011100110011010101011101101000110010101111000000101000101101011010011110110011010001111010100110001000111110000000110000000100010110100111110000001000101001110101101100110011110110011100111000101010111001001001000101000110010100100000010001101110001110010110101001101111101010000110100101001111001011110100111001011100101011011000110001010101111111111100001000010101101011000111110000110010110010000000100111101111010100111001101101001011010110011001000111101101000111101001101100110011001010101001111011110101101010110001101111000010000010001011101110100100000111000100001111011100100111101110010101010001100101101110100100000010110101101111000010101011101111111100101110101011000111110100101011011101000010111111000000011000111101100001001101110101111001000000111011100001001000110000010001110101010010010111101010011010001101111110101000001011101011011010100111000111101111011110001001101111011110110100111000001011010100101100111100000011001010101001100101110111011010111111111011011110010110000 +00000100100000011010110010100011011011010111011001101111011000110111010000011100100101011100110001000000100000001110101010100110010100010011010101011110010001111101100101111110100010110110011010000011011001100011101001010011001011111001110101000000100110001001101100000000001111111001011110111000100111011000101110000111001001110011001001001010110101011001111011001011000010110110110101111100011000100101000001111110010001111011010010101110100010001000001001011111111101111101000101110100101000110001101010101101100000001110001011111110110000010101010000011011111111000111111010100111001100001110110110110010110110111010100010011100000011000010011110010110001011000111011101010011010100011010110111001111001011011000001000000010110110011000110011101111001100011001101000101000100111111110111010100011110101101010011110110100101110000001101000010010010111000110011100101001110011101010111100101001001100111100010000111000000010101100010101010101000111111001110010011111011100111010000100000111000011111001101101001101111110000110010011101101101010101100111110011100010011011010000001100110100100000000011101010010110010100111001011100110101111000001100000001100100000100001000000111010000010010100000011000110101000111111111000100001101001010111001101100001000110001011110100001010100011111001001100100011001011111100111110010101111111001100001101100001010101110111001000011010100001111110000111001110010001101001000100000100100011000101000001110001100100101010001111011000000100111101101110111001111010111001101101100101101000101100000010101110000110100001000100110100001100111110001111101101000110001111111101110001100110100000100000100111100000011110001111001101100010011110011001101001101011001010010100000011101011001000001010011100000111010100001001001110000101100010001001000100011110110111001010001111010111001101110111101010110111000010111010001110001110111001111011100010111101100010111111001101101011101110100001111111110001111011100010011100110010111101110000000100001111000101010011100001011000011111010100111001100011111000010010010011100110100011000100000111010000011011111010100101100010100101100100100111011110111110010001111111101111111010101101111001111011111010101100011011100000011011010001000011100001011010001001010011101001011011111101111101000010000000111010100011111000111000010100100001111100000001111011001100010001001101011010011000101100110111100001110011001100100001001000001100001100101101111011101100111101110011101001100000101111011000100110001001011010000000000101110011110011100110000001100110100001111111010110111011111100011011110100101111101111011110110100100001100101111100011011000010110010001011001110101100011110011101001011101001100110000010000001000101100110111110011001001011101110001111010110111011000011101111011010100110111110010101100001100111101001110110010---------110110101011001011111110011011011001011101001001000111111100100110111100100000110101000010111000110111111100001001010000111110110100110001001110110000001101011100110110011101110010010011011101000000011100111000101010111111000011111111010000100000110100000000101111111001110101100010110111001010001100000100110100110001010001111001111011010000000001011011100001011100011010100110110010101010011000110110000001001101110111101111100111110011000111101010010111111010101001011010010001111110000000101001001110001001000100001100100110100111110110000110111100110110111001100111110111001001110110001010010110111010101001110011110011100101011100010001011010001011001100011110001101010110111001000101110100101101000011111000001000111001010010101110111101111001100100100001101001000100000101100100010010110111010011001110000111101011110111111000010010110101010011011010111101110101011110011010000010101011110110101101010111100001101001011010010100000111010111110000101110100111101110000001001111111000101100110100011010001111100111100001001111100111001001010010111100100010111110001110000000111000100000110010101110100001101010100001111101110111110011000010100101101010110010100000001100010001010111110000110100000001010100101000111000000110000100100111011001101000101001101011011100001011011110111011000011001010011010110101000010100110111000111011000111110101100110001001001000010110000100001000011110110000110010000100001001011110100110010010001111100000100111111010100100010101101010010111110001100101000101001010111000111101010100001101100111111100001111000011011111101101101011000000111000111101101101010011101001000000001000110111001101000011110011101000100110100100000010010001011100100001110111101101111000101110010100101111101010000000011101011011001011000000000101010100001011111000101110111011010000010110100011010101000110000010101001111110000011110000100101011100101111010000010110110011011000000100101001011100101011101100110011010111011001000111001001111011100100111110111101010000101010011111100000100110100010001001001011001101011111001000001100101001110011010011100111110110111001111010101110110011110100101111010100110111110011110101010111010100001100111111000110111101010010000101110000100000011010001010110010001110000100010101011000101101101111011110011010001001101111010001110011001101101100101100001011111111010001010110011110110100010111011100010101011000011111000001110010100110110100101001110111000011100010000101010011000000011110011001000000101001010000100000100100100110110011000010100101100011010101100000101011111011100110001000001101000010100100001010111011010000000101101111010110010101111101000000101110000000111010001001110110111110000010001111110111111011111000010100000010011100111011100111001001000100011100010101011000001110101001100010001000011011011100111110010010011000101111110000000011100111100011000010011000100100010100100100000001110011110100010010011111111000000100111110100100111000110001000111100110101001100010000100001001011111001111100100110000101000010101000111010001000000010100101101100101110000011101000101010010111100110000110001111001001101101010100000111000000000011010111011010010100001010011010111101111110101111010101010111000001001000000010001111001100111111100001000000110010000110101000011111111000001101111110010101011000111000001011110111000001110101000010000110101111100000000001111001111000010000001011001000100101000011011000111100010010001100101110111011010010011111101011110010001001001010010101111011010101000111010100100100111010100011111011100110111110001100000001001011000010000010110011111100011111100101000110010110100110110101011001011101101000100011110111111110110100111110000010101010000000110111001110100101010011100001010101100001001011000100101010101001011111000110000111100001110010110100011010111010010000010111111001110110010110011110010111001110010010110010101111001100011110100011011101011000101100001010011000010010000100101000010101110110110001101001101000101000011001001011010010110100100110001000110110011000111110011111000010001101101010110010101000101010000010000000000011001111101000110001000000110001010011111011001010010100110001100011100100000101001100111011111001111101100011110001100100010100110101011011101001010011110001101001100011011100111111110100010110011100110101010011010000001010111010000111101010100000000010010010000110111101000101111010111011101111001011011100110001100010011110101011101111011110110011011000110100101101110101110111000011110000010010010010010010011000110010101110110111010010010011010000000111001011001111010000010001111010100111111110010111100110110110010010110111000101110111011110110000011100101101110110101111010101010010111001101000111010110100010011010100110110100001000111100011001011100000111100000000001011100011101111101001000011110000110010000000100011110111100110001110101001001010001010111001100100001001111001011100100000110100110010001001101101111010111010101111111110011100011110111001010010011110111110000010110010110011011000110111101000010111010000001111000111111001010101001110100110000001001000110011100011011110111100101100010101011100111010111001100000101011011011101010101011010100110110010010100101001010100111010000011011011111010001001101111010001010100111010011001101010000111101000101000111010110001111101100100110001000111110110000011101001110000001001011000011101010110010010000100001000101000011110101110001000110101000101011111011011001010100010011000001001010001110101100000110100111000101010111010110011111110010011000010101001101110011010111011001001010011011001000011010001011001010110010110111111100101000111000010110110101100010001010011101100100101100000111001010000000001011010101111100101010101010100010100010110011001010000111100000010101001000010010111111000101001011100111101010000011100000110111100000001001100001110110100011000100001101000110111100100101100100111011101110011011010111011011010100011011111100111110000011010001001101010110111000110100011010001101110110110010010011010010001000011010110000111111111011010011110100101100110111100000010000100001111000000000000101011010110101001110110000110000011000011100110010011101010000100010000101101111011111110001011101010000001010010101101010100010011101100111100011111001110001110000000000101000111111010011110000110101101000010001111111111000111101011110100100101110001101100001110100011110010011011000101100000011101011111010111101010010101111100010101010000010010000010011101100000101000111011010100011101010000000011001011010101101000011000111000000111001101010110001011010001111110110001010111110000101100100001100111101011101011001000011110001001011110100100010010011111011000110100110100011111000010000111000110110100001000111111110110010011111101010111100011100101001000101011001011100100010010110000100111101010001001001010110000011001000000110100110100010110001010010100001001111010011001011101010110100101010011010010100100100101100101000000110001000001101011001110110000000110001001001100011010010010111100011001011001011000011010011001000010100100100101101100001011110101010100000001110100110011010011111000010111011010001111111001110110101001011110101000000100011110100011110111110100111000011011000101001111000111011001001110110011001111100011010100100010101111101100100001110001010110000111101110000010001011001011101111111011010101111110110001001010110111011010100000111111100010010110100111001001110000111110111011111110000110101011010111001110011111000110111001111011100000110001011010111100000001011010110101100110001100010001101110111011101101111010010010101100011011111000010000001111010110011101000110101111001101010001000100011000011111100010100010101001100101110010110110000001011001101000110010011010110010000100011100000111010000111101000010010001111110011010101101001001101100101100011010010111011010000010010110101100101111111000101100011111100011110110010000111010010001100011110000000000001100001000001100001011101111110000110000110010011101110111010000011110110100000011100010111100001111010100101111100100101110101001101011110111101100101001001101111010011100110111101111100001111001100000111110010011100000101110100111111100100100100010101100111011101111010110100111110100010100010111111101110110111000101001001101110000010011111110110100111101110011011110011110000010010111011011101001001010010101101010101010101101100011101001101111111101101111101010111001000011100111111101101110100011101000001010010010000111111010011011110000000100100001100100101110101111111001011101010000001100011001101101000100010001001101010001000110000110110001111010101101100001010011100101111011110010101101101011110001110010001001011011000000100011010011111100010110101110110100011101100011111100001101100100010110010010011101111110111110001110010011011001000011100100011110110000000100001001011010100010110011110000000010111000011101111000011000110011011110011011011111100011101000001101000110110111010001010111110110100000100010100110100111101010110101000110011001101111000010111100001100111100100010001011111010011111111001111100000110111001101001100111001100100110111110011111101110110011001100111100101111000000000000001100011001010000110000110101001011110010100111100100011100000100111110000110011011011000100111001100000111101110100101111100111110110101111100101010001010101110000010111110010000110011100110010011011110011001111000010100101110011001000101011101101110100000110000000010101101101101011100001000011100101111110000100100101110011111110110011110000111110001111100000001100000001100010010110010001010101011000101100101111101011101101001000001001011001000100110010001000101000000000110011100110001101101101101000000010001001011110000111101110011101101011111000010001111010111111010101110011111110011101000010001111001000100010100100011011110001000100111111101110010111001001010100000010100110010110101101100000001001100010111011000110001100000111000110111111101111011010110111001100000011011111101100111111011010000101010111011000101001011111110100100001010100010100010001010000101111100110111011011110011110100011100100001101000010010011001010010011110101100101100001011011110111010010100000000111110000100111100101101101010100010000110111110011111101101001110001010000010010011011010100101110001100010111010011001110111100111100100001101010111110010011101101101001000010100001010001000110011011100000111011000001110101101000101101111110111110011110111110101000000101000101111111101110101100110111001000001100100110000101010000100011001000111100111100101011000010011100100111001110010011011010110101110110000110111101011001011010110000110110101011100001110011011001011011111010001101000001001011111010111100000010110000001110100011111111010100011000011010000000000010010111000010001010110111010110100001101001011100100100010000101101001100011111011111100001001100110101101001011011010000000011100001101101000001000000111111110010001001011100001001110110101001010000110110000111101111000101110111010101001010010010001010101010100001010001001100101101101110011110101101010100111001100010100101000101001110000100110100011000011001111101100001010000000101111000000001010001100100000010110100001000000100111011011110111110111011001000111101001010011111111011110001111010011000010101001100100001000111001111111010010001110010101101110010111010010110011000101111010110011100010000011010101111000101110011101011001101000100010001001011101100111000100001110100101100100111001101110100100000010010011010100100001101111111111010000101011011111110101101101010000110100010010001100111100111100111101100100011011101111101001001111100010010000010000101111001110010010000010100001001101111001011111000000001100011100010111100001001110000011010101100111011100011001111110011011001010000110000110111111101001001101001001011101110111000011001001011110111001101111111110110000011001110011111010010100001101101100001101000110111100101001100111000010010010000110100101010011111101111111100110101100000010100010010111100001101101111111101011111000111110001101101110010111111101110100110010110010100111011101111110111000001010110001001101000111010000101111110111000010101101111100001111000001100011000100111000010011010111110101011101000101100001110110111110101101000111000101100101110001010001111111001110001110001001111011010100101011100001111001011001000011101100011000001000111111110010101010100110101101001110011001110110011110111100110000010111101001110000110100011000001001101011101101100111101101000110100001011011000110111000000010100100101001010001100110100101001000010110011110111101010000100011001000111011100110011000100111010100101100100010101100010100001000000000010001011100011010010001000000010111100011111010000011000111110011011001011011010011110000010111011101001001110001100110101011011100100110010101110100100110110110011111100110111011100110100011001001110011100011111000100001011010111001001100110011111011000110110111101001000011000010100100101110001001000001000011010011010010111000000101110011111110010100011100111111001001010000111001011010001100101111110000100110101101100000010110011101100100010011101111100101011010011100100101111100110110011010010100100100001000010000001100111100010010011111100100001101100101010111011101010010001001000010101100010100100011111110101011010000100100011010011001101000100000010100111001111001101100010111000000000001011011101001101101010101110110011011000000100110110001010101001010111101100100111010010010100111111101100110100110001011010111000100110111111000000001010011000110000101111001001101001100001011000010001011111010101000101001111110000111110000001100100101011100110011111101010000001110100101101110100010000000101110110100100100001101000100000101000011010010101101110010000110100100100010011111110010001100000000010111010110011000001010001111111100110100000110100110101110010111011001100001001001110111101100101000110010000100011101111101011110100111110010101011101110011101110001000000101001111011101110010100110100101100110111001010110011011110101100011100001100011001001110011110011011110001011100110011111000111011101001010011001101100010101000100000000000001010101100011111011100111001110101000110001111011111101110010100101111001111001111001001000011001110110011110101101000100011110101010110001011011000100110111100101000001011001111100101001000101010001100110110111110100110001100000001110111101110101010011000100011110001111101000001100000111101001011101001010010001101011101101011001100100101010110001111110110111001001110001101010010100011110100100111001110111101001111110100010011111111110101000001000101001101101001101110001001101101001000111010001011110001010111110101111110001111000111111111010001111010101011101011000101101010110100000000000100100000100111010101011101011011001001111111001011011101100101101011111110011110101101001111011100100011100110011010011011110101101000010100010011010110101011110000011010110000100001010001000110000101000111010111000010 +10101000110100000110100111000011100001111010100001011110001011101110101000101001000000110000000111011000100010110111110111001100001111001101000010000001011101111000011110110101011000101010011101111100011000110001110111100001001111010100011100101011101010110100110001111111001110001010000011111001100101110101001010100110010110100111100000010000010011010101101111001011110100110110001100001110111000010101100101001111000111100000001101001111010100100111011011011010001100110100111110100111111011111010011001011000011000001000001011101111111000101110001001101100000100100010101110000110011010101010001111010111111011101101011110001101000001101111010111001100110001100100010110001111011110001101111011101101000111011111010000011001111111100001100101000011111110001110111001011010011110110111110001100011101000000100001001000111111000011001110101101101010110110000110000011111101101010101100010111111010000000100011000011001001110010100110010001111000110111111110101100011100110001101010111111010011110001011111010110001010011000010110111010110111110100100011001011111101101101111111110101100000001000100001010010110111100010010111111001101110110101010010000010000001011100110101111000100110101101111111000001110010011101000110100100000101111001011010110011010011010010011100101110000011110110111100000001000101110100110101111100011100101111101100011001101111000000011000001000110111011001111011010100010100100101101000000101011100100010010110000011110110100100101011101111010111110000100001010010010111100111010000000011001010111110101100011011001111111101110110000000101000111011010111010000001101000101101000100011110010100001111100011100001110000010100010000001100101011010111000000010001010110011110000001100000111110000011110101011001111011010101100011101101101000100010101110000100101010110110010011001100101011000111000010100101001111010100010111100101100101100110101110000010001110110001101000000111000111000100101100001011110011010110001100010100110001111111110111110001011000010100101011001110100000011110111110001111111000001001100011110101011110000111001011110001000110101010101001011010110001110001101111001000110100101000011111000001001110111110001110010011110110001111010101011110001110101000001101010001110000010101010000011010101101101111000111101000111100110101111011010110001111001100111001010100000110001111000001010100010101001000010000111111011000001011011001001110101110010100101111001001000001111010101101000110110001101000000100001100111000100000010110111010000111010100001110101001101000011101110100010010110010110011011010011010010000011010110000000010110110111000010110111001111101001110100100100100011101010010110010011111101001001001010100111110100111010010110011111000101010110011100011000010100101111010000101010110000111001100101101100011000011010011010100111000011011000001001---------010000001110000101100000100010011000110011101010010000010110101001000100010100110100111111101100000011010001010010011011111100001010001101100100011111110101011111010010101110010011011111110100111110011000111110000011100000111111011010010110101001010001011000010100010111011010110110011000010110011011001001001100110111111100110000010100001011001100101100110111010010011001001101011101101001000110010100010101100011010100100010110001010001110101111110010010100011011000011001110111101000111101010111001000001010001100001101111100000010111110110111010111110110000100111100101101111001000110000101000010000001101101010111110010000100111011010101001010100110110111000101111000101111001110010000010010101011000000001010001001011101000011011001110110100001000001011111011000110110000001100100010100010010110011001011001001100110100010011011110011001001011111001111101000001001110011111000010011100111110000110111001010010101001000101100101001010111011110001101111111011011110010001111110001001001110100111011110001110001011111011010010111110111000111011000000111111111000000100001011111111010110001101010111010100000100110110000101111011011101110011010100100101000010100110100000000100100111001000001001111111011001001111000110001001010110001001011000111011100001010010000110101001000111000000111001110100101110000100111101100111010011010001001001000011100111000010010001100010110111100100001111111011011101011100001111111011010010101111111110100100001000011100001011100111001000010101010110001101000001011011010100100100010100010001001000000111111001001000101100111001010100111111000001110111010011011110110000110110101001010000011110011100100111100111000011010001000101011100111001101000001100111110101101011100111101100111000100011010010010001011111010101011010110110101010101111010101110100011110000101001000110000011111110110111101111010111001101100100110011101100001111101010110100010111010101110010110111111001010000100001111111111100010011110111100010111011010101110010000001001001010000000000111000010110101000110110111101001011100101011001000000110000111010111101010010101100011110010100111011010110101100011010101011110010111001010000100011000001100111100001111011010011100111010011011110111011101101101110110010111000000010100011000000110110110100100010000000011001010101100001000011001010110000100000001111101011110101111001101000110000111100001101000001100011101100100000101110011110100110111010011101000110100011001110101111101111101100000001100111110011000001100101110001001001101000100100101001100010011100011111110111111010110000110000101101100001000110110001111011110000000100111101011110010000001000100101101100010010111101001101111111001010100000101010101100110011111010001110101001100111010000111011101111100101100011000111110110010101000011000011111010000000000100101110111110111000001111011010000101111111010010010001010001110110111001011111100000011111000101101110000011011011011010101101101100000110001001111110011100101011110100001011100110001111001000101110001110100100111111010011011010101111011011011011101001001110001011101100010110000111001011100101011111111101111101101000011011100010110100100100110110100110110011001000110010100011111111111101101000000000011100001110000110111010000110100101011011101110100010001110001100111101111101100110110000100011011111110001100001101101010100011111000101011111110000110000000001100101110111011010010100111001101110111110001010100101110111000010111110010010001100010011000111101111110100101000100110011101010011110111100101101100100111101111111011111011110000110111111101010000100001100011101110110011001110110101110000011101001010011101101110000011011010101101001011110101110100000100101100110001110001110000111111100001011011001011000111111001011000001100011010100101010001101100000110010101001000100101111100111101110111111110000110101110011101101000100001011100011000100110100010111011110101111100010001011011111001101010011011011011010010110101000101001101000001000100010111010000110011011110111110111110001111110111111000101111100001111111001110011011110011110100001100000011100100100010001110100011011111001110101110000001110001111000001101000000001100000101110111001000110101101000101010011101111110110001000000101011001001100000000011000001101010111100100001011001111100111000010000101110011010011010011110001100011110100011001011000010000110100111010000000011001000100001101001001110111100010111010001111110101110011110000111110110101100000110111111111111010101111001001010000100011110010011010101111000000110011000000100011101011111101100001011011000100010000111000001110001000101101111110001011101101011000110100101100111000100101001000101001001111010111011010110110001110111001111010001000100110100101010000011001111110110001011111110111001001100111000101000110110100001001111101110000110001111101001110100001111010001001101111000011001010010010101011101111001011101011110100001100101111000000010001010101010011000110100001010001111001000001010101100011000010001010011101111011001100100011010100111111001111111100001101010011001010001011010111000100111010111010110010100011110010000011000100101101111001100000010011011101001000111010001001001010111101110101010101011111110101010001010110010001101101100011110101011011010101001010000111110110010010001011100110011011110001001010110010000000111110110111100101101010000000110110000011101000100011001011101011011010110011110011010110010001010000001010100000100001111011011101000111010001101111101001011101111011110100000010111011101110010111011101101111000101101110111100010010101001100000110101110101000010101100111110100110101010010011110110011000101001101101110111000010100011001001011000101011000000001001101101001111001011010101111001001111010111010000001100010100000011000101111000100000000100000010111110101111110110011001110011010110110000000011101111001000100100010101010011101100110001101001011001010011101111111010011000111101000000101100001001000010111000101000000100000001010100111110001110011111111000111101000100010011111110111110001010100111001010000101110100101111010110000001110100100101011110010101111001010001100011010111001111110100001110111001001100111010010001111011101111101010011111100100010110010110010111110000111000000010111010100100010110000110001110010100110100111011010010111001010111101100001111011100100010010010011111101001011001110000000001100000000010100100110110101011110110100111101000010110000101111001000100010001000001100110110111000110101000000110100111011100011110001010010011100011100001110010101101101101100101111100101101100111101110010000111000000010010110001010111011001001011101101110110111100011100010011110000100010111110111111110001000000101010111110011001001110001000000110000001011000101111001011100110000111111000100111110110100101101100110001101111011011111110111011100010101000111011110011011101111000011100111001000100110100100001101010100011001101000101000011100111010101000011111110111010000011100011101111001100001111111100100110111101101110100100001100011110010111100010101011101111110111101011101110010100100011000101010000000110000100011000110000010001010001111101010101101000000100011011101110001000111011110110001000101001000000110010010101011111010001110100000110011100111000110000110111100010100111010101001110011101101000001100101101010000011011101111101111111110000011100000011001010110101100000001001001011101110010010101110111011001001100110100101111011110000000110000000000010101010010111111110000101111011000100000010001000001010011001100011101000111001000010100010101000111100101100000100011111010110101110101001010000111110000111111111101101010111100100100100110111100011101011001101010100011111110111111000001000100011011101001000000101001001001000010111011001010110011001010111011111111100000100101101001100011000100100100110000110000000111111010110011110110101111000001101111001000101001011011011001000101111101011010011110001101110001011000101010000110111010011001101011010011010101011011101010111011110111110100101100010010000111100111101100100100000101001000010010011001001111101111101110111100010010000011011011001000100101001101010100110010000010101100000001011101001111111110011010010011010000011011001110110011010011000011010010000000000011010010001000011001011010011000110010111100000000010100011111111110010100100011001101011010010110011000110110110110111010101110101111011101101110111111010100000011100101011010000010001101000100110111001010101000101111011111111101111011110001001000011111011110010001111101001101110110100100010010011101111011110011101001000011000000110111100011111000001110011110001111111001001100110111101010011100000101111001100100010000011111101100011110011101000010011011011010110001101101101011010100011011100001011111100111010111001001111110001100101010001110101000101010100011110011001111110100001100001101111000010110111000111110110110101110001011010111111011010000111110110101111100110000010100010011000101010110110010010100101010111000101010100011111000010111101110100010001011010000000011100101011010110010100001001110010100000111011110111001111111001100000111110101001101011101111110011001100010000101110000011101100000010001001000110111001001101111101110000101010011001110000110001001100011000001000100100000110101110001001100111111011001101000001001010011111000100000011001111001100111000110101001001100001111111011000001110111010101110111111011111111011000100000101101100001001111100111101000000111101010101001110110111010011100110100100111010100101110000011100001111111100001111001001100111000011110010011001110100011000011010000000000011100100011011111100101100111110100001101001110000000001100110111110110110010010001100001010010110011010110110010001111011011010000001111110110011101101011000100010101111110000001100110100100110000110101001001011010000001101011001010101000100111011010000111000110011110001000111000011011111110010010000110100110110100010100011010000000010101000001011110010111110100010001110000111010111001100100001110011000111101011011101001101100010101000001110100101010011010011100011001001011010100110001111101010110011100100011010010111101000001111111010110110011000011011111011010000010111001110110010100000100000011101110111011100110110101100010000011100000111001110111100001100111001010000011100101001001001111111111110001110011110101101100010001011101111010010000010101110010000010101010100101110000100000000110001010000101011001000011101101101011110110110000001000011101111010010011100011011100010100111000111100100110110000010101100010111011001100001100110110010010001111110001011011011111000011001100010011010111101001000111000100001001101111011111001110011011010101010100010011001111000000111001001110000000111111100000111001011111100101010011001000010100101101100000100111000011101110100110111111100100001010111111111100111010010100010010100001101101111010100110010111110011001011110000100100000110001100111111100000100111100000101100001010010101001110001111000110000100110101101010011110111100101000011011100110111100110000010000011111100001101101001110011100100000001001111010101001001001110101011000100010000010001111111101010101000000101001110110001101001101010100110101101011101000000110110111100100111011001011101001110011101100110001001100010001011101111100110111001101100000001110111100001000000101011110101111001010000000110111011010110001000100011100110110111011001001110111000011101110010010000100010000000011010001010001111011010000010111100111111000011101110010111110001110101101000000111000111110010010111100110100001101000101111000000011110011111010110100000110110001010001110110110010001100001100011110001101101101101111001011010001001010100011100000100111111010000101001111100110010011110101000110101001010010000000101001010010101111001000110010000110111001101001110101011110111110100010000100001010001111100010011010011110101010010010010100011111011010100110001100110101001011010000100101000101000010011010111111001011111100110101111010100100110010110100010011110000010101100110010101111010010111111011110110100111011010100010011011000011110110100011110010110011001010001001100010000111110100110101010101001011101011000100000110110000101101010101011101010011011110010110001111100010100011111101110010101011101010000000011001010101001101110011001110010111110110111000010111101011110011000100100011011010101010010010111101110011110110011110000001100100011111011101100000001000001110000011111010000110010100010001011011100000010010100101111010101111001000000110101111011100100010010111001001101001110110100110010111001101000111100010101010100000010001110110111000100001111110010101011001100000000001001111111001110100010010111011010011100000011100001000010110100111100100010100000111000011110100101010100100001101101111100110101111001010101100000110001111011111111100001010010000110011011100110000011000000111101100000000111010011011111111001110010111101101011110101111011101100110001111110100110111010101011111001100011111101010111010111111001100110110011011001010001010011101010011011011110111100001011111000111110101011000011101101110110000011100010100110010100001011010010100010100010111111011100100101111111110111101111111111110010001110110110000101110111000111000111100001101000110100110001100000010010101011111110111000111101001011011110101110100000100100111110001011011110001110100010001100011011001011010100000000000011000101011000011010111101010011110100100000100111001111101100100010000100111000001111010010010101100101100101011001101110101100000010100001010001001011110110100000111100010110010101100000100100011001010010111100000110000100110000100010000100101111001011101001001100101011011101001010100010001101100101111110001100100100100110010000111011000111100110011001000011001000011111011111011110001101000000110010011000000101101001010110101010011100001111101000001111010010010101110000101010000010100101010110001101001111110001010100011101001110001110011101001000111111010001111110001000010000111101101000001100001010100000000000000101110011010011101101110010101011100100111001111111101110111001110110100011010110111000011111110100001011010100100010110001001000100111000011101001110011100001110110101110010000010010101001111111110101011001111000001111101100010111100001100000000011000111010011101100001100011011010110100100111001101011000001010110100001010101011001100110001001110010000011101001101010001000001001110001010100011111101010011110111000010010011110010101111111111011000111011001001011100000100111011011110001011111010010001111110001111101111001100111111101100101111010011001001111110101011001111011001110010110001100000110001000101110010001010100000011001100000010010111011011111011100000011010110100111001011101100101010000011110000001011000111011100110111000101101110001010011011001111011101110101110111000000110010100011001010101011100100101111000011100001110001001100010111001011110010100010011001111010001001010101010110110110111010110001001001001001010 +10011100101010110011111100011110110110111111100000000111101100011011111011111100100111010001110101000101100101000010101110111000000100000101101100010001001111001001101011000010100000101011000001010101010000000011101100110111111001111110110111101000110111001101000101011011110010111111110001101101000111110101001111000001010101100010100001110001100011100010111100001111111001110001111111100111001110100000001101100000010101100111100101010001000011010100001110001000100010101111011101001110110100011100001000000101011100111101110010001000110110110000000001000100011000010110001101110101111010000100100111010001000010000100111101111010111011110011110001010100101011011011100000010000000101001011000001000000111110000000110101011101111111111000100001110110011110101000010010000000101011001111101011010010110011010100001111001011000000001010111101010100100001111011001011001010110110110111111101000000110011011001000101010000111010111000100000010111111101101001110111011111101011010101011001000100101001001000101000110111001000000111100010110010001010111111000011000100101001101110010100111100010101101101001100100111101101100001101110101111000110101011001110011110011001001010010101110110001101110011101000110101101011101110000000110100010010101000100101111110110110101010000001100000100101010001101111010010000111100011011111111100000111000100010000010110110010111101100110110011010000011011101000011011101100111010110111001010010010000101101100011000110001010101001000011101101001000001101111100001111100101010011100010111111110000111100100101001010100110010010011111100010110011100111010000000000110001000101111111110000001001101010101110100101001100000100100100110010100101100010111000101011001100100011110100110110110010100011000100011001100011010111101000011001100000000010000101110010011001000001100010011001000100101010101110110011000110110011111101011000001111111001001101101010110100010100100000000001001101101000001000101111101001001001111110100101000001000101000010110000010011101110111000010000010010010010111011000011000110111100010011100000000000001110111110110111100110100101001111000011001010011101011111110110110110100110101010100010111101011010001111110000101011011110011001011010011001011000101110010101101000001100111110011001000001000011010011000001011000001001000100010111000110100011000111010110101000101100011010111111011110100100100101011010010110101101011010110000000001111110010010010101110001110101000000001110010010001001010110001111101010100000100100011011101100100011000011111010110001000101000001000110001101011011111010010100111010110101100001101011110100010100000010001011100101101101101010011011110110000001111111101111111111000001000000000111100010001110011100110110101100001001101111010010010001110100111100000000001011100111001100111110111111100111001001101000101110111011---------110010101100011001000011000111111111000010000101101101100111001001100111100111011111010101110010000000000110100110010000010011100000101000001110101000111010000010110111010000011000111000011111111101100110111110010111100001100111100000111000110110000111001111010001100100000010000010001100111001101110001111011110100101110100001001001001011100000101001010111100011110000110100010100101111111110010110100100001001100101010111011101001111111010100111000100011011101101011000100001010100000111100101000100100100101000100110100100000001011101001100111101110001000001100111011110111100101101011111100110010001110101111101001011100111011101000101011110011101000010010011000000001111011010101101000111110111011100100011011100001011100001110100101101100010100010010110011101111111101100101011000000100001011101001010001101000000011001010100111000101100001111011101010111001110000001011110001101010001101000101110000000011000101101101000010001111011010100010110110100011101011111110110001010010010100010000000011100000011100110010011101000111010010001100110101010110101110111011000010001001110110010001000001000001000111010100101111001100010110111100000110001110110100001011111001000101010001011001111100010001011010100111011100110101011000011111001111001110010101010110011110111011010110101000001100001101010001000101001101010001101000111110100010010000100011100110010110010110011100111011110000000110111001011000111010010111010100001110001001100101011101010010111110111100010001101101101001100101001110000010100110101100101010100001111100000011000010110010001011110010011110000100001110011010001101100101010001110001011010111111110010100111111001000101111111100001011111101011101101010000111010011100001010010111101100011000011001010010110101100101101101011010101111101101111100110010110100100010111001000111010000010010000001010111011000111010000101101111100101000010000011010010010000011010000010100110000000111010000101101011010111000001111001011011001000111000000100111100010110000101100010110000011010000010010100011100000101011011111011010000101100000000101101011010001100010110101000101000111101000101100001011111100001010011111101101001110111011001101100100010010110110110101101100011111010000001111000011110011110101110010000010111011011101010011100111111100010100000100010101000001010010010000000101101100111111110001101010110101101011001101100110110010111010011100001010100110001010101010110101100101110011000001011101111110011010101110011101101010111111011000001101001100000001011100101110010010011101010000101001100101110111111010111100000000010111110000111001001111011101111010110001101101111100101001100010000100011101111111001001011000000011110010100010111111110011001001010001111000110100001101010111110110011101001010001011100000010000110001010001110100010100000110100000100000110000100000110010111110100101110001110010001111100111011001110010100011010011101011000111101101101000011000011000010001011100000000110010001111110101011110000000111001101111001111100110111001011000001001110010000010010101100111010011011011010100100001011111001000000001011010001110011100010111010100111111000110001001101111001101001101101010110000010101011010110011010101111000010000111110110010100001101110100100001101101111010100101101010001110101110101010110010000010011010111011001100110001001100101000101001011100011111100011110111100000001010110001100001000001010011011010110001011100111101000000101000111111011001001011000010101011101011011001000010111011111011101000011010111100011100000011011011010001000000010111000110101100000110100011001000010100110000110101010001001000001011010011110101101000110010100110110100010111001000010010000000100000000100001111100011011101100111100101111000001000111110110000011011101110011110100010100101010100101010010111011100011010010000001101111110110001001001011101110000011000111100100010010011110110011001001100011001101011010111011001001111011101101010110010101001010010000110000001001010011100000100011001101101000000100000001010001011000100100000010101110110110100011110100110100100111110001010000011101010101101011111101011000101101010000101001000010111110001111010011000000101110110110100101011000101010101000010100001111001110010010111010110010100001001101000100100101001011111010111011000010010110100110111110001001111001010101111000101001111101100011000100110101101111111110110010100011100100001001001110001000010100001001110110010110011101101100111011011000001100100111101101000110001010100000001010011000101010111111100100101011100100001000001011110001011101000010111111100010010011001100111011001100000101110000001101111001011111011101011001001111011001000011110010010000011110010110000001000000101011011101110111001000111100001001111011001001000011010010100101011001010001101100001011011010111010011001000000001000000111011101101000000101000100011000010000001101100001111011100101000011010001111100110101100111111110011010110010000111001011001001000111111000000010100001011100100000001010110100111110110110011010100100010010010100010111101000001101011001111011001000100111110111010101001011100001110000000110101011100110010000010011100100011100110011101111111000101001110010101000001111011100111111010111111111001111101100110110001111010101111011110011100000011001000000001110000010000110110101000000010000101101000101101100101010101110101001100111111010111101110110100101011101100001111010000010110000101100101010011011110011010010000111100111010001011001011111011000001110101010000110111101111110000101110101001000111101011100001011000011000111111001010101000111110011100001001001000011101100010001011110110001011010001110100011000101110100010111111111111111110101111111100100001000001100111100000011111110110101011000100000101101000100010101100010000010001000001011100000010011001011011100001101111110101100011001101100011110100100110000101010001011011000110000001001100001111001111100111001111111101000000111000111001000001101010111010100111111111011111010100100010010001111001100110001110011100010100011111001101000001111100100000000000010001011000011010100110010011010011100111101110111010000011010101000111110001010100010001011001100100000000101011011001101101100001011001011010010110110000000110011101110011011101010011011001011010001111100101101100010011000010100110001000100100000111111110010101100001101101110001100100100110000001001001011101000010001111001001100001001101101001010110110100100001011010000100110111100101100011010001100000101101001011010101111100010101001111000000010101110111100101101001100001111010110100001111011100110000001101011000111100011111110000010001001000110000000101000010110110001010011010001101100010000110010010001101000011110011011010001111101001010010100111010001000100101000000101000001000010110001010011101111010100010110010101110111100001110101100111000000100001010111001010101000110010101110111111010110100001111010000011000001100100100111000110111010001111110000110000100111110000010110000000001001011111010000101111010000111110011010010111000011111000101011110001101101010010000101010100010110010000111101000011100111110100110101001000001100001100100101001011100111111011111110101101011100110111111001100100011101010001010111101000000010110101101111000101001101010110010101101111111001101001110011101010000000110110111101111110101010001110000001110100001000111010111111010000001000111001010000011001100101011110010010011001110101111111111101011111001011101011001001110011011111101100010110110101110110010010000010111000010001111111010100111101001001000011001011111011000110100110011001000111010001100001111000101001101011101101010000100001100011010000011000100011011001010111110100100110110010000001100010111000000100100011011001111010000101001010011000110001011000110001010010010011000000000110000110111011100111001110011001010001101110110010001011110011100010110111010010101001111100000110111110000000011110001100011100010100111001101011010110100111000001111100110010100001110010100010101011111000000011111101001101111111000000010001010111101101011110110000110000010101110001010101101011000001001001000001011010110101110000001100001010001101110000110100111100110101000110001010010011001000110110101010000100011001111100001011110000111011010011110111100100001100100101000111011100111111011010011010010101101111001111100100000001010001110010011001011111010100001011110110011011011010101001001110000100111110001011000111001011010100100000100000101100001001011001110111011000111111111101111100111001101111000100010110010001001000110010111100111111110000110011001000000110110010111101110100110100011010010101011110101110011011000110110001100010001110111010001100001001111011101100001010001110000000101011010110001011010000110011011001000010101010111011001001000000100000000110001111001111101010001100101010110001101000100111001011001111101010001001010110100001011001110001001111011000000111000101010011000101011110100000101001010001011000000100001101010001111110000010010011110000110011000000011001110101001001111100100100111110001001010101011110110111011101011001111001010011001001010111010110111011111100000000000100001001111010001010101101011100101100010100011111011010001010000100010010001101010100111111111111000000010110101101001011000100000000010101010011001001011000010011100100010100010101010111100000110011011011010001100101010001011011111001101001101000100110000100110001001001000110101001100100101010000100100000000111000010100100010000010111000100110100010011100101000001010100111100001010010001001010100010001111011111110001011010011101010101001011001010110011011101011100000111101101011011001010010101111010100110100000101000001100000111111000000101101011100101011100111110111100010101010100011001000100100101010001010101011110111010001000011000001010100001100010000000110000001110000010110110101001101011111110100111100010100111000000100001010101011111111010100000000001101100000100010100111110010010000001010001111111010001110100111111001000010000111101011101100000000010010000000010001000010111101100101111110111010110000111100111111110010111100010010101111111110000011101100101110100000001011001111100010011101100000101101100011101111011111110101101010000000101100000001100010101000110101001111101111000111000010011000011000010111110000111011010100110110110000010111110000001000010011010111000101010000100101101111101101100001100001010001000000010110000100010010111111010001100100110101100010100011111011101110111011111001101111001110010111110001110110100100100001111010011010111110110001101110101110111100000100011100011001111110001101110100101001111100000011111101001000110101101101011111100111110010000111100000001111010010111101011010011011010111110111001000000101010011100111011001001111011111010011001101111001100010101010101011111101100001111101011001011001111011100011001110010010000001010000111001010000101111101110001110000011000011111111011100000100111100111100111100010110001100100010101010100000100011100111100011101001111001111001000001111110011111011011001101101000110001100011111101011001001101111111100110000001010001010100110011001100110010100001010010001001100010110111101110000000100001000101011110100100110010111011101111100000011000101100110110110110010100000010010101101010011111110110010110010100100010011100111001100001101111000001111100001000111110011001110011011001011100111111100010111011011100101111000010011110011100011110101111111101100011010010111101011100101110101110111111001001100101101001100010010010100100001011111101001101010111011001111011110101111001101100111010101110011100101000111011000000101011111101110101001101101011010111100111100010001111110101011001000101001011010110011010000010111000111011000101110100111111110111111110011010110110011101001111100011111110101100000101001100110011001010001001111110110001011101101101011010001001001000100000100011000110001010010010111110000000010110000101111001000101100000110000101110010101101111110110010111110000000010110101011101101110000100010001010001101100000000010111011101100111001101110110010001001110111101000100110011011011110000100010010111000010001101011101010101000111101000000110010010011011110010011010100000011010100011111100110010101100101110000011101101101000011010110101001111100011101011101100100111001001101000110011100110100101110101101000101110101000101011010101110110001011000010010011110100110010101001100000101010110110001010100000110110010111100110011100110100010100100111100100101000010110000110011010100111101100000001000010110000011111100011111010111101000010110110110000010100100111101011111111110010001011000101000111111111001101111000100101100011001000000100010110111011011110010100001010001100001101000001011000000101010010101100001101110010000110111111101110111111000100010110011110100010010101100110001111001101110011110110100110000111010011010010000010100110010110110100000001110000001110010011110101001010011101011010101100110100000011011001000000111011110000110010001001010010001101111101001010110111011010000101001000001111110001000101011010110000101111101010000001100000011100111001000100110001011100001101111100010101111011011100001101000011000011010010100111110001101010110100011010010110000100000000101110100001000001000010011101110100000100010000011001111111101011010001000111100001100010010101101101110111110001010011001001110111000001101000111110101010110111111111100010110100000011100001001101100101100001010100010000100011101000100000101011110011111001001011110111100110101011100010100010010101011111010110111001110100110000111111101110100101011000000111001001011001000101100101011010111000011011001010111001101100001001000101111100000001110000110000111001001111111000111100000000101011011000101101011111001111111101100110011001010110100000000010000111001111010101000011100110110110011000000110011111001100111010010001000001101111000001001010000000011010100011001101101001000110101010000101100110000101110010101110001100111010001110001111101011010100100000001111010010110101100110001001000010111011001101111110111011001001111001101101010011001100110111111100110100011111000011001000010000111001100000111010101010010101100000000101110010010100110100101111000010011000010101001111010101010101111011100101010010011110110010001001010000010010111100011011101100010101000101111110011000010111110000010100010100110110010101100001101110000100011011110111001110001101010010011100001101101100010000111010011001101000001101000000000010000010010010001010110001010111001011111010011111010101100110011010000111010111111101011001000100001000010111101101111001110111000100001011101010011001010011010010001110011011011011000011010101100000001111111010101011111011010001101111011111111000010010011110011110000010100001111010110010111110110000011100111101010110001100011011001111010111110001110011101110110110000100001100100001011111101001111100010101100001010001001110100010011110010010011110111010011001111100011001101001110110101111101001011010100101011 +00000110110011101011100101110101111111011101110111100000111100110001011011010011011100111100010100111001101111111010111100110100111001100000010100001101110000001101000111011111010001010100101100001100000001000100110111101010100011001100110011000001110110010000101011100101001011011011001000001010110011011100111011001000011000011011111001101000101101110100000011010101001011100110001000100010010001111011010011100101111101010001111000110001011011010010000000000100011101100001010110000001100111001111000011001000000111110110111011000110101110010001100000000110101110010010001011010010111010110111110010001111000100101001101100100011011110101111110100100100101101111011110110010111011011100110000011001111100010110100100010001001011101011001000011100010000101110110101111010101010000001011011011111100001001110000101101111000110101010001110100000011010001010001101110010011000101100000101011000100111001100001000010011101110001101010101010000111001000101100111000110101101010000100001010010001101100110010100000011000110000100010110100110001111010011100101110111111111111000010111111000001001000000110110010001110100101011010001010010000011110000101100111101101101101111001100101110010010100011011001111001110100101101001011111011111001100101001011001010000011111101001001101100001011000110011010001010111111010111010100001011000001010110011010001000100010011010001000110000100011000100011001010101101100100011101111101001101110101011011000100001010011100001111101011011011010100011011000000001101111100000001110101000010011000111001011010111100110101110000110000000111110110101011010011010111101111001110011100011110111100110010110100100100111000111111110000100010111001010110101101011011101101000001011110111101100011110000101000001100011101111010000000001010010111110010011010010010000001000110011110101001111011100001110010001110111000001000111011111111110101010101111111110101100011111001000111110101100111010111001001001001010000111000100010110100111110110110010011001100001011000110011101001011111101101100110000000100101101111111010110100100101110000101011000111111111110011111000111101010100110111010000101010011011111100101100000000001000000100110111110110111101111110001100001011010110111101111101001101011001010010110100101100100010000101011110001100011010110100011101111111001110001101010011000110100000100011110100100000000110000111000010010101110001100011011001101100100101011111000101000000111110100110101100000001010110111010100111011100100010100001101011101001000010100011101110010011100001111000000010000010111100100010110101100110100001010100111001111001101110100110111010110001001111111101100111101011111011100110010001011101100100011010111111111001010100001001000101110100000110110111110001110111011110010110011111100111101110110010110100011011101111001101011110100000111011011001010110---------001001000001110111111010110110101100110001001110010111001001001011110001111010100000011111110110011011100100100111100111110010100100110001111111010010111010001011000110111010010110110000110010011001011000011010010111010110010100111111000101110101000000110011111100000011101010001111100111010000001000100101100100010000101000110110101110011100100011011000000001100000101000100001101100101001100101111011000111000001011100011000000000011010100010100110111010111000001100101101011101100110111111111111111001101010100111101110111000001010011101011011110111011111101010100000011011100010110011111100110011111011101100000000111100001000001001001110100111111011110100110110001101001101111001010111100111011101100010001000111101011110001111001000001010110110001110010110110101100000001110010110011001111011001011000010101101000001101110100010111101000110111010101000111011110011000110111111001110011001011111110001101010101011001000010011001011110100010111000010111000100001000100110111001001000101000101111100010010111010110110110010100111000100101001111010011111100101110111001111001001000001100111000010001000100011001011011000100101101001010010110111111110000101101110001000000010010010011010101001111010100101000000010100011110100001011101011011101010000000000001001101111001011110110111101010110011000100101110111111000111000100011100010100000100111010001010110100101011111001001010110111101100111011001011111100010100011010000010011111010111000111100000010101011011100111001100111001110111110001000100011001000011000111101101001110011101011101000111011110010110111000101010011011000101000101010010010111101100001110000110001100101011110001010010110011100101000000010100101001110001100011011110011001000011110111100001011000000011111000001111100100001001100010110010000111101010010101110000000101111101010111001011000011111110100110110101111000001110111110110101110011010101000011110000111001000111100010001000010101101111111100001100111010101110010000100010111011001011100010101110100001100111011011110001111010110100111101001100101101011000010011101111100110100101010110000001101111000010011010011111100101010001111100110111001110000011011110001010000101111000111100001010101101100100101001110100000101110101100011110011100110111001101111100111110011001111010001011000011111110101101010100000000101001001101111010101010010101100011101111010101100110000001000011110111000011011101101000101100100010011100101011001111100001010000111011100001000111111011110001110100110001011011110000010001011111100101000011011000000010110100110101101010010111110001010111100011011000110011100100001100001000111011001010001100111111111001100100010101100110000110010011011100010110110110001101010001101100000101111010000100100101011101001001101111100100101100111111100011111001101010000011100101000101011011000101111110010111010101011010010100101101011100010000011010000110110101101100110010011100110100110110001001101110011001100100111100111010110101111000111100011010100101110010110110111110110000111101110000011011110000000001101110001000001111001000011001010011100011011000101110000011010011010000010000000110110100011101001010100101001011010010010101101101011010111010011111011101101100110110011100111000101110100110100001000101000110001000101011111000110111101110001100000010011101000111111111000001101010101101111000001001010011110101101110101100101100111000101010000011011101101100110100000010110011011011100101010110000000011100011000101100100101011001110110011001110101011001011001101001111111100100010010111110010001100101010010100001000011001101011010111000010111100100110001001110101101110101100101000000000001010110000101111110011010111001000001001100111011110111001000001001011011110000110111101100100011111011011110011011100111001110111100010010101111000011010010111011111111101011000001101110001001011111000000100111000010000000101011110001001101110100011110001111000001010101011100001011101001000101111001001100001110010101000101110100101001100000010001001001111001001110100100000101000111001111100101100110010101010000101011011111000000000010100100110011011011000101001001101001010010111110111000011010110010001011000001110100111001000011001110101011111001010110110101100100010111000110100100111101100001111011101000101110100110011000000000000111101101101110010010000101011000111111111101001010010101000101011010001100000010001111111000101010010001101101001010100101110101110010000111111110011110001000111100110000011010000101111010111001111100111011010001001001101001111101001110010110111001110000011110100100101101111000100010001101110111111110110000010101000110100111110011000101101101110011001110110110010000001010101110101001010011100111110001111111111011101011011100110110011010100001101100101000000100111101010111000000100100101100100101111100010001010110010100100000110000100000100110010100111110101011110011111011111101110001100110100110011001110111111010000010001011110111111000111011110111111111000001011110101100100001100101000111010101110001000110000110010100011010101101100111111111111111101101000001110011011010110000111111111001011001100000000110111000001011000010011101011010111010001101101100111101000110001110110111000011100000001011000100001101101010100110100000110011001100111101100110011101001000001010001110101001001000111010101111101000010111001101001011100010111101111100101000011011001100000010000110001100100011001001000111011000011100001011000001000111110001100111100011111111110101100000000110001111000111001011010101000100100111001000011000011011101101111111100100100000000011100000000101100001010101110001010000000110000000011100011010111000100001111101111000011111111111000011110101110101111010011010111101000100111101001010000101100101101001010101101101000000000011110000010111100010111000011101111101101001000011110100011110101101101001000001001000111100111110100111000011001110000110110111100010111011110011111101101111010110110010000111000111010101010000011001011101010000110101110010110011100000011110001100011111111001100001000100010000111011111100100100011001000101010000010010011000011001111001111001011111111111000110111110100011100110001101101000100010110101001111110010101111000001101100010110100011101101000111011000111000111010001100111010011011110011100010011101011101101011001101001010000000100110011101101010011111110010000000001001010010000111110101010011100000100011111010001100111011101101110111100011100000011101011001101100011001110100101001100011111110110100001011111010001011111100100101010110011001010100110011010011101101111101101011011110010001001010111110001100011010111001010100011001000001001100110101101011010111001000010000100110101000001110111110001101001100101111110100001010100000000111000011100101100101011000110110001111101010001010100100100011100101000110001110110100010011011000000101110001001100010001011101010110100000011001101110010101111110101111001110111111011011110101111110001001011100110000011111111110011011000010011110010101101101100111111010111100010000111010010010010101001111000000011101100100010110010000110011011111101001101000000111010101000101111001001110010010101101101000100010011101110100010110100010000001001100000101000001111001111110110110000010100011011111001101111010110111000010000001001110001001100110100111111000100111101100011010000100100100001111000111000101101110101100111011001011011001101011010111110010001111100011001111110110100011010000101101000100010110111010100010110111110000101001001011010101100110011000000010110111110101100001010110001011011110010010110001001111110011000101110011010101000101100110000000011101110100111111110011000111110010010000111100000000000010010011001001100001011110110110110001010101001100010010011111000001010100001111111101010010100101110100000110000101000000101100111101011101000100111110000111101101001001101101010100101111100101110111011100101101100010101100010000011101111000100001100111111100001011011010111010101000011011000111010001110010001001000010110000000110000001100110000011010101100011111001101101111111000011011100100000011010010001001010000111110111110010110100101111011010000010111100001111111011010111111111111100000100110001000110100011111101011100011001111101011111100100111001010110011000000010011110010001001111111111001110110010011010011101000110111100010101100001101101011000000000000000000111000111011010001010110010100100010000011111111000110111011101111111001010010110001111000110111100100111001111010011110100000101011010110100110000011011010111110000000011010100011001001110101110101010010001110000010000101001100000010100100011011100001110101001101000010000010101111111010010100010101110101111111010011111110001001001000000010011010111000111010001111010111110110010101001101101100111000101100001010100011001001001010110101111000011000011100111001010011000011101010101100001111111001010110111101111110111110111100001110101010110111011011100010110101111110100011010100101001110010000000000011000000100110110011110101101100001010000000101001101010001101111100001101100011111001001010011101000101001010111100101111000010001111000101111111110101001000100000110000000101001001101011111101010101000110101000110001111000000110000100000101111000101000100011000110000001110010000100011110000100101010100100011111101010011010101001000101010101101001011000100000111000111110011011000110101110010111111110010001100000110100010100001011101000000010010110000001110111100010011111110100010001101101000001011110000010011100111100110011001010001011000101000010110011011010101110111011111000111110100101011000000010010100110010111111100111010001100110101111100000001000001000100111101100011001001101101001111111101101011101010100100111011110100110101111010101110110100001101010001010001001010000000000111100000111001000110101101111010001000101010100001101010111010100111000010000010100001001000100011011001110000011101111000000010100000011011010011010100000011100001100010111111110011001100110101101001011001101100100011110011000001111011100000111011110101101111100101111101111111111111111010000101111101011010001100000110000110110111000011011011000011010101000000101011110100011010010101110101110101100001101011000111110011110001011101111011110010111100011101111000101010100101000101100110101001101010101110000100011000110000000111000010011010000000101011110011011010100011010100110111001000100100011110110001001111010100011111010001100001100001111000110110111101010100100111000011011100100001101100110001111110111111011000111111100101000110000001101110010001101101010101111001111011110001101000100101010011110001010001011110100001000001111111000101100011011011101000000111011000111111010100100100010000010100111101100110010110100101111110001100010000100110001100110010001110101010001101000011010001110000111011111111000010100001000101000110001111000010101011000111100001001100111010011010011011110001000101111011100100100110011010110010011101000001110000110110111101110000010100001000011111111001010010010000110100100111111101010111111110111010110101001000010100001000011101110110011010100001110000101010100001100000011001101111110000110101110110100001100111011110000101011100001101101000011010011100010010000110001110010000010011110111001010001111010111110101011111111111100010111111001000000100011010111011011010011111110100000001101010101010100110101101000110110010000010011110100100111111100110100100001010111011110001100101011011000011110011011110001101101111010101001100110001111111111011001000010101000000111100011011110000000111001000001100111101010101110000111010101010000111110110000000000000111110100010000110110111000000110110000110011010000111011001100101011111100010010010011111000010011010001100011100000100110110111101000001111010000110011001110000010110011011110110101000110110011001101001100110111101010001010101110111010110110111111001000101111110101101111100110100100011001001010111010110101110101101110001100101010100101000100010100011101011001110101001001101000111111001010111001110100101100101011111000100110101111111111111001101110001010110110100111010111110000011101110110001111001010100000101101100111000010101011100111110100010011101011110101011110100101100011100000001010011010001101111011101011100001111100100100011011111011100001111011101010011100101000110100010011000111100100011101000010111000110001111110010110010010000100010001111110111111001101100010001010101000101100100100111011000111001101010011000010111001101110000000011010000111011100000110110000000101101011001010111010110101011100011011001100101000001010101000100111111010001000110101110101110111000110100100010101111010101010101101011011001111010010011110010000011101011011010001011100101111010110111010001000111101111011111010101000010011010001111000110100101110000010010110001101110001110101000000100010110001101111110001110010100000101001111010111011011101110100111010010010001010101111101001111000001101110000100011011001100100010100001000010000011001010110111000110111100011101101001110010101010101111001111101110111101001010011110000111110101110001011100011010000001010110110001100001110011101100111101001110001001000100001001001000001000101000001100001010111001001111010111001010110100101010011010010111011101010100000000011010011001000100101101001101010100101000001010010011001111101001111001011100111111001011100011110011011110001101101001111100111010001011100110010100010001110011101011010010111111000110101111100001000010000101101111001001001000000100001110001011111110010001100101011000011111000110101011110010000111111110001110101101101100001001000110010010101101101100110001011000010000110101100000100110000001011110111111111010010111101011000010111101100010001111100001101010010011101011110000101101100000101100111010010010101110111001101111000101001110011110110001010101011000100011001001111011101001000001011011101011000101111011100100010000111001111000111100011111100100100011111101111111010001000011001000111110101110010001101100011011000010110011110000010110111011101011001000101000000011011111001100001010111101111111111001101100100010100110011010001111101111010100100001001011100110101110010000000101110001101010011011111100100010101101010100001001101101100110100100100011101000101111001001010111010111110010101100101001010010010011000100000000000001000110111101010001101011101010100100000100100111001101000111010011110100011011100011111000001100110110010100010110010010000000000001011011011100100111101001101110000100111001100010001101100111111101000101110110010100010011000101100110011100011100111010101111011010000101111001101101010011100000001101001101111111011100001001100101010001000010001111111000100111001001001101110100010000110011000101111010000111010001011100000000010100011100011101011001110100001110100001100100111100000110101010111000011011000000011100001101110000010101111101010011011110001011000010110011101101011011010010110000101001010101100100101100011101100011000010011011010001101100001001110011011 +10100111101010110011100001011111110110101101011101101110100010000100111100010101001000101111111000001001001010010110110100101000100100011010011001110101110000111011111110111010001010100111101010000101101010010001011001000110011100101100010101110110111101110010101110110000001111000101110011011111111000011000111100011000111001001010000111001011010100011111001000111111100100001010000101001101110001011000011101110100011111011000010010001111101101100110010111011001001001011001110110000011110000100001011110001100011001010110101100010111010110111000100010000011001011011000101000000111010001100011000000001001111100001110111000010000101101001110000110101101001111111011111100100111111001101000111001011000111000010101101110011111100011010100001101011110101000011010101011111100100010000000100110001001010100100010110110001110110110111000110110110001101100110100011010001000100000000111010011101110000100111101001110011100110110010110011100011111010001010000100100100001011100000110011000100000011011100001111100110001000001110100111101001111111101110101011100101000101111000110111110000010011010010100000110100011010100010110100010101100101010010101100001000010011110001111110001110100101000000001111110001011011011101110100100010001010001010010111000011011011000001100111011010101010000010000101111111000110001101111111100011010010000100001100110100001101111111000101110111111100011010110000010001011011111111111010111001111001101010110100101100111100001010110000000110010010011101001101111011100001111110100100101000100110110100111111101110101111000110001010111111100111001000100001101001001001000010110100000001010011001100010000110110110110010101000110010000000011000010101001010100010001111001110100011001111110000101000100011001001101001010111001000100011101010010011001110100111001001001001110110100000111010101110010110110010010100110101100110010001100110100100101101010110110100000110001000110011100001101011100000000000110100011100011010010100110100010011100011111011000111101001101101100011111101001100010011101111011111011111100110110001101110010011111101110100100000000110110111001100011111101100010110111000100011011101011010001110111111110000111100101101111001011010000010110000010001011001010011101001011101010011001100101111110001101001001001010010110110110001010001010111111000101111110101111001000110011000000000001111100110111000110111101101010010110000000110011011100010101100010101110010001001100010011100100001010011001101010001111000100010001010100010100100101001001100101010011100101101001010011101101000011110111001100101011110100011000101000001011000011000111110101101111111011000100110000101001101100101110011100100100000001010110100000000000010100001000111001111001011001011000010000000011001011111100110001101101101011000110100110110011110101011011110111010101011100111101000110---------000111101011000111110100100101101101001000100001101100010100010101110010000101101100010101111011001111111011100010001011000111010000100010101011001000001111110101101100110011001011011010111001110011010000000000110001101110111110001011010101101110100000001001011010000110001011111000001111011110101001011010101001101100110001111110100010101001000101000001001000100110000000110001001010111111110001000001110011110011010000100011101010011000001011001101010010110100111001100001110110010110010110001111111001101010110010000111001101000001100001011010001100101000001001101001001000110111000010000001100100001010000001011010000010000011010001100000010001101101011011111010100011100010001000100101000001111101011101000100001001011010100010011100011010010000011111000110111010010000011001011110101011001001110100111100110111010000100010010000011011100100101010101000110010010001010111001101111011010111010011010001010011000001101000110000110111010101010111001001110110000010011111011011000010010001001000101011111110111011001011101011001010011010110110011000000111001110010111111011001010011001010001011111110001011010100110101011001101100110000111001000001001111000101111011101111010110011010101001100010110010010110111110110101110100011101010011001000011000100100100110001010101111100010011011010110001001100110110011111110010001101000101110001001000001110101010111000000010100100110110011111010101101101011101111001111100001011111010000000001011101011101110000101000100110001111000101110011100100110000111101000001101101111101001110110111110101100001010111010100110100010110001011101001001101010010100000011110100011111011110111001110011111000111010010001111011010010010110110001010101010101101101101100110010001010111001010111111111101011000110011101000111011011010001100100100111001111100111011101101011111101000010011010111110000011110110001110010110100101101001010111001000111011000011111101100000101101010001101000000101001110010100011111101110000011000110111111011000001010101100111101010010101000101111011001101010011001010010101110110001001111101010000100111011011101101110101001010011011101010000110001110110100011001000010001111000010000001001000011111111111010010101110011101001111101011000000110011100011011010000011000100100101110000101110111011011111110010100000100101110011110000100001100001101100000011100111001011011000110110100111111000101110110001000100110011100001001100100011110111101010101010001111010110010010100001111110101100010001001100111001011011001101111001101010010110111111000110101101000011101110011010010100000011010010010100010011000001110111010110110110110100001101101100110010110001100010101010100100101110000111111011101101111011011110010011000100000000001001111010000010010010101100000011000000001011110111011001001010010110011101000111110011101100110101100110110101110000011001000111010011100100111010100101111111100000111001100010101110001101000010100011110011010001010110001011001001111101000100001110111111010101010000101000101000010111011010010011101111010110001011110110011001100000011110101000010000000100000111100110011010000011001111111000001010100010100011011101110111101001010011000010010110111011001111111110110111101000111100001000100100010000011111100011101000100000001011010110010110111010101011101101010111011110011100110001100001001100010101011011010011000001001000001010011100001110000000100111010101001011100100011111111111101000011011010101000110101010010000111100100010110101100001101011010111001000111111111111001010100011110111100010101111110000010110010110000010000000011110000100001111010100100111101011011010111010101101001100010010110010110010001001001111000001110010111110010101011010100011110010000111010110111000001111000000110001101000111001001011101111111100110100001101110101101110001111111101001111100000100010001100101010110101101100100011111100111110111000111101110111111100011001100010100110000110011001010101011110000110110011011001110001110100111010011001100010001000110100000101001100001101110100001101011100111010100111000000110001011000010101101000010010111110010111110011000000011000111110111010001110000101100110010011100110001101011011101010100011111100010010111101101110100111101000101111001000101000111110110010101011010001010001010101110101100100011111111100100110110000100110111011011100110101101101111000010111011000011010001000101101011010000000001111000010001101011111100100100101100001011010110000011110000100000111111001010000100011001000100000110100101111100110000010100010010011001000010111010010100000001011010101100011010111110011001001111100000101110100011011000110101010011111000010010011100110010100100000011101011110101011010110110110100101000010101000011111111000100011001110011111000010001110100111100011011111100111011011111000110010111111100010101110000001010000101110101111011101101110100101011000100010101001010000111111100000011001100011100001001000011011011111101100110010111000001011101111000000011000001100111001111100101011100001000001101000010111111110010101010000010010111011100111010011011010001010000010010100111000110100100001100010100110000101101111101101001011000100111010011111011101110001011010001111001010100100110001110011100100001000101000011010001001110001011110000100011011000011001101110100011000010111101001111111011000001110101011010101001000010110011001101101011010101101110111010001011010010010111011100100001110010111110110001000011010101011101101010110101011110000001110001001101010000100110100101000011110000010100101001011110110110111001011010000110000101100110101011011101011000110011101100111101010110111100001110011011110111010101000000111100001101100111000101011000111111111101111000101001001000100011101000111011000111000010110101110010011110010111001110100000010101010000101001010111101100001011001101011011010011110001100100111010001110011000111111000011110100011011100010100000000100011001110000000011101001101100000101110111011100100001000001110100110010001001101100011110010110011100011101001100011000011101100110111101110000111111111100011101000110011100011000110010001010100101111100000001000100010100110101111010100100010101011011111001000000101000111000000110001001111010111110111001000101000010101000011001111010010000010010001000011010001001011111000110001110101111110011100011111110011110010001111011111001011010111110001100011010101101100001011110101101101011100101101100010000110011111001110110000010000101110100100100111101001011000110101001111001101010100000110101001000000110110000111010010000100010001100010101111000011111000011100000110101011000100111101001001101001111100011111001111111111111001001101000110011001100101011010101000111011010001100000000001000011110111111100001011010110011110100100010000101110101010010010011000100010000100101110111001101101111111100000110101111001111000010001011000010001001010000111110000000110011011010001110110000001101000010100100000101111001011001101010011101100001010111100001010001000110001110011011110111111011100010000001000001100011001011100011011001111011011001101111110000001101101111011000111101110110011100010100100100011110000000110001000000010101010011001011011011111001111101010101100100101001011000100101001001011110000101111000100111011100010101001111110010001000010010110000000111001001000101110111111111101100110010110010101001100000001111000110011101100111001001011001010000101011001101011101000101010111111011000001111100101100001100001100011111011100110011000001001000000110101101001010011001111000000100111100011000100001001010001011000111011111111010101010000010111110011011010011111000010010111111000000101100001000001011101001101011000001110000100100000100100001010010010001010010000000111001110100111101110000011000001010000000111001101111000110001011110001011001000111000110101001110101011110100100010100011101110110001011110111010101010111011111001100001001101110111100001110000111110000000010101110100001011001000010111000011100011110110001111000011110001011011010011110100010111011101110100100011111100011000010010001001101111111011100100110000100000000101111010011011011100101101000000100011101111111101011111111100001111111000100110100010101110010011100010100111010011101000110010101010001010000011001101100110000100010001001100110111000011110001110101111000011001111101101110000010011011111001010100101001000101010011001100000011001001110101111001110110111010000000001011001100110111011011111101010101110010010000000011111100111111111100111101011110010010100011110101100101011110100010111010001101000101010000000110001110111001110010101110011011100101101111000010000000010110110101001001000101011010000110000111100100111100110111101000101000110100101000101010101001000111101011101111100000110011110100011110101011010111000110110011001110001110011101101011101111101100001011111001111110010101100000111110001000011101010001011100110001010100100011101111101111100000111011011010010101011001010110010011110100000001001110100111000000111111011110101000001111000001010011001000111000110111011101110001110011010100110000010010100100111010010110010010010001011001111000111111110110111101101000111001101111010111111101011000010010010111101001111100000010111111111000001111011000011011100001011101011111010100010010110100110111010011100000110010011111111001111100000000001001101111010111000100111110110111011110010001001111001101001101011011000000001101110000011110000011100111001011111110110100000110000000000111110000110110001001101000111010111000100100110110010111000001001101101100110011100111100100100100100000111110010010001110111101010111000001011001110000111001000111010001011001000100000101000110101000100001101110011000110010100110110011100000010011011011001011000011010111000110010001011110111010010111101011111111011010100000101011111011101011011001111101100011101000010101000111100000010000111000000101111100110001110000100101011110011000100010010010010101100010001011000111011001010000111100101110010010010111011101101011010101011111111011110110001101000100100100110010110100110101001010001011001101110011111001111001011100011000110110001000011011000111001111101010010000111010001111100100000111110101010101100000001010011000010011000101110110010010110001111010011010101110010001001011111111111100110101001010010011110010110111101101010010011110111111101110000010011001101011010111001010010110111000011110101101001001111000101100001001010011110110111010000011101111101010001101001101011100100110100111101011001100101110001100000000010011100100010000110011101101010010000100000111100010010010101001010100111111000011100100101011010010010011101011011111001100101100101110000000101011001010101111111111010101011001110100010100100101100011001111001101010101111110011011100100001100110111010010100000010101001001100100001000011101110000110100010000000111101111011001111010010011011100001110110011010001011111100101011000110101100000001100111111111011001101000111110011110010001100001010111110111111100101001001101001110100101110111001011010011110101101010011011101010110111110100111101101110111000000011010000111100101100111100010110111111110101100010110011111110011101110111100101100010110011010111110111100010010011011001101111111011010100010001111110010010010001001101110010011000011000010110101011010101100110100000011110010111011100010111111110001011001001110111110110101110010100110001111000000011101010010000001000001110101101110111100100000101000001011000101101001101000000111000101010100010000101100111001110001110001000001000010000110111111001011101111111101101111001001100111010010101001110010111000001101000011011010010010001110000001100000111001001101001101111010010011101111101110111001000110101001111100001001011011100111011111011110111000101010101010111010110110011011101010101111011111001001100010111000010100100000100100100011101100111001001100010010101011101100101011110001101001101000001100001001001001101110010000111000110111111001000100111001100011011111101010011001001111011100100001101110110110110111110011011111111011011010111111000111101111010000111100111011010111001101001100111001000001011111100111110011000100100010001000111000101101111100001001000111010101100100101101111110111110001000101000010110011111110000101011101110111000101101000001011100010011111100101010110101000110101000111101010111001000011101001011100001001100011001011010011011010100100010100111111001010000111001001000000110111110010000101001011111010010110000001111010100100110010100000001000011100010001000101000111111101001010010110011010000111010111000111001101110011100110100100011101100110101010011010011001001101100001110110111000101101101100100010011000011001010000011011001110100010011000110110101001000001111101000111101100000100110000001110100101001111010110111001000000111011001101001010011010001001101011001011100110000000111101100110001000101000111101100101110111010010111000011110100011011110101001100011011010110101110001101001000111011100000100010101100011101100111010100101001010000010001000101000100111111011010110100111001000001100110111100001001001110011101010100010110010001100101100100001101001000101001101101110101100010000110011000111010011111001100111010111111011101010011101011010011010000000011100011001010101111001100000010001011111100010011101011100000011101100100111100111001001110011011101100011010110111010001111110101001001010010110100001001000111010101000100001011110100101101101001001010010101100111011100111110110000101101111010000011100010000110010100011000101001001010001111100100001010000010100010001011100111111100111110110000011110100001101000100100001010000100110001100101101101001000001100101001001111000101111010001111100101111100111001000101110111100011110101001011101001100001100111101111001000010110101000100000001100010000101011011111110101100000010111001001110101101011111100001010101001010010100100111101111011010101101111000001010000100011010100111110110001111000110000100010111111100101100101101110110001010001111111111111010000111001000111001010111110011110000011111101110001001001010100011000010101001111000100100100111110000101001010011001101001111010000000010110100001100001010011100010100100100100000101010000110110100101100111010101000100111111101000011110001110100011101100100001000000110101101101001010100001010100010110101011001100111100100100110001011001000001001110000100011110100101110110110110010111000111011111111010001101011111111000110000111111010001110001100011000100001010011100010111010111011000001100110110101110101111011011100011101010110010101100111101001100101010110101001010010011010001101011101001011100111010001000011111110001101011010100010011110100111000001100101000101000101111000010100100010101100110111110111100100111110100100110000001001100001110100100111111011011010010001001011001001000001011000110100111111111110101101110100111101100111011100101011000110011001111101011101110011011110001111110101111000100010101010000110110010010101110100100000010011111001111100010110101101001 +10110000110111010101010000111100001000001000011100100101101100101110110001011011110111001110110101100111110111100111101110100101101101001011111001000000000111111010000101110111111001010000111001011000010101111101110000011011011110110010000011001001010111101001011000010010110000100000101100011101100001001001100101101101011001000010110011100011101011101011011101111001011101011110111110011000000001101101111101111000011011000100101011100111001001111101010111100110101110001111111011010111010010001000000100101110010111001101001000011100101010011011010111001011111000010011110101000001110100111110000111001101100010111010101000011010110011000100111111111010101101101100000000100101011100100001000001101110000111101000100111000011110010001011110000111010110100000010011100111111010000010001011010101110111001101100010010101000111011111010010101001110001111111101001100011000110001010000001000000001100011001001111110001010011010000101001010001101010000000111010011110100001011001101100011010111010111111001010010110001000111001111100100101100110011001101010111100001011110001101100010101001100011000110001100000100100110001000111110010101111110011010010111011101000001101100100011101010111111010101001011111111011100110001001000100110010011001000000011111110111100100010111000001001101001010010101000101101000100011101011000111101111111101110101111110111111111010101010100001100010100000010111110011101011001111101001110110111000100010011011111111011011100010011011000101011101000000001001011011001111000110011001100110010110110100111100110011110001000101110110011100111001010101111011111001110110101111110011001100010100100100001010001100101001100101010100011010101101001000110000001010001001100100000000100001100111010101100010000101010110111110000001110001110110000001010100101111110101010010001010101100110001101001000100010000110111011011111011000110001010100100100100001000101000101011111011001011001101100110111010100011000111101010110100001111000011100011001000110000001001011100111000000111010110101001110010101101101101001100101100111000111100000001001001101011001001001010000100010110000111000101001010111100001110111010110101101111110010001010101100001010101100001110100100100011110101111100001011101010101000000011000100011110010010000100010010111100101000000010100011100101101001001101101000011111101010110101111100101101111011001010011111101110001010110010010010101110010001011000100111101101000010001110110001111111100001010000101010000100101110011101100100001011110010110101101001010010110101011100001010111011000011000011011011111100011001000111011000110010111001111101110000001110000101000010111111001010101011000100010011110000011100000111000011111110100011001110011111001000000101101000010010000101000111100011101101001011000101011010010100101010101100001111001011100110101001101101001001---------000010010011101101001011111011000100010001110100100110100111011010100110000010010110011001111100011100000100001110101011001010001010111010111100000011011001110000101001001001011101111101101000111010100100011000100011001111001010100011111111110101110110001110101001011011101011100011110101111001001110110100110000011010110011011101100011001111001110010100111101110100100110111010000001100001100101110000010001110111101001100010011011100100000101111111001010101110100100111010110000100101011001100001000101010011001001001101100110001000101010111010011101100110101111001001111101110110101111100101100001000001101001001111011001011011000100010000100000001111111000010001110110001011100011011011000011100001110000111101111110100110100001110101000100010001100010111001110011010010100001011001010100001101111011001011100101110101100110110100010110110000001101010111111000110101110011010000101110000110110011111011011010110010111111010010000000000001100000000011111001000110110010111101011000001101111001100010011010001111000011101110110110000100010000110000100010001101101001011000100010010111010100110101010011100110110010110101001001101101000000000100111011111110011000101100100000111100100101100010010001010110010011100101110100000011010010010111001101010001101100110000010101101011000111001111001111001000001110010111101100011111111100010010111010010110101001001100000010011111000110100011110100101000101110101011011011000010000110110010010011001001100001110101000010101000100011110111001101101101001000101000100011100110111100110000100111001000111101000101001100111010001010100111100111010000111000010100000001101010100100001110100110111001000000010011000001100100010011110001001010011110100011100011010100001101111110100001111100001010000000111101110101111001110000001100010111111010011011000010010010110000011110000101100011110000111111100000100010111110010110110100011100011001001110010000100000110011100011110010110010101000011101000001011010011010011011100000001110010110110001100111010010111010111000000110110111110100000110000001101111010100110101001100110100011010101100100110101010010001010010101010111011100111010011001101010010100000100110010001010001010101100111111011101000001010101101001110011010110110110011101010010010101000010010110001101100101110101000011101001010000000100111110111011011100101011001001010110000010001110101101100000000101101011110011101101011000110101101111110111101011100110000011110001000100001110101000010011001101011111010011000000010111100001100000111101111101001101100111000001101100111010010010000111010100010011010111100110100010010011101000001100010011000011010100100111011111010011101000110010010010101010001010101011100100111000111100111001000100011000101101111001000101110010010000011100000011011110101100000110010101010100110001110110110000110110110001101111011111000101100100000101101000110011011100001011111100100101110000011011010000010011000001010001111101010010110011110000001010111100010101111100110101000011110001011000111011111101001110110001001101101011110111100011100101011011010000011000000111011110011101010011000010100000110111101001110100000101100101001111110001001011110100101000111001100001110001101011000010101011001001001011010010101111011110101000101000110111000010000110000001101001110010100011101100001100111100101101001011100111000100001001101000011111011011111110111000011011011101010010000110101101110100110110100100110110001100111101011011110101011000111101010101000011010101111000011110100111001100101101100000110101010110000110010011011011011110100011111110010011101100011000110000000000101000101110111011010110001001011010110110100100100101011011111010000101111001101111011011111000011010111100001101000111010100011000100101110111011100010110010111101011000100000001101011101111110110000100001110101011010010100111001101001100100111010001100101000100101111000011110110100001111111011000011101101000000101101010011010011110111111111111001001001100010100110100011011101011111100001011110011100011010011110110010010000001111011110011101111011001001011110011001011100011100001110101100001001111101101001011111001001010011000101101011011000101101011110010001111100110011010001001000010110001010101011001111000001000111101000000000011100001011101000110111000111001001000010111010011101000100100100110111100101011110110111010111111001100101011010110011111100111111000001111001010110010110111010010111110111111101011111111110001101101100101111101100000010010110000110101101100110010001001001111110000111001000011111111000110001010010111110010101110001111111011110100110001011100000111111001011100101001001101101011011011101010000011101000000011000000000110010110110010110110011011010101111010011001101000010101100100111100101111010001000110111010001101110000101001010010111000001100000110101000011101110001100000111010000111111101011010000001110101010010100111100111010010001111110010000100011110000011000111000000010111010110100111100010011100011001100110110101100100110001110100011000011001101100001111010110101101000110010100011001011111001010100100111010100011010110010110000101111000111000011101110011110010110001010000110000100111001010011011000101110001110100111100101101100000101000110001111001101110100010110001010111100101111111011100110001011011111011101001100110101001101100110111100101011000011101001001111100110010101100101011011000111100111101111111100100001000101001111101100101110001111000010011001001001000011101010000101110101010010001011101011001000110010111010111100110010000001001111101101100011110001000110100100000110111110000001010100010111000101001111100111001110111101001011000001000100111111101101110110010110101100010101011011101110010001100101011110001110110101110010100011000010100111110111111110100101101010010011001000111000100101110010100111000010110110001110000011011000110100011001011010010000010010010110001010100101101110100110101110101110101111110100001001011101101110010000110110111000011010001101000100000010011110110011000010100000011000101111110110011011110110000000101101011101100110101011011001001110110010011100100010010110011001100010100100010110011010010011001001101011111010010011010001110101100101110101101000011100101111101111100111001000001111111000101110101010110111010100101111001100001111000100110111101011010100100000111101100101111001101110111011010100000001110100010010001100010000101001111101000010011101111100100100000110101111111110011011101000001100010110101001011010000111101001100011100111001000101001010111100100011111011100010001100011110111101111101011000100001001110001011110100111010011101010000011100011001100100111100000010011000010111101101101010111111111111101011100110100101011001111100000001010000010111000010110111111011010111001010110001111111101001001110110111010110001010100110011000110101111100001110100000000011111010000010001110011011000011110110101110000100100011010000101001100011000111000111101111001001011010101001000111100100011100100111111010010010000000111101001111000110101110111010111010101000111110011011100100111110010000101001001100111100101110000010100010010110001100101101110110100000001101101100011001010010010110111111100110000111010010111111110110100000111111110100000111011010001100000001100101100101100010110001010000111001000101000010100101001111011100101100011011011101101000111011000001000111010110110110101100000011010111101000000101010011000000001100111111110101011111111111000111111000000111101000101000000010100000011111001011100111101111010101111011111110011000100010110001011111111111101111010100101101000110000000010110101000001000000101110111000001011010001100010001010010111100010001001010001000111100000000101001011101000000001111001100001011101111110101101100110001110101110100101011011111110110111001110010111110100111000111000001001010110001001000000000001010110111000001010101010110111111011011010101010111101011001001110111011111001111010011011100010110111100011100111000000100101110110010000000011111011000110001000000100011101101110011110110001100001100110100001110011001010000101111011100100101000110111011011101001101010000110010101101100011110010101011111000001101001001101111011111101000011100110100111010001000101010110101100000011111010011001001110111000001001100111010100011111101100100000101100111011101100110111011101111111110011111000110110110100100110011000000101001110100100011111010101111110010101111101101101000011101001100101010110101111010100111000010010000010001011101000010001010001101001110100110110110010111001111100111111101110110110100101010000100000100110101011101110001100010000111110000110110110111011000011010000000111100101111001001000011011001110001110011100000000100101010010111010001111101000011000000110100110110110001011000000100110101001111110111001110100111000000001001010001100111101101010001011111101001010001100101111110101100000111001011011111101110010100101000001101010101011010110100111111101101111001001111110001010100011101000010100111101001111111110100111100111010011110100000100011010000000110001100011100111011100011000011001101001001010110111000100000011100000001001001111000011111000000011101100110111011000111010001111111111111111100110001000100100001110010110010000000001011000110111111100000001011001011101010111100010110111100100110100111101111110110011101011001001001110100000000010010000110011000000101000100010001101011001111000101100011001100000001101110010000010000110100110110111010101011011000000101110011001001110101001000111010101001010111100111101100010110001010011011011001110001110110111011110100011000000100000110101111000100101110001101101000001100000111010011010000010100111000100000011001101101110010001000100010110001100010111110111010101010010111001011101000001001011001000100100101001011010000100100011101010101110011101101111110001000100101100110110001010110101100010100100010110000110111010010101100010011001101010110111100100110101000000101011110011000000100100000001110000111111001011001001100010111100001110101101101000110011001010111100010111010001010110111010101000011000110100000011100010000100110111001010000001111101100110110100010011110000010101001100101100001011011010001011001101110001001110010111000111000100011001111100110010110100010000010110100111010100011001001010111011100000010001111010000011011111110100101000110100011101000011110011111100001110101110101000110111101000110110101001101111101101001110010101010100011100011000101001011101001001010100101110111110001010001000111010110100101111101011110010110100000100001101101101101000000110010100011111000101100101101110000011111100011001110010000111011110010000010000011110111010001100000101110000000110111101101111110011101011001111011111111101101010101000001000000100110101100111101101010100101110010001011101000110011101101010111011110001111011100100011011010000100101010101100100101110010110111011000011111101101011011100000000111010000000000110011001000100100101101000000001000111101110011000111000000010100101010010010111101101010101000011000010010000110100010110110100100110010100001011110001111000100110100111001111000000010000000110100110100110101010001100000011111001110100001101001100100101110011011011000110000011110101111110111111111110010100000011000000100010111101110010110111010101001001100000011101001100001111100110001111000010111001111000101101110000110101010011001100100101011110110001001101001100010010101111110111110101100000000111101011000110101000001111011010100000011110101111110111000001110110111101000111010101001110011110010100011100100000010011100101110111011100000110110011101100101011100010100100101101000111001110011011011111111001110111100000011000100110001010010011111001100010110010001010101000111111000110100001111110011110111001000111111100100101000001100001110001111100110010000101100100001010010001111000110110111001000010110000000011010100110101110011111100011001111101100111101000100000000101100010011100000000011110011111101001100001001101111111011110100000001011101001010111111000010111110110000101010111001010010111001100111101000001101100110100101101100000111000001000011000010100100110000101111001000001101001011110111011110110100000010110110110000100110010000010011110010101000111110110010011000111011101111010011000101110000011001001010010000001000000101110011110100000111011011001010101001010000101101110011111001000000101001110111011100000110001010010011110100010101111001001010110011001010000000101101001001011011110000110010010001000000011011011000010101010001001010101010010001111000011011001100111100001000010011101001110011101000101100101111000100100001100010101101000100010000111110000000000110011111010110111001010010110111110001011110101111111011001000001111101000110111101111000000110110100011110011101001011110011110100110001101010101000000010011110011010101100111001000000111011111001100110101111011111101000110010011011010101000011010111101101101011001101011011101010111011011010001001100101010010000001000011011001000000101001010001101100100001101011011100100011100100010100111001101110000000000011101111101110011010001101110001101010001111011000101110000111001111111010101111110011011111110010010110011101111111111111000111000110110011000110000010010111111100100111010011100001000111010000101010100001110100100011100011010100001010010011000010100011010010101111011101011101000101000110110010100000001010011011000110011001100001101110011011011100111101011001001001011011110000010101110001011010000001110011101000010010001000011100111111010010111011011010111110111000111001011001010001111001110010100010111000000110110100010100011100000000101111001001100100011000000011011110101001111000111011111011101111010110010110111001100001111110010000000110011110000100010010000000110000111100000000011010001000101100000110001111101010101010111110111000010100000011101100010101011001011011011100011111100110011110011000010010001010000101010001010101001111010111111001100101110011001110001000110100001010011011010000010100101101111000011011011111010101101011100011011110010100000110011000101110101000100111010010110111110000010100110101110100001001011100101001001010100000111011000011111010001001001100010111100011100101000011011000110110011100110101110001011011101001101000110010000101110100010110111001100111000010100101111011010100010101010011101011011100011011011101010101001010111001000001110000111011101100010011001010110100000101010111101110000101010101110101010011001101011000011001111111110010101001111000101011001110111011010011000111001111110001110000110110010011100100001101001000101001101011110111010001011001010100101110000010100110000101101110100011100010000110111000110101110001111111010110000010011110111001110101100110110111000010111011011001101111001000111110011010100111000111010111000100110101001010010000001100100000100111010011101111111000110101110011100000101010011010001000110010110000010000000011010101011110100110110010011101010000101010001100101010101110010000011001001011101101 +ls13msgs +1001010010111010101010100010101100001001000010110111111110001101100000100001001110100001001101011110100111011101100000110--------- +1001000100001100101001011100110100001110010011001110000010100000001101011001110011001110100011101110100100110000011001110--------- +1110001101000000011000100111100100001010110000111010110101110100110111001000000100011000001110000001010001000010010010110--------- +0111111100101010010111110101100010100101110011101001101111000001001001000010011111111001101011011000111010111101110010110--------- +1100010110101110000000100111001000011111100011100000011000101011101011001100101000111100011111001001011111000001110001010--------- +0111101001010001110000010000111101001110100011110011101001110110100110010101000100110100011110100010000010101000101110001--------- +1000100010111100000100011011100110000110111110101011100010101000100111111011011000100010100101100001100001010001100010101--------- +0010011110101111100011011111001001010110000001110010000001100111010101111100000100010111011001110101001000101100100011110--------- +1001111001001101011001000010100010111000010001100011011111111100101010111011100111111001011100001100100010111011000011101--------- +0010001100001101100100001001010001100010100010010111110011100011110111101110010100111111010110110100010011010011100010001--------- +ls13cwds +10101100001001000010110111111110001101100000100001001110100001001101011110100111011101100000110---------111000000000011111110011001011000011011100100110100000011111001011000011111111010010110010100101000001000000101100110000000000001101100110111011010110001001111101010100001101001100011110010000010101010000111111010101100100110010001100101100001111001101110011111000101011000010100000010011101011100101001101111100000011011111101010000111000100000110000101100000100101111000110000001010010010101011011011110110111000110100010111001111110100110011001101001011101010010111010011000001001010100110100010011101100100110010001100111010111001010101001001 +00110100001110010011001110000010100000001101011001110011001110100011101110100100110000011001110---------111110110001000111100110000110101000001011111111101000000101011101000011001100011010010010001010000110101001100000100100100100110010101010000101111011010101100000110011010010001011111000001011001100111111101101001010111010101000110000010001111111011100110011000010111001000011100011110100101101000101011011011010111000100111111110001101010101010011000110001000110111110111010010111000001000011010001001000001100110100010110110110001101110000111001101011001110110111010101001111101011100010011110001100100000100001101010000001001000111101101010010 +11100100001010110000111010110101110100110111001000000100011000001110000001010001000010010010110---------001100100010010011110111000000011100110101111011100110110010000000111011000101110111000000011011001110010011010001111001100010111001100101000110010110110011001010100011100110001001010010111000001011011010100010101011100011110011101111111000111000011000111110100001011000111011000101001001111010011101001100111100000110010010011010001100110101001101001001000000010011011000100001001011001001001001010101010100101111001111000011011100110111011010000010000110111100110100011011000000001110110011000100000100100100000111110101011110011110101001101101 +01100010100101110011101001101111000001001001000010011111111001101011011000111010111101110010110---------011011101101010100000010010110111011000110100011001111000101001001100111101001010111000000010110100110111100001101010100010101000110011000011011000010000111101110101110010011000000111110111110001011000000101100001010101100011100100010000111011110101010001000001000100000011011011000110111010011000001111100111111100010101101101011000100011100111010000110000000000110011011110000010011111100010011010001110011101101111110001100001110000110110010001110001000001010111100101010011000011000011000011000100101110100010110100010001011001011001110110000 +11001000011111100011100000011000101011101011001100101000111100011111001001011111000001110001010---------000101011111001001110101100110111001011111110101011010010100110010100001110011000101110111101000010010010100000001010001100000100000001110000010101110110000101000111001001011100000010101011000111011110010110001011001110101111110011001000000100011101011001011110011111101100010111110010011011011100000001001000110100001111100100111010011100110000010001000000010001011001110000111011010000011011011101000100101011111110001111110100101101100110100011110111100011000110100000110000011010110100010100111110101011110011100001111010101000110110100111100 +00111101001110100011110011101001110110100110010101000100110100011110100010000010101000101110001---------011101111111000100111011011111100000100110101101001011110010000100111010101010100110111111101101101101000010000100001001001101101000000000111110110010111010000000110001100000110000010100000010101011111001001110101111100100111000001101001111010110011110011111000000111011011000000100011001100011001101100011111000111001101011111110000000111111110000001111011100110111110011000101101000001001101110010100001000101010101011010110110010000100110000010011011011110111101011001111000010010001110010111000100000101000111010101101101100010001100000011011 +11100110000110111110101011100010101000100111111011011000100010100101100001100001010001100010101---------010100010000010101101101111010010101010011011010000100100010000100110111000011010011110010110111010100100110111101010111001111001101110100011100000000011111000011011001111100011011001101110011000111011001100100101000001001110000001110011101100000001100100000111110100101110111011011110000100100011010100110101100101000011100010111101010000110110011011111001100111011010001011001111011100110000110011110100100101001111011101011101000010011110011010011111001001110101101110011010110101110011110001000100000101111100001000001010101011000111111011101 +11001001010110000001110010000001100111010101111100000100010111011001110101001000101100100011110---------101010001001100000100011110000100011000111110101001110011101100100000101101000011101110101011001110111001001101111110000101000011111010001110100110001011110110101101011001101000010110100101100101101111011110111001110101011101010000011000011101010110011101000101110001110010010010101000101100011010101000111100001010010001101011001001011001101100000100010000101010010110100001000100010100001010111001111110110011100000010010111101011100110010111100000100010100101010100001010111010000101010111011110101101101011010101111011000011101000000000000010 +10100010111000010001100011011111111100101010111011100111111001011100001100100010111011000011101---------111011111110000111100111110000110001010000000100111010000001001111011001011001100100001001111101000010010001011001101110001000111111010001010001101000101111111001101011101011101111011111001110000111110001101001011110011000111001010111100001000001100111110011010010100101101100100100011110001000100111000111100001010011000110101010010100011101100010111000100001011011001110000001001100000000000010111011100010011001011110110001111100010110011001011001011010101001010101010000010100011110111011011101110111101000001101010100011011010011001100000111 +01010001100010100010010111110011100011110111101110010100111111010110110100010011010011100010001---------000011101011110010110011110001111101001011100101010011000010110000011100111101010110110110101110110001001010000000000110101000111010100011111000101000010101000100100010010110100101111001100100100011011110011111101000000010110101100000110110001011111000110001101110101000000110110111110000011111110100001011110110000110000111001010010110000010110000100000000100111010011010011101101010010111110110110010011111101010011101101111110100001101111100000001011111100000001100010000110000010011011111100100000110010110100010100010000110000010011100110001 +ls26msgs +11011101001110011011100001100110000001111101001000011000111110010010100000100101100011011011110011010100001100100001101111111111011001001101011001011010100011011111011100100100111010111010100101101110000111001111100001100101101000000111110100001011011--------- +00001100011011000110001011011000111101001001011010011101010011000100100011010011110101000001000011000101011010010101111101111001000100010110100000100100010001111001010111001110011110100110011010000100011011100110110001011111001100000001100011011001111--------- +00111110001011100000100011001010101011011110010111101001110000010001001100110000001100101111011100000100111101101001010001100100011110101100000111001110000000110101011001111011100001001001101111011010010001110011110111110100101000000011110001011001110--------- +01111001001010011011010101010010111000010101100011111100001010110000001100111100011101010101111100101001100101000110100001011111100110010111111101010100010101100111000000010111000100010001111101100111110101101100001100110111111000011111110000000101111--------- +00001001000101010101000000010111011101101101100010100000010111110000000101110010110110000011001011010111101001011100110111101010100111101101000101100111111000101001101001101011011011101001100000100000100100011100011010110100010000001101110011100111010--------- +10100010001111111100000100001011111110000110010111001001110110110001011111101111010010010100000010011101110001001111110110110110001110100111101001110111100010011111010101011100001110010110111000111100011111001111010110011100001010010010110110001111111--------- +00111001111101111100101111100101011111110110100100100101000011011111100010011011101010110111001010111000111000101000111111100100100101111101111100111010110000011111101000111101111100001111101100010001111011111110011110110110111011000011110000010110011--------- +11100001001001111000001001011000111100111110101110111100101000000100110100010010001010111100000010100111101111001010100101101101101111000100001111110111110000111000111101000010011001000110001110111110010011110100001111100100111010100001011110011011101--------- +11110100000100000100100111000101000110111111000110001110011010011111001011101100001010101000101011111001100000100011010111101101000011111100000101011111100000001001110000000001100100000000111110001111110001100000011011001001110110001011110111100110011--------- +10011110001101010001000101101001000011010111000001111000010101110100100100110100110101110101001101000000001011001000011011010100010000100001000010010100110000101110111000101011111110110111011111001101101001110001001000101010101010100010111011110101101--------- +ls26cwds +1000111110010010100000100101100011011011110011010100001100100001101111111111011001001101011001011010100011011111011100100100111010111010100101101110000111001111100001100101101000000111110100001011011---------100010001000101001111010000010011101001010100000001000010100101100111100110111001100010110101010010111110001000011000001001101100110011011101010010101110000001100101000011111000100001000110011101011111111001001000110001011001111000110010110100111101010001101101011001001110111111110100001010100010001010110011001010101001100011011010101110010100000000101110000110000001000011010010111000011111000001010100000111011101100100000001000001100001110011101010111001010100101010101100111101110100100000100000010000100000110101111001111111001010011111110100000010011010011101010010001111010011001010101010000111101001110110001010001011110101100000001110100010100101010011001111010100111011010011111000111010100000010011111001011001010001000100101111100110000100100010011011110011001000010111011000011000011010000100100111100001000110101100010000100110100011001010101110101100010010101010011011110111100011110010011111011101000110010101111011000110101010110001111001000110001000011111011010111111101110001011101100010111111101000011010000110001011100011011100000011010111001111011111100001101110100110 +1101010011000100100011010011110101000001000011000101011010010101111101111001000100010110100000100100010001111001010111001110011110100110011010000100011011100110110001011111001100000001100011011001111---------111001100111101101000001011010101000110001111000001110111001110100101100101101011000001010010110110000000011111000111111110100110000010100001000010111101010111010110000100100111101111111011100011010011100010011110001000011100011001000000010001101101110101010110011010100100011010100010000101011111000001001011111111001101010011111110110111011011011010001001010100110001100001010011000111011000001100011010000000011110011100111001110010110010101001001010110000111111000111100011001001001001111110101100011101100101110001111101111111001111010001110011111011111001111100101011110100011000011000000011000010010000100010001111110101000100010010101110100000011100001110000100110110001111100101001110000011100001000010001000011000011001100101111001000011011000000010001101001011110101010011010010111111001010100001100000000001010110010111010110111110111011001011011111010011100010100100010001011100101110111100100000000010110001101001100111110110001100011110000000111011101111010111101011000011110000110010001111011000111001000111010100011101111010001010111011101101000110101100011001110110101000110 +1001110000010001001100110000001100101111011100000100111101101001010001100100011110101100000111001110000000110101011001111011100001001001101111011010010001110011110111110100101000000011110001011001110---------010000100000101010111101100111100010100000101111000001010000011100110101101110100001101101000010100011100101001101110011111111010001001011000111100001010110111110100011011111000111100001001111011000110000100101110011100101110100100000110111011101010010001111110011010010110110100011111111101000000011101010011000010101110110000001000000101111001111111001110111001011010100100100000000001101000111011011110111011000001000011001110110100001100001111010010100100011010110010011001111101100011111011011000100100010010100000001001111110110100010100010111010001100010011011110111011000101101011110011010110101001011010011001101100011100010000100110000000110111011111100100011010011110010000111000001000010111110111010100111010010010011010011101011101100001011100100010101000110100101011001011001001010000111001111101010011101101100001011001011001001010001100000111111000110100101110111111010110011111001101111000000101010000111111101010011100011010010010000000101111111010010000011000010100110101100100011000101001000011011001011101001000011110010101110000011101111001000011110110110100101000010011 +1100001010110000001100111100011101010101111100101001100101000110100001011111100110010111111101010100010101100111000000010111000100010001111101100111110101101100001100110111111000011111110000000101111---------011110101010010111110001110110111001000110100011001001101100111111000010111110011000000111000100111000110010110000100101001000010101010011000011010010011000100011001101000001111001011111011110000100110101000000110011101101101101111101101000110101100100100100000010111001111110011011100001010110010111001100010111010011000010100010110001110001100110010101100001100111011101100001111100111001111001001011011110010111010011100000000101111011100101101010111100010000111110111110000111101010010110110000110111100110101100111110010010011110011001110000010011010001100001101001111100000100000101000101101000100001100100110100111111000000101100000100101011110000111110111010101100101110000110000110101001100000100100001101110100101010100110011001100000011100100001110110100110101101001000111110010110011000111100110001001110000010111110110001010001100001111100101101010111000110111010101010101010101100110110110100111001001010101000110100101000100100111100101110011110110011010010010100001110000010111000101000010000111000011011000001000101001111101011111101101001010011010010010110000011111100011011 +0000010111110000000101110010110110000011001011010111101001011100110111101010100111101101000101100111111000101001101001101011011011101001100000100000100100011100011010110100010000001101110011100111010---------101010011110111010011000100111001110011000011110110011100110000010111010111000101101000000110000110010110001010011010001110100110111100001010111011111010110101111001110111000011101110000110110110110100001111111011101101011001100101111100110010010000010100011011101000101100011000110100110101100011100111011111100110111110010100010001110110011111111000010101100010111110010111010100101001010110000100000011010000001000000110010110111000110100111010111011101110110010010111111010101011000111011101100010111001101111101011000100010100111001111110011001000000000011100111011001110100100101000011011001110010111100111011110101011011111001100011110111101011111000111111000110011111001001001001110011010101100011000001011011001110111000111111001001001101110111101001001110111101000000101111011011111101001011100111101110100001101110011010000111011110001101000001111111001011110010101010111101101111011001010001110011010101110100001100000111000000111000111100000101101110011010101100000001001000110110100011111010101111000000101001110100111100101000000000101110101110110001010111010110100101010000101 +1001110110110001011111101111010010010100000010011101110001001111110110110110001110100111101001110111100010011111010101011100001110010110111000111100011111001111010110011100001010010010110110001111111---------000111011000011011010100011001001100101000011011101111001101111111101011101010111111010000001000100010011101000001001110101010001001100010111100110111111001100101111100010011011001100010001100001011011011110111011001111001110001111100101011111101001010001111011001110110111011110101000101011001011111111100110100110001110110001011111111110101001001101011100011011100111011111100000000100100001110000000010101100000001100000100011001010010000101110110011110100001100010000110011001100100010101001110001011001001000110000000111111000101010000111101011001000101000101111010011100100101100100100100011010010000001001011010101101100010110000000101111101000111110101110111111000000101010111100100111001110000010100100000111110110110010101110101110010101101110010100001011101001001110000110111101110101010001001001000110110101001011000000110011001010001001100110110110001010010001001101110100000110011110010110110110011011000101001101100101010111000000001001010011111011001111111010000100100000010110011011010100001001101100100110110011100100001110111011100111101010111001001101111010001000000110010 +0101000011011111100010011011101010110111001010111000111000101000111111100100100101111101111100111010110000011111101000111101111100001111101100010001111011111110011110110110111011000011110000010110011---------000011111011110110001100110011010000110110110010111001000000100011111111111001110011100010101101010101000110010100010110000100110011111100110111101100001101000010000111101001010000010000010110110100010111110011100111100110011110101110010100001111011001111111111111101111110100001110000010010111000011110101101001001000010111110101110011110110110011001111001100101010110101101101100100110101010110011110110010001001001010101001000110111110110110010100010011100001110111011011011110100111000101110011100000011000100010011110101101110011100001101010111101100000110111100101100010111101011010000011100010001111000110111001110111100001101011100010001000000010101101010110010000110001001001001111010111110010011000100100010011011000101101010110101100001101010000001011011000100011101110001010011010111001110000001111100010001111101100100001100101011100010011000010111110011010110000011001101010000010110010000000101111010110101110001001001001111111100111001100010000001101110101110111010110100010010000010000111110110100000111011101001101010101101011101101001111101010101100111000100111101100110100 +1100101000000100110100010010001010111100000010100111101111001010100101101101101111000100001111110111110000111000111101000010011001000110001110111110010011110100001111100100111010100001011110011011101---------111110101110001011110100100101011010000000110010001101011110101110111111110111100110000010110111110010101101101001110101011110100101111010011110001000001101111010110101010000011000000101101111011010100110110010010010110100010011001011010100000110100100100001101100010100010111100011000011000111110000010001111000000101001100101111000010011101100010000001000110111011000010000001100101001011011100100110111001011110011001000110110111101100110011111011011000010011000111100001110001101101111000110101111010001101010101000010111010010011100011010000011001010100111110111011101010000100101111011100111000010000101110001010010100011001011100011111001001110011110011001111111000001101111001011111100010001000110110010001010111110101011011100000111111000100001000000001000110110011101111101001110010100101100010000110101110001111100101001011100101000100011010101011011110101011100010110000001101100101010010101110111100010010001001101101101111000001001010100001000010100001001011100100010010100001111000011101100111000100001110101110001110111011010000010011110110011101010001110110100001010011110100 +1110011010011111001011101100001010101000101011111001100000100011010111101101000011111100000101011111100000001001110000000001100100000000111110001111110001100000011011001001110110001011110111100110011---------100010010001000010011101000010110010100110001110110011100110101111100101010000011010110010010011000101110111110001000100111000010010000100000001000101001000000001110110100101100101011101101011010110110011010100110000010010101001001001101111110111110000011010100111000111011001011111110100000001111001011000110110000110001101000111110111100010111110000010110010100000100000110110010010001101101111011101010001001100101100001010010001011011001101100010100111100000101110010101011000000000100111111110110101010011010111010100000010101101110010101101110011100100010110100101011101111000111000010011011111110100010000010001101111011010100110100100100010100111001100011110011111100000010110111000010111000010000001000101011111000011110111100010001111101111001011111001011011111100100000001000010110000111101110101110110001010010110001011001100100001111010001110110001111011011010010011110100111111001111000001001110000010101011111001110111110000111011111010100110001000110001010100110100110001110011000101101100001100011010101011011110010011000111001110001011101110001001001010001010100111011001111 +1000010101110100100100110100110101110101001101000000001011001000011011010100010000100001000010010100110000101110111000101011111110110111011111001101101001110001001000101010101010100010111011110101101---------011111111001001111111111000011001010100101100111010001011010001110111011100111111101100001011001000100011101100100000101000011000110010001001101110111110011000000001111111011101000110110111100100001101111110011111011010001001011011110011111011101011111011101000000011010111110111000001011110110111100111001111001100110110001101011101110011111000001000010100010001010110000111010111011100111101100000000100010100011100001000000001111001100010000110000000010111101111000111100111100101001000000101110110001000111011100011111101011101001101110011110010000101001010101111100001100011011000111100111100011100000010101100000111000100111110001000100000101111010110110000011111001111000110100111010111110010100010001001110101000100101000001011100010010011111000000111110100000001110110011111010010101110110000100011010010100101101011101101010011000110110101110000110111001100101010100110110110100110111100011100001111001000011101000010101110111110101111001011010100001011000110111101010000100111010100101010101011011101110000001110101000101000110100101001110100110010011011001101110111010101011111100 +ls52msgs +0000001010100001111111010001000001101110101100000110111111010000010001011001011100110101101110100111000001000110001100000111110101010001010111111100110100111010111100010110101101111010010111111001010100110001011100010000110000101011111000011101001011100011001101010011001101101000001010100011011111011110100001001110110110001110111100000101011111110010110110011001000000000010010101010000100110010101001011010010011101100111010011011000011111101100111010010000110011101111000111101101010010010010100011010100100--------- +0110010010111100001010111011101111001010111011101000110001110101101010010000001111110110011001101001001111101100110010000001000010101000011001111011110001011100111101000110111111000010101101011001010010010111001000001000100011111000100110111110010101110000001000111100010011101110111101000101110001101101101000111001011000011010111111110111101001001000010001111011110001101110000100010111001110000101101010110001011000011010101101000001011010010111111111010000110101101111110001111100010011000001011011101110010--------- +1001110110011110010100001010001100010100100011011111000001001101110001010111011011001011000001011111000000110101101110100010011100111111101001111011111111111010111100111010011100010001101010101001110000101011111100001010000000000011110010100111100110100011010010001010001100011100101011101000111110011001111101001000011011000001011001010001001000000101110111111001101110101000010100000101010100000011100111001100100111010001110101110101110010101011010111101101000110000111000000011000111000011110100101101000100--------- +0000100101000011101011100101110101011111101101000010110010100100101001011111101000011111010101001001100001000100101000011001111011001101101101011011110100001101001111111111101111111001110000001110100011101010011000011001000101010011110110011001101110001011010111100001100000001110110100100100011010100001000101111000011011100110001001001111000111010010110011111100001101011101111010001111101010001101111111111101110001111011010110111100101001000110011010000100010100001110100011110111010011000110101111110101101--------- +0010101010110011101011011010010100000111011100001100011101101101110010111011010100110011111000001111111010010110010011010111110011111110011101100100100010000000000111101011110001000111101100010101101000111001011110111111101011101011010011110100100000110111010101100011001001101000001100000011101000011000101010001010001111101110101101111000010100101110111101011000011001111100110101001001000111100001000100010001110010010101100010100111111111101101000011101101100111001110000011101000011110101001001111111001100--------- +0000011000010110010001010000000101111110001001100100110010010110000010110010101100110001110110111100111111111110101100101101001011111100000001111111101010101010101001000110100111101010101101011110110011100011001110000011101000110100011000011001001010100111111001101010100110111000110110000010111010111011110001111000001111010101000100010101100011101111111111100000001011001011101010010110000111100001010001101011011001001001100110110111000110110010101001001000001110010111101100100111111100100111111110000011010--------- +0010111111000011001011001010100001101110000000001100001001111010101001000100100000101100101110000010110001110101011011100111100110111111100110101011011011001011001011011100101001010011010101101000101010011000000110110111110110111110010101011001010110101000111010011101110111000010110000001010101001110111101100100001011001010101100010110001010100001101010100101101000010001001010001111010000100100000101011000000100100010000111110011001100101010111001110001111111000001100010100000001011000001000011100001110000--------- +0010100000011000001011101110110110100000110110110110001011110001111110111001111101111100111010111000000111011010110011011101001110011001100111100010011110111111010111100111000000000111011001110001010100111100001001110011100010011110100011100101100110100111101011011111101001111001100110001110001110000011011100011111110110010100010010111101011000001010110010001011101101111000111101001100111000111000000111101000000100101010111100101010101101101000110101101010111100000010010111110100101011101101011111101000100--------- +0101000010110001100101011111011010110010001001111001000001011001110110011011111000111101100101111010100000101000010011111001011111111001001000000111001100001001011101100001011111110100110111010001100000110011010110000101110111011001110101001011100100111001000011010111101100110101110110011000001100111100100111111100000001010000001100010110110011101000101010010000110001100110010111010100100101000000011011001100111100011010110110010000110111001101101101110111110101100001111111111100001000011110101001011110011--------- +1110111000110000010011011101000010000101001100000001110101011110011000100000000001010101000000000101000111111010111010101000110001010100110101100011110100110010010110110001101000010000011110000000110100110110000000010110101011101101110100001100010011001010000010110011000001001101110010100000010010100110100100110011110101110011110110010010011101011110001100110100110001111100001101111011110111101010111001001010000000010101010100000111011000010100011110011010010000111110100000000100100010001111111001010001011--------- +ls52cwds +01000110001100000111110101010001010111111100110100111010111100010110101101111010010111111001010100110001011100010000110000101011111000011101001011100011001101010011001101101000001010100011011111011110100001001110110110001110111100000101011111110010110110011001000000000010010101010000100110010101001011010010011101100111010011011000011111101100111010010000110011101111000111101101010010010010100011010100100---------111100011011000101000100110111101000100001110000011011101010110110101111100110110111111110101110100001011011101110111011000010000011010001100011110101011111110100111001000111110110010111100100111001101101101101000110111010101001011111011101000000011100111001010101000101011111010000001101100101110010001011001011100101011001011001100111010010000101101111010111010011010100010010010100001110111111110101101100000001101110001100100111101111100011110100011001001100101001100100001100101010000111100010011101001101011011010100101100101110000101011000101000110100000011100011110100011110011100011111011011011101101011000010110001000011110001110101101010011110000011110010110101100101100000000100000001101101000001000110010011001011100100111000011100111101111100010100010001010010111101100101011110001101001001010001001111100100010100100101101100000001101010100011101110110000000101101110000000110010010101001101011101100001010000110111111111110000101001011000010111011001111011101100110000001111001110111110111011101010110101110110010110110000110101101111110000101101110010100000100011101111111110101101110110000011010011010101111100010011011100011110010111101000111110001000101000110101011010111101100111111100011100111011001111100110100000101010100101100001101011110110111101011100011111111010010001111100011010110100010001100011100101101010001000000000101110010110101101101010010100001011111100111110110010010001001110001011011101111101101110011010101101010001010000111000110100000111111011100011111111011011111000111000111111011001101111110010011101101110011110010010110101100010011010111101110010111101011101100110111110000100001110000010101111000001101011010101000010011011001101110111001000100100111011000011011001110101100100100000110101001111001000101100010100101110110011110110000010111011000001110010101010101101110010000111101000011110011011010010101110001110001011101011111000001110110111111110011100101010000100010001110000101001110100011111111101110110101001010000000010100000001100101111000101101101000001111100110011001100001111111100000110010110010000011011101100001000001110001000111101010111111010010111100001101010001101101001111111101001111000010100111010001000110111 +11101100110010000001000010101000011001111011110001011100111101000110111111000010101101011001010010010111001000001000100011111000100110111110010101110000001000111100010011101110111101000101110001101101101000111001011000011010111111110111101001001000010001111011110001101110000100010111001110000101101010110001011000011010101101000001011010010111111111010000110101101111110001111100010011000001011011101110010---------110010000110101000111001001101110101100111100011111101110111100101111011111010001111011011111111110101100011110011010101010111001101111011111101000101110010111100010011101011101010010010010100001000011110110101111000110100001111101000001001110111000100001001000000010011110111110000110111101111010101101110011000001111111110010100110010101010001101010000001111000100010000111000100010011001011111011001101011101111000011110011000100000011011001100000000100101111011000011100101000000011001111110110011111010000001010110110100001110100001110000111011101101000010010100101100011010011111111001111110001000010100111001001000100011010011010110000010000011000001011000010001101101101111111110100010100101111111010101011100011111001101001001111110000010010010000100000111011110001110100101101011010100101010111011011000101110011101111100101100011011111011110000110001011111011111111010101011011101011001010010110100000011000010010111110001111000000000011001111001100000101100101001011111111000111100100100101101011000101010110001001010001100011110001110001000111010110000101001010001010001001100111100011100101000000010100011100011011010101100011011101100101000001001000010101010111010011101011100111100000011001011110010001010011001011010011101010110000110010000010001010010111101111000110100111100101110101101011100000000110011010111110110010100110111001001011111111101111000100000110010101001100010010011101110010100100110010010000100110110001011010010000001000110001000100011111010110010100011110000100010010101100011000000100100010111111111010110110110001111110001100101000000101010011001100001001101000010100011101010000101111000100010100010100000101001010101010000111100111101010011011101100100111110110111010100100110100011101010000010000101011110100010110100010100001110110011011100110101110011010000011011000010010101110011100010000111101001000011011101111101110111000000000011010010010001100000011101010001010000111100000101101011010000010010110001100110110011101010110100010111111010101100101100000000101110100000111000001010000111110101000001001010100100110010101111101000011100110001101100100110101010011010110010111100111010011101011011010000100010000111101001011100111001010 +00110101101110100010011100111111101001111011111111111010111100111010011100010001101010101001110000101011111100001010000000000011110010100111100110100011010010001010001100011100101011101000111110011001111101001000011011000001011001010001001000000101110111111001101110101000010100000101010100000011100111001100100111010001110101110101110010101011010111101101000110000111000000011000111000011110100101101000100---------010001110111111111011101000000011000101010110011010001111110010110111011110010100001111011001100101001100011101001001100010000001000111110110010101110110001010010010000010010111110100010111010110000110111101001111101110110000000101010110011011100110101110101001110000010001100101101110000110000010101011100111110001011101110111101011010000000111100011001000110111010011000011100100101100010110110111000101100100101000011110111001001011011110011000010000010000110000001110000111001011111111011001001110001110011011100110010110111001101111100010001010100011101010101100001100000000101111011110011000010011111001000010000100010010001011110010010001110011001010110100001001111000001111010010100000101010110001010110000101110000101110010000001101100000101101100111101010111100110100001101010101110011101101101000001110011011101100001010010101000010000111101000101010110010001111101001000111101010111011111111010100100101100001000110100110101000101101101011010101010010111100010011010110100110101010110001000001111000000110100101011010001000101101111110011101000101100100010011001011110101100011010010011100011100111101100110001100100101110110111010000001111111110101001111010100001011001000010100111100011100010000101111001011110000001010011001001010111100001111110101001001110100011001010100000010111100101111100001000011001101100001101001111111100000101111011100010101001010111110000111101010100111110001111010111101111100100111100110010100001010110111001100100101110000111000001011111101010100010110110100111111011010010101010100011100101000010010101001000101001011000011011011001010110110011110111001001011010010110111010110101000010110010100010011011111101001100011100101110000101101001011111010010000111011010001110010101110111011010110101111010001101001101010111111000001000110111111011110011100101010010010011001000011100010000110110011111011101101001010001100011001000011000101101011010101000101110100011111111010000011010000101111000011111010010000001100100101110110011111111101000111010011000101100101000101111101010001100101100100011110001110100001001011110011100011010101000001101110001101111000001100011010111111111100010000110000110001100010010110011000100100101100101100100 +01000100101000011001111011001101101101011011110100001101001111111111101111111001110000001110100011101010011000011001000101010011110110011001101110001011010111100001100000001110110100100100011010100001000101111000011011100110001001001111000111010010110011111100001101011101111010001111101010001101111111111101110001111011010110111100101001000110011010000100010100001110100011110111010011000110101111110101101---------100010101100110110001001110010111110101110110011101010011000001100110001101010000001111010110100101101011000100110110100110010000101010011010100011100010000110100101001000000010001000001101111000111001001011011001101111111101101000011011011011000001011000001101010011001111111010100010111100000011010100000010010101110111111000100000000100000101011111000011110011000101111111110101010111001000101100100011011101001101010000000100011110000001011100000011001101100010001001000100010000010010001000111011001111111011000110100000101001000010100100101011100001110010011100101011111110011111110100000001111110010100000101011010111101001000111111001101001101110000000100010111100101001011111011011110110100101111000101100110000011011110010000111101010010001001111000110101001100011110111011100111010000100100100110011100100001110111000101111101011011011111000001101100001000010100110111001000001011111010110110100011111001011101111110010000111101000010101010001101100101110000010100101001011011000100000001110010100101000000100110011001111000111010101100110111100000100111100000001111110100101011001101001001101100000110000110111000101101011010100001011010000010001000100011000111111100101010101001101011111101100000000001000001011110011011011001110001101010110101000110001110010101010110110100011010010001111101100000111101010111001110110011111110011101001010110110100000010101010111001110011011101111110100010011000110001110011011000001101110000101111101010111010100101000000010011111111110100011101001111101001010100111010001100101100010010011110011111010001001110100100011101101010111011110000011011001011100100101010110001011011111101010111111000010011100100010111110110101100001111010100000001100110111111100111010001101010100110101100000000111101010000111001010101101111110010111001001100100110001111100011011000110001111001000000101011000010101010000001100111000000001000101100001101100010111011001110011000110101111101110110101110111110101100001001110001011110111011110011010001010010000110101001110111100010011011111000111111010000011010101111011111111100101000011010111000110101010010000111001000100000000000011100001100111110110001000001100100010110100110001011010001100100011010 +10010110010011010111110011111110011101100100100010000000000111101011110001000111101100010101101000111001011110111111101011101011010011110100100000110111010101100011001001101000001100000011101000011000101010001010001111101110101101111000010100101110111101011000011001111100110101001001000111100001000100010001110010010101100010100111111111101101000011101101100111001110000011101000011110101001001111111001100---------010100011111011010000111010110011010001100111011001011010001101110011111000111000011010111011000001100110100001101111110010110101110011000100110010100101101100001010010110001011001111100010110001010111110110000100001110111010100110101011101110110110111110101101101011111010101001001111111011000011111101001010111100000000101000000110011010110000110110000010100101000101110111000010100111110101111110001010000100000000101011010111000001000001111110101000000101011100000100001100111101110000000110110011111000001010110010110101011010110001100011100011000000101011101010110111001101000011010111011000100010001110100001110111010000101111000111000100100001110100111110011010110100001111100001011001100001100100110000000010010010100110000101110010011100101100101001001110011001011010111010111011001001000010100001010011110111001111110011101111110001000100110010011011011100110110001111101001101100100001000110000000011100100101100110000011001100111100000110111110011111101000011011000011100000001001000001011100000111011100110000010011101011100111010100110011010110111010100000011001100011000000010110010011011001111110000000111101100111100001010111111000110010001101110000011001111000101011100110111000000101111001101000111001111110010110011101100010010111010001101100111011001010110101010110001001100000010000011001001001101101011101111101110001010111001100000100110000110000110100001011100011101111001101110111001000110101100010111101010100110001100100000111000010010110010100111011111010110110000101010111010100111000011101101010100011101010010111100101010011001110101100001001101101100100011101100110110110000011100100000101001110000100101010101111101000000010101000111000011100000100110010101000101010100110100000011000110000101001111000000100010100010011100001001001010000100110010101111110110010010001010100011000100110101111100011010011011011101000000011111000100000110000001010110101000101101001001001100111010000001100011100100100111110111110000010010100011010011001000100000011110100111110111010110111110001000100110101011001100000101100000111111000111001101110000111001111111001010111000111101111100101111010011010000110010100010101011111101010001010101001000100100001101010111 +11111110101100101101001011111100000001111111101010101010101001000110100111101010101101011110110011100011001110000011101000110100011000011001001010100111111001101010100110111000110110000010111010111011110001111000001111010101000100010101100011101111111111100000001011001011101010010110000111100001010001101011011001001001100110110111000110110010101001001000001110010111101100100111111100100111111110000011010---------000110111111011101110011011111001010111100100110011100111111111101010100101000000111000101000010001011111111100001011101100000111101000100100001110101001001000001000011101010000111100101100110010100100010110100000011101011100000111001000010011011101001100110100000100010100011100101101101000010111011001111001000001000111101111111111101110010100101100010000001010001111111010011010111100000100001001000011100111000000010001011101001000010100001100001011100011100111010010100111011000110010011100100010011000000000010110111111101110111011100001100011011101111010100111110001111000100101010111101110001110110000110110010000100111110000001000110010000111001101011111110111011011001101001000010110101110010101111011011000110010111110111001101010101000011000010111010100110001101010000011001001000111110011101110100100011011011101010001101010101000001001000000100010011000001011000010011011010010011011011011000101000001101011011101111000010010000000101010011001000101100001001001110101001010010110101010101111110100011101100111011111101011011011111110011101011100101100100011010111010110011101110010101001110110000000110100111101110101010110011011010000000001001000111110001100001001101101011110110111101000000001100110011111100010101111110010110100110001000110011111101000010100111000111010011010011010110100011100111010110100010100110100101100010010001101001110010010111101010101101101000011000000001001101100110111001000100010000010010000100011010110111110000110000111110000000001010100011111111111100000010000000110100010000101011100101110001000010100100111010000100100010011111110010111101010000011111100100111111001111110100000011100001101010101101110001011001111100000111001011001001010100110110001000011000111010110010110000001011000101111011011110011101111011001111100110011111100011011010010011011011101110101110010100000010000101001101111101110000100110011001011111110101010001110100010111010001100001000010000100001001011101000001000100010010010110011100011100001010100010100011010011001011011110010001110011001010010000010111000010101100100011000101011101010100010101110111001111110111101101001001011010000101110001010011100011111101011010100011110110000011111110100110110000 +01110101011011100111100110111111100110101011011011001011001011011100101001010011010101101000101010011000000110110111110110111110010101011001010110101000111010011101110111000010110000001010101001110111101100100001011001010101100010110001010100001101010100101101000010001001010001111010000100100000101011000000100100010000111110011001100101010111001110001111111000001100010100000001011000001000011100001110000---------010011111111011101000011100100100000111011001011110100110111111100100010010010111000111011101111111101111110011001011001101010001101001011010101100101011010100111000011101010101100100101110101101001101100101101010100110111001110101001011010011011110111101010100111010101111001111111010000001100101110000001111001010010100111101100101000010100010111100000010011100100101110110011011110100101110000100010100010111110000010000100010100011100001010011011011011111100100011101111110000011001000110100010110111000001001110101011011001101000101101010110000000111101001000111101110000101110010101100110011101001010010001010011010001101011011001101100111000000001101010000001100001101100000111110001110001100101000101111001001110000100101100000010010110010111100010110010010001001010111001100000000010100100001000000011011101110011110010010101000101101111001011110111001001000110011111010011011000001100000010100001001110010100100011100111000110100101000110011110100101010010010010101000011101000011110111000100001101000110100101101010010101000100101110011100010111100101001010000101101010110010111000001000100100001101110100000111001110011011100000111111011111011110000000010010100011110111101001011111101000001100001111001000100110110101101001111100000000000110010100011011110111011001010011001111011011000111011111010011111000111100010101001001010010011101011100111111110101000100101010101100110001011010111001100110001001000010101010010010110001101000000101110110111101111110100111001110000101001000111110010110111010011101011101100011000010011110100101010111110001101111001001011000011011011010100100110001010011001011100110111111010110010111011011010000111000000100110100000111000011011011110111101111101101100111001010100010100001111110101111101001100000010111001011001111100000101111111011001100111100000110000100101000011101111111101001001000101101100010110000000011111111011110110100110101100100111110000110011110010100101001101001100010101010111111011100101001111100011011000110000010111010010111000000101011010110111000100111000100000101000101011110100010101011000100101111100011100110110101000001010110000111011101110100000000100011101101100000011011110010011101011000100011100111 +11011010110011011101001110011001100111100010011110111111010111100111000000000111011001110001010100111100001001110011100010011110100011100101100110100111101011011111101001111001100110001110001110000011011100011111110110010100010010111101011000001010110010001011101101111000111101001100111000111000000111101000000100101010111100101010101101101000110101101010111100000010010111110100101011101101011111101000100---------110110001100011101110011110101100011010100101101110111010000001101000110110000011010000101011011011100101011001110001001110000101001111010101110100001101010001011101011101100011101001101111110010111011010011011101000111000101000111000110110000111001010110011111110111111100111101000111111100110110001010011110000010000001000101000111101001110011100000111000111011101101100010101011011011011000011000010011101001011000101110001010001011100110111010100100100000000110001010011001011010101110111011100111010100111001111111001100011000010110001001111000100110100111111111000111110001010010001011001101011000111100100111111011101110001110010101000110111010110000011000111011000111001111111100001111111000010000001010001111000000101111110011000111110000111101001000010011100110100010100100000111100110010100101000010000101110110110110000110100011100000101000111000101111000111100001110010110001100110110110011010001101111110011010010101010011100110100010110010100011000101001111111110110000000101000001101100000010001100111111001011001110101011001010010010011111100010100011000100001100100011111100010101101110101000000001000011100001001011101110010011100010110110111111011100001000101101000000110110100001101100110100011101011011111110110000101100111011111011101100100110111001010110100001101000000101101110111011000000100111110110011011101110111000110011110000000000100010100001101101100101010010010110011101110110111111100100100001001001010010000110000100000001001110100010101000001010100011000010110001001011001111100011001011001101101010100011110100011110011001011011011011001001101110001100100000110100111101000100110110011110110111101110100010101000110011000101110001110101001101011011011011000101001101101110100010000101000011010001011001111100011110001100010100101001111001101111000000011110110111000001101001010010000101011011011000011011000111010000100011000100100111101010011001100100111011111110010101110000100011000100010111001001100000011011001101001000101000000110111100000010011010011010111001101110010000100010011101001100010110001001110010000011110101011010100100110100111100101111001011001110110000010001000000010100011011100010011011101100111101000101010100010101001111 +00101000010011111001011111111001001000000111001100001001011101100001011111110100110111010001100000110011010110000101110111011001110101001011100100111001000011010111101100110101110110011000001100111100100111111100000001010000001100010110110011101000101010010000110001100110010111010100100101000000011011001100111100011010110110010000110111001101101101110111110101100001111111111100001000011110101001011110011---------101000100011111001111101001101101111001110011101111011111110101101111110000100110010011001100010101010110110110111110011000010000110001110111000100001000011011110001110101110011111110010110011100101010100101011011110010001011100000000001101011000100110100110000001000111100011111101111001101011110000110000110011000110000001000100010100010001000100101001001100011100000111001001000001111001101010100100010100101101100100111010000011001111001110001101101010101100111110000000110110011111010011010000001010101101011000101111101101111000100101100001000000010110000010010101101000101110001100110111101100011100100000010011100001110110111110100100100110011010101010010101100011101010011100010001001110011110101001111000110000111011110100100001001010101111100010100101010011111100001011100010111001000011100011101111011111010001111000011000101111101011110010001100100101000111110110110110011100001010010010010101101110011000011111110011111101000001111010100100001000110001001010010111100011111100110000011001101001011100110010011111111110010100110110110011001100101111000110111111111000001010000110000101001111110110101101011011101101111110111110100101011110010111100110101010101111001011100101101110110110010011010001111001111110111101000011110101010111110101001100010100100111011010101101101010001010101110111101010101010100100011111111110010001011011010001110101111001110011001111000011111010010111000001010000011000111111011101011100000100001101110001001011001010001101110101111101110001001111111101000011010111111000111100101101011010101000110000010011001010000111010100100010111101001111011010110100101010110110010011110011101100101000111010110101001111111101110100000001001010010000100011110100011111000001101111101000101011001101000111111111111001101000010111110000110100001100111110101000100011100000001010111000111101111010100011011101000110010011000101011111000101111011110011001011010111001010011110001010111101100110001000111011100111100101000000011011110000101100111011000000101011110101011110000111110111000100110100101011100010110100010010111000010100111011000010101001011110100110000100110000110110101001001100101101110101110011100100111011001111001010000101011000010001100 +11111010111010101000110001010100110101100011110100110010010110110001101000010000011110000000110100110110000000010110101011101101110100001100010011001010000010110011000001001101110010100000010010100110100100110011110101110011110110010010011101011110001100110100110001111100001101111011110111101010111001001010000000010101010100000111011000010100011110011010010000111110100000000100100010001111111001010001011---------010100000111000001011011101110001111100000111111010111001100000001101101101111010001101100111100001110111101111101111011010001110010010001010111000000101000100010000011101100100000111001111100010000110101110101110001000011010000011010110100011011001100101010011110100010010100100011111110111110111111111101010011001111001000000100001010011101110110001110101000111100111001110000010111111100100011100011100010011100111111010001111001110010011011101011000110100001110101011010111011101000011010001100100010001000001011010100011011001110101101100011010100111101001011111101111111110111100110101000111100101110011001110101000011111010110100110101001011111011011000001101101000010011111110011110111000000011110010010000100110100001110101101110011001100010110010110000001000001000011111110000110100011000011001101110111001010010001001101001101010010001000001100010001101100111111111111000001101001101011001010101101011010110001100111000111001111001000100000100111001001101111000011100100110100011011100001101100010111111001000011000011101111011000011100000100010000110000001100001111000010011100110011010101000010010111110011010000100010011110110100101010010011000100001011111001111111111101110101000100001110111100101101001001010100101111010110000001101100001110001000101101000001111100100010101100011000111111010011100110000101000011010110010001001000110001000110111011001100011101000000000111101000110001101110000101011010101110010101101001011001110100000100011110011010000100000100010011000011011000100111101101111110110101010010000110111010010010100001110101110101110001100000100101101010001010111101101001011000110111001011010111001101110000111010011001111011000001000001010110100001110101010101010000111001010000111010111101000011101101001010101011000010111100101011001011110100100101011100111000010010110000100110100000010111001001110110001010010000001101001000010001100110110110000100001000101101111100110110111110110000011110111010010110110111011011100010011111100010011111000110010010001001100101101101110111011100000100111101000001100010000111001100001011000000101110010110010001100011010000011001101000101010001101101101000100110010010000000000001111111011010011001111011011110 +ls104msgs +01011110111001010010000000110111000010001111100000101000111001011001101010011110000111100011110000101011010000111111010011011011001111111010000011101000100101111010100111010010111000101010010100010101101001111000011111000110101101001000110011110000000101011101101111101000100101100110001011101110110101000001000110111111110111101011010001000001100111010011001111101010101011110111000111000110110101101011110010000000000000011111011000001001100100000010010001010101001000101111110000010101001010110100010010100000111110101001000111011000101101011101011010010111011111101110101010101110111000001111101110001111111001101100100010001011110011110101100111101111111010101010111000010100110101100110111000111000100110101100000010110001101000101111111100100000000100000010010010101010000100101000001111001111110110111011101010000110110001101001101011011011000100101100100110110010110101100010101111100111011101110111001001100001000101100010010000010111100100101101010010100000000100010001010010010101100000101011111110111001000100110001011--------- +10011100011101000111010101000011101010010011010011011010111100110011110001100101000111011001000000100010001000001011010100010100001011010110100000001111010011110001110100111100001011110011100110100110110010101010010010101001010100110001111110001010000111000011101100110010000011110011011001001010011010011010100011011101011111111001010101101011110010001001101000110001100010101011100011110110000001100110110111001101010100010111110001110100001100000111101011011000100101100000101111011101101001111110110110011111110010111111101111101000001010000111100110001011001100101110111001010110000000110000000011010000010010000110000000100011011000110010100001101110001001011001100101101000001101111000000100100000101001011010101010111100100110011001101001000100011010101000010110101001101001011101110101100000001010011000101111101111101001010100000111111111001101011010101101100111011010011110010000110100100011101010110011011011110101110100000110000100100010100111001001001010001011100001111000101100011000000011100100100110010111111110101--------- +11000101001000111010100010001001001111000001011110001111001110000010101111000100001011101101101100100010010110100100101011110100101110010110101010011001101010001001010001011100001110111010001101111100111110101010000101110100101110101111010111110001011010010100110110110101011111001101011101100101111010101101000101101110111000111110000110011101011010100010111010011000010000010101111011000100010011000111101101001011001001110100110000011111010001011011101000010101100010010101000011100000101110110111100000101101010000000001110100010110011011010111100010111000110100100010110101010011000000101110010100101001000010010011010001001110110101111110001000001000001111010010010001001011111110100010110010000011000010011000010101101111011011010010010010110101001101001001000000000100110011110011010001011100110110000001001001100111100111010111100000110110010111010111100110000111100001011101111101101101001110000011110010111110000000000011011000101101000100111110100111110110011100001100000111110100001101101000001111111011100110010111000--------- +10000100101000000010011000110000001011101111001011100001101000010111001010000011101111111100011100000010100010001000100101101110101010110010111111010000101110111010000110100110010011011010001011001101001111001011010101010001000101101100010001001000010010011111010110000001111111010111000001111010000110000100000110010111100001101011110101000101111000101010010101110011010110001100100011101110101101111100001110100111001010111101000001010100111000111001110001001001111010111111001110010001010001101101111011001001110111100010100110010101000101110111101100010101101101101101011110111000010010000000001100110001010111010101000101001010110101100010010001001001011101101101000101000010010010101001110111000000001110101011111100100100101110100101110111000110101101001001100110111101010011000110000101010111101000001011000111111110010101000101110100111111100101100010111000001001111011000000110111010111101010001010101000100011100001100100100110000101000010111011100010011100101010001011100010001011011010101011000110000110001110000011001--------- +01110111010111111101011001100111100011110110011111101000111100001100110011010011011111001011111010001100000100110100111100111010000111010111101110110000101100000010101000011011100001011010011011110110110010000111001011000010101101001011001000011111101011001001000000011100000011001011011001111001011000000000101000100101111000111110000110010100110000011001101100011101101000100100100100011100000011000111001001010000001111110110110110011110011100011001110011010001011100101100110000000110111101111100111011000101001000000010101101110100100011101101011110101100111011001110101010100101101010111011010000101100110001111101100001001011000010101111000100001011001100101101100010100111101101010010100101010111000111100101100101000000110010010100110110010111001010111000100000001010000100100001101000010110110111110011001001000111010110010100011000101000111111110100010111110111011010101101001100010010000001010010101101100000100010110000000110000010110001110001001011100110111010010001011010001011001110100000100001001011100110001101110--------- +00111111110111011101011101111010100010011110101100101110011111011011010011011001101001110110000011100011111011000110010001001111101100001101011001011000011100100000111011111001101101000010000110100111111000000000100101111100010110001110110010100111001001011101110010001101101110100001001011111111110111101010001111000111011001010101010000010100111000010001010111100111111011010010000111001110111111011001110011111111001000000001001000001000100011100111110000010010101001010111001110100100011110110011000010101111110011100011011001011111101001010001011101011101110001110001101001011110011101110101101011111011101100101110101000110001011111011010100100110011000111110101110000010101100000110100110011000100001011011111110110110011001110000100111110101000100011110001101000101010101011010000110101011011111011111010010011010001100011111101001111101110110101110110111101111100101111100001101010110100011110010011001110001011010010010110001001110000111000100001011110100001110100010101100110101111101110011001101001000100110001100010100--------- +10101000000010001000110101111001001011111010101110010011001010011011011100000110111000111001111101011101000000011111001010110010101000010001101001001011001101011101001110000110100001100000100110001011101011110000101111110000000010011111000001110001011010100000101010110101010010011101101101111000100101011111001001101101111101110011001100111111111101110101001011100101111100100101111001011101001100001111001001111101010001100011111000110111110111001001001100000111100110110111101101111001000001110110101100000100000110000110101110100000000101110010111111000111000100110110000001000111100010011011001101100110000100011001111100011111000101100011001111101010000001001011110000000001011100100010011001111111001001000110001001001010001011001101110011000010000011110001001111101000010001010000111001010010010011100000010111010110000000100001111010110001011011100101011101010101111101000010000010001010100000111110111011101011111101100111111110010110111111101000001111111100101101000111010001010101011110110100001000011110100101100001101--------- +11111110000100001001101110111110001100010010110000010110001010001110010100110111100010001000001011100110011001010011001000001010000010001110110111000000110111101101010101110101100010011100101111100101101110111100000110001011110111110001101100001111101100100011000110001111101011110100001000011101101100111000101010000110011011110101001101010010001101000010000110000100110011010111000000100111100000010110111001110001100000111101100000010001000010011001101111011000111010110000110110000110111011010001111000111100011010000100001011100010100111101000010101010001011010110111100100110101111101100110010000110100000100111100000100010100100010111011000111110101110110101111000101111101101100100111001000101000010010000110110010101011010110011011110100010101001001000101110111110000110101110010100010001010100011010000000111011000001101001000101111101011011001011100000011001100111100000111100001000010000000100101011000101101100110001110011111000010001100111010101110101111100011111001011001001110010001110111010001111001000110011101001--------- +10110111111110011110100100110001100100110111110000101010011100000100001001101001000001010100101110011110001110001101001110000101100101000001010000101011000111100100100110111111001100100110111011111111011000000101111111000000001111011010101010111011100110000111111110010001000011010101000001010100011110100100110100111101001110001100111110010110111011100011010110011110000101101010011001101100111000011100100111000000110000111001101001010110101001000001011011000000101010100110011100111001100001111101100101110000001000111000000100000011110001001110010111111010110000101010111010110011011111101110011011010001001111001001011100011111101110111110011100001111111111111001111010100110000110001010001001101101011011100001010011100001001110000001111100011011101101001000100100111110100111101111000101111101011010101000011100001000111001011100111001000010010001010101000001110110111110100011000000000011001101111000001011110110001100110100110101001110001011001010011000010111010111100001001001111001110110000001001000001001010100100110000--------- +11000100011010011101000100100101111000000011010111111001110001100110110111100100101001110010110111100111001010011010100100011101000110100111100110000010001011010001011010100111010110100011000100010001111100011111001010101111101111101110011110100010000111011010010001111011100110111111010101010101101111110011001011110000100010110000101011101011111101110001001010010111111000010111111100010011000110000011001111011011001000110111001110101110010100010110011111011011000010001001101000111110100101100100111010110010000000110111100110000001101001001101100110010110100010101110010001000001111101100110110001010110101100101001010010011101001101100000001011100001100000001101011110001110000010011111100000011001000111110100010110001010111001001110011010001101101001101110001011111101010111000011101011011000101011110011010001001000111101010010100100011001101001111110101000111101100100000010011110101100001001100110101001000001111110010110000111011001000111101111111001011101011010000011111111000000110101100101000101010101010001100111011--------- +ls104cwds +1000011111000110101101001000110011110000000101011101101111101000100101100110001011101110110101000001000110111111110111101011010001000001100111010011001111101010101011110111000111000110110101101011110010000000000000011111011000001001100100000010010001010101001000101111110000010101001010110100010010100000111110101001000111011000101101011101011010010111011111101110101010101110111000001111101110001111111001101100100010001011110011110101100111101111111010101010111000010100110101100110111000111000100110101100000010110001101000101111111100100000000100000010010010101010000100101000001111001111110110111011101010000110110001101001101011011011000100101100100110110010110101100010101111100111011101110111001001100001000101100010010000010111100100101101010010100000000100010001010010010101100000101011111110111001000100110001011---------011111101011011001010101010000001101111001011101101100010010010011001110100000001110100100001101100010110000011000000101100100001101100000110111100000111000101001101000010111100111110100011101000101110011010010000001110101000110101101101110001000001000110110101100010100010111001111000100011110001111001110100010111100111100011101001101100100001110111101000111110110000110010100011111101100001000100101100000011000011000111001011011011011101001100111001111001010111111111110111101111110011011000111111000100111100101111001000101100100001100000110100011001011101111000110010100000110110001000110010010110111100010110000010100011110000111011110011110100110011100001101000010011100001110000110111100011110111110110111111001101101100101110000110101101000100000111100001011010100011011010100111111100100101001001101101001010100100101000001110101000111101010110000100011011100101010101001000010011111011100111001101010010011001110000100111010100011000011100010001110111101001111100000111101011010111100000010001101101111101011110000001110010101110111111011100100110010101110101010000101011011111110101001000110010110000010001111001101110111000101001000110111011010000000110001100111100011001110010010010100111010101100011110010011001110010011101101110101001011010101010110110001011011101101000101101101001001100111100001101010110101010010000110001001010010111100101000001110100111101111011101000001110001011101111011101010010111001110001100111100011100110110110011101101101010001110000010001011101011010001001110101000000011101011111001011001001000001101110111011011010011010110001110111111001100010011111110000010101110001101101100111101101011111101110110100100000111000011000100010001001110110011011001101110111111111011111100110000111001100000010010000000101001010101101000100110000010011000110010111101100001110000010011111000011011001111111000110001011100011010001110011110101010001110111010100010101000100100100111011011111001001111011010100001000010001000101100011101010001110001100011111110111010110100010111010100010011111010000010100111100100111000100111110110110100000100000101101110100111100100100001110011000101001000100110001010111101110101111011100110110000101011011011001000000101111101000110110100100101110111110110110001100100111110011101001100000100001001101100100101101100011011111000110011110101100001101000000100101001100011101011100101000100100100111111101011011001011111101101011111111110000010000111111100001111000110100000010011001000000010010110001011011001100011011100000100001011101001101010101101000011101010110110101100010011010011110000111001110100010111010011011100001000110001111001001001100110111100011011010001101110110100001011111110101101100000100011010000001011011111100011100110010000000000000000011011000110100001001100101100111001110111100101110010101000101011101100101001000110111111110100001001101000101001100010000001001100000111110000011110101001000010010001011001110100000011011100110100000101100001101111011100110000011111010101011100100010000000011110111110001011001010100100100010101101001100001101101111100110000101100111110111010111101001001101010000110100111001001110101100010111011010110010001100100100110001101110010010000101101111000000110001000011000110001011001011001110011000101011010101110000110111111110101101000011110101001101111111111011100010010000001110110011000000111010100011000011101001101111010011001101000110000011011101011010110001110000001101000001001000000101111101101110001000110000101011111101011000000101100001011100000011000101010010000111110100101111011000110100100011110001111001011110111100000010101000011101111101000111001100011110100101000111010101010000001110100100100110111001010111110100100111000001100100111000011111001000101000000001011101000001100110001110001010000100111000111010011101111110110001100111011011111111001101111001111111100110111100110100110000010011011101110111100010010101101110000101001101111010110111011010010100011110110111110000011011111110001100001001100001110100011010001110001111011110001110001111100101000001011000110010111100000001100111011001000000111010110011000101100000011010001101110001000110010111111101001100111111000101101010110110101100001111110000101000011100000010111100101010011011011110000111100100011110011001111110100100011101000000001010100101111100111111110001010001100111010011010100111000111101011000010111001000010011001101111100010110011010 +1010010010101001010100110001111110001010000111000011101100110010000011110011011001001010011010011010100011011101011111111001010101101011110010001001101000110001100010101011100011110110000001100110110111001101010100010111110001110100001100000111101011011000100101100000101111011101101001111110110110011111110010111111101111101000001010000111100110001011001100101110111001010110000000110000000011010000010010000110000000100011011000110010100001101110001001011001100101101000001101111000000100100000101001011010101010111100100110011001101001000100011010101000010110101001101001011101110101100000001010011000101111101111101001010100000111111111001101011010101101100111011010011110010000110100100011101010110011011011110101110100000110000100100010100111001001001010001011100001111000101100011000000011100100100110010111111110101---------000110010101010101011000111101011001110000101011001001000000010010000100110001001001001101111001011110111010011010001100101110111000010110001000001100001010111100110011011010000010100010000010101100111111001011110011110010110110111110000000101111100111001111111110010011101110111111100001100010011011000001010010001000000001011011001101000000001111100101011101100110011100011010000100100111101110011111011100000001010101101011100111010100101001110111010100111010111001010111011100110001011010010011010001111000010011100111110110011100001111110100111100010101011000111010110110110001110101110000110001001110011010110101001111000011010000100101111001011101001000011010111000111011100010011000000100001111000100001111010100010110110010011101010110001010001111000011101001000011110001010111011000110101000101101000000111001001100000100011101101110100100101111111000011101001111111011101001011011001101101101110000110100000010111101010100111110110111110110100101001111100001101101011010111101111001110111001110110111100001000111110110110011011110001010000010111100000010011010100101011011111101111101111100010011010011100001101010111001110000011000010101100111001000010111011011101000010100010000011000000101110000010000001001010100001100111111000101000100000101000011010110111110111000000101001111101011110110001101000000011010001110111110111010110011001000111010101000011101101000000111010000110001110111110111010010001111011000011100110010101000010110011101001000001010111000111111010101001001000101001111101000000110010000111101000100110100000000100110001010001001001011011000111000101101100000000011110100011011101101101010001111100000011100010000110000111100000101011111111110001101011011010101110100000000000110110110000110001101001000000100110011101011011010100001100000100001110111011000010001110110010111010111011000101110010001011101001100001101001000010001101101001001111001101001100101101001000001001010111001100101111111000000011000101110101011001100110000011000101110001111110000011100111000101011110001011011100101100111110101001110101101010010010011111110000010100010010001000100010001010110100101111011011010101010100100001101010100000100101010010111011101001100010000011100001110000010000111101110011111010000011111011101110010011000100010101001010011101010110000110111010111110111101100000010100110101111001111001001000111111000010101110111011101001101010010101110011001100111101001001111001001110111010000000101100111011110100010111111100101111001001111111010111100100101000011010111001000011011010110010110011101011111110000101010111010011010011010100001011000110000010001010011010000010010111010000011000010010111000001001100100110000101001010000111001110011111110000000101000001111001101010011111111110011100001010000011010000111100100001011000110011001010101111100110010000101100110110001011010010001110101011011010101100111001001000000001111110100011110010011110001100011011010011011101110001101011100111000011110000101000101000010100110010010100100011101010001001000111101100100110101100011100011101000000110100011010100100100001010001010110110110101000111010010111110001111100001010100011101110010001010001000100010011110001000100101110110110011110111001010111001100010100100011001111110101101110101000101001100100001110011110100001010100011110110001111011011001010110010101111010111100110110000101101100110010001100010100111010011011110010001001001001111001100110000100110011001000010010001111101111100110101101100011101001100000100011111110011010011011100101010100110101100101001000100000100010001111110010100110110010001110000101101110100011010000101101101001000101100011001100100101100110111110010011011101011100111110010011100011001001110010111110101010011001111000000101100111001100001010101110100100001101111000111010011111001011111010110100101101011000011110101010100010110011011111100111011111010110001010101001010100010101001100101011011110100111010110000101010101110110000001000101101101110100110001001101011010101011111011010010001001101111110101101011101100110011010000101000000011100010001111010010001001101111101101000111001000010111100110111011010001010110100000011011101101011011001111001110110000111000100011011011001010000000001001001100011011110000001101101010100011011011010010101011110110010010000110001000000011001000001101011011011100010110000000110011111000111010010010100000001111010111110001010111001100101101000001100 +1010000101110100101110101111010111110001011010010100110110110101011111001101011101100101111010101101000101101110111000111110000110011101011010100010111010011000010000010101111011000100010011000111101101001011001001110100110000011111010001011011101000010101100010010101000011100000101110110111100000101101010000000001110100010110011011010111100010111000110100100010110101010011000000101110010100101001000010010011010001001110110101111110001000001000001111010010010001001011111110100010110010000011000010011000010101101111011011010010010010110101001101001001000000000100110011110011010001011100110110000001001001100111100111010111100000110110010111010111100110000111100001011101111101101101001110000011110010111110000000000011011000101101000100111110100111110110011100001100000111110100001101101000001111111011100110010111000---------110000101101001010000100010101001001000000111000101001011000001001000010100100111100010001010010010101101011101110101001000011001011010011100000100100010100110101111100001101011010110100000010100101111101000110011000010100110111011000101100101111110101011001111001011111101101111000111111111101011100000101100010111101010001011011110100111110101110010101001110110111011010110000110000010010000111110101000000111111000101011010111011100100000000100010101010001110001000001010111000011011101001110101101100001010010011000010100100011101101110111000101001111100101100110000100001100110011010001000010011110000011011001000111101100001101111011101101111100001100101100110001101111010011011000111011001001011011011111011001111100101011000011101001101010011100110000011001001001110010000000000001101010110010101000111011011000100100100111010100100110011010101100101111011110011001010000010010111011010001010000000010011011100101110011100000001100111001011101000110100011011111000001000001101011111010010101100001101110110010001000000100011000101010010101101010101110101001101100000100110001100111111001101010011110011110001001111000010010010101000001100001001001111000101111010100010001110001000110100001000011011011101100000101001101011110110000101111110100010100001011100110111000111101100010010100100100010001110111011000000111001100110101111111001011111011100000010100011111000001011011010100011010010110100110011101000111100011011100010100000011001011001110110110010010011001100010110011111100110101100111100110010110000010100010100110000111100110010011011101111101100101100100110110000101011001000101011100110111000010101100101101011010100101110011001001110100100101100111110110101000000110000110001101110110100010101001100001010100100111111001010000011111001110010100010011110011000101100111101100111100100100011101000011011001100000011010101011111110001111111110100011110011010000100001001100011010010111111110000111111100011000111101110110001111100111101100101011000001100110101101101011000101000101110100111001001100000110110000110011101111011101000000101011010011011111001010010111011001110110011110110101010000010110111100010011000001001100011110001110101111111000000011011110100100001100011011010011101100010011111010110010000001001000110001101001000110001011100111111100000101101110101010000010101011100011000000110001000111101010101001101111011001010111100010010000110110100001101110101000101001111001001101010110101100001011010001111000011100010001110101000000001000011110010001111011111100011110001000011110001000011010000111100000100000110101001000011110110100110111001100011011101101101100100000010001000110100000010110010100100110001010110000110111001010100100100100101110011000100010111111100110000110100010111110010100010000100011011001101110011000001011010100101000110110010011000010010001001001000010001101010110011011101001110011011010101010110011110000000011110110010000100111010001001001010111010000111010001110111001001101011110010100011001000110111001100000010000111001010110101010010111111101100010001001100000000001101011010001111000110100101010000110101011110010010100011000111101001000010100100100101110000001100000101111011000100101100011000010100110110001101000010011110101011010100010111011010111111111110111010010101011111011000010011110110111111111001001000000001101010111001100001110110111101110110100011000011011011000010011001101101100010010100100001110000100100001010001011011001010111001001001110101011101100011001100101011010101110110110111101101111111010011111000100011010100011111010111110111100100000010100010000000000100111000101000011110001000001011111000111011000001110001001110111000010101101101100110011101010111110100111000111100000001011000001010110111000111111000011100010111010111100001100101001000110101010000000101010011010110001000011010010100100010000100000011101110110111011010110000001111001111111100101110011101000001111010110110011101001010100000000001111101111000100110011010000110110001010100000000101110001100111101110000110011010100110011111110110101011101110111100110011011100100010111111010100101001001010111001000111011101101011101110001100110100100100011010000011101111011011101000101010001110101000010001011101110110110010110001001111111010100101001110010001100100111011100010010101000010100110010110000010001010000000111010100011001111011001011001111011100011110010010001011010001110100001111001001110 +1011010101010001000101101100010001001000010010011111010110000001111111010111000001111010000110000100000110010111100001101011110101000101111000101010010101110011010110001100100011101110101101111100001110100111001010111101000001010100111000111001110001001001111010111111001110010001010001101101111011001001110111100010100110010101000101110111101100010101101101101101011110111000010010000000001100110001010111010101000101001010110101100010010001001001011101101101000101000010010010101001110111000000001110101011111100100100101110100101110111000110101101001001100110111101010011000110000101010111101000001011000111111110010101000101110100111111100101100010111000001001111011000000110111010111101010001010101000100011100001100100100110000101000010111011100010011100101010001011100010001011011010101011000110000110001110000011001---------001000010111110010100111000001000110101011111101001111111011100000101110001111110011111111110111111001101100000101100101111111111111010001100010011101100011001101100011011110010101110011110101100101110010011000011100010010000101010011111011011000101101001000111000111011011100000101011011011000010001101010000101111010011101111010000000111000100111111111010001101000110000010010011010100000100100100110011000000011100111000110001101000000100000011111010110101000000011101000101001110100100101011110010001000100100010111010010101000100000011111100011101011010111110000010000001011000110001101010010011100111110101111010010011011111011001111110101111100100101001011111101001010001101011001001001110110111011001010100010111101011010000011010000110111111110111001010101111011100110101100111000101100011001010110000100000001100100010101111110101000010010010101000110001001011111011110011010111101110100011011101010000010001111010100110111001110101000111101001001011001011101101111001011111101100101001000010011001000001010100111001101001110000100011111100011110110001110011110111111101101110000011010110100001000100011100010110001101110001110110111101110001000000111100000000011111001101101011100100110000101101000000111010100110100111010110101011001101010001101010110000001010100011101011101110110101111010000000100001110101001000010011010111110011111000100101100000001000100011000111100101000110001000110101000100101111100000100000100110000010101001111110110100100000100101001010000011011111111100101011011010101110000000110111100101001001000000111110011011001010000001110111110011111110011110110001011001100110011111101101011000110110000110000111101001110011111101110000001010000110111100100001101001010101011101100011000100001111010001001100101000110100101111010010111001101010000000101010111011011011001100011011010000010001101000000011010101111101011001001001100100001110110110011101111110010010111101000111001101011000100100101000100010010001010011101101010011111110111111000011100100111001100100101111001111111001110111000110111010010001010001100100110001111111111001111110010010100110011110000000011010000011101110000100100110000110101000000011100010010010101110101110011000110101101010010001111100001111110110100111111010010101011001100100011001001100111000010100110110010001101011000100001100110000001101111100011111001100110000000001111011110000000000001000100101011011110111110111000110011011010000101001010110000011101110001101100100111011101111110111001111000010001111010000011101111111001000110010011100110011101000000010100101101000100000010101011000111101101001111011101101101100110000101001010100010100001100100101000010011011111010011000100010000111011010101100111101110000011110110011110100011101001100101001111001100001001111011001011001010000111111111011010010110010010110010011111110101111000011001100101100101010011010110100101000010110010011011000010010110100101110111100100101100001110101000000011000100101110111110010000110100110111001000010110011111000001010100010000010010110000100101000111010011010011001111000010101010001011000111001011000111100111001001100111001101001100111100011100101101100000000011000001111010100110101010010101111111111010111011111001001100110001111000000000111010101100000010111100001110100100001000100010101010101110000010100001011001000010110010111011011111010101101000000110101101111100101100100000001111000011111010010011001011101101001100100111100110111110101100000110000110111000000100000001000000011001010110101111010100011001010100111110101110010111111000001011000000010111101110101110100001111110010011001110111101101101111001001000010010110011011100101000110000101110111101101101111001110100001111011010111000010110111011000110010100101000101101101111010011001110100101111111011100000000110110110011101011011101011010011010000110001010000110111001110011011111000000001011110000111100001011101011111100011001011110111100100101110010100000001111100101110000110011010111011000010000000010101010010111111110000011000001010101100100000110110111100000010110001010101011011010010000000111010001101100100110100001011111000110111000101100000100001000111010110111101000100001010110100001110000000000100010000011110001110111110010100110010101011011100010011011001110001100101001011011010110110110101001011011101110101110000000101010000110000101101110010110101011110010011110011010101000011101000111010000101100101001011 +0111001011000010101101001011001000011111101011001001000000011100000011001011011001111001011000000000101000100101111000111110000110010100110000011001101100011101101000100100100100011100000011000111001001010000001111110110110110011110011100011001110011010001011100101100110000000110111101111100111011000101001000000010101101110100100011101101011110101100111011001110101010100101101010111011010000101100110001111101100001001011000010101111000100001011001100101101100010100111101101010010100101010111000111100101100101000000110010010100110110010111001010111000100000001010000100100001101000010110110111110011001001000111010110010100011000101000111111110100010111110111011010101101001100010010000001010010101101100000100010110000000110000010110001110001001011100110111010010001011010001011001110100000100001001011100110001101110---------101010000010101111100110001000000110110000110100000000100110001111001100010001100101110010000011011010100100001000110110110011111100101001111101110010001110010101000101111001010010001001000001001101001101000111011000101011001101011111010001011010001001000000001110010111010100010010000001100010001101111101101110011101110000000111110110111111001010101000101111000000101110100000001010000110000011111101100111100011010000110101100011010011000101111011010111100100010110010111110000010001001001100010110011011011011110110111100000001101010100010011001101101011110100000101011110011100100001011110110111110010110010110001011111101011101001110111110101001101000101100100010000010100001011110101001101011011000110000100101110111011011110111101111010110010001001100001110100100010001111101000010110111111011001011100011110011000000010100101110001111111000011001101011111010000000010001110101001010001101101100100100000101110011110100011010011011000110000110010101000100101011100110011011000001110100101110101110010100010001101100101110011110001010101001110100101101100101110101101110110101101111000001011000000001111110000111000100110110010101111101010001011101101111001111101011111010001100011101110010111111001001100110010111111100111011001101101100010110011111110110001101100011001100010000101010011010011011011110111101001010010000001001010111010011101011111011100011001101110011110011110110111001010100011100100010110010111100011110111000101001110000101010000010010100100110011101001000010111111010001010000000001110101100100101100111111100100111011000010111000111001101110110011111110010101110100000111100101111010101111010001011110111101001010001001000111101011011110011111010101101001000111010110010100111111100011101110000110000001011111101011110000110011111110100111010010110110001100000111000011001011100101010111110100100001000001100100100101010010100111010011111011010011011110011110111001111110001101010111111100010001111011000101001000110001101000111100111111110111100101000000011110111001101000110100010011011011010010111011101011111001011101000110101000010101001010111001010001001101011000101101100100101101011111110011011010101101101000101001011110000001111110110011101011111111000001101101010100000101111010011111101110110110111000000101111100000110000100010010101001100001010000110011001010110101111100110001110010111011011110111101011110111100000110110010001010001010110111011000111010101001100000100101100011000101100010101111111101100001010010101111111000111011111000010110011001011110100110110111010100110000101011001110010010010110001010010011101001000100111101101010000010100111101100111011101110010001100010100011110111101011110101111101001110101101001000111100110100101111110010010001100001100101101111101010011110010000101001011111000110111010110100011111110111101011010110011110000101011111100101001111101010101010110110111001100001001110100110011100101000111001010011010101000110110011000001000110101110000111011100101000101101111010011011100010010101000001101101111001110111110111010011000100101111001001011011100011011011100100101100110110001111101010110101011001011000011001010101000101101100110010011001110111100011000111011100010101000100010100111110001111111010110111100000110101110001111000101001010100100001010001010011110110111011010111101100010110011001110011010110101010110111000000111001110100010110101001010001101101110010100011100110000000010011111100000010000111100000010001111110010010110111000010010110011111100000011101010111100000100101000101011111001110110101001100011010110000111001101000000111000100100011011010011010111101001010111000000000110011101011000111001110011100101100000111110010110110011000101111111111110011111111011101000001010101000001011000010011010110001001011100011011111111100000001011100100011111101101100001001000001110100100001101001111101100000111010001101101110011110111001011110000010010001010100000110101011011101000100001011001000001010011100000110101000001011000010010011111011011101001101011100100100101010100101111000101001010101101010101110110000001111100110000001011001110000011101111001110010000010001100001010111100000000100011011110010001001110011000010100110111011010011011100000001111110001101111010110000101011001010001111101100100111100011010000000100001101101111100011001011000101110010111100000100011110101100001011110101101000111011001000101110100110011110100111110011010111101001 +0000100101111100010110001110110010100111001001011101110010001101101110100001001011111111110111101010001111000111011001010101010000010100111000010001010111100111111011010010000111001110111111011001110011111111001000000001001000001000100011100111110000010010101001010111001110100100011110110011000010101111110011100011011001011111101001010001011101011101110001110001101001011110011101110101101011111011101100101110101000110001011111011010100100110011000111110101110000010101100000110100110011000100001011011111110110110011001110000100111110101000100011110001101000101010101011010000110101011011111011111010010011010001100011111101001111101110110101110110111101111100101111100001101010110100011110010011001110001011010010010110001001110000111000100001011110100001110100010101100110101111101110011001101001000100110001100010100---------111100100100100001010000011000001100010101100101011100111110101101111111111111100101110101101000100010110101010101011000111100001001100000001001100000110111110011110100000010000110011110000011110010110110100111010001111000011101100000100010110001110101101110000000110001001100101011010101101101000100100000111101000000000111010000110101011110011101110110100010001100100011000010111101010000101111111011100010000011101100000111010010001011110000011011010101011010000010011100011000001100011001000010110101110111001001100101000010001111000011001011010000100011011101001001110001111001111011011000110100101000100000111100001010111011110111010010000001011001110011110010000101111110000010101101011110101100011101101000110110000110101011010001000101000100100001011010011011000111111010100001000010000001101011110010011001110010100100100100000111000010010010001111001110101110001100011101001111110000110000100000100100101001001000100110011001100001001010010110101011110000101001101110111010110000010110110101000011110110001000011100101101101101011110000011111011010110110110010011110101110011110111011011010100010101001110110101010001101010110101011011101000001010100110111101101010101101111011101001000101000101101110111101110000000100001111101101011011111110000100001001000111110110010010001101001010110010100100000100011101110111100001010010101010001110001000001011010101110101111001001111100111010011100000001010010111101110000011110110011100001011001101101101101101111100001011111110100000101011010100001010101101110000110110100011111010101000100110111100100000010001111011101011100010000100101001101111000000100101000101010001011111100001101111110111100101000010001111011000000000010011010000111110101111110001101101100011100100110011111011100111101110001000110100110010010011100111001110110000101101001011100011011100000110011001111001100001010110001010111010000010010101110011100011001011101011110000001101110101101001000111101111101000101000001001001010010001011100101100100011001011001111010001001100000010001100101011001011101100001011101010010001000111011010101010001101110011111101010110011000110111111111110101010010011100110000110110001100111111100000001001101010001100111100100101100000111011001001110001101101111000110110101100110110001000111010101111110000100011111001010111101011100010011000010110000100100111100000001101111110010101110111110011000100111000010010110110011000100110010100010000100101000001010001011010100101100001101000010001101101000110000101101000100100011111001101111110111110101100110100101100010001101000000011110111100101001001110110001000111001101111001110101001111101011111001111001000101100010001111011000011000100101001111001101001101100111101000110010111110000001000000101101010000111001010110011101101010011100000010110000001101101011000101011001001100100011111001110010011111011111111000101100110111011000101011001111000110110111101010001100011110111001010100110001001100010101000000001001001000110010101010011000011001011011001111100000010001111001010001011000001000010001111001010000101100100011001001101000000001010000001010101011110100000100100101100111010101011011111101000010000100010000111001011111011000011001111001110001010100000100101110001001111110001010100100111011001111111111000111100010001101011110001000101001111110100110001111001111001110100101100101000101011110011110011100111011111001101011000010111011001101110001000001010001111011000000000100101000110010101011000100011111000101100111101001001100100001000000001010011001111011111010100001111000010111111001111010100101100001111110001100101000100111010001001101001101100111110010110001100011010111011010110000100110110111100101110001010000010110010011001110111111010101111100100100001010111110011001000110111011001111100011100101101101111000100100000001000001011000111110010101000110001110011000101101000101100000110000110110000011101010000111110110001000100011001011000100011111110011011011101011100110010001100111100000111111010100000001001001111001101001110101001110101000010100111101111101101111011111101110000110100111111011011001100000001110011111111000111101000100101001101101110110111001100110101110010010000100111110101110011101011010101111111000101001110111100000110001111110110001001110111011111000111110101110000110011001110100010111000101010001010100001010111110000100011001100011001100101111111101101110011111011001101010101100011101100011100 +0000101111110000000010011111000001110001011010100000101010110101010010011101101101111000100101011111001001101101111101110011001100111111111101110101001011100101111100100101111001011101001100001111001001111101010001100011111000110111110111001001001100000111100110110111101101111001000001110110101100000100000110000110101110100000000101110010111111000111000100110110000001000111100010011011001101100110000100011001111100011111000101100011001111101010000001001011110000000001011100100010011001111111001001000110001001001010001011001101110011000010000011110001001111101000010001010000111001010010010011100000010111010110000000100001111010110001011011100101011101010101111101000010000010001010100000111110111011101011111101100111111110010110111111101000001111111100101101000111010001010101011110110100001000011110100101100001101---------100011100100000100000001000101101100001010000111100011111100000000111101011001110101010001111011111101111010101011101101000100111001010100011111001110001110000011001011011101100100101110101101110000011001101111110101100001000100011110100001011010010010010100111001001110001100111110011100000111010001101001001111100110010101110111111110001000010101010001100011110101101101010111011000001010001100010011100111111000101111011000111001101101111111000110110111001100011010010001101000011010001000010001010111001010011011010100011001100101101111010101111101101111001110100110000111100111001100101100010010010010000011111100000001000010111010011111001101010100001111111001011010101111110110101111111011001000111011000110011100110010111011000110011010111011110000010011110100001100100100110001001001000011010110011010011101001111111100110101010001010010000100111110111111011010000010001111110000001000000100010011100101010010101011010111110111001101101100101000001010011101001001110010100010001010001111000011101001010000101100011111110010100000110100000101110111110000110000111011001111010110101000100101000101101101101001001001101011110010010100001011001001111010000001011011110100001110100001101001101010000111000011100000110010110011101101100110101010001001001000000001110111010100100000101101011110110001100010001001000101100100000110100110000011001011001011100111001011100100010011101011011010001000010111110011100000110000011110011010001011110100010100011101000100110100001110010011000101110100100100100111010101101111100011110010011001010110001100111011110010110011110001001110110010010111100000010110110100111001110110111101000000000011010100100000000101011100111010000011011001111010110111111110011110100111010011011011010110000111001111111011100001100010010101111100011110110010111011011100100110101001101101101110111101100100010111111101000110001101001000001000000100100111000010001110110110010111000010011110101011101100001010110010001101010001010110010100010010111110011101010000110001001011001000110111110000011000111101101011101001010010010001001101111011111000000011100110010110100000101001000010001100000000011010100111010001010010101011000110111110100111111011000011010111100010111100001010000010100001010100011010001010101111010000010111000111101001101100110110100010100110101100000000011011100100000100100000101001001110110101101000001001011010110110011010011010110110100010110001001001000010100100101101000101101000000100101011110111011110100001101111001000111010101000000000000100100101011111011001100010001110110011111001110011000001001001100101001010100010001011011110010100100000001010110111001000101011111001000111110011100110101110100100111111111001000010100011000110000100011110101110101001101111000010010001011000100010000001110011011110011100001001101011110100011110001110010110101001011100111001001011011101101100110011101001111100000000011111010101111011110010111110011101101101011000011001011011101110011011001101000111010100110101110100011110111110110000100100110111110101000101101101010110101000001111101110000011000000010101011011010101001101111110000000001011110111110101010100111100010000111100110001100000011101010011110100100000111110010001110111100100100100110101000000011010110101100101100000100101101001010110111111100111100110011010101011011010111000010010101001011011100110011111010001011110101111111111111010100110001100111111111000100000000110000010000111010100000000110010001110111100111100110110010010110110111110101110001001100000000011110011110111011110111001110000101111110111110000011101001010100101010111110010010110100001110000101101111110100100100111010101000000000100110111010000111111010000001011000100010101000010111100101000110110001001000010100101100010011010101011101100111001011110001100001111110111011000001101010010100011000011000110000111010000111000000010010011000111110110101011101110110010010101001010010011000100101000110100011000101000101000011111111111010101101001001000010101100010010101101100110100011100011110000100010101011100101101101101010001111101111011010011111101000110010001000001100011100011101000000001001111000100010101100001011000100100101001000000000101110010000001101100111100010110110000101000000100100101011100000110101100110110000111010110101111101100001000110001001001000100111001001101000111110010001000011011011100010111110100011001110000000101100010010111011010010101111110100011 +1100000110001011110111110001101100001111101100100011000110001111101011110100001000011101101100111000101010000110011011110101001101010010001101000010000110000100110011010111000000100111100000010110111001110001100000111101100000010001000010011001101111011000111010110000110110000110111011010001111000111100011010000100001011100010100111101000010101010001011010110111100100110101111101100110010000110100000100111100000100010100100010111011000111110101110110101111000101111101101100100111001000101000010010000110110010101011010110011011110100010101001001000101110111110000110101110010100010001010100011010000000111011000001101001000101111101011011001011100000011001100111100000111100001000010000000100101011000101101100110001110011111000010001100111010101110101111100011111001011001001110010001110111010001111001000110011101001---------100010101111110110011000000001010010111111000101011001101111100000011011110111001110101101110000000001100001111101101100000110001001111110011011100001001101100010101100101001100001000010101010101001010111100001011100001100010000000100011100101001100010001100110010100110100010111000101111001011110000001010000011010011000101110110111111100110100101001011010001010001011100111100111100110011001011100100001111011001001010010011001100101100101010111110001100111111011100110110101010110010000000101101011011011000100011010011110110011010100100100110111111110000100001000010110100011011110011001001100111010100100100111100010011111101010000011010110100111000000100101111000100010000011100001011110001110010001010100110000110101011011001100101010000110111000101001000110010010010111001000011001101111010001010101110110111100001111001011010001011011111000101000011001101101010101100101000011101000111110000011110000111100110111011011011110111101011011110010000101101011010001010010111110011000000010011001111001110100011011100111010101111001010001100100101001010001101000000001010111001011111000011010011110111111011011001100111011010010001001001110000111100101110001110011011111110111110000001100011100000111001001011001100101011111010000100010010001100101111110001000101111010000111100010010101101100101010100010101010001101001111010100001100000010110011010111110001111010110000111001001000001111000110001111010101010011110000111010100100011010110001100101101100110011111110110001010011000111011110110001111101110100100100110010100001111111110001010101001000100000111001011110000010100110110011001010010100110011011111110100010100011000000000011001100000100011000011111000001011010000000110011001000110010101111111010011101100010111110111001101001010100001000010001000111011111000010000010110100101010010001101001000011111001101110111000110001011000111100111011100011010011001111110111100101101110111001010110101011111001101111110010111111111010011110001110110111100110000000101110100101100101001100011100100111100010001010100101011101000001010001010100011100111000100000101101100100100110101000100110111010100100010100001001000010010011111011101101110101111100011000011011111010010001111000110000100010010100011101001111011011011001110110011001001000011101111111100111011001110011010100010100010101101010111001001001010010001000000010111001101001111111100001110010011010010010111010011010110000111110001110000001111110011101100001000010001000101101100011000001100011111101001000111010010100110101000101010010100101001010111110100110100110100000111101001100110101011100011111001101010000001101011101100000001001111011010110010011001100100001101110100110110000000101111001000011100101101111111011000011100000010101001011010011111100101110100001111011111101001010111111011001010100101011001011010101011111101011101001111000110000110100001100101011000010100010101101001010111100101000101010101011100100001000110101110000010101000000001011011011110111100010101110011011100000100001100000000101001100011110001001100000001111000010100011111010101001110000110010011100011110011110011000010011010000100101010111001100000010000111000001111011100010100001111111000111010000011111010010110111011010101000001110110011110101100010001110111011011000110111100110011101110010110110001000001011110000111110110011001101110011011001010010000101011111000010111101101010000100001110001000011100111010000010010100001001011001101100011001001011011001111101010110010111000000110101011110111110100000010001101011011101101001100001101010011010101000010110100010000111100001101010110111101001011000010001000011111001101001100110001110101111100111111001000011111111111010100110100110010000000010000110011011100011001010100001110000110100111001101110010101111011001000001000011111000110111000000001101011010000111111101001110010010010100111110100111000111011100011010101101100000111000001110100110100110000110101000100000100001111010010100000111011100110011001010100110100110100000100101000100100101000011110011110111010110001010010011110010101101001000011100111010001000011001011011110000110100011110010011101101001011111001001010010011110111001101001000010011111000100010100011110001111110011100001000000011000111110110111001011100111011111011010001011010001101011011110000001110110101101110101011011001111111011011101110011000011010011010000111101101100000110000011000011001101101000010111000110001 +0101111111000000001111011010101010111011100110000111111110010001000011010101000001010100011110100100110100111101001110001100111110010110111011100011010110011110000101101010011001101100111000011100100111000000110000111001101001010110101001000001011011000000101010100110011100111001100001111101100101110000001000111000000100000011110001001110010111111010110000101010111010110011011111101110011011010001001111001001011100011111101110111110011100001111111111111001111010100110000110001010001001101101011011100001010011100001001110000001111100011011101101001000100100111110100111101111000101111101011010101000011100001000111001011100111001000010010001010101000001110110111110100011000000000011001101111000001011110110001100110100110101001110001011001010011000010111010111100001001001111001110110000001001000001001010100100110000---------000000110010010101000011011100001100111001111110001001001100011001111101000111010001101101001100010110011100111111011010001011000000000101010000101100100001100110000010010100111001100101110001111011111110011111001111110011010100010011100000101000000001001111000110000000100111010011000111001010001111111000010011111011001100011001101111101010111101010101001001010011100010010100111000010101000000111000001111101001010000010001110010111100001111011101000110111000111000010111110001011010101111001101110011111010010100110011011111101100000000101010110111100111111101111110001000000010001100111110101011010000001111100011100011100111100111100101100010101010011000100101111010001110101110101101010110100110010001110001111000001010111000110011001001111111100001101110110101101101000000010010011011001000100110000001011010000001110000100110001010000010101100011100010111110000110101010110111111101011000001111110011111111011111100100101011100111110111111000100110110100100101111101000111101100000011101100010011101100001111111001100100000010110101001000010010110100010111111110010111111001110110010011111000111111101111101001001111100001101100110100100011001110011101000111011101010110000100010101101000011000101100001000100100100100111011110111011101001110101011110000111000100111110011001010010110111001100101011111111001001110110010011010100110011100001101100010010010010011110101010110000101100000000001101000000011100110010101010011000101110111101100001101110001011000101101111001110011011111110101111110100111111110101001011101101000010001111001001011101010101010110111110001111101110111010110001111000110000101100000100101100100001111010001110001000100010011110011011101000110111101000011100000001110100000001111111100001101011111101001101100010000011011001111000100110010000011001000011001111010011011101010101000011001000111100110000000001011101000001001101001100010100111110000011001011001000011110110100100111010000010101111011010000000001101011111111010100111000001111011110101101011100110111110000010010001111010101001111111100000100001000011000000001011101100011010111011100101000101101101101101101000011010111010001100110000000011111101001111101000000100111100000110011110000001001110000111110111001000000100010001000111001001101010000010101111011000010101110111100100000111000011110101001001101101010000000100110110100000100111111100001101100001110000110111110011110010010111111001001000110001010110001111011101111000000011001101101100111100111010001111100001100010111011011111110111000111001010001000111000110101011000000010010110001011100101110110001100110010100001001101111111001110111001000000110001000111110110011001000110101101001011000010010001111111101001100010110110110101110111110110100000000000010010011010001011011101110011110001111110011101010111101011111100110001110111011101001010101011010111010101100111010001111000101000010101000000001101101010001111101101000100011100011110000101011000001101100100000111011111100110001110011001010111110000011000010101110101011000010100101010001011100010110001001011101110000110011110111001011001110001001000100000101000110011010111010110110101001111101000101001011010011001010011011011010111001001000101011000100000100001111110010101001010111101011000010101011010101110111011000000111010011100110010101000001110011011101010000101110101011001101011100000010110100011101101100110111111011000111000110110101010101011001001100110010011100001110100010100000110100010100001010110011011110000000000001011101110110110001000011000001101111000100001111100000110010100100101110001110110001001110010100110000010101011101011011000101011001010100011110001100010100001100000111111010110010000101011000011110010111001000101010011011110110100100000110110100100001010000001100110100111001100001001001101000010100011010010010001010011100000001100101010100100011111111010010101000010111011010010100100010101011110000100010010100101010110010111011111111111100010010001011010100111000111011101000011001111011111111100010000111100010011000110010001110011100110011010111110111111100001100101011111111101001111110110100011001100110001111000001010001000110011111011000001010011010110110011000111100011010011111101111110100000110011100000010001010100111010101111111101011100001001101000100010011101110111000011000011110000100110011000100100011001000010011100110101011011001001010111111010101100101100111100011010110100100111111010001 +1111001010101111101111101110011110100010000111011010010001111011100110111111010101010101101111110011001011110000100010110000101011101011111101110001001010010111111000010111111100010011000110000011001111011011001000110111001110101110010100010110011111011011000010001001101000111110100101100100111010110010000000110111100110000001101001001101100110010110100010101110010001000001111101100110110001010110101100101001010010011101001101100000001011100001100000001101011110001110000010011111100000011001000111110100010110001010111001001110011010001101101001101110001011111101010111000011101011011000101011110011010001001000111101010010100100011001101001111110101000111101100100000010011110101100001001100110101001000001111110010110000111011001000111101111111001011101011010000011111111000000110101100101000101010101010001100111011---------110000110101100110111100001001110110011100111111110111110011111010100100110001011000101100110100101100010110110010100011001100010101001110100010000010100001101111001000011110010100110011101101010010001011100101101010001010100000000100101111010110011110010101010111010010010010011000000010001110110010101101011001110111111010101100011001111101011001111000100000101111000000000101110010001100001011100100110111100110100001101000101000010101100100011011010011011110101011000110011111001100010110111011010011010010100111110110100010110010100001110111111100111010101101001111110101110111110010100111010000100010111000000110010000001100011111101001000110000000100000101110010000100111111100000100111110101111110000111111111011100010101011111011101001001000011000001101110110010000011111111110111000000101011010100010001000011110001011100100000111001110010110000010010011001111010001110100000101100000101111010001101110100101000100001001110010011101110101000100000000110001100110111111000010011001110100101000000011000100100011001111000100010110001001110100100001111010111100001010111111111101001000110011100001000000011101100101001011101010111111000100101100010001001011101110011101000000110101000001000010101110001100101011111001101101000010101101110000111111001111001011101100000010011010111101010101001100000011010111011010011100100011110001011010001001000001011010101011111101010010110100010110101000111001110001110011100100001000010000010110000010010101111011101000011101011110101001001101000110001101000001011011011001001110100111101111100011111101000100010010000101111001101011000101010110110110101001100101000000010101000100101010000001101111011001101000101010011110011101110101101010000100110010110010011110100001001001111010101101111110001100010101100000011010110101001000000100011111111101111100111100111110010111001101111011100010100110100001101101111111010010101101001100001111110000011000010010010000101000101110001100011011000101001010010000010010100011110011111000000011100000111001100111010000001001101111010111110001100000001101111100111111010010101111100100001001110110101101000011111001000011001000000011010111101011001100010101111111101111000100110010100011010000101000110000100010001101110001100111100100100111101110100110000100001000001110101101000101110011101110111110110111110101001110001000110001110101110111000000001111010111100001001101010101000111010100011011111010100001010100101100011000110001010100010000011001010001101110101000001011100000011000010001101101001111101010110100110000110100000111010001101000010001100010101000000010111000001001011110110011011010001100010111010111011010101001011010110011110010110111110110100101110010010100101010011100101001100101001001011011111110011111001110100011110010100010101101000000001001001111101000111110011110111100100101101110101101011000111001101111000110011101010000011110001000000111011010000111111000111001111100111100010111001011111110001010100010101010001010000011000100100000000100101001001001000000100110101011110010100100010000000001110101101100001001110110111111010110010011010100001100101101011001000011011101011101100011000001110110100101100000111011001010110111001111111010101011111011111000010110011010001010100001010100011111100110001001100110111000011011100010000011100101110010010101100000011011111110110001100000100010100001110011110101101000101010110001011111110001111000110000010011111111000100100010101000011000111111010100101110000111011111111001010110000010000110001111010101111111000110101001011111001000010010100111000100001010011111010111100100011001100001100001110111100100010111110000001001011000001100111010110110101111001011111101001000101011000100010010111101011100110010111111000110010011001111100100110000111000101011011100110100110101001100000010001010000001100000010010101001101011110001001111000101011101011100111101100101001110010000000111011101111001010011001010010110111001011000110111001011100010101101100111111111100100000011101101011110101011001011000000101000101101000101001101011010011111000000101010110001110010010110001011110001111000001101110100111111100111001100011101010010100101100001110110000000010100111100001101110100111001111011001100110000111010001010011101011101000000100101000110011001000101011010010110001100100111101110000111111100001111100110110100011101001001000100010010010000100110111100000001010011011101100100100110110010101000101010 +ls208msgs +1010110110110100100100101110110010000001101011011000010111000011111101001101000010110100001101100100100011111111111010110110001000110101100001010100110101101110110011001110010101000010000010001110110111100100100001111000100000111100101001010011110110000110100011111111110100011011010111011001111100010101111010100111111111011111000010111101011100000011101100000111000001110111110001110010000101111101100100010010100100001010110011101100110001111010011101111110000000101000101100011011110101001100100001001010010111011001010111101001000111110011000001000010000001101011100111101001110010001010111111100011011011100101001100110101100010110011011001111001010011010101101111100101000010101101100100010011110111001000110101101001010000111010100001110100110000110100100000101101100110110111000110100010000100000101000001101100000101100000010111000001110110010100100001111110101011111100110000110110000110100111011010101001000001100000011011011101111100100011010100111111111010111010100101011111101110010110011100100010110110010100100100110110000111011101010100111110001010101111110001111000010010100010011010111111100111010001111011001100011011011001010001000101100011011000010111000001111110000000101110100100001101111111101010100110010100010001011111000110000110011110011111001101010001101010000000010001000111111101010101000010110010110011100001111101111011001111010000011001110100110101010000100111100010111101111010111111111000011010100110000010001100001010011010010110001111010110111011110110111101000111101111101110110001000011111001010101110000110110000111010101100011111111110001101100111101010101110000001011110111100011001111011010101010011110010101010000001110010111110001001100001000100000111000100110011011101111001010010011001110011101110111111001011010101100000011111100001111100110100100100110100101001001010110110001110111111010110101111101101111101110000101001111111101000100100101110111011011001001101010001101010110110101010010110010100100101100100110111110100011101111111100100000100111101111000011011000011101100111011000110110101000010101111101100110111--------- +0101100011010110010100101011001100101101100000011011111101000010011111100010100100001011101000001110100011000101001110101011110010101110001011011001010011110010010000101110110101000101001000100100101101011010101101010011001000000011110110111011010110001111001001010010001100110110011111100001001100001100001110110101101110100110110110101100001101110011101011001100001010001110001101100101011100100011001101011011000001100100011100100111101001100000100111111110101101100000101011101101011100111101111100100000000101000100011001110111000000111100010110110011010001011010000110101000100010000001000100101001010010100110011010010101100010111101111100100001010110001100011111010011100000010011100100110100111101110000100111110001011101010101101101010110101010100011110001001011111010010000010111000011110001000000001100110100000101100000111101011111010011101111110101111011000100001001111010001010011101101010010101101110010111001101111000111110000010101111010111010010110110111011111011001001001011011011100111101001100000101000100010110001001100111000111111100000100101001000111010011101010101100101011101000101011000011000001101101001100111011000001111010001111101100000111010000011111000100110111000010000000100110110111110101010101010100110110010101101011101000010010000010110011000111100000100111010110100000000001101010001001110000011011101010001110010010000101111111010110100000011011101001111101110111110011110111101000111111101011110100001011110101110101100101001101000010100101100010111100110000100100101000100111111111001011101111011000100010111110010110111010101110111001010111100001111011100100100000010001111100010101000001000010011111000111110001001101010101011001000101010000001000011110011110100010100110111010110010110100111010010111100001100111111110111110110110100011001100110110011111100001101111101111011011001110110000111010010101101111000010011110010101000110101101100110010010110111101011011100000110100110001011010001010011110010101001111100100001110101111101000111000000110100101001100100001010000110010000101111010000001100001010001111110100101001--------- +1011011101001101010010111001111000100101000000100011111111000110110110111000001000110111110110000000100111011100011110101111001110011001101110001110111011111011000110111000111101100111101101010100101000101011010011101111101111001111010010001000011001000011011100001000011111011011010100111101010010011001011000011010010110011110101011111001110111101101101110101100011100001101100010111101010011110010100101111111010101100010110000100001111010010010111110011110111110010110101010110110111001000100011111011100010111111111101001111010000001011101001001101101001001001100101011110000101101110010000100000110011110111110100010010111110011010011110011010101000101001101011001111101010111111111100101101001111101101100100011000011010101010101100110011110000101001110100101010110101010010011011101001110100001100110101110111101111100011101010011101001110011111001010110000110000100101100110010111000100111100011001101010110110011101010011011100101000010101010101111010110011011110100100111001101001110001101010100000101011010111001101010011110111100001100100101000010110101110000100101011001100010100000111101110001010110010110011001100101100011011001010101011110111100100000110110000101110111101111111110110101011000000110011110110000100100011110001000110001111111001110100011111111110101100010101011110101111100010001100101101110001000001100011100111010000011001100001001011110100110111111111100111100101111010110100011110010110111111001011011001000111110100100010010001100001010010111000110100100010111111010000011110000001011010101000011100011111001111001001100011100000000001110010001100000000101001100000100010001111000000100010001010000000011100110010100000000101001111110100111110110011101010101001011111101000110011110001010000101101011100101010000000101011001111010111101101110110011001101001101111111001011010111000110011110101000100111010001101011110110010110010000110011000111010111101110000100010001010010100001001001111110011001011000011110110010000100011001101010011111100111110100000001111110010110011011011101001101111000100101010011110010111010001000010011000--------- +0000111011101101001111011001011101000011100011100101000011000010110001011100100000010010111000111101011001000000100100011001111000111111001101011010000101111010110100110000001011000111001010011010111010000111101000011100010110111100111010010011001100101000100010101100111110110000011011001000110001111110110000100110100011001100010000001010001101001000111100100101110110101010101001100101001000001101001100001011111110001010101110001010111100000110100001000101101100110011101011010000010010011111001011100010101111111000110011001011011011110101100110100011000110000011001111110111000101111100110111001101111110010001111001001110101101000010001110000110101111110010110100011000000110101101101011101111010101011101000100011100100100010110001110001011010100111011001100011101111010110110100101010101000000101110010111100001100110101000011101111010101101001110000111010110000011011010010010111011111001110000110100111000011100111101000001110111111011111110001001111101000000000010101010100001100011100011100100101110001001011010001000010101101010010011011110101011111100001000000110001100001111110100110011010101010110101110010111111101010000000100010010011111000110000010101111100001010100101111010011111100011000000110010110101111001101011111010101101111101011001001110110111111111011100001011100000000011010100111000110000100011010011101001101010010010101001100100110110001110111000110100010110000110011111101011000110100110101010111110011110100000110010001000011011001111111111101011110001010110001101101111101011001110000000100000110100000101011001001001010111100011010010010100101011101110100101111101010011000110001100000010011011001010101001101001111111001001110001001110011100001101100101100011011100010010110011000110100011101111110101001100011010101101001100101000001011101001100000110100111000000011101110000010100010101111011011011100011010110001100011010101111010111110010101011011101100110001000110101110100101110000110010100110010100100000000011111100001000000011000110000111111100011010000101101100110000101101110100000011111101000001101001011010001101000001--------- +1010010111100110101110111001001010111100110010011011011011111110110001010001001100111110010000111011010101100001101011010010010010111011100111100011010010111111111101011111100000000010110101101000100001100101010011011110111010111000100110000110100111111111111001100010101110110110010101100011100111001000111111000011001011111111001001000001101011100001100011011011111011101001101110010100100011000100001100010100110011000011010100100100010000011010101011111011011110111001110001110111100101101111101001101110001101010100111110000010010001011010111000110010001111110010000000101100001000001001001011001100101100010111110010010010110101001011001001000010100100101110000111000011110101001101101010000011111111000011100011001111110110010111000100111000001100101111100111011111000111111010011011110011111110010111111011100111111110011011001101000111111100111011011000001010110110110100100001100011111101101111000011101011101110001000110000111111010100100010111111000111001000011010001010111011000001110011110111011001010110011100101001000101001001110111001111001010010111100001101111000100001101101000101000100000110011011100000010110100111101000101110100000110000110000001001101000010101111010011011110000011101110000000001100011010001001110111101001010111011001000000010001111011101110001110111010110001110111010001101010110110001011000100110111001110101101110101010010100101011100111101111001010001000010100011110001010100000111100011011111010010010011111101011100010010000100101101110011001110000011111110101101011101100010101011010000111110100101100011110110011111101100100101110110001000011111010111011101001101011000000100110110000001001011101110010000101001101011011110110000000011101011000101010001011011000000100001111010110100101100011111001001100001100101110101000001101111010011110111110011111101010010101111111000010001000000100010000011101011110001101001111101011110010111001110110000011101011111001100001011101100001110011001001101100100000001001001010000001100010101011100000101000100001000000001110010101011010111100011010100111011000010010001111110000011100--------- +0110011100101110000110001000011100111111111110001101100100111101101010001001001100111010000000111100100100001110110100001000101011111000110110110111000001101100110011010111100111001110101100101111111011010110110111010000110011001111011000110011101100100010000001011010011100101010111011000101110010010010110000011111001101101110011100001011000110001000111100100101101010111111001000001010010011100001000010010011100100110011010100000111001001101101000001011100110001010101110101000100001000110100101001010011110011100000011100001000000001001011000010011101000111111100111101111010001001010111111010011000110010110011001110010000101010011001111111000011111101110001011011110011011000001000011001101110111001101000011101001101100001010001111000110111010110001111010000100111011010001100100100100100001111110100100100111111000010010110011110011000000110110100000001110000011100111111010001001101110100100101000000000001111110110011110001100100010000100010001110001001110011111110101101001010110111011111111110001011111110101110000111001001100000110001100110000111110000010101101000010110101001111010111011001111010111000100101011101001011001001110101100010001000000101010100101111001000111101011001111001100010011101110001011101000101110110111101000010011110000010110000100000000001001000110011110100011100111000101010000111110110110011110111101100001010000010001110100111001001100011000011010001011111011000110110001111001111101101001000110000001100000110101011010000011001001011111111000011011011101011101001011111110010010010010000101010010100001101001100001111110001111100100010010010101101101001000111011001100001001011111110001110100011100101100100110011101101111001001000000010101011001001101000100100010101011111000001011111000011100000010001101011111010001010101111111110001000110101000100101111010011110011100101111011111100000111101101010101001001110010011111111110110100111101010011010000111000000011000110001000100110000100101000110101101010101111010000101010010110100011111010100001111001110011001111001100011100101111111001011011110111101111001010010000111010--------- +0000100010111111011000010111100011001011010000000111111010000110101011110101101001110111111101100110100010110110100001000011011011110111111101010101111000000000110000101001000100100011000000000011110100011111000011110000000000101110010011001001110010110000101001011101000011111110010100001010110100110001100001101010101100100100101100111101011101001001110010001111010001000110100001101011011101000010111101111011100010011100101011010010100100110110000010011011111010110100010100111010110110011010111011000010011000111101100101111110101000011001011001101111010101110110111001101111010001001101001101100010100101101001111110110101110101111101001010111010101110010001101000111010011011110111111011001011100011110110100110101101110000001101001111100111101101000000010000010010110101111111011101110101100101011000111001000000100001000010110001111011011011000001101000001110010110001110011100011000111111100110011110101000100000101000001101010001101101101111000000011001100001101000000000010001010101111111011101000101100000110101110111011010100011110010001100101100001000001111000101011000000101110010101111011011011011000111011101001011101110001101111011010110100110000111000011001101110010010101001001110110001111111100101110001010010010111001000100111001100100101001100010101100011011010011110010011000001000111001101100001010010001111011101101011100101111010011001100001110111000111100011011010010110111111011101110000011110111000100101001001010000101001100110011110100001111110110001100010000001001010001011111110101100110011000000101111111110010110111000100000111010000101110000111010011010101101110100111100010111110101001100001010010010111101101001111111001111100111100010111011100010111100111000100101011001100001000101010000100011000001010110100101110101110111101110001101001000100100111001001110011000101111110001011110101111101010000010100100000101000010101101001111001000110011111100100010110101101111000100010100011110011001010000011110101111001011001001010100010010100100010111110100101011110010001000110011101000111001011110000101111011000011111111101011010110--------- +1111110101000011000101001101111101111111000110100010101110011000001100000010110011110110001110000000100101001101110011110110110110101000111000100001011111001100101100011001110101011110100111001110000100011010110011101100100011000101110010010000001101110110101000110001101010000010101011101111110100000011111010010100000101101100010010001001110110100101111111010001111010001110110010111110101010000011011011111100101010111011011110000011111001011100110011101101101000110111000101100001010010100011110011110101100100111101111101011010010100000011111001101000111101100000011001010111000100100110011000110010011101000110000100101111000110001011111001101011111000111111001011000101011011101101110011000110101001100011111001000001010100011000100110001010001100100001000111001001010001010011000101011101110111010111010101000100001111101011111101101111001010110011101110111110010001010101000010001101011010111001111001101111100010001111101001001010100011001010100111101000100111100111011010110111011100011000000010000111011110001000001110101110100011001101001000101111100101000110001010001000010100011100101111011101101110001001001100010101111010010000110111111111110000110010000001010101110101101010010100001110001010100011100100000101110000001010101110111011110101000111000001000101101110101001101000011001100111010100010010001011011011100011011100110110100101111001010101000001011100011001001101101011110101101111001111010101010011111111001101011010001100001110100110111011111111101110111111101000011100111011111110010010010110110000010000111011010011001100000110111001011101110111010010101110100010001001011100111100111101001010111101010010001110011111100001100110111001100110010001000000101110111100100011000110000110010001110100010101010001110010110110011000001100001000001001101000001110100000101101111000111111101100000111010011000010000011111000100001101011101100001110100110010011101001101101111011000010100110011001111011000101100101111110011101111000001111110110010001101111101001001100111000000100011001100001000011010110100111000010100011010000000110101101110110010--------- +1010101011111011111111101010010011011011001001111111001110001101010100010001110000100011110001011101001011000001111101010011111001000111001000101101001110110111001110110000000101000111000001100111010111001100001111100000000000011110111011000111000011000110001010100100111110000010000110000101111000110110110011101111100101110100010101111110000101011110101011010101010010111101010110001100001010111110010011001001111110000001111101101010101001001001100000001101001111100010001010101010001000110101000110110000110100101110001111001101001010011101000111100110100101000100101010100100111100000001100010100001101110100010110100000110110010111100000100110110100110001110111001011010001010011110001101111001001110001101100010011100111111110001000110011010000100100001111001100101011001001011100010110011001001111110100111011011000100101101101110100100010000111000001000100011010111101010010100110010010100110001010110011001000011000001101010110000010000000011111010000101001010110000101101100010011110101011001100000000111000111101011000111010011001101011011011100000101110111010110000001110110100000010111111011000111010100101101011011010101100101111101010011101100010100000101111001100111010100011110110011101111011010101011010010001100110110111000011101101001011011111001001000101001001110101010001111100100101100111001010100000110010010001101111010011101000010100011011101101000000010010101010110001100110101110100110110101110000111100100110100010100000000001111111000001011101010100111100010011010011010010010100101001010001101001110101000100011010100001110101101100111001100000101001000101000101100001011100100001111010110111000101001000111111001110011101100101001110000111001100101000011011010101101101010111011110000101010110111011110111000100010100011001111000011100110001000101011001110011110001110100100101111111011100010101101101101110010010000111110110111101110011110001110101100101010001111001000111011000000100010001000011001011001000010100011001001011001001000100100111100100011000011001110101001010001100001001110101010111111011000010110001100101001010100011011--------- +1001000111011101001111110110110100001000110000011100001100111010000110010110100000011101110011010011101111011010100111011110011111100010000101001001000010110111111100110110011011101110110111101111001001011101010010110111110101001100000011101010011011111111000111111101010011001111100111110100011100101000011010000010111101011101111100111011101000100110111001000010011111100110100100001001011100100111010001010110011111101110111101100100101011000000110000011101110011100000110001000111001101011110101001100111000101010100010001000101111100001111000100000101010100101100000101000110001100000111111001010111111111101001111100001010110010101011000010010101001110000111110011000000111001001011100011010011000100111010001000110111111101011100100100110111100110010001001111000000000011110011011010101001010100111010101000100110011010110100111101111001011110000100101011000010111000001001010011011101010010000001100010011100000111100110011010111111101010111100000011011100101100100010000010111100111001010010110011101101000011001011011001100101110011010010110101001001110001001010010001010011000110001111101010100101010100010101000001001001101100000011110001000101100101000110010011111111011110110000001110100000000011001001100010111011111001001010111010001101001000100001100101101000111011001001011000110101100101110010111001001100111101110010111100011011111011001000111000111101101001010001101101000001011010100110100010100100000101100001010000000011101010110010111101010111101100110001011101001101000101100010001011100101100111101100010110111011001110000011001001010111110010011101110011010011110100111001101001010101111010110110110010111111100101100100101111011100000001110110100001111001001110000101110011011100001100101111111111110111000010011010100010011001110100100110011011000100010011100111001010111001010000010001000111111101110101001101110101001100010001101100110100110111111100000101100010010001100011101011111111110001000011101000110100110100110101001000000101110001111000010000111111010010001001111111000000010010000010101010101110000111100110101100110011011100011--------- +ls208cwds +00001010110011101100110001111010011101111110000000101000101100011011110101001100100001001010010111011001010111101001000111110011000001000010000001101011100111101001110010001010111111100011011011100101001100110101100010110011011001111001010011010101101111100101000010101101100100010011110111001000110101101001010000111010100001110100110000110100100000101101100110110111000110100010000100000101000001101100000101100000010111000001110110010100100001111110101011111100110000110110000110100111011010101001000001100000011011011101111100100011010100111111111010111010100101011111101110010110011100100010110110010100100100110110000111011101010100111110001010101111110001111000010010100010011010111111100111010001111011001100011011011001010001000101100011011000010111000001111110000000101110100100001101111111101010100110010100010001011111000110000110011110011111001101010001101010000000010001000111111101010101000010110010110011100001111101111011001111010000011001110100110101010000100111100010111101111010111111111000011010100110000010001100001010011010010110001111010110111011110110111101000111101111101110110001000011111001010101110000110110000111010101100011111111110001101100111101010101110000001011110111100011001111011010101010011110010101010000001110010111110001001100001000100000111000100110011011101111001010010011001110011101110111111001011010101100000011111100001111100110100100100110100101001001010110110001110111111010110101111101101111101110000101001111111101000100100101110111011011001001101010001101010110110101010010110010100100101100100110111110100011101111111100100000100111101111000011011000011101100111011000110110101000010101111101100110111---------100000000010110000001001101100000001011110101100010011110011010100111001110100010011010010111101101111001111010110001001010010011011011010001110000110111110011010010011100100001011010101010010110110000011001011011011111011000000011011001111001110000111010100110000010010010010100010011000100011101001100001101010101111111000000110111100101001011101011001010001001011011001100011000101010000000100101111100010101100100111010101111111011100100000111000011101010101110010110001000101111111110111100101010011010101000111001111011100111100110011000110110101110010000011111110010101000110110110000110110001111000010101100001000010100000101111010011010100010110000011110101110110101010101011101010001110000001010010101110101000101010101111100110000000011011011101111010001010010101100000000001100001011010100111111110011011111111001101110001110010010101101001000100010011010010001100100001000110000101110101100101110100101110010000111100001001010100111011001000000011101001110000100001110111010000011101101011110101001110111010011001110010000110000101110110000111010101101011000001101111000000100101100111110101101101111011110010010101011001100100010101011110111011011100011010100000100111011101110000011000111011000100011101001000000011011000001110111010001011101111100010100010111100111101100110100101010101010001000001001000011110111010111101101100010011110101110000000110101111011100000000010001111111011111110001000101110000010000110111111111100101011010000100110011011000111011110110100011010110100001011110001011000000000010110011001110111000011101000110110101100010001000100000001101111110000011100111011110110001111001110100000110010010111110010100000011101000101101111010000001000110111101111010101110110001100000101011000111001100101011100110101001110110110100011001000011111110101011011001101100001010010101001111001011011011100010111111101010011010110011011010011011101111000110001011000101001011100110100011100010101110000100000010101010001111101001110101101111011101011110011001101001101011111010011010011010001101110000000001110011001010010001001101011001001100001010001101010101010101110010100101100010101001011011011101000110110111101000101011111000111101111110010100111000100101111001110011000000100000001100011011001101110000111011010011010110110111001100011100111000010100101000001010111000111000111011000011001111110001010110111011110011111111100000101010010110000001111001101010100000010110011001010001011111110000000001111011110111001000101000111011010110101111010110101110101001001010101101011110101111000000110001010011001111101110101100110011100100000100100100010011111110001011001111000100000001000011011010111100010000101011101101100011100110000101000010100010011100011110000000011101000111111110100111110110001000100011000000100000111111100101011111110111010010100010101100000111011000001011110101110011000011011001000100011010100001011100010100001000101111101000010101100001100100000010000101011010001010011011001011000011100010001010111111100010011101111011111111101011110111000000010111011111011101000011101100010011001001001010110110100001110111011100101111110100010001111110100110011100010011101001111111011011001111001110001011111101000111000001101110010000011010011011100101111000001011011110011000000000010110100101110010000010001011001000110110011111001100101101100110011000110011110011101110110010111101100111110110001010110101011110000000100110101111100011000011010000101100100100000010010001000100000011010000011000000111000000010110111011110110000101111100101000101011010011101011011010110110011101110111110101111110000110001110010111011111100000111001010011110101111010000100000100111100100001110000110100000001101101100100100111011010101100011100000010100010101111000100001111111110101110110111111000111000011001000000110110110111000010001110000000110011011010011100111000000111111111100000001110011011111011011101101100000010101110010010011000010011101011111010011111100110111001101110111011010111011110110010100110110100111110110010101101110101000111111111110000001110011101100001110100001011110010111110000000010110110011100100111001101000000111011011100100110011111011010010011000000101111010001010101100010101000010110100001110001100111101001101011110110101101100010011100001111110100100000000011100100101100011010110101100111010000100110001110110100010111110001101110110111011001111100110111110100110111111110001100100011000011001000001110010101100011101101000011100100111111001100001100111111001001111011111011110111100110110100100101001001110011101001000111010111001101010101100001000101111100010000001011101000110110101111101001101100111000101100011101000010101001100111101010010100101101100100100110100100001101101001100111111100100101101110110001010000100001001010111000001100001100100101110000011110110011010101101001001010010001110001010010001111110101011101111111001010110010010110011110101011010110110001110110101111010001111101110101110110011001100101111010010001010110010010111110000111000000111101101011110000111100000010101110100011010000111001110101010111101100110001010001101101001111101111001010010111101011011001010011110000110101010000001110100000011001011000011011011010001110110111000111010111101100010001000001100100000001010101110111011111001011001101100001111011101110101110010111100101011101000100011000111010001011111010101000100110101110100100111101011101100000011110010011111000000110101111010111100110000100100010101011011101000100010011000100001011001000001111111101100111010101101110111001111010010011111111000000000010100100100010110010101111010101010111100001000011111000110111111111101100010100110011110000001000111000001011111000101110100101000110101011011001011110100010001110100000101011000001001000011001111011110110000010111011100101001001111101101101101001010101011010101110010100101010110111110010011010011100101001010110001010110111111110011111100001001110111110100111110111000111111111100011001010110011111000101010001101010110110110100100101111111101111001001111010011111001100001010010101101111100111111010100101111001101001001110111011111110110010100001011000001101010101100111011101111000100111011101111100101011101110011000101111000011111010101001001110111001110011101011010100100100000010011011111110000100100100100101000001010100101110101000010010101111001110101001110100010110000000100110011110100101110101001111100100110001110100111010000010101010100000010000111011000010110010010010101110101110001001100100110101010111011111110011010101101010111110100110000111110001010010100001000011000110010000100010111001100101111101111010111011110110001000110010011001001101001111000001110110110111000011100111000100001110011001000000101100111101001000001000011100000011011111110010000110111000001100010001010110110011001011101010101001001110010010001100111101000001101001000000000110100001111010100111100110110101110111111100101101001001111100011000101001001010010111111111101011111110111001001011111010100000110100010111010100011000010010101100110011010110010011000101110101000000110111100011100100000011110000000100101001100111110100000111100010000000100100011000100000011111000001011011101001000011011000100111000100010011000010011101000001111101100111101100101001011110011010000001111000001100100111001111100000000101010000010111010111010110010001111000010011110100111100110001100110110110101011100001010001100000001111110001110001110010110100000011100111010111101101000101101100110001001111011100010010100110001001000010000111011111100010100011110111001011010000010101010000100100110011001110000111101011010001100000000101111110111000111100001011111001011010110111111111011110001001110101100000110000010011110101011000000011111101010001101101111000011101011100101110111101011000100101110010100101111011111001010011111000100000001110111001101011010011000101001100111011111010000011111100111110101010110101101101011101111100001001000100100111100110101010010100001000100111110111000011101111100000011010001101001000010000101011101101001010111111011000101010111010001101000010011110011001110100000010100111101100011110100110001001101010111010110010101000000101000110010010111111110110001111010001000110100101011001111001000100110010110100011000100010110011100011001010011101110111101111110110001100110001111011000000011110110100100010010000100100110111110011101000000000001100011000101110011001111010000111001111000001100001111101001110101010001111000101100111101111010011101100011001001100011000011111011101010110100100100010111100000000110010110010000101110001110100011100011111101100100000100110100100100010001111010110011000101000000010101000010110101111010011000100100100010010110001111001100001010100011011010001110110001101000010110111001111000101100100011111001110111000101110110011011110110001000100010010001010111111001111100100101011010000 +01100100011100100111101001100000100111111110101101100000101011101101011100111101111100100000000101000100011001110111000000111100010110110011010001011010000110101000100010000001000100101001010010100110011010010101100010111101111100100001010110001100011111010011100000010011100100110100111101110000100111110001011101010101101101010110101010100011110001001011111010010000010111000011110001000000001100110100000101100000111101011111010011101111110101111011000100001001111010001010011101101010010101101110010111001101111000111110000010101111010111010010110110111011111011001001001011011011100111101001100000101000100010110001001100111000111111100000100101001000111010011101010101100101011101000101011000011000001101101001100111011000001111010001111101100000111010000011111000100110111000010000000100110110111110101010101010100110110010101101011101000010010000010110011000111100000100111010110100000000001101010001001110000011011101010001110010010000101111111010110100000011011101001111101110111110011110111101000111111101011110100001011110101110101100101001101000010100101100010111100110000100100101000100111111111001011101111011000100010111110010110111010101110111001010111100001111011100100100000010001111100010101000001000010011111000111110001001101010101011001000101010000001000011110011110100010100110111010110010110100111010010111100001100111111110111110110110100011001100110110011111100001101111101111011011001110110000111010010101101111000010011110010101000110101101100110010010110111101011011100000110100110001011010001010011110010101001111100100001110101111101000111000000110100101001100100001010000110010000101111010000001100001010001111110100101001---------110101011101010001111001000011001000100011101000111001110001111101100000100110001111011111110010000001100000101000001110001111010001001001010000010010110011000100011101010111010100101001101010010011110000110001110111101011001100101101010110001101001111000110011000100110100111000000111001101001110011101001011000000011111011000101110101010001111001010110101111100101011001011110011110101011110110001100101101000011000101101100011011010011110110100111100101101000110001010011010111111110000111101110000011100101111100110011110100010011100010001011001001100101011010100101011100011000100001110000000110111010001011001010101111110111101111000111111111110100010101001100000000111011111010001011010111101010101110011001000010000011010101001100010110011101001011111101011100111010010110000011010001110011110111111001000011011010110001001111111110111111101001100001101101101000110101110000000100000010111010010001101010100110011100100101001111001001010110010110110111111000000110101110110011101011011100110001011111110100000111011100001000100001000101101101000011101000100000101100010110110101011001111010110011010011000111001011100100111111110100011110111010110000000101001001110000111010110110001001010000100001011000011001110111000001100101011110100100001111100011010011110011110111111010110111100101110100011011011110010010101001111101011011010111001001101010100110101001101110000001001011110011110101010011011001100110110010000110110100100000111101001010001111000010110100000011111111100011000011010110100000001111001101111110100110101110100011001010000111001011100010110000101111000110010101101110111001000011101110111111110101100111011100010010000001000011000000100110110010011000010101000011000110011010001010001000011100011111110100110100010111010011000111001000111100000101010110011011100001110111110010100111101010000011110101001000010000110111011100101010111010100010010001100110001011010100010100001111000010110110011010101001100011110000000100100110011100101001110100000011010100110000110111010100111101100100110011101001000101110100011001011100011100011000011001011100110011111110001010011011011101001110101011011101001011001011101011100010010000100101001101010011001000001001100011010001001100101100000110100101010111111111000110011001001101110000111101001011011101101110100000101100001000001010100000000011010010100100011011101111100000000110011011100101001010110001111101010101100110001111111110111011010100010110110111010110111010111001111011010100010100010101011101110100001110100100101111001011101111010100010011100100000011110011011010110010001011000001010010101100111000100110001011011000000010111110011010011001011001001000100110100111101100011110011111100001010101110000100110001101111101111111101001101001110011001000101111111011000010011011011011101111111011100000011110101111100010010100000000000000111110011100101110101111001111000110011010110000010100010011000101000000111010100110110010011001110011010000100010000111110111101000100100010101011010011100110110111011110001101111100010100110000111111010111101001111011011110111101010111010110110000000100011101011000110001010111101011000101000001111111100100100011100011110101000100111011111101101011000000001110011111000011011010001001111101011000100011100101011101110010010100010011100110010111111001011100011111011000111101110010000101010011111100100110111010101110110110110111101110011110100001011100100100001101010011010101110110000100101110010111011111011001001111001010011001111000001001001011101000011000011011100100111000110101111010000110001001110000101101001010011100000110000110110110011100001101000011100101001111010001001110110001110010100111101110111011100111101001110100101010100001011010101010100001110101100101001010111110011101110000110010110000110101101111000111110001100000101110001011011110001110101100110001010010100111100001101011000110011111100000110100001101010010111101110101110100100001000001000001001111010011000001010000000100100010011000110011111100110010011011011100001100011001000001100101111111110010101011010011000000111000010101111001000000100000101000110011111101000100000100111111001011010101100011110100010001111111101000100011001010100001110110100100001011010010001000010000100110111010001010110100010100011100111111100001011101010101001001110011000001110101111111111000111010001100010100111101001010000010111010101000101000111010000001010110110110010110000001010101101110001000001001101100110000111100000110000011010000011111101011001110000000010000100101001000011010001010011111100010001001011100110010010110001001111011111011000100011111100011101011111001000010111010100000110011101111010001001110011001111011001111000001100011010010101000011101000010101000010101110011101010100100101100001101100110010011001111011011111000111011010111000100010000100010101010000110110011100010000001110001100101010111110010111110000101111000101011000111110110010100000101101001111101010001010000101000011100001000111101010101001011100001101010110111110001011111101101101000100011101111001110100110011000101110001001011001011100111110000011011010100011000010011011111011011110100110011100110010100010110101110101001010000011110001111010101101011011101001100001111110010001100101001011001001001111100110111110000011000111111100100110010011100110100011000010111011000100111110110011110100111010100000110101110011110100111100001010011001010100001011001100101010010100000010111001100010110010111001101001110111000110000101001101111101010101011001000011100101101111100001001100111110100100111011010000010110110000111100010000111011000111010001110011101111101100110111011111101001001010010011110011010001011011000011000000101110000100001100010001100110011111101100010010100101011100111010111101001001011011110101110011000010001001001010000010000001010101101111110110010110000111101001101001011110100101101101000110111000010001011011010001011001100100101110101110100000011010000011100111001111011110110111010011001100011111000010110010111110001101111010110000000110010000101101011111011010100111100101010011111001001010001110000010011011100110100000010000001101101111110000100010101110100010001010000111010100001011110110110111101110011001011101010100100110101001101000110000010010101011101100110101000001001110000000111010101011000110001000101111000110101111110000011101101111100111111011110111000100110000111100100000101110110011101110110010000101001000011001011100101100001001110010100111011110111011110001110100001000011101001101100011101001111000111100001011011101101000110000001000011010110011110111001011011110100101010010011101101111101110111000011110101010110000101111101110111110011101011011110111110111100100010111011011100100000100101100000110101000101010110011010110001000101011000011000011001100100110010110100010101011111000001111110001001010101111110100010110111010010000001000000111111111000000010111010010011111011111010101011110100111011111101011000011000000001111100010111110011110100001100101110111011101010010110000110111011011100110101010100101001111111101001111111110000010111010101100100110100111111000011011001101011000110110001001000101110010001100110101011100100001110110000101010100100000011100111001111100100111001111011110101100001100101100100100101111001010100101110010001111011010111000110110111011111110000011001100000100111110011110011100001011011101110110010011011011110001111100011100111110110001100110000001101100100011110100011110010001111010011010101100110111011100011011001111110001111011110111011011101001100001101100001101010110101110011111111011011001101000011000000010110010100010011001111011000000111001011001000000100010100001001001001001011101110111010001100101100001110111000000000110010011100010011110101010010011110100000010100011010011010101111000000100110011011011011100101110001111001010001010010110110000111100100001100001001011001010011001011100111011111100110101110010011100110111011011010100010111001000110111001100011001000110001011011110101010111001011110001100000010101101001011110101101000100000000101100110111110111100100010000110011100010000000111011110111111010010011000001101100100001110111001000011101001101101111100001011001010111011111010000001000001111010110001100000001101101100000011110111010111010011010011101101111001110000101011010010111100101101010001010011111111011010000010001011100011011001001110011111100110010011001010101001100011000010000111110111101010100001000111100001100101000011110110010100001101111111111111001000100111110100101000010101001100001101011101011111000011001001101010111000000110101100111010011111100111010110010001000011011110010110110101000110011001000111101001100111010101110110010110011011000001110100101110000000100100000111101011001011110000101000001101101110110100010010111000110000110100101101100001110001010101011000100111011010000001110 +01100010110000100001111010010010111110011110111110010110101010110110111001000100011111011100010111111111101001111010000001011101001001101101001001001100101011110000101101110010000100000110011110111110100010010111110011010011110011010101000101001101011001111101010111111111100101101001111101101100100011000011010101010101100110011110000101001110100101010110101010010011011101001110100001100110101110111101111100011101010011101001110011111001010110000110000100101100110010111000100111100011001101010110110011101010011011100101000010101010101111010110011011110100100111001101001110001101010100000101011010111001101010011110111100001100100101000010110101110000100101011001100010100000111101110001010110010110011001100101100011011001010101011110111100100000110110000101110111101111111110110101011000000110011110110000100100011110001000110001111111001110100011111111110101100010101011110101111100010001100101101110001000001100011100111010000011001100001001011110100110111111111100111100101111010110100011110010110111111001011011001000111110100100010010001100001010010111000110100100010111111010000011110000001011010101000011100011111001111001001100011100000000001110010001100000000101001100000100010001111000000100010001010000000011100110010100000000101001111110100111110110011101010101001011111101000110011110001010000101101011100101010000000101011001111010111101101110110011001101001101111111001011010111000110011110101000100111010001101011110110010110010000110011000111010111101110000100010001010010100001001001111110011001011000011110110010000100011001101010011111100111110100000001111110010110011011011101001101111000100101010011110010111010001000010011000---------000011111110101010001011011000011010010111011111101001110001111010100000000000010000100101110001101110011111010101111011111010101100111010101101010000111011100011000110001011101001001110010001101101011100111010000010111100010010101111110111011111110111001101011010101101101110110100111111001000010001111110110010100001111101101101000011111111111000000111010011011111110101010110000011010110111001111111000111001000101000101110010011000010111001100110011011001010101010111101100101100100011101000000101000001100111101010000010100100010000101101111000101100001111101111001000110000100111100000000010111100100000001101100101010110101110111000011001100000001101111001110010010100100100010100011000111101111100110111101010101001010111000101000011110000010101000101001101010111111011001001000100110010101111111110110101001011110100111100100111101101100111101110101100010010000001000111011101110100000010101101100100010010101000110100011100101101111011100101111100101101011010011101010100010001010110110111011100001111000111101110101111111101010011010111111100101100110110110101011010111110000101110101100111001011111001111001001111100011010111100101010110001011011111101101000001110101111001110110100010011000010101010000001001000011101010001101011011011110111000101000000101010101011000010010001001101101111011110011011010010101110100110110010111111111101011101001101100101010111100110111001111110110100000010010111010010100100010110100000010100110010010011011101100000100000110111010110100010000111100010010010111011000110000001010100101110111110011101100001100100100011110100110000111110000100110111101101100100110001000011110010100011001000101011010110100100001001110111010000001100101110110011001001110011100011100011010111111000011100011001111100010010100001001110010100100000001000010110110000100001000010110110110100011101001001110000011011001111011010100000010011010100111000001110001101101101101010010010111111010110000000111111101111001100111010110010001000100011101001101110110011010010000001100000010100011100011110111101101110111100011110100110000011011101001110001010111010000100010011011001011110101111001110010011111100100100111001101110011111110101000110010000011001111100100111110100001100100000001010000010110101000100000111101100001111111100101001100010000010001001110111010010110101001000010110001011010100000110010011000010000000111001010010010101010010101101110100110010010100101110011011101110000011000100001000110011100110010110000010000010011011001000011110100010011000000100000100111110100010000000010001100101111011011000111000111010011001111010100010001111001111111110111000101110111100100000000001001010011101000111110110011100000011111010111001110000001001001111011011100101110110101101011010111100010010000111000100000110011101110011001010010110001101110100110001110000010011110011110001011011010001100000000111100000111100100100110111011111000110110000001110111011011001111100001011011101110001110100100001001011111111000011101111110110111101000001101101001101110010000101001101111100011100111111000101001111111000000100100111001001011010000000101110101010100110110110000001100011000000001000001011111010010100101110100111111101100110011100000000010101000000000000101011110111001101011100100111101011111010011001000010101110010111110101001110000001101110100001110101010110010011100001100110101001000001100000110101001010110001110110100111010011100010010010110000100100101011011000000011101100000111111100110110101011000110010001000101110110101111100110100000011001101101011110000101110100011010100000111000011110010000100101001000011011111110001011100011101100101000101010101100010000100011111111100110101100110001001011100110001110101010000001110100000010010110000101001101001100011100110111101100100011011111110001110100101001111001001001110011011000110000000101110100001001001010111100011011000101011110001000101011100110010110001011110110110001111100100010110010101011110101001000110101010111110010010111111100011000111010010110100010000011110111010010110111000111110111100100111110110100111000111110111011001011000101101010101010111011100001101010100001110101001110101110101001000111010100000001101011011111011000000110011001110001101100111101010011011111010010100000110111100101010101101001000101001000011111111100010111000111010111110110010100110001100001111101101101100000000111001101010101111111011000101000001001000100111111110101000000101000100001111010100000010111101100110100010110010100001101010100000100111010100011010010000010010011001110101111101001110110110011010000011001101111101101111100001000101011000000101000110011010000100010011100100011110111110000010110111000001100010110001001110110111111000011001111000101111110001011100010001000100010100000000001010110111101110101101101011110100000001101000111010100001011101000100010010010001101100001011001010001011110110000011100011011010011000001000000001001101100011100011111111100111010110000001111110111100100111111110110011111101001111000011100001111101000111111001111100011000111110001100010010011010001110011111100110001000001011100001010101100110100000011101100010101011110000010001111100100011001000101000010001010000010000010110101010110100001001001110010100000100111110111110111101101101001000100111101111110101101101111111001110001100000011011110110001001010111101100000111001001100001111101100010011000100101111011011000111000101111000001010110011010100110000010001110001010011111010100011010100011011111010101001011101110111000100111101000100011100000001110011000110001011100101001010010001000111101111100111011101011110101110010111110110010011001101111011111010011101111010110101111110100111110011111000101100100000010111110001010110101110011010001001101100010000001010100100000000001100010111111111011110111100011110011000011101011111001001111011010101000111001110101100100001101001010011010110101000010011100001001000101000101011100000101111110010011011100110110001011011001100011000010110100110000111100011100001101101000100010010100000100011011101111001011110000011100010111111100101011000100101000110010111110100110010011110000010010000010000101010010010000011110011000110000010110101110001011110011100011101101100101000011011011110010101101101100000010101111111010101000011011000100000111101001010100000011000111001111000010100000100001101100011111011000101111000011000101000111010011110100111010000110111000010111110000101111110100100110111111101001011110010101000011100000101000011100111110100010001001001110000110101001000001011111011010001100111101010110000011110011111011100010110010001011001111010111010001101001110101110110111010001101001101111100110101011100011101101011010101011100111000010100101100111000000000000111110010100110011000110000101000011101111001111001110111011100100011101010001100100100001011011111101101100001110100111110101010001100110100011000010000100000111100000010101110101000100011100011011010110000011110111001100100011001110000000111100111010011001100001000000111000111111111111010010010110101011011011001101001111011111111001011111110011000010000011110111100001000111010001110110111101010101010100101110111100101001000010010111100000100000000001010000001011011100000010110001010111101111000101100111000001101111101001000110001101100101000011010010001001001100100101111000001000010111100101101100100001101001010001100000110001100111001000101110100000110100100000100011101010111011001110100100110001011111100100010001010010001011011001001111110000100111010111100000110000001001110111010111100110100111000001110110010101000001111101010011000111110110100110001011010001001000111000101100001011110011001101010011110011101111111111110011011000001101100011111101010011110000011001010001100100101101111110111111011100100001001000000111010100000110000010010000110110001010001011100100000011001010101110010001011000100011001111110100101011011001010100011011110100010110111100100100011000000101011101001101001100011000010111010001100001110111011011100111110100000001100110101000001000110000010001010100110100101111001001111001000110001100000000101110010010010010001110000101101111011101110001010001100000110000110111000010000010000010110000111100100100000110111000001010111001101001101001111100110000011110111001011011010010110111010111111000001110000011110010110001000100000111001110010100100101001101000011011000010111010010100000001001110011001011110010010000010001100011011011110100001001011011000101011000111001010001101001111101100101111001110101011001111011000110011001111111110100011011000010111101110010101110110011101110010010110110001010101011111100011110001111100001111101101100100111000110110111110100001101111011000111101111000100010100000010111010001111011100110110010000111101000100001000001011111111110100100100101011000011010100110100000111111011010000110111000110011010011110000 +10001010101110001010111100000110100001000101101100110011101011010000010010011111001011100010101111111000110011001011011011110101100110100011000110000011001111110111000101111100110111001101111110010001111001001110101101000010001110000110101111110010110100011000000110101101101011101111010101011101000100011100100100010110001110001011010100111011001100011101111010110110100101010101000000101110010111100001100110101000011101111010101101001110000111010110000011011010010010111011111001110000110100111000011100111101000001110111111011111110001001111101000000000010101010100001100011100011100100101110001001011010001000010101101010010011011110101011111100001000000110001100001111110100110011010101010110101110010111111101010000000100010010011111000110000010101111100001010100101111010011111100011000000110010110101111001101011111010101101111101011001001110110111111111011100001011100000000011010100111000110000100011010011101001101010010010101001100100110110001110111000110100010110000110011111101011000110100110101010111110011110100000110010001000011011001111111111101011110001010110001101101111101011001110000000100000110100000101011001001001010111100011010010010100101011101110100101111101010011000110001100000010011011001010101001101001111111001001110001001110011100001101100101100011011100010010110011000110100011101111110101001100011010101101001100101000001011101001100000110100111000000011101110000010100010101111011011011100011010110001100011010101111010111110010101011011101100110001000110101110100101110000110010100110010100100000000011111100001000000011000110000111111100011010000101101100110000101101110100000011111101000001101001011010001101000001---------001000000111010100100101111001010001111011001110000110001001101110101100010101101110001001000010010111100101011001110011101010011111001110100111010010011000011010101111011101110010001011101100100100000001101000010110100010000110010100100000011101110101111000000101101101011010100001110010000000101111110101100000001010100110000001110101111000111111001111100110100101111111111000010110111011100100111101010101011000100100011010110100101101111111000000001110101101111101001001000000101000010101100011110110101101010001100100001001101100101001001111100101100101000000010000110110001110111110000110010011000001111000101100010000111100010001000001111011010110011001010010000001011000001001101010101111101110101011011010001111100010001110001100110000001101011101000001010001110100001010101110100010111000000111100100010000000111011101111000110101101000110010110000000100111011111110101110111000000011000011101101110101000110111101100101111001000111010011010100000100000100001010110011001001010100010101111110110010110010110100111010010010101101110001010011100111010011101010011000011100000011001001110011110001110110101101110010010011110111011011101010100101010100101010110010001010001000101100001001011010111000001110111010101111010101101010000011011111111101000100101100111110100111000010111110011101111101001011111011010000001101011011010110000000010110001001101110011101101001001001110111010001110100100101000111000101111010001010011101010101011011011111111000101111101111001110010010011000100100100010110000001101010100010100101001100110101010111001000000101000110010000110110010110010100001101110100000110010000010010001110101111000010110000111101111000111100100101001000000001011111111110100110000110101000101110000000010110101101010110100111110110010110001100001010011000001101000000101101100111011101101110001000100101111100111110010101110011001101010001010010000011011000101100100011110110110101010011111101100111100111011000101001011001001101001100011000000111100000100011000010110100100001110100011101010100011111111011001011000000000010011100111010111010010001010110111011000111111100111101101111100011011000101011001110000111101111010000110100110101010100010101100101100000001111101101011010101010111111110011110001101101000000001101011100001111011000110111100010100111111011010100110110001001001100010101110001110110111111010100101011000111101100011100000000101100011011001001010111010000111101000001000101110101000101000001101011111101000000101000000111111100010011010110101100111101110010011000110010100011101001101001101111000001001010001101011110011100000110100111001000111010010011100000010000000011100011110011011111100000000100011100001010111010100111000011010000101100111111001110101111101101000100011011100111100010100010001011111111010000001100000001111010010111011010101001000111100010011000001000000111101110100000100111111001000110000100011100001110100011010110100101001010000011111110011110111010010100001011011000100100001111010101010001011010100000001001101100111101101011010110111000110111100000100011110111011101100110100010101000000011101111110000001011101001101100000010010100100110000000010110111000110100011101001111000110100101111011010100000000110110100100111011101101100111011100100010010111111000011110100111111111110110001100001000100100110111101011000011000100001101011111010001011100111110111110000111011011111100100010001001010011001100001111000111010111011011011000000101001011001101110100101111101100111100010111011101001001100010010111001101110001001011100000010101010100011001101001110110110011011111001011101010000011110011001011100111000010011011010000001010101100000001001000000100011000010001000101010011111111001101110101010000011010100110110011110000101000111110101110011011010110111000011010111000010110010010111001010001011101000100001011010110111011001111101010101000101011101011011100100010110001100001000111100100111011000111111110000011100110101101101011100011000011010111100010110000001001110001010100111111010011100010110000110100101101101000100110100100001110101100001011110101010111100100100000000000111110010101100100101011101101000011001101110100101000111111011100111101101101100111110010101101101011000110011111111110011100110011111010010010100001111001100111011001011100011000110100010011111100001110111011000111000101100101000000101111001010011000010001000100011101100000100011100110010101101000010010001000000100100110000000000011111110011000101101111101110000111100111101011111001010000100011100110001000001100001011100001101011000001010100110111110111000000111000100101001001110010000001010110100000110100101010011000000010110111011000111100011110001001001110010101000111001101101010111000100100001001111111010000110010000000001000100111110011100110011001100010111011101011110100100000011001110111101100011001011111110001101101110100001001111111111111110011000010011100011001011101011111011101001000110101110101011001111100100110101100101001101010010000010101110100100001010010111100010110000101110101111001000011000011011111111111100111111011001111110100001111001101011111110110000110011001011010011010011110101010000010011000100101001101110000100100001001000101110000100001100011001111011111110100111011100001010100110000101011000010101101101110111001000001001101010011101100100000010010110001011100101101101101111011111011101100100011001010101101100100110101111101011100110100011110111000001001001001100101011110000100000110001110111110000010111111011000101011101001000111111000010001101000010001101110111010010011101001111000110000000011001111001000110000011110100000111011000100111110001000000100110111111000100110010110110000110100100111001011100000011110010011011100001111010011000011110011001011111101110110011010000011011011111011011101111110001010111110000010100010111101010111101101110011011000011110000111110001011111001100111011110101010100110111101100010011101000101110001011010101111111101011110111000110000011001110110001101010110000110100000100011110110111011010110000100110001111000001101011000101001111011001010001000111100010100000011101001100101010100000001101110001010111110110111000000010011100010100111011101011100100001100001011001001111011101101101011010110010101101111011011101110100010110100001110111010101011111000100101111000000101010001001001101001010111011000110011100111001000010100101011110111000001001011101001100110000101001011110000100101100011110001000111111100110001010010011111001101000111010011100010111010101000110000100011111111000001110001100001101111101100010001100101100111011000011001100111101000101011110001111010110100000000101001011000111111000001011001010101111111110100001011101100011101111011100101110001000101111010101000011100011001000110100000010001101010001111100100101000000111110111010110101000010110111110010001000001110010110101010111110111101101000010000011011011010111100111001100110010111000111110101101110010111010111000101101110111001011100010101111000001110111111110110100111110100001010100001010011011110010010101100010110111011111110101110001110111101100101010011010010100100010010111100010010001001100110110100010001000111011100100101100101110110101000001110011011101000111111010001101011111100100110011000001001101101101101101101101001010001111110101010101010000100010101110010110110100110111011000110000010110001110000110100011011110100101100111111110010011000111111010110011011100010100101110110101101001110110000101000111110001001010100111100110110011011111101000111001111110110000011111001000001001101001101010101111001100000000010111101101110101110001001110011001001110111101110010110001010010110001100101100011111000011101010011100001111011101010100010100011010001110011000111100000001111000101000100000110111100111010100011010011111010011110001110000101100110001011111110000101100100111110000001011110010101101000010001100011110110010011000000000011100111110000110101100110001101101010101010010111010101100111011101010110111110011101010001010100011100110001001101010010111011101010101110111101000110111010001001100001110110101101100101111110001100110001011011101010010010100011011110001000100001001111000001011110000100101111010000000101001110100010111001000110101100010110110101110010010011001010100111001010000011010001011010010110001111101100111111011110011101000100111001101011000010001011110010101001101010001000001110110101001000010101000001010001111001010100100001010110010000111100001110110011100010010101100101111111010001110100111110110001111001111110111001101111100101010111110010011101010010001110001110000001000111011111100001100110111111111110101001111011100010100010010111100111111010100110000001111110001110011111001100010111011000010011001111011011000010111111110110011001101011110100010000101100101000110001111000011000110001101010100010011111101100011010110011110010010010 +11000011010100100100010000011010101011111011011110111001110001110111100101101111101001101110001101010100111110000010010001011010111000110010001111110010000000101100001000001001001011001100101100010111110010010010110101001011001001000010100100101110000111000011110101001101101010000011111111000011100011001111110110010111000100111000001100101111100111011111000111111010011011110011111110010111111011100111111110011011001101000111111100111011011000001010110110110100100001100011111101101111000011101011101110001000110000111111010100100010111111000111001000011010001010111011000001110011110111011001010110011100101001000101001001110111001111001010010111100001101111000100001101101000101000100000110011011100000010110100111101000101110100000110000110000001001101000010101111010011011110000011101110000000001100011010001001110111101001010111011001000000010001111011101110001110111010110001110111010001101010110110001011000100110111001110101101110101010010100101011100111101111001010001000010100011110001010100000111100011011111010010010011111101011100010010000100101101110011001110000011111110101101011101100010101011010000111110100101100011110110011111101100100101110110001000011111010111011101001101011000000100110110000001001011101110010000101001101011011110110000000011101011000101010001011011000000100001111010110100101100011111001001100001100101110101000001101111010011110111110011111101010010101111111000010001000000100010000011101011110001101001111101011110010111001110110000011101011111001100001011101100001110011001001101100100000001001001010000001100010101011100000101000100001000000001110010101011010111100011010100111011000010010001111110000011100---------111110010011010000110110010111000101010101100111010101010001010110101011011111101100101100010101111101100111011000110110011101100101100100001010111011101011010101001100110100001110101000000010111011100001110001111011011111001111010011011000111101101010110110000110100100010100100101101010101000111000110001001110101011100110110001110011100000001101110000011110110000010101101100000100111001000101000000001010100010011011101101000101101101110010111110011000111011110110110100010101010000000110011100001110001111110100001010110101011001001100111100010100111001011101111100100100111001010011010000000001101111010001100001001111000001111011111000010011100011011001100101000110100011011010010110111100100111111101101011101000111000100001010010111101010111000010101011011010101000101001101110110000000000101111010110101110111101000111000000000000100010000001001010011010000111000110101111001100111110011100000010001001111000110000101010111110111011000110100011011100111000101110101110101100001011000010000111110001001001100011101000110101111011111011100101111000101111001111101000011000011110010010111111100001000011110111101111011110110010010100000101110011000110111011100010001000011001101000000101100000000010010011010011000001010011101001010101110011110110110001000001010100110011111111110000011111101101111010010110010101000000001001110100001101010001110111111011011001001100001101011000010010001001010000101000011011010100010100101110101111011010100010000000010000111000110111011001010100110110000000101101011011000111110101111100000100001111010010011101101000010100011001100111000100101110100100110110010000011101000000100011001000111111001011000111010101011010001111011001011011111111011101010010101101010010111111111100001101111000110010111100111011110111110101001111011101111101100011000101000011000010110010101001111110100001010101110110101010111101001100101001101001111000101101011010101011101011111011001011110001011100111000110110111100110111011111011000010101100100001111011101010101010100111111111010100101001101000111100100100001101110000100010100110010001010111110001101000100001010011011011011101110110101101110001001101111000001101010001110110000101010010111111111001001100111000110110001101100001101000101001110011100000000010111111010000010101111110001001101000110101100000010011110100001001110001000100101101000011110001011001101001100011111101101001110111100000101001100010100001000010000100101000001111011101111000111110101101000001110000111001100111101111110111001001001011110001111000011101011001001100101011010110001001010100111010110111001100110111001011011100000000011001000001111100010110000110011100000000001000111110101000001101101101101011101010011010111111100001101010110111001111000111011011100011001011100111000111010100011011001100010011100001111000101011000001011100101000111110100100100111101111110101000101110100111111001001011000100111111001101011111011010010000011100101101001100001011100110011010101011100110010001010110100010011010100111001000110000111010101110010111010110100000011011110011100000000110001001110100001110111001110010110010001011111110100100101101111010001101010000110010000100100111011011011010011111000010010101010010100111111101100000101010110101011101011100110111001000100101010011110010000001111000110011101101010111100111010000000000100011101100110110010000010000101011000000101001000001001010011100000111100100000100010001000011000110000010001000110110011000111000100111110001111001100011001000000000111010101011111000101001110001000011100001100001000111100001110001010110101101110101001001111010110101001101101000101011001001000001110111010001110101100001100000010000110111100111011101010010101101000111110001111100000110101000110110111111001101000001110001100000011110001001101000111010111100001100001011000011111011011010101001101110010110101000111010100000100100111100110111010111100111000100111000100111000101111010100110100111000011010101011111001100101101011110000101001110110001001101111011101111011000000111010000110100101110101100001110100100010010010011000100111101100110100101101001101001001110010101110101111100010111111000110111000101010100000110011011001001011001011010010100110111111100100010101110111011000110000010001010111101100010111110101011111011000101001001011000101001011110000110101101010011011100111110110110000110110001100010111000110111001101010110110110010111000110110111111111100000110001110110111011000010100111000001000101001111001100001111001001001011111101001111110000001010000100101011101010101010011111010110001101010100111000000101001011111010010000011111110110010100100100110110001001111111110100011001100010110100010010010110110100101010100110101100101011001010000011001110110010111101100110000000010001011111100001101001011000011011010001001000011110001100000001110100011001110100110000010100001111110111110100010111100101100110100011101100010001111101111001101000100001101011000111000101101111100001100000101101100100111100011101110101100100010101001110000110000000000110001000101111000000001110101001111100110000010000010111011011101111100111110110001111111010111011101000110101100110000100000110101110000011000010100101000011111000101100100110101100001010110110100010110011100000010111000010100111010010001000010110000000100101111001011101000101101000001110110111110101010000100100010001011111100101010010111011101101110100001000101001001110100011011010011101101000011110010100010000000010011100010110000001101110010011010000110000101100101111000100001010110111101110011000010010000000001011011000001011001111000001000110110011101111100101000000010000100101101001110000011110000001111110100110000011010010001000101100011111100000111010000010001110101011010010111110110110110110101001000111111001111101110011011101110111110011000101110101001101011100011011000110100110011100000101111111000001010010110111011110010000111101011000010100011011111001000101101100100100100101010110010111110100100011110101011011111110001111110101100011001000010100001011100011111001011001001100000010111000000000110110001011100010001101011000110110001101111010010110101100000111110100000010011101101010000001011010111100101000110101000111011011110011000101101111000001101011110110001000110001001100110100111010011100101011100001111111111010010000101011111101101101001111100000011000101011110100000101110010100011101010000111011001000100100100010001111100110001010001010001011001011100100110110110010100110100010010110001001101010011111100101110011001000111000110010000100111101011101101011111111011101011111000011011111110111000101001011110010101001111011111000110010100001010001101100010000001110110000101010010110100000001101110011011100010101110000100011110111111001000100011010111010101100001101110111011110011000100010100111111110001101101010001010101101110001011010100010000000011110011000101110111101010111000111010101101101100101011001011110001011001000111000110001111011010010000100000001111011110111011000011100111001011100011011100100100010111111100000000001110101011100000001010010111101110111111101111111110010100011100001100100011111010011110101000001000101111001101100000101001101000011100110110111000001001100011101101101101100111110011000111001000011001011110110110101111111010101110001100100101000110011011000100100010101100000000010011110101011011101011011001111110110001010100101001011100101110101010010000110000111011000011001000110011110001111100100111110111111110101000101000000010010111011010010100011010110101010101100111100111000110100001001111110101001110100111101110110100110110100111110101000011001101100011110001111110111111010111100111001111010101011110101101011101111110011100011101010101010000111110000001101011100100001000010001000010000100001101001000100001001001011111010111000010101000101111011100110011100011000000011001110111111001000001111011011110100001110110111000101011011010000010001010011010010111101101000111111010011011011111100110010001101010101101101010110001110001010000001101111001000111110110100101001001010010101000100110011001010111001000111101001111000100100111101110110010011000110100001111010000011001101110101101001111011000011101100000000101010100101100010100010011101111000110100111110110101101111000001000001111101100100010101001011001001111100100101010111001100101110111001101000000111100110110010011100101001111011100110011000111110101111000010011110011100000110011010011110011100100011000110111010100110011110001010010001000001010101000100000101101011000001101001100100000000001100101010010010101000001000000001011111110011111000101110000000101100010010110001001100010101100001010110110111001111010111010010110011010100100110001100000001011101000100010110010111100010110011010010011110110101000011100010100010010001001100100111101111100111100100100000001100001101010110101011111000010000001 +00110011010100000111001001101101000001011100110001010101110101000100001000110100101001010011110011100000011100001000000001001011000010011101000111111100111101111010001001010111111010011000110010110011001110010000101010011001111111000011111101110001011011110011011000001000011001101110111001101000011101001101100001010001111000110111010110001111010000100111011010001100100100100100001111110100100100111111000010010110011110011000000110110100000001110000011100111111010001001101110100100101000000000001111110110011110001100100010000100010001110001001110011111110101101001010110111011111111110001011111110101110000111001001100000110001100110000111110000010101101000010110101001111010111011001111010111000100101011101001011001001110101100010001000000101010100101111001000111101011001111001100010011101110001011101000101110110111101000010011110000010110000100000000001001000110011110100011100111000101010000111110110110011110111101100001010000010001110100111001001100011000011010001011111011000110110001111001111101101001000110000001100000110101011010000011001001011111111000011011011101011101001011111110010010010010000101010010100001101001100001111110001111100100010010010101101101001000111011001100001001011111110001110100011100101100100110011101101111001001000000010101011001001101000100100010101011111000001011111000011100000010001101011111010001010101111111110001000110101000100101111010011110011100101111011111100000111101101010101001001110010011111111110110100111101010011010000111000000011000110001000100110000100101000110101101010101111010000101010010110100011111010100001111001110011001111001100011100101111111001011011110111101111001010010000111010---------111011001011001101010001010100011010111000001000101111111011101000101001110000100111001111011010001111101001001101000111100001000111111001001010010111011011100100000011110010100111000010111110000000011011000001000000001100110000110111000011110011000101100101110010000110000100111111110111100100110100101001010100101011011110110110001101001010000010001111010000111111001010010001100000001100101111101001111010110000101111011100001010001000010100001101100101010111000000110010101000101101110010100000110101011101110001101000000011101101001000110110100011011001101110110111000111111011100011010000111000100110001010101011001010010111110010110011001100011001110011010011100111001011101000010001110001111001001010101100111110000100111010010100010001011101001101011110001011101001110010110001110001111101100101000011100001110100010011110101101110101101011111100100010011101111110001001111110000101010101011111111000100100101001111110101011000011011101001100110000000100100001010001011010001110110000100010110000010110101110110011011001010001110010110000111101010101111110010110111110101111111101101000111010110001101100010100100111000101110101100110110010111010011000011100001011010011100011101100010101100100001100010101100000100101110010010010111110101101110111101101011010000000010100100010001011011100111010101000110000011010100011010010100000010001110001000110000010110100011100100010001110100100010110110010110100010010000100010111101011010000010110110110111011010011010100110000010101010010010001001101101110000000010010110011100000110001110101001000111011110111100110110110001010101011110001101110010111010010001101010100101100000110000001001000111001100000111110011100011000001010101000010111110001011010110100101100101010010100001001011101101011101111111001010110001111100100001010101110111100010111110101010111011110100011000101000111001000100011011111111110010110000110101111011011101110011110001001010000111011110110110101111001111001110011110000110001010011101110101111110100111101010100101100010110111010111011111111010001000000111100111010011111010010011110101111111100010000000101000010000101100000111100011101101000000010000001010101111101001111100111010100000110110001001001010110010111001100111000110101111001101000001001111111101101011110101110010000001001111001111100111000010000001101001001111010011010011101010010110101111000000110001001110111100010110000000011110100010110011110001100101001101000000010011110000110101011110101000101011100101101101010100100010000111011010111100101111010010111001101100110000111010111110001100101100101011111001100110101100001010110000000001011000011000101111001101110101001101111111011101101011111100010010011100111110011001001100011010111111110011010100100110101001101111100100011110110000100010100101010110111000110110011110111100001001010001101011101000110111111000100010110110011011100011101110110011110000100000110111000100111110010000111110111111011111100001010110000001100110010101100001011001100110001011110110101011001010000101011011111100001000001001010101010111100101111110110001000011001011000010100111011011000011001010000011110011010111111010010001100110011011001010111110011011000110110011010011100100001010010011010001110000111110010110100011001010110101000111111111110111010101101001100001010000001010011000010110011010101110010000011011000010010000100010001010100100110110000110111101110111111111110001000110100011101011101011000110111110100101111000010011011101000111100101011010100000011100101101111001011101111001000001111000110111111100011111111110100001100111101101001011101001101001000001110010111011001111100000011100100001011110001001100111111111101001000111000111000010000100011101000011110101011000010111000001111011101000110110101111011001000110010001001101110111110101101001101001110101101001011111110010110010100001010011011001100001001100001000011101010101100110101101101100100011100100110110001110011001010001100101011011011010010001010101011100010001111101000110000001000100100110001010110100110100010010100100101011010000001001000001101101111000110001101100000010001110101011011000100100110100111001000100010001011111111011110110010011011000111101111000010100100100001011110001110001010011010101101010101010011101110000011101111000111110101000111011101001010100000010000010111000010101100011010101011100101001101010110010110110011110111111101011011001110011001011101011110010011111001010011010011011110001000110100101011010111100111100100101110110011101101011100010001010001000100001000111000011011010011110000101000000011001111101100000000110011111000001011000010000000011001100111011110000100101000000000100110000000000011001000111100101110010011101011011000001100101111111011010011001010111100111001000110011001010110101111011001100110011010001000100001110110011101110101000111110100100001101101001001110001010011100101101110010110111010010110110100110100101011000001011100011111000101110010000010101010010001111001100111100000101001010010011001001110110011000010000110111110111010111011110101111110111100011010110001110101111010110000111000101011110111111101101100011010010001101011111011010010010010110011100010100011010110001101101011001010101101110111011011110010001000000101000111110011100101011110111001100000100010010000010001110100010111000001011000101111010101100101100110000000110110001010111010111111010001000000001101100011110010100011111010101000101001010011010000101101010101111001000000101101100011100011010101110110001100111101100010101001101100001001001101010100111110011000111000010100001001110001001001011100010010011100110110111101100111111010100101110010011010111011111100111111110010000100110111001100110010010011010010011001010110100101111011001100011101000101110110011110100101101010111111100000010000000000100010010111011000110011010010011101111001111100000000111110111011101010101010001001110101111101111110110011111101011110001011101110100111010110000010111101101000000000110001001111001010001001001000001110011110001111110111011011000011101010011010101101110000001110010001010101101100000111100001001000000101111110101110011001111010110000110101000000001001001110010010011000110110111000001100111000010011111000000010101010100110000000100001001010100001101000011111010100100111011000101110010100001110100001111001001000011101100000000101001011001101111100111100101001100111011111000001000001101001010000100100011100010010000010111001000001111111101000111110100001001011001010110011000011101010000010011000111001100110010110100111001001001101000100010011110100010000010110101100100011111100110011100001011011000110001111111001001111101000000011011100101101101011110110011111010110111110010000010001110000111011010101010100011000101100001111111010000011011000001101110011000101011001001101111000111100011100011000111001100111011110000111011001000111111001011110100101011110011110101110000110101101110000010101010011111111011001111000010101111011101011111111010101011010010110110011001000101010101010110111111001011010101110001100111011001001111011100101111001100101010011110011110110110000001010000110010111011011011011000111011111011011111101100100001011000101101110100110010000000011111100110001000100000100100011110110111110011101001101010100011101000001100101111101000101110010001111010011111000001100101110010100011010100100010101110111100111101101011110100000111111110111100000010010000111111110111110111100100111111100110000110000001001010010001010100001100100000111100011011100100000001010101000010001011000100010011011111001111111111000001010100000000110000101111110010000101110011101101010000011100110111101100101010000010111110101011110111101000101101101001001110101111000101111000110001001011000000110000000000010110010011110010010110100010000111010101010100111011010010110101101110101000100001000100000011101010010001000011111110111001110000011111000101001000110001101110001100100101110000001101111100001000000101011111100110001000011100010011010101001100110011011000100011011010111101010100010000100111000110000001111101011101001000001111100101001100110100001111110000100001011110101001010110101101100110110100100000101110111000101010110101110100001001111001011001101001111110101011000110101011010000100111011100000010100000011001001110011100100111011000010011001001000011001011101000010111111011010100100101010110011110010111010101110011001011010011100010111111101101001000010011110110011111111111001011110110101010111010000100000011101100001101001110111000011000011100100000000000111100111000100011011101011100000010000000110110111101101100100111110111100110010001100011111001111010110001011000110100000010100011101000001011010010000100001001011010100101011000101111101010101100000001010110101111000010100111010011010001001000010111010000001111110000001111110110000010000111010011101111011111110101010100 +10011100101011010010100100110110000010011011111010110100010100111010110110011010111011000010011000111101100101111110101000011001011001101111010101110110111001101111010001001101001101100010100101101001111110110101110101111101001010111010101110010001101000111010011011110111111011001011100011110110100110101101110000001101001111100111101101000000010000010010110101111111011101110101100101011000111001000000100001000010110001111011011011000001101000001110010110001110011100011000111111100110011110101000100000101000001101010001101101101111000000011001100001101000000000010001010101111111011101000101100000110101110111011010100011110010001100101100001000001111000101011000000101110010101111011011011011000111011101001011101110001101111011010110100110000111000011001101110010010101001001110110001111111100101110001010010010111001000100111001100100101001100010101100011011010011110010011000001000111001101100001010010001111011101101011100101111010011001100001110111000111100011011010010110111111011101110000011110111000100101001001010000101001100110011110100001111110110001100010000001001010001011111110101100110011000000101111111110010110111000100000111010000101110000111010011010101101110100111100010111110101001100001010010010111101101001111111001111100111100010111011100010111100111000100101011001100001000101010000100011000001010110100101110101110111101110001101001000100100111001001110011000101111110001011110101111101010000010100100000101000010101101001111001000110011111100100010110101101111000100010100011110011001010000011110101111001011001001010100010010100100010111110100101011110010001000110011101000111001011110000101111011000011111111101011010110---------001111010101000110111100001100011110111110110001111010100101110010111000100011000001001010101110010001000101001101100111010101101010110000010101010000010011010110101001111010000001110010110110110011111000111011011011110100111011000000001111001011111010010011111101101101101100000100101101010110011000111110010011000111001101011001110011011001100000110010011011110010011001001001111100101010111111001011001111101011110110111101010010011101011100100000000111111110001111100001110001010100101001110110001010100100011111000010000011101011100101010100110010101010101100111001100010111111100110111100101100100011001100001011010010001001101011101100100000111101100000000011010111100000101101110001011100110100000010101001101000011110110111011000100100001010111011011111101100001101101100011000100001110110011111011010000001110110111110111010101001011111010111000111000111001011010111111101111001101110010100011001001101000110110110000101001110001111000100100110110110110111111011001110000010100010101100101001010011000010101000000110100100101100100000000001001010011000110010000111011011101000100010110110011100101010001100011001011011010011110010001101100101100100001110111010010001100100110100100011000111010111100010010100000101100110101111000111011001001000110101100110100001001110001011100000101000111101100110010111110010000010000010101111011010010000101001110000111010110101000001000110001001000000101000100110111010000110100001110010110111110010101000100000110001110011000101011000110111101100000110010010110000111110101111101100001100111000001100010011100111110111111001100100110111001001110001100111100100111101100011001001001110010000110010000010010010001101110000101001010100100101111001000011111100111111110011101111100011110011110011100100001011010011011100101000001100111001110011110010111010111100001011101010100011010111010111011011001110001111011010011101011101010001111111111001101001110001101101001110011001100101011011011100111111111110111101000111011100111001001110001010111110010111101011010001001101100001011111010110011101111110100001000000000011101011110101100110100010100111100010001100110101110101111101001100000000000001111110110110101101110100101001111100111000011100101100100101011110100110000110010011001000001110010100111011011111111011101010001010111000001010111111111100000100011111001110110000110011010010010001000110101111010000000111000100100100011111111010001011101000011101100100110101000110001001110001110100101111100100011000010110101011011111111010011111011110101110011110010100111010010111110000010000011110110011011001000011110001011111011000101000111000101110000110101111000110101110111011001110000000010100111010010100000011010111110110010011111100011010100010001010101000110100110100010010011010011101100111000111000101100001100000111101101111001101010111100110100011000001111011000100010101000100001010110011110011100001111110100110010101111110101010111011111001110000110011111110110001000000011001010110100011000000001011000111110110010000001000111011010011001111010110000100010000010001010111111010100001111111111110110110011111111110011100010110010110100001001110001011010000101110011000000011111001010111110001010100011010011100001010010000101100001100011000111111101010101000111111010101110010110100101000011100011101010101101001011100011011110001011101110111111100101101110000010110000111100100001010111011111111100000111100100101001000100000001101011101000111000001111001110001101101101111000110111011001000111110011111000101010101100100110000010111100000101101011011001110111011011100111001111100101101011000111100101111000011001101101011001111001000011011100010101010000011110100101100000100101001100110111100011111001000110001001111101100110001101111001100111100101111010001110101111111111010011000101100000100001010110011111110000111100010110110011110100001001011010011110000110111000000011111001000101000011000111100100001010101101111010010000001000001000011001010100111110110101001111111100011000100111001101100101010100110110011001110010000110000011110111001100001001011010001010011101110001111010011100100011000111100010100111100111110000111101000101001110111010000011110010001101000100111010011011110000000111000111110111001000100111110111000001110111100001110111001010110100001111110100011101110010111111100010110101000100010010100001110000011000100001111101001011001101011011100110011111000110011010101011011000110100001100101001101000101001101001010101001001100111110000001110101101101001111111001000001101110001101110010110001100011100111101001001010010011101110100100101111001010100101100100010000001110111111011010111001100000010101110100000000100011110110000110001111000111010001100110000111101001011001111110001100010101110010111011111101011000100100100111001100010001010110101000010011100101011011100011110001010110001101010101001000100001110011011001011000010001001100100100011110000000111011111010000000011100111001001010001110001010110101001111001001110101110000100101110110111100011110001110000100000110110011011110011100100010111101100011100000001110110001010110001110101011011000011011110111001010110000101000010010100000110000101100000111001111010111111010111100010110111111011010100010101011110101110110000110101111101100001001000111101011101101111100100111001001110010010100111110000010100001101000100011001100000101001100101100001000110010000101100101001000001100001011001101110110011001010010000101110111011101011010000010100101011010010111011100111110010101011111000001101100100101100111000000100111100000001111101000111001000100010111000110111000110001101110111110101011011110100011010111111001000011001100000010111111011111011010001010110100111011101000110010011011100000101010000101000110001111001001111100101110000010000100110110011100011100010011001101110100011001011110110100110011100101111001101101000000001000010100100101100010011000101111110010100110111010010011101111010000001111111000000100110010011000101111111100111011000010101110000111110101011011010111011011000000111011110001011010011111101000010010000111100101101011110011110010011110001111110100110110110011101110010110100000111010100111011010011011010100010111001100000100101011010111010011000000010010100100110000100111111110110101011010111101100011000001000011000011110111101001101100001100011110000010011100011000000011000101000011010010100110001000010000111011110010000011110101010100111100000100001110100000000100111000010101101001011000000011110010111100010000110011100000100101111110011110111100011110111000110111111010011001001000111011110011110100001011110100101001001100001101100101101001111101010011000111110100001010001000010000000001011000011110100111010001011101101011011011011100001011100010011010000001000110000110111001010001010100100100100011100010001010010100000100011101000100001110111000110001001000001001010011010101101010100000110000111010011011101110101000001110110000000011110101000000101001111000110110001001101010110010010101110010111001011110100010000000010100011101010011000011111011010101011111111100000110001100111010000110100100010100111100100110010110110011001110110111000011000011010100011101110101010101000110110100110011010101000001000101101010010111001010100101010101111110111010000001101111010101010001100001111101000110011010001100001000001001101100101010100101011011101010000000011011010000100000100011010101011100010100111110101101011110000001100101100100111101101101110011100101111101110110111111001010010011011000001000101011111110100000100000001101011001101000001101101101100100011110010100111010101010100001001111111111101001101010100011001000100011110001001101011001010110101100111011011000000101111010010000111110000111100001011001100001010001011011011101100111110111111101100111100010010111110101010000100001000001011011110010110001111010111101101110000111100100101111001110000101111100100011011101000101010100101010001100100100110000100011101110000101000011011110111100100100011001010000011011010000000000000111100000010011101011000010001111111000101101101100111001110011100110011010001011011101010101110000111010100101001110001101001100001111001000100010111011100011110010001110100100100001011100111000000010011000011100001010011010011111000001101111110111110101100110000100100000010110001101101110111110010001111011101111011001111100100111011101011101010110000100010001101011011101001111010011111101111001110111100010110000101000101110010000001110011101000110111100010011111110010000001000111110010100001100000101100001101100001010001110110000001100100110101111000111001110001011000110100000011001001111100000000101101011001100000110011111110111101110001011111110000001001010010001011110101110000000101100100101110101101110000001101010001001111010000101010001100101011100011111111001011101011110010010010101011010100110011010101111111111 +10111011011110000011111001011100110011101101101000110111000101100001010010100011110011110101100100111101111101011010010100000011111001101000111101100000011001010111000100100110011000110010011101000110000100101111000110001011111001101011111000111111001011000101011011101101110011000110101001100011111001000001010100011000100110001010001100100001000111001001010001010011000101011101110111010111010101000100001111101011111101101111001010110011101110111110010001010101000010001101011010111001111001101111100010001111101001001010100011001010100111101000100111100111011010110111011100011000000010000111011110001000001110101110100011001101001000101111100101000110001010001000010100011100101111011101101110001001001100010101111010010000110111111111110000110010000001010101110101101010010100001110001010100011100100000101110000001010101110111011110101000111000001000101101110101001101000011001100111010100010010001011011011100011011100110110100101111001010101000001011100011001001101101011110101101111001111010101010011111111001101011010001100001110100110111011111111101110111111101000011100111011111110010010010110110000010000111011010011001100000110111001011101110111010010101110100010001001011100111100111101001010111101010010001110011111100001100110111001100110010001000000101110111100100011000110000110010001110100010101010001110010110110011000001100001000001001101000001110100000101101111000111111101100000111010011000010000011111000100001101011101100001110100110010011101001101101111011000010100110011001111011000101100101111110011101111000001111110110010001101111101001001100111000000100011001100001000011010110100111000010100011010000000110101101110110010---------001101001101001100001111000001000110001010111101110111100000100010100000101001111010100000010010100100111001111101000010111011111101110110111000011100000110111111101101011011100111010110011000011001001100111111001111111111010010000001011001101000001011011110010001111100000111001110111011000100101111100110010110000010100100110010111100101010111110100000001001000100010001100100011101100101100100000011000010011110110011001000110001010111111100101101000011111010100010100100010011000101101001000001101011100111011000011101011010111100000110111000100010011001111001010011001000011001001100010000100000011100110100110011110001110100000110010111000011101101101001010000110101010000100011001111100100101000100000000011001111011111110001101010110100001001010101100100110100000110111000101101110010100100101110111010000100001111111110011000001110110100100000100110011000100100011000011110010100000100001011100100101001001010010101110010101011111101110100000101010000000010000111000010000110010100101011101111110110000100011110001001111100100111111011100000001010111110100111101100010101000110101111000101011101100000111000000000000010110001011101100100111011101101001001110111000101110010100000000101100111000010101111001111000101001010000110111111110101011111100011101111011111110111000010010111101011001010010001000000011101111000010000001011110000010000011010011011101110111110110111000010110101011111011101011001001111111011110100111110100001100101000111001000011110000110000011100000001010011011010010000111010110001111100100000011010101000000100001111101001100111010110100100111110011000111101000110000001001111100101111000100111101000100110110001011110011111010100000111001101111110010001010101011000101000101101101011000011110110100100010011101000011000101010011110110001010110010111000000001111011011101000000101011011100010101001001111011000011111011110101011011000001001010101011010101101010010000011011110010011010010111101101000011000100111110111001100100101110110000001011101000011100011011111000100001111000011100111101100011111100010101110100010001011010111001000001100000101010011100000110100100101001011101000100100101101001000110111111110011101101011101111001101010000101011000001100000000000100101111011000000100110001101100111111110100001001100111000011010010010000101010100000101100001100100011101000011101011011110000010010011110110001010110001101110000001011010010101111101010001111010000000100000001000010010010100101010011001010110011110101111011010001100011111100100100110101101011000110101000000100000101100000101110000110011110010010001100110010010000110000001100101100110000011011011100101010110011111000101111100100100111110111000011110001001100101110011010010000100111101110111010001000101001101010010011010110010111001001100011110010010010111100110100010111010001010100110111110101001011011100000001101111100011101111111001110100100100010010000010000100110000111001000001011101011100000001001101110011000000011110110001110101010000011010101001110000010101010101101011110001101111010001000100010010111011001011001000100110010101110001001010101110110001010000010010100001011111010100011100000010001000010001101011101010101101111100001001010100011111111010011101111111111110101001110010011010011000011011010111110010001101100101001000010000100000111101111110011100001011100001000110110110101110110011101100011100111010001100010100100100101000010110001010100111111001001000110011001101000100110000100011000110101011010001011001000101010001100001001100111101100100111011000010001111110011011111110010111111011100010101111110001010000101101101011101011010100100001110010010010011001000111010010010010010111111111111101100101101011010100001001001011000000110101110100001101101001100100100010111010111100000111000000111110011101100110001001011100011000101001110110001001110010010011001000110001001110010111011001101110010010110101000011010001011000001101011010011111101111011101111111001010100001000111100001000010110100111010100101100011010100010110011111110010011111011000011011010101011001110110100111110100110010011110010110100110101111100101000001111100111111011000111000101101110001111111010111011101011111100110101110000111111010010101110110011110110000001011001100110110111111000111001011101100001010011011110110101110111111101001010000011110001010011101100100010000110000101000010000111011111110010000100001100010000110011010110110111000000010101011100011101011000111011010000010110011110001111100100100010111111110101111000010011100110001101011011111111011110100111111100101110100001001111101110000011111100000000111000110011001100110000110001101011010010100110001111101100001110011110000100010001000010010001011011101110001110000101010010101000000000001100100011011000000111101011111011001100010010110111001000100111101101011000001101011101100100111111111001000111110110100101101101000001101111110100010000000000110111001010000000110111101101011000010011010001111100111100001111000111010100110100000110111110011001001010101011111010111110111100011100010001010001111000111100011000010100001101101111011100000001111011110101001000001110101101010111011000100111010001001101100110100010101100010111000111101000100011010111100000101000111010110101001011100000110011000100011100001001101100001001110011101001011111101111011101000001010100010000000111110001011010111011101000000010011110110110101011000110000111010111110100001001001101110101000011010101101110010010010110010010111011001111011101011100001110100011101000100000011001101110011100010010011010100000111000111110100101001000011110010010011100011011110001110101010100101100111111111001111100101001111011110010001101000100001000111010110110110100001111100110011011110001001001001010000100000101011111101100110101111000101101000110010111101101011011111110000001001001000000100111011111111010001000010111011101101001100010111110001100101101101011101011010001010111110011010010000001000110100001110111101001110010100010010000001000110101010110001110101110110111101100110110010011011100010010101110100001100011010001101001111100000110011110100000000111110111000101000010011010001111010101101101001011110001001011110011010000001001001111100101110111001010101101111101111111010010111011000010101100111100011111010111101101001101101100010100110010100110100111110101000001001000010010101010011000100000111011001110110000001100100001101011110011010110110010000000100001001000110100001000111110011011111101111100011010110011000001010100011101011011010111011001010000110011011011100101101110000011011100100011010100001000001010100100110110011111110001011101000000101100001000110110010111111100000110101011010011010011000110110011111100101001011000000110100001100100110100010111110110111001100011011000100100001110010011001010111111111010000101010000011100100111010000010110010010010110011100010111100011011000011010000110011101111101101001100001011011011101100110111110111011101010111010101011100000011000001111001111100011100100010101111010010111100011110100110111111011111111100110110000000010111000010110010011000100110110010101000001000101100011101010011000110011011001100101111101100000010000011011111010111010101001000110110001101100110110011101101010110110101110001111101000010001111001001011110011010100010001010000100001111111011100100010111111000110010000010011100100111001001110110000011110101011010100100000001001000111000010110011001111101110111100001110010001101011010101111101011100111011101111110111101100110010111111111110110001101000011000010101000011010010011000101010011111001000101011010001100000101011001001001000001000101101010100111101001101001010001010111001100100101111101010000110101000110011100001011011011110001111101001110110010000010111001100011100111100001011101110101001100001101101101000110111001100110000010011100100101101000111010000110011001000111001101101001111011100000010000101000000010101011010111111110001100111000110111010001011101111100100111000000000011000111010001101100001110000110001101100001011101111000110111111100110000100011100011101011010101010000101010101000110111010001001001110011001101110101111010111101100101011111001011101011101011010011010011010101000110010011100000110100011010111101111101100110011101110101100100111111011101001011000110110000101110110111001111110011011000011000110000110100001111100011110101110111111001011001100001100101000110110111001110101011000011110000100010100101010010011011101110010010100000101110110011110111000100110100110001011011110100101001011010011011001001011111001110111100010101101111100100100011011110000110011100001111000010100110100111101010011010001101001100110111001010111111000110101101001110111110001100110111110001000111010101110011001101011101110011010110101101010001100101101011001001100101011111110000001011001111010101100011011100111000100110111011001001100 +10000001111101101010101001001001100000001101001111100010001010101010001000110101000110110000110100101110001111001101001010011101000111100110100101000100101010100100111100000001100010100001101110100010110100000110110010111100000100110110100110001110111001011010001010011110001101111001001110001101100010011100111111110001000110011010000100100001111001100101011001001011100010110011001001111110100111011011000100101101101110100100010000111000001000100011010111101010010100110010010100110001010110011001000011000001101010110000010000000011111010000101001010110000101101100010011110101011001100000000111000111101011000111010011001101011011011100000101110111010110000001110110100000010111111011000111010100101101011011010101100101111101010011101100010100000101111001100111010100011110110011101111011010101011010010001100110110111000011101101001011011111001001000101001001110101010001111100100101100111001010100000110010010001101111010011101000010100011011101101000000010010101010110001100110101110100110110101110000111100100110100010100000000001111111000001011101010100111100010011010011010010010100101001010001101001110101000100011010100001110101101100111001100000101001000101000101100001011100100001111010110111000101001000111111001110011101100101001110000111001100101000011011010101101101010111011110000101010110111011110111000100010100011001111000011100110001000101011001110011110001110100100101111111011100010101101101101110010010000111110110111101110011110001110101100101010001111001000111011000000100010001000011001011001000010100011001001011001001000100100111100100011000011001110101001010001100001001110101010111111011000010110001100101001010100011011---------101000100000001000101101001001010001000100010110000101011010001011000100000111001110100100010111101111101011100101110101110001100101011100001001001100001101001010101011100001010101110000011100000100101111111011111000000000010101000100000010001000111000110000110010000110011101001000100011011101101110010100010111100001100110011110001001111101001000110000110000011111000110101100010110010010010001100110001101000100010001100000010110100111101110101010101100100111010110010001110101101110110111101010011101000001001000100001011001000101100101000010010000010001100100010011110011000001001101110000100110010100101101001011000110100111000111010101011010001111100111011010110100100111111100100011111100010100101001001011100111101100100100100000101001111000111101101111110101111101100010000000001110011111000011011000001011110110001001100010101101001001001100101001011100100100101000001110001110101011101001101011101111100110111010010010101001101111010110110011110110110111100101010010110110100000011101001101011101111110101010011111010110111000100001101000000011011000001000000101100011110110010010010000110000110001101000010001111110001000100110011101001110101111111011110010101111011110011111011111000010111101110110100110101110110010000110001010100100110100111100000101010100010000000101011000011110101111001111010100110011000110101011010100010010100101101110110001111010110111110010010001100110000001010111011100100010111011000100001111101101011100110100111100101000011011101000000001111101101010100111110000100111111001011001110010111001010000000100110010011101101010101010111000011011011000011111100111010101100101001110001000011010100110000111010111011011011111110110011111101001000110011010111110000101001101001001010110011000110000001000011010100010000101000010100110000001111100101000001101110101101010001011101101011000001001111010001111001000101010110000011110101100011011010001001110101010011110101011000010100100101110001110001111010000001101000101011110110101100110101010011010100100010110110101010111101001101010011101100010000101001100111110000101111100110100010010010111011101010100101100000100110100000110110011111101000001011100100101111100000001011001100100111111110000111011011000110010010001000100001110001100110110111111000100000001111010111010011000000011001100001010010000000010110001001101001101010110111101100001101111101111100011010001111001001010111000011011110000001011101000111111001011101011000010110101000001101110011100111001001010100111100010100011110001110011100001010000111101101111110100101010101010100101111101010011000000100001010111010100111001111010001010100111001011001110100010111010101011101100001101101000010011111101110010001101101001100101110111100011011010101010110011110101111111100111001110101000010000100110111010100010010010011111110101110110010010010001111001000110010010010111111111000011110000010110000001001101011010000010111010001010011010111000111110011101101101011111110001110001101001011111111001111011010010110000001010010000000110011101010100100000110000101100101101110010010110001011000101010100001001010010100011011001110110111110111110011100110010000110001001001001110000010000011010011111101001101010111111110010100000101110100110100110100111101110101111111110100001100100101010011101110110010100101001111111110001100100111011111111011111001010100001000011000110111010110000000001010000011111010100101001100101101101000010101101101010001110000001100100000111011100000010101001011001100000100101111111010110010110010000111110001000000011010100110100110001011001101010100100101110101100100110110101011100001101010001100011101010001110001101011010000001011100010000110001011111010111110100110010010010101001101111100010010100110000010100011000000101000100101011011001010011010101001100100101111111001010110101001111011010110101010100010101110010001011101101000010000100010000110101000001111101010000110000000100000010000100010010101111101001111100101110001111011010001001101101011111100010101001011001011101100011101011010011011011100100001110101001011111001110100101101101000111100000000000100110011110101000000011110000100101011010110000101011001010001111000110000110101101100100111111110010100101001111100010000110101010110001100010100101111110100010011000110110110110001011111000001010100000001001011011101100000110101010001010010010110011101010110001100110100000001111001111011100001110011011010011101100001111111101110011101100110111101011111011011101101001010010110011110101101000010000110101000011001111000010001001010101001100100100010101011100100011000000000000010001101101100010110111101010000110010101111100111011011000100101000101010001001000100000001101111010001011111101011010111100010000010000010101110001101010011000010111100101101001110000111111010010001110000001010000110110001010001000010111001101100101010011000001011000001111110001101100101001101100000110110110000110010000000110101010000001010100100111100010111001111010011011101110000011001000111010001101110110100001100001101101000101111101010101000100111110010100101110010100110010111010111000001001000010010010011100000110000110000000111011010011111100100100100110001101111001101011111011001011010001100110010011111010110000000110100100101110011110010100101110110101100101101011001111001011000111111110100111000001100111010010100111101001011100000110010001001011001110000101101110011010011001110001010100101000010111011000001111100110000000000110110111110101000100101010000110110011110111010111000011110110011001111100010100001001111101001011110000100011100101111100101101001001000000100101100010011011000100110101001100010011011011000011110010110101111011100010110001010010101111010100010100010010100011110010111000010000001110000100010111000100110110000101010111001111101010101011100010101101101000000010110001100001110010111001001010001100001101000110100001010001101011110011100000111100101001100011110011110110011111001110110101000000001101011011110010111000101101001101100000010100100001100011111011101101011010000000100101100100110110111011000000111101100110101110001111010101111001100100111101111110011010000101101110100110100110100111011000011110000001110110011010000100111100100101000000110001001001011010011011010000100001010000000101011101000011010000001111001011001111010000010100110101011110100010010011001100000001101101101001010000001100110100111111110100010010000001001111100101010111110000000100000101000100011101010100000010001101010011001011010010111011000101110100001110101101000011110011101011011001101011000001100101111011110000011110001000100100000100001000011000001011011110110111001110100010010111000000000100101010100000110000110100101001000000101010111000000110111100000111100111110001000010100011000011000000101010001110010011100010001100000000110010001001001010000011000101010100001100110010011010111010111111001101110101100010001000110001110111110010001110000001011011100011110110101110010000100110000010010001010100001001111000100111100100010111100011000000001111111100011001101110000111011011101111001000100011010001110000010001011101111011000100111100000010100110100011010101101110011100101011111001101001100001110001110110101110011110001011111001001011011111110110011111110000000001000001101001110000010011111101110111100010000010011111110010011100011011100100101011100011011110111111101011111010011111111100001101111000101110001101101011001101001110100011000111000010000001101011110011101110111011101000111111111111100000011111100011011100101110100111011111110000001101111011110101001010010100111101110101101110001100010001110010001111100000001100010101110001100001001110000010001011110011111110001101111011010110001000110100100101110111101111011001011100101100111111110001000110110011011000111100010001111111000011010100110100110010101100110110011100111110111101000011100101001001110010110001110101010011010011001111110110100110010100100100011001100111100001001110100100001111001000010000110101100110000001101010110100011100101111001111110000000000110100101011011010101100011111110011011101110001010000101100110011000111010101101100111111101111110011100011010101011101111101110001100010001101001000010010110100011101110110111100101011111100101100101110011001110010001101000101001010110111011110001100010011011011111100111111101110111110110111101011100110100110001000000100000111100001101111111101101100111010010001100011010001010101001011101111000010101001110101010010011111001001001000001100110011000000010001010001100011011001001100101001110101111001100110001110101110100011011111111100011010000110000001111111100011001001100101110100101011100001010000110100110010100110011111100000011111110000110100100010010101101011110010111000011111010011101000001001011010010111100000111111110011011100101101111010101001001000111010010110101111000010000110010111110001011100 +11101110111101100100101011000000110000011101110011100000110001000111001101011110101001100111000101010100010001000101111100001111000100000101010100101100000101000110001100000111111001010111111111101001111100001010110010101011000010010101001110000111110011000000111001001011100011010011000100111010001000110111111101011100100100110111100110010001001111000000000011110011011010101001010100111010101000100110011010110100111101111001011110000100101011000010111000001001010011011101010010000001100010011100000111100110011010111111101010111100000011011100101100100010000010111100111001010010110011101101000011001011011001100101110011010010110101001001110001001010010001010011000110001111101010100101010100010101000001001001101100000011110001000101100101000110010011111111011110110000001110100000000011001001100010111011111001001010111010001101001000100001100101101000111011001001011000110101100101110010111001001100111101110010111100011011111011001000111000111101101001010001101101000001011010100110100010100100000101100001010000000011101010110010111101010111101100110001011101001101000101100010001011100101100111101100010110111011001110000011001001010111110010011101110011010011110100111001101001010101111010110110110010111111100101100100101111011100000001110110100001111001001110000101110011011100001100101111111111110111000010011010100010011001110100100110011011000100010011100111001010111001010000010001000111111101110101001101110101001100010001101100110100110111111100000101100010010001100011101011111111110001000011101000110100110100110101001000000101110001111000010000111111010010001001111111000000010010000010101010101110000111100110101100110011011100011---------101110110110100010100101001011000110101011111101011000110001100100110001010000010100000110010111010010111101000110111001001001011100011101010111010100101011010011101111111000010110101111010111111100010010101000111110100100001110100110111101010100011010011000110101001100000001010101101100001010010010101110101010101111000010101010110111111000110100011110010000000001011110101110100000000110010101110000111101010000111101100000010001000010100010110110101000101110000011000111101000111110111010110000101010010111010111010011011001110001010011000101001111011111110001101000011010001000001100101010010001010111110000010001010101101110010001011000100100011111000010100010101111101100100111100011000101111000011011000001011011101011101100001000010011111111010001011110100100010001000100010001001001011001001101110001110101100010101011101000101101110100100100000011000111111001100010111111100111111001001011110000101001111011011001100011101011010010011011111100010000001111001000010011010101001010010111101100100000111101101101010111010101101000111010111011100000100011011100100100111111111111101101101111111010111111101110110110001110101001000011011110011001000111110011011111110010000000010101001100101000111101110001000101101100011010010011111100100111111111010101001111001110001111010000101010101101110100110011010011110111000111011101000011010011000110000010000101011111010000100001010000111111011101010010111011101100100100110101010000100001100111111001111110100101010011110001101101110101100100111110001010110001111001010000001001010010010111111000101111111100001010011110110101010000110001110111110001100100111001000011010001010101011011011101000011001001011110101101111001110111000110000011111010101110010101100110010111101001101101100111111011010010000001101001100011011111011010100011000110111011011101111001000101111011010001001100111111110000001110100111000011000100101101100100000111000101100011111101011010000100100001000011101100010011011011111100111001101011100111111000001001001100100010101000011001010110100110010110001010000110010001100100001100110100101010100011110100000000111101000111000111011100010000001011010000101110111111011001100101000110100001110101000100111010111011111111101111010110111110101000010100011110001010011101111111001000111010111111111100111101110100101011001100010001001000111010100110111100010111011010100010010000100110001101011011010010111101011001011111110101100101110001000000000010001001110011001001110010111011011010111101111101100101100010001011010100110000010000111000011000111100010011111000110001110011100110000000010001100001001111101000001100001101111011011101100011101100100010101111110110111110110011111011000101001001110000101001101110011011101011111010110111010001001111100001000101001100010011111011100000000010111101010111000010110100000100111011010110010000001001011101011101110101100000001101010000100010001001101100011010101110010110000100110111001100010011101011010011000110001110110000010000110011010101100100111000001000001101111111101101000110010101000011110010010111111001010010010000110111101111001101011101000111010100111110100000100011111011011110011011000011110010111101001101000110101100000010111000000000000101111110111100100010110101100011010011011111010010001100101001000110111110011100001101000110001100010100100111100101000110101100111110110000101000111011011111111000010000101110101111000001111000111100010011110010000110001011100100011101111111001001101100110101111000011011010001100111000001000011011010011010111110000010100000010001111100100101100110011101011101100111111010011000100001100100011111011011000110000000011111110110101011010001110100001001000101011001011011111101000000000111000001000110101010000101000100010001101001100001000100011111110010101100010110110010001110110111000110101101110010111100010000100011001010101001111100110010101110101100111010101111100011101001110100011110001100101000111100001010010101110100111101100111111011010101100011111010011100100110101101010010001000001011010011010000110011000001001000101100000101110110111101101111010101010110011011111110010101101110100010000011101011001000101110100111001100010010100010110100110011011100010100111111111000110011100001010101000110111010001100101100111100111001000010110001111110100111101100100101101101000111010101011110100111001000001111110101011111000011110101001001010010100101110001000110111111110111100101110101100100011110110011101111100100010000011011001011111110111010011100000100110001100000111100100010101011001001011010100111010111110011011001100100000110000111001011010110000101001000001100010011000100011001011001001110001011111000110101001000100101101000000101001000001010100101000010010001101010000100110011000100001000110100000000111101101101100110000111010001110011011000000110000101110100110110001010110101101111010011000010010101111011110100111111100101000101101100101110001100001111001001110001000010001010111001100011001110110111100010010110000101010001011110001101110010101110000011001111100011100101101111101100011010101111011010101110010011110011100111010001000100011110110100010001011101110111000011011011100110101011010001111110110111110000010010010101100011111100101011011110001100000100011000101001110001010011111001100000000100010111000011110101100111001000100000001100111111100101100111101010011110010101011110101011110010110111010001000010110110011110010101111101010011001101011000010110011011111111101111110101001001110111111011110000010100111001000111010001100101101100011111101100001000111000000011110000100010101100001001000111010001001000010000010111010010111101100010110110101101001111101010100100000101001111001111010010000100111000101101111010101100010111000010001100010011111111100111011111111011010000100001011101110111111111101000010101100011000000101010001111011110011111010111001010101011110000000000010010011101010111001111001111010011101111111101000001010111111111100011110000000100011011010000011000100110000011101101000001111010111010101111101010110010101001101001010111010111110100010111001100101001111100011101011100000001100110110110011000001011111100111011010011001110001010000101100101010001001100000001011101101100100010110010000110110111011100010111001001111011011011111111110000000111000100011000011010000010001001111100100010100101110011100011100001011000100011111110001011110001100010100010111000000110111111001110110001011000100011000001010011101001010011100110010101011000011010110001101100110010110001010001001011010100010010001001011110110010101000011000010101111001011011000010110001100100010100111101110101001100111000011001101101111000010001010110101101011101011000011101011100010100101111010001110010101100000110111111011010111101000111001111111001111011100011011101000011101100101011001111111011101111111100111111111101110011011110100011110100110010111111110001011111001011000110011000111010101011110001100111110111001101011101010011001111001110011010110000110101000100101000101001101101001110001111111110011011110000010101001111100101101100011010001011100000001111110000100110101000111110001011010101100101011001010010001110100101110010010111000111011100111011011010010110000011001000000100111110011101001110110001101101000110110110110001011011001100001111101001110010111011011110011001111011001010011001010001001101111011111011100111000100101011100110101011001110010000011001011010011001001110110110001011010010001011101110000110010111101010000110101001101101010101001101100000010011110010111000011011100111010101001000000110101110001100001000011011010110000111000000110110010101101010010101001011111000001111111010001011101110001100001100101011000110111100101110010100001101001000000110011010111110110010100011101101010001111000101110110110110010111110011001111011000001101111100010110101011101111011001001011110110011110100110100100011101101011101111010001110010101001000100111110110111101101101010111011100110100001011111100000110001001100010110001000101010001000100110001101101001100000100010001001111000110000110001010001101001000110101111110111011111111101111100111001011110111001101111011000011111010011101110001100111011110001110111010100100001001110100100100111001000000110011010111110010110011010100000101000001011100011101110100100100101111001011000000011111101101010010011101111011110100000001011001111010001110111000111000001111010111111000110001000101001000011010000111000110111101001111010001101101011010000110110101000110010101111011000111011010110110010110001000101001000001111011001001101010000001011111110001001011010011100001110011110010110000100100110111101001011100010100011111100010111110100101010100010011001110001110110100001011110100111010101001000000100000010110011101011010100011111110111110101000100000010011111001010111110111110000001011101010001001001001101100010011111010101111 +ls15msgs +011000001100101000101110001100111101011110001110000111011111110001101111101101101110101001001101100110000111010110000000111001101010010000110--------- +010000111100101101111111110001000110110101111100010011011010001111010110111000101101100101110010100110111001111111011110000011101000011111110--------- +011000011101001011100100100101111100111001000011101100001000100001101001011000000000011101011011101000010010100010001111110001011101011111110--------- +111011001101000110111110000000000001011010110010001101111000110100010010011111011000110101110001000000001101100101010001111110000011001111111--------- +110000010100101101111000111110011001101011101110010101011110010110100110010111001000010101010101011011010011111101110111011010111100011000011--------- +011001110000110110110110001110010010000111101111110110100100001000100100001010101000001101111011001101000011001000100010100100000011101110110--------- +110101011111100101111011001100001111001100110111011111000101110110010011110100011010000010000111001001001001001001110000100011110000111110000--------- +111010101010100100011010100101010101001001001101011000001111110010101110101110111011100001100010001010010110110010111101110110000001011001100--------- +110011001111110000100110100111011010001011110111010001011000100011101100100110000001111111001110010110101100100100111001000000011111010010001--------- +101101111011011100000011001101001100111110110110010010100101011010011100010100001001000011000111111010010000110001011110011110000111100010000--------- +ls15cwds +111101011110001110000111011111110001101111101101101110101001001101100110000111010110000000111001101010010000110---------111010000010100101010101110111000000111110000010001110101010111110011000111101110100100111110011111000011000010100010100001001000110111010010111101001110010111010010111111010000110100010100010000101101110011111001010100110000101010011000001101011100110000001101111011011010011010000000100111111101010001000101101100010001011110111111011011110100111101100111101100110001111010110110001101110111110110100000011000000110110001001010110011100100111101100111010100111001010010001010001011010111111001100101111001001110110100110111011010101011110011111111100010001010111000000101100110111100101010000010010111111001010001101011111010100 +000110110101111100010011011010001111010110111000101101100101110010100110111001111111011110000011101000011111110---------100000011001111110000010100001110011000010101011000001000011100111001100100010001110000111111011111100011110001110010111011001100010000011100110101011000101111001110010010101000101111000001100101000111100011001001011010110000101001001100011111001100101100010111110011000011000011110010101100111001011100100101010010101001010101101001100100100110010100001000101010010101111110001010111110010100001101100001101010000111011011000000100011110011011011001110000000100010001110011101001011101100100001110010110111001110100010011001100101010011111100000001001000000101000111001101001111101001011001111010011011101011111011000100100100101 +111100111001000011101100001000100001101001011000000000011101011011101000010010100010001111110001011101011111110---------011011110101000010011011010110111000010010111010001110111100101101000001100100010101101001010011001101100000100100100001010100111001110111011100100001111000110100000010101111011001001101010101100010001101001110101101101100010101011001110000011011010010000101111001111101010111101101010001010111001101110111110011001011011010111011000010111000001010101011101011101011000110011011100111111000101100111110111110000000010010000001101100100001110111101110110111100100010000111000100100010011101110011011111011111100001000100010000100110011100010001100101011101000001000001000001100111110011100010011101000011100111001100111110000011011 +000001011010110010001101111000110100010010011111011000110101110001000000001101100101010001111110000011001111111---------110000001010100000101001100100100111011110111100000110111010100000101001011111111001101111110111100010101011100100001011111000110011100110011110110111011100011011010001011000100110011010010100000011101111010110010000010010011111000010000110001101101111010001011100010100111010110111110100100001110010011011010111010111011010000111110111011101011111011111100010100111010100111101110010000110110111000101101010001010001101000000000001111001111010100001111110111001010110001101000010111110011000001010000001000011100011011011001110010100011010100010000111011111000001001010010100011110111110111111001001111110101101010000101011100000 +011001101011101110010101011110010110100110010111001000010101010101011011010011111101110111011010111100011000011---------001111101010000011101010010010111110100001011000101010110101000110100010111101110101111001001010011000011110010100011111011000011101010111110101110110100101110010110101001000011011101000111000010101001101001110000011111001000100010011100100000101111110010001100011110001100111100000010011000100101110111101110010011111110111111010000011110010000100010000101101011101001001001110101111001100011000110101001101111111101000100000110111000011001010100011010110000011010001101011000101101011010001000010010111000111101101000010010100000100110000110100001110100001111100101001111111001110100010101000010100011100001000001010111001001110 +010010000111101111110110100100001000100100001010101000001101111011001101000011001000100010100100000011101110110---------001110111000010011111100111101101101011001100100101001100111001011100100101010101001101110010000110010100110101100001111011000100011001101011101010011100110110100010001011100100100111100110011001001111011011101111000010101011111100111000101010001010100000010010111000001101100010010100101011000001000110011001101010100001001000000011111110010000010100111010110010001100000010010000000110011110110010101010101010010110111110100111100111000101110111000001110101010000111011101111001010100101101001011101101110111111101101001111110010010011000011011000000001001001100001010011100000101100110010101010000000101010010000010100011011110 +001111001100110111011111000101110110010011110100011010000010000111001001001001001001110000100011110000111110000---------100001011101110001101010000111100111001101010101010001100100111011001101110010111111110001000001010010101100001011010001100010000001110001101010010010000000100001011010010010010001100000010001100100101101110000000011000110110100100000001101111000011001101100111100001111111001000110111011000001101011101100001101111100111000011000101000111111111000001101100111101011001001100110111101100100010001011011010011001101011111010011100100010001111011000100101101000010010001101111100110100001011011001111000011010001111100010001101110100010100000000110101000001110011110111001100010100110110110110010111010101000000010111100110000001010 +010101001001001101011000001111110010101110101110111011100001100010001010010110110010111101110110000001011001100---------100010011101101110110111000100011000001010000000011110010000000001111011111101111001001001011000010111100101001011100111111110101011101000001000100011000100111010100111001010001010111111111011110110001001000010111001011000111100000001000011110111111011111101000100110010011000011110010101001111110100011110000110101110011000101110001001110000001111001000010000000110100110110000100100000001010010000101001101110111101011001110110101100000111100000100100010001111100010011001000011100111011011111110111110111110000000100011101110101110111010110000010000100110111011000110011101111111110001100100101111010001100011110100000100101101 +011010001011110111010001011000100011101100100110000001111111001110010110101100100100111001000000011111010010001---------110000000000010101001111001000111001010001010110101111110000101010000010101100101110101100001110000000101110010100010011001111010011100010111000010011001011010100001010011000110001100000101101011010000010000101001010100100100001101111111111101001101001010011010110100011000111010011111110101110111111001111010001111001111100011110001001110001000001010110100111010110100110010001000001001011001000000001010101111010000110010111110100111011001111011111110110001011010011111000100101001010000101000000110001011111110100101010011101111010101100110010011011000110000110000011101110011111011100010100001000100100001100011101000111111111 +001100111110110110010010100101011010011100010100001001000011000111111010010000110001011110011110000111100010000---------000100011000100101100110001000011001011110100001011010001110010110111010101011011110100101011110110110110011000111011101110001110010001100001010101010101000110001111001000010011110001010101111110110101001101111111110001111000111110111100110100000100001110110111111110010100100001001101010111001011101110100110111100000100010010001100110000110110010000111001011010110100000011011111010011101000011011100110010001000011111000111000100000100100001000010010111111100101001111001111100010111111100011001001100011100010110011000100101011010001001001010101010011001000000011011001110110110101000101111111011011101100110111011010011100111 +ls30msgs +000110000110100110111001110010010010010110010111100010111110010010011011000110001010111110011001110111011111000000100100111100101011110101001000000010101100101110001110101011000100101010010001000000100111111000011101110110100110011110111000111100000001111010000100100000001001101100100010011--------- +011101100001101001010101000111001000100000100000101110111110000000010010111011111100110100001111011011000111100110010001101111110111001111100010100010010000101111001001110111011110001001100010111110110001101101110011010001010001101101000110010001000011101011110000010010010100001011010100100--------- +001010001111100011000101100101101001111000101110101000001100111111110100111010000001110111110001111111000000110111010010101001010101100010001101110101010110001100001100101010110010110110010010101011101110110110001111101101000000111011000010100100001000110100111011110101110001101111110000110--------- +101111011100001101100011101000111000110001101000010000101001011101011111011111011011100011101000011101100101111111011101010001111111011111000010011010101110100101010010100010110001111101111100011011101000111011011100101100100000001100010010110011111101010100010110111101100101101101000011110--------- +011100100110010000011110001101101000100011101010111101110100000111111110110101101111011011111001010001011101001111111111110111001011101110001101100110100100101001101010101100100001111110100110101001111101010101111100111000101010100010111111001001111000010010110100111001001110000101111000010--------- +010010101010000010100010011100010100001010011001011101111001010010000001111001011010011011111101100010000111100010100110010100111000101111100011011111001101000110100110111011011100101000000111001110011000010010100111101111000111000000111111111011101101001010101001010001100010100111101110100--------- +000110110111010101010101101100010010010111101100111111001111100101100010011000110101010101100110001001101010100011101101101000101010100001101111000001001100010000111101000000111001111010011010001100000110010101101110000111100000101011001001111010011011111001101010000101110010011111010100100--------- +101101001101001111101100001100100101111000100100110100001010010010001100100100110011100011100001000011100101011011101011010110000001001111100000001011001000001110010001000101000011100010011111001101011101100100100000001011000111001010011011110010100011101101001100110111010111011011010110101--------- +111000110011100001010001011010110000100001101001111110101011001110000111100001100110111001010001100100101000001101101000000100110111111001010001001000110110100010010011010100001011101100000010010111000110100101001101101111011010100100110101000110011000000000101100010110100010010001111011101--------- +101100010111111001001011100011001010111111101000001000100011011110010011110010001100100111110101111100101100110010000100101100100111101110001111000111111111100111011110001101100001010010101111001001110101000000011010100100111100001001111011001100011100001101000100110101110110010011101100100--------- +ls30cwds +010010011011000110001010111110011001110111011111000000100100111100101011110101001000000010101100101110001110101011000100101010010001000000100111111000011101110110100110011110111000111100000001111010000100100000001001101100100010011---------000111101110100000111001000001111011010001010001101100111010001101001100100011110101001111111010110001001011111111110001110011101011001011101001011101000001110010101000001100111011001100110000111001000000101011110110010101001101000001010101010011001101000111011110101100000010011000100011101111001110010010010111101111010100100101011010000111010001100101100110010011010100111110010110100100000000101111010100110101011010100000101010100001011110101100100101111001001100111111100001101101111000001110100011110110100101010001110000000100001110010011001111000000011001010001011011011110110000001001000010000111000010000000010011010110110000010111010000101011000111100100111100001011011011011110000110000001001001000001110000001010101000110110000110101011010001100001101100010000010000000000111001100101111100011010110101001011101111010011010000111000001100010101110001001101110011101001010011100100110011111111001010010100011000010011101000001110001100011110101110000101011011110011100001010101011011100101101100100110111000000001001111000001111100011010111100001010101011101001101101101001101011001000000010010111001010010010111111011011101110011101010000001011011110001011001011010000101001010100001110101101001110101011100110111000111011100101110011101100100001 +000000010010111011111100110100001111011011000111100110010001101111110111001111100010100010010000101111001001110111011110001001100010111110110001101101110011010001010001101101000110010001000011101011110000010010010100001011010100100---------000010011101010110100011010111000011000000100011100010110001000011111101110100110111110001111110001111000001100011101100010110001000110101001010010000100001000100111100110111001010110100000001001110111010001110101110010001010111100010110100100110110100011111111011111011010010010110110111110101001110000100010000010010011001100111111110101011100100110111100101010110000110100100110101100110100100000110001100100010011010000100010000111100111010001010111101001111010111010001110100100101100100011001110010011010001111100010100010110000111000100110110001111000010011101010000011100101011101110011110111000000110110110001001111010011000000001001001000101000010001101010000100100001000101001111111101110111010110111110110011111011010001000100100100110000110110001101101110101000010101101111100101100110111111110001001011011111101000110010101101101000110110101011001100011111011011000101111010101110111110110011111101110001101010010001101111001010001011100111110101001101100010111010111011000000011010111101110110010111100000100011000011101100110110010101010000101100110010000011100001100001001001110010001111111010001011101011100111110100010011011000000011011001011000110011001001101101100110100010100001111000010110000111011111010011000011100100100111111101010001 +111111110100111010000001110111110001111111000000110111010010101001010101100010001101110101010110001100001100101010110010110110010010101011101110110110001111101101000000111011000010100100001000110100111011110101110001101111110000110---------100110010000000110011011110110101101100001110011001011011101010011010100000001110101010010011011110101111111100111100001101000010100100101001011010101011000111000110010010000000100110011110001100111001101010010100101010010000001101011001010001010011011111111100111101011010001111110010010010100011010010010010110010111100110011000100101111000011001000001110110101010111100110100110011100000010010101100000001110101100110001100101101111010001001101111011101100110110111000010111111001111010101100110111100101001111010010100110100111101011101011101000100000001110010000111011001010101010101100001000100000010000110111010000010011101000100100111100011010100110010011101000110111010110000010110001110010011011110100111101100111110000110110000100000011010001001100101010000111100000001110111001101101011110000100011001111011101100110000100111111001100001110000001000000010001100111011110110011010111100101000100001101010110000111101000111000011101011001111000101010011110100001101000111101010111111000010100010101110101000111010001011001111101101100001110000111011110100000001010100111000001101100100110000100101001000101011010010011000010001110110001100110111000001110110000000101100100011110101000000011111010001110110111111110010111101101100100011111001001010011 +011101011111011111011011100011101000011101100101111111011101010001111111011111000010011010101110100101010010100010110001111101111100011011101000111011011100101100100000001100010010110011111101010100010110111101100101101101000011110---------000000100111110100011011110111101101101110010011001111111001101111110101110000011101011111011000110001101101010000111110111000100111110110111000101100000101110101101000101011010111011010010111101000000100010110100011010100001111111010011011000000000101111100101011110000110110010000010110011100011001101000011110100010000011000001110111001100100011111100110100111110100011101010011010000110101010011010011100010011100100010000011100000011010111000000100011111000100110111111100111100110010101110100011101000001010010000011110100110110000110010111100010011001111111011000111000011101010001101011010110000000011000001010000100000111010101110010100111110011011000111111101011000010110011110000111111010010011010101001011001100010110101111100111010100111001110100100110010110000011000000100110001100000100001001100001100111011101111101011111100101000100001100101100101111110000011010001000011100011010100010011011011110001110100101000010001000000100000000001011001100011011010010111001010010100000010110111000111101111000011110011011011100011001001001111110100111100110010000010010100110000000100110011100100000100110111100101110111010000100000011000111110111100100010010001011110010101101111110110011100001100111010000111100001100000111001110011111111010101110011 +000111111110110101101111011011111001010001011101001111111111110111001011101110001101100110100100101001101010101100100001111110100110101001111101010101111100111000101010100010111111001001111000010010110100111001001110000101111000010---------000000000011001110000000110010100000010101111111010111100101111010000010011010011100100011101111100111100010000001111100111001010100010101010110001000000110011101110110101001001101111101001010010010000000010100000100001111000010011110111010011101111111010111010110111110011011101011001110101001110100101110000010100111001001011110000110100110111110010001110100010010101000111110000010100000011101000101101010101000001011001111110100001000000000000000110100100011010110011010110010110100101011101011101010101011001100111010000000110000101011011000110100000001101101100110100110101011100001100001010101110110001000010001010111111001000011100000101000000011100000000001010011001001011011100110100011010011111001110100000101101110010111001011100011011101110010100101001000011101101110000000101100001111011111100110110100101001010100011001111100110111011010011100010110100100101100000000010001010001010000111001111001001111011001111010001110111010001111100100101111001011001001000111110100010010001000011000111011110100100001010101100101100100001111010100110111110101100000001110011001001001010111100100100100110010111100011100000111101110100001100101010111001000011000011000001000000010110101101011011101000110100000100100011011001001110000110111000110110010010001 +010010000001111001011010011011111101100010000111100010100110010100111000101111100011011111001101000110100110111011011100101000000111001110011000010010100111101111000111000000111111111011101101001010101001010001100010100111101110100---------110101010101010011001010011110111111100111000101011110100100011001011011110001111000101101111011001100010101101000010010000001010111010100100110001111000001000101101010111000001011000010001001011010111100000101000101000001001001110100000100000101111101101011010101100101100110001100110111101001110101011001000000111010010100010110011101001100101011100010011101110001110000101101101011101001011110111000111110000000010001101011101000110110101011100011001100100110100000000101011111110101011101011011101000010110111101101011110011011000100110011111101011010010000001010000000100010101001101001001101111011100001011100111110011000111011011001100001010000010011011101110000110100111101001010100010110000001000001010011010001100000010100000101011000010000001001010001111111110010010100110101111101111101011010111001111010101110110100010111100001100001010111111001011010011011000010000010010001111001011111000110101010100000011011101001110101001110001111100000001110100111011101011110100010110110111010111101000101110110110100100111110010011010001110110111001100001100111011010000110010010010010001111001001101000000000111101111111110110010000101100001110100110000101110010001110111000110110000000011110010001011110001010011010100000001100101101010100110111110111101 +100101100010011000110101010101100110001001101010100011101101101000101010100001101111000001001100010000111101000000111001111010011010001100000110010101101110000111100000101011001001111010011011111001101010000101110010011111010100100---------010110111010111000000111111111011000100000001000000000110000010011000111101010001010011010101000000001001111100111000000100111000110101011110100110101100010100110101100101001011101000011111010010011001111111111101100010001010011111101100011011111010110101011100010110010000110011110000010101010001101011110110001101010010111010000111000010000001101110001101000110101011101010101100101100010010011000000111110011000010000101001010101100011111000001111101000110101011000101110000111111010110001110111011110000000001101111011010110010110010110000111100110101110010111111001000000010110010100001101110110101101111010001001000010110001010101001010011110110101101100000100101100101100000100110100111110111001100000001010110010100110011001011001110101110001111111001011110101110000100000101001110100000000110000010110011001000001001101010111101010101010110010001111000010011110010101001000111010100111010011100101010110001111110010011000000000001010011000111101110100011110010100010000110011011100110100110100101110011010101110000100100011000111001010000000010110010010100110101011111000011110000110110110010010101110101110000110000000110000010010110010011001010000110000011110010010111110011101111001001110101000100100100101111011110101101100110110001001101010011001 +010010001100100100110011100011100001000011100101011011101011010110000001001111100000001011001000001110010001000101000011100010011111001101011101100100100000001011000111001010011011110010100011101101001100110111010111011011010110101---------011101101111010000010011011111001101001111111111001101110011010111111001010100100110011001100011010110110010001000110010001011000011001111011001100110100011101101000100011101001111111011111010000010100011101001010001011000001110011010010000111110010010110101110000110011001010001110000011001100111011101011101000101001000001010100100111110110101100110000111100100101001010101011100001001000101000101001010110101110000010011010100100000100100110000001110101100000001101101010010101010000101110011011100010010101110000011010101110011010001011010000001011101101000011100110010100000011101101000101101010101011010101100010010101001011001000001110100101001111101111110101101111011001100111110110011110000111100001001110100110110011111000001011011000011001001010000111001110101101001001011001001011000101010101110011010111101101100001111000000010000011001011010110110010011100000011101010010011100011011001100100101010110001000111101000000011011000000111110001001010110111101101001110000100100110001000100011011111010001010011110001110100101011001010010000111011111001110111110110000001000001000001001000110000111110101001010111010010000101111111010101111000110010101000000000000101110001111001101101000000001110010101000110111010101101110101010110101010001100000010 +001110000111100001100110111001010001100100101000001101101000000100110111111001010001001000110110100010010011010100001011101100000010010111000110100101001101101111011010100100110101000110011000000000101100010110100010010001111011101---------100111100000110000011001101101000001000000100111011110110010101011000000010101101101111010001100000001010001110000100111100111110110010101110000111000101110011100001000001100111000011010110000110100000100001000001000001000100101111000101110111011011011111010011110010100000101000011100100110011000101011011000101000110111011000010011001000011010011000010110000101001010110001101011101011101010011011011110010001001110100100000010110101111010100110001001110101011001011010100101110000000010110111011110000110101100000110001001010100011011000011011101110110001000010011101101110000010100110111000100011110110000111010001100110001000000111101100000111111110100110001001101110111010111100010011100001100100011111100101000010100110010110011000001010101000100010101000111011011111000011010010001001100001011110100100010100111100111010011011100101001111011111000111011110100011110101010111011000001000101011111110000110101011011000110000101001010111110111001101011011111011100101011110100100010011101001001000100000001010100000100101101110100001000100100010101001000010011100101001010010101001010010001010110111111001011111000000000111001010101001011011100010111110000011110100111110100110011010100001010011101011011000101100101100001001111111111001111110110011011001 +011110010011110010001100100111110101111100101100110010000100101100100111101110001111000111111111100111011110001101100001010010101111001001110101000000011010100100111100001001111011001100011100001101000100110101110110010011101100100---------001101011010011111111111111111100000001100001110111101101011010100001111100111011000011001101010010001110001111010111000110100001011011001100110111010011101000000110010001001010111101111110001000110000000100010001110000101001001001101110111100100110100000000111010000010011000010010011101111010100110111010101001100100011010110110100101001111011000010001101101110110110101011010100000101101111110100001100000011101101001000010101100110000101100110011110011000110101010100111101011110011000010111001101100111101111011000111111100100100001101100000011110000001101101001010101111010101000100001010010101010010111010110110111001010011011001110001001000011111001000001001110110000100101110110010111000111000010101101011001010100110011111101011010111000001100100010110001101010011010011100010011010000111100001000000100000100000000001010010111011111011010110011101001101101110111010111100010010000011101111110010100011000000100100100100011010110111011101011001011101101011101101000101000110001101110110100101110100010101110110101001111000001010010111001000100000111001101000110001010001110000101100101100000111010100101110001101101110001110001001110000100011001111110100101101111000000101101110010101111010010010001001010000010111010000010100100100011001110100000000 +ls60msgs +000111111001101000010000000111001001100011110001000010001000001101111011110001100000111001111110000111110100111000101100101111010011001001010010100100011010001011111100001001111110110100100001100110001000010010100001001011000010111100111010110100101010011111100010111000000110111001000001010110000000101111111010000111100100100110111101111101000111000101001001100100011111001010000000000111110010001100110010101010001000010011000010111001010100001000101011001101011110100100010001100111001000111110101100001001100101011010011110111101010011100110011101100010001101010010011111010111111011011--------- +111001010001000101101000001101011111101110010000010100001100001011110011010100100010001010001110010100100101001000101100101100100100101000000010110000110101100101001110000010101111001000001101111001010110110111000001010110001111001100000000101110101011101001111101111011000011010100100110011100000010010011000101010110000001000000001010001011010101100011011100000011011010000010010000001001110100111000011100000011010001001101110100000111110000111111001011001110110010010111110101111101001000100110000001001110010001000110000111101011101101100001100111010110011101011010001010001101110001110--------- +011101011000011101010110110110110110011001101111110001011011111110100111000010000010001011110101111101111001011101001000100101100110100101101011110100010110010000001100111100011101000110000010000011111110010100000001010100001010110001101010111010010111111110000110100101111010001000100010001111010110100011110100000011101010110100011100100010111001110101101001100010110000100001010001111110110000100101000010011011110110000001110000110001010101011000000101011010110011001111100000001100100000001010111000011101011101111111011111011011101110001000100111011011100110101010110110101011101111110--------- +000011100011011001101101010101110111000101101011000000111000110010011001011101000110001111001100110010000110111000010010100100101010001100101000100100111111000100100011100100010010011010101010100111010111100010001010011100110001101010000011111101011100110101101010001010010110101001001101100011111101011000001011000111011010101000110100011010101101100101000011001011001100110011100011101010000100110100100111101010011011000110100101111110111100100010111010110010000111111100101000011100111111110000101001000101001110111010011001110000100001010100101110001111100010000100010100100111011000011--------- +101101001111110100101011010000110001110010111101110101110100101000001100011010101010100101000011011001001101111001101101101100100101010001011110011001001001111101010101010000111101110111010100001111111111111110011110001100000100011011010111101111011110000010010000100100011000100101101100011000110010101110000100100000101100101001100111000110111111101010101011011011010011100011010011101011110010100000101011011010110111011001111010111110000001000110011000000001101010101101110101110111110111001110111001011010010011001110100111101001101010110001001101110010011110100111010010010010011101010--------- +010001001101100001010100000100101011100011100001110001001011001001100111111001010101001100011110010111011000110001000010101000100110000000010110011100110011011100010101101111001011100001011001101110100110101110010000001101100100011010010100011000111100100000000010011011000010100110010010100110101111110111100000110111100101111001001001000100010110001001011110101110010000001100011000010000101000011000011010001000110011110111010110001101101110101111110001110010011110000111101111001001101000111100000110110001101100110011000101111111000000000101011111111110100100100100000011010010111110100--------- +110010111111100111010010000100110111001000011011100111100111111111010000110011011000010001010011000100001001111000000000010100001110000000011011111001101000101101101111000110100010001011110101010111111110101110110110001100000000001100111101110010101111011001000001000000101110100001010000100111010000001111010111101110101101111100001100101111110100001101010011000000010011111011010011010100001000010001100111010011000011001000011111111100100111101100110010000100000110011010111101100011011111001000000111110011101000101001101110011011100000010101010000010101110101101010010100001011101011101--------- +100001010111010101111110000001010010010010010010100101001001001011001100001010101100111101011011001011101000011110100010100111110100001000000100011100001100011110110110111001011100000011110100011110110101000011011001001110000110000111010111111011101001111001001001100101101111110100011000000111111000011001000110001101000001100000010000000100001100010011001001000100100001000101100010011101001011111000100110111010011011111100101100111011011010111000111000010110011011001111000110111000101001100110011101110101100011001100110000000011100010001000101001011010001000000000001110111010010000011--------- +001010100001011110000010110000110100011010101101100001001011111011101100010001010001011110100100010101101001110001000111110010100100111001001011001111010110101010110111011100000111101010000010111001111110000001110000011110000000111011001110100001110111101111011110010000011100111011011110010111011011110011011011101111001011011111001101100100010101111010010110010010000110000011101110000101100110010110000000011010110000101010011110100000000110000101001011011000001111000001100011011001000011011000110111001111101011001111011010011000010011101110011010101011100110110100001011110101101011010--------- +110011001000100100111001001010110011110001100111101011011111101000111110010001101001100110111010000111000110000011010110111010001011011110110101000011011000000110100001011010011110001110101000110101111111011101101000111011011110001101100001011100001111110010100101101100010000101010111001001100101010101001110110100001001010010101011000101100010010110110011110101101000000101101011111111111100000110101010110011010111100011100010101101001100000000001101000010110111001100111000010001001011100001100101000010011100101101011101000010000100011001011011101110000101000100101001110011011001111100--------- +ls60cwds +101111010011001001010010100100011010001011111100001001111110110100100001100110001000010010100001001011000010111100111010110100101010011111100010111000000110111001000001010110000000101111111010000111100100100110111101111101000111000101001001100100011111001010000000000111110010001100110010101010001000010011000010111001010100001000101011001101011110100100010001100111001000111110101100001001100101011010011110111101010011100110011101100010001101010010011111010111111011011---------101110001010011000000001011101111110111011101101011010111100001111111010010001001011011000011110000011011110100011001010000101010010000010011011000101010110101001110101011011001100111111001110010101101001011001000110101001000110011100101010101000101100010001110101001111111111001111011101000100001111110110111111010101001111100001100111110101111001011101000100000100010100111000110010011010110000001101000010111110100010000000010100001001101111000000000010001010000111100100110100111010011110011101111100110011001110001101011001111110101111010110011100001010111101011010100101101101101010111111111100111000011010000101111100110011011010001111000000011000110010001111111110101100101111011010000100101100000011001101100000011101110001011000110001010110111011110010001111110111010010110101111101001111000110001001111011011110001110100001001110110010010100001111101110000011010101011001011110100111010000111110100011111011001101011100000110110011010100010111100111101110110101000010101101101010000000001001100100110011110101010010110111001101100010000001100001000101000000010111010110101001110101111011101100100110010100111000100101110100011000111000011000101101100010101000101010101101011101001000111011110000111110001111000001010110111101110010011110110001101010110110010010100101101101100001101100101100001110000001010100111100100000110101001101110010000010001111110000000111110001000111001001011000011101110101011101010110101100101000010011111010100100010000001110101010101000101010110001110001111001000111001011110010100011111110011110110010110000011011011001010111101101101110110100010100000001001001100010100011101000110110100100010000000001111101111100100101110101110110010000101010110000100101010000100100000000010100111001101111101000001000110110010100011110010011010000111000111011011010010000110111001110101111000101001100011100101011101101100111101100100000000101011111001101000010011111110111111110110100011101101101111011100111110110011011101101111111111001001011000000011000111011000101000110110110111000001011100011011101000001100110001010011011111100001111010110110010001001111010111100011111001010110110110100110111010100000011000110110001101111110111010001111010000110111011001110011100010100011100110111000100000100011000111010100010111011100000101001010001000011100011000011011001000101010100111011001001101001010000100010000101110101010001001110010110001100001001111000001000111001111001011010001101011001011000111000001101011100110110111111100100001101100000110101000011001100011101001001100100111000 +101100100100101000000010110000110101100101001110000010101111001000001101111001010110110111000001010110001111001100000000101110101011101001111101111011000011010100100110011100000010010011000101010110000001000000001010001011010101100011011100000011011010000010010000001001110100111000011100000011010001001101110100000111110000111111001011001110110010010111110101111101001000100110000001001110010001000110000111101011101101100001100111010110011101011010001010001101110001110---------111010001001001111100101100111011000100101100110000111101011100010110111010001111100000001000011011110100000000101110010001110101101001111101011111010010001011001001001101000100100011101010110010101010101000100001100001001100110011010011000000101101000100000100100010011111101000110101101111100100110011100010110100011111010011100010000000110001010001010010111001100101010001000101101101101110111000110010101010111011101001010000111101110010100001110000111100001101100001001011110101111111001110010000101100000001100110101110111100011010011100001101000000110010100111011101010110011101001011111000100110000010110011011101010111010111101111011110111101001000101011110111011111111110010101100111111000001110011001011110011001101111110101100111010100001000000010100011100011001110101001100010111001110010010101101001011110010011011000101110111110001101010010101010100100101101110101000000001101111111101001111001101010100000001010100111000101010010011111001001001010100010100010001000100001000000011111101011100101010101011001101101101101011000101000111000110011110111100101001111011100110101000101010100100101001110010000001010011100011001001001110000101101100100011111000011010000100100001000110000110011000001110110001110000100110110001101111000000110001110100001000111100101111111110001011101011100001110011110001111001011100011011101111000000110110001001001110100010001000001110100110100011011111101100011101111100010111001110110001000000100001010111001111001100010110011100100010000111011011101101010100101111011001100011010110001100111011010100101100111100110100011011111100111010111110000011101111010101000011111001010010100101011110100011000100010010010100111101000101101100110110001100100011111000101011011110010001110001000001000000001111001010000001101111000111000001101000000110111000110000011111111010101110101001110000110100010000101100111101001011110111110111110101110001001100010000110000011101011000111101010100010110010110100010000100010000111111011101100000110001110110000001011010101000100101010101001110110010001111011110000001101111101001000100101101100101100011001110000100001101011101000010100101110001000011101010011001011010111000010101000000010010001011001101000010000111111001001111100101001111010001000100110111101111101011100110011111110000111111101100001111010111010110010100101011110000000010100010010000100101110001000101101010010100001001000011001100010010001111001011001101111001101011111110111011000101101010000101101001000100000100100101000011011001011111010111101000000111001000100001 +100101100110100101101011110100010110010000001100111100011101000110000010000011111110010100000001010100001010110001101010111010010111111110000110100101111010001000100010001111010110100011110100000011101010110100011100100010111001110101101001100010110000100001010001111110110000100101000010011011110110000001110000110001010101011000000101011010110011001111100000001100100000001010111000011101011101111111011111011011101110001000100111011011100110101010110110101011101111110---------100001101110100100010111110101111001011111101011111001111111010000111111010101110111011101100010011001001111011111111001010110011000100111000010011010110101111010010011110111110101001101110100010011001100111101000110110111011111101101000101000011011100110101111000010101111000010110111011101000101010000000001000111100010010111110010010000001010101100110010110111100000100110111100001110000001011101011001001011110110100001000011100111111101100011010101011010001111010110111100110001001011010110110001000011011100111011101011011101011100101001001000100100001100101001011100101010010001011110010101111001001000100110011010110100000010001011100000001110100011110111001010011010010101000101111110000101000001110111010000101100100001111110010111001110100010101010001000101000100011000100000100101001011110001100111110110001110010000000101011111011101011010101111010100101000100111111111100010110011000110101011110110001001100000010111000010010110011010001011101111110101110100001111100100100011001110111010010000001101011001010011100111110100011000111011010100111111011101011001100111000101100101101100100011010100100010101110110110011011010000011000011100001100011100101001110011001111111000110001001100111111001010010010000110001100000100110010001101110110101000101011000000100011001101001000111100100111100101000011101100100011100000101000111001110101011101000110010110101101111000010100000000011001100001100111111010110100100011011111100000110000001111101001100010111000101010000000111111110111010010001001000001101100000010000111100011101110000100000001010011011100000011101110111000011110011100101111111001101111111011010011100110010111001110010000000111010001111000100001011010000000111111010011010011111001111011001101000100001001010110011010111110001100101111010110011001101011110100101011010111011111000011101010101011110111000110110010111000010001101011101010001111111100110010001111011010001000100101010101100111110101011110111101000101011001010111001101111000111000100010110110011011100100010111100000001010101011010111001101111001001001111100110101111001000010010000001100111000000111101010101011100111001001000111110100110111101111011111111110101100000011110111011110100000111011000101110101111110101001110101010010110111001010001100110100100110101111110010100010110011011110011000110110001000100111101101001100111101101000100101100101101001111101110100100111110011101110100101001101010010111011001000101010110111000011000101111101001001110100100011001010100110101010101000100111100010001101000010000010011101 +100100101010001100101000100100111111000100100011100100010010011010101010100111010111100010001010011100110001101010000011111101011100110101101010001010010110101001001101100011111101011000001011000111011010101000110100011010101101100101000011001011001100110011100011101010000100110100100111101010011011000110100101111110111100100010111010110010000111111100101000011100111111110000101001000101001110111010011001110000100001010100101110001111100010000100010100100111011000011---------000110111111100100000101001000111100010001000011001111111100000111110000010100110011101011100110110000111010011100110110101011001101000110010101110011011110001110010101110010101100100100000101010100001010000010100011111011000001101011001110100100101110010010011011101100000110001010011111001111101000111100000110101100111001000101000100101110100100011011100111101000001101000011111011001011100010111010101011100001101110010011110011100100111010010101101010111100000001101110101011111110111110001100001101100111101001101100010100111001111100000101101001101101010111000000110110001000001111001100010111011001101101010011100000100011000101000001011001010000000000101101101101111101010101111010000110111110111110000111110101011000001110100111011011001011011111001110011110101011010001110110110110111111100000110000101010110000010000111011111010101111001100000001110011001111011100000000011001101001100011010101011110100101110100001100010010000111011000010001101001010011111001011001000101000011100100110001110110101010110110101111000101100000101011100111011101100001000110000011011111111110111101111101111111000010000110010000011010011011111000101101010000100101110101011011001000010000001010110010101100010111111001000110101101001101111100011001000111010101100011001011101111111101010111011100001110100101111111011011110011100110100000110011110100111000000101100000000101101111011001111110111011101101010010110110011101011010110110110001001111000011001000111001011100111001111100110101011010011010111010101110001111011111110100011011000000001000101101101100011001101101101000011110011101100100100111011001101010000000111111101110101111111100010010001001111000110011111111011010110110100000101111000101111011010110101111111001101100101011111101000100000101101101111011010000100010110010001111011111000101001110101010111110000000101100101101000001111010010101101110101011001010001111010001100010000000110110111011110101011000101110110111111011111110010111000000001110000001010111111010010000101100010011010111010001100000010011011111000111111000011010001100011111111100100010000110111011110101111101001001011110111110011111100101001111001001111100010101101101100000111011011011111101010001000000111011110110000101010100010110001010110100110110101011001011101101011010111010010011100100000011101100000011100000011110011000110110000111100000111000110111001011101111011110110010110011100000111001010001111100110011101001100001011111011001100101101111111010111001001111110111010111100001001110011100001100101011101111010100101111 +101100100101010001011110011001001001111101010101010000111101110111010100001111111111111110011110001100000100011011010111101111011110000010010000100100011000100101101100011000110010101110000100100000101100101001100111000110111111101010101011011011010011100011010011101011110010100000101011011010110111011001111010111110000001000110011000000001101010101101110101110111110111001110111001011010010011001110100111101001101010110001001101110010011110100111010010010010011101010---------001000000101000101110110100111100101000100111001110110011000011110010101000010111010011111000111100000110011110000110000011000110110100110010101100110101111001001100001100001010011000000001001011111011100110001110101001001010010110111000101101100111000010001100100010010110111110001101001010100110010110111001000011111011110111101100010001111100000110000111000111010110111011100010011100101001100001111101010011100011010111101111110001101101010010001111110110110000011110001101101101101100101110100001100101100100100100001111000111100000000110011011000100110010001000000000100001001101110010011111100011000010010110000010000101001000000110101000000100111010000100011100001100110010001101011101010011010110100010100110000011100101100001010010001001001111101010011111111101000010000100110010110101101001001000110010100011101010111110100001010001001010110100111011000010011001110100100001111111011101111000011100011011010000010011000011111011100110100110010000010001100001000110001100010101110000000110101100111010011111100001110001011101111010111100000001110110111101100110100100111000010010010010001011011011100100100101010101111110100100101001011111100111001110101110110010001001100000111000001001101110100011010001110100101010010000000111010110101001101100101111001001111010001010110001101101010010100011000010010110111000000010111011110101001011100101010110100001001100110010110010001100110100011111001100000101001010001111101110010001100110100111101100001000111100001001011000010011000100101100100101100101011011110000101000110110000101101100011100000011110110000101000001000110011110101111011000000001001111011011110100101011010001100010011011011111001101110001011101000100101001010110110110001101110111001110101011101101101101011000110110100011000010101101001101111001010011110110010001010010000011001111100111100010011010101101000110101011011010001101011111001011001001011001011111000111010100001011100110001000001011001110110000110010000100101111100101111010110000100101101101110000010100001001100011100101010001001000001111001001110000111011111010110000111010110101000001101000111010000000100010111101111000101101110100011100000111010010101101010000011101111010101100010000000001100001010011111010110001000010011010100001110010100111001011110110000100100010100111011001110001100001010111011101101100110011101101111001001001100111100011011100110010001011101010100101001101100100001100010010101010100011011111011101110101110101100000111010010100010000100010110101010001010001100101001111001001101100100110001000000 +101000100110000000010110011100110011011100010101101111001011100001011001101110100110101110010000001101100100011010010100011000111100100000000010011011000010100110010010100110101111110111100000110111100101111001001001000100010110001001011110101110010000001100011000010000101000011000011010001000110011110111010110001101101110101111110001110010011110000111101111001001101000111100000110110001101100110011000101111111000000000101011111111110100100100100000011010010111110100---------011101100001110101010110110111011010001110011111001101010101110011010010011111100110100111000110000010010110001100110010110000010111011001001100111010110101100010010000000111100100010001001011011010010011110000000011110100100011100111011110110010010010010110000011100001101010101100000000111001010101011000010010111001111101001000001011110000000111000010101110111010101000111001101100110101101101100111001011101110000011011110100100100110111010101101001001001101100011001111110101001111111100000011001000011001110001010001100100000101100111011110010000001100001111111101101110000101010111010001001110010001001101010101101000000000101001101111100101101011110111110011000110110101101010010000000101111111111110000001001100000011111110001000001111111100110011001100101111001010100010111011111011010001000001011111101111111100111000111100010101011011011101011101110010001101111100001000111101100100100101010110010101000111100010011001010001010000110000110010010110111101000010110011011011111001100011110011010111111000111011001111111100010001011101010111011100110110100101100011111111010111000111111010000100100110100101110001010001110011001010100110110011111001110001101101111001011011011010001001100100010000000100110101110011111111100000101001010110100111110010100001010111000011001101011101010000110101010111000111100110011100010101001101010000100011000111010001100010000001001110101110011111010000100001100001001000100010011001101100111101111010110011011101000011011001111001101110011101110010011101101111101010010000101011110000010011111010000011110111110101010011011100000011011010001000000001111001001011001011100100001111111000001101110001101011101000001000101000000011010011101010011111100100011100010110000111001110101001111100001000110010010000100011000011110001001110110110101001010110011101101110001000111010001101001001001000001010010110101111001111010000010100010110101001110000101100101101001100000010000010100101110000001001101010100000100110000010000010100110111000110101111111011011101011000010010111000011000010001010011101000100111111011101001001000100000011110110110011001011011101001100010001111100110010101001110110110000000010010110010001100111010010101100000000100111110110011111110011000101101110111101110110111000001111000100101000011110100001001110010001100010010011111011001000000100011110010011001000001010100111110011010001110001001010101101010101110111010111011001100001000100111101000100100001010001110000000001010001101011100101110000000100111010011010001111001100001000100001011001100100 +010100001110000000011011111001101000101101101111000110100010001011110101010111111110101110110110001100000000001100111101110010101111011001000001000000101110100001010000100111010000001111010111101110101101111100001100101111110100001101010011000000010011111011010011010100001000010001100111010011000011001000011111111100100111101100110010000100000110011010111101100011011111001000000111110011101000101001101110011011100000010101010000010101110101101010010100001011101011101---------101011111101000001101001000110111111000101111100001101000100011000000010001010101110000011011110011101000011101100101110011010100100011110100011101001011110111110010011110001001010101000011101111010001111001000001111010111000100110001011100100010100011001011001101010111000111000001001101000110100001101100110111111001101111110110001101000011001000100101001110000101011000110101100111110110110011110001000101011111110101001010100101010001011101011010100010100011110101011000101011110001000011010011101000001101010111100011001100010001111111110001011001111110011001011101001011001010111111111000100000000100101011110000010101001100010100110011100111000100101001111110001011001001100100110111000110100110100001110001111000010001110111101010100000110010101010011110110000101011111001010101001011101110101110000010110100110100011011010010010110110011001011110100010111011011100001011010111010010000111011010000010001011101001010101100000000001011000110011000011110110011101110010011000111011001110101010101110111011010101100110011011100100000011100010110101100011001100101101011100000011100111010000000101111100111101001010110010100011110001111111101111110100111110100111110110110111010010000001111110000010110011000110001001111110000110111111011011010110001110000010001100111111010100010011001110011011101101001101011001001100111011000000011001000011001001110101111100001011000110000010110101010010000110000111100110110111001101001100110110101110000100100010011011111010011110111111001010010011111001111101000011101010100101101010000100011101100110001011001110100011110001011110111010100000010011011001011000111110010110010101111011110000010000111100101100010100101110111011111111010110011010001011110000110011101101001010011001101110100011110001111111011101011111111000111001010010001110101001010011110111001011110000000111010111010001100110101010101101101000100001110011101010010100110010001100011110101111001110011101010101010000010010010100001110011101110101010111000000001101001010011000110011101100010000011010100111111101100010001110000100010100101000101101110011001100111101010101001000010001110011111111100010101111100010001110010101101111010000100010111110010100101101000010011011000111010010011000001000011001001101101110111011110101011000101110111011111001101010101011110101110011011011010011000101010010001111110110100100110111011100011010000001101010111111011111111100001110100100111111001001001100111000000101111011001000010001101001010110110001011100101011100001110111000100001011011010011001101001110110100 +100111110100001000000100011100001100011110110110111001011100000011110100011110110101000011011001001110000110000111010111111011101001111001001001100101101111110100011000000111111000011001000110001101000001100000010000000100001100010011001001000100100001000101100010011101001011111000100110111010011011111100101100111011011010111000111000010110011011001111000110111000101001100110011101110101100011001100110000000011100010001000101001011010001000000000001110111010010000011---------110100111110000101110001011010011001100010110000001110101111001100110000000000011001011011111000001101010001000101111110000000100001100011100011100100111100111100010100101011000110010001010110110000000011010000010110100110010011110101000100010110001100100101100101011110110010101110010111001010010100000001110111000100001110100000111100011111010101011010001011110001001011100000010110011101110001111101001111010000001010000010100100101101001001010000111000010111000111011000101001111110011001111011001011100001000000101111011000111010100110101111110101001101010000111101001010110011101111111111001111111101001011101011000010000011011010000100110101000001101011101101010001000100110001010101001101101000101000001111010010111100001010001011100011010110000111000111100001111001001110000111111111110100110100001011101101100010100100110101001010100001101010110011101011001100000001111111101101011101111010010110001000000010000101110101000001011100101000000110001010111111011001011110111101011110110101100001101010111001010110111101111010000110101101110010111001000001011111000000111000110010110000101110111110111001111100100100100100111000000111001001010111001110100111111111100101101011011101011100101000100010100101100101111010100011000010111010101111000111110100001100101111110110010010101010111101011001000011010000101010001110000010011001000110001101100011100101100001101000011010100001000000010110000100110001111000001100111111010101100100111001110001000001100011000000100010101110010110001011001111010101010011110111100101111110110001010100000101111001101001000101101000000001100011000110110000001011110101000110101000011100110111010100100100101110110011010101100100100110101110010100000001000011001101001100001111000101011111011101110001000101111001101011101100000110111110111100001101101011000011110111001010110110110010001001011111101111100010111100100100011010111010011101001000101111110100100101011100001000110001011100101111101101110001011110001011110110011101100100010000011111001111011001011001000000111100001000001001100011011010010011101011001100110101101000101001011110010011100000010100100100110110111100011000111110011011101010000000110111110011111100101101100111010110101111100101001001101101000001011010011100111101010101011011111110011111110111111010000101010011100110111000110111000001101111001111000111010010010010100011000111000000011011101001101010000110110010110110111011111110101001000001011110101001010101101010011010101001011110100101000100111011011100100001111011011000000100100101110001000011 +110010100100111001001011001111010110101010110111011100000111101010000010111001111110000001110000011110000000111011001110100001110111101111011110010000011100111011011110010111011011110011011011101111001011011111001101100100010101111010010110010010000110000011101110000101100110010110000000011010110000101010011110100000000110000101001011011000001111000001100011011001000011011000110111001111101011001111011010011000010011101110011010101011100110110100001011110101101011010---------100010011111100011011111000000000110000001011010001111100010000011101100010101000110101110011001111111111000101011101000110001111001010000001110100111100100000010000111001010101100111001001100011011101100001111001001001101010010011100111101011100011011010010100000101100111000110000111001011011110101110100101110000101111010001100001100011001100101110001100011110000001101101010010001101011000000110000001110000010100001100001110001000000001010001010011110001000011011101110111110110111110000010100101111100011100000011000011110111101000111110000000101110011011101111111110010111110001100001101100100000000111010100001001101110000111000101001111111000110001000110011000100000000000001100000101101100011101000100110111000000110001001011101110110010001111100001001110111111110101000111000001100100011100101110000001110101000001101001010000001000111101000100110111011000000000011001000111101111000011001010111110011001100111001101001100010010100111000011111101110100111100100001100001111010010110010010010111101100110000000111111100111011101001110000111010011101010110110110010001011000010001100000100110111010010100100100100100011110110100100001010101000001010010011011101100100101100000010100000000010011000100101010100011111100101100100010010001000111011100100001110110000001111010010010100010000111000010011010110110010010111111011101011101000111110101010100100000010000111001001000101111001010100110110001001110110000001000011100111010110110111010011100010111010011101101010000100111000100000011110010011010100111111111011101101110111011010000100100100101100001011011101110001101000001000010001010011001000100101101000001100011011100111110000000110001010000111011000100111010010100101000011111011010011010001110010000100101010000000000111111101100110001000100000110000010101110010011001001110111110110111101010010111001000110100000101011100100101000001001010101100111011111100111110001000110011111100101111110001011110101010111010110110110111110011010011110100000101100001100001111101000011010100010110100010001000100011001000001100110101001000011010010101100110001110011000010001110111111110100101000010011101000101100010110010101010011111011110111111010111000011001100000100001001010110111111010010010011000011100110011101101111101111100011000100101000110001111010100010011101100110010001001100111111100011001110000001000010001101011000000010101000001100111111111011010001010001100110110000011000001101000101110011000110110100010111111110111111111101000000111111010111000101110010100101011000011100001000100100111100 +111010001011011110110101000011011000000110100001011010011110001110101000110101111111011101101000111011011110001101100001011100001111110010100101101100010000101010111001001100101010101001110110100001001010010101011000101100010010110110011110101101000000101101011111111111100000110101010110011010111100011100010101101001100000000001101000010110111001100111000010001001011100001100101000010011100101101011101000010000100011001011011101110000101000100101001110011011001111100---------101101000101011000000100111010100000110111011010010100010011101100011100101011011011010101110110101000110010001011110111110001000010011111011110001010000100010110110000101111001001101110010001000000000000000000110100100101000110011101101000010011111111110000110010100010000010010110000011101110010100011101011101011001000011100110100001011011110010010000000011100100100101110001011110111001010110101010111001101011010000010100100001000001010001010000110100011110001000011000100000111100011000111101100111010100000011110011100010110010010111010101000010010111000111001110101010011011101000101110000000000000111000111011101110101010010101111010111001011111011101110100011001101001101011000101000001000101101011001001010001011110011100011000010010110000110000010111101111101111110010111110111010001000101110011100010010010011111001110010101101100101001110110001100110101101111101111110011110101110000010111001001110010010110111001110010001110101011011110101100011010010000100010010100100001011111111101111000111100111101100010101010101000111100011010110110010111010111001001101001011001011101111110001111001110100000000001010011110100000110010000010001010101010011101011110101001011110100001000110111001001111111001100111011111000011001101010100111011010010101010000101100010101110011111010111011111010011101011111111000111001000100101001100111000010101001011001110111000100111101000011001010000110001001001000011000000010101101111111010110101111010111011101001100110010100011101110000110011100110000111011110101101100010000101100111001010110111001110010101011111111100101100001100111100110010100011100011111100100101011000101000001000010100101101010011111101110011010110000010000101101101011110000011100111101010111101010001100111101110001100000110000110011101011011111011011101100011000110000000010111010001001001000011100110111100111110110000111100110001000001101011101101011011011100100000011010110101001010111011011100011010001001001110000011101100111010110000010010010000001001000010110101110011110011100111001101000101111000010000010111001001111110111010011000101001010100100101000110110111101111110100011111000010010100000100001111101110000110000010100110000010101100001100111100100101100100001010000010010111001111100101011000110100000100111011010001100010100100001000110101011110000110100100011111100000011010010110000010100011010111101010101100011011010110011101100110100000101101110100001100010001100010010001110011100000000000001111010100110001101100010010000011110101110101001101100101011010111100001010100101 +ls120msgs +001010011011000100100000001111010010010011111100101110110110101110101111010110111001011000101010001001100111011010111011111000110101011011010001100100100101000101101111100100110111011100111110101100111101010111001101110010100100110010100101110001000010110100100101001101010011110100011111100110000101000001011010111000100111110001010111101101101100000011110110011101100110000100111100001010010101011101100010000000100011000110111000000101101100101110111000111011111001001000111000111011111100101011011101100101100101011011000101111110101101000010001100110100110100010100110000001011100001101001000100101100010110000001100000100101111010110111000101101010100101010010100000011000001010011011010011100100010010101001001001101001111101000000000001101010110011101001011111110110000101010100111100000100101111101011100011100111000110110100110000100110000110100001010111000010000101110001101101100001110110100000111100110001001000010110011011001101001101111100101011010001010001011101101100100101101111101101111011001011010110101111111011111101001111010101101110010111001110001000110001011100010110011101011001001010111110010110110011110101111000100001000101111011100010011100011100101111111101010--------- +011110111001001110111100001111000111000111000110100010011001111000000000111010010000100110000100010001101111001110010101010111110111110110110010010110010010001001011011101011011001011000010000010010101000001000001101001100101111111100011110011010000001110111111101000010110001010001001001111011101101011101000111011001110000110100101111100010101100010100101110100100101111011010010101010001000010100101111110010100011100101000010100000101010000110100000100110100001000101011101000110101000000100000101010001011001010000101111000011001011001110100110110110110110011010010010110101011001000101101110000111111111011000100111110101000011101001100000010010110010000100011001110111011111111011100000100011100101110110001000011011111001000110010011111101010011110111100111000000101110110100100010111011101100101010101010010000100010100000000100011100001100110010011100001001101111111011101100101111000011011101001111000011000010110001101010000001111011011000111011001110100111001101000100101101011111011000110001100100000111101010110111101110010110110110101111000011111111011011110110001010010101011000001110001100110100010110111111101011100111110010111110111100011110011101010000010010011010011000--------- +110110110010000101111111000111100010110110101111110111011111111101011001101011100011011010100111100100111010000100001001000111001010001000011000100110110110000000001110001001000001101101011010001001010010111001111110011111101010110011001110000001110011001110000101110011000010110111111111100000001000001001110010111111111010011000101011011011100110111001110111001101111000110110011110001010001101011010010101100001110001010101111011111100100010100100111100110101101110000101010000111000001110100100010100010101101101011111001100010101100010101101001110001100111111100000000110011111011111000000100010111011101111011001001110011010001010101110110000000101001010010000101010001110101110111101001011110100000110110001101001010000010111100110110101110001110100101101010000000010001100010101110000110011110101101010111011010111101011100111110011011011101010101101011011001001000000001010010100111111000111011000101000100100001100000001111001111001001111111001011110001101010101101100011100010010000001100011010010101101100000000000001011101101010111100001010010111010010101011010010111101010000110100010111101100101110011010100001110010101001000010110011101000011000100100101111001100011101111110--------- +010001011011101011000101111000001011010111111011011100100110111110110010010011011010000011101101100011111010111101101101101001010010111000011010100101001111000101011101011111110011001101010010110011100011101001000001101011001100000001100011011111010110011111100100110000101000011010111010010000011001010101001101111011100011001111001101010101010010000110000010011000111011101111111010101111110011110101101101000011110101101101101011001100011100110110000101000010110000110011000011101000101000101000100010010100010010101111111001101101110010011011010011100101011010000110111100100001011101001000100010111101100111111010010000110100101101111100010010110000100000111100111100111010001111010010011110000000101000001010011001011110111000100000000011101101101010100001010101100010010011000101100001000111111001000001001000111101111100010100001110011000010101001101111000100010011000110111011110000010111000010011010110011110000101000000011100100001001001110001100100101100111001011111110011000110011001000100110111100100000111001011001111100110010000110101011111011000100110000010110110010010011010000101111000100010001101000110010001110001110010000111001100011011010110000011101000110110011001100--------- +111100000011011000100101011111101010111001000100011101000011101101000110100001100110001001001000011000101101011101000100010011000101100101001001011000011010001110001101100111001000000011101101001111110110000100011000100000000001000110111000100001110010000001000010001111100110101110111000110011010011101111111110101001000111010010111001001010110011111101001100010001000110100001011100100010010011010110101111011001101011001000011110100111101011110100111101111100011100010001100100010111000001011101000011110100011111100010001111001011011111000110101100111101010000011110001110000001110111101011110001111110110000110010111001100101011101111010111111000110011010100011101011000001111101101100101100100000100000111101001111000100011011011111010101101010111110010010010010101011100101011011010001110010111000000100101100001110110100010100010100110110001000110011001111010100011001011110010010010000100001011101100011100011001110000010100100001011001100111011000010010101000111111011011100101001010101011100001001010000011110011010000001011101001110111110100001011100001101000100011011011100100110100010010100001000000110010010101011010011011101000000111111101010011110101110001100011101111110101--------- +111000010110101111110100011001011110110010010111111010110111100000011101110010101011110101110010110100010000100000010000001111111101101101011011111111000101101100101100101011110100010010111110101111001011010111011101011101110011000001101101110001110101001100111001110101101000101101000000111011100000010000010100011000101111101100010000000010000110011110111101111001010110011101011100111011000101001101011110011111000010001011100001111101010110110110100101111110000101000100001111000100010100110010101110101100111000011001011101010010111001110110010101010100010101100001010100010100110101101111100011100101100001110100000100101101010100111011111000110110000001100110111010101001110011110111011001001111010011011101011111101011011011110110101101000001011000001101011001000110101011011111100110011100001000011111000101001000001110010000100011001000000000011111001011011001110001000111010001110001100101010110100011100111101010011110111001010010001110010111101011110110001100101000001111011001110100111001001111000101001101110100101101110000100111001010101000010111111101100100000100001011111101000110111100011110110000111000111110010110011111100010100000101101001010110010100010100001100011001--------- +100000111100100000001010011101000001101100110010000111001010101010010101100010000011000001010111101010010001110101101011000011100001011001111100010001111110010000001000111011010010000000110001001100001100011000100001001110111001010101100000010111110001011101010111000100101010101101111010100111110011001000111101011010001111101110011011011100000001111001000100101011001001000111100111111011001111001100010111000001101000101110011100110010010111111110110001011011000001011011010000100101110001101111111101111100000010001000001110010110111001100110111001000001111010111110110110110111110010100001011100011000111111111111011001000100010000001111101010110010101101100000111010111001001101011111010111110011000100111010011111001101101010001010000110101101010100111001110010101010100111101110110110110010011100100010110110000101110111001110001010101011101101110010101010000101000011011011111101001110000111011001100100101100110111010001001010101111001101011111100011001010110101100011011100001101110001110010110101000000110001110111000001000111001000110010001001110101010110100000110010001100101010100111011111000100011111110010001111111011100010100100011010111100111111001101101010101100110010000--------- +100100111110110000010010001001111001100101011101110011101001011010010101000100110001001001000001101010011111011101110011010001110110000010010010010000001111010011000010110110010010101011110100100001000101010010111110000101000101101111010010011010010101010001101010110000100111010110001001111101001101111000010001001010101000001000101110101011011100011001100110001100111101110011010000001100001010100010001101000111000000000101100100101011100000010101100111001111101001010010101010101101101011010100000001100000110000001101101110110101010100101101111010000110011010001110110111101000010000001011001101011000100100110011001011101001100101100000101000110011111001000000001001101101100110000100110011100100100010011010110100011011010000101001011110011010000011111100000010011101011011111011111011100001110100111110110111100011001010100101100110001100010010011010101000101100100010001111110101110100101001101010101110010100100110011000100101101101011100010011000010001110100111001000000011111101111001100101100101111110000000011111000011001010100100100100101101111101101010000000011000001001010000010101101111100100000010011111001001001111010111101001110111001111100010010011100111100010101000100--------- +110100001010111010000111111010010000001110000110111010001110101100011100000101010111011101000001010110101110001101110101101110011101100110000100110111010110001010010110110010011100010000001001100011100101110111110111001110100101000100000110000110100011101111001111010101110100110110100111110001001111100010001100001000110110101110110110100000010000011000100111000010110001110101010000010111111100001110111011000011100000100111110111011111011101100000001011101000010101110110001000111111101100110111010101010001100010000001110101111010011010011011110111111111000001101001101110001111001000000101010100100001111111101100111010001111011010001010010011010110111011010011110110110011001011000010100101011000011011110110011101001111100111001000001000010000000001000100011001000011101101001010000011100101110100001011110101100100101011011011101011111000011001000011011010010000111101011000000111010001100000011011111000010101100101011011010100101010010100011110011111010111111000110000111100101010100011111010110011101000000001010101010100100011100001111011110001011101011110110001101100101100001100011110011101010111011101110001000100011001101000011011010100010010110001011100010111001000110110001--------- +111111111010110111100110010011100010110110000011011011111110000110110000011110000111111000010101111111001101110100010000101100101111111000000000010001100010011001001011110110110110110001111011011111001011010101100001110010101110101001110001110000000010000101010101100000011111111011101100001001001011001100001100111011101001110110011110110111111111111110000111010110000000100000101100110010101100101000001010001001110011101111001110001101101110111110000001100110101001111001101111010001111001011001010011100011010000010100111100100110000001010101001011001000110001010101001101101110101101110001100011100111010010110100000011010011100111100110011010100011111111010001111000101010001111111101000011111001010000111110000111101010010110101111111111010010000110000010111010000110110100111000011010101010111100011010101001111111010101001100110001100111101011111100011111010011001011011000010111101100111101110101001001001011011000111111010001111001001110101100110011101110001010000001110100001101010011011110111000011001101011110001100000101111100011010000111111101111001000000010101000011101101000100100010001111000110101101011001011011000111110111010000011000001111010100000001110001110001100000--------- +ls120cwds +110001000010110100100101001101010011110100011111100110000101000001011010111000100111110001010111101101101100000011110110011101100110000100111100001010010101011101100010000000100011000110111000000101101100101110111000111011111001001000111000111011111100101011011101100101100101011011000101111110101101000010001100110100110100010100110000001011100001101001000100101100010110000001100000100101111010110111000101101010100101010010100000011000001010011011010011100100010010101001001001101001111101000000000001101010110011101001011111110110000101010100111100000100101111101011100011100111000110110100110000100110000110100001010111000010000101110001101101100001110110100000111100110001001000010110011011001101001101111100101011010001010001011101101100100101101111101101111011001011010110101111111011111101001111010101101110010111001110001000110001011100010110011101011001001010111110010110110011110101111000100001000101111011100010011100011100101111111101010---------010011110101011111100110110110101001110101110110110011001010001100101000110010101111011111011101111101001011011101110011011100111001001000101001011001101011011000011111010011011111101010000111011110111101100011101000010100101001000001100010110101101110110010010101010101011011000100001010000110011011010100010010000111011100011010010110101010111000010001011101111011011001010100000010110100001010101101111011111000001000001111100101010110110111110000010101000101001101100010010001000101011100110100111100000110101100011110110001100111111101111100100001001100001110010111000100000010011110010110110101001101111111000001111001110111001100001001010100100011001010110001010011111111000000101110101101101111111110101100110110101110101010110110111111010001101011011001000010010010101100001111011000001101010011110011110101000100101001111001010000010011010010110110010010010000001110101110100000011000000111011101001111101101000001110011111110111110000000110101010011010001011111101010001011001010001010101100010110100000000011011001010001000111011010100110100101100011010111001100110011001000111110000011100010001100111000101011100011111111011111001011111101110101011010101010110100011100000101001011100101011000111011001110010100010010101101010011001010110000100000011100010000111010110011100011000001100010001000001011110111101100000001110111001011100010110111010100111000000000011110101100110010101110001001010110110100000011000110110111100111100101110011000100000001110100101101101100010011010011000010011100100010000000001100010000100000010101110111100000111000011001010110011110111010011001101101111100011111000101000001011110111010001000101000011010011000000011110110011011001111000001101001011111011111101000000111011001111110011100100101101100010101010111111110111000111100100111000101001110110010000101011010100110000011001001011001011001010011001000101011100100100010001110111100001001001111100110001100110000100100001111110011011100110000110110011001000001100111001001000100010101110110110111111000110110010011111111101011000111000011000001110001111011100101011111110010000101101010110110100111000101001100010110100111111001011001110110100000010100111111110000010001000000101000000011111010001110011010001110101101011111111000110111101111010100101111011001010011111011101000111111110111010110100110011011101011110010101001100111101101000010000011001111011010000101001100110010110011111101011000100010101100011111111101110010010010000101001100001110101110000011101111101001000010011000110111001101001101000001111000100011111110100000010010001110111111001110010110010011101000111010101110100110111000011010110000000010110011101001100000011001110010101101101011111111000100001011101010011000011101101010000011111111101100100110101110110010001110101000100100001010010001100000111001100010010100110000001110100001011111010100011001101000100111100101111001101000101010110100011110000111110101011011010011111100110100011000011010010110111010011101111110100000110001101111011110000010000101110111001011011101011111101101111100011100000010100111101010101001110111000000100110010101011101111011000011110000101011111011000111101001011101001011111011100000110000100001100101000100101001111111110000000011001011011011001000110110011001001010101111000010001101100111001001011101100101010111111011000111010011110101001011001000000000100001000011101101110100000001100001111111101100001001111011011101010100110111000111111110011000001110101000100011111011011100111001101010111100111010110100110110110101000001011111111111001011011100000010100000111010010110001011110110010101011001011010111111101110100110110101100011101111110011011100010011001010101100011011000010011010001000010000010101100010100111100111011110010111110000001100010100111011101101101101110011111001010011000011111010001001010100000000110110011011101001100110010110100101011110111001100110000011000111111110100101010110000010110110001111000101101000110101000111000011100111001010110111110011000111000110010110100111100001110111110001100111010111001001100001011100101111111100001011111011111000001110010000010100010000111011101111111110010000100001110100110011101011010000100110010100100011010000110010011111001111110100111011111110001010111101000100000110100110010110101110000000100101101100110010011000100000100111010011011010011000011100111100010111111011111110001001001101011100100010110111001100000110000101101101001100001011101011001111101001000110011010110100100010100011111110001100100110110101100110100001111110000110000110001100001111010111011101010010001010000011001101000010111100100000001000000101011101110110010010100111100101110011010111111111000011010111111101111100011110000101101100001101101011011010111011101011101110000000000010111000000010101100101101110011110111110100101010010011010110001110111011101111001010111101010001111001110001011111100100100111101100100101000111000110000010110100101011001010011011111000000111000101011100110110101001101111101110111000010110001010000101000000100100100001011001000100100000000111100010111010010100010000000110101000111111 +011010000001110111111101000010110001010001001001111011101101011101000111011001110000110100101111100010101100010100101110100100101111011010010101010001000010100101111110010100011100101000010100000101010000110100000100110100001000101011101000110101000000100000101010001011001010000101111000011001011001110100110110110110110011010010010110101011001000101101110000111111111011000100111110101000011101001100000010010110010000100011001110111011111111011100000100011100101110110001000011011111001000110010011111101010011110111100111000000101110110100100010111011101100101010101010010000100010100000000100011100001100110010011100001001101111111011101100101111000011011101001111000011000010110001101010000001111011011000111011001110100111001101000100101101011111011000110001100100000111101010110111101110010110110110101111000011111111011011110110001010010101011000001110001100110100010110111111101011100111110010111110111100011110011101010000010010011010011000---------000001110000101100010010111000010101111011000001110110010110011110001011011011101100000111100110110000001110110001101011010101001101100111110101101101100010100110011101001000001010100001011000101000001011100100100010010101110011001101011011101110111011011100111100111111001100101011111110111010110011111100111100011110001100110111100101010101010010000101100000001000011100000110000110001001110110010100110011111010011110110110011001000011001010011111001001110011000011100100010001001011100010000011111111000110110011110000001111000100000010110111100101100100100000011000111100000011100101001001010110001100110111101111100001111100111011010010001001111101110110110110011011101110101011111001100000111111101100001001010101100011110111011111011000111100100011011111111100001010000111101010011001111001010100110101100100111101100001010010010011100011101010011110010110100001110110100101001011111111111110000111110010011101110100011100101000110101011100011101111101100001111110110110111110111100101111100110100101000000111001011010010001010100110011111110101001010110000100100010010100111100010100000110011000000001010001111110110110110011000010101100010100000000010000110000001100000000000010100010000101100111111100101101111111111111001000101001011101001010010001110101011110111111100000010011001110001111010100000011100010010010111110011011101101101011011000110011101111101011110101000010111110011100100010001000101111011111100100011010010000000111001011100001010010110101011011001100011000110010101001000010100001010010100011110101011101010011010111001000011111100001011001110011000010000001101010100101101100101111000011110101101100001001100101011011010100110010100010000000010101011101101100101010000010001100100101011101000000011101101011010110001011010000110100110111101111100101110100011111110101110000111101111010100100100001010011100001110000100001111110011011011001001111001111101101101001000011000011101000010100000110001111011110111011010010101110100100001010010010010011111101100001000111000110111110111110101010011110111000100101110110000111010110011110100001100101011101000010111111111011011100001100011110011011001001110110000001010111010000011111010000111100000011111010000011000011101101111110111001111001000001001101010111101011100111100111101010011010001001011100001001010101011100001100100110101001011001111000000010111110011110110101001011101101111001110111001101000111010001010001101001100001010001111011100000000001001001100110010101000110011111000110110011101010111000001101110011100011110001010010000101100110000000100010000101110001001101000100011110010001011010001000101010110000001111110110001011110000111110011000110010101111110100011101111000011000100000100000000000110100000111000000001011111001001100000010101111000000000111000110011001111010101011100101001101011101010110011101111000111110011011000110110100100011010111110110010110010000100010011000001011011000010010101111000001101011111111001011010101111000001011100111110100101110100001000110100111110110000101010000001110101101001000000111111011101100001101010001000001010000011111001111110111000111010110100000011011011101110111111010001000011001010011011101111010101010101111110010101101010100100100111011110111000000001110100000111010110111110111111011001000100000011111000011001011100000010011011011100100010001010000000010001011111100100101001100001000011000101101110011100010110110110010110110011111011010001110011001011000101110101011111101110011111011000101011011010101000110110101100011010000101000111000111011011110100001000101011000110001001111001010100000100111011011001101110011101101011101011110110011001010010011110000101001110011000101111101001010110000110111110000101001101101011000111100001101100011001010001110001100111111100110000100000011101111010001010101001100100010000110101011110110000011001100011100111010101001011111100111011001101101000001010001001111010000110111100011011010010000011010001111010010100110110111000110000110110010111001100110110110110100111000101001001001001010100101010101011001000111110101111111001111100000011010011110000100101100111001100101110111010110100111101111001010100001100000111011011111001010101101001100001100011101110001000111000011010100101110110001110101110011010000110111110000110111010010011110000111100010011110001000111100001101100001001010110110001110001100111100100101100100010000110110100000010010001001111011010000010110100010110010111111111000000111011001111001011001011101000000010101001111111000000001100011100001101011000000101111110010000011110010110101110101011001111010000011000010110111101101100001000011001011001011100000011011110001111010001010011011110001010001100101101011100011001111010101110001100110001110000001011101111110000111110011110100100000110010000100001100111011100100010110000100101001110000011101111001011010000111101000010000011010110100100111111110111101000000111010110011100101010100000110010010100111101011111011111010000010010001111011010111010110000100011110110100101111010010110011011010000100001001100000110101010001101000000010000110110010010100111011 +000001110011001110000101110011000010110111111111100000001000001001110010111111111010011000101011011011100110111001110111001101111000110110011110001010001101011010010101100001110001010101111011111100100010100100111100110101101110000101010000111000001110100100010100010101101101011111001100010101100010101101001110001100111111100000000110011111011111000000100010111011101111011001001110011010001010101110110000000101001010010000101010001110101110111101001011110100000110110001101001010000010111100110110101110001110100101101010000000010001100010101110000110011110101101010111011010111101011100111110011011011101010101101011011001001000000001010010100111111000111011000101000100100001100000001111001111001001111111001011110001101010101101100011100010010000001100011010010101101100000000000001011101101010111100001010010111010010101011010010111101010000110100010111101100101110011010100001110010101001000010110011101000011000100100101111001100011101111110---------011000110100011111101111100100101110111111101101100010101001011110010101101011101011110010101110001000101011010100110100101100111101010001011100001000000111000001010001000001111011011001110000010001110101001011011111100010101101101011011111000000111000011101010000011100111001110001101010010110100010011111111000000101111011111011100000110001101001010101111100110101111000110110110100100110111011001101111010011011110011001001100111101011110000000100111001011101111100000000101000001010110000011110001110011100000101001000101101110010010111110100101000110101100000100111110000100000001111010110111001100101010110001100001111110011000111100011010101100100101110111100000011101000011100011100111010110101111001000011011010001100110100101000000111101000100101111101100110100000001100100110100110110111011111001011111000110110001010101000101010101111010000100011010001100011110100001010001000001001010100011100100100010011011011001100001111001100110100010011000101100111011001011100011101011100100101101110001000011001001000010011110011010101111100101100000000011001101010111001001100010100011011100111010010010101101000000000001000010010110101111000010100010000100100111111110010011101010111000100101000011100111001111011110001010001110100101011000111101111100001111111001001011100101101100001111001000111001011000011010011101010010100111110001111001101010111010000101010011111011101101010001111101011101110010011101011110110000010000110110100010100110100010100101110100111111000000001101011111011100011010000010001101110100011001101000101101101101111111111010001000011100100101001010000100101000001101111010111011000110000110110101000011111000010111011111010100000100011010001000101100011101111110011100111001101011011100000000000011110000111011110101111010101101011100110000111011000110101110010010101001001001011110111100001110111101110110010111000110101111100101001101000000011001010111110011001100010010011101011011001011110110100110011010110010000100110010011111100000011001011100110010011001011100111000100011010100111100111110010111011111001101010000110101100111011111110111000100111100101110111111111111100000000111101010001000111001101111000101110100001000111000001100100101000110011100001111010111101001111011111001111111110111001010001000001100000100001010011000000001111100111100010101110100000010101000101010110010110100111011101001010001001011010011000010101000110100111111000001111111000101101111001010001001100010001111101101011110110100101110111110111001011110010100110001110110010101110010101000110011010011110001110010110000001010001100000111011010010011001010011010000000001011010000001101100111101001101110100100001010101110100010111101111010100110110101001110000010010010100111111011000100011101010110111001101001001011111000001100000001110011001010110000011001100111011110110001011001001111011011101010011000010101100100000110011011011001011010100001101000010110100000110101111001110011100011010000101111000110001011011100000110110101111101000100100000000011111101000111101110111100011101000111011101110011010010011010110100011000100110011100101011101111101100010101010100011101000100000000001011000110110010100011010110111110111100000101010001110111010101110010100111000000101110101010100000000010000000101110111110001111101111011011111011101111100001111100001110110001101111011001100001110010010011010011011000100110001011101110011100111110100110100100100011001100000001001000111000100110110000011000111010110101100101000000100100100001110001011101001111101011010101100011100111000010010111111001001001000101111000010100010001110111101010110101010111110000110011101101001010010001010000101000011101010000001110011100010111010001011101111000010111010111011011011101101101111001001101001000111011010110001110011000001100100101100100101110001110111000110011100000100111100111101011111111100100101000100000101100010010100101010010110111100101110010111100000000001110010101001110110001000011101010110000111011100000100011110110110110000000101100011100101110001111101001100000101110110010010100101011111010100010101110111001001101110111100000100100100101010001100011000101110000110010111110111110101100011111110000000000011000011011001001000011000010101100010000010110010110110001010110011000010010000101011110111000011000010000000011110010001110010011100101000111011111011100110100011011111101110000110011100110001100000110001111100100011111011110011011100011111010000011111001011111010000110011101100111000011011010001010000111001110100000011100100011000011100001110111000110110000010001000011010010100110110110001001111110100110000101001011111011010000011001000010100101000101100100100111100011101111100001100100100001110100111111101010010110110000001111000010011100111000011010110101110111011101000111110011011101010011111110100101001011100011011001011001101000001101001001111010011000101000010111001110111110010001111100010100011011010111011000110100101011001010000100100100011110110110111011110000110111001011000110000101010001011011110011110100111101011000110111110110000000100000000011010010110001101001010011010111 +011111010110011111100100110000101000011010111010010000011001010101001101111011100011001111001101010101010010000110000010011000111011101111111010101111110011110101101101000011110101101101101011001100011100110110000101000010110000110011000011101000101000101000100010010100010010101111111001101101110010011011010011100101011010000110111100100001011101001000100010111101100111111010010000110100101101111100010010110000100000111100111100111010001111010010011110000000101000001010011001011110111000100000000011101101101010100001010101100010010011000101100001000111111001000001001000111101111100010100001110011000010101001101111000100010011000110111011110000010111000010011010110011110000101000000011100100001001001110001100100101100111001011111110011000110011001000100110111100100000111001011001111100110010000110101011111011000100110000010110110010010011010000101111000100010001101000110010001110001110010000111001100011011010110000011101000110110011001100---------001101011001111110011010001011101001110111011100001000101110110010101111110101011111010011111000101110111010101100100011101000010110001110100101100001000110010011101000000000101000101110110010000100010001011101101111011001101001111010100100100011111101001101100101100011110011000001110100000001111111010110001101011011000010111101101010000111011011100000011000100001001101100011010010110111010001100101001010100001001011011011111101100000011010000001010011001110100010000101011001000001001101000101101010111011001111001100010101011100101011010000000011110101010111100111101000110000111000101001110101000111101010001001000111100000110010111101011100110010001100100001101000000110101111110001100111100000001011100111000110110010101101110100001011111010110001000111110100001101111001101111110000101010010101110011001101011111010011000110101111001000000001101110011111100110000101001100011000101101011001111010100010011010000100110100111001110100011000001001101110111000011110010111110111100110100101001000010010100101100000010110001101000110111000001100001101110000101100110111110011000100001000000110001100100000101110010001111111110000111100000110011011010110010000110110001110001111000101010111100100000010111100101011001010110100000011110101011000110011110011110001111101101001101100011010101010010100001001011110100010011111010111100000001111111110111000000010010001100101110100010010101101000001101001000101011001001010011110001000001011110011010001100100101100110101010111111011000111011011110011101100100101101000001111011011100110111000101011111010000101000011011111100110000101110100110110001110001101010101101001001000101000011001011111001111111001100000111100010100000111101110111001100110001001000111100111010010101011100110110101001110100001100011001111100100100111011101011110100110001001100101001000101010001100111100011110111001111110100010111011010010000000010010100001110000011101011011100010000101010000010000001101010011111101101100001010110001101100100001110111010110010110100010000111011010110111100100110101010001111000010111000001100010011110110110010010110101001001001101010110111001101011101111000011011010111000000011000011011101001100100011110110100110111001010101111010001001111111100100000010000100111000011101001000101000010111111111100111000010000111101000010001100001010000111111000010100100011101000011010100000000000101011111110101011111000010111110000000100101001101101111010101100110110110000110101011011010100010010100101100011101010111001010101000000000111100100111111101010100001010011010011001101101101011100101001000101101010101001100101000010011000000001110100001110110100110011111111111000110001111110101011100101101011001101110001110000000100001111111000010001011001100100000000101110010010101101101011011001011111101101110010110000010110011100001100011100011111111011010110101100000010101011010011011111100010001011101101001111110001000110101110111010101001111000101001000110011111100101101000111010100000010000010111011000010010100000101010100111110000101110010000111011111001111010011010000000111110101110111000111100101100010011101101000010101001001100110011011001111110001000111000011111011111011101001010100100001110110001111100000100111100111100001111100110100001110001100110010110010001011100111100110111001010010111001001001000101010111110011001000101011001011110001011001011001100000111100011100001101001001110001010101100100101111001010111111100111111101010010110111001001011110110101100000001111010110100001001010000001001000100011001100110011011101101001111010011001101111001111110000010010011110000010110001101001111000110111001000011011100101001100110100001111100101001101100100110011101101001101111000110000000000011000010111001001000111001110011011101101110110110101011010111011100110111000001010111101011110100100101011110101111111100000111000110011001010110100011110001111001110010100010101101111101100100110110010111111111001111101000010111101001000001001110110110101010011101010000111110110001101101110011010010001100111001000111101001100110001000011000010101110110010110011001010011011011100111100010011001011010001010110110010100100010001100001110001101010001010000110111100011110100111000101111010101001000010110001111010111010011100000010001101111101111100011110101110001010110011001100100010010101001010100001000000010011110101101100010001000111000011010011010010010111010100001010101001011010011110001100001000110010101101101101011010000001010000010110101100101011111010000100010110001111101000111110011100101100110010111110011111000000110101010110101000101001010111001100101000000000111111011011010011000110010001111101011010001000001000111100110110011000000001101010100001110001100111011001010010100010110110110101011100001010101110101010100110110101110110010001101011111001010110100111110001000100000011011000011001010111110111100111011000010011101000100010001000111001100100010101011100110110000001111111011111011110101111000100001110110001010101010011100000001101001101110101010001011001100100110010110110001101011111001010000100000010001001001100011000100001000111 +100001110010000001000010001111100110101110111000110011010011101111111110101001000111010010111001001010110011111101001100010001000110100001011100100010010011010110101111011001101011001000011110100111101011110100111101111100011100010001100100010111000001011101000011110100011111100010001111001011011111000110101100111101010000011110001110000001110111101011110001111110110000110010111001100101011101111010111111000110011010100011101011000001111101101100101100100000100000111101001111000100011011011111010101101010111110010010010010101011100101011011010001110010111000000100101100001110110100010100010100110110001000110011001111010100011001011110010010010000100001011101100011100011001110000010100100001011001100111011000010010101000111111011011100101001010101011100001001010000011110011010000001011101001110111110100001011100001101000100011011011100100110100010010100001000000110010010101011010011011101000000111111101010011110101110001100011101111110101---------001011000110001110010010000000100001001101110010100101110101101111111110001111000110100100111001001011111110001101100110011110010100110001101001010010100111111001100101111110111101000001010111001101101011111011001010010110001101010000010000001110100011000010101100101110000010000000001100111101100100010110010010110110111100100110100001101000111000001011000010111110110010000110100100101011000100111111101110101101101000111111100000111010100001111010011001001101111111111111100011010001101010000111011101101100100000010101010011010111101011100010001001000101000111110100100010011001000101111010000110000010010000010000111001111000100111000000111001001001101001110010011001001010101111101010101110001101001100011100001111100110101000111000111100011111000110110110010111101100111111111111010011010111110000011001101001100010011111010001011111001110101001011010100110111010010001100001100000111111010011100101001001101001110101100000101001010101111001101111100101000001111100001100101000011111011101001100100011100101110111111001101100001001011011001001011011111111100100000000101000111111110110111111010011001011110000000100110110001110000000011011011100110000111101001100111000101100010100101111110111011111111101110110110111100100100101001100101010000101101011011001011101000110010001111101100001100000100111101011010101000111111000011010010001110001100001110111111101010000010110001100111011111000110111010110010011000110000011001000100111111000101000101100101110011001100011101001110100001010111000101011000000110001101001101100011010001111011101101001000010011010101110110101100111001001110010100110111101100110111011000000100100010111001110010010001111001110111110101000110000110001100000110000000101010100011110010100111011010101011100000010001000001101100100111011001000101110000100110111101100000000100110010010111000100000111000000001101011010011110111010101001010011111011000010011011000011111001010010010010110101011001001110011110100000011110000000110111001011111000000100111111011001011001001011101011001100101101100001111101110111110001111000110110010110101000001110000100101101011101001111000010000111100010100101010001111110000100111110100001111110001110100110001101101000001011010101111111001101010110101111111111100101111100011001010001001110101110010101101111011000010101001110111111111110111101110101110010111001000101010010101100010111010000011011010001000111000100101000011001000100011010001101110011011000010011011001110000000100000111111110010111111100001010011100100011101000110010111011000010010111010101011110001000001110000011111011000011001101100100010011100011100101000010111111100110111110001001100000010000111011101111101101101111011111010101100101010001001111100000111100110111111110001010110111001101000110001111110000111010010110111010100100000110000100110000001100001110110111110101010100101101111011000000110011001100110011010110000011011010110011100011001001011011100011101111011010001110000000001110100111111000001001000000111001100011100110011011110001010110101010110110001111000101110110111000000110100000001110110010010111110000111000110010010111011001100100100100011110101111011011001110010001011110110001101000100001010111001011111010001011111101111010001000001111011001100100100000010001010110110100111001011111100010010011011011110010110111111111001100111001000000000110111111100101111010010110101100010000111110001101010110101101011010110101000111110010010011000000011110000010111111101101101110011000100000011110000000000011101101000000111100000010101100010111001110110101010000011111110010010011000101000111010110010100100101010000100010111001000010001000010100010111111000000110000000001101110000011100000101011101000100001110101111000001100111011111010110110111111111100011011111001001011111000000110011111011100111110111111110110110100111011101110011101001101010000001010101100100110000101110101111111001001001110011101100000011101111100010011111000001000101110010101111011011111101100101110111110010101001110110111001110010101110011011000010000101101101111000011110101100000000000011111011011001001110001100110000100010101011010100001010101001110001111100110001100100000001001100100001101111000000001110100110101000010010011010110100000110100010111110101011010010001101111011100010001111110001100111111100101101000111011100001100101000100111010100101001100110000010101100110101001011001011011111110000010001010100110101110111001011111110011011110111011111110111101100000101010101001011100110000100010011011011011111111010100100111001110000111100011111010000000000011100011000011001011111010101001011111110111111000000110000110100000111110100010000010100110110001111100111110101111110111100110100100010001001010110011100110000010001010010010011001111011000001101101110101101000111100111011010001101111101101000000111010001010110010111010110101100010000100101100001110100010111011110011111101000101000001110100110000100001000100001011010001101100001001001010111000011110110101010000010001010011000010111111011111010011010100011010011010100010000100100011000011110110000001010000101000010000 +110001110101001100111001110101101000101101000000111011100000010000010100011000101111101100010000000010000110011110111101111001010110011101011100111011000101001101011110011111000010001011100001111101010110110110100101111110000101000100001111000100010100110010101110101100111000011001011101010010111001110110010101010100010101100001010100010100110101101111100011100101100001110100000100101101010100111011111000110110000001100110111010101001110011110111011001001111010011011101011111101011011011110110101101000001011000001101011001000110101011011111100110011100001000011111000101001000001110010000100011001000000000011111001011011001110001000111010001110001100101010110100011100111101010011110111001010010001110010111101011110110001100101000001111011001110100111001001111000101001101110100101101110000100111001010101000010111111101100100000100001011111101000110111100011110110000111000111110010110011111100010100000101101001010110010100010100001100011001---------011110110000100100111001100011101011111100011001000110001000110101110011111110100000111010010011010110000111101001011110110010010000110100100000111010000111110000001100010110101000101111010101100111000110111110000010000011101011110010101111100100111001111101000111001010110111000000001001110001111001001100011110100000110110010011110000110100110111011010101000110001010000010100001001111000110100111001100111000111110111011010010100001111000011000010011100001010010111100110010011101111110000111010001001010111011101011100011001011101101001100110010111001001000111111110011101001111100100011010010001010100111111010110101111010001000001111101110111010011010110001111001011101101001101010001001010001101100010010111110110010111000110001001100010001001111111101111010000000000001111001100001110000101110111101010011110100101111110101000101001110100000100010001101101100101101000001111111000011001001010111010110011010001111000000011011010100011101110011101010000110010111100010110010000111110101001011100111101000001100110001110110100001100100111111111010100110111011100000000010100001000001101101101010111010111010110110000100100110110100100010111110001100110101111111111111110101000101100110001110011111001011001101011100111100100000000111010110100110110001100000111001101101000000011010100110111110110110100101010100011000100000000001001010001011010001110001011110101001101000111100101101111110110011011110100001100001101001000101101000101111101000100011101001110011110100100001100011100110011011100110101001100111101101001011101001100110010001100100100111001101000111010011101101100011010000001011010000111100001000100110111010101110000000000110110101010100000011001011000001111100100001000010101010000111101101011110100101110100101101101111000100111000001010001001110000110010011010000111011101001000101001000010100110011100010111101001101010001101100011000101110100111101000001101101110011100101011010001100101010010010101101011110001100110001100110100100001101100101001011101110010101100111110101100001100000101100101001111100001001100011001101100110000110001101011110010010110010110101111101111011101101101010110111011111001000100100001000101100110011111101001111101000011010011010111010111101000011001001111011010110110010111001100101011111000111000101101011110111001000001100001010111101010110101010101100100110110101010001101010101100111111110101000111010001011001100110000100010001100110011001110111010101111011011000001011111110111101111000001011111011110101100001000001101110010110010110000110110111101100101010100011111100100001110101000111010000101000101111010111100011110101000101000110100010111101100010110000100011100110101111010110100111010101010111111111010110011011000111111100101110010100100001111101010110001010110111001110100110101000001111111001010000111000001110001101001000110001101001010000111101101100010000101011111010101111100101100001100011111101110111000111111111101011000010111110101001100111000111101110010001011110010100001001001000001111011101011110100011101011111111010011011000101011010000000000100101010100010000110010010001011010011101111011001101101101111000011000011001100001100010100111000010011111111000011010001111100101101010000011111001101011101010111110001100101101111100011101011111001111010111000010000010010101101100010100111010100010100100101001001010011011100010000011100010101011100111111001100100000101110001111111001001111110000001110110100101001011010011110100000001101110011100010111011010000110001000000001111001110111011111100001111001110001101011001100101100010011101001000101011110011000111001110110100110101000110110011100110110101111111001010011111110011001111001110000000011000001111000101000110101110000011101100011110100101000111010011110010001010110011101011000110011101001011011011111101011001011000101111001110100110011100010001110001100000011100111100011010111011100000000010001111101011110010001001110001011110001110101100100101011111110101110000011101101000101101101111100110110110110110010100101110011111000100101000000001111110111001111001110010101100000011001111101000010111000011011011000111100000011101100000100011011011001001100101011101110000010011000110000010011011001010000010010010001101100101101110110000001000010110100100001111101100000100000000000110111110010110101010001101100111011111110100000111000011010010110100100110001111000001110010100001110011111001110100110011000001010011001001111110101010011000111011010011110100010110001111001011001011101001101100110111000001110110000100100100001011010001101001100011000010111011101110011000100100101110010101000100001111011100001110100101001010110011100101011111110101111100001111111011111000011010000111000111100001101111101110011001111111101100000111010001101000100100100011001110010010011011010100111110101101011101111100011101101100000010011001101110011000010010010010000101011110110101100010101110111000110100101111100010101001101100001111100011101111110111101011111011000010000100010111011111111000111011000101011000111100110011101111111011110001111001011000100000000010111001001110000111100011010110 +010111110001011101010111000100101010101101111010100111110011001000111101011010001111101110011011011100000001111001000100101011001001000111100111111011001111001100010111000001101000101110011100110010010111111110110001011011000001011011010000100101110001101111111101111100000010001000001110010110111001100110111001000001111010111110110110110111110010100001011100011000111111111111011001000100010000001111101010110010101101100000111010111001001101011111010111110011000100111010011111001101101010001010000110101101010100111001110010101010100111101110110110110010011100100010110110000101110111001110001010101011101101110010101010000101000011011011111101001110000111011001100100101100110111010001001010101111001101011111100011001010110101100011011100001101110001110010110101000000110001110111000001000111001000110010001001110101010110100000110010001100101010100111011111000100011111110010001111111011100010100100011010111100111111001101101010101100110010000---------110110101110101111111111110001000001111100001000011011101011111110001111000000001111001110000110010010000000111011110011111111010111010110011011010000111101111000100100100100010011100000011000110101110100100101010110000101110110010011000010110011011100110011110011111111001011110010011110011100001001001101111011011100011010110000011111100101011011110011110111001101111111001000100011011100001010100000100111110001110000010110011111100000101001000000111001000001100011000010000111110001101001010101110111100011101110000111000100010110010010100101000000011010011010000000011011100110111010100100111010011000100100110101000100110000010010100000100001100001000000101011100110111110001111001111011011111000000110101000011010011001011101110010001100110010011010110110001000000000111100001011010001000110010011011010011001101100101001010011101011111101011001110101000000100101000000111010111010100000010011110000101010000011011010011000010111011000000101000101100000000010010011101001110001110010000011110000010010000100110111110110100010111100101101000001101111110011001100010100100110000111111000110100110101111101000010000111110111101110101101010001101010001011101111111000000001110110111010010010000001111011100001010001000101100110010110110001100000111000011010111101101110100101101011100110011111100111110110010001011011110100110110011000111110110011011001101100101100011100100000011110001001111000110000110010001101110101001010100011010001100001000110100100001101110110101110100000010000001101010101100011111011011010100100001011110010100110000011010101011010111011001100001000101101001101011010010101111111111011000010100001010000100000101011000000010111101100110000010101111010100110001100111100101100111000010001000011100001100101101111011110011011110110000111110010100111001110101001110001100100100110000000100011101010000100111010111100011010101101110001011010111011000111111100000001000010101100000001001001110001000100000000110010111110011000110111100000110101000101100000001010111001001010010111110110010010101001000011101101000010101110111101110000100000101011111011100100100001011100011110101010001011110111010000011101100101101111010000111011110010010100100100001010110111110001000011110001111010001101110110111100100000010100011110010110101101001110011110100000010111011111010101010111100010111011110001111000010010101100111101010011101111111111010010000110001001100010010010100111110010000111100100000010100111101000001001101000100100010000111101000011101111001110011000010101111100100000111111010011101010011010100110111101100100010010101001100010010111000100111111010100100000011100101111111010001001011010000011101110001110001011111100001000101010000010100010010010111001110001111011001000000110011110101101000100110010000110000010101100111110011011011011010100000101010001001100101010111011100110110000101100011000110110101101101001111001111110100001010010111011100100111010101101101011000011000000011000110101011000111101010010011100110111100011101111100100111000101001101000010001101100000000011110001110111011110101101110011001001001101000111011010101010011001011110001110001101110100001100101000001000010100100101010110000100100101001100101101011010101101111101000001001100111101111011100101100011100110111100011111111111000110101000100001001010000010110101111110011000110101100010100011100010110101010001010110010111111000100100111100101110000001000010001011010100001111111110010010011110000100000011111010100110001001100001010010111000010101100010010101111110110110100010001101011011001100011100010010101010000001101100110000001011001011100000100110111010000111000110010100011100000110000010001110101110101011011001011001110000101110111000011111100101011010100001101000000011111110001000110101111011111011000001100010000110010100110010000010010011011010111010010101110000001011110110101010010100111000100100001101000110111100011010011001110010001111100010000110111000000101110110000011100000000101011101001110010100001110001001111010101001001110111000101001100101001010001101000000010010000011111111110111001001001000010100011111100111110011110110001110000100000100110001101101010111000000111000111100111001001100110100100011001001001010111100011010101101011110000010000001000110001010001010111011110111101110001100011101011011110100011110000010111100010111010010111001100010001101001101111001000101100011000011110001100111001001110010001011111110101001100010111011100110001001101001111100110001001101001001010011111011000001111111001110010011100111111111010100011010100010000010100110110010001011100010100101011010010111110011111010010001111111010010011001010010110100011110000110000100101110011111111101010110011101100111000001000110100011001000110111001110001110110111000000101101000001100000100111100011110101010110111010111110010111010100000000011101101101001100100101001000111110001100101101001001101100100000100000011010100110111000111100100011101101100100101010101000011011000011011010110011100101001111000110100110011111110101100111100011100110000100110111010101000011001011001000111110110110110111100101111 +011010010101010001101010110000100111010110001001111101001101111000010001001010101000001000101110101011011100011001100110001100111101110011010000001100001010100010001101000111000000000101100100101011100000010101100111001111101001010010101010101101101011010100000001100000110000001101101110110101010100101101111010000110011010001110110111101000010000001011001101011000100100110011001011101001100101100000101000110011111001000000001001101101100110000100110011100100100010011010110100011011010000101001011110011010000011111100000010011101011011111011111011100001110100111110110111100011001010100101100110001100010010011010101000101100100010001111110101110100101001101010101110010100100110011000100101101101011100010011000010001110100111001000000011111101111001100101100101111110000000011111000011001010100100100100101101111101101010000000011000001001010000010101101111100100000010011111001001001111010111101001110111001111100010010011100111100010101000100---------000110110010011011000111000101011100000100111101010011110100100000001000111101010000001010100110101010010000011000010001110110101000001110110000101100001001010111011100010001001110000010001000001010111001100111001110110001100101110100001000011100111111001100010011110011001010011111110000111110110001001000010110100010001010000111111100101110100111011011000000101000100101101110111100011001001110101010001111010110001000100001111010011010000110010111010100100111011011010010010010110111111010011001001100011000111010110001101000111110101000000011010110111001001010000011000110000001000011000000000011111111111001110010001000100011001010010000010010101101011010001010011100010111011100001100111111110100011001100011110101000010110101101000110110100101000110101110010111100111101000100101100101010101101001111110000101001101111101010011001010111111111011001110010000110000111011010010011100010100111100001011100100100111101011011111100101001011101001101000110001110010010100000000011101111111001100111101001100100100000010010111000001010001101111111000010010010110110100110100111111101011111111100001101110101001101010101101110000010100001000001000110011111110010000110110011000100011000101110101010010000010100111100110001110111001010101101011001001101110100011100101011101110000101001011011001010110100100001001000010001110011100001110011011000101110000100010101001110100101100110101000100111111100110011011010111001010001101001110100000000100100101110001110101010000010111011001100010001001110000010100101101010010011011100101110100001111110110000111100000100100010101101100011101001001111011001011100011100110000100101011110001011100010111011001001000001011101101111111011111001100101010001101100011111000010000000110100011101111010010100000101100110001111111100000100001011111001010100111110101011101111101111011100011011100000100000110000111001100000100011000011001100111000110110111110111010100110001001101010111001010110110000111011001010100110000000100101101111001011001011011001100101000001101101110111111101000100111110010110111100000000100101111110100000011101001011111101011111110101000101110111101110001011100011001111100001010111000010100111100010110001101010000001111111101000101111000100000110110001110001110001100100110101101010011000110100100100100000000001110110010000111010111100001000111001101011011011011001111011101110010100110101110010001010101100101100101011101010111010001011111111100110110110001011110001010110010110010001011110000111000111111110001011010010100111101011010010000111010001000100011110010110011011010000111100010010001110010011110010000001001110101111010011111101111010101001110011011110111110000000101111011110100000010001101100000111011010110000110100011101100011110100011000010011001101010000011001010111000011111100111010000001011001001000000110100000111110100001110010101001111101001001001000011001001101011100100011001010011000111000111010101101000111000100011001110010011010001011101000011010110001101000000011110111010110101011010001101010001100111111100111010101111100010011001101111000000110111000000111010110001110100100001011110101011001100001101011000000101011000011011001111001000010101101010011111001101001110001010100010010100111011110010001010010111011001000010100100100010101011101010010100110001111111011101101110101100001100010010111110101111001001101010110011110101010011110101111011000000000100001101110011001101011110001101001100111000011101101101101100100111000001101101101000000101101001010111100001101111100000101110110011100011010001000110110100100001001101000001000111011111111101110001110011110110111100001001000010000010110001110100010111011010001010011001100101111011000110010101000100110010001000010110011000001110011000101011000101100010010010100011111110101111000110110001011011011110111111011111001100100100110100101010000010001001101011101010011001101001110101011100000010111111000111111101001001111010011010100101101100100000000100110010001001111111110101010101011000101000110001011101000011110100101001010000110010011001100001011111001011110111000011101111100111110111001011000011011010001010011001110100100000110100000010000010100101100010101110001001101011101101100000110011111111100110000110000011010011011110000011000101010101110111001011010001011110011100011000011100011001001110111101100111110011001000000010001110101100001100110001100001011110011010111011100101110010110011000011010110110111110110111011011110010111101101101010101110100110100110000101011010011100111110001010011110100011011000001111110001101111111100010000101111100011110010111111011110010010110101010000101111000001110101000111110110001100001110011110001101101001100110110101011111000001100100101001100111011011101001011101111100011000000110000100000110101001000101100111100011011000011110101000011111101100100011000100010000110101110101010010010011000001000010100111000000110011001100001110001100101001110100110100011000111100000101000111010011101010000101110000010101011100111101101101010010101111001110110000010001011110100011101100100101010011101000010101010101101100001100101010101 +000110100011101111001111010101110100110110100111110001001111100010001100001000110110101110110110100000010000011000100111000010110001110101010000010111111100001110111011000011100000100111110111011111011101100000001011101000010101110110001000111111101100110111010101010001100010000001110101111010011010011011110111111111000001101001101110001111001000000101010100100001111111101100111010001111011010001010010011010110111011010011110110110011001011000010100101011000011011110110011101001111100111001000001000010000000001000100011001000011101101001010000011100101110100001011110101100100101011011011101011111000011001000011011010010000111101011000000111010001100000011011111000010101100101011011010100101010010100011110011111010111111000110000111100101010100011111010110011101000000001010101010100100011100001111011110001011101011110110001101100101100001100011110011101010111011101110001000100011001101000011011010100010010110001011100010111001000110110001---------010011110000011110111011110110100001011000000001000001011010100100001011110001000011011000100110000101000111101100001101101110101101101101110110010010100011101011000100111011001001000111111101000100001000111001110101011010101001101101010001110011000110101100001001101010010010011010100010101000010111011000001101010110011101110100101010111110101100111100110100111111100101001110101110001011010100110111011100110111110111000000001111010001010111111001000010000011101101110110001011011100100111011111111100100101101010100101101011100000110001011001011001100110001010111100001001110100100000001110101100110101011011101101100000011011110100011000000001100111011011111101101010010011010101101100001011110000011110011100011001001111101000100111100010010110101011000000101101110110001001010011010100110011000001110111001001100000011001000100111000001100101100010001011001110100110000001000001011001010101011010001111111100101010111111101100101110111100011001010010100111001101111110110011110101111011110100111100110110110101001001010011111001100010010111001010011000000110001011000110000101001111010000011100111011111110011111011000100011110101111101101101100010101001100111101101001101001110001010101001110111111110110101100010001100001011100101111110000011001011001010110000010101011111010010010111100111010100111111110101011000110110010011100011100010001011000010001011010010010001010110010011100001010011100010011110110001011000011110010110100101000010110001101111001110000111011110011010001000111101011110000110011010110001000010110011001110011001111011110110110110001100001111011110101000110110000101100111100001010000111011011010110101101111110000101011001010100101100001101011100000010001100100111110010110001000101010010100010110000000100001001110010100010100111101111100010010000101101000010110000100100011101000110110010011001101010100000111011101010101101011111101001101111000001000101100111010001110101111101001011101101011010101101100111011100011101110100110010001011010100000111101000100000011110011010110011111010001011111010000100111111000000111011010010010101100111001001101100110110000110101011000101111111010100000000111001001010111110100110110000010100001011011101000000001001011111001100111011110000000001001111000101101000100010111111010101000111101001011010011100001110100001001110101011100100110010111000100001100000110011101010110001100100101000000101100010000010001010100001010010011010110100000101010100011110111011011101011000111111101110100010001000001001011110100100000100100100101110111110101010011011101100111110001100010000101101001000011000100100001101000100101111001010010110001100011011001101110110110011011110000011101010000000110001000100001011111010001110101001101101110001000100100110101011011100001010101110110101010010010110001100110100010001100010101111111010100101011000010000110011111010110110000101100000110000001110110100011010100001100110110111110010000101101110111011010011101100101101110010010100001111001011001011010111100100101111001110001100000000000001110000001000101100010011110001101001011000010000110010011001001111110011101100100111111001110101011111011111101111111110011110101001101100111001100111010000101101110111001010101011100100001000011100000110100110110000110111100111101111111010010011000110011110011111000111111110100010110101101010001011011101100000110001101110000100000001101001011100100100110001100000011011001001101011111001101110100001011100001101111010001111000001000010101001110000000111101011110011111101101000100111111110100011110101111001010000101001000001001010000100011101111111001011100110110001100111111000011011011011011100011101110101110111001111001100011000111110001111000100101110001101100011000000010111011101100101010111100110111000101010100011000011001001110111011100110101001011100011001100001011111011011000001110101011100101111000000000110100000001101011110110101010100101110011100001000100111001010000000011000000101011001001100010001111101011110101110101001111101001001010100110110100100001110110000110010110110110011000111000000101111001111110001110111111101010110001101010000101010101000111010111010110100001011111100010111110010001011001100110111101001110001000010100110100111111010101011000110100010010101011100011010010001011001101100100011001100111110101001110000001010111000110010101101000111110000100111111010001100101111110100101010001010111101000010100010011101100101001011100100000111010100010001011011101110110010110111000111100100000000000011101111111110101011000000111001001101000100111101010111110010110010001110100010010000011000101000101101101010000011110010010110011001100001100011111010100110010000010111000111010001111100110000000100001001010110001011110111110010000011010001101111000111011110100010111110010100010011100101000011101010000101000001000010100000110001100111010001101010111000010100001000011100001000110100101010000101011110011001111000011010000001101001101110101101110010101111010111100001110110111010111000011000101001001110101011101000111110100111001011100101010111010111010011010111011000011010101110101000000101101 +110000000010000101010101100000011111111011101100001001001011001100001100111011101001110110011110110111111111111110000111010110000000100000101100110010101100101000001010001001110011101111001110001101101110111110000001100110101001111001101111010001111001011001010011100011010000010100111100100110000001010101001011001000110001010101001101101110101101110001100011100111010010110100000011010011100111100110011010100011111111010001111000101010001111111101000011111001010000111110000111101010010110101111111111010010000110000010111010000110110100111000011010101010111100011010101001111111010101001100110001100111101011111100011111010011001011011000010111101100111101110101001001001011011000111111010001111001001110101100110011101110001010000001110100001101010011011110111000011001101011110001100000101111100011010000111111101111001000000010101000011101101000100100010001111000110101101011001011011000111110111010000011000001111010100000001110001110001100000---------001011100011001010011000011000101110100101100110110010011010111111100011011001101111000110011001010100100111010000101000011110100110110101011101000111110001001110011011101110000011010111101000000100010101010111001111001010111110101110110111010110110101111111111111001110100101010010101011110011011110111001000001110101111101001101110101010001011100001101100101111110001001101111101010110010100000100000100111011000111110100100100011101111000101111110000000101000001100010011101111100111110101001100011100000111010111001001110110000000110111111001001111010100101101110101001001110101110010100010101010010000010111010011111011110100110111111101100010011001111000101010000100111100111010110000010110110110001110000001111101000001001100111010000101010110110100111011000111011001100011000110001100100110011010110000101000111110101111000111100111111100011110000000111100101110111110010111011101110100010111101010010010001000010111110011100000010011101110010010101000110100011010001000111000001110001000000101001011111000011001001110000111000101001001100111100001000001110010010101110011100010110010010010011111001001110101100001111100110110010000100011011101000010010011000110101110000101010101100100110111011011110110110011110111001001110000011111000010111000011100100000011101000000011101000111011100010010111011011001100101100000110101110010110011111110101010110000111111100110011000100100000100111010010011100000101101010011100111010110111011010111101001010101111000011000101010011100100010010100000100010111010010000011111111101110000001011111001110101101001110100000100110111000000110100010010111100011001001101001100011111100011010010000001011010001001101111110101101110111101100001001010101001101011010011000110000100001110011100101010100100010110100000001011101110101000111111011011011100110010100101101110100010010101110100011010111100100000101111110010100100010000111101000011000111101100000000111111101001101011011110010110011110110010111111001000101000000111110001000100101101010010101101100111001100110111001000100110001011100100100101010000111101011100101100000110110110100100000101101000010100010110000000010001110000100001110111001110001011001110011101001011001111101111011011011101011001011001100011001101100000110100101111100000000000011111001001011001111100011110101000011101111100100101010010101110000100100100010011100101001100011100101100010100000101111001111110101111111011000101100010011100001001010111011011111101011111001001111010111111111001101001011100100001011110001111110011010011101110101000110111011100011101110001111001001011011110010101000000111101111001001001000011001011110110100010011010011010101111110010100001001111110000000111110100110011011101001010100011110100000111111111010010011010011000001001011100000110111110000110101010100001101010111000100100100100001010101011010000000111100001101110111101110100101100000110011101101111110101101111000111000101000101111101111110111101110101101110010001000010111100001111110000110100101000010101001111001101111011000101001001100110110011000111011100110010110010111110101111001001100001001111010110111101100001010001010010110011100000000100111101101101001000101100011101111111101000101100000110110000110100111111010110001011000000100010111111001011101111010100100011100110010110100000110110000001100001101110111011101101100101010000000100110011010011100100001100101000010110010001000111111011011000010110110101011010001100100010101001000000000100011011111110001101010101001101101001100101000010010100001101101101100110101000000111101010101100000010101010010000011101010100100110101010001110100111011111101010010001011111100011110010101011110011100111101001100011001000100111001100101000110100011100010000000100011011101101001110100111001111001101100100011100111011101001110111111010010000101110101000011000110110111101100101011000101001100011010100111010011110000000110001110010110100010011001011010100101010001010010100111001100100110101000101011011000000101110110011010000000000010101000110111000000000110110000110001111010110010110111010001000111100011111110011011101010001001001101011011011000111100000101101010010001010000101011000110011100001110010001111001111110110100010010001111010001010001110011101101000100110011101010011100001001101111101111101101011101010110110001101110011001100110000101110010010010110011111110000010010110000000101011011100111110111010010100011010101100111111010000000011100110000010110011100101001100010011000101111001010111010011000110100111100101001001000101001010010110111011010110111110101011101101010111100101000111000110110010001110001010011000110011010001110010101101110001100001100100010101001001111101011011000110101000100010000110000000101011000001101000111101011110110111000100011111101100010011011010011100011010011001100000010001111010110100101110000101101101110011110111001011001011100110101111111110110011010111100001011101000001111101101101111101000000100000000011100010100110001111100001111010011100101101011000110111000011110111110101111100000111001001110011110110011000100011111001100001111000110111110000100000 +ls240msgs +001110011000111000010100011001110111011011000111000000011100011000101111111111101011001011010000000101110011111001110101001110111011101110001101110010000011001100111001011001100011001110001100010000100001010101101011011010001001101010000101100010100001111100101101110111010000101101111100010011101110001111000010111100001010111101011010000001000101001111110001100100101011000110010111100101100100110011110111011010000001010111011101111000110010000001101011010110011111111100111101001100100000001100101000100100001100010100111000111010011100111001101011100111110101100100001000001100001001100010000110101101000110011011111011010001101100111000100010111000011000110110110011000000111000011010000001011100100111001111110100010001001111111001110111001001011101010111000101110011010001001010000101101100010011001001000001100110110010010101001110000000010100111010100100010101000110000011000111010010000011011100111011100111100100100010110010101110101011100000011101111101101001100001001000000001111100011100011000011110110110101100111100100011000101000100000101101010101000000011001100101110001101100000111110010011101100101101100110101100110000100010000000010101010000110110101010001010110000010000000010111101100011110011110000000110000010010011011000011010110100001100001000001100101100111011111010000010101011101100110110101001010111010011100100110100010100111001000101110011010010100010101111001101101000101010010010110111101001000010111101000111100010110001011010111100111110110011000100001010101011000001011010000100110001010100110000110001110111010010110000011001011111011101110101001110111001010010001010001001110101110111100101010010000010111110011110100111110001001000101110011010110100000111110010111111110110110001111000110001110011010011011010110111000100101100100011111000000110000011100010001111000011000011010111011110101000000011001111111110101011001011001000100011011001001100111111010000111011010001010011111011100110111111101000100111101110110011011010010101111101001100001101010001110001100011001011011101101100101100001000111001111001011111001100000000100010011110101000100100100010100000100000110110010010110110101111100011011100011111100101010110011001110011110001000101011110010010110010110010011011101000000010010110101110111010111000001001000010101011110011000001101100001110010100100111010011110110010110010011111100011101101111010100001011110101001000100110001101101--------- +111100101010111101000111010101100111010111001101001010110000000010000110101110000011010001011011001101010101011000110111101100111100111111001101000001001011111111010000001100001101000101111001001000110001111010000110100111100111101110111010100001101000100101010101100010010101101011010001001101110110101110000000100101010001001001001000011011001100101111000001110000000000011000010001011111001011011100001010000110010010000001101110111100101000110000111111000001100011100010101010111010011010001011001010100101010010111100101100101101011001011000010111100010111100111010101111001111011100110110011101011000111000110111100011101000110111101111011011010100000010101101100100001110010110010000111000111010000110000000101110101011101000101010010111000101110011001001010111111000110011110101001100111000111000111101101010000111000000010110111001100111111110010010010101101100000111111100110110001001001101010100111010100000101111111011100101001111100110110100001010111010110000000101000010000011011000111011101100111001000110110110001000001101101110001010110000010010000101000011100111111010100110110110000100111111111001010011111100100000100111001111110011011011001011101110000010001100101101110100010111101111000011001111110001101110111000010000000011110111101101011010010001011111101101000011010111011000100110100010011001111000110001011001011001100101110001111000101100111110001011001011100101000011000101000110110100100000001101001011101111110101111001011011000001010111110011000110100101001111101011101110100000011111100000011101101101110110000101011111000010111101010010010011001101000001100011101111110001100110110100101110100001101001111000010001111010100000101101000100001101110100110111010111100010000000101001100000001110001010101010011100101110001111110000001110001011110101101001000010111111100101001000010100101011010011001001110011111001100111110100101001110100100101110110100110110101110001010010010110110101110110010011101010110000001010101001010010001000001011011111111010011100110111011101111001011110101011001010001001000101010100110011001011110001100001101000000101100100110110110010101011001101010000100001010101000111100100010000110011110111001010101110010000111100011011100001101001111001000111010100000101000101011101001101111010100011101000010010001111000101111000111000000101011111000010100011111001101110111101100101100110000000111101010001000000100101011101000111100--------- +100111001110010101001111110101001001001001001000010111110010111111110101100100011010010000110001010110101101111110011000110001110100111101010110110001010011101010110011110101001101000110001111110000010000100111101011000101101001000110001010100001011010010111101100010000011101100010000110100110110110111111010000101101010001010011100101100111100111111011000101000100010111000100111100010000010100100110111000000101000111100111000111010110111011101100001000100111001101000100101011010001000011001000001111001001001011111110010111101001001110110000001110011100001110001011100101000010010100011110011100000000011010100110110100011101000110000011001110111111000111000000011001101110001111000001110110001100110100111101000101001100110111100100011101010011101101001010000110000010110101110001100111010101100001110101101100100110100111001010010110101100000010100101101010101111110111110111111000001101011011001111100011011111100000010110110001101101001100101101100000001100110111001001101111000001001010011100100100010011101001001101101011011000010111100000111101101110101111101000011000100111001000001010101110100100100001011010011100111101001000110000011101011100101100000001011111010011011010011101110101001111010001100010100011010111111011101111100010101001010101010001011001100000000001110010010111101010100100100001100110110010101011000011100000111010000111010111011010100101110100101101001011100110111100110010000011111000111011101010111111101010111001110001101011101001101101101001100111010011000010001001010001110101001011101001011001000000100010010111101011010101101101010001011111000110100111001101101101000001100001110111000100100100010101101000111100110100001001101000101110110000001111001000010001110100011111110100010101100000110001000001000011110110011111011111100101100011111001110011100010100100001110011011011010100000110101111100110011011000010011111100100000011110110011111111101111101110100101110001101011000011011101010000011010100111101001011111110000011110100000011110000100010010100100100001010011011001110011101110101001111101001110000000100100100000100011010110001001010001011011011100101010111010001011010000011000000101100101100011000110101110101001110010011110101111111100110111010011001010110101000111100101001011011001000101111110000000111100001101100101101000100000011111001001011100010101100001000111100100000110000101100011101011011011100000000101110101100010010--------- +001010111101011111000011001100100000110100001001001011100111101011100100011010000010001011011101010011110000110111001111101111101111010011011000000000101111010100010100000010000111001101100110110100110001110000101001100100001100110001011110111011111101100111111101011001111010000010010101100001001111100101011101010100000010001000001000011001001000010010001001010000001110001100111001001001100100011100011100100100111001100010001111011000001011010001111010111100100101100100100001100001100001101000001001010010100001011100010101011101010010010110100111000100010010101111000010010111111010001000011111111110011000101001100010011101111001000100000110100000110001010100111001101110110110011111001101001000011101110001000101010110001101110110110110001010100101011101111000110000010111111101110010110001000001100101001001100110110100111100110101101001111001111010011101110101101001100010010001010010111000100011011011100010111101001101001001100100110011000010111110011001111100011101010101110000000010110100001101110111100001100100111111000111000100110100011101100111011100010000011110000101101001011101110010011010101001010100101000110100001000110010110010010010011100111010101001100111101010001110000101010010000011010001011010001011111010000000101011100000111000001010011001100111001010000100111100100111011000011010000000010010110011111101100001110000110101011100000000000010010010000010001001010100010101000000110000110001010001101000011101110011111000011110010011111111101001001011111001110111100111001110101000110111111010100100110000000010001000001111010010111000011111001000101000100111010001000001101001001010000000011010111001100101110000101100001001000110100101110000010111001110111101111011110101101000101010001111100011100101010011111001111011101010111011111001011100010110011101010110001100011011100111111010111010011110101100000101100111011111011110001010100001110001001011100110101100000001001011010101110010000110000100001001011111100000011001000110000010110001011100110111001100011000100000111110011111100110010100110010011011010110110011001111100011111000001001111100101011011101100100001001010111010000000010011000001001000001111001100000101110010001001111100000111011001000011100000100000001001100101111010011111000001101111110100010010101001010100110100110110111011100000010111101010101011001101100010001101010100110111001001000010001111100001100001110111111110001100110000--------- +001011110001101101110010101010110010110101100011111001111100100101001011001000000011010001101110111101000101100100000111011101110100111101111001110101011010110101101110110011011101011101101111001010000000111110111000100000101100001000111100111010110001000110001101110010000000000101001111110110001111010101011101110011101011110100100101101011000110001010110010010001111111011001011001100100110011111010111111001011000110110100010110100111110010001011000000001011001000001101101101010101000011101111000011110101011011010000011001111001101111111110100000101110101011110001011100000010111001011111001111000100000010011000101010101100111001001100010010110111100101101011011100000101010000010000000111011110110001011010111100001111111011101000000010111010100100000100100011110011101000000000111111010011010101111110001100010100011111011001110100010000011011101001111011001111001011101110100000101001110011000111111111111010101100001001101000001110100000100111111001010011101110010000101111110101001111000110011111011001100001001000101101101000111100101001110011101100010010110100100010100001111001010010101001010010100000001110000010101100010101011000111001010100101000010000101001011000011100111011011001110000110011100001010111010010110100101111010101010000010011010010111000101110010001100110011100001010000100010001000000111011011101111111101100011001101011001000101011011100110110000000101001011100011010110011110000001000001100101011100001111111011110011010101110110001001100110000010100011101100011110110011111101100010001110010101011000001111010010101001001011111010010000110011011001101010010000111010010010101010100010111110010100001011001011100111011000111110100100100110111010101001001011100100100101100101000111110100111000001111100010010110001011000000000011110100100010100101001111111001001100001000101110000100100000110101011111110100101111100110001001010101011001000000101110101101101001100100110001011100111010110001011111011001001111111000000101100001101001000111110001001010101000110000011001011010111000101110110100100001111010111111111100111000100101111001000001011101111011011001111100000111111101101101101100100001001011111111101100110011011010011010010101010110000001000100011101110010000101101001100101001010101001101000011111111101100001100000101011001101011101100101110110110100010011111101011011111101011010111000010000101000110010010001000010011000001100101110111101--------- +011010110110010011010110101100010010110100110100101011111101011010010101110110010110111111100101111101011110010111010011011010100101000000011111011101101100110111011111011001000111011101110110001010111001001001110100101110111001001100010101101000000100000010101110001111010110001101010100111010111011001110101000101000101011101011101011010010000000111001100000000000010100011101110100001101011101110111001000000001010110010111010011001010101001111000000001000101100001110101011111000100000101000101001010101010000010010000100110110100000100111010111100100111111111010111110100010011111110011111010011001001000001000101010011101100100001010010001011001011110000100000000101111100010010100100001001010001101011010100010110000100011101000100000101001001111111110100101011110110101110011010101000010000000110110111100111010011101101010000010101100001001101111110010111010110110011001110011000000011111100111111000101001010100100000100110010011001100110111010011000111001000000011001111101111101111000010111100011010010101001101111001110011010010001111000101001000000011110001001110111111111000001010101100111101011011001110001001111001110100011110101100001011010110111110011111101011001111011101010001110011000000100000110100000111110101100001111011100110101111011010100001101001001110110100010100001001010000001011010111101001110111101101111011100000010101110110000100010001101110010110111000000110100001010011111001011111000000011001111111100001110010000000111000011100101001010101100011110001110110010011111110100010001010001110001000111011101010000011010111111110101000101000001110010101001001100101110100000100101011001110000100100011100110000000111101100111100010101111000011000011001101111101010010101111000101101011101011100100110101110001101011110001100100110011001100101111100100101000111110100100101001100000011010111110101100011111011101010101000011010100101000000000001011001101000110000011000001100001110010011001011110010000011100101001110010010100101111001100001001111010011011111111000011010110001010000001011001101011110000000110101100010110010000000010000010001001100111100101001011001010110111100000000101011011010110111100011110110011011011100011101011010000101010101111001100100010101010100100111011100101000010110110111110011100100010110110110111100000100010010101001001110101001101110000101100101011010111011000011101011000101110011111110110001111100101011011001000011100--------- +110101110101000000100110011100001110101100101011110000001010111001101001000110000100010110111010111011101000101010011001110000011111000111111000011100000110011001010010001000101110110001110100100110000100000010000011101111110111001000011111101011001010000000000011000101010000101110001100000110011010010001101000101010111110010010000111111101000101011011001100101100010110010000111011110111111111111110001000101110101001001101000010101101111010111101110001000001101001000100010101101010110100100001011001010000111001010100101100100001110111101011111010011100110100011011110100101100010111101001011011011100001110011001110100110001001111110111011010111110011111011110111100100101001010110011011100101101110000110010100011011110010000011011000001000000111011001011101111101110000000100111100001010110011100111000010001001101101001100100001110111011000011000000000100011011101111111101010011100000000101111110000110001010011000010100010100110111010010000101100011001101111101010000111010000010110100111010001110000011001010010111110110101010000111101011101110111010100000001101111100111000000001011011101100010001000101011110100011000111010011001101100100101101010011000101100110010000100101101010011100101110101000110110110111010100001111101111100101101101110101110100001111101101100101101011100001010110000011011100101011101011110101001010110011110011110101000000000101111100101001000011010001011101110100110101111100100011111011111000011100000001001011011100100011000010111110110000001010110100010011100101110110010110001111010100110011001110000110101010000110001010001100110100111010011111001101100011011011111101101101111110111000010101110101100111101110010001101101000011100110101111000010010000001100011011111101010100101001110001011100011010001011111110000110010111100100110010000100100110001000101101000011100111110010000101011010000101111100010101000100001101000010100001100100010100101010110111001011000111011101100000010011110101110011000100111000101000100010111100100001001001011100110010101100001011110001011100111011100101110100010010010111100011100101101010010110111000110011010111011000011000101110110011111100011100010111111011101000000001101100011010010100011101000001010001110001011010101000110010111111001001111000110111111100010100100101010101011001110010010011110100101011111011100000110000111011111101100100100111100110001100000000100001110000110111100000010100011111111--------- +111000010001110011111010010001000110100100101111011011000110101000011100000010101011001110010011001110100110010001101111011101101111100111000110100000101000111110101111100001110111101000000010001101010010110110111111000100101000110100100101010101010110101000010001000010011000001100001110100110111011000000111001111001101001111011101110011110101010101111010111001101100001100010101101100011110110001110111110011111110101101110100001100001010011100111001101100011011101111000010001110010000011110000010110100100010000011101111001001001001100110001111000110001000010000111001011010110110000100111100010000011111001101010001011000101001011001110110010011001110000101101111100000000011111101010001111000001000010111010001110100111000001110100000101101001110000011010010110010110101111010010001110111011000011100000010110011110101001011101110010100111110100110110000001110011101101001011111000101111101010100001010011100000110000111110000001000000001010011100100000000110101111000110100111111001111001000001011000111101111101101101010101011100010111010110100011110011111010000010000110000100111010000000101000000101101111101001000110111100111001000100100001110000101001011111010101111110100110001000110000110000011010100101101011111101101000101111111100000001010000111111010111100001001100001001001111011110100001000111011000100111001110010010010110100001100111000110110000100011101111100011010110100111011110010111111010101000001100110100111010011000011110100011011001001100001111111101100101110000100000100011111010010001111110010001010000100001001001101110001110000011001100000010001011000110011111000100010111000100110011110010011110000101000011001001100111000011101001110110011101100101010110000011111010011000010100101110010001100101010000001011011010110111111100111110011000000111110111000101001100101111111100011101110001011000000101111010101111101111100111110010100001110011110101001101101010000011111110000111010001010000101110010010000010001110001010001001010100110011101010101111000010111011001110001001010111100011110111001100001011011110010001110110100100001011100000111011110010110010101011100010111101100001001011001000111101000010000101000000111111001111111011100111000011000010001100000010011111100000110000111100011011111100101101010100000110100101000011111101000101011010111110111110101111111100011011110100110111110010011111101111111001101100111111011010101011100100011111100--------- +100010000011100101000100101101100110111011111011110010001101110100101011000001110000011011000000001000001110110100010100001010010001000011001000111011110010100001000011010111100011111011101101100110011101101101011000011000101101010011111100100111011001000001001101110001101111000100111011110010011001100001001111001000010001100111010111011001001101100101000101000000001110011100010000100011110111001111010101001001110011011111001001011001100000001001100011101000100001110011000000100100011011101110111011111111110100110001101110111110100011111000011010111111010110111010100101001100001101011001001100010010100010110111110011110000110111000011010011001011110010100110110010001101001110111100010001001010111100011110010100001111110111110111111011001100100011100011011101100100011101010111011111010111001001001010101111101101011101111100100000100100111101001010001111100011010100001110111000111001000010011001101001001100001101100011110001001010110111000110110011011010011101100110111001011000101011000010011011111100101101110100100001100101010110101101010101110110010110111010111111101100001111001100111001001101111100011011011100111010010110111101101010001111011111011101110101001001101011101011101111111001111101111100100011001101100001010101110100111111100010100110011000010010011010001000001001110010000100000000110111110101101001000000000001101100001100110111010100010010011011111011111100110110010011001101111100111010010101010010111011011011000001000101101010110011110000000100010110111111111110001110001000110010101110001010111111110111110100110100110110100000101000101000100010110011100110010001001010011111011101111000100011001000101000100010111110110101100100101000101100100111001000011101110111100001011101111101011100000101110000000111000110011100100111111000001100100101100100110001101001010110001010101011000010100101101111001010101110100111100111110000110000000001111011010110100101011111110100101001101001000100000111101111101101001001001100101111110001100001101101000011011011010000111100011010010111101111001011110111001111001101011001101011000010000100100101001110000001010100000110010011000010111001011111101001010111101111011101110101101100110011011110010001111110110110111010110101100001110101001000011001000100101001101000100111000111101100111011011010011000001011011111110000000110111100101101111001010011101011010110001000011101101000001011111010001111010100001010001--------- +100110101000001011011101101000111011001000000000100101000001000010001110011100011110010001010100100111101100011101000101011100100110100011001101010100111001000111100100000110101111011100101001011001001011100011110000101111101010011011000000110110001111000101111001001011010110000010000010101011011101000100110000011101111111010111000101000110110011100010100101100010001001110100001111010010011010011010100110000010010010000011110010010101010010001010001100110100011011111011000000110001111011101111101110111011101111110000100000100011011001001110110111000111110111010000010111100111101000001011100010001010111101001100000101010110001100001011100010110001000000001011001100100110010101100111011111011111010001011001100111001001100001011100000111100001001010011011101101011000011110011011000111111010100101001111101000100100100101000100001100011101011111101111010010001000001100111000000111010111110101110001000011000110001011000101101111010011011100010101001010000110010100000010111111111010000100011101110110110011100110101100000000100010110110101001001010000010101100100010001100100011111100110100000000111010100101001111011100110001001010100011010010011101111011001010111000100110010111001001010111001010100011100001101010011101001010101010101111000010010110110101100011100010011000010111111100001000101111011000000100101001001000001100101010100101110000000101111110011111111101010000101000101001100100011010001111010001100010110111000010011111100000110001111100011000101001010100010101001000000100011011000001000010111110111001110100101001111110000100101111001011001010000100111111011001000101110100011101110001001010010011100011011001010101010110111000010011010000111010111101111101100110100000001010010111100001010000101001010001101110010100111111010001000110111000001011000011000111010100001100001011101110010100010000111100001000101010111010010010001110101101110000000111100011010101011101010100001010011010111100000010000001000011010001110100101111010001001000110001000010001111011111111010101111111110011111110100110001100110000100110111100100000101110001110000001011100000000000011011111001111000011100010100101010000100110000101100101110101111010011011010011111011010100000111001011110101110001100101001110110010110010110111010110110000101101001111010000101111000010001010000101100000000111001111111100001011001010100111011000111000101110010101011111110111000010111000111111010101--------- +ls240cwds +001100100000001100101000100100001100010100111000111010011100111001101011100111110101100100001000001100001001100010000110101101000110011011111011010001101100111000100010111000011000110110110011000000111000011010000001011100100111001111110100010001001111111001110111001001011101010111000101110011010001001010000101101100010011001001000001100110110010010101001110000000010100111010100100010101000110000011000111010010000011011100111011100111100100100010110010101110101011100000011101111101101001100001001000000001111100011100011000011110110110101100111100100011000101000100000101101010101000000011001100101110001101100000111110010011101100101101100110101100110000100010000000010101010000110110101010001010110000010000000010111101100011110011110000000110000010010011011000011010110100001100001000001100101100111011111010000010101011101100110110101001010111010011100100110100010100111001000101110011010010100010101111001101101000101010010010110111101001000010111101000111100010110001011010111100111110110011000100001010101011000001011010000100110001010100110000110001110111010010110000011001011111011101110101001110111001010010001010001001110101110111100101010010000010111110011110100111110001001000101110011010110100000111110010111111110110110001111000110001110011010011011010110111000100101100100011111000000110000011100010001111000011000011010111011110101000000011001111111110101011001011001000100011011001001100111111010000111011010001010011111011100110111111101000100111101110110011011010010101111101001100001101010001110001100011001011011101101100101100001000111001111001011111001100000000100010011110101000100100100010100000100000110110010010110110101111100011011100011111100101010110011001110011110001000101011110010010110010110010011011101000000010010110101110111010111000001001000010101011110011000001101100001110010100100111010011110110010110010011111100011101101111010100001011110101001000100110001101101---------010100110110101110001010100001000100011000111101001000110000101111110101001000011011100001001111100010100010100000101001100110011011001001001011100101010101000011111111001010000011101101110010110001101000100101010011101000110000011101100001000110111110101101001000100000110111101100100001000111110000001001001111000011011111011000000111010101000010110001000110100100100011101101110000110000000100101111011101110011110001001000110111100010110101100000001001110001011011111110110000101001011101010100100010101100000101000110111100100010010100101001001101010100111010001000111000100000100111000001000000101100100110010011100111001001100110100101001111110111001001010001101001011001011100100010101001111101100011111001011011111111100001101101110110111111001000011101111111010001101111001101011001110101101001010011101101101101110101111111000010000010000100111100100011100000010110010000010010011001011100000011010010101110000000111110001010110011101111010010011111101101001100010010011010110011101101100011111001111100110110100110111010111001101101100101100011000111011100000110111011111111110100011101000100011000101110101011110110101010011100111010111011000001000001100110011100100101010011010101100100001100101011100100111101010000101010001111001100101101100111010111111001110101000000001101100110001000010101101101001011011101111010001110110001011000001001010001100110100010101101011010000101010110101011100011101010000101100100001110010000111011000000010001010000100001001001101010010101010101101000010110011111100000110010010000010110111101111110000111110101111001101111000101001000100100100110001111100110100010111101111110001000001111101010010011010010000100001011011010101111100110101100000111100001011100001100101010001010100111000101000000011010111101101000110010111111001010001111101011101110010010000110010101110101000111001111101011100100111110011110111110010011001011001000101000110110101100101101010101110101100111110001000010110010011110010110111011011110100010100000001001010000000011101011000010011011100010001010000011111101101110110110100100011111100110100100000011101111111001000100110101100001101101100011110000101100100011101111001101100100000111000100010110000001100000101101000110001000110110100000000011000011000000010111111101010010011110101001011010100000010011100001101011100000001000100000110011101111100001000001101000100101001001000100111110011000101111011110000110011011110011111100101001011001010000110010000010110111001011000010011111101111000111100111111110010000011110111101111111001101000101000000010100101011101000010110110011011101110011001000001011101110001100111100111100010110100110010101001010010000011001101000000110111101011010110110011111111011111101111110101111101000000100100111100101000110011100101100101011101110000001110001101101010101110111101101111010000111011101001111101011010001111001101000001110110001100101101000011100111011001000111101010111101111011000010110000000101101001100111011101001000000100010110110111110100010101110100000000110011010001110010101001100001000100000100101111101100011110000011001110101110001010011010100011110000111001101101010100001101110111110001111001100100001001111000100101110111000100100100000010101011000100110000011100110011011101010100000110011101001110111001001111111011100111000110011011010100001001001101010010010000110010110100001100011011101101100001110000111011000010110100111110101100101101001001101010000100110100111011100011100001100101001000010011100101000100110001011001000111010101011001010011000011111001010101111111011001100111101110100000101010010011111010100010011011001101111001110100111110101100011000111011101010001011010111101100111010010101111011011000100000010001011010101101001111001110010010001001011111100101111100010101000111111100110011001010110101100101100001001000101011101011110011110101011000001011001100001001101110011100000010001100100110011101111010011011011011001110000011101100101100110100010010011111110101010011000111110100111111010011111001101010001001111110111110101111110111100001111001010111010110010101111100010110001001100000000011011011011010101000101010010101001110011111101000000100010001001011011011111100111010101001010011101100111111010010111000011110110111000000001001110010110011110011101000001000111110000011101000000000100010100101110100101110010100111010001110010011001111100101100100111101110001000000011100110010100000011001011111110111010010101110101110010001000111001001000010110110010111100100001111010111001000001011111010001100001111001001100100001100101011001110111000000000000110011001101100000001000001011110110011010101010001110000000010111111111000000001110101110011110101011000010101100001101100111111010011111110010100010110010011010010110000001010101001010101011000000110011011110110111011011110010000111101100100010110000110011110100001001111010001001001110100110111011100100000111100111000101010101001010100011100110000000000110111010111010000000001100010111001110011111101000010011011010001010010001101010000101100110010000000010110011000001010100110010010000100011011100100000011010001100011110111100101110010110110101111100001110110001011111011100010000011010111111010111100110101100001100101101110011100111001010101100101001111000110110100101010110110000001000000110110110010010001010010101100000100110010010011100100101111001111110111100011101100000110001111100110100111111000011100110100000110001110110001101110000110111001011110101101010110110001000001011000100101010011111100100100000101010101110000011111100010100011110001001110010011010001010111100110011000101100101100101000111001110001111101110000011110011101101011010010100111100110010001001010010010011001111000011100001110010010010100000001011110101010010100011011000110011000101011000101101011111000010101011000000100001100101101010000101000110000001010101100101101111010001101001001000100110100010100110001011010100100001110111011101100001100110010111111010010010010010010101011110111011110001011111010011100100111011100101101001111000101110010010110011011101100111100011101110101010011101010000000100101110011010001011101111000100100111001100110100011011010010011011011111101101110110000111010111100100000000001011010101101011110000010010000110001111010001010100011001000011110001011111000001010110000001100101000100100101011001011010100001001011101011001010101001110111111111010111001111001010100011001100111000010001101011111001110101110111100110011100010111010101010011101001110000011110111100111111000111111101010001000100000100111101011110000001100100110101011110110111001000111100010011011100001100001111100001111110000001101001011001001110101000011110001101100101100001110000000001110111110011010111000001110100000100110011010100110000111110101100000000000100010101100100010100101101101110010100000011101000101111000101100011010111011110100101010100110111110111111101010001001101001011010101111010010101001011001101111110111101100010100111100011110111001110101000000101110011001100100111001110111010111101100000111000000010000110001001010010010110101000011000011100001010111111001111110011010001100111100000000001110111111000011011101001111101100000010110011011011000110101110011001101001110100011000010111100111011111000011010010100000101111111010010110011011110000101010011011011101111111011101011011110000101101100011000100010000010000100001111000100000111010111111011000011000101011000011011101100101011110111111011111100001001000111110000000010111100011010011011101100111100011000101110110101101110100100010110101001100101100010111101111000101111010100111000110001001010100101001110101101010101001001111101110011100101110001111100010000111100000010011110000011000111110100001001001000001011011001100110100000001101100101001001101000011001101010110100001001010111111011110010011100000000111010111110110000111001010110000111110100011111111001001111001010110110101100100001011011110100001011001111011011101000000100001111000011011011101011011110001111000110001111101001000110111010001101111101001000110111110100110100100111110100010100110000100111101010001100011111111000101011011101010111111010001100010101010010010101111100100001001100100010001110101011101010001101010011000101010001100010110001110010111101111000101011100011111111110110100011100000000011111011001010111001101000101010011011000110010100001011111010000101010001000001000010011000010011011001110101111001101000110111110000011010010100000011110111001001110110001011110011010110000011011011100101010000110010000010100011101010111101011010000100101001001001101000010010111011010101100100100110100110111101100011111110111110100010000111110011111101010111101101001011011011110001001101110010001000110110111111010001010010001001010101001111110010110000110110011110011011011011011010000110010010111100101010000001010000000111000000101101000101101001001101111010001111011100000001010100111001000001101101100100011100001101111000111100010101101100001100001000111010000101101010000001010010111101110110011100011000111100111010001010011011001101100110001111010101110110010101110011100001010001000111000011011001110000110011100001111101000010011010011011000111000010010111100101110001111111110000110101011111111111001100101010000110010110000000101101011011010100011010100000000010111011111110100111100011110110111100111001001001111110100000100100001010010101101000110001111111110111000010010010011111101001100011100011100010010101101000011110101110110100101011001100100001110100011001001000010001000100010000011010101111001111101111111010100011010100101100100111010011011100001000110011110101011100000100001001111111101010010100000111111101011010010100101100000101000111100011010001010000000110011010011110011100100110010001001110101000101101110000000011000111001000110010100010010110000100110111110111111011011101100101110100010000100000100101111111010011110011111001000010011101100111000111111100100101110101010000011101110110111010010011100100010111110011011011111010001111001101010111100110010011100010101110011110111100000101000000001011010100010010110010011011000101100100001010101001111010101000011100001011101000000011001101010111001010001001001100111010001110000101101110101111 +111010011010001011001010100101010010111100101100101101011001011000010111100010111100111010101111001111011100110110011101011000111000110111100011101000110111101111011011010100000010101101100100001110010110010000111000111010000110000000101110101011101000101010010111000101110011001001010111111000110011110101001100111000111000111101101010000111000000010110111001100111111110010010010101101100000111111100110110001001001101010100111010100000101111111011100101001111100110110100001010111010110000000101000010000011011000111011101100111001000110110110001000001101101110001010110000010010000101000011100111111010100110110110000100111111111001010011111100100000100111001111110011011011001011101110000010001100101101110100010111101111000011001111110001101110111000010000000011110111101101011010010001011111101101000011010111011000100110100010011001111000110001011001011001100101110001111000101100111110001011001011100101000011000101000110110100100000001101001011101111110101111001011011000001010111110011000110100101001111101011101110100000011111100000011101101101110110000101011111000010111101010010010011001101000001100011101111110001100110110100101110100001101001111000010001111010100000101101000100001101110100110111010111100010000000101001100000001110001010101010011100101110001111110000001110001011110101101001000010111111100101001000010100101011010011001001110011111001100111110100101001110100100101110110100110110101110001010010010110110101110110010011101010110000001010101001010010001000001011011111111010011100110111011101111001011110101011001010001001000101010100110011001011110001100001101000000101100100110110110010101011001101010000100001010101000111100100010000110011110111001010101110010000111100011011100001101001111001000111010100000101000101011101001101111010100011101000010010001111000101111000111000000101011111000010100011111001101110111101100101100110000000111101010001000000100101011101000111100---------001001101001011001001111110111101111101100111011011101000000111110100010110000100101000001110000101010100110010110001011100101111110000111110100111001000001001100100011111101011110100011100101000101000111110001110011001110100101000111100000001110011010001010010100110001101101001011000100110100010001011100101111001001110100110000001110101100001100111010010011111000000000111011011111000010011100111110001011010010011110110000010001001110010101000110000000000010100100001001000000101111110000001011010011111100010001110100100011001000010101111010010001010010011111100110010100101100000111000100110101010010011111011001011100100111011111001100110001011001100111100111101011110011101010111100100001011011011110111110010111001001101110111000001100011111001101000000101010101010101000000000100011110010101100001101000010000111010110101011101100000111001111001100010001011100000101011010011001100100001100110111011100111110101010010011010100011010100010111101010100000110000110000101000000110110011000001001110101110011011010000000111111011100111110100100010001111111011101110000100100101111011001110111011111110010011011001010010000100000111011111111110111101001000100101101111110101100010101110000010101011111110100011100110110100011110111111010111001100100011111000101001111001001100010110100100011100010100000001011010011111111100101110010101110011100001000110001011110011000010101101000110000001010001100011101000110110010010010000100101000001111110100010000110110010110110111101000111000111010000000000011010110111100101010000110100101001011001101110000010010011010101101110101000011010110101001101111001000010011100001110000001110101010101100001011100111101110001000011000011000000001110110011001101100110111111101001011100010100110000111110000000111010111111101111000101010111110111001000111110011110000010000000000000111110110011000111001111010110000100000111000001000011111100101100101110010100101000110010101111011001111000001011010000000111111100011100100000010010011011000110111100101000111110111011101101110100101000101000111101001100011000011101100101010111100101100011010011110011010011100001011111100101111000001011010111011000110001111110011111111011111001010010111111001010110101011111110100100000111000000011010010100000100110100111000110001001111110000100000011011001010010000010010000001001111111111000100101010001110010110010010011010110110100111110100111010110010011111001011110001101100000110101000110001110000110110100110101000110010110000110101100001011010000011101001001010111100101100110100101000111111111101011101100101001101111111110101011101011011000101000011111011010110011111000001010100001000001010111101000010100101101111010101111111101011011100110100110100111100010110001010101001111110101100100000100101101101000101101011111011011011001001000101101101100101011011010110011111011110111010000010010101100011000001011110110011001101100010010110010101010110001011111101001111101110100100001011101010111000010101110011011010001010101111011111101111110100111101001010010011111010111110111010000100110000110010011000001100110000111110111110101110000110011100101111101010011011011011110111010101110000001110111001101011000010101101111001000010100011001101001010011001000001110111000101110010001010011111101110110110100011011010010010110010101100100001011100101110001110111100101101011001110011111111001111001010111101011011000110110010001110101011010110110110101110011011000100111000110001011001111110011001000000001000000011001010101011110110001010101001100110000100100000110000010010011011100100101100001100010100100001011001100000100010010000001011010100000101001001001010111101101000000000111101111011101010010110111000100110110011101001101011001011011111010010000010001001010111100100010100111110000101110100000001100101000110111111000111111010000101011111000000110101110001000101100000001000101100110001000010000110010000000110101100010100100000111010100111100010001110001000100011011011110111001001010010110001111000110010100100001101010111010001100111010011011011011110011110011101111001110010010010011100011000111001011000111001111100010010101000010000111010110100001111010001111010010101110110011110111010100010000101101000000011111101000111101010010110011101011001011100000101001000001001101101110000101100011101001110101100100000010110011111100010000001100110000001000001111101111100110011001100111100011010000001100010000101010001010100111000101011001110000011111101100111011111110000001011011011000111111011101101111110101010100111000011011000011001110001011000010100010100010111101111110001000001100010010101011000110110101100101011100100101001011101001101011111111011101110000110100101110011010010001000110110011101000001010111100100001011010110001101001001011010110101100001111101110001100110011100100101010011010010110001111000101110101110010110000000111011101110000001101010101011100100010011011110111001011100011000100011100111011000010001001110011100110001101110000110101111110101000101100110111011101011101110111001110100111110100000110100101101110110010101100100101110010000010001100011100000100110101100110101100101110001011100110110011000100110000100010111001100011111111100100001101001110100101001111100001100001010100100100010100001110110010111100000010111001110110111101111001001110001101001011011010001010000111100010011111110010111110011100010011001010010010111100110111110110001111001011001110101100111001110111001010111100000010110101110111001000111011001000011110101001001011100100001001101100011101011011010001001000010110010001001111100011000000101000110000101100111100001100000001111100001011000101100001111000110100111001101000011111111010011100000000000110100000011100100100110010000011011110011111011110001001000010101100001110111100000110011011010110100111010000011101000100111000010010110110000011101010100010110001000000010111001010011101001110101100111111101011000010101110110111110001111010010111100000100100001100101011001010001101010110000100011000000100011001101100111010111100000000010000110111111101011001011110101101110110010101010111101010010011101100111010101111001110100000101010100000000101001010010000100101110001101110001101110101110011111101001001110010100001101110001000110000000010110001101100000100010111100111100100011001010011111100010111100010001101001000101100011111111110001100011111000101100001011001100000101111001010110010101101001000110110011111111111001111100001110111000011000010111111010111110000101100100111110001010010001010111001000010100101110101001111001111001111111000111011000111100101000110011000100110101000110010100001100000101100000100100111101000101010010111101011001111001001001011100000110000011010010110011011110011010110010010101110001010000101010110000001011110111101111011010110010101100110001100001101001000101100110101010011011111111101001110100101001000111011101101010100010101101100010011001110000000101011010000100111100110011111011000010001100110000101110101110101001111111101111010110000111110011110101001011001100100100000110010010010011011101111111101111110111100100110110000110011101110100011010011101100010101100011010010110010000010011100110011010011110111011101001100101111001000101101010011010010111111111000001001011011011001111100111001101101110111110001000011101000110111101010100010011001101001110011011001000101100001001000110110101001100000001000000110101100110101010100010001110001000100110101011010110101011001111110011100001000010100111101001111010011001000111010110100000010010011110110010100101100111101100101101111000000100100000111110010111011101100101011111000110101001101100101001111010101010100010110001010010001100010000001010001110101110101010010010101010110101000101101010100100101100011001111010111110110001010111111110100111101111001000110011100010011100001111010001110001110101011011111110111110111111111100110000100011011011100111101100111101100100111010011010000000101011000101101111011001010100001110101110101101100011000001111101011110001000000011100110100110011001111101101001110001010010011011110100000000000011001010010110000000001000000001110111100100000110010000110101000011100001110000011001111011101110011001010001010110010011101010111101110000001001110110010100010101101100111100000001111110110101011110010110011100110100001011000011010011111100110100000100000101100010010110101010010101101000100000100010100101000000011000001101101010111111100111111111010111111101000001100100111101011011010001001111000111011010110010010000101001001000000110101101101001111101101101110001101101110010111010110000100000110111100111010010101110111010110001010001001011111101110111010100010010010010100111111110010010100111011100011010000100101010001110001000001101110001001101001011111000000111100110100111100101010011100011010001010000110000010001100101110110011100111100001111011001100000010010010000101111011000101110100010010000001111110011000111000111110000000101000101001111110011101101000000011100100000010111100101001001010100111111001111110000011011111001100101010100001011100101111000111111011110001101000110101000001001000010001001011111000110101111000111011001101000000011110111100001001001111010110110100010101001000110010000010101010010100011111010011000111011110111100100011111000011001111010001011111111011000100000110000101101101111011001110010001000110010101011101110011110100111101010001010110010111001101001111101100011110001100001001000011100101010110110011110000001100001011010100111100000010101001001110100110111101011110111101001011000000110000100000111110010000111101011110010010100010101001101000001010101011100011110101011000111111010110001111100100111101100010110011000101100110111100000011011100111100111011101100001111010100001110000111011011100110101110110111001011010110010010101000010110001001100110010001000110000000000101111101110011100001011100111001000101110101101101011111100011100011110001110100011111011000000001000010101111110001110101111011110010010011001111010001011100001101110110010110000101000001111101011000111001111100001001000110000010110100001010100010010100011011001100011100000110010001000101111100111010111111111011100100100000111101101010010011110110010111110011010111000001101100 +010001000011001000001111001001001011111110010111101001001110110000001110011100001110001011100101000010010100011110011100000000011010100110110100011101000110000011001110111111000111000000011001101110001111000001110110001100110100111101000101001100110111100100011101010011101101001010000110000010110101110001100111010101100001110101101100100110100111001010010110101100000010100101101010101111110111110111111000001101011011001111100011011111100000010110110001101101001100101101100000001100110111001001101111000001001010011100100100010011101001001101101011011000010111100000111101101110101111101000011000100111001000001010101110100100100001011010011100111101001000110000011101011100101100000001011111010011011010011101110101001111010001100010100011010111111011101111100010101001010101010001011001100000000001110010010111101010100100100001100110110010101011000011100000111010000111010111011010100101110100101101001011100110111100110010000011111000111011101010111111101010111001110001101011101001101101101001100111010011000010001001010001110101001011101001011001000000100010010111101011010101101101010001011111000110100111001101101101000001100001110111000100100100010101101000111100110100001001101000101110110000001111001000010001110100011111110100010101100000110001000001000011110110011111011111100101100011111001110011100010100100001110011011011010100000110101111100110011011000010011111100100000011110110011111111101111101110100101110001101011000011011101010000011010100111101001011111110000011110100000011110000100010010100100100001010011011001110011101110101001111101001110000000100100100000100011010110001001010001011011011100101010111010001011010000011000000101100101100011000110101110101001110010011110101111111100110111010011001010110101000111100101001011011001000101111110000000111100001101100101101000100000011111001001011100010101100001000111100100000110000101100011101011011011100000000101110101100010010---------111011000111001100110111100011001000010101110110010101111010110100101010111111101011100110110000001000000100101110111000110101100110100010000011010001010100010110010100010100010011111001101000011110010000001110101011001010010001111110001010111111000001010100010100110101111100000101100010101001001010100101100100010000111101010111101011111101101000000011101001001011001000001100110110111100100100000011101001101010011110111011100100110010010011001010110101110101010101110111100001010110000001101111111111110010001111110111111011110011101101110000011101001100011100110010001011110100110010010000100111001111000111010001011000001000001000111011011100011101111111100111101001111101110111110010100010101000001010110000001100111110110101010011101011011110000010101001110110101010110101111000111000000000100111001110100100001010010010010001011111111001011010110001010110100111001010100010110101110100110011110001110100111101111000110000100000000101000110000111101001101110000001000100000011010011111110010001111011100111110010001001011010100000110111001101110110010001111001101011001100111101010000111111001111101011010011100001101101001001001111111011100100101110001011100110011011110000110010010001110111000100100101101111010111000011101110100010100101111101010000001000100011111100000011001100011001011110001000110010010110000110010000101111000011001110001111110001111010011100010101111001011001100000000111010100001111100011000110101001011011101101110111110000110001101111100111000010110001111101100000101101011001011010011100111101001011101111110000101001111011011100100100110010111000001000100001001001011111110001110000101001101100111111110110000011000010010111000111110100001111110110011111011001100011101011010111101001000110101110111111101111010001001111000011110111001110010001001100010111101010101100001011011010000001011001000001011010000111010011100100110001111101011100011000101001111101001010101100100001111011101000010110010011111111100010010110001010010110010100111101111101010110010101100011111001101111100010001110111011110100010100010110010001001000001001101010100011010000111111101101110110100010100111100110011101010011010000010110010111100101100110101101100110010001010010111010100111000110111000100110101011111111011010010000110001101111001001101111100111010011001011010010001010100010010111100101000101100101101010001000110001110011100100111001101010111001100000111111110100001101111111001010010111110100110010010101010111010000111100011100001001110000111101000111101110100111000010111100001110100011001010111001101001111101011100001100011110110001100101000010110110011000000001110010100110010101110011111010100000110011011000100011100010111101011010011011010111111010101011010101001111001001011000100000010101101000111001011101010011111000011011101000001100111100101001010000110010100011011111100111100011111011100111011011010001001110010001000000101101011010100101000110001110000101000111111110110010001000101111011101000011001110101100011110011010100110101101111101000111011100010111101000100000000100111100111001111110010000011001111001100110000010110111101111101010001001001010101000111101101111100000010101101001000101000101101001001001011010011011010010101001101100011110010010110000011001000010101001110001000010010100110111111000000101101111110101111001001111111000100001111011111011101101001010111001111001100110001110010010111010100000010010110001000001100111010111001101101110011100101010000111011100110001101111001111110010100001011011101111011111100000110110011010110111111101010010111101100011010110010111110010101111110101111000011100011000001101111010110001111111110111010001110111100011111110010001101100100000010000111110011011110000111101010101010000000100100010100101100011010110110000000011011011010000111000111010100100111110010011010011000001011100110111011111111001111001110001110010110000111010000010111111100100010010110100100010111101011010001001001000001111001100111010100001001101010011010001101010010001101011101100111000111000001100011001100000101000101101001111100011001100000010110101000011110001010111100111111011101110100110100110011111110001100101011111100000001000110100111011100101011001101010001110111110011101100011101000111111100001010010101010011111101010101010101000011010100010001101101110000011110111011011000011110110011101110110110110111010001010001011000101110011101101100101111000001110110011111111110010111111111011100110011001011000011001000101000100000100100010010001101110110110000010001000010000101011110101100110101111010010101101110110000000011000010101001000011110101111111011101001110110100101011000111011101011100100111110101101100010000010110000111110110000111011001111011110010111110110111000100101010000100100101010111010010111111011010010101101100111001100001111010000001110110111000001101001011100000001111110100001100111001100001010001001111010110000100110111011000100011111010001011100100001010101011010010111011100100100110110111001100000001011110111100101000011010111010111101010000111000011001101101100001110101110010001111111111001100100110111001010100000110011000101000000010110001001111010001000000101101000001010100111111100110010010010100010000000010111011001010111010101111111011101110110010001011100100010000011111100111100111011001001000100100100000000010010110100100010101000000010101001111001011010000100000000011000011101110010011111011011101100011011110011101101111010101111100111000011100010001001010001110110000000101101011010000111100100101111111010001011110100010110010111100000111011100000010100011000010111000011100010010101000000000111010011100011011101101011101001110110101001101001100111000010011100110101110001011000001110101001110110110100011010001100111110100010011111100000001110001101011111110011100011110010101001110101010011000110001100101100010011111100101100000101001000011011001100000011000101000111000100100011010110110010110101001100100000111000000100010000101001111100100011000000111000101111100000100110110000011000101110110110010001010110111101000011111110000001011001110010000000110110001010100011101000000011001100001110000101110010011111010000000100001011000101001111000000101011010100000111110011101101100101111000001100101101011000010111100001011010111001100100011011011111100001100101111000010111001011110100010010100011000110000101110110000010110001111101011010100010001110010110011110000111101111011000001100111100011000100100010101110110010010011011101000111110111010010100100110010100101101000000111101111101000011100100110000110101010001110110010011010000001110001111011101101100000011001100110111010001001000111100110110111011000111100001111111110011110101010101110001011111101110011110101000000011011011010101001101111111011000111111110001000011011111011100001001011111111111101100000001011100100101010101111100101001011000000000010101101001100000110000001011101001011111000010000111011001101000110111011111001100100111000010110110101010011101001111000001111001101010000100010101110010000001101000110101100000000101101110100011111111001001010010010011100010010010011110110101110111100101011011101100001110001000010101101000111010011101000100100100100100111110000010001010010001110110000100110011001111100110110000110010011111110100011100011101111000001000000010100000110100010111010000111011010110000011011111111101011000011011011110011100101001001000011101001110101101111011110111011000100101110010110011100001011110011000101110011011100111101110010001011110011011001010000010000100010011100111011110110111001100011010110111101000101100101111100010010000011001000110010100010010000110011000100011011110001000101101000111010111010000010000100001110000000110100100101010111001110110000011111000111011011010010100010010001011011000010000101010110101110110111010100011001101011111100100001100010111010100101101111110100100001110001111111100101000011111101010010101100000100001011100101111101010111010000011011011100100101100110100001000100010010101001000001111110001110110001110100010110001000001000000011101011110011100000111111010010110000100000110101100100111100001010000011111001011011100011100011101100000101010110011011101101011111001111011100010000111011111011000001110000010010101100011000111110001101001111011001011011100000100010001011000001111110100101011100011111000001001011011011111000111000000100011111001011100010001100110111111011001010111000010010100000110011101011001110110100101100001000111011101100101100000100000100011010111001111111101100001000111101011111111010001011100001011111001111011111111101011110110011101100101010011101111100100111000010111010101110001101001010110110000101110101011100100010010011111000101100100100110000011110001111101111100100011010000110110010110110001101010011011010011101110000010001011001000110111111101000001101110000111011100000000011001001110110000001010110011011010100010110011110101110111010101111010011010010011000111011001000111111101011100100010010010010001110100000101000000101010011010011100011111110101101000111101001101000110110110011110000001010101101011011111010110000001010011001000111110110101101100100011010000001101000110010100101101010011001111000110110111111001110011101110101010010111001100101010100110000100110111101111010101001110111101111011100110001110001110001111111000111000000001000001100100110111010101011011111001100111111011101011110010001001101000000111000011011010101001110111000101111000100000101010010000100001010111000110111111111000011001001110010101011011110011111010111110001000101100011011100000100110111001010111000111000011110000111111100101000001111001011000100110001111101111011101000101100001101111011010101011001010000111111010100000110010110101100101110111000110101010000000001111110111000100101110010000011011101100100100000111101100010011001010111000010001000110011110010100101000100111000101010110110110101100001101101100111111000111100001111000001010010101101110100000001000000000101110001111000110111001000101100001001100011110010010010100010010001110001010110001111001001001011001110101010001100100111100010011101001011000000101011111111000110111111000010111110011110101000111010111100110010001100010101001100001010110111000001111000101 +100001100001101000001001010010100001011100010101011101010010010110100111000100010010101111000010010111111010001000011111111110011000101001100010011101111001000100000110100000110001010100111001101110110110011111001101001000011101110001000101010110001101110110110110001010100101011101111000110000010111111101110010110001000001100101001001100110110100111100110101101001111001111010011101110101101001100010010001010010111000100011011011100010111101001101001001100100110011000010111110011001111100011101010101110000000010110100001101110111100001100100111111000111000100110100011101100111011100010000011110000101101001011101110010011010101001010100101000110100001000110010110010010010011100111010101001100111101010001110000101010010000011010001011010001011111010000000101011100000111000001010011001100111001010000100111100100111011000011010000000010010110011111101100001110000110101011100000000000010010010000010001001010100010101000000110000110001010001101000011101110011111000011110010011111111101001001011111001110111100111001110101000110111111010100100110000000010001000001111010010111000011111001000101000100111010001000001101001001010000000011010111001100101110000101100001001000110100101110000010111001110111101111011110101101000101010001111100011100101010011111001111011101010111011111001011100010110011101010110001100011011100111111010111010011110101100000101100111011111011110001010100001110001001011100110101100000001001011010101110010000110000100001001011111100000011001000110000010110001011100110111001100011000100000111110011111100110010100110010011011010110110011001111100011111000001001111100101011011101100100001001010111010000000010011000001001000001111001100000101110010001001111100000111011001000011100000100000001001100101111010011111000001101111110100010010101001010100110100110110111011100000010111101010101011001101100010001101010100110111001001000010001111100001100001110111111110001100110000---------000000110000001000010001111011110111111000110011111010100000100100001000101011011000000100001010110110000011000011000111101111000000111000101111111101001000111100110111101101000101001000110100100001011110010011101100010110111101011011001101000111111100000101100100011110110101111111000111000101110101100001010101110001000101110101110100000101001000011101001100111110100100000101001000101001111111101000100100000010101100101101001111011001111110010100011101111011010110111011101000110010011100101101010000001101010100001110100110011110000110110101001101111010000111100010101101011111010101101011101100001101011010100110000100011110010010100000110110010010111101000000101000011010100100100000001111001100000100010101010100010001101001100100010110010100110000011001110111111110111000001101111111001111110011110110010100011011110001101110011000010001110010110111001101111000011010001101100000111111100010101011010011110010011010001000011101001111011011110111110110011001110011001100101010010101111011101111010011000111001101000100010010010110001101101111010000001111000001011111101010000011011000010011001101100000010110001000000111110000100100100010110110100010110100100111110010010011001011011011111001100101100000111000110010111001011000101110010011100000100101110010010000101000000010011101101111100001111011001011110010011111111000001101110010100101111101111111111101110000111110110100100100111101000111010010010001001111100110001010010010101010000010111001011000110011110011111000011011111100111010001110011111011000001110101010011001000000110110110100010001000000000001111101000101100101011010111011010011010111000001101101000101110011010011100010111110010010011011010101100111101010000100011110000101111100100110110110010111101110001100111001010111000101111110101111001010000011001001000101000110110000101001011011111010010010110011101110111110101110101000000100110111100110011101001101101011101000100011000010010011110111101111111001011110010010111110000100001111101011111010000010011000110100101110101100011000001100110001001011111111110001101100111010111001110100011001000110101101100101001010101000111011110101010100111010100100001010011000010001010001011110011001000000001111101111001111011100100011110111111100101100110000110110010001111010010100111000011010000011101111010101101001110000110011000010110000010011001100001101011111100000001010001101001100111111110011010011001100111000110011110111011101100001011111100001001100010011010110000010000111100101000100111110000110100011001010011000101100001011010001001100000110110111110011001100001110100110000110000010010000101011111000111110000101011101010100001001000011011111001000100010110011111111111000111101110111111011100010111001110110110010010101110001111101010100000010111100100001000100101000001111100100011010100101111010100001001011101110011011100000100010100111010010001111111101000100010110111000100110011111010101000001010010010001001010101001010011000000111011011110101011010000100000111111000010101101011000111001101110101000111110010000110000010011001111100011101001010011010101011010100101111010011010010001101001100111001100100010110000010111100010100000111011011101101110001110100110100010010111011110000011100110101010001011110001000010101101011110100001010001001000110101011110000011101100111000000001101101111000110011001011001011110001001110001001100011110011100111100101111100010011011100100001101000001000000111110011100101000101111000101110101000100100011100011011110110100011100010010101011101000010111010010101111110110001000010100111111101010010111110101110001001111110001001110100000011011011110001111111101111101100010110011101011101110101101111001011010111110010100001001000001001011110101111111001010100010000011000110111000011000011011000000101111000101010110001000000010011010011011111100011001100100101101011000111010100110100100001000110100100100110110001100111001111111111000111011001000110010010001010010000010111110001000111100011110010001111000100000111010110111011100001100001010111010010000100101111110101100011111100010001100011011000001100000110011000000001101101001111000011110100010110101100111001010000111100111000000110011101011101100111000101010001111100100100010010101000001011000010111110101001011111001110100101101011101111001101110001100010000100100100000111000100110000110001110000101011000001001010110000000011000001100000110111100000111000011101001111001110100001100011001011010111001000111011110100011001000000110110011011001001101110000001111010101010111011111101000101110101111110011111101110111101100110101011110000010001100110010100000000101011101100100101000101111111010001110000010001011100101100000101101101101000011010001000010001110100000111001010010101001000011111000011001010111011000111010001110001100110101111000101100010000101011010011110101101011111001110000110000101110001000110111001000111110010011001011100100111001011000000100010010000001100101011001101101000000101110111010011110100100011010101100110100010111010011110111001000100101010110000101001110110001101101101000101110100001000100110011001100011000010011011011101011010110011110110010000100111111010011110101100000001000001010101100011100110000111000110101000101100111111011010111000101000111111101101010001111100000111100110101010010000011001010000111000010100100011100100001000101011010100101111000110001101111000111101101110110011010110110011010111001010110000101001110000001010000000001011001111111010111010010010000100010000101111111001001000110110110101010000010000001101011010100101100101000100000010000110010100001010010111000000111000110100100110001010011100101001001110101111111000111001000100100001000100110111000110110010111110101000101101001111001100110101111001011000001000111100100100010011100011000101000111110001010010111110001101101100001101010100101100110001010111101010101100110001000111000010101101101011110011010001100100100011101100101110010011101101001110000001100110111010010111101011100000100101111110111101101011011100000100101110100010100111000101000010011110000101011110110000110111110110001111001011010100001010001110000111110111110101000001010011011001001001101110010000111110001000100111010101111110011100000101111110000000100101100100011100011011110111111101001010110011010000100101111000111010101110100101110101010011110110001100100110010101110011001100101110100111010010110001110010101110111111010101110000101011110111011010010100010100100001111111110111010001100100001101010100110001001011111011010010001010111011011000011101001001010100011010110101001100110101101011000011101111000110110001000110010011010100011100000100001010100111110100100111010010110011001110111101000100111100100011101001000011111001000111011100001001000111011111101001100001100010000110101111000001000000101101111010110000010100000000010101011110001101110001111001010111100101010111000100000011000100010111110001010001000001010110010110010110100100100011010001010101101010001011001110010101000011110100100010001101010101101001111100110010000101001010100001010101100110010000101010110001101100111011110011010110000111100110010111101100001111111101001010010101111011100000010001000111001000111010111011100011011011010111110000111000010011001010011100101011110011001100111100000011011011010000111010000011000101100111011001110011010001000001111100100101101101001011010110010010000100110001000111101111110010010010000101011000011101000101100110111000011100101100010011010011101000110001011010101011111000010000001111110101001100110011001001100101100001010100111011011111011000110010111010101010000011110000101001010100001110000001111010100010101101001001111000011110111001101001111101111110110111101000000110100010010001110100110001000111111001111101100010101001011101111101011100010011101110011111101000101011000011111011100101101000000010101101110100011101111001101001110001001110110101111111101001010000111100111100100001110101011011110000001010001010111010111101110111011101000111011011011011111110000010011111100000011100010010110001001111011101100111101010101100111111111100111110111000000110000100100111111110011010010000001100011111010000100000101110101011100011011001101111010011010001110011001000111110010101110100001010000100010001000111101101101101000110001101101111100100001011010111000001111110001100110010101010110000011000110001110110010001011010111001100110111101100001100001001001001101111100010000001101010100100011101010110101111010000000110101111100101011011010101111011100011110000100001001000110110011000010110001001010110101100100000000011111000000000001100001001101110111111111000111011010100110001011100111010000111111011101000100010001110111110100100000101010011011011100110000011001101110011101101101100110001011100001000101001101111111111010000011100000111001001100100110011001001101111011000011000010111101000111111011010101110111011110111101111101010101111110011110100110100001101011011100010110001010100011011001111110001110111011110111111011100100010111011100001001100110011111110101010010011010000100000100100111000100000101000001001010000100011111001011000101001010001000011101010111001100011111010110111010101111110110111100010101101101001111111110001000000110011010010000001110111100000011111000110100010100110001001110100010000101101011001110000100001010101100110000101100111101111011010010010001101000101011111000110000011100101011011110100010000111001101011100110101111110000011011000010010000111111110110010100111101011011110111101011101111101111110101111000101110101110110100110010111110100100111101000110001000010000110010101001100000001110001011000111000110011101000110010110100000110101000011010010101111001000101110010010010110100011111000101010011110011101000101010000000000101100111111001010110100011100000000001110010000101000010101000000011101001000111111001001101000111010010100010111110011100110011001000100100100110010101110001111000110000110101100110000010110110111000000011011001101110010001111010000101010100111110010100010111110110011101101000010011101011110010001101011101111111010110111011011000101101111011101110110000111100011000010011100100010000001000111000110100001111001011000111011000010001000110111100000111110011 +010101000011101111000011110101011011010000011001111001101111111110100000101110101011110001011100000010111001011111001111000100000010011000101010101100111001001100010010110111100101101011011100000101010000010000000111011110110001011010111100001111111011101000000010111010100100000100100011110011101000000000111111010011010101111110001100010100011111011001110100010000011011101001111011001111001011101110100000101001110011000111111111111010101100001001101000001110100000100111111001010011101110010000101111110101001111000110011111011001100001001000101101101000111100101001110011101100010010110100100010100001111001010010101001010010100000001110000010101100010101011000111001010100101000010000101001011000011100111011011001110000110011100001010111010010110100101111010101010000010011010010111000101110010001100110011100001010000100010001000000111011011101111111101100011001101011001000101011011100110110000000101001011100011010110011110000001000001100101011100001111111011110011010101110110001001100110000010100011101100011110110011111101100010001110010101011000001111010010101001001011111010010000110011011001101010010000111010010010101010100010111110010100001011001011100111011000111110100100100110111010101001001011100100100101100101000111110100111000001111100010010110001011000000000011110100100010100101001111111001001100001000101110000100100000110101011111110100101111100110001001010101011001000000101110101101101001100100110001011100111010110001011111011001001111111000000101100001101001000111110001001010101000110000011001011010111000101110110100100001111010111111111100111000100101111001000001011101111011011001111100000111111101101101101100100001001011111111101100110011011010011010010101010110000001000100011101110010000101101001100101001010101001101000011111111101100001100000101011001101011101100101110110110100010011111101011011111101011010111000010000101000110010010001000010011000001100101110111101---------000010101100000100111010000011101000110111011100111101000111101010001100110101010110010001011000000010011100111000010010110101011010011101011001100100111001001100010110110011011100010110111011011111111001101111111000100001110010110100110110000001011101011011011101100101100011011110011100100000100011010000000001101011110010000011001011110011101101100000001110100001101011001010000000110100010010011111011111011101000011011100100101110010011010001100001011001100110001110100110001011101110101010001010101010001000101011010001111111001000001011100000011000010111110100111100001011100001010000000010101000101001100110000000011010001100100000110010000011000010011010110011111110011001011000101001000100011111000011010101010110101010000110111111100000010111010101101110111000010100010110011101010111011011101001010101111100011001001001101100110100000010111011111000010010011111010000111010001000101110001000110010101100111001100010110001110100111110001000110010101100011101100001100001101001110110101110010000100101111000110111110101111111001000011000110111011010011101001011000000001001010010011011100111111010010111101111001011101010111011111010010101001001010101000110010111100101110101110011001110011101101100010010001011010101000101001100011110000110110111011001001111100110110010101001000111011100010111100001001100010101010101101001001000000111010010100000001110100011110111001100100001101000010001011110011111001000111011100001010001100011000010100001111111100001110111011110001000110000011111011101101100100011001000000100100101100011100111011101100011111000011010011111101110111011001111100110100001110001011010001000011110001010001100100001001110011110101101101101001000000111110101011001011100100010101001011011000111000001001001000110000011101001110110010010100110000000100011011101011010010011010101110101001000101100110011101011010010101010101011010001011100010000101110101110100011111011011110111101011100101100000101110000111101011100110010101011110001010001101100010010100111100111000110101011110100111011011101010001110011001001110001000101110110010001100010001001000110011100000101110001011010001101010111010101011111111111010011000001010101100101011101001000110111001010110010001101001111011101111110001110000011001011010110011000101010111010001010000101010000000101010101101101101010100000001001101010000000010100110100111111100001101000111011110111100101101010100001100011110100101110111011011010011110111100101111010010001111111100000100111110010000001010101010010000101010010011110001110110010100011011000011111010111101000001110010100000100101110111101101001101111111101101011101010010011110011011111010101100010111110000111000110001000001000110011011101011001111111110101111011001001100001111010101010111100100010101100101011101101101110001111011100110110001011011000101011111101000000101010100110100011110001010110111010000110111110010111100100000000111111110101101010110010111110000011111101110101111110110111001010010000010110100010000000001001111101010101000010011000011111100001100101001111011100000110100000110101000011101100001000001111111100010010001001101111110111000000111100011011110100010000111000001001100111001010010111110001010010110100111000101011111101011001101100010001101100001110000100001111001100111000101001000001001111111010100010100010011000011100101010001111100101000110110111000010101100000100011101111111010001101101111000010000100000101000010110111010011000100110101011010101010100010010111101000110111001101011110110100110000110000100101110100111001101101111011101110110101100000000100101110100111010000100000100100001101000100101010000101001101110101011010100110100011000101000111111001101001101011001111100000011001100000011110000100001110000101011110000111100011101101110111011111100010110111100001011000101010100110100000111111101000110000101010101000001100110011100111000011100011110011111100001100101001000111011011100001001101110111101111101111111010010000001010011110001011001101111101011000110000000111000010000101110010111100001001101010110000001110010011100001011110011100010110110010110001010001011111111111100101100111011010010101111011100101110000001000000000111100101111010100000110111110001101111111011111100110110000010100011111100011101101100001101000111110000001110100011011000010110110111111111000011100001011111111011111010100000111110100000001011001000110100101000010111100011111101001110100100001100111000001101110110001100000001011001111100111110100011010011010100110100100000010111111110010000001001101110011011100000001000100011010000001100010000100010010001011000011010101010111011001110111010000011101100100111000110000111000010000010110111000010001100011111101000010010100100110101101111110010111111011000111110001100001110101101110100000001110111111111101001001101101100110101100001111001111000011000000101110000011001010010111000001111011001100111101111111001010000111001000111011011111001100010101011101110110101111000000000111001000101011110001101011000111001010101011011110110100100111010101100001001010011011000001101111111111100010100111000101100011001101111010001100100000000100100001101011101110101110101000000011000111010000001111001001110010010000001111100100110110101010110110101011000110011001001100000111001111100001110000010111111100110110001110101100011101101100111110111010100110000011001110111100111111011011011111011000010101010100110000011010100010010101100010000100000011100011011001001001111011111010110000000110010000000101000100100010111010010010010000000001110100111010111001011011001000101010111100011001111110101110101110110010100100111100000111111000110111011001000111011111000111100001110111111100101110111000010011000000000010001100101111000110011011000110100011110011011111100111010101101110100110111101011100000101110010011010001010000010001000100110100100110111100000010110101011111111000000010011011000111111111100110100011100010010010111011010010101010110100111011101110101101110001001001011111100110101111010011111010101110011101100000110001101111011111000101010100011011010010001000001110001010001011110001110011010011111010010010001011101000010000101000010111101110011010100001000000111110000100100101101011001100010101001110000000111001011100100011010101010001100110000111011010100011011011101001110100110001001111101011010100110000001100100011000100100110000011111000000111110100011110010000010110010110000001101000010110110100000110110100010110110000110010101110000101100110101001001111010011011001001011000110101100001100011111101101111111100111000110101011111101010111000010000110100010011001011110110000001000011000100011110011101011000000110100110100111011000100001100010000110111001101111000101100001011011110001000110110100101010000000010111111010000011100110110001001010110011010110101100001011011000001111010111101000010111011110000000100110101110001001111111001101110011010110000101110001001011000111100111111110000101111111001100010010100101101001101010110101001010100011010111111011010101101011100010011101100000101001111100111011100100000000110000000010110110111010111110100000110100010110111010010110000011110000010011010111010011001101110010001000001110010100001111000100100111111110000011101110011011010110111101100110011011101101111010001101111010000100000101001110011000001000111010011000111000000000101010100001110111001000010001010010110000001001011010011000111001101111011100001110011110000010111001010101011001011011111000100100111100100001000011001110101111011001100110101011101000010001110111010100001110000101101100011101111011010111101111101110000000011111101001001101000101100001001000001011110010101001111101001001111111000111100111101101000100101010111101100010010110111011101000011000010000011110100100111110110001100011111100011111111111110011101010010101111001111000001000010001110011101110001100111010000000101010001011100111100111101110000100011000101100011010111101000011111011110111000010010001111000010011010100001011101110111100000000001110001000000110010100001000100111010100000101100011110011111011111000101010100011010110000000001010100101111101011100101100010010111100111111110000100100011111000001100011010110101011110101100001001011111110011010010011111100100100000010001101011011000011010111100001001110111111100010101010100100101000001101010010000000101000111110010000001010000111011011100100011000111110111011100111000001111011101110001110010000100001111001111110110110100100011101110011110001111111110010001101101000110100101001001001010101110010011101110111101110110001111110001110100100000000001100111010101011111101000110100100010100010010111110101110010101000010010011100010000100000000001001000001110011110100010100101101100001110100110010101011000011011011000101100111011011000101010010111011001001100000111110010111001001011100100101010111110110111001100101001110001110100000001000000000100101110010111101001010011101111110010101111010000110110011100111101100011111001100001101010111101110010000111101010110101100101111011101000000111111101001101111001001010111011111001011010111000101010101100111101001111101001010001111100011000000010011111100110000110100001110111111000010011010100100010010100100100111111110000011100001000110101010000000011001001011111110010110001011000110100100101100101111000010101111111101010001001101000111111110101111110001001011111111000100100000011010101111111101001010010010011111110100011111100101010011100000111000010100101101000110110000010000100001111011111111000010100001000101010011111011111111101100001011101100001101101100011111000110011101100001010100100001110100101001011001111101111001100110110100000010110011000011111101111100101011111001110011111110101101010011100001010000111110000110100001110010111101100011111010101010001000101100001100111101011000110111101111001100010010101100101111010100110001010010101000101001111011100001010110110111010110101100010001100111011101011110000010101011011101101010001010101101010001011010000101000111110111100100000010101110100010011110011101101001100101111010111100011101010100110000010011010100010011101100110100010000101011111001100101000001110111010010101001110100110100101000100101111001111000101011110100011001101000100 +000100000101000101001010101010000010010000100110110100000100111010111100100111111111010111110100010011111110011111010011001001000001000101010011101100100001010010001011001011110000100000000101111100010010100100001001010001101011010100010110000100011101000100000101001001111111110100101011110110101110011010101000010000000110110111100111010011101101010000010101100001001101111110010111010110110011001110011000000011111100111111000101001010100100000100110010011001100110111010011000111001000000011001111101111101111000010111100011010010101001101111001110011010010001111000101001000000011110001001110111111111000001010101100111101011011001110001001111001110100011110101100001011010110111110011111101011001111011101010001110011000000100000110100000111110101100001111011100110101111011010100001101001001110110100010100001001010000001011010111101001110111101101111011100000010101110110000100010001101110010110111000000110100001010011111001011111000000011001111111100001110010000000111000011100101001010101100011110001110110010011111110100010001010001110001000111011101010000011010111111110101000101000001110010101001001100101110100000100101011001110000100100011100110000000111101100111100010101111000011000011001101111101010010101111000101101011101011100100110101110001101011110001100100110011001100101111100100101000111110100100101001100000011010111110101100011111011101010101000011010100101000000000001011001101000110000011000001100001110010011001011110010000011100101001110010010100101111001100001001111010011011111111000011010110001010000001011001101011110000000110101100010110010000000010000010001001100111100101001011001010110111100000000101011011010110111100011110110011011011100011101011010000101010101111001100100010101010100100111011100101000010110110111110011100100010110110110111100000100010010101001001110101001101110000101100101011010111011000011101011000101110011111110110001111100101011011001000011100---------110100001011101111100100110001100001100010111101111010001101000111111101110100101100011110010100100000000010110011001111101010110000000111010110111001011111101101101011011010000110000111111001111000100110000101101101110100010011010111101100010001001011100111100011100001011011010100101100101010111001101111000001110110110000100100110100110110100011111011000001011100001100101010101001001100110111011110000100001111110010010010010010100011101111110011001000011001011000110110110011010011101010111101011100001110011010001010011101001000001011010100000011111100010010011010111110001101011001010000101110110110001101101010001110100011100010010110100110100100100100010011010101010000100111010101010011011001101001110110100000000011100001010110010010010000000011010101010111011000101001011011100001010010001100010011100001010001011101111110100001000110011110101000111000001001111000011101101100111100110001100001101110000001001100111110100000100011110110111110100100001011111101001110100110101101100000001010111110110001000110000100010101001100111110001111100011111000101100110101011101100001100111000001101001010100110001100001011100000101000111001000110101011011000111000101111100000101001100110101010011000100101110110001001111001100001010011111000000111110000000110111101100001010110101000101000010110010100010001000110110010000111010010010100000011110010000000010001000110011001101011100000111111001001010110110000011101101010001110000111100110101100111011000000000101000110010001000111111000011100110001110000001111101110110100111011111000001001000101011111000101011010111011110100010001101111001011100100010001111111111111000011111001101110101011110000010000110111011001010000110011001001001001101010000110000111011111001101011001000010011111001100111011100011011010010000010101010101000110101110100110000000000100111010011111100011110110101011001001001011111100001011100011110010111001011011001010100100111010111110111010001101111110100010000100110011111000011001010111110100001010110010101010011100101000000001111000110101000111001101101001010011010111100111001100111111000110100111111001111101000001010001110110110110011101100011010010011001100001000111001111111000001101110111110010001000110000100100110011111010001001111111101000100000111110111101101101100111000110101101000000000001101110011000001001001010010000000001100011010000001110000101101111010001110111010100001111101011001011001010010000111101000011011101110011010000010110011010001000111001011010110011000111000111011010010000100110100110001111100101000010101000010010000011011101101110000011001100010011011101001000000010110001011110000000101111001011101001000001110001011110111111110111000110011001011010101010001101010011111100010010101110010000011110001001010000111111000100011010100010101001000111100101001111110011000111110001111110000110000100111111000100001001111000101000101110111001000011110011100011101110111000000000000101010111010110010110000100001000110011010100010001111001100111001001101011100110001110100101100001000110011011011001000111111001011000100110001010010100101000001100111001000101011111010110000000101000100000010110110010111111000010011000000101110110111010100111010111100001011110011110000000100111001111001111100001100000101111110111001100011010000110101011001000100001010000001011110110001101010110111110011110010000110011110110110011100011100010111000001111001100011001101111000011000100110010011001111011011000111111110111000010101010000011001011111100110001001010010010011001001000010010001011111110000011011101110111001010101100011011010100100100000010101010000010011110101100010111110010100100110000111111100011111001000100101100101000001001101111011000100000010110011000100110001000111111000100111100010001000101100110100100001010111110001111100111011001000101000011100000100001101110101110011011011011100110011101001000100100011111110101000011011000100111011111011000111100000000111010011000100000010110001001110100110011101110001101010010110000111110101111100101111110111000100110110011001001000011010101010001110110010010101010001001100111100000000010001010011000010011100101000011100100011001001011000111111110001101100110000010011000000000111011100010111110000111011011110110000010111100110110100110001011000001101110111110110111000010100101010000110001100110111111101000000100001110101111110110010100010101101111101100001011010001000010000011000110010000000001111000101100000101110000100011100011000001001010010011111010000010000110010001011011111000011000000011100010100101111000111001110101101111111110000011100111110110001110001100101110100001101101000000110001101000111011000110100011110100010010100110101110001010100010111100101110100011111101010110110101110101110011000100111001001101111100000100011111101110110110101000111100000000111000000100001001111011000101011000000000001111010111110100010011100101111110110000001111100101111110010010100011010011000011110010110110110111110010111000011101111111000110101010001110110111001101100010111000000001001101101100010101100000111010000000110111000011111111011011000011000100000111010101110110000010001001010011100000011000111000001110000001111010110110110110101010001001101011100000110101101111110000110110101110100011001100000010100000001011101101011011110110110101101001000010001000100001010100010000100000101010001001110011111010011100011011110010001010110100010010001101111101100001100110110010101101110110010011001101011110000001101101001110010011111011010000111110110000110010000100111100101000011110000110011111110101101010100100000011010110011011011111000011011001000111110101010101001010000000110001111010000010111001011110011100110011100011100000100111101101000111000001011011010100001101000000011011011001011001100001010010111101001010101000000100110010010001001001100101110110111011111100010010010111111101000011100001010111001001101101011111101100000101000011001010100001010100100101100101000011100001001001001001100010100010001011101101001010101110111100001101000111001001110011010001100011100010000110100111001100101011100110000110110111011100001000010100011101001111001010010001101111101010001011001100100110111010111000101011100001000111000001010001011011110110111111000101100111010011100001010001100110001111101001100010001111000110010010000010000101100001010110110000101011110010110000110100000100001000010100010110101010100010000100100001101100011000010101110000110111111111100101101001110110010000111111001001101111101110010111000001110101010010101100111100100010111011101111111101110110111000111000100010101011100001111110110000110101111001110000100000110110101110000001001110000010001011000101111001010001100010011100010001010001100110001111111000101010100110011110000101001000111101110110110001110010110110100010000001011110101100101001100101011100101010110010000100111010111000101001001011101101000110000101110101110100010100100101010100101101010010001110101111001010011010000000111001001110110010011111011011100110011000110110010110000011101101011110101101101111011000010010101011100011010111011011000111111111100101000011101100011000000110011110000010000010011111101111011000011111001001010100101110101100101101000001100010001010000100011001000100011100100100001011110111101110111000101110111010000111100111000110101110011001110001110101100000100001110111000110011110101100100100011110101001011100101011001101000001111000100100101000000001010000111000000000010000000010000010101011010000011100011111001110010000110001011001111011100110010011010010100111001001010011110010100011010001000111001111000110100000010101110010010100000001101001101011001011011101011000010011110010010010001000010001011100111011111001111101010101011010011001110000010101110000001010101101110010110111010101100000000001111100000001001000100100011000111001001101011101100101100011011001100010110101101100011011001111100001000001001010010010001110100011010000101101101000011100001001101100011001010010000101011010011010001000111010001011100101011101001110001100111001100011101010100101010111111101110011000100101011101100100101101100001110111101001001010101000000111010110110100010011110111001000011100110010110010001011110000101101011111111111100110110101011000101111011000001101110101010101000100001101011001110001101101001110011001000110111100101111110101001110101010011011101110111110010111011001010100101000110011011100111100001100010100010001110011011101100011011110111000101001011111011010001101011111110011111010110011010101011101101010001101100010000110001100010010010111101111101011111110011010110110100011111110101100100000101100011011000101010110001000001011100001011001100110001101011001110000110100101110001101111010010101000100100001001110100000010100000110001000010010010010111011101100000110010011111110100010001111001101000000100011001100111010101111111011110101010101010110001001010000100000101010101111000111110110100001111000111011001110111110001100011100011001101011100111010110101010010110111111011010011100101000001001011001110111100110010100001101100111101100100101011011111010000001111100011011011010111010100110111100101100111111110101000011101111011110011110010000111101100001011011001101100001110110111111100000100100110011101001100101111000001101000101001011011001011001011100000000000111100001101010101100110101011110110111100100010101001001100100011111110001110101000101101111101100110000111100111110011100000101000101101100011100001000110111111010110110100110111110100010010010100101111010101111110101011001000010111010100101011001011111101000000001111000100010000001100100011111100111011111011111101010110101001010101011011000110001001011011111000111001010000010000011001111101001110101010111010010011110100101010000101101100011101001111111110101011001100000110100110000000011011010110010100100010011110011000011010001011010111010110100010111010110100011011101100001110110100010001100011011101011100011001011101100001001100010100010011010011001111010101011110111000100000111111001110011010100001101111000011100001000101100110100001011000010011001010011101111011111100010001110110100001001011001000110000100010001001001111101001000101100001101110010000010011000111101100010000000011011 +101010110100100001011001010000111001010100101100100001110111101011111010011100110100011011110100101100010111101001011011011100001110011001110100110001001111110111011010111110011111011110111100100101001010110011011100101101110000110010100011011110010000011011000001000000111011001011101111101110000000100111100001010110011100111000010001001101101001100100001110111011000011000000000100011011101111111101010011100000000101111110000110001010011000010100010100110111010010000101100011001101111101010000111010000010110100111010001110000011001010010111110110101010000111101011101110111010100000001101111100111000000001011011101100010001000101011110100011000111010011001101100100101101010011000101100110010000100101101010011100101110101000110110110111010100001111101111100101101101110101110100001111101101100101101011100001010110000011011100101011101011110101001010110011110011110101000000000101111100101001000011010001011101110100110101111100100011111011111000011100000001001011011100100011000010111110110000001010110100010011100101110110010110001111010100110011001110000110101010000110001010001100110100111010011111001101100011011011111101101101111110111000010101110101100111101110010001101101000011100110101111000010010000001100011011111101010100101001110001011100011010001011111110000110010111100100110010000100100110001000101101000011100111110010000101011010000101111100010101000100001101000010100001100100010100101010110111001011000111011101100000010011110101110011000100111000101000100010111100100001001001011100110010101100001011110001011100111011100101110100010010010111100011100101101010010110111000110011010111011000011000101110110011111100011100010111111011101000000001101100011010010100011101000001010001110001011010101000110010111111001001111000110111111100010100100101010101011001110010010011110100101011111011100000110000111011111101100100100111100110001100000000100001110000110111100000010100011111111---------000000111101101100111001100101010110101010101111010011101010011000101101001110100111110100100101001010000011111111111010100001111010010001110111001000110001111011111101000001001000111100111110010111001111010110011100001101011010110111001011110010010101010110110100101101001010101101110110111011000111011011100010101010011000100111000011001000110011100001100001000101110000101010111111000010101010010010001110100010010010001111011101001000010001100010100101010101010100111001000101110011010111111110101010110010010111000101100111111100100101111001000000111110001110001111000101110110111110001010011011110100001010111000000111111101111110101001111000100000110011011110101110010001010111100011100011011110001110010001111101000001110110011001000101000101111011100100100100111100011110001110010100111001111010100011111000000111111101010111010100010111110011011100000110001000111010110110100011010100110110010010100000111011111010011010101010010110000000011000001001100111010100100010010001000101000011000101000011110001111001000100111111100110100111000101100011110100111001101111001001010100111011000001100100000000000010011011100110000001001011111101001111001110101111011000111100011010011111101000011111110010001001001111110100011101010101000100000111011111010000001110001001000110111101101011011001100110110111111010001010000110100010001001011000111001010011101101101010100000001101010100100000001010111111011000000101001000001111011111000110010111111000001010100000001010100001010100110100010100110010111011110110011100000000111100101000100010110000001001100010110100000110110100100000001101111010111011010101000111010100011111110011110011110101111100110000001011000111011011111000101100101111010010011011000001100100000101010110010010110101101000100101000011000011100000111100001101001001000010001101010101000000101101111010001110000001101001001010001110000010100110001100100111110010001101000110001111100100110011101110010100011010100110000111110100001000100011001111100111011111001000011000101101011110011110000111000001101011011101101111010110000001011001101000010011100111110000001110101101101100010101011110111111000110110010001101001010000110101111000010000110010011100001001100100101110111101110010011000001101000001101001100100100111110111010000010000111011110011101011011110010000001001010111001001101100000100010110111010001000111001001111101101000111101001001010110111011111111001000011110111101000010100011110100001010010110110101110101010011100110001010010000000101000001000111110001101110110100010110101010110001111010100101110001000010111101001100001011110110010011100001010110011010111010001111001011111101000100100100110000000101111000000110110001110101110100110111011110011111001101101010110101101000010001011100010001000010001100110111001001110110110110000101111100100110010001010110110001001110101010001110000011001110110111110111011001010001101010111110000010000011110000101001101111011001110011110110100100101111110100000010001100110101100100011111001101100101001011011100001010000011110000001110010000000010110011110100111010101100110011010010111011011011011101101101001101011100110111111000010010111001101000110001100001100011011001101111110001000010011001101011101010110001100000010001011001001110111111010111110110100000111100111010010111010110100111101111000111001110011110100011100110001010001100111101111001110011100111000101010011011100110000001110100000000111111101101100100110011010000001010100010100000110110000100101000001000001000100011011001000001101000001100101101010101010111010010110111001000100000111010101110110100011111111001101110001010110101011100011011000001100000111101010011001111001100101010001000001010100001100010001010101111100111000010100001100101111000111000011000110101010100010101011000000110011100011101111001111010111101011011001000001100000101100100101001001111001111001011001010110001110111010010100101101101001101110000101100111001011000010111100000101011101110000101111010110100100011100100111010101101100110010100000101011101011100010110101001100101101101111001010010110110000011101001001100110110001111010001111010011110000111011100111100011000111110011001001001110010100101010101110011100011011010010110010011111000001010000001000111110011101100010110111111111110101010100101111110111011101110101101011010010010011000101010000111111000111111100100111110001001010001011110000110000001000001000011100001011110001011001010010101100101100010001110101101110111011110011100111101001010110101100010000000010111110001011110101001110101101011101100101011011011010110101110100011110010000100011101000011010111110001011011100101101101000101100000010010000111010011110100110100100010010010110111111011110111101100100111110111100010000100011010010110010111000000001010100110001011110000111101110000011000110000110010010010100011110001000100010110110000101111010000000010100111100001111001000010000011111101001101010100111000110110011000001100101001110011011110100110111011011001101110011000010011111001110000011110001011101101101101100101100110010000111000001101100001001100010100110111001011010011001111011000101000100010100001100000111101001110001010111111111010111111111111111100111001110111000100101110000110101001111100001001110101101110110100010111111011010000110010110011000111100011011111100110000110100100000010010011011011101010000110000100111100100111011110011000010001011100001011110111101000111110101001000000111100000010110110010011000111100001011101101000100011010111111110010101000010000000101000100010100110001010100100011000000010000001010001101000111001100100111010100100100111111111000111011010001000011001000101110111111100000000001101100011010111001010111010110100010000001110010101000010000000010010010001110001001111011111011100110000110011000011100100100100010110010001001110001100101111110001001000001001111001101000011000011001100100101111110111110010100011011010001101111100000000001010000001111111001111001011100000011111111101011110100011111001011011011010100000000110011111001100011010100000000001001111100010001011111000010000111101010000011001111000001001101110011100000001010111111000101000110001000100111110001111100110010110100001111100101011011111000001100010100111011101100010011110101110010000010110010010000100110110100101011011101000010111111001001100100110100111100110001110111111101000100000110110000101011010010010100110011101110110010001011100010001101110000010001100100001110001101010110010000100010000001010001110111101000010100101101010000001001000011011111101000010111101011001000100111100001001010101110100001110010011001010000100001010000000101100111000111000001000100011011110100110111100011001011010110100101001101011110001001011101100001111111010011110001001001001001100000010011111101110000001100001011111001110101001000111010110010101011100110011000011011101101010010010010111011010011101001000001011101101110101010111000000101010011010000100100011110010011011111010100110000110111111010111001000011100010000110100100110101100110001001001101011000101111101010100011101100000111011101001000000100000110001101100111001010110101111100001100110110111011001011001010010111001010100001100000010111001110001001110001010001101101100001011011100101101000110101101001000000101001001100111011110001010101001011110101111111110101101001011100110010000111010111100011011011110110010111010110100110101010000000000101010100010110110010010110111010001001100101000010101011111001010100110000010110100111110101100111111101111100100111100010010100110010011000101001101011101000000110111100000101100111010001111111001101011111000000001101010111110010110000000011101000111111000111011101011011000000100101100111000011001000010111100111011000111101101111101100100011100100011000110110101100100110101100110111101000011100100000100000111010001011010110110010000001010110110111010011001000000100101001000011101110010110000000110110110011101100100000000011110011000110000111111011011000111000110111110110111001010000111010000000000110011101001011101010010010010001101100100101100110010110010000001011000010101011000000010101011101111101110001100110100110000010110110011011011000101000000111110100100010010011110101100111001100011000011010110111001001010100110101101011011010011101101100110001011000000001110101011001001001111101110101010000000100111001000111001100110001011000001101011100101011011001000111101000101111011001100101110010101111010111001001010100100010011111000110010110011100101101100101000010110001011011011111010010100101101111010011101010101000100111110101111001001001110101111000011101001001100100100010000010111100110011101110110000011011011000010000110011001110011011001111000101100111001111110101010111111001011111010001011010101100100111110011001000000001010111100100010000001001010110100101110111011111111011111100010000011101110110011001001011001101111100110111010111100111011001110111111001100110010000010100100100011101101010001001111011110101100110111110100110101011010000001010101000100011001110001001000111011111000101010110110011110101000100001101001001001010010101110001011000011001001101100011101010000010100011100011001110101000001101011001110101001100101110101011000111010010111101011100011010001111011011100010111100101000000101101010001011110100110010100101000111110000100111001000100010000101110111101110011010101111110100101101011000010011111110000000110101100101001110011010111110100011100000100000100000001011001000011100010111001110011111111000010110000111110111010111000011000001110010111111110001111111001011101001000000000100000001100001001000101001110010011101011100001100100100011001111001011000101011010101101100011010110111101010011000000100110010101001011010111101111001111100100110000000111111000111010111001010100011100011010011000001100100111000100011111100110010000001111000010001000010111000001001111011111011101011010000010001111001110101110100110101111010010110011000001001001110011111101111111010011011111000100010000001001110010011001111101100001111111111110001111101111001010011111000001110011110010101000001010010101001111001100011011000000001100011011000010111010000000101100010100011111111100110100000000001001100001100111000001001101110 +110010000011110000010110100100010000011101111001001001001100110001111000110001000010000111001011010110110000100111100010000011111001101010001011000101001011001110110010011001110000101101111100000000011111101010001111000001000010111010001110100111000001110100000101101001110000011010010110010110101111010010001110111011000011100000010110011110101001011101110010100111110100110110000001110011101101001011111000101111101010100001010011100000110000111110000001000000001010011100100000000110101111000110100111111001111001000001011000111101111101101101010101011100010111010110100011110011111010000010000110000100111010000000101000000101101111101001000110111100111001000100100001110000101001011111010101111110100110001000110000110000011010100101101011111101101000101111111100000001010000111111010111100001001100001001001111011110100001000111011000100111001110010010010110100001100111000110110000100011101111100011010110100111011110010111111010101000001100110100111010011000011110100011011001001100001111111101100101110000100000100011111010010001111110010001010000100001001001101110001110000011001100000010001011000110011111000100010111000100110011110010011110000101000011001001100111000011101001110110011101100101010110000011111010011000010100101110010001100101010000001011011010110111111100111110011000000111110111000101001100101111111100011101110001011000000101111010101111101111100111110010100001110011110101001101101010000011111110000111010001010000101110010010000010001110001010001001010100110011101010101111000010111011001110001001010111100011110111001100001011011110010001110110100100001011100000111011110010110010101011100010111101100001001011001000111101000010000101000000111111001111111011100111000011000010001100000010011111100000110000111100011011111100101101010100000110100101000011111101000101011010111110111110101111111100011011110100110111110010011111101111111001101100111111011010101011100100011111100---------111010101111110010010011110011000111110000000000010001110001011100110100100110101001100000001100001100111011111101101110001100010110111100011101101111000101011101000100011101000101100111101000001010001100011100110110001100101100110110001010000111100110111001101001101000111101000001011110111101110000100010101010001000001011001100111011100110000101000000110000000011110110010000000011011001110101101010101111111111011111111000000101001001100001111000100100111000010101010011100111101010011010000000000010000110000111111000111101100001001111101111100011001001111101101111010000110000110100101010100011111111100001010111010110010011100011110101001101000110101001101000111000001111011111000000110010011100111001001000011101110001000000000101000110001101101110001110011101111001010010000000000111011101101010100101011111110011101010100110001101001100001111110101001011011011111111010001000001110111011110111000011011001101011000100000101111010111111110110000001001101101011000000110110111100010001111100000101110000000000101000000011101011100101100101000110010110011111000000100000001110010111100111111001011001101010100001011000000001110001101111011111010111101100011100001110100111110100000000100011101011001110101101010011011011100100010100101100111110101100010101010010000110001111010000001100000011001111100110001111110010000110001101100100101000010111100111001100001010011000011111011010011110010000110111100100010100000100111010001111001010110000101110110010011011110001100000101101000101010010001110001000000111101010011001011010010100101001010110000001000001111001101100110010011100100001100000101110110011010101011111001100110011011111011000111101000010011011010001001111110001000110000000110100000011000001001111111001001010011010010011001011100010000010101101101001101011100001000111111101100011001101000101010111000110110100101100111001110101110110111110101101101000000010000000101011110001000011010101011100011101000001000111000100101011001111100100010111001011010101110001011001010010000011110100000101001110011011000100011110111110010000011101110000101010101010000001001111010111010111010001011101101101000011000011110100010011100010000110000011100000010100000100011110111011011111010100101111100110001100000110011010110000101101001011100101010001001001001010111100001101101011010011101111111100111100001111010110011110011001101000010101000100010101110000101001111101001101010100101011010111001101111110011000101010010101101011000101101101111110110110101111001100100111010000000001010110111101100010111101010000000101000110100101100000100111101000010001110010101011010010001010010000000010001001101101011110000001111100101010010100010110000101101100010110101010001100000100001010010000111000100001001101011101111101000111111011001000010110011000110110000111101001110111011101111110010100101001001101000101111010101111011010000110110000010111100000010111100101100011111001111000000111111100100010101010010000000110101000000000111111101010101001110001111100001110011001000101000001110010010000000001100101100100010111001010111111001010111110011101011111111001100011110101101111011100000101101111110100000010011100101100010010111000001110101010011110001001001010111101111111011110011110011111101000010100010111011001110100010000101001000100010000010000000101101110010110111010100000101101011010000000100011001101100000011100010111110010011001000011011000000111110000110101111010101001100101111100001010111001001000110111000010101100100000101101100101011000111101100001010001011010001011111110010111011011000011011110111100000000101101111001001000011000001001001110110011010100000010010110111011110111011111110110000100100100101111101001000101110001010101010110011000010010001000000011010100010011010010011000001100001110100000111100011111101110001011101100110011100000001100100100001101001111100101001111011111011110111001110011101010001101100010110010100100100100000010001101101111001000110100100101000110100000111010100100100100101000101100000001001011111010000100001100001000011011001010001110001010011000001010100110110010101111010101101101111111001111110010100010001011100100011111101011010110011010111100101110001110111011000110111110011101000000111000011101100010011010101011000001100110000001010011101000100000010000010001001000101011000000110010011100100001110100001010010101000001000111011110011101001011010011000110111101001001000101111010101000010010110100000000011100000010001011111101101011110001101000110010111111101111110001010001101011101001010111011011001110101111101110101001011111000101101011111001100101100000100111111001110101000011101010110001000100000110111010100011101010111010111101111100110010011010010000010100011010000101100010111000111010011011111010010100110101101011010101110010100111100111011010101010110100010101000100101111000100010010010100010011011000101011011001101100110101010110010001100010011110110100011110000011001000010110001101100001001010100000010001010100110111100111101111001110100000110111101101101101100101001011111101100000011010010001100100101010011110001001001001100001101101110111000100011000110011101110001110110110010110111101000110111110010101110000000101010001101111111111000111001111110111111100000110110000011001111110111001111010001010011100001101011011110111010100010111001000010011010101000110000010100110101101110111000001010101011111000101011001010010110000111101110000000010110011011001110000111011100011011001100101011110100000100101000011111000100000101010100000100010001010000001000011110000100100101111001111000110010100100111100110101111011010100010111010011100110011000011011010110110101001001101011000001000011000100101001011010000001010100010001111001101000000000100111000111001100110000110000100111110100011110001000001101100100110110001100100010100000110011010001011110110001001101111110101100001000011010100101011100101000000110001001110011011111010001110000101011110110010001110011111100100000110011000011001010100101001011010110010011111101000010000100001000001100001010100010011000010011111010110010011110000010110011010010001000100010000000101001101111011010111111101110001100111111010111010111011001010101111100001110111100010101010110001011001000101011100111001001111010000001011011001100000110001101111010111001011001001111011111111101000010001111011000010011111001010001000000111111100010001101000011011010011011011100010000110101001110110101011110011111101000110010000000010000000110100110000010011010110111001100111110001101101001100011111100010101010010111101001111110100010100000011100011111100100000110101110111111101101110110111110111001101101011000100110111011010010010010000010000110011111100111011000111010111110111010001001101010000001000011110010101000010000010000100111010110010011101010111000011011000111000001101110010100100110110111101010110101000100100111110000011100110001010111110000001000010001110100010010001010100101101101001000010111101011111001111001001011001110110111111101111110110110011101100001111010100111111101001110110100101001110001000001111100111100010111100001100111001001110100111010101000110101100000001001101001001100011110011000110010111111001101010001001110101110011011010001000010101111111110000101011100011101101001011110001100101010110000100111000101000100000011011001000010011110010100111100110000111011000010000100100110001001111010110010001000011010010111111111101000100101100000001100110000011001001010011000110001101010110011010000101010111010010001101001100101011111001000000101011000010011100110110000010101101001100011010011000011000100011111101001001111000100001110000010010100010001001100101101110111000111011011101010010101010011101110011100110101100110001100111111001101010000000011100101101100111110010101111001110101111101111101101101101010000110101010110111101100001101000000011010011010110011110011011111101111101001110100100000110000110010101111011101011111101101111001001110100010011110110001110110011101001001101110000100000101110000110011010001111111111100011111011111000010000100000110010000010000101000011000101110111111101100011000010100110110111100001100001101001000011000100010101010100001111010010110001011100110100101100101100110010001111100000111000110100111001000011000111111110111111011001010110100001001110110010111011001000100010001000000011010111110100111011100001000010001000000000100001000110010011100010010010110110111101101011111111001100010101110000011001011100000011000000111111110101110011011000011011010110000110011111011001101110001011100001000101001001110010001101011110101010000011101001101001010111110101010000110011000110001000000100101000100111100101010110010010010100101001101001101101100010010101100000101010001000100111111111111110011000011001111001101100110011110011010110110001001000000010110101111000111111000100111001110110111111010110111111010110011001100001000110100000101000011111111001000011010110110011010001101011110001101101111101000011100101001011010101010100110010111000010101101001011010011101001000100100010010100001111101110010000110111010111101110011010110101111110110001011010011110011000010000001110101110001000100011001010001000000100111100100000101111010010001001110111000000110001001100000110000110100110001010111011000100000010011000001100000001001010100110001100100100100000101110111000100011110101111100111101001110111100010101111001100010010111010100011111101111111110001101011011000111100101100001100001000011000001010111011111101011011110000101011111101101010001101011100000011110001110101101111001111111001110010111011001001000111100101010100101111101010000000111110001001010000000111100000001001001101101011110000101000110000110010110111010000000001011101010101101011100011110111100010010011010001010101001110001000010001000010000110010101111011010111111101110101010110110101001101110110001010001110011101001111111001001010010010001011111100100100110100110000001000000101001111000010110000101101010110011101010011101101010110000111111010011000111010001010010110000110001110101110011000001011011010111010110001101001110110111000001111000011111100010110100111111100000101111010011001001000101100010100110000010110001101011010110111011111001101111101111010101101111011 +100100011011101110111011111111110100110001101110111110100011111000011010111111010110111010100101001100001101011001001100010010100010110111110011110000110111000011010011001011110010100110110010001101001110111100010001001010111100011110010100001111110111110111111011001100100011100011011101100100011101010111011111010111001001001010101111101101011101111100100000100100111101001010001111100011010100001110111000111001000010011001101001001100001101100011110001001010110111000110110011011010011101100110111001011000101011000010011011111100101101110100100001100101010110101101010101110110010110111010111111101100001111001100111001001101111100011011011100111010010110111101101010001111011111011101110101001001101011101011101111111001111101111100100011001101100001010101110100111111100010100110011000010010011010001000001001110010000100000000110111110101101001000000000001101100001100110111010100010010011011111011111100110110010011001101111100111010010101010010111011011011000001000101101010110011110000000100010110111111111110001110001000110010101110001010111111110111110100110100110110100000101000101000100010110011100110010001001010011111011101111000100011001000101000100010111110110101100100101000101100100111001000011101110111100001011101111101011100000101110000000111000110011100100111111000001100100101100100110001101001010110001010101011000010100101101111001010101110100111100111110000110000000001111011010110100101011111110100101001101001000100000111101111101101001001001100101111110001100001101101000011011011010000111100011010010111101111001011110111001111001101011001101011000010000100100101001110000001010100000110010011000010111001011111101001010111101111011101110101101100110011011110010001111110110110111010110101100001110101001000011001000100101001101000100111000111101100111011011010011000001011011111110000000110111100101101111001010011101011010110001000011101101000001011111010001111010100001010001---------110000110011000100110111001011110110111011111100110010000001111110101110101101100110100011010101001101011010100010110000000010110111010000111011110101011100010011001001011011001110011111101000010101000010010111101010111011101000101110111101100001111110101110101101001011110101101110011100111001011001101001001100010111110110000011101011110101101101110000111110011101000111101110001001011110101011111000110011100010111110110101000010110100100110000101000101101011100101010101011100100011001100011101110010010010111000000101111001100110111001100000111100110110110011111010101111000110110000100101101100011110001100011110001010100111000101000011110100011101110010001000001011010110101101000000011011011000110110010011110100000101110011000111001001001100011100011100111101000010101110101111100001101011001100011100101111101011001001100110010010010000011100000101001110000010110000101000000001111110001100001001100001100010101010011101011001101111010011001101110011000100010000010101100010010111011000110011111001001000110111000001011100100111010101000110111100100100100000111001000000100111011010001010001110011101011111100101011010000010101001110111010110100101000100010110101110101101000001111001011001000110001000111000111110001101010110111100010011110101000001110001000001000101101110010110001001100111101011010111110010100101101111101111110010000110111111001101011010011101010100011010000000011001111100010001010100110111001101011100101100011110100011001101101001011110001010100011110001111100110001101010000000101110000001111010001010010110010100100011001000000100110100011011111001111000101011011001111011110010000010111101110110101111111100100111010011110110011010010000110111000101100010010100010011101110011101101101001110001100101100010011100101100111011010100000101000000010110011111111110101011011100010000101000100011110100100000000101001000001101001010001000110110001111100101101000001000011110000110010010110101110010110101100010010100110011011100000110010100100100011011000111110001100100001110110011011100111100100011110001001010111001100001101101000110010111110011010110110100001010100111001001101010101010001000001111011100101101001001000110010100110100110110010111111111100010011011011011011011000100101010101011110000000101110011001011011111000010010110111110011011010000110101101101011000110101101100010110100110000001000000010010101001010001100100110010011010010011111100111101001001011011000000101111011001010100000100010010100000010110011001001001100000001101011011101000111111101000101010011001010000011111110001011100010010011101011110000101111010001001010111100000111000010110011011111110111000110110111010010011110010111100101100111101101110011001100011110100100100001101110101101100101001000110011110010100110101001001000110111001110010000111010101001001110101111101001100100111001010010111100000100001111011100001100111011111111110111000000011110101010000111100101101111011101000101001110111110001111100101111001111010111011110110011111101111001101000001111110011110000111111101101001001001110101000010011010010110010110010110010011100000100010010011001000110001010100011111110111001010011110101110011110101010010000111111111101101101101011110000101011000001001011101110000101001100101101111111001101111010001000100101100000100011011110001100101111010100100111110111010101101100101111111101000111110010100100000010000000101001100101010110001000100001101110110111000011100111100001010101101001101111100110001100100000110011100000111000001111100000111111110001011001101011000000000101001001100001001001000011010110111100001000010011011111001000010101001100111110101111000000101001011001010000110001011001001111100111100011110001100110000000001000011111101010010111100100001010110100111110001011000010000001101001011100111001000000010111101101011000001110101111111100011000010010001101010001100010000100100100011001010001111100010101110001110100010011101001001000111011000101000010001100010111111010101010000010110000000000011111110010011010001001010001010110110001110001001001011011001100110000111100011000110101011101100000100011100011000000100111000101010010010110000001011110010001100001010010111001111000101100101100101111100000000100101111001110000110110000001010110011010000111000110010010000001011000010101010110000110101001110100001101000001011000100010011010101010111101110110001100100011100111000011110010111111011010101000111001000101101101000001011101100000111001111101101111001100010110110001001100101111101011110011111101110011111111000110100110010110000010000001111101111111011110101011100100001001101000001111010111010001101011010011110001011101100011101100011111001001010101100110101000101011111100010101000011100111100001011010111010001111011010111101110110101000001110000011000000101100111111100001001101011100100010011000010011010100010000001111101001110100011011000110011100111000010101100001001010110010001101010101001111000000111011111011000010010100110011110001011001110011110001010110111010000100011101001101101111011101101001000010011110110000001110010001110111110110000100110010100111100110100011110001101000110011010100100001100110011101101100101001001010100001010100100101101000011011111010100111111111000010110000111011000100000000110111110111111011010010111001101111101010001000101100100110010000100001011101010111110001001110111111011000011111100101111110011000011101110101111111000111100001010111100110010101100000001011100001111010101110100001110100011110000100000000001011000010011011001000101011000010011111101001100101000010100010010100001100100101010001101111100011011010000010110111010011111001110111100000100101101000101010001101001111011110100000111111011111110000000010011001101010011011010011110101110110100110000011111101100010010110010010000100100110011101010101010100010010101111100011010000111000100111101100001101111000001010101000100100100011011110011101001001101000001000110111110100001011100000010010100000010110010011110101100000101010111111100100100101010000010111001101111010011000011011101100001010011100111001100101000010010000011110000000000111010111100101110110100100010001100001010101001000001110110001111011111011000011110000101000101110000101100110100110000100100100110010011000010011010010010101001011111011011011100110101110111110010111111001001110000000010010101010110010100001100101011011010110100000001100110110111110001101101111101101111110110000000100001001110111001110111011000111110001010011001110000001011010101001111111011010100011010011101010001100011001011101111010100100001111011111011110110001101010111110101111111101000100100010100011010010010010010111001011011011011001000011000011000000111000010100111001000000010000111000011111001100100111101010110100101100001101000000000001110111110100010011100101000011101100110001010000110000000100101001000110100101001111111011000001000000100100011101011101110010001100110110010101100111110101011100011010111010011100100100101111001110100110111100110100101001100100101010011010000111011001001111111111010101001100010110101101001111011011101010001110001000111100100110100110111001011100001101001111010100001000111110111111001100001000011000000001000010011111101010100101001011110010110010001100110100001100011011101101101101100111100011100010100010101101100100101001010001101000000001100100101010110100110000000001100100100010000010000011001110001000011000111101101110011111101110001111011110111011001001000111011010101000111110001010111110011000110011011011111011101110010001111101110010000001110010001100111110110111100010100101011000011110000110010111011110111101001011100100000011111000000101100100101110011000010010011011001111001010001110100000010001111010111101000010110110111000010001000100110011000111100001000111110001100000011111110000010110100110011001011100011100110010011100001101000010000001001111111011111101010100010110011000001110110101101101000011111100001111100011001111010101101111111010011100010111010000111100101001100111011000110100111010101001110010000011011100101001001110101011110001100100110001110000000110001011100111001010001001101001000011110001111100100011000101011100001111001011001101010000100100010110111000011100010001111001000000101010001000000001010100010101000011010111001101011111010011011011010110011000111010100000100001001110010000111000110111010011111101010000110110010111000110110100010000111101101000001101000100001110111011011000001011101001111111101110001101010011010101111000110011110101111010101101001110100011001010011101000111101101001100100010010100111111000100101011001010001110111000100001011100010000100001111000100100010000000010011110111000001000010000110010100111000111111000000111101110111011001110100010000111100001100000000010000110100100001100101100100101000001101011010100010100000010010100110011101110000101001111110011000101000011111000101000100011001110010011001101111010101101111010010000111011000101001111101101011000110010111101100011100011011111111000000111111110111010110100010001010110110101001111000110101111000100100000100100010110011101010001101110110010001101000100010100001110000011101111010111111100111010110100111110111000101010101110111111101111001001001000111001100110001011011100101110100110001101111101010011011011010111110110000010111010110001100100110010011110010101000010010101100011000100000111101011100001000010101101011011010101101000010110111000000110001110000000110001100010001010000010010000101000001101100001010000001000011010001101010010101001101011011101100111011110011001100100011101100011101001001100111100111010101001110101001101000101111101011001100011011000110011000000001010011111001001100001000011100110110011101001001001010010100000010011100101110001011000010000000001010100000111010011010010110000100001111000001011000100010000111100000100111110001111100101101101100011100110001110111111110101001110101000110101110110000000110011101001101101010011111101000000001111001110010011101100111001110000100001000001001000011001110111001111010101011111001110001101101111100111100001110000100000101111100000101111000010111000011010100010000101001110010010101101011011011000101110001110000000010110001100110001001011110111000111101010101010010 +110001111011101111101110111011101111110000100000100011011001001110110111000111110111010000010111100111101000001011100010001010111101001100000101010110001100001011100010110001000000001011001100100110010101100111011111011111010001011001100111001001100001011100000111100001001010011011101101011000011110011011000111111010100101001111101000100100100101000100001100011101011111101111010010001000001100111000000111010111110101110001000011000110001011000101101111010011011100010101001010000110010100000010111111111010000100011101110110110011100110101100000000100010110110101001001010000010101100100010001100100011111100110100000000111010100101001111011100110001001010100011010010011101111011001010111000100110010111001001010111001010100011100001101010011101001010101010101111000010010110110101100011100010011000010111111100001000101111011000000100101001001000001100101010100101110000000101111110011111111101010000101000101001100100011010001111010001100010110111000010011111100000110001111100011000101001010100010101001000000100011011000001000010111110111001110100101001111110000100101111001011001010000100111111011001000101110100011101110001001010010011100011011001010101010110111000010011010000111010111101111101100110100000001010010111100001010000101001010001101110010100111111010001000110111000001011000011000111010100001100001011101110010100010000111100001000101010111010010010001110101101110000000111100011010101011101010100001010011010111100000010000001000011010001110100101111010001001000110001000010001111011111111010101111111110011111110100110001100110000100110111100100000101110001110000001011100000000000011011111001111000011100010100101010000100110000101100101110101111010011011010011111011010100000111001011110101110001100101001110110010110010110111010110110000101101001111010000101111000010001010000101100000000111001111111100001011001010100111011000111000101110010101011111110111000010111000111111010101---------100010111101101101100000101000100110010110010111010011100011000001010010010101100010100011001000101101010011111111000000001101110001110111100100000001101100001011111100111100111101100011010011011000000101110101010011111100111010010111010101000001111100100111011000100011101011010111101010011010110011101101011000010110100000111010110100110001001000110111010101000110000110010011110101001101100110011010101010001100110011110011010011011111011011011001110010000100100101001100101110100101110010001111100001100000111100000101110101001010101110010001100001001100010111100001110000011001110011001100010001110101010110110101100011000000111111010100100011111010101110110101010001111111101111110011110101100110101001111010000110010101101111001111010100000010101011110101110011000010000011011110110010010000001110001011110101101010010010101010111100001110110100001010111111100000010000110110001001110010100010111011111111111011101011001110111101001011001000111101110001010011111110110110100011100001011010001011100100001010110011100011000111100010000111101110101001000111100011000000001110010101010110111100101011100111110111010001110111010011010011000011001101110010100011100011111111011000100111000101010111001011000010011100110101000100000110110000111100110011110011010001110111100110010110110101111001010101101011100010100000011011001111111111011101111001101011111111100110000001001010101101001111010101110010000001100101101101110010110000000010100010101100111000011011111001100100011110110101101101101110001110100110100010101110100011010001100000111010100110001100110100001110101101101100111010010010111110001011110101001111110000001001010011000000100000111110101110110010100101101001110100111011001111110001111100101111010101111001001010001100010010011111000111000010110001000100000111001011000101101011110001011100001110001110011000001110010010011111100010101111110110101011101100101110101110111101010001101101010000111101110110000110010110101110010101010111011010100000100001110101011101001110111110111111110100110011000110000010000101011111001011010000111110111011110100010111100100010011000110110111001111101100101000110101010010110000111110110100001001100011000011010000010011110100010001000100110001000001101111010110111000011000111100101011110011010101110001111000011100010001101001010111101101110000000010101010110010000011100001011010001010011101110100111101011011110101100011001011111110000101001001111110001111100011001001010101111010010011000110101100001011000100101000001001101011010010000101101011100011110101001101111111111011110010111001001011111100011011001010100100111001010011110011111011110111010101101000110001100000000110001001010100000011011101011101101010000101000010010110100111100010000001111010010010110010011101111101001001111000010000011101110011011011101101000001000001011110111111101011010001001011111100110001000101000100001011111010111110000011110000000001000011000100001000110111011101111110101000111101110001101011011100000001101000101111011010000111111100010111110110011010101111110111111110110101101100000010110001010111010100000111000000010110001010011000011001100100011111010100110001011001011100010011100101000001001010000001011010111000110001001000100101100011011100001110100100111100001011000001111111011100000101011110001101000011101100101101100000001000101100011111111101010001100010011111000000111101110111011010110010001010100110001111111110010100111010111000000101000010000010011110110110110000000110111010110110000100101100000111100000100000100111001101110001110100000011010100110011010000011101011111011101111110110010000111011011110011111011111100111100101100100010100011001000101011100100010100001110100111111010111011010101001010001111110011000111101001000001010010100011101011100011010001011010110011110110100110100111111001110011001011000001111011010011010000001010111010010111010010000111001110111100100111011011101001100001101110101101100101010101101010111011011101101101001000000000110111111001001111100110001101000010001001011010011000101111001010011010110010000111001100011110010010110101010000001101100101000111001100101010001011110110010001010011000111010010101100010011011110111110010011000111010011110011101110110011110101000111110111100101000111100100100111000001111100101110111011111000000110111110001101000110000100101000111100100100000100000011010110100111110111111110011110111100100010011100110111011001001111010100010110011100101101001110100100011100010100111000111001010001000010111101001101111110111110111101111000001001101010000110111010110011111000110101001000010100000111000001011100001010100101001010111010000100000011010101011101100110000111101011110100111011001101000010101001111110101110101110110011000111100010010011001111000101101011010011010000001000000011110110111111100000111111110010100110101100001011111000000010001110110100011101110101001000010000011011000100001100001101000100010001111011100100010000110100111011111010110001001011001000010001100100011100011100110101000000000111001110000001000110100011011100001001011111000110000001101000100110100001011110101000100011101010111100000010100110110001000101111000110110101101111011011110000010111000111111010000101100101111000011011001110101111000101100001110001010011111011011101100101100100011101011111000101101000100000101001011100100001000000101101000011100110101011101111111000000000101000111101111100110001111100111010010011011100100100101001110110000010110101101100100111110111000000100000100000101000010110001101100110011100100011100001100010100111010001110101001111110100001010000011101101001110110110110111111100111010101100110101101010001110110100101111111110000111010100000010110010110011111100011011111110111110111100100110011101000001100010111111010000100100000100001011111101010001101100100110100000101110110010010100111000001101000101111001011000111010000111101010001110010111110001100010010011110010001111011111110001011101110010101101101010101110000100011110001011001001100111010000100000110001100111001101111110100101001001001111001000001100000111011001010001011110010010011000000000011101010001000010111100100100100011100000010101010010001010011110000110100100010011011000001101000010000000010110101111110011010101110001110000011111101011100111100100011100001111001110001101001001010111100010111001100111101000100111101011001001110010111010111111111010001010010101101010001100101100011000000101000111010100010110110001001110101101000100001101001010100111110000011100101000000001001110011110100110010011101000111000111110011101101000100100001110101001110111000111001011101100110100100101101110110101001010000101101111111000011010001101011111011111111111100010100010111000101001111100010101001011010111001010111111100010110111110100100111100111001101000110010110010000100010010100000101011011110110110110100101011110111000100100100100001100001011110111101011000011100010111110100110110101001100010101110110010000101001000001011111101100111101001111010101101111011100000001000001010100111001101101001100101010001100100010110010100010111111111001011010100001001011100101101000110110110101001111000111101011110010000110110100000010011111101101000011100100111010100001001111101100000001011011101111111010011111111000011001001010001101110111110100000100111100001011011010111110000010100010101001011001111001010001001001000001110001010010000001101000000110111101011111000111010111100101010000001111100010101001010001010111100110100111010101100011000000111101011111000010000100111101000000110000001100001110001010001001111111011011011100100001100100010001011100011110101110011111101010111110100010000100010001110001101100110010000000110001001100010101110011111111110011100010011110101001111000110001111000011100111010000110100101111110110101111101000000011011001010111000111100011111100010100000100100001100000011101100000101001101111010010001000010001101000001001111010010001110001011001010000011100010100011000101010110001000100111101101010110010010000111110011101100101101000000001011100010000011000110010000001110110111011111101111100011110001010111110000000000101101100000100101010101101000110100111011100001011011111100010011111111000010111011010101011010101100001010010000111001011010110010110100000011100101111011010001100010011110011010110000000111000001111100101011011001110001011000000101111111100010011011010010000000111111011111111111110011110101010100011110000110101000011001111011111011010001010010000000100010101011111111010111001100000010110011111010100111010001101101111110101110011110011110111010010000000100101111010101110101001110000010011110100011111010100001000000011111101010011110110010001010001010010011010110011001111011111100010100111111001101101100110000100010101101011111010101011111011111010011100101101100111111010010100110010111101001011011010100010111110101111110000100000101000000100101111110000110110100101110111111001010111111111011011010011110101000001100000001101011100101011111010000010001011011000111110110001111011000101100111010100100110110111010100100110011101110101011010001110110011100001100110010011000010110100010100110000011011110111100100010110001110101101011011110000001000001010001101100000001101010111101000010011010010110001010011110000111110101110110011110010011010110000001000010111110101101000111001101100110110001001000001001110110010111100110000101000011100100100000010111010100100011010010001100001111001110110111100011000011100000001001011010011010101011110000110100111100010101101111010011000001001101001111011000011100110111101111110001110010111100010011010101001010011011011001001010011101000100111001101111101001011100011110111111101101011011001010001111000011111000011100111110101011111011101101000000100101001001010110111101100001110111100000000100110110011010110001011011100111000001101001100000001110101100011101101100101000100111011111101010101111001001101111010010110011011010100100100011110001100011111000001100000000011100111110100101011000100011101100111011000011100111011001001111101101100101000010000010000000111011011010111010010011100011100010000000010001101010001110010110101110110010110110101101101010001101011000101010001101001011100011000111011011110000110 diff --git a/lib/src/phy/fec/ldpc/test/ldpc_chain_test.c b/lib/src/phy/fec/ldpc/test/ldpc_chain_test.c new file mode 100644 index 000000000..c746a2607 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_chain_test.c @@ -0,0 +1,526 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_chain_test.c + * \brief End-to-end test for LDPC encoder and decoder. + * + * A batch of example messages is randomly generated, encoded, 2-PAM modulated, + * sent over an AWGN channel and, finally, decoded by all three types of + * decoder. Transmitted and received messages are compared to estimate the WER. + * Multiple batches are simulated if the number of errors is not significant + * enough. + * + * A fixed number of filler bits (F) equal to encoder.bgK - 5 is added to the message. + * if the function is called with -e0 (no rate matchign), the rm_length is set to finalN - F, + * So that after rate-dematching (which includes filler bits) the input to the decoder has lenght N. + * + * Basic rate-matching simulations can be carried out by setting the codeword + * length to a value smaller than the base one. + * + * + * Synopsis: **ldpc_chain_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + * - **-e \** Codeword length after rate matching (set to 0 [default] for full rate). + * - **-s \** SNR in dB (Default 3 dB). + */ + +#include +#include +#include +#include +#include + +#include "srslte/phy/channel/ch_awgn.h" +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_decoder.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/random.h" +#include "srslte/phy/utils/vector.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +int lift_size = 2; /*!< \brief Lifting Size. */ +int rm_length = 0; /*!< \brief Codeword length after rate matching. */ +int finalK; /*!< \brief Number of uncoded bits (message length). */ +int finalN; /*!< \brief Number of coded bits (codeword length). */ +float snr = 0; /*!< \brief Signal-to-Noise Ratio [dB]. */ + +#define BATCH_SIZE 100 /*!< \brief Number of codewords in a batch. */ +#define MAX_N_BATCH 10000 /*!< \brief Max number of simulated batches. */ +#define REQ_ERRORS 100 /*!< \brief Minimum number of errors for a significant simulation. */ +#define MS_SF 0.75f /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ + +/*! + * \brief Prints test help when wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX] [-eX] [-sX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); + printf("\t-e Word length after rate matching [Default %d (no rate matching, only filler-bits are extracted)]\n", + rm_length); + printf("\t-s SNR [dB, Default %.1f dB]\n", snr); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:e:s:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + case 'e': + rm_length = (int)strtol(optarg, NULL, 10); + break; + case 's': + snr = strtod(optarg, NULL); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Prints decoder statistics. + */ +void print_decoder(char* title, int n_batches, int n_errors, double elapsed_time); + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* messages_true = NULL; + uint8_t* messages_sim_f = NULL; + uint8_t* messages_sim_s = NULL; + uint8_t* messages_sim_c = NULL; + uint8_t* messages_sim_c_flood = NULL; + uint8_t* messages_sim_avx = NULL; + uint8_t* messages_sim_avx_flood = NULL; + uint8_t* codewords = NULL; + float* symbols_rm = NULL; + float* symbols = NULL; + int16_t* symbols_s = NULL; + int8_t* symbols_c = NULL; + + int i = 0; + int j = 0; + + parse_args(argc, argv); + + // create an LDPC encoder + srslte_ldpc_encoder_t encoder; +#ifdef LV_HAVE_AVX2 + if (srslte_ldpc_encoder_init(&encoder, SRSLTE_LDPC_ENCODER_AVX2, base_graph, lift_size) != 0) { + perror("encoder init"); + exit(-1); + } +#else // no AVX2 + if (srslte_ldpc_encoder_init(&encoder, SRSLTE_LDPC_ENCODER_C, base_graph, lift_size) != 0) { + perror("encoder init"); + exit(-1); + } +#endif // LV_HAVE_AVX2 + + // create an LDPC decoder (float) + srslte_ldpc_decoder_t decoder_f; + if (srslte_ldpc_decoder_init(&decoder_f, SRSLTE_LDPC_DECODER_F, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } + // create an LDPC decoder (16 bit) + srslte_ldpc_decoder_t decoder_s; + if (srslte_ldpc_decoder_init(&decoder_s, SRSLTE_LDPC_DECODER_S, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } + // create an LDPC decoder (8 bit) + srslte_ldpc_decoder_t decoder_c; + if (srslte_ldpc_decoder_init(&decoder_c, SRSLTE_LDPC_DECODER_C, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } + // create an LDPC decoder (8 bit, flooded) + srslte_ldpc_decoder_t decoder_c_flood; + if (srslte_ldpc_decoder_init(&decoder_c_flood, SRSLTE_LDPC_DECODER_C_FLOOD, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } +#ifdef LV_HAVE_AVX2 + // create an LDPC decoder (8 bit, AVX2 version) + srslte_ldpc_decoder_t decoder_avx; + if (srslte_ldpc_decoder_init(&decoder_avx, SRSLTE_LDPC_DECODER_C_AVX2, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } + + // create an LDPC decoder (8 bit, flooded scheduling, AVX2 version) + srslte_ldpc_decoder_t decoder_avx_flood; + if (srslte_ldpc_decoder_init(&decoder_avx_flood, SRSLTE_LDPC_DECODER_C_AVX2_FLOOD, base_graph, lift_size, MS_SF) != + 0) { + perror("decoder init"); + exit(-1); + } +#endif // LV_HAVE_AVX2 + + // create a random generator + srslte_random_t random_gen = srslte_random_init(0); + + uint32_t F = encoder.bgK - 5; // This value is arbitrary + + if (rm_length == 0) { + rm_length = finalN - F; + } + + printf("Test LDPC chain:\n"); + printf(" Base Graph -> BG%d\n", encoder.bg + 1); + printf(" Lifting Size -> %d\n", encoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", encoder.bgM, encoder.bgN, encoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", encoder.liftM, encoder.liftN, encoder.liftK); + printf(" Base code rate -> K/(N-2) = %d/%d = 1/%d\n", + encoder.liftK, + encoder.liftN - 2 * lift_size, + encoder.bg == BG1 ? 3 : 5); + printf("\n Codeword length after rate matching -> E = %d\n", rm_length); + printf(" Final code rate -> (K-F)/E = (%d - %d)/%d = %.3f\n", + encoder.liftK, + F, + rm_length, + 1.0 * (encoder.liftK - F) / rm_length); + printf("\n Signal-to-Noise Ratio -> %.2f dB\n", snr); + + finalK = encoder.liftK; + finalN = encoder.liftN - 2 * lift_size; + + messages_true = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_f = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_s = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_c = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_c_flood = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_avx = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_avx_flood = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + codewords = malloc(finalN * BATCH_SIZE * sizeof(uint8_t)); + symbols_rm = malloc((rm_length + F) * BATCH_SIZE * sizeof(float)); + symbols = malloc(finalN * BATCH_SIZE * sizeof(float)); + symbols_s = malloc(finalN * BATCH_SIZE * sizeof(int16_t)); + symbols_c = malloc(finalN * BATCH_SIZE * sizeof(int8_t)); + if (!messages_true || !messages_sim_f || !messages_sim_s || !messages_sim_c || // + !messages_sim_avx || !messages_sim_c_flood || !messages_sim_avx_flood || // + !codewords || !symbols || !symbols_s || !symbols_c) { + perror("malloc"); + exit(-1); + } + + int i_bit = 0; + int i_batch = 0; + struct timeval t[3]; + double elapsed_time_enc = 0; + double elapsed_time_dec_f = 0; + double elapsed_time_dec_s = 0; + double elapsed_time_dec_c = 0; + double elapsed_time_dec_c_flood = 0; + double elapsed_time_dec_avx = 0; + double elapsed_time_dec_avx_flood = 0; + int n_error_words_f = 0; + int n_error_words_s = 0; + int n_error_words_c = 0; + int n_error_words_c_flood = 0; + int n_error_words_avx = 0; + int n_error_words_avx_flood = 0; + + float noise_std_dev = srslte_convert_dB_to_amplitude(-snr); + + int16_t inf15 = (1U << 14U) - 1; + float gain_s = inf15 * noise_std_dev / 20 / (1 / noise_std_dev + 2); + + int8_t inf7 = (1U << 6U) - 1; + float gain_c = inf7 * noise_std_dev / 8 / (1 / noise_std_dev + 2); + + printf("\nBatch:\n "); + + while (((n_error_words_f < REQ_ERRORS) || (n_error_words_s < REQ_ERRORS) || (n_error_words_c < REQ_ERRORS)) && + (i_batch < MAX_N_BATCH)) { + i_batch++; + + if (!(i_batch % 10)) { + printf("%8d", i_batch); + if (!(i_batch % 90)) { + printf("\n "); + } + } + + /* generate data_tx */ + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK - F; j++) { + messages_true[i * finalK + j] = srslte_random_uniform_int_dist(random_gen, 0, 1); + } + for (; j < finalK; j++) { + messages_true[i * finalK + j] = FILLER_BIT; + } + } + + // compute the number of symbols that we need to encode/decode: closest multiple of + // the lifting size that is larger than rm_length + // Extra F bits are added since filler-bits are not part of the rm_length + int n_useful_symbols = + (rm_length + F) % lift_size ? ((rm_length + F) / lift_size + 1) * lift_size : (rm_length + F); + + printf("n_useful_symbols = %d\n", n_useful_symbols); + + // Encode messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_encoder_encode( + &encoder, messages_true + j * finalK, codewords + j * finalN, finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_enc += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + // Modulate codewords and match rate (puncturing) + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < rm_length + F; j++) { + symbols_rm[i * (rm_length + F) + j] = + (codewords[i * finalN + j] == FILLER_BIT) ? INFINITY : 1 - 2 * codewords[i * finalN + j]; + } + } + + // Apply AWGN + srslte_ch_awgn_f(symbols_rm, symbols_rm, noise_std_dev, BATCH_SIZE * (rm_length + F)); + + // Convert symbols into LLRs + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < rm_length + F; j++) { //+F becouse we have alredy considered fillerbits when modulating. + symbols[i * finalN + j] = symbols_rm[i * (rm_length + F) + j] * 2 / (noise_std_dev * noise_std_dev); + } + // the rest of symbols are undetermined, set LLR to 0 + for (; j < finalN; j++) { + symbols[i * finalN + j] = 0; + } + } + + //////// Floating point + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_f(&decoder_f, symbols + j * finalN, messages_sim_f + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_f += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_f[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_f++; + break; + } + } + } + + //////// Fixed point - 16 bit + // Quantize LLRs with 16 bits + srslte_vec_quant_fs(symbols, symbols_s, gain_s, 0, inf15, BATCH_SIZE * finalN); + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_s(&decoder_s, symbols_s + j * finalN, messages_sim_s + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_s += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_s[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_s++; + break; + } + } + } + + //////// Fixed point - 8 bit + // Quantize LLRs with 8 bits + srslte_vec_quant_fc(symbols, symbols_c, gain_c, 0, inf7, BATCH_SIZE * finalN); + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c(&decoder_c, symbols_c + j * finalN, messages_sim_c + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_c += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_c[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_c++; + break; + } + } + } + + //////// Fixed point - 8 bit, flooded scheduling + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c( + &decoder_c_flood, symbols_c + j * finalN, messages_sim_c_flood + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_c_flood += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_c_flood[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_c_flood++; + break; + } + } + } + +#ifdef LV_HAVE_AVX2 + //////// Fixed point - 8 bit - AVX2 version + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c( + &decoder_avx, symbols_c + j * finalN, messages_sim_avx + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_avx += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_avx[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_avx++; + break; + } + } + } + + //////// Fixed point - 8 bit, flooded scheduling - AVX2 version + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c( + &decoder_avx_flood, symbols_c + j * finalN, messages_sim_avx_flood + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_avx_flood += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_avx_flood[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_avx_flood++; + break; + } + } + } +#endif // LV_HAVE_AVX2 + } + + printf("\nEstimated throughput encoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + i_batch * BATCH_SIZE / elapsed_time_enc, + i_batch * BATCH_SIZE * finalK / elapsed_time_enc, + i_batch * BATCH_SIZE * finalN / elapsed_time_enc); + + print_decoder("FLOATING POINT", i_batch, n_error_words_f, elapsed_time_dec_f); + print_decoder("FIXED POINT (16 bits)", i_batch, n_error_words_s, elapsed_time_dec_s); + print_decoder("FIXED POINT (8 bits)", i_batch, n_error_words_c, elapsed_time_dec_c); + print_decoder("FIXED POINT (8 bits, flooded scheduling)", i_batch, n_error_words_c_flood, elapsed_time_dec_c_flood); + +#ifdef LV_HAVE_AVX2 + print_decoder("FIXED POINT (8 bits - AVX2)", i_batch, n_error_words_avx, elapsed_time_dec_avx); + print_decoder( + "FIXED POINT (8 bits, flooded scheduling - AVX2)", i_batch, n_error_words_avx_flood, elapsed_time_dec_avx_flood); +#endif // LV_HAVE_AVX2 + + if (n_error_words_s > 10 * n_error_words_f) { + perror("16-bit performance too low!"); + exit(-1); + } + if (n_error_words_c > 10 * n_error_words_f) { + perror("8-bit performance too low!"); + exit(-1); + } + printf("\nTest completed successfully!\n\n"); + + free(symbols_c); + free(symbols_s); + free(symbols); + free(codewords); + free(messages_sim_avx); + free(messages_sim_c_flood); + free(messages_sim_c); + free(messages_sim_s); + free(messages_sim_f); + free(messages_true); + srslte_random_free(random_gen); +#ifdef LV_HAVE_AVX2 + srslte_ldpc_decoder_free(&decoder_avx); +#endif // LV_HAVE_AVX2 + srslte_ldpc_decoder_free(&decoder_c_flood); + srslte_ldpc_decoder_free(&decoder_c); + srslte_ldpc_decoder_free(&decoder_s); + srslte_ldpc_decoder_free(&decoder_f); + srslte_ldpc_encoder_free(&encoder); +} + +void print_decoder(char* title, int n_batches, int n_errors, double elapsed_time) +{ + printf("\n**** %s ****", title); + printf("\nEstimated word error rate:\n %e (%d errors)\n", (double)n_errors / n_batches / BATCH_SIZE, n_errors); + + printf("Estimated throughput decoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + n_batches * BATCH_SIZE / elapsed_time, + n_batches * BATCH_SIZE * finalK / elapsed_time, + n_batches * BATCH_SIZE * finalN / elapsed_time); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_dec_avx2_test.c b/lib/src/phy/fec/ldpc/test/ldpc_dec_avx2_test.c new file mode 100644 index 000000000..a8597ec59 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_dec_avx2_test.c @@ -0,0 +1,236 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_avx2_test.c + * \brief Unit test for the LDPC decoder working with 8-bit integer-valued LLRs (AVX2 implementation). + * + * It decodes a batch of example codewords and compares the resulting messages + * with the expected ones. Reference messages and codewords are provided in + * files **examplesBG1.dat** and **examplesBG2.dat**. + * + * Synopsis: **ldpc_dec_c_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + */ + +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_decoder.h" +#include "srslte/phy/utils/debug.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +int lift_size = 2; /*!< \brief Lifting Size. */ +int finalK; /*!< \brief Number of uncoded bits (message length). */ +int finalN; /*!< \brief Number of coded bits (codeword length). */ +int scheduling = 0; /*!< \brief Message scheduling (0 for layered, 1 for flooded). */ + +#define NOF_MESSAGES 10 /*!< \brief Number of codewords in the test. */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); + printf("\t-x Scheduling [Default %c]\n", scheduling); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:x:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + case 'x': + scheduling = (int)strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Reads the example file. + */ +void get_examples(uint8_t* messages, // + uint8_t* codewords, + FILE* ex_file) +{ + char mstr[15]; // message string + char cstr[15]; // codeword string + char tmp[15]; + int i = 0; + int j = 0; + + sprintf(mstr, "ls%dmsgs", lift_size); + sprintf(cstr, "ls%dcwds", lift_size); + do { + do { + tmp[0] = fgetc(ex_file); + } while (tmp[0] != 'l'); + fscanf(ex_file, "%[^\n]", tmp + 1); + fgetc(ex_file); // discard newline + } while (strcmp(tmp, mstr) != 0); + + // read messages + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalK; i++) { + int rc = fgetc(ex_file); + messages[j * finalK + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } + + fscanf(ex_file, "%[^\n]", tmp); + if (strcmp(tmp, cstr) != 0) { + printf("Something went wrong while reading example file.\n"); + exit(-1); + } + fgetc(ex_file); // discard newline + + // read codewords + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalN; i++) { + int rc = fgetc(ex_file); + codewords[j * finalN + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } +} + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* messages_true = NULL; + uint8_t* messages_sim = NULL; + uint8_t* codewords = NULL; + int8_t* symbols = NULL; + int i = 0; + int j = 0; + + FILE* ex_file = NULL; + char file_name[1000]; + + parse_args(argc, argv); + + srslte_ldpc_decoder_type_t dectype = + (scheduling == 0) ? SRSLTE_LDPC_DECODER_C_AVX2 : SRSLTE_LDPC_DECODER_C_AVX2_FLOOD; + + // create an LDPC decoder + srslte_ldpc_decoder_t decoder; + if (srslte_ldpc_decoder_init(&decoder, dectype, base_graph, lift_size, 1) != 0) { + perror("decoder init"); + exit(-1); + } + + printf("Test LDPC decoder:\n"); + printf(" Base Graph -> BG%d\n", decoder.bg + 1); + printf(" Lifting Size -> %d\n", decoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", decoder.bgM, decoder.bgN, decoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", decoder.liftM, decoder.liftN, decoder.liftK); + printf(" Final code rate -> K/(N-2) = %d/%d = 1/%d\n", + decoder.liftK, + decoder.liftN - 2 * lift_size, + decoder.bg == BG1 ? 3 : 5); + printf(" Scheduling: %s\n", scheduling ? "flooded" : "layered"); + + finalK = decoder.liftK; + finalN = decoder.liftN - 2 * lift_size; + + messages_true = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + messages_sim = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + codewords = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + symbols = malloc(finalN * NOF_MESSAGES * sizeof(int8_t)); + if (!messages_true || !messages_sim || !codewords || !symbols) { + perror("malloc"); + exit(-1); + } + + sprintf(file_name, "examplesBG%d.dat", base_graph + 1); + printf("\nReading example file %s...\n", file_name); + ex_file = fopen(file_name, "re"); + if (ex_file == NULL) { + perror("fopen"); + exit(-1); + } + + get_examples(messages_true, codewords, ex_file); + + fclose(ex_file); + + for (i = 0; i < NOF_MESSAGES * finalN; i++) { + symbols[i] = codewords[i] == 1 ? -2 : 2; + } + + printf("\nDecoding test messages...\n"); + struct timeval t[3]; + gettimeofday(&t[1], NULL); + for (j = 0; j < NOF_MESSAGES; j++) { + printf(" codeword %d\n", j); + srslte_ldpc_decoder_decode_c(&decoder, symbols + j * finalN, messages_sim + j * finalK, finalN); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + double elapsed_time = t[0].tv_sec + 1e-6 * t[0].tv_usec; + printf("Elapsed time: %e s\n", elapsed_time); + + printf("\nVerifing results...\n"); + for (i = 0; i < NOF_MESSAGES * finalK; i++) { + if ((1U & messages_sim[i]) != (1U & messages_true[i])) { + perror("wrong!!"); + exit(-1); + } + } + + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + NOF_MESSAGES / elapsed_time, + NOF_MESSAGES * finalK / elapsed_time, + NOF_MESSAGES * finalN / elapsed_time); + + printf("\nTest completed successfully!\n\n"); + + free(symbols); + free(codewords); + free(messages_sim); + free(messages_true); + srslte_ldpc_decoder_free(&decoder); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_dec_c_test.c b/lib/src/phy/fec/ldpc/test/ldpc_dec_c_test.c new file mode 100644 index 000000000..d778e1f75 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_dec_c_test.c @@ -0,0 +1,235 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_c_test.c + * \brief Unit test for the LDPC decoder working with 8-bit integer-valued LLRs. + * + * It decodes a batch of example codewords and compares the resulting messages + * with the expected ones. Reference messages and codewords are provided in + * files **examplesBG1.dat** and **examplesBG2.dat**. + * + * Synopsis: **ldpc_dec_c_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + */ + +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_decoder.h" +#include "srslte/phy/utils/debug.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +int lift_size = 2; /*!< \brief Lifting Size. */ +int finalK; /*!< \brief Number of uncoded bits (message length). */ +int finalN; /*!< \brief Number of coded bits (codeword length). */ +int scheduling = 0; /*!< \brief Message scheduling (0 for layered, 1 for flooded). */ + +#define NOF_MESSAGES 10 /*!< \brief Number of codewords in the test. */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); + printf("\t-x Scheduling [Default %c]\n", scheduling); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:x:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + case 'x': + scheduling = (int)strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Reads the example file. + */ +void get_examples(uint8_t* messages, // + uint8_t* codewords, + FILE* ex_file) +{ + char mstr[15]; // message string + char cstr[15]; // codeword string + char tmp[15]; + int i = 0; + int j = 0; + + sprintf(mstr, "ls%dmsgs", lift_size); + sprintf(cstr, "ls%dcwds", lift_size); + do { + do { + tmp[0] = fgetc(ex_file); + } while (tmp[0] != 'l'); + fscanf(ex_file, "%[^\n]", tmp + 1); + fgetc(ex_file); // discard newline + } while (strcmp(tmp, mstr) != 0); + + // read messages + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalK; i++) { + int rc = fgetc(ex_file); + messages[j * finalK + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } + + fscanf(ex_file, "%[^\n]", tmp); + if (strcmp(tmp, cstr) != 0) { + printf("Something went wrong while reading example file.\n"); + exit(-1); + } + fgetc(ex_file); // discard newline + + // read codewords + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalN; i++) { + int rc = fgetc(ex_file); + codewords[j * finalN + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } +} + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* messages_true = NULL; + uint8_t* messages_sim = NULL; + uint8_t* codewords = NULL; + int8_t* symbols = NULL; + int i = 0; + int j = 0; + + FILE* ex_file = NULL; + char file_name[1000]; + + parse_args(argc, argv); + + srslte_ldpc_decoder_type_t dectype = (scheduling == 0) ? SRSLTE_LDPC_DECODER_C : SRSLTE_LDPC_DECODER_C_FLOOD; + + // create an LDPC decoder + srslte_ldpc_decoder_t decoder; + if (srslte_ldpc_decoder_init(&decoder, dectype, base_graph, lift_size, 1) != 0) { + perror("decoder init"); + exit(-1); + } + + printf("Test LDPC decoder:\n"); + printf(" Base Graph -> BG%d\n", decoder.bg + 1); + printf(" Lifting Size -> %d\n", decoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", decoder.bgM, decoder.bgN, decoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", decoder.liftM, decoder.liftN, decoder.liftK); + printf(" Final code rate -> K/(N-2) = %d/%d = 1/%d\n", + decoder.liftK, + decoder.liftN - 2 * lift_size, + decoder.bg == BG1 ? 3 : 5); + printf(" Scheduling: %s\n", scheduling ? "flooded" : "layered"); + + finalK = decoder.liftK; + finalN = decoder.liftN - 2 * lift_size; + + messages_true = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + messages_sim = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + codewords = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + symbols = malloc(finalN * NOF_MESSAGES * sizeof(int8_t)); + if (!messages_true || !messages_sim || !codewords || !symbols) { + perror("malloc"); + exit(-1); + } + + sprintf(file_name, "examplesBG%d.dat", base_graph + 1); + printf("\nReading example file %s...\n", file_name); + ex_file = fopen(file_name, "re"); + if (ex_file == NULL) { + perror("fopen"); + exit(-1); + } + + get_examples(messages_true, codewords, ex_file); + + fclose(ex_file); + + for (i = 0; i < NOF_MESSAGES * finalN; i++) { + symbols[i] = codewords[i] == 1 ? -2 : 2; + } + + printf("\nDecoding test messages...\n"); + struct timeval t[3]; + gettimeofday(&t[1], NULL); + for (j = 0; j < NOF_MESSAGES; j++) { + printf(" codeword %d\n", j); + srslte_ldpc_decoder_decode_c(&decoder, symbols + j * finalN, messages_sim + j * finalK, finalN); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + double elapsed_time = t[0].tv_sec + 1e-6 * t[0].tv_usec; + printf("Elapsed time: %e s\n", elapsed_time); + + printf("\nVerifing results...\n"); + for (i = 0; i < NOF_MESSAGES * finalK; i++) { + if ((1U & messages_sim[i]) != (1U & messages_true[i])) { + perror("wrong!!"); + exit(-1); + } + } + + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + NOF_MESSAGES / elapsed_time, + NOF_MESSAGES * finalK / elapsed_time, + NOF_MESSAGES * finalN / elapsed_time); + + printf("\nTest completed successfully!\n\n"); + + free(symbols); + free(codewords); + free(messages_sim); + free(messages_true); + srslte_ldpc_decoder_free(&decoder); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_dec_s_test.c b/lib/src/phy/fec/ldpc/test/ldpc_dec_s_test.c new file mode 100644 index 000000000..82c774c78 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_dec_s_test.c @@ -0,0 +1,227 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_s_test.c + * \brief Unit test for the LDPC decoder working with 16-bit integer-valued LLRs. + * + * It decodes a batch of example codewords and compares the resulting messages + * with the expected ones. Reference messages and codewords are provided in + * files **examplesBG1.dat** and **examplesBG2.dat**. + * + * Synopsis: **ldpc_dec_s_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + */ + +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_decoder.h" +#include "srslte/phy/utils/debug.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +int lift_size = 2; /*!< \brief Lifting Size. */ +int finalK; /*!< \brief Number of uncoded bits (message length). */ +int finalN; /*!< \brief Number of coded bits (codeword length). */ + +#define NOF_MESSAGES 10 /*!< \brief Number of codewords in the test. */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Reads the example file. + */ +void get_examples(uint8_t* messages, // + uint8_t* codewords, + FILE* ex_file) +{ + char mstr[15]; // message string + char cstr[15]; // codeword string + char tmp[15]; + int i = 0; + int j = 0; + + sprintf(mstr, "ls%dmsgs", lift_size); + sprintf(cstr, "ls%dcwds", lift_size); + do { + do { + tmp[0] = fgetc(ex_file); + } while (tmp[0] != 'l'); + fscanf(ex_file, "%[^\n]", tmp + 1); + fgetc(ex_file); // discard newline + } while (strcmp(tmp, mstr) != 0); + + // read messages + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalK; i++) { + int rc = fgetc(ex_file); + messages[j * finalK + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } + + fscanf(ex_file, "%[^\n]", tmp); + if (strcmp(tmp, cstr) != 0) { + printf("Something went wrong while reading example file.\n"); + exit(-1); + } + fgetc(ex_file); // discard newline + + // read codewords + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalN; i++) { + int rc = fgetc(ex_file); + codewords[j * finalN + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } +} + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* messages_true = NULL; + uint8_t* messages_sim = NULL; + uint8_t* codewords = NULL; + int16_t* symbols = NULL; + int i = 0; + int j = 0; + + FILE* ex_file = NULL; + char file_name[1000]; + + parse_args(argc, argv); + + // create an LDPC decoder + srslte_ldpc_decoder_t decoder; + if (srslte_ldpc_decoder_init(&decoder, SRSLTE_LDPC_DECODER_S, base_graph, lift_size, 1) != 0) { + perror("decoder init"); + exit(-1); + } + + printf("Test LDPC decoder:\n"); + printf(" Base Graph -> BG%d\n", decoder.bg + 1); + printf(" Lifting Size -> %d\n", decoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", decoder.bgM, decoder.bgN, decoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", decoder.liftM, decoder.liftN, decoder.liftK); + printf(" Final code rate -> K/(N-2) = %d/%d = 1/%d\n", + decoder.liftK, + decoder.liftN - 2 * lift_size, + decoder.bg == BG1 ? 3 : 5); + + finalK = decoder.liftK; + finalN = decoder.liftN - 2 * lift_size; + + messages_true = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + messages_sim = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + codewords = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + symbols = malloc(finalN * NOF_MESSAGES * sizeof(int16_t)); + if (!messages_true || !messages_sim || !codewords || !symbols) { + perror("malloc"); + exit(-1); + } + + sprintf(file_name, "examplesBG%d.dat", base_graph + 1); + printf("\nReading example file %s...\n", file_name); + ex_file = fopen(file_name, "re"); + if (ex_file == NULL) { + perror("fopen"); + exit(-1); + } + + get_examples(messages_true, codewords, ex_file); + + fclose(ex_file); + + for (i = 0; i < NOF_MESSAGES * finalN; i++) { + symbols[i] = codewords[i] == 1 ? -50 : 50; + } + + printf("\nDecoding test messages...\n"); + struct timeval t[3]; + gettimeofday(&t[1], NULL); + for (j = 0; j < NOF_MESSAGES; j++) { + printf(" codeword %d\n", j); + srslte_ldpc_decoder_decode_s(&decoder, symbols + j * finalN, messages_sim + j * finalK, finalN); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + double elapsed_time = t[0].tv_sec + 1e-6 * t[0].tv_usec; + printf("Elapsed time: %e s\n", elapsed_time); + + printf("\nVerifing results...\n"); + for (i = 0; i < NOF_MESSAGES * finalK; i++) { + if ((1U & messages_sim[i]) != (1U & messages_true[i])) { + perror("wrong!!"); + exit(-1); + } + } + + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + NOF_MESSAGES / elapsed_time, + NOF_MESSAGES * finalK / elapsed_time, + NOF_MESSAGES * finalN / elapsed_time); + + printf("\nTest completed successfully!\n\n"); + + free(symbols); + free(codewords); + free(messages_sim); + free(messages_true); + srslte_ldpc_decoder_free(&decoder); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_dec_test.c b/lib/src/phy/fec/ldpc/test/ldpc_dec_test.c new file mode 100644 index 000000000..321d63b36 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_dec_test.c @@ -0,0 +1,227 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_dec_test.c + * \brief Unit test for the LDPC decoder working with float-valued LLRs. + * + * It decodes a batch of example codewords and compares the resulting messages + * with the expected ones. Reference messages and codewords are provided in + * files **examplesBG1.dat** and **examplesBG2.dat**. + * + * Synopsis: **ldpc_dec_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + */ + +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_decoder.h" +#include "srslte/phy/utils/debug.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +int lift_size = 2; /*!< \brief Lifting Size. */ +int finalK; /*!< \brief Number of uncoded bits (message length). */ +int finalN; /*!< \brief Number of coded bits (codeword length). */ + +#define NOF_MESSAGES 10 /*!< \brief Number of codewords in the test. */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Reads the example file. + */ +void get_examples(uint8_t* messages, // + uint8_t* codewords, + FILE* ex_file) +{ + char mstr[15]; // message string + char cstr[15]; // codeword string + char tmp[15]; + int i = 0; + int j = 0; + + sprintf(mstr, "ls%dmsgs", lift_size); + sprintf(cstr, "ls%dcwds", lift_size); + do { + do { + tmp[0] = fgetc(ex_file); + } while (tmp[0] != 'l'); + fscanf(ex_file, "%[^\n]", tmp + 1); + fgetc(ex_file); // discard newline + } while (strcmp(tmp, mstr) != 0); + + // read messages + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalK; i++) { + int rc = fgetc(ex_file); + messages[j * finalK + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } + + fscanf(ex_file, "%[^\n]", tmp); + if (strcmp(tmp, cstr) != 0) { + printf("Something went wrong while reading example file.\n"); + exit(-1); + } + fgetc(ex_file); // discard newline + + // read codewords + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalN; i++) { + int rc = fgetc(ex_file); + codewords[j * finalN + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } +} + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* messages_true = NULL; + uint8_t* messages_sim = NULL; + uint8_t* codewords = NULL; + float* symbols = NULL; + int i = 0; + int j = 0; + + FILE* ex_file = NULL; + char file_name[1000]; + + parse_args(argc, argv); + + // create an LDPC decoder + srslte_ldpc_decoder_t decoder; + if (srslte_ldpc_decoder_init(&decoder, SRSLTE_LDPC_DECODER_F, base_graph, lift_size, 1) != 0) { + perror("decoder init"); + exit(-1); + } + + printf("Test LDPC decoder:\n"); + printf(" Base Graph -> BG%d\n", decoder.bg + 1); + printf(" Lifting Size -> %d\n", decoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", decoder.bgM, decoder.bgN, decoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", decoder.liftM, decoder.liftN, decoder.liftK); + printf(" Final code rate -> K/(N-2) = %d/%d = 1/%d\n", + decoder.liftK, + decoder.liftN - 2 * lift_size, + decoder.bg == BG1 ? 3 : 5); + + finalK = decoder.liftK; + finalN = decoder.liftN - 2 * lift_size; + + messages_true = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + messages_sim = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + codewords = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + symbols = malloc(finalN * NOF_MESSAGES * sizeof(float)); + if (!messages_true || !messages_sim || !codewords || !symbols) { + perror("malloc"); + exit(-1); + } + + sprintf(file_name, "examplesBG%d.dat", base_graph + 1); + printf("\nReading example file %s...\n", file_name); + ex_file = fopen(file_name, "re"); + if (ex_file == NULL) { + perror("fopen"); + exit(-1); + } + + get_examples(messages_true, codewords, ex_file); + + fclose(ex_file); + + for (i = 0; i < NOF_MESSAGES * finalN; i++) { + symbols[i] = codewords[i] == 1 ? -50 : 50; + } + + printf("\nDecoding test messages...\n"); + struct timeval t[3]; + gettimeofday(&t[1], NULL); + for (j = 0; j < NOF_MESSAGES; j++) { + printf(" codeword %d\n", j); + srslte_ldpc_decoder_decode_f(&decoder, symbols + j * finalN, messages_sim + j * finalK, finalN); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + double elapsed_time = t[0].tv_sec + 1e-6 * t[0].tv_usec; + printf("Elapsed time: %e s\n", elapsed_time); + + printf("\nVerifing results...\n"); + for (i = 0; i < NOF_MESSAGES * finalK; i++) { + if ((1U & messages_sim[i]) != (1U & messages_true[i])) { + perror("wrong!!"); + exit(-1); + } + } + + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + NOF_MESSAGES / elapsed_time, + NOF_MESSAGES * finalK / elapsed_time, + NOF_MESSAGES * finalN / elapsed_time); + + printf("\nTest completed successfully!\n\n"); + + free(symbols); + free(codewords); + free(messages_sim); + free(messages_true); + srslte_ldpc_decoder_free(&decoder); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_enc_avx2_test.c b/lib/src/phy/fec/ldpc/test/ldpc_enc_avx2_test.c new file mode 100644 index 000000000..e407ad688 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_enc_avx2_test.c @@ -0,0 +1,226 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_enc_avx2_test.c + * \brief Unit test for the LDPC encoder (SIMD-optimized version). + * + * It encodes a batch of example messages and compares the resulting codewords + * with the expected ones. Reference messages and codewords are provided in + * files **examplesBG1.dat** and **examplesBG2.dat**. + * + * Synopsis: **ldpc_enc_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + */ + +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/utils/debug.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +int lift_size = 2; /*!< \brief Lifting Size. */ +int finalK; /*!< \brief Number of uncoded bits (message length). */ +int finalN; /*!< \brief Number of coded bits (codeword length). */ + +#define NOF_MESSAGES 10 /*!< \brief Number of codewords in the test. */ +#define NOF_REPS 1000 /*!< \brief Number of times tests are repeated (for computing throughput). */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Reads the example file. + */ +void get_examples(uint8_t* messages, // + uint8_t* codewords, + FILE* ex_file) +{ + char mstr[15]; // message string + char cstr[15]; // codeword string + char tmp[15]; + int i = 0; + int j = 0; + + sprintf(mstr, "ls%dmsgs", lift_size); + sprintf(cstr, "ls%dcwds", lift_size); + do { + do { + tmp[0] = fgetc(ex_file); + } while (tmp[0] != 'l'); + fscanf(ex_file, "%[^\n]", tmp + 1); + fgetc(ex_file); // discard newline + } while (strcmp(tmp, mstr) != 0); + + // read messages + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalK; i++) { + int rc = fgetc(ex_file); + messages[j * finalK + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } + + fscanf(ex_file, "%[^\n]", tmp); + if (strcmp(tmp, cstr) != 0) { + printf("Something went wrong while reading example file.\n"); + exit(-1); + } + fgetc(ex_file); // discard newline + + // read codewords + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalN; i++) { + int rc = fgetc(ex_file); + codewords[j * finalN + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } +} + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* messages = NULL; + uint8_t* codewords_true = NULL; + uint8_t* codewords_sim = NULL; + + int i = 0; + int j = 0; + int l = 0; + + FILE* ex_file = NULL; + char file_name[1000]; + + parse_args(argc, argv); + + // create an LDPC encoder + srslte_ldpc_encoder_t encoder; + if (srslte_ldpc_encoder_init(&encoder, SRSLTE_LDPC_ENCODER_AVX2, base_graph, lift_size) != 0) { + perror("encoder init"); + exit(-1); + } + + printf("Test LDPC encoder:\n"); + printf(" Base Graph -> BG%d\n", encoder.bg + 1); + printf(" Lifting Size -> %d\n", encoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", encoder.bgM, encoder.bgN, encoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", encoder.liftM, encoder.liftN, encoder.liftK); + printf(" Final code rate -> K/(N-2) = %d/%d = 1/%d\n", + encoder.liftK, + encoder.liftN - 2 * lift_size, + encoder.bg == BG1 ? 3 : 5); + + finalK = encoder.liftK; + finalN = encoder.liftN - 2 * lift_size; + + messages = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + codewords_true = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + codewords_sim = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + if (!messages || !codewords_true || !codewords_sim) { + perror("malloc"); + exit(-1); + } + + sprintf(file_name, "examplesBG%d.dat", base_graph + 1); + printf("\nReading example file %s...\n", file_name); + ex_file = fopen(file_name, "re"); + if (ex_file == NULL) { + perror("fopen"); + exit(-1); + } + + get_examples(messages, codewords_true, ex_file); + + fclose(ex_file); + + printf("\nEncoding test messages...\n"); + struct timeval t[3]; + double elapsed_time = 0; + for (j = 0; j < NOF_MESSAGES; j++) { + printf(" codeword %d\n", j); + gettimeofday(&t[1], NULL); + for (l = 0; l < NOF_REPS; l++) { + srslte_ldpc_encoder_encode(&encoder, messages + j * finalK, codewords_sim + j * finalN, finalK, finalN); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time += t[0].tv_sec + 1e-6 * t[0].tv_usec; + } + printf("Elapsed time: %e s\n", elapsed_time / NOF_REPS); + + printf("\nVerifing results...\n"); + for (i = 0; i < NOF_MESSAGES * finalN; i++) { + if (codewords_sim[i] != codewords_true[i]) { + perror("wrong!!"); + exit(-1); + } + } + + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + NOF_MESSAGES / (elapsed_time / NOF_REPS), + NOF_MESSAGES * finalK / (elapsed_time / NOF_REPS), + NOF_MESSAGES * finalN / (elapsed_time / NOF_REPS)); + + printf("\nTest completed successfully!\n\n"); + + free(codewords_sim); + free(codewords_true); + free(messages); + srslte_ldpc_encoder_free(&encoder); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_enc_test.c b/lib/src/phy/fec/ldpc/test/ldpc_enc_test.c new file mode 100644 index 000000000..a10f7ad11 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_enc_test.c @@ -0,0 +1,226 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_enc_test.c + * \brief Unit test for the LDPC encoder. + * + * It encodes a batch of example messages and compares the resulting codewords + * with the expected ones. Reference messages and codewords are provided in + * files **examplesBG1.dat** and **examplesBG2.dat**. + * + * Synopsis: **ldpc_enc_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + */ + +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/utils/debug.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +int lift_size = 2; /*!< \brief Lifting Size. */ +int finalK; /*!< \brief Number of uncoded bits (message length). */ +int finalN; /*!< \brief Number of coded bits (codeword length). */ + +#define NOF_MESSAGES 10 /*!< \brief Number of codewords in the test. */ +#define NOF_REPS 1000 /*!< \brief Number of times tests are repeated (for computing throughput). */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Reads the example file. + */ +void get_examples(uint8_t* messages, // + uint8_t* codewords, + FILE* ex_file) +{ + char mstr[15]; // message string + char cstr[15]; // codeword string + char tmp[15]; + int i = 0; + int j = 0; + + sprintf(mstr, "ls%dmsgs", lift_size); + sprintf(cstr, "ls%dcwds", lift_size); + do { + do { + tmp[0] = fgetc(ex_file); + } while (tmp[0] != 'l'); + fscanf(ex_file, "%[^\n]", tmp + 1); + fgetc(ex_file); // discard newline + } while (strcmp(tmp, mstr) != 0); + + // read messages + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalK; i++) { + int rc = fgetc(ex_file); + messages[j * finalK + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } + + fscanf(ex_file, "%[^\n]", tmp); + if (strcmp(tmp, cstr) != 0) { + printf("Something went wrong while reading example file.\n"); + exit(-1); + } + fgetc(ex_file); // discard newline + + // read codewords + for (j = 0; j < NOF_MESSAGES; j++) { + for (i = 0; i < finalN; i++) { + int rc = fgetc(ex_file); + codewords[j * finalN + i] = (uint8_t)(rc == '-' ? FILLER_BIT : rc - '0'); + } + fgetc(ex_file); // discard newline + } +} + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* messages = NULL; + uint8_t* codewords_true = NULL; + uint8_t* codewords_sim = NULL; + + int i = 0; + int j = 0; + int l = 0; + + FILE* ex_file = NULL; + char file_name[1000]; + + parse_args(argc, argv); + + // create an LDPC encoder + srslte_ldpc_encoder_t encoder; + if (srslte_ldpc_encoder_init(&encoder, SRSLTE_LDPC_ENCODER_C, base_graph, lift_size) != 0) { + perror("encoder init"); + exit(-1); + } + + printf("Test LDPC encoder:\n"); + printf(" Base Graph -> BG%d\n", encoder.bg + 1); + printf(" Lifting Size -> %d\n", encoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", encoder.bgM, encoder.bgN, encoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", encoder.liftM, encoder.liftN, encoder.liftK); + printf(" Final code rate -> K/(N-2) = %d/%d = 1/%d\n", + encoder.liftK, + encoder.liftN - 2 * lift_size, + encoder.bg == BG1 ? 3 : 5); + + finalK = encoder.liftK; + finalN = encoder.liftN - 2 * lift_size; + + messages = malloc(finalK * NOF_MESSAGES * sizeof(uint8_t)); + codewords_true = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + codewords_sim = malloc(finalN * NOF_MESSAGES * sizeof(uint8_t)); + if (!messages || !codewords_true || !codewords_sim) { + perror("malloc"); + exit(-1); + } + + sprintf(file_name, "examplesBG%d.dat", base_graph + 1); + printf("\nReading example file %s...\n", file_name); + ex_file = fopen(file_name, "re"); + if (ex_file == NULL) { + perror("fopen"); + exit(-1); + } + + get_examples(messages, codewords_true, ex_file); + + fclose(ex_file); + + printf("\nEncoding test messages...\n"); + struct timeval t[3]; + double elapsed_time = 0; + for (j = 0; j < NOF_MESSAGES; j++) { + printf(" codeword %d\n", j); + gettimeofday(&t[1], NULL); + for (l = 0; l < NOF_REPS; l++) { + srslte_ldpc_encoder_encode(&encoder, messages + j * finalK, codewords_sim + j * finalN, finalK, finalN); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time += t[0].tv_sec + 1e-6 * t[0].tv_usec; + } + printf("Elapsed time: %e s\n", elapsed_time / NOF_REPS); + + printf("\nVerifing results...\n"); + for (i = 0; i < NOF_MESSAGES * finalN; i++) { + if (codewords_sim[i] != codewords_true[i]) { + perror("wrong!!"); + exit(-1); + } + } + + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + NOF_MESSAGES / (elapsed_time / NOF_REPS), + NOF_MESSAGES * finalK / (elapsed_time / NOF_REPS), + NOF_MESSAGES * finalN / (elapsed_time / NOF_REPS)); + + printf("\nTest completed successfully!\n\n"); + + free(codewords_sim); + free(codewords_true); + free(messages); + srslte_ldpc_encoder_free(&encoder); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_rm_chain_test.c b/lib/src/phy/fec/ldpc/test/ldpc_rm_chain_test.c new file mode 100644 index 000000000..c79c9b88d --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_rm_chain_test.c @@ -0,0 +1,646 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_rm_chain_test.c + * \brief End-to-end test for LDPC encoder, rate-matcher, rate-dematcher and decoder. + * + * A batch of example messages is randomly generated, encoded, rate-matched, 2-PAM modulated, + * sent over an AWGN channel and, finally, rate-dematched and decoded by all three types of + * decoder. Transmitted and received messages are compared to estimate the WER. + * Multiple batches are simulated if the number of errors is not significant + * enough. + * + * + * Synopsis: **ldpc_rm_chain_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + * - **-e \** Codeword length after rate matching (set to 0 [default] for full rate). + * - **-f \** Number of filler bits (Default 17). + * - **-r \** Redundancy version {0-3}. + * - **-m \** Modulation type BPSK = 0, QPSK =1, QAM16 = 2, QAM64 = 3, QAM256 = 4. + * - **-M \** Limited buffer size. + * - **-s \** SNR in dB(Default 3 dB). + */ + +#include +#include +#include +#include +#include + +#include "srslte/phy/channel/ch_awgn.h" +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_decoder.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/fec/ldpc/ldpc_rm.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/random.h" +#include "srslte/phy/utils/vector.h" + +srslte_basegraph_t base_graph = BG1; /*!< \brief Base Graph (BG1 or BG2). */ +uint32_t lift_size = 2; /*!< \brief Lifting Size. */ +uint32_t rm_length = 0; /*!< \brief Codeword length after rate matching. */ +uint32_t F = 22 - 5; /*!< \brief Number of filler bits in each CBS. */ +uint32_t E = 14000; /*!< \brief Rate-matched Codeword size. */ +uint8_t rv = 0; /*!< \brief Redundancy version {0-3}. */ +mod_type_t mod_type = BPSK; /*!< \brief Modulation type: BPSK, QPSK, QAM16, QAM64, QAM256 = 4 */ +uint32_t Nref = 0; /*!< \brief Limited buffer size. */ +float snr = 0; /*!< \brief Signal-to-Noise Ratio [dB]. */ + +int finalK = 0; /*!< \brief Number of uncoded bits (message length, including punctured and filler bits). */ +int finalN = 0; /*!< \brief Number of coded bits (codeword length). */ + +#define BATCH_SIZE 100 /*!< \brief Number of codewords in a batch. */ +#define MAX_N_BATCH 10000 /*!< \brief Max number of simulated batches. */ +#define REQ_ERRORS 100 /*!< \brief Minimum number of errors for a significant simulation. */ +#define MS_SF 0.75f /*!< \brief Scaling factor for the normalized min-sum decoding algorithm. */ + +/*! + * \brief Prints test help when wrong parameter is passed as input. + */ +void usage(char* prog) +{ + + printf("Usage: %s [-bX] [-lX] [-eX] [-fX] [-rX] [-mX] [-MX] [sX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); + printf("\t-e Word length after rate matching [Default %d (no rate matching i.e. E = N - F)]\n", rm_length); + printf("\t-f Filler bits size (F) [Default %d]\n", F); + printf("\t-r Redundancy version (rv) [Default %d]\n", rv); + printf("\t-m Modulation_type BPSK=0, QPSK=1, 16QAM=2, 64QAM=3, 256QAM = 4 [Default %d]\n", mod_type); + printf("\t-M Limited buffer size (Nref) [Default = %d (normal buffer Nref = N)]\n", Nref); + printf("\t-s SNR [dB, Default %.1f dB]\n", snr); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:e:f:r:m:M:s:")) != -1) { + switch (opt) { + case 'b': + base_graph = (int)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (int)strtol(optarg, NULL, 10); + break; + case 'e': + rm_length = (int)strtol(optarg, NULL, 10); + break; + case 'f': + F = (uint32_t)strtol(optarg, NULL, 10); + break; + case 'r': + rv = (uint8_t)strtol(optarg, NULL, 10); + break; + case 'm': + mod_type = (mod_type_t)strtol(optarg, NULL, 10); + break; + case 'M': + Nref = (uint32_t)strtol(optarg, NULL, 10); + break; + case 's': + snr = strtod(optarg, NULL); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Prints decoder statistics. + */ +void print_decoder(char* title, int n_batches, int n_errors, double elapsed_time); + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + + uint8_t* messages_true = NULL; + uint8_t* messages_sim_f = NULL; + uint8_t* messages_sim_s = NULL; + uint8_t* messages_sim_c = NULL; + uint8_t* messages_sim_c_flood = NULL; + uint8_t* messages_sim_avx = NULL; + uint8_t* messages_sim_avx_flood = NULL; + uint8_t* codewords = NULL; + uint8_t* rm_codewords = NULL; + float* rm_symbols = NULL; + int16_t* rm_symbols_s = NULL; + int8_t* rm_symbols_c = NULL; + float* symbols = NULL; // unrm_symbols + int16_t* symbols_s = NULL; // unrm_symbols + int8_t* symbols_c = NULL; // unrm_symbols + + int i = 0; + int j = 0; + + parse_args(argc, argv); + + // create an LDPC encoder + srslte_ldpc_encoder_t encoder; +#ifdef LV_HAVE_AVX2 + if (srslte_ldpc_encoder_init(&encoder, SRSLTE_LDPC_ENCODER_AVX2, base_graph, lift_size) != 0) { + perror("encoder init"); + exit(-1); + } +#else // no AVX2 + if (srslte_ldpc_encoder_init(&encoder, SRSLTE_LDPC_ENCODER_C, base_graph, lift_size) != 0) { + perror("encoder init"); + exit(-1); + } +#endif // LV_HAVE_AVX2 + + // create a LDPC rate DeMatcher + finalK = encoder.liftK; + finalN = encoder.liftN - 2 * lift_size; + if (rm_length == 0) { + rm_length = finalN - F; + } + if (Nref == 0) { + Nref = finalN; + } + + // create a LDPC rate Matcher + srslte_ldpc_rm_t rm_tx; + if (srslte_ldpc_rm_tx_init(&rm_tx) != 0) { + perror("rate matcher init"); + exit(-1); + } + + // create a LDPC rate DeMatcher + srslte_ldpc_rm_t rm_rx; + if (srslte_ldpc_rm_rx_init_f(&rm_rx) != 0) { + perror("rate dematcher init"); + exit(-1); + } + + // create a LDPC rate DeMatcher (int16_t) + srslte_ldpc_rm_t rm_rx_s; + if (srslte_ldpc_rm_rx_init_s(&rm_rx_s) != 0) { + perror("rate dematcher init (int16_t)"); + exit(-1); + } + + // create a LDPC rate DeMatcher (int8_t) + srslte_ldpc_rm_t rm_rx_c; + if (srslte_ldpc_rm_rx_init_c(&rm_rx_c) != 0) { + perror("rate dematcher init (int8_t)"); + exit(-1); + } + + // create an LDPC decoder (float) + srslte_ldpc_decoder_t decoder_f; + if (srslte_ldpc_decoder_init(&decoder_f, SRSLTE_LDPC_DECODER_F, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } + // create an LDPC decoder (16 bit) + srslte_ldpc_decoder_t decoder_s; + if (srslte_ldpc_decoder_init(&decoder_s, SRSLTE_LDPC_DECODER_S, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init (int16_t)"); + exit(-1); + } + // create an LDPC decoder (8 bit) + srslte_ldpc_decoder_t decoder_c; + if (srslte_ldpc_decoder_init(&decoder_c, SRSLTE_LDPC_DECODER_C, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init (int8_t)"); + exit(-1); + } + // create an LDPC decoder (8 bit, flooded) + srslte_ldpc_decoder_t decoder_c_flood; + if (srslte_ldpc_decoder_init(&decoder_c_flood, SRSLTE_LDPC_DECODER_C_FLOOD, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } +#ifdef LV_HAVE_AVX2 + // create an LDPC decoder (8 bit, AVX2 version) + srslte_ldpc_decoder_t decoder_avx; + if (srslte_ldpc_decoder_init(&decoder_avx, SRSLTE_LDPC_DECODER_C_AVX2, base_graph, lift_size, MS_SF) != 0) { + perror("decoder init"); + exit(-1); + } + + // create an LDPC decoder (8 bit, flooded scheduling, AVX2 version) + srslte_ldpc_decoder_t decoder_avx_flood; + if (srslte_ldpc_decoder_init(&decoder_avx_flood, SRSLTE_LDPC_DECODER_C_AVX2_FLOOD, base_graph, lift_size, MS_SF) != + 0) { + perror("decoder init"); + exit(-1); + } +#endif // LV_HAVE_AVX2 + + // create a random generator + srslte_random_t random_gen = srslte_random_init(0); + + printf("Test LDPC chain:\n"); + printf(" Base Graph -> BG%d\n", encoder.bg + 1); + printf(" Lifting Size -> %d\n", encoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", encoder.bgM, encoder.bgN, encoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", encoder.liftM, encoder.liftN, encoder.liftK); + printf(" Base code rate -> K/(N-2) = %d/%d = 1/%d\n", + encoder.liftK, + encoder.liftN - 2 * lift_size, + encoder.bg == BG1 ? 3 : 5); + printf("\n"); + printf(" Codeblock length -> K = %d\n", finalK); + printf(" Codeword length -> N = %d\n", finalN); + printf(" Rate matched codeword length -> E = %d\n", rm_length); + printf(" Number of filler bits -> F = %d\n", F); + printf(" Redundancy version -> rv = %d\n", rv); + printf(" Final code rate -> (K-F)/E = (%d - %d)/%d = %.3f\n", + encoder.liftK, + F, + rm_length, + 1.0 * (encoder.liftK - F) / rm_length); + printf("\n Signal-to-Noise Ratio -> %.2f dB\n", snr); + + messages_true = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_f = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_s = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_c = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_c_flood = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_avx = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + messages_sim_avx_flood = malloc(finalK * BATCH_SIZE * sizeof(uint8_t)); + codewords = malloc(finalN * BATCH_SIZE * sizeof(uint8_t)); + rm_codewords = malloc(rm_length * BATCH_SIZE * sizeof(uint8_t)); + rm_symbols = malloc(rm_length * BATCH_SIZE * sizeof(float)); + rm_symbols_s = malloc(rm_length * BATCH_SIZE * sizeof(uint16_t)); + rm_symbols_c = malloc(rm_length * BATCH_SIZE * sizeof(uint8_t)); + + symbols = malloc(finalN * BATCH_SIZE * sizeof(float)); + symbols_s = malloc(finalN * BATCH_SIZE * sizeof(int16_t)); + symbols_c = malloc(finalN * BATCH_SIZE * sizeof(int8_t)); + if (!messages_true || !messages_sim_f || !messages_sim_s || !messages_sim_c || // + !messages_sim_avx || !messages_sim_c_flood || !messages_sim_avx_flood || // + !codewords || !rm_codewords || !rm_symbols || !rm_symbols_s || !rm_symbols_c || !symbols || !symbols_s || + !symbols_c) { + perror("malloc"); + exit(-1); + } + + int i_bit = 0; + int i_batch = 0; + struct timeval t[3]; + double elapsed_time_enc = 0; + double elapsed_time_dec_f = 0; + double elapsed_time_dec_s = 0; + double elapsed_time_dec_c = 0; + double elapsed_time_dec_c_flood = 0; + double elapsed_time_dec_avx = 0; + double elapsed_time_dec_avx_flood = 0; + int n_error_words_f = 0; + int n_error_words_s = 0; + int n_error_words_c = 0; + int n_error_words_c_flood = 0; + int n_error_words_avx = 0; + int n_error_words_avx_flood = 0; + + float noise_std_dev = srslte_convert_dB_to_amplitude(-snr); + + int16_t inf15 = (1U << 14U) - 1; + float gain_s = inf15 * noise_std_dev / 20 / (1 / noise_std_dev + 2); + + int8_t inf7 = (1U << 6U) - 1; + float gain_c = inf7 * noise_std_dev / 8 / (1 / noise_std_dev + 2); + + printf("\nBatch:\n "); + + while (((n_error_words_f < REQ_ERRORS) || (n_error_words_s < REQ_ERRORS) || (n_error_words_c < REQ_ERRORS)) && + (i_batch < MAX_N_BATCH)) { + i_batch++; + + if (!(i_batch % 10)) { + printf("%8d", i_batch); + if (!(i_batch % 90)) { + printf("\n "); + } + } + + /* generate data_tx */ + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK - F; j++) { + messages_true[i * finalK + j] = srslte_random_uniform_int_dist(random_gen, 0, 1); + } + for (; j < finalK; j++) { + messages_true[i * finalK + j] = FILLER_BIT; + } + } + + // lDPC Encoding + // compute the number of symbols that we need to encode/decode: at least (E + F) if E+F < N, + unsigned int n_useful_symbols = (E + F); + + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_encoder_encode( + &encoder, messages_true + j * finalK, codewords + j * finalN, finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_enc += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + // rate matching + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_rm_tx(&rm_tx, + codewords + j * finalN, + rm_codewords + j * rm_length, + rm_length, + base_graph, + lift_size, + rv, + mod_type, + Nref); + } + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < rm_length; j++) { + rm_symbols[i * rm_length + j] = 1 - 2 * rm_codewords[i * rm_length + j]; + } + } + + // Apply AWGN + srslte_ch_awgn_f(rm_symbols, rm_symbols, noise_std_dev, BATCH_SIZE * rm_length); + + // Convert symbols into LLRs + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < rm_length; j++) { + rm_symbols[i * rm_length + j] = rm_symbols[i * rm_length + j] * 2 / (noise_std_dev * noise_std_dev); + } + } + + for (i = 0; i < BATCH_SIZE; i++) { + if (srslte_ldpc_rm_rx_f(&rm_rx, + rm_symbols + i * rm_length, + symbols + i * finalN, + rm_length, + F, + base_graph, + lift_size, + rv, + mod_type, + Nref)) { + exit(-1); + } + } + + //////// Floating point + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_f(&decoder_f, symbols + j * finalN, messages_sim_f + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_f += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_f[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_f++; + break; + } + } + } + + //////// Fixed point - 16 bit + + // Quantize LLRs with 16 bits + srslte_vec_quant_fs(rm_symbols, rm_symbols_s, gain_s, 0, inf15, BATCH_SIZE * rm_length); + + // Rate dematcher + for (i = 0; i < BATCH_SIZE; i++) { + if (srslte_ldpc_rm_rx_s(&rm_rx_s, + rm_symbols_s + i * rm_length, + symbols_s + i * finalN, + rm_length, + F, + base_graph, + lift_size, + rv, + mod_type, + Nref)) { + exit(-1); + } + } + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_s(&decoder_s, symbols_s + j * finalN, messages_sim_s + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_s += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_s[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_s++; + break; + } + } + } + + //////// Fixed point - 8 bit + // Quantize LLRs with 8 bits + srslte_vec_quant_fc(rm_symbols, rm_symbols_c, gain_c, 0, inf7, BATCH_SIZE * rm_length); + + // Rate dematcher + for (i = 0; i < BATCH_SIZE; i++) { + if (srslte_ldpc_rm_rx_c(&rm_rx_c, + rm_symbols_c + i * rm_length, + symbols_c + i * finalN, + rm_length, + F, + base_graph, + lift_size, + rv, + mod_type, + Nref)) { + exit(-1); + } + } + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c(&decoder_c, symbols_c + j * finalN, messages_sim_c + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_c += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_c[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_c++; + break; + } + } + } + + //////// Fixed point - 8 bit, flooded scheduling + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c( + &decoder_c_flood, symbols_c + j * finalN, messages_sim_c_flood + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_c_flood += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_c_flood[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_c_flood++; + break; + } + } + } + +#ifdef LV_HAVE_AVX2 + //////// Fixed point - 8 bit - AVX2 version + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c( + &decoder_avx, symbols_c + j * finalN, messages_sim_avx + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_avx += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_avx[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_avx++; + break; + } + } + } + + //////// Fixed point - 8 bit, flooded scheduling - AVX2 version + + // Recover messages + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_ldpc_decoder_decode_c( + &decoder_avx_flood, symbols_c + j * finalN, messages_sim_avx_flood + j * finalK, n_useful_symbols); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_avx_flood += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < finalK; j++) { + i_bit = i * finalK + j; + if (messages_sim_avx_flood[i_bit] != (1U & messages_true[i_bit])) { + n_error_words_avx_flood++; + break; + } + } + } +#endif // LV_HAVE_AVX2 + } + + printf("\nEstimated throughput encoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + i_batch * BATCH_SIZE / elapsed_time_enc, + i_batch * BATCH_SIZE * finalK / elapsed_time_enc, + i_batch * BATCH_SIZE * finalN / elapsed_time_enc); + + print_decoder("FLOATING POINT", i_batch, n_error_words_f, elapsed_time_dec_f); + print_decoder("FIXED POINT (16 bits)", i_batch, n_error_words_s, elapsed_time_dec_s); + print_decoder("FIXED POINT (8 bits)", i_batch, n_error_words_c, elapsed_time_dec_c); + print_decoder("FIXED POINT (8 bits, flooded scheduling)", i_batch, n_error_words_c_flood, elapsed_time_dec_c_flood); + +#ifdef LV_HAVE_AVX2 + print_decoder("FIXED POINT (8 bits - AVX2)", i_batch, n_error_words_avx, elapsed_time_dec_avx); + print_decoder( + "FIXED POINT (8 bits, flooded scheduling - AVX2)", i_batch, n_error_words_avx_flood, elapsed_time_dec_avx_flood); +#endif // LV_HAVE_AVX2 + + if (n_error_words_s > 10 * n_error_words_f) { + perror("16-bit performance too low!"); + exit(-1); + } + if (n_error_words_c > 10 * n_error_words_f) { + perror("8-bit performance too low!"); + exit(-1); + } + printf("\nTest completed successfully!\n\n"); + + free(symbols); + free(symbols_s); + free(symbols_c); + free(rm_symbols); + free(rm_symbols_s); + free(rm_symbols_c); + free(rm_codewords); + free(codewords); + free(messages_sim_avx); + free(messages_sim_c_flood); + free(messages_sim_c); + free(messages_sim_s); + free(messages_sim_f); + free(messages_true); + srslte_random_free(random_gen); +#ifdef LV_HAVE_AVX2 + srslte_ldpc_decoder_free(&decoder_avx); +#endif // LV_HAVE_AVX2 + srslte_ldpc_decoder_free(&decoder_c_flood); + srslte_ldpc_decoder_free(&decoder_c); + srslte_ldpc_decoder_free(&decoder_s); + srslte_ldpc_decoder_free(&decoder_f); + srslte_ldpc_encoder_free(&encoder); + srslte_ldpc_rm_tx_free(&rm_tx); + srslte_ldpc_rm_rx_free_f(&rm_rx); + srslte_ldpc_rm_rx_free_s(&rm_rx_s); + srslte_ldpc_rm_rx_free_c(&rm_rx_c); +} + +void print_decoder(char* title, int n_batches, int n_errors, double elapsed_time) +{ + printf("\n**** %s ****", title); + printf("\nEstimated word error rate:\n %e (%d errors)\n", (double)n_errors / n_batches / BATCH_SIZE, n_errors); + + printf("Estimated throughput decoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + n_batches * BATCH_SIZE / elapsed_time, + n_batches * BATCH_SIZE * finalK / elapsed_time, + n_batches * BATCH_SIZE * finalN / elapsed_time); +} diff --git a/lib/src/phy/fec/ldpc/test/ldpc_rm_test.c b/lib/src/phy/fec/ldpc/test/ldpc_rm_test.c new file mode 100644 index 000000000..b441764a2 --- /dev/null +++ b/lib/src/phy/fec/ldpc/test/ldpc_rm_test.c @@ -0,0 +1,355 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file ldpc_rm_test.c + * \brief Unit test for the LDPC RateMatcher and RateDematcher. + * + * A batch of example messages is randomly generated, encoded, rate-matched, 2-PAM modulated, + * and, finally, rate-dematched and decoded by all three types of + * rate dematchers (float, int16_t, int8_t). + * The rate-dematched codeword is compared against the transmitted codeword + * + * Synopsis: **ldpc_rm_test [options]** + * + * Options: + * - **-b \** Base Graph (1 or 2. Default 1). + * - **-l \** Lifting Size (according to 5GNR standard. Default 2). + * - **-e \** Codeword length after rate matching (set to 0 [default] for full rate). + * - **-f \** Number of filler bits (Default 17). + * - **-r \** Redundancy version {0-3}. + * - **-m \** Modulation type BPSK = 0, QPSK =1, QAM16 = 2, QAM64 = 3, QAM256 = 4. + * - **-M \** Limited buffer size. + */ + +#include +#include +#include +#include +#include + +#include "srslte/phy/fec/ldpc/ldpc_common.h" +#include "srslte/phy/fec/ldpc/ldpc_encoder.h" +#include "srslte/phy/fec/ldpc/ldpc_rm.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/random.h" + +srslte_basegraph_t base_graph = BG2; /*!< \brief Base Graph (BG1 or BG2). */ +uint32_t lift_size = 208; /*!< \brief Lifting Size. */ +uint32_t C = 2; /*!< \brief Number of code block segments (CBS). */ +uint32_t F = 10; /*!< \brief Number of filler bits in each CBS. */ +uint32_t E = 0; /*!< \brief Rate-matched codeword size (E = 0, no rate matching). */ +uint8_t rv = 0; /*!< \brief Redundancy version {0-3}. */ +mod_type_t mod_type = QPSK; /*!< \brief Modulation type: BPSK, QPSK, QAM16, QAM64, QAM256. */ +uint32_t Nref = 0; /*!< \brief Limited buffer size.*/ + +uint32_t N = 0; /*!< \brief Codeblock size (including punctured and filler bits). */ +uint32_t K = 0; /*!< \brief Codeword size. */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-bX] [-lX] [-eX] [-fX] [-rX] [-mX] [-MX]\n", prog); + printf("\t-b Base Graph [(1 or 2) Default %d]\n", base_graph + 1); + printf("\t-l Lifting Size [Default %d]\n", lift_size); + printf("\t-e Word length after rate matching [Default %d (no rate matching i.e. E = N - F)]\n", E); + printf("\t-f Filler bits size (F) [Default %d]\n", F); + printf("\t-r Redundancy version (rv) [Default %d]\n", rv); + printf("\t-m Modulation_type BPSK=0, QPSK=1, 16QAM=2, 64QAM=3, 256QAM = 4 [Default %d]\n", mod_type); + printf("\t-M Limited buffer size (Nref) [Default = %d (normal buffer Nref = N)]\n", Nref); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "b:l:e:f:r:m:M:")) != -1) { + switch (opt) { + case 'b': + base_graph = (uint32_t)strtol(optarg, NULL, 10) - 1; + break; + case 'l': + lift_size = (uint32_t)strtol(optarg, NULL, 10); + break; + case 'e': + E = (uint32_t)strtol(optarg, NULL, 10); + break; + case 'f': + F = (uint32_t)strtol(optarg, NULL, 10); + break; + case 'r': + rv = (uint8_t)strtol(optarg, NULL, 10); + break; + case 'm': + mod_type = (mod_type_t)strtol(optarg, NULL, 10); + break; + case 'M': + Nref = (uint32_t)strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Main test function. + */ +int main(int argc, char** argv) +{ + uint8_t* codeblocks = NULL; /* codeblocks including filler bits */ + uint8_t* codewords = NULL; + uint8_t* rm_codewords = NULL; + float* rm_symbols = NULL; + int16_t* rm_symbols_s = NULL; + int8_t* rm_symbols_c = NULL; + float* unrm_symbols = NULL; + int16_t* unrm_symbols_s = NULL; + int8_t* unrm_symbols_c = NULL; + + uint32_t i = 0; + uint32_t r = 0; + int error = 0; + + parse_args(argc, argv); + + srslte_random_t random_gen = srslte_random_init(0); + + // create an LDPC encoder + srslte_ldpc_encoder_t encoder; + if (srslte_ldpc_encoder_init(&encoder, SRSLTE_LDPC_ENCODER_C, base_graph, lift_size) != 0) { + perror("encoder init"); + exit(-1); + } + + K = encoder.liftK; + N = encoder.liftN - 2 * lift_size; + if (E == 0) { + E = N - F; + } + if (Nref == 0) { + Nref = N; + } + + // create a LDPC rate Matcher + srslte_ldpc_rm_t rm_tx; + if (srslte_ldpc_rm_tx_init(&rm_tx) != 0) { + perror("rate matcher init"); + exit(-1); + } + + // create a LDPC rate DeMatcher + srslte_ldpc_rm_t rm_rx; + if (srslte_ldpc_rm_rx_init_f(&rm_rx) != 0) { + perror("rate dematcher init"); + exit(-1); + } + + // create a LDPC rate DeMatcher (int16_t) + srslte_ldpc_rm_t rm_rx_s; + if (srslte_ldpc_rm_rx_init_s(&rm_rx_s) != 0) { + perror("rate dematcher init (int16_t)"); + exit(-1); + } + + // create a LDPC rate DeMatcher (int8_t) + srslte_ldpc_rm_t rm_rx_c; + if (srslte_ldpc_rm_rx_init_c(&rm_rx_c) != 0) { + perror("rate dematcher init (int8_t)"); + exit(-1); + } + + printf("Test LDPC chain:\n"); + printf(" Base Graph -> BG%d\n", encoder.bg + 1); + printf(" Lifting Size -> %d\n", encoder.ls); + printf(" Protograph -> M = %d, N = %d, K = %d\n", encoder.bgM, encoder.bgN, encoder.bgK); + printf(" Lifted graph -> M = %d, N = %d, K = %d\n", encoder.liftM, encoder.liftN, encoder.liftK); + printf(" Base code rate -> K/(N-2) = %d/%d = 1/%d\n", + encoder.liftK, + encoder.liftN - 2 * lift_size, + encoder.bg == BG1 ? 3 : 5); + printf("\n"); + printf(" Codeblock length -> K = %d\n", K); + printf(" Codeword length -> N = %d\n", N); + printf(" Rate matched codeword length -> E = %d\n", E); + printf(" Number of filler bits -> F = %d\n", F); + printf(" Redundancy version -> rv = %d\n", rv); + printf(" Final code rate -> (K-F)/E = (%d - %d)/%d = %.3f\n", encoder.liftK, F, E, 1.0 * (encoder.liftK - F) / E); + printf("\n"); + + codeblocks = malloc(C * K * sizeof(uint8_t)); + codewords = malloc(C * N * sizeof(uint8_t)); + rm_codewords = malloc(C * E * sizeof(uint8_t)); + rm_symbols = malloc(C * E * sizeof(float)); + rm_symbols_s = malloc(C * E * sizeof(int16_t)); + rm_symbols_c = malloc(C * E * sizeof(int8_t)); + unrm_symbols = malloc(C * N * sizeof(float)); + unrm_symbols_s = malloc(C * N * sizeof(int16_t)); + unrm_symbols_c = malloc(C * N * sizeof(int8_t)); + if (!codeblocks || !codewords || !rm_codewords || !rm_symbols || !rm_symbols_s || !rm_symbols_c || !unrm_symbols || + !unrm_symbols_s || !unrm_symbols_c) { + perror("malloc"); + exit(-1); + } + + // Generate random bits + for (r = 0; r < C; r++) { + for (i = 0; i < K - F; i++) { + // codeblock_seg[i] = rand() % 2; + codeblocks[r * K + i] = srslte_random_uniform_int_dist(random_gen, 0, 1); + } + for (; i < K; i++) { // add filler bits + codeblocks[r * K + i] = FILLER_BIT; + } + } + + // lDPC Encoding + // compute the number of symbols that we need to encode/decode: at least (E + F) if E+F < N, + unsigned int n_useful_symbols = (E + F); + + // Encode messages + // gettimeofday(&t[1], NULL); + for (r = 0; r < C; r++) { + if (srslte_ldpc_encoder_encode(&encoder, codeblocks + r * K, codewords + r * N, K, n_useful_symbols)) { + exit(-1); + } + + // LDPC rate matching + if (srslte_ldpc_rm_tx( + &rm_tx, codewords + r * N, rm_codewords + r * E, E, base_graph, lift_size, rv, mod_type, Nref)) { + exit(-1); + } + + // Modulate codewords + // quantization + + int16_t inf16 = (1U << 15U) - 1; + int8_t inf8 = (1U << 7U) - 1; + for (i = 0; i < E; i++) { + rm_symbols[r * E + i] = rm_codewords[r * E + i] ? -1 : 1; + rm_symbols_s[r * E + i] = rm_codewords[r * E + i] ? -1 : 1; + rm_symbols_c[r * E + i] = rm_codewords[r * E + i] ? -1 : 1; + } + + if (srslte_ldpc_rm_rx_f( + &rm_rx, rm_symbols + r * E, unrm_symbols + r * N, E, F, base_graph, lift_size, rv, mod_type, Nref)) { + exit(-1); + } + if (srslte_ldpc_rm_rx_s( + &rm_rx_s, rm_symbols_s + r * E, unrm_symbols_s + r * N, E, F, base_graph, lift_size, rv, mod_type, Nref)) { + exit(-1); + } + if (srslte_ldpc_rm_rx_c( + &rm_rx_c, rm_symbols_c + r * E, unrm_symbols_c + r * N, E, F, base_graph, lift_size, rv, mod_type, Nref)) { + exit(-1); + } + + // Check self correctness for the float version + error = 0; + for (i = 0; i < N; i++) { + if (((unrm_symbols[i + r * N] == 0) && (codewords[i + r * N] != FILLER_BIT)) || + ((unrm_symbols[i + r * N] == INFINITY) && (codewords[i + r * N] == FILLER_BIT)) || + ((unrm_symbols[i + r * N] > 0) && (codewords[i + r * N] == 0)) || + ((unrm_symbols[i + r * N] < 0) && (codewords[i + r * N]))) { + // any of these cases are ok + } else { + + error = -1; + break; + } + } + + if (error < 0) { + printf("Error in rate-matching block at code segment: %d\n unrm_symb[%d] = %2.1f\n codeword[%d] = %d\n", + r, + i, + unrm_symbols[i + r * N], + i, + codewords[i + r * N]); + } else { + printf(" No errors in rate-matching block\n"); + } + // check against float implementation + for (i = 0; i < N; i++) { + if (((int16_t)unrm_symbols[i + r * N] == unrm_symbols_s[i + r * N]) || + (unrm_symbols[i + r * N] == INFINITY && unrm_symbols_s[i + r * N] == inf16) || + ((int16_t)unrm_symbols[i + r * N] == 0 && unrm_symbols_s[i + r * N] == 0)) { + } else { + error = -2; + break; + } + } + if (error == -2) { + printf("Error in rate-matching block (int16_t) at code segment: %d\n unrm_symb[%d] = %d\n unrm_symb_s[%d] = %d\n", + r, + i, + (int16_t)unrm_symbols[i + r * N], + i, + unrm_symbols_s[i + r * N]); + } else { + printf(" No errors in rate-matching block (int16_t)\n"); + } + + // check against float implementation + for (i = 0; i < N; i++) { + if (((int8_t)unrm_symbols[i + r * N] == unrm_symbols_c[i + r * N]) || + (unrm_symbols[i + r * N] == INFINITY && unrm_symbols_c[i + r * N] == inf8)) { + } else { + error = -3; + break; + } + } + if (error == -3) { + printf( + "Error in rate-matching block (int8_t) at code segment: %d\n unrm_symb[%d] = %2.1f\n unrm_symb_c[%d] = %d\n", + r, + i, + unrm_symbols[i + r * N], + i, + unrm_symbols_c[i + r * N]); + } else { + printf(" No errors in rate-matching block: (int8_t)\n"); + } + + } // codeblocks r + + free(unrm_symbols); + free(unrm_symbols_s); + free(unrm_symbols_c); + free(rm_symbols); + free(rm_symbols_s); + free(rm_symbols_c); + free(rm_codewords); + free(codewords); + free(codeblocks); + srslte_random_free(random_gen); + srslte_ldpc_encoder_free(&encoder); + srslte_ldpc_rm_tx_free(&rm_tx); + srslte_ldpc_rm_rx_free_f(&rm_rx); + srslte_ldpc_rm_rx_free_s(&rm_rx_s); + srslte_ldpc_rm_rx_free_c(&rm_rx_c); + return error; +} diff --git a/lib/src/phy/fec/polar/CMakeLists.txt b/lib/src/phy/fec/polar/CMakeLists.txt new file mode 100644 index 000000000..68461fa23 --- /dev/null +++ b/lib/src/phy/fec/polar/CMakeLists.txt @@ -0,0 +1,21 @@ +# +# Project: 5GCoding-SRS +# Author: Jesus Gomez (CTTC) +# Copyright: Software Radio Systems Limited +# + +set(FEC_SOURCES ${FEC_SOURCES} + polar/polar_encoder.c + polar/polar_encoder_pipelined.c + polar/polar_encoder_avx2.c + polar/polar_decoder.c + polar/polar_decoder_ssc_all.c + polar/polar_decoder_ssc_f.c + polar/polar_decoder_ssc_s.c + polar/polar_decoder_ssc_c.c + polar/polar_decoder_ssc_c_avx2.c + polar/polar_decoder_vector.c + polar/polar_decoder_vector_avx2.c + PARENT_SCOPE) + +add_subdirectory(test) diff --git a/lib/src/phy/fec/polar/polar_decoder.c b/lib/src/phy/fec/polar/polar_decoder.c new file mode 100644 index 000000000..fddfe3e89 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder.c @@ -0,0 +1,233 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder.c + * \brief Definition of the polar decoder. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * 5G uses a polar decoder with maximum sizes \f$2^n\f$ with \f$n = 5,...,10\f$. + * + */ + +#include +#include + +#include +#include + +#include "polar_decoder_ssc_c.h" +#include "polar_decoder_ssc_c_avx2.h" +#include "polar_decoder_ssc_f.h" +#include "polar_decoder_ssc_s.h" +#include "srslte/phy/fec/polar/polar_decoder.h" +#include "srslte/phy/utils/debug.h" + +/*! SSC Polar decoder with float LLR inputs. */ +static int decode_ssc_f(void* o, const float* symbols, uint8_t* data) +{ + + srslte_polar_decoder_t* q = o; + + init_polar_decoder_ssc_f(q->ptr, symbols, data); + + polar_decoder_ssc_f(q->ptr, data); + + return 0; +} + +/*! SSC Polar decoder with int16_t LLR inputs. */ +static int decode_ssc_s(void* o, const int16_t* symbols, uint8_t* data) +{ + srslte_polar_decoder_t* q = o; + + init_polar_decoder_ssc_s(q->ptr, symbols, data); + + polar_decoder_ssc_s(q->ptr, data); + + return 0; +} + +/*! SSC Polar decoder with int8_t LLR inputs. */ +static int decode_ssc_c(void* o, const int8_t* symbols, uint8_t* data) +{ + srslte_polar_decoder_t* q = o; + + init_polar_decoder_ssc_c(q->ptr, symbols, data); + + polar_decoder_ssc_c(q->ptr, data); + + return 0; +} + +#ifdef LV_HAVE_AVX2 +/*! SSC Polar decoder AVX2 with int8_t LLR inputs . */ +static int decode_ssc_c_avx2(void* o, const int8_t* symbols, uint8_t* data) +{ + srslte_polar_decoder_t* q = o; + + init_polar_decoder_ssc_c_avx2(q->ptr, symbols, data); + + polar_decoder_ssc_c_avx2(q->ptr, data); + + return 0; +} +#endif // LV_HAVE_AVX2 + +/*! Destructor of a (float) SSC polar decoder. */ +static void free_ssc_f(void* o) +{ + srslte_polar_decoder_t* q = o; + delete_polar_decoder_ssc_f(q->ptr); +} + +/*! Destructor of a (int16_t) SSC polar decoder. */ +static void free_ssc_s(void* o) +{ + srslte_polar_decoder_t* q = o; + delete_polar_decoder_ssc_s(q->ptr); +} + +/*! Destructor of a (int8_t) SSC polar decoder. */ +static void free_ssc_c(void* o) +{ + srslte_polar_decoder_t* q = o; + delete_polar_decoder_ssc_c(q->ptr); +} + +#ifdef LV_HAVE_AVX2 +/*! Destructor of a (int8_t, avx2) SSC polar decoder. */ +static void free_ssc_c_avx2(void* o) +{ + srslte_polar_decoder_t* q = o; + delete_polar_decoder_ssc_c_avx2(q->ptr); +} +#endif + +/*! Initializes a polar decoder structure to use the SSC polar decoder algorithm with float LLR inputs. */ +static int init_ssc_f(srslte_polar_decoder_t* q, uint16_t* frozen_set, uint16_t code_size_log, uint16_t frozen_set_size) +{ + q->decode_f = decode_ssc_f; + q->free = free_ssc_f; + + if ((q->ptr = create_polar_decoder_ssc_f(frozen_set, code_size_log, frozen_set_size)) == NULL) { + ERROR("create_polar_decoder_ssc_f failed\n"); + free_ssc_f(q); + return -1; + } + return 0; +} + +/*! Initializes a polar decoder structure to use the SSC polar decoder algorithm with uint16_t LLR inputs. */ +static int init_ssc_s(srslte_polar_decoder_t* q, uint16_t* frozen_set, uint16_t code_size_log, uint16_t frozen_set_size) +{ + q->decode_s = decode_ssc_s; + q->free = free_ssc_s; + + if ((q->ptr = create_polar_decoder_ssc_s(frozen_set, code_size_log, frozen_set_size)) == NULL) { + ERROR("create_polar_decoder_ssc_s failed\n"); + free_ssc_s(q); + return -1; + } + return 0; +} + +/*! Initializes a polar decoder structure to use the SSC polar decoder algorithm with uint8_t LLR inputs. */ +static int init_ssc_c(srslte_polar_decoder_t* q, uint16_t* frozen_set, uint16_t code_size_log, uint16_t frozen_set_size) +{ + q->decode_c = decode_ssc_c; + q->free = free_ssc_c; + + if ((q->ptr = create_polar_decoder_ssc_c(frozen_set, code_size_log, frozen_set_size)) == NULL) { + ERROR("create_polar_decoder_ssc_c failed\n"); + free_ssc_c(q); + return -1; + } + return 0; +} + +#ifdef LV_HAVE_AVX2 +/*! Initializes a polar decoder structure to use the SSC polar decoder algorithm with uint8_t LLR inputs and AVX2 + * instructions. */ +static int +init_ssc_c_avx2(srslte_polar_decoder_t* q, uint16_t* frozen_set, uint16_t code_size_log, uint16_t frozen_set_size) +{ + q->decode_c = decode_ssc_c_avx2; + q->free = free_ssc_c_avx2; + + if ((q->ptr = create_polar_decoder_ssc_c_avx2(frozen_set, code_size_log, frozen_set_size)) == NULL) { + ERROR("create_polar_decoder_ssc_c failed\n"); + free_ssc_c_avx2(q); + return -1; + } + return 0; +} +#endif + +int srslte_polar_decoder_init(srslte_polar_decoder_t* q, + srslte_polar_decoder_type_t type, + uint16_t code_size_log, + uint16_t* frozen_set, + uint16_t frozen_set_size) +{ + switch (type) { + case SRSLTE_POLAR_DECODER_SSC_F: + return init_ssc_f(q, frozen_set, code_size_log, frozen_set_size); + case SRSLTE_POLAR_DECODER_SSC_S: + return init_ssc_s(q, frozen_set, code_size_log, frozen_set_size); + case SRSLTE_POLAR_DECODER_SSC_C: + return init_ssc_c(q, frozen_set, code_size_log, frozen_set_size); +#ifdef LV_HAVE_AVX2 + case SRSLTE_POLAR_DECODER_SSC_C_AVX2: + return init_ssc_c_avx2(q, frozen_set, code_size_log, frozen_set_size); +#endif + default: + ERROR("Decoder not implemented\n"); + return -1; + } + return 0; +} + +void srslte_polar_decoder_free(srslte_polar_decoder_t* q) +{ + if (q->free) { + q->free(q); + } + memset(q, 0, sizeof(srslte_polar_decoder_t)); +} + +int srslte_polar_decoder_decode_f(srslte_polar_decoder_t* q, const float* llr, uint8_t* data_decoded) +{ + return q->decode_f(q, llr, data_decoded); +} + +int srslte_polar_decoder_decode_s(srslte_polar_decoder_t* q, const int16_t* llr, uint8_t* data_decoded) +{ + return q->decode_s(q, llr, data_decoded); +} + +int srslte_polar_decoder_decode_c(srslte_polar_decoder_t* q, const int8_t* llr, uint8_t* data_decoded) +{ + return q->decode_c(q, llr, data_decoded); +} diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_all.c b/lib/src/phy/fec/polar/polar_decoder_ssc_all.c new file mode 100644 index 000000000..052d0070f --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_all.c @@ -0,0 +1,102 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_all.c + * \brief Definition of the SSC polar decoder functions common to all implementations + * + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ +#include "polar_decoder_ssc_all.h" +#include "../utils_avx2.h" + +int init_node_type(const uint16_t* frozen_set, struct Params* param) +{ + + uint8_t s = 0; // stage + uint8_t* is_not_rate_0 = NULL; + uint8_t* is_rate_1 = NULL; + uint16_t* i_even = NULL; + uint16_t* i_odd = NULL; + + uint16_t code_size = param->code_stage_size[param->code_size_log]; + uint16_t code_half_size = param->code_stage_size[param->code_size_log - 1]; + + is_not_rate_0 = aligned_alloc(SRSLTE_AVX2_B_SIZE, 2 * code_size * sizeof(uint8_t)); + if (!is_not_rate_0) { + perror("malloc"); + return -1; + } + is_rate_1 = is_not_rate_0 + code_size; + + i_odd = malloc(code_half_size * sizeof(uint16_t)); + if (!i_odd) { + free(is_not_rate_0); + perror("malloc"); + return -1; + } + + i_even = malloc(code_half_size * sizeof(uint16_t)); + if (!i_even) { + free(is_not_rate_0); + free(i_odd); + perror("malloc"); + return -1; + } + + memset(i_even, 0, code_half_size); + memset(i_odd, 0, code_half_size); + for (uint16_t i = 0; i < code_half_size; i++) { + i_even[i] = 2 * i; + i_odd[i] = 2 * i + 1; + } + + // node_type = is_not_rate_0_node: 0 if rate 0, 1 if not rate 0. + memset(is_not_rate_0, 1, code_size); + memset(is_rate_1, 1, code_size); + for (uint16_t i = 0; i < param->frozen_set_size; i++) { + is_not_rate_0[frozen_set[i]] = 0; + is_rate_1[frozen_set[i]] = 0; + } + + s = 0; + for (uint16_t j = 0; j < code_size; j++) { + param->node_type[s][j] = 3 * is_not_rate_0[j]; // 0 if rate-0; 2 if rate-r; 3 if rate 1 + } + + for (s = 1; s < param->code_size_log + 1; s++) { + for (uint16_t j = 0; j < param->code_stage_size[param->code_size_log - s]; j++) { + is_not_rate_0[j] = is_not_rate_0[i_even[j]] | is_not_rate_0[i_odd[j]]; // bitor + is_rate_1[j] = is_rate_1[i_even[j]] & is_rate_1[i_odd[j]]; // bitand + param->node_type[s][j] = 2 * is_not_rate_0[j] + is_rate_1[j]; // 0 if rate-0; 2 if rate-r; 3 if rate 1 + } + } + + free(i_even); + free(i_odd); + free(is_not_rate_0); + + return 0; +} diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_all.h b/lib/src/phy/fec/polar/polar_decoder_ssc_all.h new file mode 100644 index 000000000..9cf80dfd1 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_all.h @@ -0,0 +1,78 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_all.h + * \brief Declaration of the SSC polar decoder functions common to all implementations + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_DECODER_SSC_ALL_H +#define POLAR_DECODER_SSC_ALL_H + +#include +#include +#include +#include +#include +#include + +/*! + * \brief Types of node in an SSC decoder. + */ +typedef enum { + RATE_0 = 0, /*!< \brief See function rate_0_node(). */ + RATE_R = 2, /*!< \brief See function rate_r_node(). */ + RATE_1 = 3, /*!< \brief See function rate_1_node(). */ +} node_rate; + +/*! + * \brief Stores constants. + */ +struct Params { + uint8_t code_size_log; /*!< \brief \f$log_2\f$ of code size. */ + uint16_t* code_stage_size; /*!< \brief Number of bits of the encoder input/output vector at a given stage. */ + uint16_t frozen_set_size; /*!< \brief Number of frozen bits. */ + uint8_t** node_type; /*!< \brief Node type indicator 1 at all stages 3 (rate-1), 2 (rate-r), 0 (rate-0). */ +}; + +/*! + * \brief Describes the state of a SSC polar decoder + */ +struct State { + uint8_t stage; /*!< \brief Current stage [0 - code_size_log] of the decoding algorithm. */ + bool flag_finished; /*!< \brief True if the last bit is decoded. False otherwise. */ + uint16_t* + active_node_per_stage; /*!< \brief Indicates the active node in each stage of the algorithm at a given moment. */ +}; + +/*! + * Computes node types and initializes struct Params. + * \param[in] frozen_set The position of the frozen bits in the codeword. + * \param[in, out] param A struct Params + */ +int init_node_type(const uint16_t* frozen_set, struct Params* param); + +#endif // polar_decoder_SSC_ALL_H diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_c.c b/lib/src/phy/fec/polar/polar_decoder_ssc_c.c new file mode 100644 index 000000000..de95bf481 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_c.c @@ -0,0 +1,422 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_c.c + * \brief Definition of the SSC polar decoder inner functions working with + * 8-bit integer-valued LLRs. + * + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +// IMPORTANT: polar_decoder_SSC_c.c is exactly the polar_decoder_SSC_f.c except for: +// (1) #include "polar_decoder_ssc_c.h" +// (2) the naming of the external function, which finish with _s instead of _f +// (3) the initialization of them of the set functions in create_polar_decoder_ssc_s +// pp->f = srslte_vec_function_f_ccc; +// pp->g = srslte_vec_function_g_bccc; +// pp->xor = srslte_vec_xor_bbb; +// pp->hard_bit = srslte_vec_hard_bit_cc; + +#include "polar_decoder_ssc_c.h" +#include "../utils_avx2.h" +#include "polar_decoder_vector.h" +#include "srslte/phy/fec/polar/polar_encoder.h" +#include "srslte/phy/utils/vector.h" + +/*! + * \brief Describes an SSC polar decoder (8-bit version). + */ +struct pSSC_c { + int8_t** llr0; /*!< \brief Pointers to the upper half of LLRs values at all stages. */ + int8_t** llr1; /*!< \brief Pointers to the lower half of LLRs values at all stages. */ + uint8_t* est_bit; /*!< \brief Pointers to the temporary estimated bits. */ + struct Params* param; /*!< \brief Pointer to a Params structure. */ + struct State* state; /*!< \brief Pointer to a State. */ + srslte_polar_encoder_t* enc; /*!< \brief Pointer to a srslte_polar_encoder_t. */ + void (*f)(const int8_t* x, const int8_t* y, int8_t* z, const uint16_t len); /*!< \brief Pointer to the function-f. */ + void (*g)(const uint8_t* b, + const int8_t* x, + const int8_t* y, + int8_t* z, + const uint16_t len); /*!< \brief Pointer to the function-g. */ + void (*xor)(const uint8_t* x, + const uint8_t* y, + uint8_t* z, + const uint32_t len); /*!< \brief Pointer to the function-g. */ + void (*hard_bit)(const int8_t* x, uint8_t* z, const uint16_t len); /*!< \brief Pointer to the hard-bit function. */ +}; + +/*! + * Switches between the different types of node (::RATE_1, ::RATE_0, ::RATE_R) for the SSC algorithm. + * Nodes in the decoding tree at stage \f$ s\f$ get the \f$2^s\f$ LLRs from the parent node and + * return the associated \f$2^s\f$ estimated bits. + * + */ +static void simplified_node(void* p, uint8_t* message); + +/*! + * All decoded bits below a ::RATE_0 node are 0. The function updates the \a p->state->active_node_per_stage + * pointer to point to the next active node. It is assumed that message bits are initialized to 0. + * + */ +static void rate_0_node(void* p); + +/*! + * ::RATE_1 nodes at stage \f$ s \f$ return the associated \f$2^s\f$ estimated bits by + * making a hard decision on them. + * ::RATE_1 nodes also update message bits vector. + * + */ +static void rate_1_node(void* p, uint8_t* message); + +/*! + * ::RATE_R nodes at stage \f$ s \f$ return the associated \f$2^s\f$ decoded bit by calling + * the child nodes to the right and left of the decoding tree and then polar encoding (xor) their output. + * At stage \f$ s \f$, this function runs function srslte_vec_function_f_fff() and srslte_vec_function_g_bfff() + * with vector size \f$2^{ s - 1}\f$ and updates \a llr0 and \a llr1 memory space for stage \f$(s - 1)\f$. + * This function also runs srslte_vec_xor_bbb() with vector size \f$2^{s-1}\f$ and + * updates \a estbits memory space for stage \f$(s + 1)\f$. + * + */ +static void rate_r_node(void* p, uint8_t* message); + +int init_polar_decoder_ssc_c(void* p, const int8_t* input_llr, uint8_t* data_decoded) +{ + struct pSSC_c* pp = p; + + if (p == NULL) { + return -1; + } + + uint8_t code_size_log = pp->param->code_size_log; // code_size_log. + int16_t code_size = pp->param->code_stage_size[code_size_log]; + int16_t code_half_size = pp->param->code_stage_size[code_size_log - 1]; + + // Initializes the data_decoded_vector to all zeros + memset(data_decoded, 0, code_size); + + // Initialize est_bit vector to all zeros + memset(pp->est_bit, 0, code_size); + + // Initializes LLR buffer for the last stage/level with the input LLRs values + for (uint16_t i = 0; i < code_half_size; i++) { + pp->llr0[code_size_log][i] = input_llr[i]; + pp->llr1[code_size_log][i] = input_llr[i + code_half_size]; + } + + // Initializes the state of the decoding tree + pp->state->stage = code_size_log + 1; // start from the only one node at the last stage + 1. + for (uint16_t i = 0; i < code_size_log + 1; i++) { + pp->state->active_node_per_stage[i] = 0; + } + pp->state->flag_finished = false; + + return 0; +} + +int polar_decoder_ssc_c(void* p, uint8_t* data_decoded) +{ + + if (p == NULL) { + return -1; + } + + simplified_node(p, data_decoded); + return 0; +} + +void delete_polar_decoder_ssc_c(void* p) +{ + struct pSSC_c* pp = p; + + if (p != NULL) { + free(pp->llr0[0]); // remove LLR buffer. + free(pp->llr0); + free(pp->llr1); + free(pp->param->node_type[0]); + free(pp->param->node_type); + free(pp->est_bit); // remove estbits buffer. + free(pp->param->code_stage_size); + free(pp->param); + free(pp->state->active_node_per_stage); + free(pp->state); + srslte_polar_encoder_free(pp->enc); + free(pp->enc); + free(pp); + } +} + +void* create_polar_decoder_ssc_c(uint16_t* frozen_set, const uint8_t code_size_log, const uint16_t frozen_set_size) +{ + struct pSSC_c* pp = NULL; // pointer to the polar decoder instance + + // allocate memory to the polar decoder instance + if ((pp = malloc(sizeof(struct pSSC_c))) == NULL) { + return NULL; + } + + // set functions + pp->f = srslte_vec_function_f_ccc; + pp->g = srslte_vec_function_g_bccc; + pp->xor = srslte_vec_xor_bbb; + pp->hard_bit = srslte_vec_hard_bit_cc; + + // encoder of maximum size + if ((pp->enc = malloc(sizeof(srslte_polar_encoder_t))) == NULL) { + free(pp); + return NULL; + } + srslte_polar_encoder_init(pp->enc, SRSLTE_POLAR_ENCODER_PIPELINED, code_size_log); + + // algorithm constants/parameters + if ((pp->param = malloc(sizeof(struct Params))) == NULL) { + free(pp->enc); + free(pp); + return NULL; + } + + if ((pp->param->code_stage_size = malloc((code_size_log + 1) * sizeof(uint16_t))) == NULL) { + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + pp->param->code_stage_size[0] = 1; + for (uint8_t i = 1; i < code_size_log + 1; i++) { + pp->param->code_stage_size[i] = 2 * pp->param->code_stage_size[i - 1]; + } + + pp->param->code_size_log = code_size_log; + + // state -- initialized in polar_decoder_ssc_init + if ((pp->state = malloc(sizeof(struct State))) == NULL) { + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + if ((pp->state->active_node_per_stage = malloc((code_size_log + 1) * sizeof(uint16_t))) == NULL) { + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // allocates memory for estimated bits per stage + uint16_t est_bits_size = pp->param->code_stage_size[code_size_log]; + + pp->est_bit = aligned_alloc(SRSLTE_AVX2_B_SIZE, est_bits_size); // every 32 chars are aligned + + // allocate memory for LLR pointers. + pp->llr0 = malloc((code_size_log + 1) * sizeof(int8_t*)); + pp->llr1 = malloc((code_size_log + 1) * sizeof(int8_t*)); + + // There are LLR buffers for n = 0 to n = code_size_log. Each with size 2^n. Thus, + // the total memory needed is 2^(n+1)-1. + // Only the stages starting at multiples of SRSLTE_AVX2_B_SIZE are aligned. + + // Let n_simd_llr be the exponent of the SIMD size in nummer of LLRs. + // i.e. in a SIMD instruction we can load 2^(n_simd_llr) LLR values + // then the memory for stages s >= n_simd_llr - 1 is aligned. + // but only the operations at stages s > n_simd_llr have all the inputs aligned. + uint8_t n_llr_all_stages = code_size_log + 1; // there are 2^(n_llr_all_stages) - 1 LLR values summing up all stages. + uint16_t llr_all_stages = 1U << n_llr_all_stages; + + pp->llr0[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages * sizeof(int8_t)); // 32*8=256 + // allocate memory to the polar decoder instance + if (pp->llr0[0] == NULL) { + free(pp->est_bit); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // initialize all LLR pointers + pp->llr1[0] = pp->llr0[0] + 1; + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->llr0[s] = pp->llr0[0] + pp->param->code_stage_size[s]; + pp->llr1[s] = pp->llr0[0] + pp->param->code_stage_size[s] + pp->param->code_stage_size[s - 1]; + } + + // allocate memory for node type pointers, one per stage. + pp->param->frozen_set_size = frozen_set_size; + pp->param->node_type = malloc((code_size_log + 1) * sizeof(uint8_t*)); + + // allocate memory to node_type_ssc. Stage s has 2^(N-s) nodes s=0,...,N. + // Thus, same size as LLRs all stages. + pp->param->node_type[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages * sizeof(uint8_t)); // 32*8=256 + + if (pp->param->node_type[0] == NULL) { + free(pp->param->node_type); + free(pp->est_bit); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // initialize all node type pointers. (stage 0 is the first, opposite to LLRs) + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->param->node_type[s] = pp->param->node_type[s - 1] + pp->param->code_stage_size[code_size_log - s + 1]; + } + + init_node_type(frozen_set, pp->param); + + return pp; +} + +static void simplified_node(void* p, uint8_t* message) +{ + + struct pSSC_c* pp = p; + + pp->state->stage--; // to child node. + + uint8_t stage = pp->state->stage; + uint16_t bit_pos = pp->state->active_node_per_stage[stage]; + + switch (pp->param->node_type[stage][bit_pos]) { + case RATE_1: + rate_1_node(pp, message); + break; + case RATE_0: + rate_0_node(pp); + break; + case RATE_R: + rate_r_node(pp, message); + break; + default: + printf("ERROR: wrong node type %d\n", pp->param->node_type[stage][bit_pos]); + exit(-1); + break; + } + + pp->state->stage++; // to parent node. +} + +static void rate_0_node(void* p) +{ + struct pSSC_c* pp = p; + + uint8_t code_size_log = pp->param->code_size_log; // code_size_log. + int16_t code_size = pp->param->code_stage_size[code_size_log]; + uint16_t bit_pos = pp->state->active_node_per_stage[0]; + uint8_t stage = pp->state->stage; + + if (bit_pos == code_size - 1) { + pp->state->flag_finished = true; + } else { + + // update active node at all the stages + for (uint8_t i = 0; i <= stage; i++) { + pp->state->active_node_per_stage[i] = pp->state->active_node_per_stage[i] + pp->param->code_stage_size[stage - i]; + } + } +} + +static void rate_1_node(void* p, uint8_t* message) +{ + struct pSSC_c* pp = p; + uint8_t stage = pp->state->stage; // for SSC decoder rate 1 nodes are always at stage 0. + + uint16_t bit_pos = pp->state->active_node_per_stage[0]; + uint16_t code_size = pp->param->code_stage_size[pp->param->code_size_log]; + uint16_t code_stage_size = pp->param->code_stage_size[stage]; + + uint8_t* codeword = pp->est_bit + bit_pos; + int8_t* LLR = pp->llr0[stage]; + + pp->hard_bit(LLR, codeword, code_stage_size); + + if (stage != 0) { + srslte_polar_encoder_encode(pp->enc, codeword, message + bit_pos, stage); + } else { + message[bit_pos] = codeword[0]; + } + + // update active node at all the stages + for (uint8_t i = 0; i <= stage; i++) { + pp->state->active_node_per_stage[i] = pp->state->active_node_per_stage[i] + pp->param->code_stage_size[stage - i]; + } + + // check if this is the last bit + if (pp->state->active_node_per_stage[0] == code_size) { + pp->state->flag_finished = true; + } +} + +static void rate_r_node(void* p, uint8_t* message) +{ + struct pSSC_c* pp = p; + uint8_t* estbits0 = NULL; + uint8_t* estbits1 = NULL; + uint16_t bit_pos = 0; + int16_t offset0 = 0; + int16_t offset1 = 0; + uint8_t stage = pp->state->stage; + uint16_t stage_size = pp->param->code_stage_size[stage]; + uint16_t stage_half_size = pp->param->code_stage_size[stage - 1]; + + pp->f(pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + + // move to the child node to the left (up) of the tree. + simplified_node(pp, message); + if (pp->state->flag_finished == true) { // (just in case). However for 5G frozen sets, the code can never end here. + return; + } + + bit_pos = pp->state->active_node_per_stage[0]; + offset0 = bit_pos - stage_half_size; + estbits0 = pp->est_bit + offset0; + + pp->g(estbits0, pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + // move to the child node to the right (down) of the tree. + simplified_node(pp, message); + if (pp->state->flag_finished == true) { + return; + } + + bit_pos = pp->state->active_node_per_stage[0]; + + offset0 = bit_pos - stage_size; + offset1 = offset0 + stage_half_size; + estbits0 = pp->est_bit + offset0; + estbits1 = pp->est_bit + offset1; + + pp->xor (estbits0, estbits1, estbits0, stage_half_size); + + // update this node index + pp->state->active_node_per_stage[stage] = pp->state->active_node_per_stage[stage] + 1; // return to the father node +} diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_c.h b/lib/src/phy/fec/polar/polar_decoder_ssc_c.h new file mode 100644 index 000000000..804895543 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_c.h @@ -0,0 +1,77 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_c.h + * \brief Declaration of the SSC polar decoder inner functions working with + * 8-bit integer-valued LLRs. + * \author Jesus Gomez (CTTC) \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_DECODER_SSC_C_H +#define POLAR_DECODER_SSC_C_H +#include "polar_decoder_ssc_all.h" + +/*! + * Creates an SSC polar decoder structure of type pSSC, and allocates memory for the decoding buffers. + * + * This function is exactly the same as the one for the floating-point version. + * Note, however, that it works with a different pSSC structure (different function pointers + * pSSC::f, pSSC::f, pSSC::g, pSSC::xor and pSSC::hard_bit). + * + * \param[in] frozen_set The position of the frozen bits in the codeword. + * \param[in] frozen_set_size Number of frozen bits. + * \param[in] code_size_log \f$log_2\f$ of the number of bits in the codeword. + * \return A pointer to a pSSC structure if the function executes correctly, NULL otherwise. + */ +void* create_polar_decoder_ssc_c(uint16_t* frozen_set, uint8_t code_size_log, uint16_t frozen_set_size); + +/*! + * The (8-bit) polar decoder SSC "destructor": it frees all the resources allocated to the decoder. + * + * \param[in, out] p A pointer to the dismantled decoder. + */ +void delete_polar_decoder_ssc_c(void* p); + +/*! + * Initializes an (8-bit) SSC polar decoder before processing a new codeword. + * + * \param[in, out] p A void pointer used to declare a pSSC structure. + * \param[in] llr LLRs for the new codeword. + * \param[out] data_decoded Pointer to the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_polar_decoder_ssc_c(void* p, const int8_t* llr, uint8_t* data_decoded); + +/*! + * Decodes a data message from a 8 bit resolution codeword with the specified decoder. Note that + * a pointer to the codeword LLRs is included in \a p and initialized by init_polar_decoder_ssc_c(). + * + * \param[in] p A pointer to the desired decoder. + * \param[out] data The decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int polar_decoder_ssc_c(void* p, uint8_t* data); + +#endif // POLAR_DECODER_SSC_C_H diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.c b/lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.c new file mode 100644 index 000000000..7f6bba2cc --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.c @@ -0,0 +1,360 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_c_avx2.c + * \brief Definition of the SSC polar decoder inner functions working with + * 8-bit integer-valued LLRs and AVX2 instructions. + * + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include "polar_decoder_ssc_c_avx2.h" +#include "../utils_avx2.h" +#include "polar_decoder_vector_avx2.h" +#include "srslte/phy/fec/polar/polar_encoder.h" + +#ifdef LV_HAVE_AVX2 + +/*! + * \brief Describes the state of a AVX2 SSC polar decoder + */ +struct StateAVX2 { + uint8_t stage; /*!< \brief Current stage [0 - code_size_log] of the decoding algorithm. */ + uint16_t bit_pos; /*!< \brief position of the next bit to be estimated in est_bit buffer. */ +}; + +/*! + * \brief Describes an SSC polar decoder (8-bit version). + */ +struct pSSC_c_avx2 { + int8_t** llr0; /*!< \brief Pointers to the upper half of LLRs values at all stages. */ + int8_t** llr1; /*!< \brief Pointers to the lower half of LLRs values at all stages. */ + uint8_t* est_bit; /*!< \brief Pointers to the temporary estimated bits. */ + struct Params* param; /*!< \brief Pointer to a Params structure. */ + struct StateAVX2* state; /*!< \brief Pointer to a State. */ + srslte_polar_encoder_t* enc; /*!< \brief Pointer to a srslte_polar_encoder_t. */ + void (*f)(const int8_t* x, const int8_t* y, int8_t* z, const uint16_t len); /*!< \brief Pointer to the function-f. */ + void (*g)(const uint8_t* b, + const int8_t* x, + const int8_t* y, + int8_t* z, + const uint16_t len); /*!< \brief Pointer to the function-g. */ + void (*xor)(const uint8_t* x, + const uint8_t* y, + uint8_t* z, + const uint16_t len); /*!< \brief Pointer to the function-g. */ + void (*hard_bit)(const int8_t* x, uint8_t* z, const uint16_t len); /*!< \brief Pointer to the hard-bit function. */ +}; + +/*! + * max function + */ +static int max(int a, int b) +{ + return a > b ? a : b; +} + +/*! + * Switches between the different types of node (::RATE_1, ::RATE_0, ::RATE_R) for the SSC algorithm. + * Nodes in the decoding tree at stage \f$ s\f$ get the \f$2^s\f$ LLRs from the parent node and + * return the associated \f$2^s\f$ estimated bits. + * + * All decoded bits below a ::RATE_0 node are 0. The function updates the \a p->state->active_node_per_stage + * pointer to point to the next active node. It is assumed that message bits are initialized to 0. + * + * ::RATE_1 nodes at stage \f$ s \f$ return the associated \f$2^s\f$ estimated bits by + * making a hard decision on them. + * ::RATE_1 nodes also update message bits vector. + * + * ::RATE_R nodes at stage \f$ s \f$ return the associated \f$2^s\f$ decoded bits by calling + * the child nodes to the right and left of the decoding tree and then polar encoding (xor) their output. + * At stage \f$ s \f$, this function runs function srslte_vec_function_f_fff() and srslte_vec_function_g_bfff() + * with vector size \f$2^{ s - 1}\f$ and updates \a llr0 and \a llr1 memory space for stage \f$(s - 1)\f$. + * This function also runs srslte_vec_xor_bbb() with vector size \f$2^{s-1}\f$ and + * updates \a estbits memory space for stage \f$(s + 1)\f$. + * + */ +static void simplified_node(struct pSSC_c_avx2* p); + +void delete_polar_decoder_ssc_c_avx2(void* p) +{ + struct pSSC_c_avx2* pp = p; + + if (p != NULL) { + free(pp->llr0[0]); // remove LLR buffer. + free(pp->llr0); + free(pp->llr1); + free(pp->param->node_type[0]); + free(pp->param->node_type); + free(pp->est_bit); // remove estbits buffer. + free(pp->param->code_stage_size); + free(pp->param); + free(pp->state); + srslte_polar_encoder_free(pp->enc); + free(pp->enc); + free(pp); + } +} + +void* create_polar_decoder_ssc_c_avx2(uint16_t* frozen_set, const uint8_t code_size_log, const uint16_t frozen_set_size) +{ + struct pSSC_c_avx2* pp = NULL; // pointer to the polar decoder instance + // allocate memory to the polar decoder instance + if ((pp = malloc(sizeof(struct pSSC_c_avx2))) == NULL) { + return NULL; + } + + // set functions + pp->f = srslte_vec_function_f_ccc_avx2; + pp->g = srslte_vec_function_g_bccc_avx2; + pp->xor = srslte_vec_xor_bbb_avx2; + pp->hard_bit = srslte_vec_hard_bit_cc_avx2; + + // encoder of maximum size + if ((pp->enc = malloc(sizeof(srslte_polar_encoder_t))) == NULL) { + free(pp); + return NULL; + } + + srslte_polar_encoder_init(pp->enc, SRSLTE_POLAR_ENCODER_AVX2, code_size_log); + + // algorithm constants/parameters + if ((pp->param = malloc(sizeof(struct Params))) == NULL) { + free(pp->enc); + free(pp); + return NULL; + } + + if ((pp->param->code_stage_size = malloc((code_size_log + 1) * sizeof(uint16_t))) == NULL) { + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + pp->param->code_stage_size[0] = 1; + for (uint8_t i = 1; i < code_size_log + 1; i++) { + pp->param->code_stage_size[i] = 2 * pp->param->code_stage_size[i - 1]; + } + + pp->param->code_size_log = code_size_log; + + // state -- initialized in polar_decoder_ssc_init + if ((pp->state = malloc(sizeof(struct StateAVX2))) == NULL) { + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // allocates memory for estimated bits per stage + // allocates extra SRSLTE_AVX2_B_SIZE bytes to allow store the output of 256-bit instructions + int est_bit_size = pp->param->code_stage_size[code_size_log] + SRSLTE_AVX2_B_SIZE; + + pp->est_bit = aligned_alloc(SRSLTE_AVX2_B_SIZE, est_bit_size); // every 32 chars are aligned + + // allocate memory for LLR pointers. + pp->llr0 = malloc((code_size_log + 1) * sizeof(int8_t*)); + pp->llr1 = malloc((code_size_log + 1) * sizeof(int8_t*)); + + // LLR MEMORY NOT ALIGNED FOR LLR_BUFFERS_SIZE < SRSLTE_SIMB_LLR_ALIGNED + + // We do not align the memory at lower stages, as if done, after each function f and function g + // operation, the second half of the output vector needs to be moved to the next + // aligned position. This extra operation may incur more overhead that the gain of aligned memory. + + uint8_t n_llr_all_stages = code_size_log + 1; // there are 2^(n_llr_all_stages) - 1 LLR values summing up all stages. + uint16_t llr_all_stages = 1U << n_llr_all_stages; + + // Reserve at least SRSLTE_AVX2_B_SIZE bytes for each stage, so that there is space for the output + // of the 32-bytes mm256 vectorized functions. + // llr1 (second half) of lower stages is not aligned. + + uint16_t llr_all_stages_avx2 = llr_all_stages; + if (code_size_log >= 5) { + llr_all_stages_avx2 += SRSLTE_AVX2_B_SIZE * 5; + } else { + llr_all_stages_avx2 += (code_size_log + 1) * SRSLTE_AVX2_B_SIZE; + } + + // add extra SRSLTE_AVX2_B_SIZE llrs positions for hard_bit functions on the last bits have + // access to allocated memory + llr_all_stages_avx2 += SRSLTE_AVX2_B_SIZE; + + pp->llr0[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages_avx2 * sizeof(int8_t)); // 32*8=256 + + // allocate memory to the polar decoder instance + if (pp->llr0[0] == NULL) { + free(pp->est_bit); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + pp->llr1[0] = pp->llr0[0] + 1; + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->llr0[s] = pp->llr0[s - 1] + max(SRSLTE_AVX2_B_SIZE, pp->param->code_stage_size[s - 1]); + pp->llr1[s] = pp->llr0[s] + pp->param->code_stage_size[s - 1]; + } + + // allocate memory for node type pointers, one per stage. + pp->param->frozen_set_size = frozen_set_size; + pp->param->node_type = malloc((code_size_log + 1) * sizeof(uint8_t*)); + + // allocate memory to node_type_ssc. Stage s has 2^(N-s) nodes s=0,...,N. + // Thus, same size as LLRs all stages. + pp->param->node_type[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages * sizeof(uint8_t)); // 32*8=256 + + if (pp->param->node_type[0] == NULL) { + free(pp->param->node_type); + free(pp->est_bit); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // initialize all node type pointers. (stage 0 is the first, opposite to LLRs) + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->param->node_type[s] = pp->param->node_type[s - 1] + pp->param->code_stage_size[code_size_log - s + 1]; + } + + init_node_type(frozen_set, pp->param); + + return pp; +} + +int init_polar_decoder_ssc_c_avx2(void* p, const int8_t* input_llr, uint8_t* data_decoded) +{ + struct pSSC_c_avx2* pp = p; + + if (p == NULL) { + return -1; + } + + uint8_t code_size_log = pp->param->code_size_log; + int16_t code_size = pp->param->code_stage_size[code_size_log]; + int16_t code_half_size = pp->param->code_stage_size[code_size_log - 1]; + + // Initializes the data_decoded_vector to all zeros + memset(data_decoded, 0, code_size); + + // Initialize est_bit vector to all zeros + int est_bit_size = pp->param->code_stage_size[code_size_log] + SRSLTE_AVX2_B_SIZE; + memset(pp->est_bit, 0, est_bit_size); + + // Initializes LLR buffer for the last stage/level with the input LLRs values + memcpy(&pp->llr0[code_size_log][0], &input_llr[0], code_half_size * sizeof(int8_t)); + memcpy(&pp->llr1[code_size_log][0], &input_llr[code_half_size], code_half_size * sizeof(int8_t)); + + // Initializes the state of the decoding tree + pp->state->stage = code_size_log + 1; // start from the only one node at the last stage + 1. + pp->state->bit_pos = 0; + + return 0; +} + +int polar_decoder_ssc_c_avx2(void* p, uint8_t* data_decoded) +{ + + if (p == NULL) { + return -1; + } + + struct pSSC_c_avx2* pp = p; + + simplified_node(pp); + + // est_bit contains the coded bits. To obtain the message, we call the encoder + srslte_polar_encoder_encode(pp->enc, pp->est_bit, data_decoded, pp->param->code_size_log); + + // transform {0,-128} into {0, 1} + srslte_vec_sign_to_bit_c_avx2(data_decoded, 1U << pp->param->code_size_log); + return 0; +} + +static void simplified_node(struct pSSC_c_avx2* p) +{ + + struct pSSC_c_avx2* pp = p; + + pp->state->stage--; // to child node. + + uint8_t stage = pp->state->stage; + uint16_t bit_pos = pp->state->bit_pos >> stage; + uint8_t* estbits0 = NULL; + uint8_t* estbits1 = NULL; + + uint16_t stage_size = pp->param->code_stage_size[stage]; + uint16_t stage_half_size = pp->param->code_stage_size[stage - 1]; + + switch (pp->param->node_type[stage][bit_pos]) { + + case RATE_1: + pp->hard_bit(pp->llr0[stage], pp->est_bit + pp->state->bit_pos, stage_size); + + pp->state->bit_pos = pp->state->bit_pos + stage_size; + break; + + case RATE_0: + pp->state->bit_pos = pp->state->bit_pos + stage_size; + break; + + case RATE_R: + + pp->f(pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + + // move to the child node to the left (up) of the tree. + simplified_node(pp); + + estbits0 = pp->est_bit + pp->state->bit_pos - stage_half_size; + pp->g(estbits0, pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + + // move to the child node to the right (down) of the tree. + simplified_node(pp); + + estbits0 = pp->est_bit + pp->state->bit_pos - stage_size; + estbits1 = pp->est_bit + pp->state->bit_pos - stage_size + stage_half_size; + pp->xor (estbits0, estbits1, estbits0, stage_half_size); + + break; + + default: + printf("ERROR: wrong node type %d\n", pp->param->node_type[stage][bit_pos]); + exit(-1); + break; + } + + pp->state->stage++; // to parent node. +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.h b/lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.h new file mode 100644 index 000000000..c9620e93f --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_c_avx2.h @@ -0,0 +1,74 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_c_avx2.h + * \brief Declaration of the SSC polar decoder inner functions working with + * 8-bit integer-valued LLRs and AVX2 instructions + * \author Jesus Gomez (CTTC) \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_DECODER_SSC_C_AVX2_H +#define POLAR_DECODER_SSC_C_AVX2_H + +#include "polar_decoder_ssc_all.h" + +/*! + * Creates an SSC polar decoder structure of type pSSC_c_avx2, and allocates memory for the decoding buffers. + * + * \param[in] frozen_set The position of the frozen bits in the codeword. + * \param[in] frozen_set_size Number of frozen bits. + * \param[in] code_size_log \f$log_2\f$ of the number of bits in the codeword. + * \return A pointer to a pSSC_c_avx2 structure if the function executes correctly, NULL otherwise. + */ +void* create_polar_decoder_ssc_c_avx2(uint16_t* frozen_set, uint8_t code_size_log, uint16_t frozen_set_size); + +/*! + * The (8-bit, avx2) polar decoder SSC "destructor": it frees all the resources allocated to the decoder. + * + * \param[in, out] p A pointer to the dismantled decoder. + */ +void delete_polar_decoder_ssc_c_avx2(void* p); + +/*! + * Initializes an (8-bit, avx2) SSC polar decoder before processing a new codeword. + * + * \param[in, out] p A void pointer used to declare a pSSC_c_avx2 structure. + * \param[in] llr LLRs for the new codeword. + * \param[out] data_decoded Pointer to the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_polar_decoder_ssc_c_avx2(void* p, const int8_t* llr, uint8_t* data_decoded); + +/*! + * Decodes a data message from a 8 bit resolution codeword with the specified decoder. Note that + * a pointer to the codeword LLRs is included in \a p and initialized by init_polar_decoder_ssc_c_avx2(). + * + * \param[in] p A pointer to the desired decoder. + * \param[out] data The decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int polar_decoder_ssc_c_avx2(void* p, uint8_t* data); + +#endif // POLAR_DECODER_SSC_C_AVX2_H diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_f.c b/lib/src/phy/fec/polar/polar_decoder_ssc_f.c new file mode 100644 index 000000000..adc638149 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_f.c @@ -0,0 +1,416 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_f.c + * \brief Definition of the SSC polar decoder inner functions working with + * float-valued LLRs. + * + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include "polar_decoder_ssc_f.h" +#include "../utils_avx2.h" +#include "polar_decoder_vector.h" +#include "srslte/phy/fec/polar/polar_encoder.h" +#include "srslte/phy/utils/vector.h" + +/*! + * \brief Describes an SSC polar decoder (float version). + */ +struct pSSC_f { + float** llr0; /*!< \brief Pointers to the upper half of LLRs values at all stages. */ + float** llr1; /*!< \brief Pointers to the lower half of LLRs values at all stages. */ + uint8_t* est_bit; /*!< \brief Pointers to the temporary estimated bits. */ + struct Params* param; /*!< \brief Pointer to a Params structure. */ + struct State* state; /*!< \brief Pointer to a State. */ + srslte_polar_encoder_t* enc; /*!< \brief Pointer to a srslte_polar_encoder_t. */ + void (*f)(const float* x, const float* y, float* z, const uint16_t len); /*!< \brief Pointer to the function-f. */ + void (*g)(const uint8_t* b, + const float* x, + const float* y, + float* z, + const uint16_t len); /*!< \brief Pointer to the function-g. */ + void (*xor)(const uint8_t* x, + const uint8_t* y, + uint8_t* z, + const uint32_t len); /*!< \brief Pointer to the function-g. */ + void (*hard_bit)(const float* x, uint8_t* z, const uint16_t len); /*!< \brief Pointer to the hard-bit function. */ +}; + +/*! + * Switches between the different types of node (::RATE_1, ::RATE_0, ::RATE_R) for the SSC algorithm. + * Nodes in the decoding tree at stage \f$ s\f$ get the \f$2^s\f$ LLRs from the parent node and + * return the associated \f$2^s\f$ estimated bits. + * + */ +static void simplified_node(void* p, uint8_t* message); + +/*! + * All decoded bits below a ::RATE_0 node are 0. The function updates the \a p->state->active_node_per_stage + * pointer to point to the next active node. It is assumed that message bits are initialized to 0. + * + */ +static void rate_0_node(void* p); + +/*! + * ::RATE_1 nodes at stage \f$ s \f$ return the associated \f$2^s\f$ estimated bits by + * making a hard decision on them. + * ::RATE_1 nodes also update message bits vector. + * + */ +static void rate_1_node(void* p, uint8_t* message); + +/*! + * ::RATE_R nodes at stage \f$ s \f$ return the associated \f$2^s\f$ decoded bit by calling + * the child nodes to the right and left of the decoding tree and then polar encoding (xor) their output. + * At stage \f$ s \f$, this function runs function srslte_vec_function_f_fff() and srslte_vec_function_g_bfff() + * with vector size \f$2^{ s - 1}\f$ and updates \a llr0 and \a llr1 memory space for stage \f$(s - 1)\f$. + * This function also runs srslte_vec_xor_bbb() with vector size \f$2^{s-1}\f$ and + * updates \a estbits memory space for stage \f$(s + 1)\f$. + * + */ +static void rate_r_node(void* p, uint8_t* message); + +int init_polar_decoder_ssc_f(void* p, const float* input_llr, uint8_t* data_decoded) +{ + struct pSSC_f* pp = p; + + if (p == NULL) { + return -1; + } + + uint8_t code_size_log = pp->param->code_size_log; + int16_t code_size = pp->param->code_stage_size[code_size_log]; + int16_t code_half_size = pp->param->code_stage_size[code_size_log - 1]; + + // Initializes the data_decoded_vector to all zeros + memset(data_decoded, 0, code_size); + + // Initialize est_bit vector to all zeros + memset(pp->est_bit, 0, code_size); + + // Initializes LLR buffer for the last stage/level with the input LLRs values + for (uint16_t i = 0; i < code_half_size; i++) { + pp->llr0[code_size_log][i] = input_llr[i]; + pp->llr1[code_size_log][i] = input_llr[i + code_half_size]; + } + + // Initializes the state of the decoding tree + pp->state->stage = code_size_log + 1; // start from the only one node at the last stage + 1. + for (uint16_t i = 0; i < code_size_log + 1; i++) { + pp->state->active_node_per_stage[i] = 0; + } + pp->state->flag_finished = false; + + return 0; +} + +int polar_decoder_ssc_f(void* p, uint8_t* data_decoded) +{ + if (p == NULL) { + return -1; + } + + simplified_node(p, data_decoded); + return 0; +} + +void delete_polar_decoder_ssc_f(void* p) +{ + struct pSSC_f* pp = p; + + if (p != NULL) { + free(pp->llr0[0]); // remove LLR buffer. + free(pp->llr0); + free(pp->llr1); + free(pp->param->node_type[0]); + free(pp->param->node_type); + free(pp->est_bit); // remove estbits buffer. + free(pp->param->code_stage_size); + free(pp->param); + free(pp->state->active_node_per_stage); + free(pp->state); + srslte_polar_encoder_free(pp->enc); + free(pp->enc); + free(pp); + } +} + +void* create_polar_decoder_ssc_f(uint16_t* frozen_set, const uint8_t code_size_log, const uint16_t frozen_set_size) +{ + struct pSSC_f* pp = NULL; // pointer to the polar decoder instance + + // allocate memory to the polar decoder instance + if ((pp = malloc(sizeof(struct pSSC_f))) == NULL) { + return NULL; + } + + // set functions + pp->f = srslte_vec_function_f_fff; + pp->g = srslte_vec_function_g_bfff; + pp->xor = srslte_vec_xor_bbb; + pp->hard_bit = srslte_vec_hard_bit_fc; + + // encoder of maximum size + if ((pp->enc = malloc(sizeof(srslte_polar_encoder_t))) == NULL) { + free(pp); + return NULL; + } + srslte_polar_encoder_init(pp->enc, SRSLTE_POLAR_ENCODER_PIPELINED, code_size_log); + + // algorithm constants/parameters + if ((pp->param = malloc(sizeof(struct Params))) == NULL) { + free(pp->enc); + free(pp); + return NULL; + } + + if ((pp->param->code_stage_size = malloc((code_size_log + 1) * sizeof(uint16_t))) == NULL) { + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + pp->param->code_stage_size[0] = 1; + for (uint8_t i = 1; i < code_size_log + 1; i++) { + pp->param->code_stage_size[i] = 2 * pp->param->code_stage_size[i - 1]; + } + + pp->param->code_size_log = code_size_log; + + // state -- initialized in polar_decoder_ssc_init + if ((pp->state = malloc(sizeof(struct State))) == NULL) { + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + if ((pp->state->active_node_per_stage = malloc((code_size_log + 1) * sizeof(uint16_t))) == NULL) { + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // allocates memory for estimated bits per stage + uint16_t est_bits_size = pp->param->code_stage_size[code_size_log]; + + pp->est_bit = aligned_alloc(SRSLTE_AVX2_B_SIZE, est_bits_size); // every 32 chars are aligned + + // allocate memory for LLR pointers. + pp->llr0 = malloc((code_size_log + 1) * sizeof(float*)); + pp->llr1 = malloc((code_size_log + 1) * sizeof(float*)); + + // There are LLR buffers for n = 0 to n = code_size_log. Each with size 2^n. Thus, + // the total memory needed is 2^(n+1)-1. + // Only the stages starting at multiples of SRSLTE_AVX2_B_SIZE are aligned. + + // Let n_simd_llr be the exponent of the SIMD size in nummer of LLRs. + // i.e. in a SIMD instruction we can load 2^(n_simd_llr) LLR values + // then the memory for stages s >= n_simd_llr - 1 is aligned. + // but only the operations at stages s > n_simd_llr have all the inputs aligned. + uint8_t n_llr_all_stages = code_size_log + 1; // there are 2^(n_llr_all_stages) - 1 LLR values summing up all stages. + uint16_t llr_all_stages = 1U << n_llr_all_stages; + + pp->llr0[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages * sizeof(float)); // 32*8=256 + + // allocate memory to the polar decoder instance + if (pp->llr0[0] == NULL) { + free(pp->llr1); + free(pp->llr0); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // initialize all LLR pointers + pp->llr1[0] = pp->llr0[0] + 1; + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->llr0[s] = pp->llr0[0] + pp->param->code_stage_size[s]; + pp->llr1[s] = pp->llr0[0] + pp->param->code_stage_size[s] + pp->param->code_stage_size[s - 1]; + } + + // allocate memory for node type pointers, one per stage. + pp->param->frozen_set_size = frozen_set_size; + pp->param->node_type = malloc((code_size_log + 1) * sizeof(uint8_t*)); + + // allocate memory to node_type_ssc. Stage s has 2^(N-s) nodes s=0,...,N. + // Thus, same size as LLRs all stages. + pp->param->node_type[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages * sizeof(uint8_t)); // 32*8=256 + + if (pp->param->node_type[0] == NULL) { + free(pp->llr0[0]); + free(pp->llr1); + free(pp->llr0); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // initialize all node type pointers. (stage 0 is the first, opposite to LLRs) + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->param->node_type[s] = pp->param->node_type[s - 1] + pp->param->code_stage_size[code_size_log - s + 1]; + } + + init_node_type(frozen_set, pp->param); + + return pp; +} + +static void simplified_node(void* p, uint8_t* message) +{ + + struct pSSC_f* pp = p; + + pp->state->stage--; // to child node. + + uint8_t stage = pp->state->stage; + uint16_t bit_pos = pp->state->active_node_per_stage[stage]; + + switch (pp->param->node_type[stage][bit_pos]) { + case RATE_1: + rate_1_node(pp, message); + break; + case RATE_0: + rate_0_node(pp); + break; + case RATE_R: + rate_r_node(pp, message); + break; + default: + printf("ERROR: wrong node type %d\n", pp->param->node_type[stage][bit_pos]); + exit(-1); + break; + } + + pp->state->stage++; // to parent node. +} + +static void rate_0_node(void* p) +{ + struct pSSC_f* pp = p; + + uint8_t code_size_log = pp->param->code_size_log; // code_size_log. + int16_t code_size = pp->param->code_stage_size[code_size_log]; + uint16_t bit_pos = pp->state->active_node_per_stage[0]; + uint8_t stage = pp->state->stage; + + if (bit_pos == code_size - 1) { + pp->state->flag_finished = true; + } else { + + // update active node at all the stages + for (uint8_t i = 0; i <= stage; i++) { + pp->state->active_node_per_stage[i] = pp->state->active_node_per_stage[i] + pp->param->code_stage_size[stage - i]; + } + } +} + +static void rate_1_node(void* p, uint8_t* message) +{ + struct pSSC_f* pp = p; + uint8_t stage = pp->state->stage; // for SSC decoder rate 1 nodes are always at stage 0. + + uint16_t bit_pos = pp->state->active_node_per_stage[0]; + uint16_t code_size = pp->param->code_stage_size[pp->param->code_size_log]; + uint16_t code_stage_size = pp->param->code_stage_size[stage]; + + uint8_t* codeword = pp->est_bit + bit_pos; + float* LLR = pp->llr0[stage]; + + pp->hard_bit(LLR, codeword, code_stage_size); + + if (stage != 0) { + srslte_polar_encoder_encode(pp->enc, codeword, message + bit_pos, stage); + } else { + message[bit_pos] = codeword[0]; + } + + // update active node at all the stages + for (uint8_t i = 0; i <= stage; i++) { + pp->state->active_node_per_stage[i] = pp->state->active_node_per_stage[i] + pp->param->code_stage_size[stage - i]; + } + + // check if this is the last bit + if (pp->state->active_node_per_stage[0] == code_size) { + pp->state->flag_finished = true; + } +} + +static void rate_r_node(void* p, uint8_t* message) +{ + struct pSSC_f* pp = p; + uint8_t* estbits0 = NULL; + uint8_t* estbits1 = NULL; + uint16_t bit_pos = 0; + int16_t offset0 = 0; + int16_t offset1 = 0; + uint8_t stage = pp->state->stage; + uint16_t stage_size = pp->param->code_stage_size[stage]; + uint16_t stage_half_size = pp->param->code_stage_size[stage - 1]; + + pp->f(pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + + // move to the child node to the left (up) of the tree. + simplified_node(pp, message); + if (pp->state->flag_finished == true) { // (just in case). However for 5G frozen sets, the code can never end here. + return; + } + + bit_pos = pp->state->active_node_per_stage[0]; + offset0 = bit_pos - stage_half_size; + estbits0 = pp->est_bit + offset0; + + pp->g(estbits0, pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + // move to the child node to the right (down) of the tree. + simplified_node(pp, message); + if (pp->state->flag_finished == true) { + return; + } + + // compute_xor(pp); + bit_pos = pp->state->active_node_per_stage[0]; + + offset0 = bit_pos - stage_size; + offset1 = offset0 + stage_half_size; + estbits0 = pp->est_bit + offset0; + estbits1 = pp->est_bit + offset1; + + pp->xor (estbits0, estbits1, estbits0, stage_half_size); + + // update this node index + pp->state->active_node_per_stage[stage] = pp->state->active_node_per_stage[stage] + 1; // return to the father node +} diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_f.h b/lib/src/phy/fec/polar/polar_decoder_ssc_f.h new file mode 100644 index 000000000..011a9980c --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_f.h @@ -0,0 +1,71 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_f.h + * \brief Declaration of the SSC polar decoder inner functions working with + * float-valued LLRs. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_DECODER_SSC_F_H +#define POLAR_DECODER_SSC_F_H + +#include "polar_decoder_ssc_all.h" + +/*! + * Creates an SSC polar decoder structure of type pSSC, and allocates memory for the decoding buffers. + * \param[in] frozen_set The position of the frozen bits in the codeword. + * \param[in] frozen_set_size Number of frozen bits. + * \param[in] code_size_log \f$log_2\f$ of the number of bits in the codeword. + * \return A pointer to a pSSC structure if the function executes correctly, NULL otherwise. + */ +void* create_polar_decoder_ssc_f(uint16_t* frozen_set, uint8_t code_size_log, uint16_t frozen_set_size); + +/*! + * The polar decoder SSC "destructor": it frees all the resources allocated to the decoder. + * \param[in, out] p A pointer to the dismantled decoder. + */ +void delete_polar_decoder_ssc_f(void* p); + +/*! + * Initializes an SSC polar decoder before processing a new codeword. + * \param[in, out] p A void pointer used to declare a pSSC structure. + * \param[in] llr LLRs for the new codeword. + * \param[out] data_decoded Pointer to the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_polar_decoder_ssc_f(void* p, const float* llr, uint8_t* data_decoded); + +/*! + * Decodes a data message from a codeword with the specified decoder. Note that + * a pointer to the codeword LLRs is included in \a p and initialized by init_polar_decoder_ssc_f(). + * \param[in] p A pointer to the desired decoder. + * \param[out] data The decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int polar_decoder_ssc_f(void* p, uint8_t* data); + +#endif // POLAR_DECODER_SSC_F_H diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_s.c b/lib/src/phy/fec/polar/polar_decoder_ssc_s.c new file mode 100644 index 000000000..68d1fc8cf --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_s.c @@ -0,0 +1,430 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_s.c + * \brief Definition of the SSC polar decoder inner functions working with + * 16-bit integer-valued LLRs. + * + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +// IMPORTANT: polar_decoder_SSC_s.c is exactly the polar_decoder_SSC_f.c except for: +// (1) #include "polar_decoder_ssc_s.h" +// (2) the naming of the external function, which finish with _s instead of _f +// (3) the initialization of them of the set functions in create_polar_decoder_ssc_s +// pp->f = srslte_vec_function_f_sss; +// pp->g = srslte_vec_function_g_bsss; +// pp->xor = srslte_vec_xor_bbb; +// pp->hard_bit = srslte_vec_hard_bit_sc; + +#include "polar_decoder_ssc_s.h" +#include "../utils_avx2.h" +#include "polar_decoder_vector.h" +#include "srslte/phy/fec/polar/polar_encoder.h" +#include "srslte/phy/utils/vector.h" + +/*! + * \brief Type indicator for printing LLRs if debugging + */ +#define PRIllr "d" // for printing llrs if debugging + +/*! + * \brief Describes an SSC polar decoder (16-bit version). + */ +struct pSSC_s { + int16_t** llr0; /*!< \brief Pointers to the upper half of LLRs values at all stages. */ + int16_t** llr1; /*!< \brief Pointers to the lower half of LLRs values at all stages. */ + uint8_t* est_bit; /*!< \brief Pointers to the temporary estimated bits. */ + struct Params* param; /*!< \brief Pointer to a Params structure. */ + struct State* state; /*!< \brief Pointer to a State. */ + srslte_polar_encoder_t* enc; /*!< \brief Pointer to a srslte_polar_encoder_t. */ + void (*f)(const int16_t* x, + const int16_t* y, + int16_t* z, + const uint16_t len); /*!< \brief Pointer to the function-f. */ + void (*g)(const uint8_t* b, + const int16_t* x, + const int16_t* y, + int16_t* z, + const uint16_t len); /*!< \brief Pointer to the function-g. */ + void (*xor)(const uint8_t* x, + const uint8_t* y, + uint8_t* z, + const uint32_t len); /*!< \brief Pointer to the function-g. */ + void (*hard_bit)(const int16_t* x, uint8_t* z, const uint16_t len); /*!< \brief Pointer to the hard-bit function. */ +}; + +/*! + * Switches between the different types of node (::RATE_1, ::RATE_0, ::RATE_R) for the SSC algorithm. + * Nodes in the decoding tree at stage \f$ s\f$ get the \f$2^s\f$ LLRs from the parent node and + * return the associated \f$2^s\f$ estimated bits. + * + */ +static void simplified_node(void* p, uint8_t* message); + +/*! + * All decoded bits below a ::RATE_0 node are 0. The function updates the \a p->state->active_node_per_stage + * pointer to point to the next active node. It is assumed that message bits are initialized to 0. + * + */ +static void rate_0_node(void* p); + +/*! + * ::RATE_1 nodes at stage \f$ s \f$ return the associated \f$2^s\f$ estimated bits by + * making a hard decision on them. + * ::RATE_1 nodes also update message bits vector. + * + */ +static void rate_1_node(void* p, uint8_t* message); + +/*! + * ::RATE_R nodes at stage \f$ s \f$ return the associated \f$2^s\f$ decoded bit by calling + * the child nodes to the right and left of the decoding tree and then polar encoding (xor) their output. + * At stage \f$ s \f$, this function runs function srslte_vec_function_f_fff() and srslte_vec_function_g_bfff() + * with vector size \f$2^{ s - 1}\f$ and updates \a llr0 and \a llr1 memory space for stage \f$(s - 1)\f$. + * This function also runs srslte_vec_xor_bbb() with vector size \f$2^{s-1}\f$ and + * updates \a estbits memory space for stage \f$(s + 1)\f$. + * + */ +static void rate_r_node(void* p, uint8_t* message); + +int init_polar_decoder_ssc_s(void* p, const int16_t* input_llr, uint8_t* data_decoded) +{ + struct pSSC_s* pp = p; + + if (p == NULL) { + return -1; + } + + uint8_t code_size_log = pp->param->code_size_log; + int16_t code_size = pp->param->code_stage_size[code_size_log]; + int16_t code_half_size = pp->param->code_stage_size[code_size_log - 1]; + + // Initializes the data_decoded_vector to all zeros + memset(data_decoded, 0, code_size); + + // Initialize est_bit vector to all zeros + memset(pp->est_bit, 0, code_size); + + // Initializes LLR buffer for the last stage/level with the input LLRs values + for (uint16_t i = 0; i < code_half_size; i++) { + pp->llr0[code_size_log][i] = input_llr[i]; + pp->llr1[code_size_log][i] = input_llr[i + code_half_size]; + } + + // Initializes the state of the decoding tree + pp->state->stage = code_size_log + 1; // start from the only one node at the last stage + 1. + for (uint16_t i = 0; i < code_size_log + 1; i++) { + pp->state->active_node_per_stage[i] = 0; + } + pp->state->flag_finished = false; + + return 0; +} + +int polar_decoder_ssc_s(void* p, uint8_t* data_decoded) +{ + + if (p == NULL) { + return -1; + } + + simplified_node(p, data_decoded); + return 0; +} + +void delete_polar_decoder_ssc_s(void* p) +{ + struct pSSC_s* pp = p; + + if (p != NULL) { + free(pp->llr0[0]); // remove LLR buffer. + free(pp->llr0); + free(pp->llr1); + free(pp->param->node_type[0]); + free(pp->param->node_type); + free(pp->est_bit); // remove estbits buffer. + free(pp->param->code_stage_size); + free(pp->param); + free(pp->state->active_node_per_stage); + free(pp->state); + srslte_polar_encoder_free(pp->enc); + free(pp->enc); + free(pp); + } +} + +void* create_polar_decoder_ssc_s(uint16_t* frozen_set, const uint8_t code_size_log, const uint16_t frozen_set_size) +{ + struct pSSC_s* pp = NULL; // pointer to the polar decoder instance + + // allocate memory to the polar decoder instance + if ((pp = malloc(sizeof(struct pSSC_s))) == NULL) { + return NULL; + } + + // set functions + pp->f = srslte_vec_function_f_sss; + pp->g = srslte_vec_function_g_bsss; + pp->xor = srslte_vec_xor_bbb; + pp->hard_bit = srslte_vec_hard_bit_sc; + + // encoder of maximum size + if ((pp->enc = malloc(sizeof(srslte_polar_encoder_t))) == NULL) { + free(pp); + return NULL; + } + srslte_polar_encoder_init(pp->enc, SRSLTE_POLAR_ENCODER_PIPELINED, code_size_log); + + // algorithm constants/parameters + if ((pp->param = malloc(sizeof(struct Params))) == NULL) { + free(pp->enc); + free(pp); + return NULL; + } + + if ((pp->param->code_stage_size = malloc((code_size_log + 1) * sizeof(uint16_t))) == NULL) { + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + pp->param->code_stage_size[0] = 1; + for (uint8_t i = 1; i < code_size_log + 1; i++) { + pp->param->code_stage_size[i] = 2 * pp->param->code_stage_size[i - 1]; + } + + pp->param->code_size_log = code_size_log; + + // state -- initialized in polar_decoder_ssc_init + if ((pp->state = malloc(sizeof(struct State))) == NULL) { + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + if ((pp->state->active_node_per_stage = malloc((code_size_log + 1) * sizeof(uint16_t))) == NULL) { + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // allocates memory for estimated bits per stage + uint16_t est_bits_size = pp->param->code_stage_size[code_size_log]; + + pp->est_bit = aligned_alloc(SRSLTE_AVX2_B_SIZE, est_bits_size); // every 32 chars are aligned + + // allocate memory for LLR pointers. + pp->llr0 = malloc((code_size_log + 1) * sizeof(int16_t*)); + pp->llr1 = malloc((code_size_log + 1) * sizeof(int16_t*)); + + // There are LLR buffers for n = 0 to n = code_size_log. Each with size 2^n. Thus, + // the total memory needed is 2^(n+1)-1. + // Only the stages starting at multiples of SRSLTE_AVX2_B_SIZE are aligned. + + // Let n_simd_llr be the exponent of the SIMD size in nummer of LLRs. + // i.e. in a SIMD instruction we can load 2^(n_simd_llr) LLR values + // then the memory for stages s >= n_simd_llr - 1 is aligned. + // but only the operations at stages s > n_simd_llr have all the inputs aligned. + uint8_t n_llr_all_stages = code_size_log + 1; // there are 2^(n_llr_all_stages) - 1 LLR values summing up all stages. + uint16_t llr_all_stages = 1U << n_llr_all_stages; + + pp->llr0[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages * sizeof(int16_t)); // 32*8=256 + // allocate memory to the polar decoder instance + if (pp->llr0[0] == NULL) { + free(pp->est_bit); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // initialize all LLR pointers + pp->llr1[0] = pp->llr0[0] + 1; + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->llr0[s] = pp->llr0[0] + pp->param->code_stage_size[s]; + pp->llr1[s] = pp->llr0[0] + pp->param->code_stage_size[s] + pp->param->code_stage_size[s - 1]; + } + + // allocate memory for node type pointers, one per stage. + pp->param->frozen_set_size = frozen_set_size; + pp->param->node_type = malloc((code_size_log + 1) * sizeof(uint8_t*)); + + // allocate memory to node_type_ssc. Stage s has 2^(N-s) nodes s=0,...,N. + // Thus, same size as LLRs all stages. + pp->param->node_type[0] = aligned_alloc(SRSLTE_AVX2_B_SIZE, llr_all_stages * sizeof(uint8_t)); // 32*8=256 + + if (pp->param->node_type[0] == NULL) { + free(pp->param->node_type); + free(pp->est_bit); + free(pp->state); + free(pp->param->code_stage_size); + free(pp->param); + free(pp->enc); + free(pp); + return NULL; + } + + // initialize all node type pointers. (stage 0 is the first, opposite to LLRs) + for (uint8_t s = 1; s < code_size_log + 1; s++) { + pp->param->node_type[s] = pp->param->node_type[s - 1] + pp->param->code_stage_size[code_size_log - s + 1]; + } + + init_node_type(frozen_set, pp->param); + + return pp; +} + +static void simplified_node(void* p, uint8_t* message) +{ + + struct pSSC_s* pp = p; + + pp->state->stage--; // to child node. + + uint8_t stage = pp->state->stage; + uint16_t bit_pos = pp->state->active_node_per_stage[stage]; + + switch (pp->param->node_type[stage][bit_pos]) { + case RATE_1: + rate_1_node(pp, message); + break; + case RATE_0: + rate_0_node(pp); + break; + case RATE_R: + rate_r_node(pp, message); + break; + default: + printf("ERROR: wrong node type %d\n", pp->param->node_type[stage][bit_pos]); + exit(-1); + break; + } + + pp->state->stage++; // to parent node. +} + +static void rate_0_node(void* p) +{ + struct pSSC_s* pp = p; + + uint8_t code_size_log = pp->param->code_size_log; // code_size_log. + int16_t code_size = pp->param->code_stage_size[code_size_log]; + uint16_t bit_pos = pp->state->active_node_per_stage[0]; + uint8_t stage = pp->state->stage; + + if (bit_pos == code_size - 1) { + pp->state->flag_finished = true; + } else { + + // update active node at all the stages + for (uint8_t i = 0; i <= stage; i++) { + pp->state->active_node_per_stage[i] = pp->state->active_node_per_stage[i] + pp->param->code_stage_size[stage - i]; + } + } +} + +static void rate_1_node(void* p, uint8_t* message) +{ + struct pSSC_s* pp = p; + uint8_t stage = pp->state->stage; // for SSC decoder rate 1 nodes are always at stage 0. + + uint16_t bit_pos = pp->state->active_node_per_stage[0]; + uint16_t code_size = pp->param->code_stage_size[pp->param->code_size_log]; + uint16_t code_stage_size = pp->param->code_stage_size[stage]; + + uint8_t* codeword = pp->est_bit + bit_pos; + int16_t* LLR = pp->llr0[stage]; + + pp->hard_bit(LLR, codeword, code_stage_size); + + if (stage != 0) { + srslte_polar_encoder_encode(pp->enc, codeword, message + bit_pos, stage); + } else { + message[bit_pos] = codeword[0]; + } + + // update active node at all the stages + for (uint8_t i = 0; i <= stage; i++) { + pp->state->active_node_per_stage[i] = pp->state->active_node_per_stage[i] + pp->param->code_stage_size[stage - i]; + } + + // check if this is the last bit + if (pp->state->active_node_per_stage[0] == code_size) { + pp->state->flag_finished = true; + } +} + +static void rate_r_node(void* p, uint8_t* message) +{ + struct pSSC_s* pp = p; + uint8_t* estbits0 = NULL; + uint8_t* estbits1 = NULL; + uint16_t bit_pos = 0; + int16_t offset0 = 0; + int16_t offset1 = 0; + uint8_t stage = pp->state->stage; + uint16_t stage_size = pp->param->code_stage_size[stage]; + uint16_t stage_half_size = pp->param->code_stage_size[stage - 1]; + + pp->f(pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + + // move to the child node to the left (up) of the tree. + simplified_node(pp, message); + if (pp->state->flag_finished == true) { // (just in case). However for 5G frozen sets, the code can never end here. + return; + } + + bit_pos = pp->state->active_node_per_stage[0]; + offset0 = bit_pos - stage_half_size; + estbits0 = pp->est_bit + offset0; + + pp->g(estbits0, pp->llr0[stage], pp->llr1[stage], pp->llr0[stage - 1], stage_half_size); + // move to the child node to the right (down) of the tree. + simplified_node(pp, message); + if (pp->state->flag_finished == true) { + return; + } + + bit_pos = pp->state->active_node_per_stage[0]; + + offset0 = bit_pos - stage_size; + offset1 = offset0 + stage_half_size; + estbits0 = pp->est_bit + offset0; + estbits1 = pp->est_bit + offset1; + + pp->xor (estbits0, estbits1, estbits0, stage_half_size); + + // update this node index + pp->state->active_node_per_stage[stage] = pp->state->active_node_per_stage[stage] + 1; // return to the father node +} diff --git a/lib/src/phy/fec/polar/polar_decoder_ssc_s.h b/lib/src/phy/fec/polar/polar_decoder_ssc_s.h new file mode 100644 index 000000000..3f6b62aa1 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_ssc_s.h @@ -0,0 +1,78 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_ssc_s.h + * \brief Definition of the SSC polar decoder inner functions working with + * 16-bit integer-valued LLRs. + * \author Jesus Gomez (CTTC) \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_DECODER_SSC_S_H +#define POLAR_DECODER_SSC_S_H + +#include "polar_decoder_ssc_all.h" + +/*! + * Creates an SSC polar decoder structure of type pSSC, and allocates memory for the decoding buffers. + * + * This function is exactly the same as the one for the floating-point version. + * Note, however, that it works with a different pSSC structure (different function pointers + * pSSC::f, pSSC::f, pSSC::g, pSSC::xor and pSSC::hard_bit). + * + * \param[in] frozen_set The position of the frozen bits in the codeword. + * \param[in] frozen_set_size Number of frozen bits. + * \param[in] code_size_log \f$log_2\f$ of the number of bits in the codeword. + * \return A pointer to a pSSC structure if the function executes correctly, NULL otherwise. + */ +void* create_polar_decoder_ssc_s(uint16_t* frozen_set, uint8_t code_size_log, uint16_t frozen_set_size); + +/*! + * The 16-bit polar decoder SSC "destructor": it frees all the resources allocated to the decoder. + * + * \param[in, out] p A pointer to the dismantled decoder. + */ +void delete_polar_decoder_ssc_s(void* p); + +/*! + * Initializes a 16-bit SSC polar decoder before processing a new codeword. + * + * \param[in, out] p A void pointer used to declare a pSSC structure. + * \param[in] llr LLRs for the new codeword. + * \param[out] data_decoded Pointer to the decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int init_polar_decoder_ssc_s(void* p, const int16_t* llr, uint8_t* data_decoded); + +/*! + * Decodes a data message from a 16-bit resolution codeword with the specified decoder. Note that + * a pointer to the codeword LLRs is included in \a p and initialized by init_polar_decoder_ssc_c(). + * + * \param[in] p A pointer to the desired decoder. + * \param[out] data The decoded message. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int polar_decoder_ssc_s(void* p, uint8_t* data); + +#endif // POLAR_DECODER_SSC_S_H diff --git a/lib/src/phy/fec/polar/polar_decoder_vector.c b/lib/src/phy/fec/polar/polar_decoder_vector.c new file mode 100644 index 000000000..202cf51ab --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_vector.c @@ -0,0 +1,216 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_vector.c + * \brief Definition of the polar decoder vectorizable functions. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include "math.h" +#include +#include +#include +#include //abs function + +/*! + * Sign of a real number. + */ +static int sgn(float v) +{ + return (v > 0) - (v < 0); +} + +/*! + * Returns 1 if \f$ (x < 0) \f$ and 0 if \f$ (x >= 0) \f$. + */ + +#define hard_bit \ + { \ + int s = 0; \ + for (uint16_t i = 0; i < len; ++i) { \ + s = sgn(x[i]); \ + if (s == 0) { \ + z[i] = 0; \ + } else { \ + z[i] = (uint8_t)(1 - s) / 2; \ + } \ + } \ + } + +void srslte_vec_function_f_fff(const float* x, const float* y, float* z, const uint16_t len) +{ + float L0 = NAN; + float L1 = NAN; + float absL0 = NAN; + float absL1 = NAN; + float sgnL0L1 = NAN; + + for (int i = 0; i < len; i++) { + L0 = x[i]; + L1 = y[i]; + absL0 = fabsf(L0); + absL1 = fabsf(L1); + sgnL0L1 = sgn(L0) * sgn(L1); + if (absL0 >= absL1) { + L0 = sgnL0L1 * absL1; + } else { + L0 = sgnL0L1 * absL0; + } + z[i] = L0; + } +} + +void srslte_vec_function_f_sss(const int16_t* x, const int16_t* y, int16_t* z, const uint16_t len) +{ + + int16_t L0 = 0; + int16_t L1 = 0; + int16_t absL0 = 0; + int16_t absL1 = 0; + int16_t sgnL0L1 = 0; + + for (int i = 0; i < len; i++) { + L0 = x[i]; + L1 = y[i]; + absL0 = abs(L0); + absL1 = abs(L1); + sgnL0L1 = sgn(L0) * sgn(L1); + if (absL0 >= absL1) { + L0 = sgnL0L1 * absL1; + } else { + L0 = sgnL0L1 * absL0; + } + z[i] = L0; + } +} + +void srslte_vec_function_f_ccc(const int8_t* x, const int8_t* y, int8_t* z, const uint16_t len) +{ + int8_t L0 = 0; + int8_t L1 = 0; + int8_t absL0 = 0; + int8_t absL1 = 0; + int8_t sgnL0L1 = 0; + + for (int i = 0; i < len; i++) { + L0 = x[i]; + L1 = y[i]; + absL0 = abs(L0); + absL1 = abs(L1); + sgnL0L1 = sgn(L0) * sgn(L1); + if (absL0 >= absL1) { + L0 = sgnL0L1 * absL1; + } else { + L0 = sgnL0L1 * absL0; + } + z[i] = L0; + } +} + +void srslte_vec_hard_bit_fc(const float* x, uint8_t* z, const uint16_t len) +{ + hard_bit; +} + +void srslte_vec_hard_bit_sc(const int16_t* x, uint8_t* z, const uint16_t len) +{ + hard_bit; +} + +void srslte_vec_hard_bit_cc(const int8_t* x, uint8_t* z, const uint16_t len) +{ + hard_bit; +} + +void srslte_vec_function_g_bfff(const uint8_t* b, const float* x, const float* y, float* z, const uint16_t len) +{ + + float L0 = NAN; + float L1 = NAN; + int8_t V = 0; + + for (int i = 0; i < len; i++) { + L0 = x[i]; + L1 = y[i]; + V = -2 * b[i] + 1; // (warning!) changes size from uint8_t to int8_t + L0 = L1 + V * L0; + z[i] = L0; + } +} + +void srslte_vec_function_g_bsss(const uint8_t* b, const int16_t* x, const int16_t* y, int16_t* z, const uint16_t len) +{ + + int16_t L0 = 0; + int16_t L1 = 0; + int8_t V = 0; + + long tmp = 0; + + for (int i = 0; i < len; i++) { + L0 = x[i]; + L1 = y[i]; + V = -2 * b[i] + 1; // (warning!) changes size from uint8_t to int8_t + + tmp = (long)L1 + V * L0; + if (tmp > 32767) { + tmp = 32767; + } + if (tmp < -32767) { + tmp = -32767; + } + L0 = (int16_t)tmp; + + z[i] = L0; + } +} + +void srslte_vec_function_g_bccc(const uint8_t* b, const int8_t* x, const int8_t* y, int8_t* z, const uint16_t len) +{ + + int8_t L0 = 0; + int8_t L1 = 0; + int8_t V = 0; + + long tmp = 0; + + for (int i = 0; i < len; i++) { + L0 = x[i]; + L1 = y[i]; + V = -2 * b[i] + 1; // (warning!) changes size from uint8_t to int8_t + + tmp = (long)L1 + V * L0; + if (tmp > 127) { + tmp = 127; + } + if (tmp < -127) { + tmp = -127; + } + L0 = (int8_t)tmp; + + z[i] = L0; + } +} diff --git a/lib/src/phy/fec/polar/polar_decoder_vector.h b/lib/src/phy/fec/polar/polar_decoder_vector.h new file mode 100644 index 000000000..56fbb995c --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_vector.h @@ -0,0 +1,119 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_vector.h + * \brief Declaration of the polar decoder vectorizable functions. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_VECTOR_FUNCTIONS_H +#define POLAR_VECTOR_FUNCTIONS_H +#include "srslte/config.h" +#include + +/*! + * Computes \f$ z = sign(x) \times sign(y) \times \min(abs(x), abs(y)) \f$ elementwise (box-plus operator). + * \param[in] x A pointer to a vector of floats. + * \param[in] y A pointer to a vector of floats. + * \param[out] z A pointer to a vector of floats. + * \param[in] len Length of vectors x, y and z. + */ +SRSLTE_API void srslte_vec_function_f_fff(const float* x, const float* y, float* z, uint16_t len); + +/*! + * Computes \f$ z = sign(x) \times sign(y) \times \min(abs(x), abs(y)) \f$ elementwise (box-plus operator). + * \param[in] x A pointer to a vector of int16_t. + * \param[in] y A pointer to a vector of int16_t. + * \param[out] z A pointer to a vector of int16_t. + * \param[in] len Length of vectors x, y and z. + */ +SRSLTE_API void srslte_vec_function_f_sss(const int16_t* x, const int16_t* y, int16_t* z, uint16_t len); + +/*! + * Computes \f$ z = sign(x) \times sign(y) \times \min(abs(x), abs(y)) \f$ elementwise (box-plus operator). + * \param[in] x A pointer to a vector of int8_t. + * \param[in] y A pointer to a vector of int8_t. + * \param[out] z A pointer to a vector of int8_t. + * \param[in] len Length of vectors x, y and z. + */ +SRSLTE_API void srslte_vec_function_f_ccc(const int8_t* x, const int8_t* y, int8_t* z, uint16_t len); + +/*! + * Returns \f$ z = x + y \f$ if \f$ (b = 1) \f$ and \f$ z= -x + y \f$ if \f$ (b = 0)\f$. + * \param[in] b A pointer to a vectors of uint8_t with 0's and 1's. + * \param[in] x A pointer to a vector of floats. + * \param[in] y A pointer to a vector of floats. + * \param[out] z A pointer to a vector of floats. + * \param[in] len Length of vectors b, x, y and z. + */ +SRSLTE_API void srslte_vec_function_g_bfff(const uint8_t* b, const float* x, const float* y, float* z, uint16_t len); + +/*! + * Returns \f$ z = x + y \f$ if \f$ (b = 1) \f$ and \f$ z= -x + y \f$ if \f$ (b = 0)\f$. + * \param[in] b A pointer to a vectors of uint8_t with 0's and 1's. + * \param[in] x A pointer to a vector of int16_t. + * \param[in] y A pointer to a vector of int16_t. + * \param[out] z A pointer to a vector of int16_t. + * \param[in] len Length of vectors b, x, y and z. + */ +SRSLTE_API void +srslte_vec_function_g_bsss(const uint8_t* b, const int16_t* x, const int16_t* y, int16_t* z, uint16_t len); + +/*! + * Returns \f$ z = x + y \f$ if \f$ (b = 1) \f$ and \f$ z= -x + y \f$ if \f$ (b = 0)\f$. + * \param[in] b A pointer to a vectors of uint8_t with 0's and 1's. + * \param[in] x A pointer to a vector of int8_t. + * \param[in] y A pointer to a vector of int8_t. + * \param[out] z A pointer to a vector of int8_t. + * \param[in] len Length of vectors b, x, y and z. + */ +SRSLTE_API void srslte_vec_function_g_bccc(const uint8_t* b, const int8_t* x, const int8_t* y, int8_t* z, uint16_t len); + +/*! + * Returns 1 if \f$ (x < 0) \f$ and 0 if \f$ (x >= 0) \f$. + * \param[in] x A pointer to a vector of floats. + * \param[out] z A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] len Length of vectors x and z. + */ +SRSLTE_API void srslte_vec_hard_bit_fc(const float* x, uint8_t* z, uint16_t len); + +/*! + * Returns 1 if \f$ (x < 0) \f$ and 0 if \f$ (x >= 0) \f$. + * \param[in] x A pointer to a vector of int16_t. + * \param[out] z A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] len Length of vectors x and z. + */ +SRSLTE_API void srslte_vec_hard_bit_sc(const int16_t* x, uint8_t* z, uint16_t len); + +/*! + * Returns 1 if \f$ (x < 0) \f$ and 0 if \f$ (x >= 0) \f$. + * \param[in] x A pointer to a vector of int8_t. + * \param[out] z A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] len Length of vectors x and z. + */ +SRSLTE_API void srslte_vec_hard_bit_cc(const int8_t* x, uint8_t* z, uint16_t len); + +#endif // POLAR_VECTOR_FUNCTIONS_H diff --git a/lib/src/phy/fec/polar/polar_decoder_vector_avx2.c b/lib/src/phy/fec/polar/polar_decoder_vector_avx2.c new file mode 100644 index 000000000..ca021b24f --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_vector_avx2.c @@ -0,0 +1,136 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_vector_avx2.c + * \brief Definition of the polar decoder vectorizable functions using AVX2 instructions. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#include "../utils_avx2.h" +#include +#include +#include +#include +#include + +#ifdef LV_HAVE_AVX2 + +#include + +/*! + * \brief Bit mask to extract the Most Significant Bit (MSB). + */ +#define MSB_MASK (-128) // 0b10000000 + +// General remarks +// We replace bits by {0, 128} (uint8_t) or {0, -128} (int8_t) + +void srslte_vec_function_f_ccc_avx2(const int8_t* x, const int8_t* y, int8_t* z, const uint16_t len) +{ + + for (int i = 0; i < len; i += SRSLTE_AVX2_B_SIZE) { + __m256i m_x = _mm256_loadu_si256((__m256i*)&x[i]); + __m256i m_y = _mm256_loadu_si256((__m256i*)&y[i]); + + __m256i m_sign = _mm256_sign_epi8(m_x, m_y); + __m256i m_abs_x = _mm256_abs_epi8(m_x); + __m256i m_abs_y = _mm256_abs_epi8(m_y); + __m256i m_min_abs_x_abs_y = _mm256_min_epi8(m_abs_x, m_abs_y); + __m256i m_z = _mm256_sign_epi8(m_min_abs_x_abs_y, m_sign); + + _mm256_storeu_si256((__m256i*)&z[i], m_z); + } +} + +void srslte_vec_function_g_bccc_avx2(const uint8_t* b, const int8_t* x, const int8_t* y, int8_t* z, const uint16_t len) +{ + + const __m256i M_1 = _mm256_set1_epi8(1); + const __m256i M_NEG127 = _mm256_set1_epi8(-127); + + for (int i = 0; i < len; i += SRSLTE_AVX2_B_SIZE) { + + __m256i m_x = _mm256_loadu_si256((__m256i*)&x[i]); + __m256i m_y = _mm256_loadu_si256((__m256i*)&y[i]); + __m256i m_b = _mm256_loadu_si256((__m256i*)&b[i]); + + __m256i m_b_or_1 = + _mm256_or_si256(m_b, M_1); // avoids m_b being 0, in which case m_sign_x = 0 (in the next instruction) + __m256i m_sign_x = _mm256_sign_epi8(m_x, m_b_or_1); + __m256i m_z = _mm256_adds_epi8(m_sign_x, m_y); + __m256i m_sz = _mm256_max_epi8(M_NEG127, m_z); + + _mm256_storeu_si256((__m256i*)&z[i], m_sz); + } +} + +void srslte_vec_xor_bbb_avx2(const uint8_t* x, const uint8_t* y, uint8_t* z, uint16_t len) +{ + + for (int i = 0; i < len; i += SRSLTE_AVX2_B_SIZE) { + __m256i m_x = _mm256_loadu_si256((__m256i*)&x[i]); + __m256i m_y = _mm256_loadu_si256((__m256i*)&y[i]); + + __m256i m_z = _mm256_xor_si256(m_x, m_y); + + _mm256_storeu_si256((__m256i*)&z[i], m_z); + } +} + +void srslte_vec_hard_bit_cc_avx2(const int8_t* x, uint8_t* z, const uint16_t len) +{ + const __m256i M_MSB_MASK = _mm256_set1_epi8(MSB_MASK); + + for (int i = 0; i < len; i += SRSLTE_AVX2_B_SIZE) { + __m256i m_x = _mm256_loadu_si256((__m256i*)&x[i]); + + __m256i m_z = _mm256_and_si256(m_x, M_MSB_MASK); + + _mm256_storeu_si256((__m256i*)&z[i], m_z); + } + // restore, by setting to 0, the memory positions between z + len and z + len + SRSLTE_AVX2_B_SIZE + memset(z + len, 0, SRSLTE_AVX2_B_SIZE); +} + +void srslte_vec_sign_to_bit_c_avx2(uint8_t* x, uint16_t len) +{ + const __m256i M_NEG1 = _mm256_set1_epi8(-1); + + int i = 0; + for (; i < len - SRSLTE_AVX2_B_SIZE + 1; i += SRSLTE_AVX2_B_SIZE) { + __m256i m_x = _mm256_loadu_si256((__m256i*)&x[i]); + + __m256i m_abs_x = _mm256_sign_epi8(M_NEG1, m_x); + + _mm256_storeu_si256((__m256i*)&x[i], m_abs_x); + } + + // executed if code_size < 32, which is never the case in 5G + for (; i < len; i++) { + x[i] = x[i] >> 7U; + } +} +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/polar/polar_decoder_vector_avx2.h b/lib/src/phy/fec/polar/polar_decoder_vector_avx2.h new file mode 100644 index 000000000..846315ec2 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_decoder_vector_avx2.h @@ -0,0 +1,89 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_decoder_vector_avx2.h + * \brief Declaration of the 8-bit AVX2 polar decoder vectorizable functions. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_VECTOR_FUNCTIONS_AVX2_H +#define POLAR_VECTOR_FUNCTIONS_AVX2_H +#include "../utils_avx2.h" +#include "srslte/config.h" +#include + +/*! + * Transforms input uint8_t bits represented by {0, 128} to {0, 1} with AVX2 instructions, + * the output must have size larger than \ref SRSLTE_AVX2_B_SIZE. + * Specifically, the function returns 0 if x=0 and 1 if x<0, otherwise the output is not defined. + * \param[in, out] x A pointer to a vector of uint8_t. + * \param[in] len Length of vectors x, y and z. + */ +SRSLTE_API void srslte_vec_sign_to_bit_c_avx2(uint8_t* x, uint16_t len); + +/*! + * Computes \f$ z = sign(x) \times sign(y) \times \min(abs(x), abs(y)) \f$ elementwise + * (box-plus operator) with AVX2 instructions, + * the output must have size larger than \ref SRSLTE_AVX2_B_SIZE. + * \param[in] x A pointer to a vector of int8_t. + * \param[in] y A pointer to a vector of int8_t. + * \param[out] z A pointer to a vector of int8_t. + * \param[in] len Length of vectors x, y and z. + */ +SRSLTE_API void srslte_vec_function_f_ccc_avx2(const int8_t* x, const int8_t* y, int8_t* z, uint16_t len); + +/*! + * Returns \f$ z = x + y \f$ if \f$ (b = 1) \f$ and \f$ z= -x + y \f$ if \f$ (b = 0)\f$ with AVX2 instructions, + * the output must have size larger than \ref SRSLTE_AVX2_B_SIZE. + * \param[in] b A pointer to a vectors of uint8_t with 0's and 1's. + * \param[in] x A pointer to a vector of int8_t. + * \param[in] y A pointer to a vector of int8_t. + * \param[out] z A pointer to a vector of int8_t. + * \param[in] len Length of vectors b, x, y and z. + */ +SRSLTE_API void +srslte_vec_function_g_bccc_avx2(const uint8_t* b, const int8_t* x, const int8_t* y, int8_t* z, uint16_t len); + +/*! + * Computes \f$ z = x \oplus y \f$ elementwise with AVX2 instructions, + * the output must have size larger than \ref SRSLTE_AVX2_B_SIZE. + * \param[in] x A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] y A pointer to a vector of uint8_t with 0's and 1's. + * \param[out] z A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] len Length of vectors x, y and z. + */ +SRSLTE_API void srslte_vec_xor_bbb_avx2(const uint8_t* x, const uint8_t* y, uint8_t* z, uint16_t len); + +/*! + * Returns 1 if \f$ (x < 0) \f$ and 0 if \f$ (x >= 0) \f$ with AVX2 instructions, + * the output must have size larger that \ref SRSLTE_AVX2_B_SIZE. + * \param[in] x A pointer to a vector of int8_t. + * \param[out] z A pointer to a vector of uint8_t with 0's and 1's. + * \param[in] len Length of vectors x and z. + */ +SRSLTE_API void srslte_vec_hard_bit_cc_avx2(const int8_t* x, uint8_t* z, uint16_t len); + +#endif // POLAR_VECTOR_FUNCTIONS_H diff --git a/lib/src/phy/fec/polar/polar_encoder.c b/lib/src/phy/fec/polar/polar_encoder.c new file mode 100644 index 000000000..fa2576291 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_encoder.c @@ -0,0 +1,130 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_encoder.c + * \brief Definition of the polar encoder. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * 5G uses a polar encoder with maximum sizes \f$2^n\f$ with \f$n = 5,...,10\f$. + * + */ +#include "srslte/phy/fec/polar/polar_encoder.h" +#include "polar_encoder_avx2.h" +#include "polar_encoder_pipelined.h" +#include +#include +#include +#include +#include + +#ifdef LV_HAVE_AVX2 + +/*! AVX2 polar encoder */ +static int encode_avx2(void* o, const uint8_t* input, uint8_t* output, const uint8_t code_size_log) +{ + srslte_polar_encoder_t* q = o; + + polar_encoder_encode_avx2(q->ptr, input, output, code_size_log); + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the AVX2 encoder. */ +static void free_avx2(void* o) +{ + srslte_polar_encoder_t* q = o; + delete_polar_encoder_avx2(q->ptr); +} + +/*! Initializes a polar encoder structure to use the AVX2 polar encoder algorithm*/ +static int init_avx2(srslte_polar_encoder_t* q, const uint8_t code_size_log) +{ + q->encode = encode_avx2; + q->free = free_avx2; + if ((q->ptr = create_polar_encoder_avx2(code_size_log)) == NULL) { + free_avx2(q); + return -1; + } + return 0; +} +#endif // LV_HAVE_AVX2 + +/*! Pipelined polar encoder */ +static int encode_pipelined(void* o, const uint8_t* input, uint8_t* output, const uint8_t code_size_log) +{ + srslte_polar_encoder_t* q = o; + + polar_encoder_encode_pipelined(q->ptr, input, output, code_size_log); + return 0; +} + +/*! Carries out the actual destruction of the memory allocated to the pipelined encoder. */ +static void free_pipelined(void* o) +{ + srslte_polar_encoder_t* q = o; + delete_polar_encoder_pipelined(q->ptr); +} + +/*! Initializes a polar encoder structure to use the pipeline polar encoder algorithm*/ +static int init_pipelined(srslte_polar_encoder_t* q, const uint8_t code_size_log) +{ + q->encode = encode_pipelined; + q->free = free_pipelined; + if ((q->ptr = create_polar_encoder_pipelined(code_size_log)) == NULL) { + free_pipelined(q); + return -1; + } + return 0; +} + +int srslte_polar_encoder_init(srslte_polar_encoder_t* q, srslte_polar_encoder_type_t type, const uint8_t code_size_log) +{ + switch (type) { // NOLINT + case SRSLTE_POLAR_ENCODER_PIPELINED: + return init_pipelined(q, code_size_log); +#ifdef LV_HAVE_AVX2 + case SRSLTE_POLAR_ENCODER_AVX2: + return init_avx2(q, code_size_log); +#endif // LV_HAVE_AVX2 + default: + return -1; + } + return 0; +} + +void srslte_polar_encoder_free(srslte_polar_encoder_t* q) +{ + if (q->free) { + q->free(q); + } + memset(q, 0, sizeof(srslte_polar_encoder_t)); +} + +int srslte_polar_encoder_encode(srslte_polar_encoder_t* q, + const uint8_t* input, + uint8_t* output, + const uint8_t code_size_log) +{ + return q->encode(q, input, output, code_size_log); +} diff --git a/lib/src/phy/fec/polar/polar_encoder_avx2.c b/lib/src/phy/fec/polar/polar_encoder_avx2.c new file mode 100644 index 000000000..0a6a278d5 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_encoder_avx2.c @@ -0,0 +1,200 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_encoder_avx2.c + * \brief Definition of the AVX2 polar encoder. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * 5G uses a polar encoder with maximum sizes \f$2^n\f$ with \f$n = 5,...,10\f$. + * + */ + +#include "../utils_avx2.h" +#include +#include +#include +#include +#include + +#ifdef LV_HAVE_AVX2 + +#include +#include +#include + +/*! + * \brief Describes an AVX2 polar encoder. + */ +struct pAVX2 { + uint8_t code_size_log; /*!< \brief The \f$ log_2\f$ of the maximum supported number of bits of the encoder + input/output vector. */ + uint8_t* tmp; /*!< \brief Pointer to a temporary buffer. */ +}; + +void delete_polar_encoder_avx2(void* o) +{ + struct pAVX2* q = o; + + if (q->tmp) { + free(q->tmp); + } + free(q); +} + +void* create_polar_encoder_avx2(const uint8_t code_size_log) +{ + struct pAVX2* q = NULL; // pointer to the polar encoder instance + + // allocate memory to the polar decoder instance + if ((q = malloc(sizeof(struct pAVX2))) == NULL) { + return NULL; + } + + uint16_t code_size = 1U << code_size_log; + + if (code_size_log > SRSLTE_AVX2_B_SIZE_LOG) { + q->tmp = malloc(code_size * sizeof(uint8_t)); + } else { + q->tmp = malloc(SRSLTE_AVX2_B_SIZE * sizeof(uint8_t)); + } + if (!q->tmp) { + free(q); + perror("malloc"); + return NULL; + } + + q->code_size_log = code_size_log; + + return q; +} + +/*! + * Runs, in parallel, \f$ 2^{5-stage}\f$ polar encoders of size \f$ 2^{stage} \f$ each for s=1 to 5. + */ +static inline void srslte_vec_polar_encoder_32_avx2(const uint8_t* x, uint8_t* z, uint8_t stage) +{ + const __m256i MZERO = _mm256_set1_epi8(0); + + __m256i simd_x = _mm256_loadu_si256((__m256i*)x); + __m256i simd_y; + switch (stage) { + case 5: + // in 0x21, the 2 takes zeros, and the 1 takes the second half of simd_x + simd_y = _mm256_permute2x128_si256(simd_x, MZERO, 0x21); + simd_x = _mm256_xor_si256(simd_x, simd_y); + case 4: + simd_y = _mm256_srli_si256(simd_x, 8); // move each half 8-bytes= 64 + simd_x = _mm256_xor_si256(simd_x, simd_y); + case 3: // stage 3 + simd_y = _mm256_srli_epi64(simd_x, 32); + simd_x = _mm256_xor_si256(simd_x, simd_y); + case 2: // stage 2 + simd_y = _mm256_srli_epi32(simd_x, 16); + simd_x = _mm256_xor_si256(simd_x, simd_y); + case 1: // stage 1 + simd_y = _mm256_srli_epi16(simd_x, 8); + simd_x = _mm256_xor_si256(simd_x, simd_y); + _mm256_storeu_si256((__m256i*)z, simd_x); + break; + default: + printf("Wrong stage = %d\n", stage); + } +} + +/*! + * Computes \f$ z = x \oplus y \f$ elementwise with AVX2 instructions. + */ +static inline void srslte_vec_xor_bbb_avx2(const uint8_t* x, const uint8_t* y, uint8_t* z, uint16_t len) +{ + + for (int i = 0; i < len; i += SRSLTE_AVX2_B_SIZE) { + __m256i simd_x = _mm256_loadu_si256((__m256i*)&x[i]); + __m256i simd_y = _mm256_loadu_si256((__m256i*)&y[i]); + + __m256i simd_z = _mm256_xor_si256(simd_x, simd_y); + + _mm256_storeu_si256((__m256i*)&z[i], simd_z); + } +} + +int polar_encoder_encode_avx2(void* p, const uint8_t* input, uint8_t* output, const uint8_t code_size_log) +{ + + struct pAVX2* q = p; + + uint8_t* tmp = q->tmp; + + uint8_t* x = NULL; + uint8_t* y = NULL; + uint8_t* z = NULL; + + if (q == NULL) { + return -1; + } + + // load data + uint32_t code_size = 1U << code_size_log; + + memcpy(tmp, input, code_size * sizeof(uint8_t)); + + if (code_size_log > q->code_size_log) { + printf("ERROR: max code size log %d, current code size log %d.\n", q->code_size_log, code_size_log); + return -1; + } + + uint32_t code_size_stage = 0; + uint32_t code_half_size_stage = 0; + uint32_t num_blocks = 0; + uint32_t s = code_size_log; + for (; s > SRSLTE_AVX2_B_SIZE_LOG; s--) { + code_size_stage = 1U << s; + code_half_size_stage = 1U << (s - 1); + num_blocks = 1U << (code_size_log - s); + + for (uint32_t b = 0; b < num_blocks; b++) { + x = &tmp[b * code_size_stage]; + y = x + code_half_size_stage; + z = x; + srslte_vec_xor_bbb_avx2(x, y, z, code_half_size_stage); + } + } + + uint32_t num_simd_size_blocks = 1; + if (code_size_log > SRSLTE_AVX2_B_SIZE_LOG) { + num_simd_size_blocks = 1U << (code_size_log - SRSLTE_AVX2_B_SIZE_LOG); + } + + for (uint32_t b = 0; b < num_simd_size_blocks; b++) { + x = &tmp[b * SRSLTE_AVX2_B_SIZE]; + z = x; + srslte_vec_polar_encoder_32_avx2(x, z, s); + } + + memcpy(output, tmp, code_size * sizeof(uint8_t)); + + return 0; +} + +#endif // LV_HAVE_AVX2 diff --git a/lib/src/phy/fec/polar/polar_encoder_avx2.h b/lib/src/phy/fec/polar/polar_encoder_avx2.h new file mode 100644 index 000000000..bd91e7774 --- /dev/null +++ b/lib/src/phy/fec/polar/polar_encoder_avx2.h @@ -0,0 +1,62 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_encoder_avx2.h + * \brief Declaration of the AVX2 polar encoder. + * \author Jesus Gomez (CTTC) \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_ENCODER_AVX2_H +#define POLAR_ENCODER_AVX2_H + +#include + +/*! + * The AVX2 polar encoder "destructor": it frees all the resources allocated to the encoder. + * + * \param[in, out] p A pointer to the dismantled encoder. + */ +void delete_polar_encoder_avx2(void* p); + +/*! + * Encodes the input vector into a codeword with the specified polar encoder. + * \param[in] p A void pointer used to declare a AVX2 polar encoder structure. + * \param[in] input The encoder input vector. + * \param[out] output The encoder output vector. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the encoder input/output vector. + * It can less or equal to the maximum code_size_log specified in q.code_size_log of the srslte_polar_encoder_t + * structure \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int polar_encoder_encode_avx2(void* p, const uint8_t* input, uint8_t* output, uint8_t code_size_log); + +/*! + * Creates an AVX2 polar encoder structure of type pAVX2, and allocates memory for the encoding buffers. + * + * \param[in] code_size_log \f$log_2\f$ of the number of bits in the codeword. + * \return A pointer to a pAVX2 structure if the function executes correctly, NULL otherwise. + */ +void* create_polar_encoder_avx2(uint8_t code_size_log); + +#endif // POLAR_ENCODER_AVX2_H diff --git a/lib/src/phy/fec/polar/polar_encoder_pipelined.c b/lib/src/phy/fec/polar/polar_encoder_pipelined.c new file mode 100644 index 000000000..06b02c81f --- /dev/null +++ b/lib/src/phy/fec/polar/polar_encoder_pipelined.c @@ -0,0 +1,160 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_encoder_pipelined.c + * \brief Definition of the pipelined polar encoder. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * The pipelined polar encoder is described in + * Erdal Arikan, "Polar code: A pipelined implementation" presented at "4th International Symposium on Broadband + * Communication (ISBC 2010) July 11-14, 2010, Melaka, Malaysia" + * 5G uses a polar encoder with maximum sizes \f$2^n\f$ with \f$n = 5,...,10\f$. + * + */ + +#include "srslte/phy/fec/polar/polar_encoder.h" +#include +#include +#include +#include + +/*! + * \brief Describes an PIPELINED polar encoder. + */ +struct pPIPELINED { + uint16_t code_size; /*!< \brief Number of bits of the encoder input/output vector. */ + uint8_t code_size_log; /*!< \brief The \f$ log_2\f$ of the maximum supported number of bits of the encoder + input/output vector. */ + uint16_t code_half_size; /*!< \brief Half of the number of bits of the encoder input/output vector. */ + uint16_t* i_even; /*!< \brief Pointer to the even positions of the encoder input/output vector. */ + uint16_t* i_odd; /*!< \brief Pointer to the odd positions of the encoder input/output vector. */ + uint8_t* tmp; /*!< \brief Pointer to a temporary buffer. */ +}; + +void delete_polar_encoder_pipelined(void* o) +{ + struct pPIPELINED* q = o; + if (q->i_even) { + free(q->i_even); + } + if (q->i_odd) { + free(q->i_odd); + } + if (q->tmp) { + free(q->tmp); + } + free(q); +} + +void* create_polar_encoder_pipelined(const uint8_t code_size_log) +{ + struct pPIPELINED* q = NULL; // pointer to the polar encoder instance + + // allocate memory to the polar decoder instance + if ((q = malloc(sizeof(struct pPIPELINED))) == NULL) { + return NULL; + } + + uint16_t code_size = 1U << code_size_log; + uint16_t code_half_size = code_size / 2; + + q->i_odd = malloc(code_half_size * sizeof(uint16_t)); + if (!q->i_odd) { + free(q); + perror("malloc"); + return NULL; + } + + q->i_even = malloc(code_half_size * sizeof(uint16_t)); + if (!q->i_even) { + free(q->i_odd); + free(q); + perror("malloc"); + return NULL; + } + + q->tmp = malloc(code_size * sizeof(uint8_t)); + if (!q->tmp) { + free(q->i_even); + free(q->i_odd); + free(q); + perror("malloc"); + return NULL; + } + + for (uint16_t i = 0; i < code_size / 2; i++) { + q->i_even[i] = 2 * i; + q->i_odd[i] = 2 * i + 1; + } + + q->code_size = code_size; + q->code_size_log = code_size_log; + q->code_half_size = code_half_size; + + return q; +} + +int polar_encoder_encode_pipelined(void* p, const uint8_t* input, uint8_t* output, const uint8_t code_size_log) +{ + + struct pPIPELINED* q = p; + + if (q == NULL) { + return -1; + } + + // first stage also initializes output vector + uint16_t code_half_size = 1U << (code_size_log - 1U); + if (code_half_size > q->code_half_size) { + printf("ERROR: max code size %d, current code size %d.\n", 2 * q->code_half_size, 2 * code_half_size); + return -1; + } + + for (uint16_t j = 0; j < code_half_size; j++) { + q->tmp[j] = input[q->i_even[j]]; + q->tmp[j + code_half_size] = input[q->i_odd[j]]; + } + + for (uint16_t j = 0; j < code_half_size; j++) { + output[q->i_odd[j]] = q->tmp[q->i_odd[j]]; + output[q->i_even[j]] = q->tmp[q->i_even[j]] ^ q->tmp[q->i_odd[j]]; // bitXor + } + + // remaining stages + for (uint16_t i = 1; i < code_size_log; i++) { + + for (uint16_t j = 0; j < code_half_size; j++) { + q->tmp[j] = output[q->i_even[j]]; + q->tmp[j + code_half_size] = output[q->i_odd[j]]; + } + + for (uint16_t j = 0; j < code_half_size; j++) { + output[q->i_odd[j]] = q->tmp[q->i_odd[j]]; + output[q->i_even[j]] = q->tmp[q->i_even[j]] ^ q->tmp[q->i_odd[j]]; // bitXor + } + } + + return 0; +} diff --git a/lib/src/phy/fec/polar/polar_encoder_pipelined.h b/lib/src/phy/fec/polar/polar_encoder_pipelined.h new file mode 100644 index 000000000..1374a9f0d --- /dev/null +++ b/lib/src/phy/fec/polar/polar_encoder_pipelined.h @@ -0,0 +1,62 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_encoder_pipelined.h + * \brief Declaration of the pipelined polar encoder. + * \author Jesus Gomez (CTTC) \date 2020 + * + * \copyright Software Radio Systems Limited + * + */ + +#ifndef POLAR_ENCODER_PIPELINED_H +#define POLAR_ENCODER_PIPELINED_H + +#include + +/*! + * The pipelined polar encoder "destructor": it frees all the resources allocated to the encoder. + * + * \param[in, out] p A pointer to the dismantled encoder. + */ +void delete_polar_encoder_pipelined(void* p); + +/*! + * Encodes the input vector into a codeword with the specified polar encoder. + * \param[in] p A void pointer used to declare a pPIPELINED structure. + * \param[in] input The encoder input vector. + * \param[out] output The encoder output vector. + * \param[in] code_size_log The \f$\log_2\f$ of the number of bits of the encoder input/output vector. + * It can less or equal to the maximum code_size_log specified in q.code_size_log of the srslte_polar_encoder_t + * structure \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int polar_encoder_encode_pipelined(void* p, const uint8_t* input, uint8_t* output, uint8_t code_size_log); + +/*! + * Creates a pipelined polar encoder structure of type pPIPELINED, and allocates memory for the encoding buffers. + * + * \param[in] code_size_log \f$\log_2\f$ of the number of bits in the codeword. + * \return A pointer to a pPIPELINED structure if the function executes correctly, NULL otherwise. + */ +void* create_polar_encoder_pipelined(uint8_t code_size_log); + +#endif // POLAR_ENCODER_PIPELINED_H diff --git a/lib/src/phy/fec/polar/test/CMakeLists.txt b/lib/src/phy/fec/polar/test/CMakeLists.txt new file mode 100644 index 000000000..71902aa24 --- /dev/null +++ b/lib/src/phy/fec/polar/test/CMakeLists.txt @@ -0,0 +1,71 @@ +# +# Project: 5GCoding-SRS +# Author: Jesus Gomez (CTTC) +# Copyright: Software Radio Systems Limited +# + +add_library(polar_test_utils polar_sets.c subchannel_allocation.c) + +add_executable(polar_chain_test polar_chain_test.c) + +target_link_libraries(polar_chain_test srslte_phy polar_test_utils) + +set_target_properties(polar_chain_test + PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/tests/polar" + ) + +file(GLOB FROZEN_SETS + "frozensets/*.bin" + ) +set(OUT_FROZEN_SETS ${FROZEN_SETS}) +list(TRANSFORM OUT_FROZEN_SETS REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/frozensets/" "") +list(TRANSFORM OUT_FROZEN_SETS PREPEND "${PROJECT_SOURCE_DIR}/tests/polar/frozensets/") + +add_custom_command( + OUTPUT ${OUT_FROZEN_SETS} + COMMAND cp -r frozensets "${PROJECT_SOURCE_DIR}/tests/polar" + DEPENDS ${FROZEN_SETS} + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + COMMENT "Copying frozen set files" + VERBATIM +) + +add_custom_target(polar_frozen_sets + DEPENDS ${OUT_FROZEN_SETS} + ) + +add_dependencies(polar_chain_test polar_frozen_sets) + +### Test polar libs +function(polar_unit_tests) + set(S ${ARGV0}) #101 means no noise, 100 scan + set(listC 5 6 6 6 7 7 8 8 9 9 10) + set(listR 32 64 64 64 128 128 256 256 512 864 1024) + set(listM 31 31 36 63 36 64 36 128 256 56 512) + set(listP 0 0 0 0 0 0 0 0 0 0 0) + set(listW 0 0 0 0 0 0 0 0 0 0 0) + list(LENGTH listC len) + math(EXPR lenr "${len} - 1") + foreach(num RANGE ${lenr}) + list(GET listC ${num} cval) + list(GET listR ${num} rval) + list(GET listM ${num} mval) + list(GET listP ${num} pval) + list(GET listW ${num} wval) + add_test(NAME ${test_name}-s${S}-c${cval}-r${rval}-m${mval}-p${pval}-w${wval} + COMMAND ${test_command} -s${S} -c${cval} -r${rval} -m${mval} -p${pval} -w${wval} + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/tests/polar + ) + endforeach() +endfunction() + +# Unit tests +set(test_name POLAR-UNIT-TEST) +set(test_command polar_chain_test) +polar_unit_tests(101) + +# WER (performance) tests +# For these tests, run ctest --verbose +set(test_name POLAR-PERF-TEST) +set(test_command polar_chain_test) +polar_unit_tests(-3) diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_1024_1024_512_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_1024_1024_512_0_0.bin new file mode 100644 index 000000000..9fd431594 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_1024_1024_512_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_128_128_36_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_128_128_36_0_0.bin new file mode 100644 index 000000000..b34af6086 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_128_128_36_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_128_128_64_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_128_128_64_0_0.bin new file mode 100644 index 000000000..81ba42b11 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_128_128_64_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_256_256_128_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_256_256_128_0_0.bin new file mode 100644 index 000000000..1aa3d1d05 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_256_256_128_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_256_256_36_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_256_256_36_0_0.bin new file mode 100644 index 000000000..590973081 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_256_256_36_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_32_32_16_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_32_32_16_0_0.bin new file mode 100644 index 000000000..dd0e85f03 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_32_32_16_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_32_32_31_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_32_32_31_0_0.bin new file mode 100644 index 000000000..53f01f07c Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_32_32_31_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_512_256_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_512_256_0_0.bin new file mode 100644 index 000000000..d3044c51f Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_512_256_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_512_36_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_512_36_0_0.bin new file mode 100644 index 000000000..af5358b71 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_512_36_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_864_56_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_864_56_0_0.bin new file mode 100644 index 000000000..19fa7c4a1 Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_512_864_56_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_31_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_31_0_0.bin new file mode 100644 index 000000000..e440d7b3c Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_31_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_36_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_36_0_0.bin new file mode 100644 index 000000000..d62e3311c Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_36_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_63_0_0.bin b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_63_0_0.bin new file mode 100644 index 000000000..eb6e8d37c Binary files /dev/null and b/lib/src/phy/fec/polar/test/frozensets/polar_code_sets_64_64_63_0_0.bin differ diff --git a/lib/src/phy/fec/polar/test/polar_chain_test.c b/lib/src/phy/fec/polar/test/polar_chain_test.c new file mode 100644 index 000000000..55b028a4a --- /dev/null +++ b/lib/src/phy/fec/polar/test/polar_chain_test.c @@ -0,0 +1,803 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_chain_test.c + * \brief Throughput and WER tests for the polar encoder/decoder. + * + * Synopsis: **polar_test [options]** + * + * Options: + * + * - -c \ \f$log_2\f$ of the codeword length [Default 8] + * + * - -r \ Rate matching size [Default 256] + * + * - -m \ Message size [Default 128] + * + * - -p \ Parity-set size [Default 0] + * + * - -w \ nWmPC [Default 0] + * + * - -s \ SNR [dB, Default 3.00 dB] -- Use 100 for scan, and 101 for noiseless + * + * - -o \ Print output results [Default 0] -- Use 0 for detailed, Use 1 for 1 line, Use 2 for vector + * form + * + * It (1) generates a random set of bits (data); (2) passes the data bits + * through the subchannel allocation block where the input vector to the + * encoder is generated; (3) encodes the input vector; (4) adds Gaussian channel noise + * (optional); (5) passes the decoder output through the subchannel + * deallocation block where data bits are extracted; (6) compares the decoded + * bits with the original data bits and measures the throughput (in bit / s). + * + * The message, frozen and parity bit sets corresponding to the input + * parameters -c, -r, -m, -p, -w must be available in the subfolder \a + * frozensets of the execution directory. + * These sets are stored in files with the following name convention: + * > polar_code_____.bin + * + * See \ref polar for futher details. + * + */ + +#include "math.h" + +#include "srslte/phy/channel/ch_awgn.h" +#include "srslte/phy/common/timestamp.h" +#include "srslte/phy/utils/bit.h" +#include "srslte/phy/utils/debug.h" +#include "srslte/phy/utils/phy_logger.h" +#include "srslte/phy/utils/random.h" +#include "srslte/phy/utils/vector.h" // srslte_convert_dB_to_amplitude + +#include +#include +#include +#include +#include + +// cttc utils lib +#include "srslte/phy/utils/vector.h" + +// polar libs +#include "polar_sets.h" +#include "srslte/phy/fec/polar/polar_decoder.h" +#include "srslte/phy/fec/polar/polar_encoder.h" +#include "subchannel_allocation.h" + +#define SNR_POINTS 10 /*!< \brief Number of SNR evaluation points.*/ +#define SNR_MIN (-2.0) /*!< \brief Min SNR [dB].*/ +#define SNR_MAX 8.0 /*!< \brief Max SNR [dB].*/ + +#define BATCH_SIZE 100 /*!< \brief Number of codewords in a batch. */ +#define MAX_N_BATCH 10000 /*!< \brief Max number of simulated batches. */ +#define REQ_ERRORS 100 /*!< \brief Minimum number of errors for a significant simulation. */ + +// default values +uint8_t code_size_log = 8; /*!< \brief \f$log_2\f$ of code size. */ +uint16_t message_size = 128; /*!< \brief Number of message bits (data and CRC). */ +uint16_t rate_matching_size = 256; /*!< \brief Number of bits of the codeword after rate matching. */ +uint8_t parity_set_size = 0; /*!< \brief Number of parity bits. */ +uint8_t nWmPC = 0; /*!< \brief Number of parity bits of minimum weight type. */ +double snr_db = 3; /*!< \brief SNR in dB (101 for no noise, 100 for scan). */ +int print_output = 0; /*!< \brief print output form (0 for detailed, 1 for 1 line, 2 for vector). */ + +/*! + * \brief Prints test help when a wrong parameter is passed as input. + */ +void usage(char* prog) +{ + printf("Usage: %s [-cX] [-rX] [-mX] [-pX] [-wX] [-sX]\n", prog); + printf("\t-c log2 of the codeword length [Default %d]\n", code_size_log); + printf("\t-r Rate matching size [Default %d]\n", rate_matching_size); + printf("\t-m Message size [Default %d]\n", message_size); + printf("\t-p Parity-set size [Default %d]\n", parity_set_size); + printf("\t-w nWmPC [Default %d]\n", nWmPC); + printf("\t-s SNR [dB, Default %.2f dB] -- Use 100 for scan, and 101 for noiseless\n", snr_db); + printf("\t-o Print output results [Default %d] -- Use 0 for detailed, Use 1 for 1 line, Use 2 for vector form\n", + print_output); +} + +/*! + * \brief Parses the input line. + */ +void parse_args(int argc, char** argv) +{ + int opt = 0; + while ((opt = getopt(argc, argv, "c:r:m:p:w:e:s:t:o:")) != -1) { + switch (opt) { + case 'c': + code_size_log = (int)strtol(optarg, NULL, 10); + break; + case 'r': + rate_matching_size = (int)strtol(optarg, NULL, 10); + break; + case 'm': + message_size = (int)strtol(optarg, NULL, 10); + break; + case 'p': + parity_set_size = (int)strtol(optarg, NULL, 10); + break; + case 'w': + nWmPC = (int)strtol(optarg, NULL, 10); + break; + case 's': + snr_db = strtof(optarg, NULL); + break; + case 'o': + print_output = strtol(optarg, NULL, 10); + break; + default: + usage(argv[0]); + exit(-1); + } + } +} + +/*! + * \brief Main function. + */ +int main(int argc, char** argv) +{ + uint8_t* data_tx = NULL; + uint8_t* data_rx = NULL; + uint8_t* data_rx_s = NULL; + uint8_t* data_rx_c = NULL; + uint8_t* data_rx_c_avx2 = NULL; + + uint8_t* input_enc = NULL; // input encoder + uint8_t* output_enc = NULL; // output encoder + uint8_t* output_enc_avx2 = NULL; // output encoder + + float* llr = NULL; // input decoder + int16_t* llr_s = NULL; // input decoder + int8_t* llr_c = NULL; // input decoder + int8_t* llr_c_avx2 = NULL; // input decoder + + uint8_t* output_dec = NULL; // output decoder + uint8_t* output_dec_s = NULL; // output decoder + uint8_t* output_dec_c = NULL; // output decoder + uint8_t* output_dec_c_avx2 = NULL; // output decoder + + double var[SNR_POINTS + 1]; + + double snr_db_vec[SNR_POINTS + 1]; + int i = 0; + + int j = 0; + int snr_points = 0; + + int errors_symb = 0; + int errors_symb_s = 0; + int errors_symb_c = 0; + int errors_symb_c_avx2 = 0; + + int n_error_words[SNR_POINTS + 1]; + int n_error_words_s[SNR_POINTS + 1]; + int n_error_words_c[SNR_POINTS + 1]; + int n_error_words_c_avx2[SNR_POINTS + 1]; + + int last_i_batch[SNR_POINTS + 1]; + + struct timeval t[3]; + double elapsed_time_dec[SNR_POINTS + 1]; + double elapsed_time_dec_s[SNR_POINTS + 1]; + double elapsed_time_dec_c[SNR_POINTS + 1]; + double elapsed_time_dec_c_avx2[SNR_POINTS + 1]; + + double elapsed_time_enc[SNR_POINTS + 1]; + double elapsed_time_enc_avx2[SNR_POINTS + 1]; + + // 16-bit quantizer + int16_t inf16 = (1U << 15U) - 1; + int8_t inf8 = (1U << 7U) - 1; + float gain_s = NAN; + float gain_c = NAN; + float gain_c_avx2 = NAN; + + srslte_polar_sets_t sets; + srslte_subchn_alloc_t subch; + srslte_polar_encoder_t enc; + srslte_polar_decoder_t dec; + srslte_polar_decoder_t dec_s; // 16-bit + srslte_polar_decoder_t dec_c; // 8-bit +#ifdef LV_HAVE_AVX2 + srslte_polar_encoder_t enc_avx2; + srslte_polar_decoder_t dec_c_avx2; // 8-bit +#endif // LV_HAVE_AVX2 + + parse_args(argc, argv); + + uint16_t code_size = 1U << code_size_log; + + printf("Test POLAR chain:\n"); + printf(" Final code bits -> E = %d\n", rate_matching_size); + printf(" Code bits -> N = %d\n", code_size); + printf(" CRC + Data bits -> K = %d\n", message_size); + printf(" Parity Check bits -> PC = %d \n", parity_set_size); + printf(" Code rate -> (K + PC)/N = (%d + %d)/%d = %.2f\n", + message_size, + parity_set_size, + code_size, + (double)(message_size + parity_set_size) / code_size); + + // read polar index sets from a file + srslte_polar_code_sets_read(&sets, message_size, code_size_log, rate_matching_size, parity_set_size, nWmPC); + + // subchannel allocation + srslte_subchannel_allocation_init(&subch, code_size_log, message_size, sets.message_set); + + // initialize encoder pipeline + srslte_polar_encoder_init(&enc, SRSLTE_POLAR_ENCODER_PIPELINED, code_size_log); + + // initialize a POLAR decoder (float) + srslte_polar_decoder_init(&dec, SRSLTE_POLAR_DECODER_SSC_F, code_size_log, sets.frozen_set, sets.frozen_set_size); + + // initialize a POLAR decoder (16 bit) + srslte_polar_decoder_init(&dec_s, SRSLTE_POLAR_DECODER_SSC_S, code_size_log, sets.frozen_set, sets.frozen_set_size); + + // initialize a POLAR decoder (8 bit) + srslte_polar_decoder_init(&dec_c, SRSLTE_POLAR_DECODER_SSC_C, code_size_log, sets.frozen_set, sets.frozen_set_size); + +#ifdef LV_HAVE_AVX2 + + // initialize encoder avx2 + srslte_polar_encoder_init(&enc_avx2, SRSLTE_POLAR_ENCODER_AVX2, code_size_log); + + // initialize a POLAR decoder (8 bit, avx2) + srslte_polar_decoder_init( + &dec_c_avx2, SRSLTE_POLAR_DECODER_SSC_C_AVX2, code_size_log, sets.frozen_set, sets.frozen_set_size); +#endif // LV_HAVE_AVX2 + +#ifdef DATA_ALL_ONES +#else + srslte_random_t random_gen = srslte_random_init(0); +#endif + + data_tx = srslte_vec_u8_malloc(message_size * BATCH_SIZE); + data_rx = srslte_vec_u8_malloc(message_size * BATCH_SIZE); + data_rx_s = srslte_vec_u8_malloc(message_size * BATCH_SIZE); + data_rx_c = srslte_vec_u8_malloc(message_size * BATCH_SIZE); + data_rx_c_avx2 = srslte_vec_u8_malloc(message_size * BATCH_SIZE); + + input_enc = srslte_vec_u8_malloc(code_size * BATCH_SIZE); + output_enc = srslte_vec_u8_malloc(code_size * BATCH_SIZE); + output_enc_avx2 = srslte_vec_u8_malloc(code_size * BATCH_SIZE); + + llr = srslte_vec_f_malloc(code_size * BATCH_SIZE); + llr_s = srslte_vec_i16_malloc(code_size * BATCH_SIZE); + llr_c = srslte_vec_i8_malloc(code_size * BATCH_SIZE); + llr_c_avx2 = srslte_vec_i8_malloc(code_size * BATCH_SIZE); + + output_dec = srslte_vec_u8_malloc(code_size * BATCH_SIZE); + output_dec_s = srslte_vec_u8_malloc(code_size * BATCH_SIZE); + output_dec_c = srslte_vec_u8_malloc(code_size * BATCH_SIZE); + output_dec_c_avx2 = srslte_vec_u8_malloc(code_size * BATCH_SIZE); + + if (!data_tx || !data_rx || !data_rx_s || !data_rx_c || !data_rx_c_avx2 || !input_enc || !output_enc || + !output_enc_avx2 || !llr || !llr_s || !llr_c || !llr_c_avx2 || !output_dec || !output_dec_s || !output_dec_c || + !output_dec_c_avx2) { + perror("malloc"); + exit(-1); + } + + // if snr_db = 100 compute a rage from SNR_MIN to SNR_MAX with SNR_POINTS + // else use the specified SNR. + double snr_inc = NAN; + + snr_inc = (SNR_MAX - SNR_MIN) / SNR_POINTS; + + if (snr_db == 100.0) { + snr_points = SNR_POINTS; + for (int32_t i = 0; i < snr_points; i++) { + snr_db = SNR_MIN + i * snr_inc; + snr_db_vec[i] = snr_db; + var[i] = srslte_convert_dB_to_amplitude(-snr_db); + } + snr_db_vec[snr_points] = 101; // include the no noise case + snr_points++; + } else { + snr_db_vec[0] = snr_db; + var[0] = srslte_convert_dB_to_amplitude(-snr_db); + snr_points = 1; + } + + if (snr_db == 100) { // scan + printf(" SNR_MIN = %f, SNR_INC = %f, SNR_MAX = %f, snr_points: %d\n", + SNR_MIN, + snr_inc, + SNR_MIN + snr_inc * snr_points, + snr_points); + } + + for (int32_t i_snr = 0; i_snr < snr_points; i_snr++) { + if (snr_db_vec[i_snr] == 101) { + printf("\n Signal-to-Noise Ratio -> infinite\n"); + } else { + printf("\n Signal-to-Noise Ratio -> %.1f dB\n", snr_db_vec[i_snr]); + } + + elapsed_time_enc[i_snr] = 0; + elapsed_time_enc_avx2[i_snr] = 0; + elapsed_time_dec[i_snr] = 0; + elapsed_time_dec_s[i_snr] = 0; + elapsed_time_dec_c[i_snr] = 0; + elapsed_time_dec_c_avx2[i_snr] = 0; + + n_error_words[i_snr] = 0; + n_error_words_s[i_snr] = 0; + n_error_words_c[i_snr] = 0; + n_error_words_c_avx2[i_snr] = 0; + + int i_batch = 0; + printf("\nBatch:\n "); + + int req_errors = 0; + int max_n_batch = 0; + if (snr_db_vec[i_snr] == 101) { + req_errors = 1; + max_n_batch = 1; + } else { + req_errors = REQ_ERRORS; + max_n_batch = MAX_N_BATCH; + } + + while ((n_error_words[i_snr] < req_errors) && (i_batch < max_n_batch)) { + i_batch++; + + if (!(i_batch % 10)) { + printf("%8d", i_batch); + if (!(i_batch % 90)) { + printf("\n "); + } + } + +// generate data_tx +#ifdef DATA_ALL_ONES + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < message_size; j++) { + data_tx[i * message_size + j] = 1; + } + } + +#else + for (i = 0; i < BATCH_SIZE; i++) { + for (j = 0; j < message_size; j++) { + data_tx[i * message_size + j] = srslte_random_uniform_int_dist(random_gen, 0, 1); + } + } +#endif + + // subchannel_allocation block + for (i = 0; i < BATCH_SIZE; i++) { + srslte_subchannel_allocation(&subch, data_tx + i * message_size, input_enc + i * code_size); + } + + // encoding pipeline + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_polar_encoder_encode(&enc, input_enc + j * code_size, output_enc + j * code_size, code_size_log); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + + elapsed_time_enc[i_snr] += t[0].tv_sec + 1e-6 * t[0].tv_usec; + +#ifdef LV_HAVE_AVX2 + // encoding avx2 + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_polar_encoder_encode( + &enc_avx2, input_enc + j * code_size, output_enc_avx2 + j * code_size, code_size_log); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + + elapsed_time_enc_avx2[i_snr] += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + // check encoders have the same output. + + // check errors with respect the output of the pipeline encoder + for (i = 0; i < BATCH_SIZE; i++) { + if (srslte_bit_diff(output_enc + i * code_size, output_enc_avx2 + i * code_size, code_size) != 0) { + printf("ERROR: Wrong avx2 encoder output. SNR= %f, Batch: %d\n", snr_db_vec[i_snr], i); + exit(-1); + } + } +#endif // LV_HAVE_AVX2 + + for (j = 0; j < code_size * BATCH_SIZE; j++) { + llr[j] = output_enc[j] ? -1 : 1; + } + + // add noise + if (snr_db_vec[i_snr] != 101) { + srslte_ch_awgn_f(llr, llr, var[i_snr], BATCH_SIZE * code_size); + + // Convert symbols into LLRs + for (j = 0; j < BATCH_SIZE * code_size; j++) { + llr[j] *= 2 / (var[i_snr] * var[i_snr]); + } + } + + // decoding float point + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_polar_decoder_decode_f(&dec, llr + j * code_size, output_dec + j * code_size); + } + + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec[i_snr] += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + // extract message bits - float decoder + for (j = 0; j < BATCH_SIZE; j++) { + srslte_subchannel_deallocation(&subch, output_dec + j * code_size, data_rx + j * message_size); + } + + // check errors - float decpder + for (i = 0; i < BATCH_SIZE; i++) { + errors_symb = srslte_bit_diff(data_tx + i * message_size, data_rx + i * message_size, message_size); + + if (errors_symb != 0) { + n_error_words[i_snr]++; + } + } + + // decoding 16-bit + // 16-quantization + if (snr_db_vec[i_snr] == 101) { + srslte_vec_quant_fs(llr, llr_s, 8192, 0, 32767, BATCH_SIZE * code_size); + } else { + gain_s = inf16 * var[i_snr] / 20 / (1 / var[i_snr] + 2); + srslte_vec_quant_fs(llr, llr_s, gain_s, 0, inf16, BATCH_SIZE * code_size); + } + + // decoding 16-bit + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_polar_decoder_decode_s(&dec_s, llr_s + j * code_size, output_dec_s + j * code_size); + } + + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_s[i_snr] += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + // extract message bits 16-bit decoder + for (j = 0; j < BATCH_SIZE; j++) { + srslte_subchannel_deallocation(&subch, output_dec_s + j * code_size, data_rx_s + j * message_size); + } + + // check errors 16-bit decoder + for (i = 0; i < BATCH_SIZE; i++) { + errors_symb_s = srslte_bit_diff(data_tx + i * message_size, data_rx_s + i * message_size, message_size); + + if (errors_symb_s != 0) { + n_error_words_s[i_snr]++; + } + } + + // 8-bit decoding + // 8-bit quantization + if (snr_db_vec[i_snr] == 101) { + srslte_vec_quant_fc(llr, llr_c, 32, 0, 127, BATCH_SIZE * code_size); + } else { + gain_c = inf8 * var[i_snr] / 20 / (1 / var[i_snr] + 2); + srslte_vec_quant_fc(llr, llr_c, gain_c, 0, inf8, BATCH_SIZE * code_size); + } + + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_polar_decoder_decode_c(&dec_c, llr_c + j * code_size, output_dec_c + j * code_size); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_c[i_snr] += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + // extract message bits + for (j = 0; j < BATCH_SIZE; j++) { + srslte_subchannel_deallocation(&subch, output_dec_c + j * code_size, data_rx_c + j * message_size); + } + + // check errors 8-bits decoder + for (i = 0; i < BATCH_SIZE; i++) { + + errors_symb_c = srslte_bit_diff(data_tx + i * message_size, data_rx_c + i * message_size, message_size); + + if (errors_symb_c != 0) { + n_error_words_c[i_snr]++; + } + } + +#ifdef LV_HAVE_AVX2 + // 8-bit avx2 decoding + // 8-bit quantization + if (snr_db_vec[i_snr] == 101) { + srslte_vec_quant_fc(llr, llr_c_avx2, 32, 0, 127, BATCH_SIZE * code_size); + } else { + gain_c_avx2 = inf8 * var[i_snr] / 20 / (1 / var[i_snr] + 2); + srslte_vec_quant_fc(llr, llr_c_avx2, gain_c_avx2, 0, inf8, BATCH_SIZE * code_size); + } + + gettimeofday(&t[1], NULL); + for (j = 0; j < BATCH_SIZE; j++) { + srslte_polar_decoder_decode_c(&dec_c_avx2, llr_c_avx2 + j * code_size, output_dec_c_avx2 + j * code_size); + } + gettimeofday(&t[2], NULL); + get_time_interval(t); + elapsed_time_dec_c_avx2[i_snr] += t[0].tv_sec + 1e-6 * t[0].tv_usec; + + // extract message bits + for (j = 0; j < BATCH_SIZE; j++) { + srslte_subchannel_deallocation(&subch, output_dec_c_avx2 + j * code_size, data_rx_c_avx2 + j * message_size); + } + + // check errors 8-bits decoder + for (i = 0; i < BATCH_SIZE; i++) { + + errors_symb_c_avx2 = + srslte_bit_diff(data_tx + i * message_size, data_rx_c_avx2 + i * message_size, message_size); + + if (errors_symb_c_avx2 != 0) { + n_error_words_c_avx2[i_snr]++; + } + } +#endif // LV_HAVE_AVX2 + + last_i_batch[i_snr] = i_batch; + } // end while BATCH + + } // snr_db + + printf("\n"); + switch (print_output) { + case 2: + + printf("SNR=["); + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + printf("%3.1f ", snr_db_vec[i_snr] - 3); + } + printf("];\n"); + printf("WER=["); + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + printf("%e ", (float)n_error_words[i_snr] / last_i_batch[i_snr] / BATCH_SIZE); + } + printf("];\n"); + + printf("WER_16=["); + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + printf("%e ", (float)n_error_words_s[i_snr] / last_i_batch[i_snr] / BATCH_SIZE); + } + printf("];\n"); + + printf("WER_8=["); + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + printf("%e ", (float)n_error_words_c[i_snr] / last_i_batch[i_snr] / BATCH_SIZE); + } + printf("];\n"); + +#ifdef LV_HAVE_AVX2 + printf("WER_8_AVX2=["); + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + printf("%e ", (float)n_error_words_c_avx2[i_snr] / last_i_batch[i_snr] / BATCH_SIZE); + } + printf("];\n"); +#endif // LV_HAVE_AVX2 + break; + case 1: + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + printf("SNR: %3.1f\t enc_pipe_thrpt(Mbps): %.2f\t enc_avx2_thrpt(Mbps): " + "%.2f\n", + snr_db_vec[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size / (1000000 * elapsed_time_enc[i_snr]), + last_i_batch[i_snr] * BATCH_SIZE * code_size / (1000000 * elapsed_time_enc_avx2[i_snr])); + + printf("SNR: %3.1f\t FLOAT WER: %.8f %d/%d \t dec_thrput(Mbps): %.2f\n", + snr_db_vec[i_snr], + (double)n_error_words[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size, + last_i_batch[i_snr] * BATCH_SIZE * code_size / (1000000 * elapsed_time_dec[i_snr])); + printf("SNR: %3.1f\t INT16 WER: %.8f %d/%d \t dec_thrput(Mbps): %.2f\n", + snr_db_vec[i_snr], + (double)n_error_words_s[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words_s[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size, + last_i_batch[i_snr] * BATCH_SIZE * code_size / (1000000 * elapsed_time_dec_s[i_snr])); + printf("SNR: %3.1f\t INT8 WER: %.8f %d/%d \t dec_thrput(Mbps): %.2f\n", + snr_db_vec[i_snr], + (double)n_error_words_c[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words_c[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size, + last_i_batch[i_snr] * BATCH_SIZE * code_size / (1000000 * elapsed_time_dec_c[i_snr])); +#ifdef LV_HAVE_AVX2 + printf("SNR: %3.1f\t INT8-AVX2 WER: %.8f %d/%d \t dec_thrput(Mbps): %.2f\n", + snr_db_vec[i_snr], + (double)n_error_words_c_avx2[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words_c_avx2[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size, + last_i_batch[i_snr] * BATCH_SIZE * code_size / (1000000 * elapsed_time_dec_c_avx2[i_snr])); +#endif // LV_HAVE_AVX2 + printf("\n"); + } + + break; + default: + + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + printf("**** PIPELINE ENCODER ****\n"); + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + last_i_batch[i_snr] * BATCH_SIZE / elapsed_time_enc[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * message_size / elapsed_time_enc[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size / elapsed_time_enc[i_snr]); + +#ifdef LV_HAVE_AVX2 + printf("\n**** AVX2 ENCODER ****\n"); + printf("Estimated throughput:\n %e word/s\n %e bit/s (information)\n %e bit/s " + "(encoded)\n", + last_i_batch[i_snr] * BATCH_SIZE / elapsed_time_enc_avx2[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * message_size / elapsed_time_enc_avx2[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size / elapsed_time_enc_avx2[i_snr]); +#endif // LV_HAVE_AVX2 + + printf("\n**** FLOATING POINT ****"); + printf("\nEstimated word error rate:\n %e (%d errors)\n", + (double)n_error_words[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words[i_snr]); + + printf("Estimated throughput decoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + last_i_batch[i_snr] * BATCH_SIZE / elapsed_time_dec[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * message_size / elapsed_time_dec[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size / elapsed_time_dec[i_snr]); + + printf("\n**** FIXED POINT (16 bits) ****"); + printf("\nEstimated word error rate:\n %e (%d errors)\n", + (double)n_error_words_s[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words_s[i_snr]); + + printf("Estimated throughput decoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + last_i_batch[i_snr] * BATCH_SIZE / elapsed_time_dec_s[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * message_size / elapsed_time_dec_s[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size / elapsed_time_dec_s[i_snr]); + + printf("\n**** FIXED POINT (8 bits) ****"); + printf("\nEstimated word error rate:\n %e (%d errors)\n", + (double)n_error_words_c[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words_c[i_snr]); + + printf("Estimated throughput decoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + last_i_batch[i_snr] * BATCH_SIZE / elapsed_time_dec_c[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * message_size / elapsed_time_dec_c[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size / elapsed_time_dec_c[i_snr]); + +#ifdef LV_HAVE_AVX2 + printf("\n**** FIXED POINT (8 bits, AVX2) ****"); + printf("\nEstimated word error rate:\n %e (%d errors)\n", + (double)n_error_words_c_avx2[i_snr] / last_i_batch[i_snr] / BATCH_SIZE, + n_error_words_c_avx2[i_snr]); + + printf("Estimated throughput decoder:\n %e word/s\n %e bit/s (information)\n %e bit/s (encoded)\n", + last_i_batch[i_snr] * BATCH_SIZE / elapsed_time_dec_c_avx2[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * message_size / elapsed_time_dec_c_avx2[i_snr], + last_i_batch[i_snr] * BATCH_SIZE * code_size / elapsed_time_dec_c_avx2[i_snr]); +#endif // LV_HAVE_AVX2 + + printf("\n"); + } + break; + } + + free(data_tx); + free(data_rx); + free(data_rx_s); + free(data_rx_c); + + free(input_enc); + free(output_enc); + free(output_enc_avx2); + + free(llr); + free(llr_s); + free(llr_c); + + free(output_dec); + free(output_dec_s); + free(output_dec_c); + +#ifdef DATA_ALL_ONES +#else + srslte_random_free(random_gen); +#endif + // free sets + srslte_polar_code_sets_free(&sets); + srslte_polar_encoder_free(&enc); + srslte_polar_decoder_free(&dec); + srslte_polar_decoder_free(&dec_s); + srslte_polar_decoder_free(&dec_c); + +#ifdef LV_HAVE_AVX2 + srslte_polar_encoder_free(&enc_avx2); + srslte_polar_decoder_free(&dec_c_avx2); +#endif // LV_HAVE_AVX2 + + int expected_errors = 0; + int i_snr = 0; + if (snr_db_vec[i_snr] == 101) { + if (n_error_words[0] > expected_errors) { + printf("\n(float) Test failed!\n\n"); + } else { + printf("\n(float) Test completed successfully!\n\n"); + } + printf("\r"); + + if (n_error_words_s[0] > expected_errors) { + printf("\n(16 bit) Test failed!\n\n"); + } else { + printf("\n(16 bit) Test completed successfully!\n\n"); + } + printf("\r"); + + if (n_error_words_c[0] > expected_errors) { + printf("\n(8 bit) Test failed!\n\n"); + } else { + printf("\n(8 bit) Test completed successfully!\n\n"); + } + printf("\r"); + +#ifdef LV_HAVE_AVX2 + if (n_error_words_c_avx2[0] > expected_errors) { + printf("\n(8 bit, avx2) Test failed!\n\n"); + } else { + printf("\n(8 bit, avx2) Test completed successfully!\n\n"); + } +#endif // LV_HAVE_AVX2 + printf("\r"); + + exit((n_error_words[0] > expected_errors) || (n_error_words_s[0] > expected_errors) || + (n_error_words_c[0] > expected_errors) +#ifdef LV_HAVE_AVX2 + || (n_error_words_c_avx2[0] > expected_errors) +#endif // LV_HAVE_AVX2 + ); + + } else { + for (int i_snr = 0; i_snr < snr_points; i_snr++) { + if (n_error_words_s[i_snr] > 10 * n_error_words[i_snr]) { + perror("16-bit performance at SNR = %d too low!"); + exit(-1); + } + if (n_error_words_c[i_snr] > 10 * n_error_words[i_snr]) { + perror("8-bit performance at SNR = %d too low!"); + exit(-1); + } +#ifdef LV_HAVE_AVX2 + if (n_error_words_c_avx2[i_snr] > 10 * n_error_words[i_snr]) { + perror("8-bit avx2 performance at SNR = %d too low!"); + exit(-1); + } +#endif // LV_HAVE_AVX2 + } + + printf("\nTest completed successfully!\n\n"); + printf("\r"); + } +} diff --git a/lib/src/phy/fec/polar/test/polar_sets.c b/lib/src/phy/fec/polar/test/polar_sets.c new file mode 100644 index 000000000..46511c130 --- /dev/null +++ b/lib/src/phy/fec/polar/test/polar_sets.c @@ -0,0 +1,119 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_sets.c + * \brief Definition of the auxiliary function that reads polar index sets from a file. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * The message and parity check sets provided by this functions are needed by + * the subchannel allocation block. + * The frozen bit set provided by this function is used by the polar decoder. + * + */ + +#include "polar_sets.h" + +#include +#include +#include +#include //exit +#include + +void srslte_polar_code_sets_free(srslte_polar_sets_t* c) +{ + if (c != NULL) { + free(c->frozen_set); + free(c->info_set); + free(c->message_set); + free(c->parity_set); + } +} + +int srslte_polar_code_sets_read(srslte_polar_sets_t* c, + const uint16_t message_size, + const uint8_t code_size_log, + const uint16_t rate_matching_size, + const uint8_t parity_set_size, + const uint8_t nWmPC) +{ + FILE* fptr = NULL; + char filename[50]; + + uint16_t code_size = 1U << code_size_log; + + c->frozen_set_size = code_size - message_size - parity_set_size; + c->parity_set_size = parity_set_size; + c->info_set_size = message_size + parity_set_size; + c->message_set_size = message_size; + + c->frozen_set = srslte_vec_u16_malloc(c->frozen_set_size); + if (!c->frozen_set) { + perror("malloc"); + exit(-1); + } + + c->info_set = srslte_vec_u16_malloc(c->info_set_size); + if (!c->info_set) { + perror("malloc"); + exit(-1); + } + + c->message_set = srslte_vec_u16_malloc(c->message_set_size); + if (!c->message_set) { + perror("malloc"); + exit(-1); + } + + c->parity_set = srslte_vec_u16_malloc(parity_set_size); + if (!c->parity_set) { + perror("malloc"); + exit(-1); + } + + sprintf(filename, + "frozensets/polar_code_sets_%hu_%hu_%hu_%hu_%u.bin", + code_size, + rate_matching_size, + c->message_set_size, + c->parity_set_size, + nWmPC); + + fptr = fopen(filename, "rbe"); + + if (fptr == NULL) { + printf("Error! file: %s does not exit. Probably, the polar set file is missing in folder " + "/frozensets for the provided code parameters.\n", + filename); + exit(1); + } + + fread(c->info_set, sizeof(uint16_t), c->info_set_size, fptr); + fread(c->message_set, sizeof(uint16_t), c->message_set_size, fptr); + fread(c->parity_set, sizeof(uint16_t), c->parity_set_size, fptr); + fread(c->frozen_set, sizeof(uint16_t), c->frozen_set_size, fptr); + + fclose(fptr); + return 0; +} diff --git a/lib/src/phy/fec/polar/test/polar_sets.h b/lib/src/phy/fec/polar/test/polar_sets.h new file mode 100644 index 000000000..df50ca7c4 --- /dev/null +++ b/lib/src/phy/fec/polar/test/polar_sets.h @@ -0,0 +1,80 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file polar_sets.h + * \brief Declaration of the auxiliary function that reads polar index sets from a file. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * The message and parity check sets provided by this functions are needed by + * the subchannel allocation block. + * The frozen bit set provided by this function is used by the polar decoder. + * + */ + +#ifndef SRSLTE_POLAR_SETS_H +#define SRSLTE_POLAR_SETS_H + +#include "srslte/config.h" +#include + +/*! + * \brief Describes a polar set. + */ +typedef struct { + uint16_t message_set_size; /*!< \brief Number of message bits (data and CRC). */ + uint16_t info_set_size; /*!< \brief Number of message bits plus parity bits. */ + uint16_t parity_set_size; /*!< \brief Number of parity check bits. */ + uint16_t frozen_set_size; /*!< \brief Number of frozen bits. */ + uint16_t* message_set; /*!< \brief Pointer to the indices of the encoder input vector containing data and CRC bits. */ + uint16_t* info_set; /*!< \brief Pointer to the indices of the encoder input vector containing data, CRC and + parity check bits.*/ + uint16_t* parity_set; /*!< \brief Pointer to the indices of the encoder input vector containing the parity bits.*/ + uint16_t* frozen_set; /*!< \brief Pointer to the indices of the encoder input vector containing frozen bits.*/ +} srslte_polar_sets_t; + +/*! + * Initializes the different index sets as needed by the subchannel allocation block and/or by the polar decoder. + * \param[out] c A pointer to the initialized polar set. + * \param[in] message_size Number of data + CRC bits. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the decoder input/output vector. + * \param[in] rate_matching_size Number of bits of the codeword after rate matching. + * \param[in] parity_set_size Number of parity bits. + * \param[in] nWmPC Number of parity bits of minimum weight type. + * \return An integer: 0 if the function executes correctly, -1 otherwise. + */ +int srslte_polar_code_sets_read(srslte_polar_sets_t* c, + uint16_t message_size, + uint8_t code_size_log, + uint16_t rate_matching_size, + uint8_t parity_set_size, + uint8_t nWmPC); + +/*! + * The polar set "destructor": it frees all the resources. + * \param[in] c A pointer to the dismantled polar set. + */ +void srslte_polar_code_sets_free(srslte_polar_sets_t* c); + +#endif // SRSLTE_POLAR_SETS_H diff --git a/lib/src/phy/fec/polar/test/subchannel_allocation.c b/lib/src/phy/fec/polar/test/subchannel_allocation.c new file mode 100644 index 000000000..3fa4ba1be --- /dev/null +++ b/lib/src/phy/fec/polar/test/subchannel_allocation.c @@ -0,0 +1,66 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file subchannel_allocation.c + * \brief Defiition of the auxiliary subchannel allocation block. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * These functions are not fully functional nor tested to be 3gpp-5G compliant. + * Please, use only for testing purposes. + * + */ + +#include "subchannel_allocation.h" +#include //memset + +void srslte_subchannel_allocation_init(srslte_subchn_alloc_t* c, + const uint8_t code_size_log, + const uint16_t message_set_size, + uint16_t* message_set) +{ + c->code_size = 1U << code_size_log; + c->message_size = message_set_size; + c->message_set = message_set; +} + +void srslte_subchannel_allocation(const srslte_subchn_alloc_t* c, const uint8_t* message, uint8_t* input_encoder) +{ + memset(input_encoder, 0, c->code_size * sizeof(uint8_t)); + + uint16_t i_o = 0; + for (uint16_t i = 0; i < c->message_size; i++) { + i_o = c->message_set[i]; + input_encoder[i_o] = message[i]; + } +} + +void srslte_subchannel_deallocation(const srslte_subchn_alloc_t* c, const uint8_t* output_decoder, uint8_t* message) +{ + uint16_t i_o = 0; + for (uint16_t i = 0; i < c->message_size; i++) { + i_o = c->message_set[i]; + message[i] = output_decoder[i_o]; + } +} diff --git a/lib/src/phy/fec/polar/test/subchannel_allocation.h b/lib/src/phy/fec/polar/test/subchannel_allocation.h new file mode 100644 index 000000000..5ef93d4ef --- /dev/null +++ b/lib/src/phy/fec/polar/test/subchannel_allocation.h @@ -0,0 +1,86 @@ +/* + * Copyright 2013-2020 Software Radio Systems Limited + * + * This file is part of srsLTE. + * + * srsLTE is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * srsLTE 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 Affero General Public License for more details. + * + * A copy of the GNU Affero General Public License can be found in + * the LICENSE file in the top-level directory of this distribution + * and at http://www.gnu.org/licenses/. + * + */ + +/*! + * \file subchannel_allocation.h + * \brief Declaration of the auxiliary subchannel allocation block. + * \author Jesus Gomez (CTTC) + * \date 2020 + * + * \copyright Software Radio Systems Limited + * + * These functions are not fully functional nor tested to be 3gpp-5G compliant. + * Please, use only for testing purposes. + * + */ + +#ifndef SRSLTE_SUB_CHANNEL_ALLOC_H +#define SRSLTE_SUB_CHANNEL_ALLOC_H + +#include "srslte/config.h" +#include "stdint.h" + +/*! + * \brief Describes a subchannel allocation. + */ +typedef struct SRSLTE_API { + uint16_t code_size; /*!< \brief Number of bits, \f$N\f$, of the encoder input/output vector. */ + uint16_t message_size; /*!< \brief Number of bits, \f$K\f$, of data + CRC. */ + uint16_t* message_set; /*!< \brief Pointer to the indices of the encoder input vector containing data and CRC bits. */ +} srslte_subchn_alloc_t; + +/*! + * Initializes a subchannel allocation instance. + * \param[out] c A pointer to the srslte_subchn_alloc_t structure + * containing the parameters needed by the subchannel allocation function. + * \param[in] code_size_log The \f$ log_2\f$ of the number of bits of the decoder input/output vector. + * \param[in] message_set_size Number of data + CRC bits. + * \param[in] message_set Pointer to the indices of the encoder input vector containing + * data and CRC bits. + */ +void srslte_subchannel_allocation_init(srslte_subchn_alloc_t* c, + uint8_t code_size_log, + uint16_t message_set_size, + uint16_t* message_set); + +/*! + * Allocates message bits (data + CRC) to the encoder input bit vector at the + * positions specified in \a c->message_set and zeros to the remaining + * positions. This function is not fully 5G compliant as parity bits positions + * are set to 0. + * \param[in] c A pointer to the srslte_subchn_alloc_t structure containing + * the parameters needed by the subchannel allocation function. + * \param[in] message A pointer to the vector with the message bits (data and CRC). + * \param[out] input_encoder A pointer to the encoder input bit vector. + */ +void srslte_subchannel_allocation(const srslte_subchn_alloc_t* c, const uint8_t* message, uint8_t* input_encoder); + +/*! + * Extracts message bits (data + CRC) from the decoder output vector + * according to the positions specified in \a c->message_set. + * \param[in] c A pointer to the srslte_subchn_alloc_t structure containing the + * parameters needed by the subchannel allocation function. + * \param[in] output_decoder A pointer to the decoder output bit vector. + * \param[out] message A pointer to the vector with the message bits (data and CRC). + */ +void srslte_subchannel_deallocation(const srslte_subchn_alloc_t* c, const uint8_t* output_decoder, uint8_t* message); + +#endif // SRSLTE_SUB_CHANNEL_ALLOC_H diff --git a/lib/src/phy/scrambling/scrambling.c b/lib/src/phy/scrambling/scrambling.c index bdecd7b1e..9c7f0985c 100644 --- a/lib/src/phy/scrambling/scrambling.c +++ b/lib/src/phy/scrambling/scrambling.c @@ -65,7 +65,7 @@ void srslte_scrambling_c_offset(srslte_sequence_t* s, cf_t* data, int offset, in static inline void scrambling_b(uint8_t* c, uint8_t* data, int len) { - srslte_vec_xor_bbb((int8_t*)c, (int8_t*)data, (int8_t*)data, len); + srslte_vec_xor_bbb(c, data, data, len); } void srslte_scrambling_b(srslte_sequence_t* s, uint8_t* data) diff --git a/lib/src/phy/utils/convolution.c b/lib/src/phy/utils/convolution.c index 4325fc72f..4ba372d91 100644 --- a/lib/src/phy/utils/convolution.c +++ b/lib/src/phy/utils/convolution.c @@ -19,12 +19,12 @@ * */ -#include "srslte/srslte.h" #include #include #include "srslte/phy/dft/dft.h" #include "srslte/phy/utils/convolution.h" +#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/vector.h" int srslte_conv_fft_cc_init(srslte_conv_fft_cc_t* q, uint32_t input_len, uint32_t filter_len) diff --git a/lib/src/phy/utils/test/vector_test.c b/lib/src/phy/utils/test/vector_test.c index 9b659d216..d95cf2aec 100644 --- a/lib/src/phy/utils/test/vector_test.c +++ b/lib/src/phy/utils/test/vector_test.c @@ -87,7 +87,7 @@ float squared_error(cf_t a, cf_t b) } TEST( - srslte_vec_xor_bbb, MALLOC(int8_t, x); MALLOC(int8_t, y); MALLOC(int8_t, z); + srslte_vec_xor_bbb, MALLOC(uint8_t, x); MALLOC(uint8_t, y); MALLOC(uint8_t, z); cf_t gold = 0.0f; for (int i = 0; i < block_size; i++) { diff --git a/lib/src/phy/utils/vector.c b/lib/src/phy/utils/vector.c index 16bcc904e..d71c50a94 100644 --- a/lib/src/phy/utils/vector.c +++ b/lib/src/phy/utils/vector.c @@ -31,7 +31,7 @@ #include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector_simd.h" -void srslte_vec_xor_bbb(int8_t* x, int8_t* y, int8_t* z, const uint32_t len) +void srslte_vec_xor_bbb(const uint8_t* x, const uint8_t* y, uint8_t* z, const uint32_t len) { srslte_vec_xor_bbb_simd(x, y, z, len); } @@ -597,6 +597,62 @@ uint32_t srslte_vec_max_abs_ci(const cf_t* x, const uint32_t len) return srslte_vec_max_ci_simd(x, len); } +void srslte_vec_quant_fs(const float* in, + int16_t* out, + const float gain, + const float offset, + const float clip, + const uint32_t len) +{ + int i = 0; + long tmp = 0; + + const int16_t inf = (1U << 15U) - 1; + + for (i = 0; i < len; i++) { + if (isinf(in[i])) { + tmp = inf * (-2 * (in[i] < 0) + 1); + } else { + tmp = (long)(offset + gain * in[i] + INT16_MAX + 0.5) - INT16_MAX; + if (tmp < -clip) { + tmp = -clip; + } + if (tmp > clip) { + tmp = clip; + } + } + + out[i] = (int16_t)tmp; + } +} + +void srslte_vec_quant_fc(const float* in, + int8_t* out, + const float gain, + const float offset, + const float clip, + const uint32_t len) +{ + int i = 0; + long tmp = 0; + + for (i = 0; i < len; i++) { + if (isinf(in[i])) { + tmp = 127 * (-2 * (in[i] < 0) + 1); + } else { + tmp = (long)(offset + gain * in[i] + INT8_MAX + 0.5) - INT8_MAX; + if (tmp < -clip) { + tmp = -clip; + } + if (tmp > clip) { + tmp = clip; + } + } + + out[i] = (int8_t)tmp; + } +} + void srslte_vec_quant_fus(const float* in, uint16_t* out, const float gain, diff --git a/lib/src/phy/utils/vector_simd.c b/lib/src/phy/utils/vector_simd.c index 1a37d75d2..2fff0bae7 100644 --- a/lib/src/phy/utils/vector_simd.c +++ b/lib/src/phy/utils/vector_simd.c @@ -30,27 +30,27 @@ #include "srslte/phy/utils/simd.h" #include "srslte/phy/utils/vector_simd.h" -void srslte_vec_xor_bbb_simd(const int8_t* x, const int8_t* y, int8_t* z, const int len) +void srslte_vec_xor_bbb_simd(const uint8_t* x, const uint8_t* y, uint8_t* z, const int len) { int i = 0; #if SRSLTE_SIMD_B_SIZE if (SRSLTE_IS_ALIGNED(x) && SRSLTE_IS_ALIGNED(y) && SRSLTE_IS_ALIGNED(z)) { for (; i < len - SRSLTE_SIMD_B_SIZE + 1; i += SRSLTE_SIMD_B_SIZE) { - simd_b_t a = srslte_simd_b_load(&x[i]); - simd_b_t b = srslte_simd_b_load(&y[i]); + simd_b_t a = srslte_simd_b_load((int8_t*)&x[i]); + simd_b_t b = srslte_simd_b_load((int8_t*)&y[i]); simd_b_t r = srslte_simd_b_xor(a, b); - srslte_simd_b_store(&z[i], r); + srslte_simd_b_store((int8_t*)&z[i], r); } } else { for (; i < len - SRSLTE_SIMD_B_SIZE + 1; i += SRSLTE_SIMD_B_SIZE) { - simd_b_t a = srslte_simd_b_loadu(&x[i]); - simd_b_t b = srslte_simd_b_loadu(&y[i]); + simd_b_t a = srslte_simd_b_loadu((int8_t*)&x[i]); + simd_b_t b = srslte_simd_b_loadu((int8_t*)&y[i]); simd_b_t r = srslte_simd_b_xor(a, b); - srslte_simd_b_storeu(&z[i], r); + srslte_simd_b_storeu((int8_t*)&z[i], r); } } #endif /* SRSLTE_SIMD_B_SIZE */