# n 23718 # w 154 # a vector h of length (0.5 n) which describes the parity-check matrix 011100010110011010001101001111001101111010001111111011000101000011101001111110000111011001010100010010111101111011000001111101111001111110100011110101101010010001001011011100001010110001100110101110000111001001011111000111100001100001101001111001101010111100110000111001110000000110001111111100111001001110101001101001001011001010100110100010111100110111111011100010100111011001010011100010001110000011001001000110010001110011011111111001001011100011011101010101100101011010011001110100000101000101100011011011011001111100110011111011101011101001111111101000010011000100110111001001000011001000110000100111001011110100001000011010001001100111000101010111101100111101101010110001011011000101001011111111000001010101010000001011110001111010001111111011000010000001110011100110001000101010001101110001100010100101011010000100100010111010110110110100100001011111010001010110111100010110001101101000101010001000010100100100000011111101111111100010101101000110011000010111010000001111110110110100100010111111110100100101010111111101011110000111000110111111110100100100011000110010111110101010100011111100001000001111110111011010111111011111011010110010010110101100100111100011011010100000111110111000000001100011111110110011000010010010100010011001110010111110010001010111111011001101101101101101111101011101000001111100000001011010101101000101011000111001110101000111010101010111001100110101110110001100010011100110011110100001111101101111110001001001110001100011101001011101011111010110101110101110011001000001000010000001111110010011011111001110110001111011011100010111011111101010001110001011011111000110001001101100000001101010110001000011011010100100001000001111010101100001111001100101110001100011000101110001100011111111011011000101011011001011000101110100001000010100011011100110010011111011110011110010000010001111110000001000110011001100101101110111101001101110110101100100011010010111000001100111100100010011010100011000011110011010100000100000111000001111100101110101110011010101110111111011001011101110110100100100111100010001010100101110000110100100110101010001010100000111001011110001101001010001000010110001010100011000001000010011110101100000010010010001100100110000000101111000110010011001110001011100000001100010000101101000011101011111101010011110010011001100010001000000010011010101111000100110000111110000101110001001001011101010110011001011010110001010010000110110011110100100001000011101100001000010010001010000111001100000011001100001111000000010110100110000010100110111110011111110101010010101110010010010000000010001111011110111011101100001011001101101001100100000001100010110000110011110000010011111111111111111011010001000100000101101010100101111111101110001010101100110110100011010110101110110000001001010110001011000000110010111001001001110101011011001111100110000011011100111011111110000100010001000001111111000101000010100110110010100010010011000110111011001110110000101010010000011011010010001010001001000110011101000010011101110001011110011011001110001011011000100100100000000101111110111101110010100011011011101010100001101101000111001011001011011100101001110101100101101110010110000111001111000111110011011110111110111001010110100000000101010010100111011010101101010100110100011101010101011001001100100101101110001110000000111010101000110011111101100000010110010110010011101100001010000000000101101010011010101100000001110110100111101101011010000010100011010010111011100001110011111010001100100010000101100001100110111011000111100000010101001111100101111110110111000011110001110001010111100100001010011101000111110101111100111010111011101110100111001010001010001111111010100101101101111011111000101111011110111010100111011100101111000011110010001100100010111000100001001011101011010111111011101111100100101001011010101001000111001100000000101100110100000001010010011000010000010011010100110111101010111111001000100000110111010011110111100000100100010111111001001011111001010001001101101110001101110111110011111111110010110011111010001110011111010101110111101111101010001011010011001001000110100000111001010000000100111010001100111000101011000111110000101110000000101110011111011000001010100010110100111101000001011101100001011011100101110101100111000010010000001110010001100101100001000010010010010110100101100111001110010100010101001101100110101000010110101001110000010010001101101000010000110101001110110000100110000111011011110100111101000011111101000110000110011101010100011100110111110110000010110011001111010010111011111000000101000001000100100111000100011000000111110000110000001101101000111001011010111000001110011101010000110011010000000111001010011000010000100000111011100011110010011000011001101101110000010111110010101111100000100000011000000010110100100010111000000111001100001100101101010101100101111001011100010010101100001100011100101010010001001000111001001000101000001010100010110110000001110011100000100100011110011010101010010000100001010100110000000101110010011000111001000010011001011000001110101010101111011000000001010100011010101000110100111111010110111011101010100011011101110100100000010101011101011100000000010111010001010001111011010011110001001010100101101000100000111011110100100001000110110011111110111010101100000101011101110011110100100111100101011010010001000001001001111111010011110000111001110101110101000010110011000110101101111101111010110110001111000011111011000101011001010000111101100101100111100101010110111111000111100011111000011111100011001011100111101101100111000101111100001011101010011011011010100110101100001110100000011100110101010010011011000001111111100111101011100010001111111110100101010001000100101010111001101101001110000110011001010000110000100110000010000110000111001111111011110101011010010000011100001101001101010001011000101101110111001110100110110010100001101011110001101010111111100100000100111010000100010101100011101000011100111001000011101010000000111101100010111100001100111001001110001000011000110010001110110111010001011000011010001000010000100100110010111001100101110000000010101100111111010010101111000001110100011011011110000010100001000001110010001010010101111100011110011110110010001000000110111010010110010101001010101101101110110000101101001110100100110101101010000110010101010001011110100011000101111101110001001111111010110111111011101000101111010100101101011001000000100111100001010101100100011111100111000010111011110110100011001110000111011101110011001111010000111110011111010010001101000111000110111100000010000101111000010011100101110111101000100001111110111111100001000011110100110000001010011001001111110101111101000001101100111111011000101010101100010011101001001010111010111011000010101011110110100101101111000000101111100111101101101100110001110100000011000000000101010001101011100001110011111111011010001001001101111101111010100000000000111110001111101110110001001111100111100011111101001111011001011111011001110001011000111101011101100000010111010111010001001010100000111110000111101001001101000101001010100110111000111101111011000001101010001110110110010010110100001100011011011101010111000010111010101101000111010100011111111001000010101011011010010111010000011001111011101101011000000000001110001000111000110011111110010100111000100100010111011110110010000000110111101110001111010100111111000001101101101001111100111100011111010001011101111101010001101010110101010111100000011110101000000100001111110000101000001111111000110110000011000110001100010000010100110001001100110110101010001111010001100111011100001111010101011000001100001001011110100010001100000001110000101010101001001110000011101110101101010011001001100110011010110101000100101001110001110111110110100100000110111001001011000100101010101110101100011101101111010110001000001100100100101110000001100011101110101001110111111110010100010100001000011011100011101101110101001001110011110111101011111001111010100001001011001010011000101011100010110000001110011111111010100001001010001000110011010001101011011111100010010001100010010011001000010100010110100011110110010011110111001111011100100101111010011010110010110110100000111000101010100111000100110001101010100100101000110001111111011011100010011000111100010111100010011101111111110101111010101111001101111110001111100000111001100001011101111000110010110000000010101110101111010010100000110001010110100000100011001011011101101100101100001101000001010111010000001101010011000001011111010011011101011100011101000001100000001000001010010101100001001110110001111101000011110001000100111010101010101010001100110111111001011111001010000110000110000000101001011010100001001101101110010000001101100100011111111001011011111100011110100010100100101000110100001111111000100000101010100001101111000011111000000110011100011100000101011100101011011110011000101110100001000101110100110110111001011001101000010111101011100100010110000110010011110000011001111001111101011101100000001101101100010001001100011000110011111011111001100111111011011001010110011001011011110010011100000111010000001010110011000101010010100100011011010100100011100000101011110100101110100000111110010101111000011110100010110111011100100110010110111110011100001100001100001011110011000100111010110111001111111100111000110011011010100111110111100111110011101100011100010001100110111111101110001101111111101100011111011110000000101101001010101001100111011111111001111011001100010011100111101111010111101010100111010100000001110000100001100101110110110000011110111011000001010010010110101101001110011001110100110110100001000001100100011101011011101011110100100000000100000001011100011100100101110000011010010100100001011011100101011101101111110011100010001101011000101111011110101010101100101100111110010010011000111110001010101001100110101011101010110001100111110100100101111110101010111001110011100111111011100000011111101001000010001000100110000010011010001001101001000000111011101010000100111000011000011011111110101110011011101110101011110101110111011100000100011101011010000010000001100110100100010100100101000001100001011110101010000000111011011111101000110100001011110101110011011010111100001101010011110110000010001000100100111000110101000101101111000000111100011101001111110010111110101111110101110000111100010100101101111110001000010010011101111011000001101110001110001001100101011101110111100101101010010101100101000111110010001010100111110010111100111010101011111111101011111001000011111001011011011110101100001010110101011000100110110001010110010101110100101111011100001001111101001011010011011100110110111011111101101101100001001101010011100111110001101000111111101110001010111111111010110000111111010100001000010011001100000111100101011101001000110100101010010110111110001110001111111111111000101100001100011111101001000101111111111101000001101101100110011010001100001110110111010100000010100101010011111111100001000001000011000011100001111011001010001100100011010110001000001111001100101111111000011001101110010111101010011110000010001110011001011100111110100011001000101000010101000010110000000100100000101001001100101100111000001001100101000101001100111110100000111011110100010001111000101010101110111000101000000000100010101011111011101101101111100010111001011001101000000011111010001011001010100000010011101100101010111001000000011100001000100000001000111001010100101001110111101011001010110101001001110010000011110111111110010100100000100111111111111101001001100101011011000111000110111011011011110010101001000010011001101111000011110001011110010011011101011000011110100110101100101000101101001101101001100110000010001110010100110111110011001100000110111110011001001101110111101001001011100001010100001101011111011101111000110001101100001101000110001110110101000111000110000001000110010100010000000010100001101111110101100110000110001011000100010001011100110010101001011110010100110111000100010001100111000010110100100101001011010110010000001111100110011010010001100010011000010100111000010111101010000000011011110100100100100110010010111001100001 # s^transpose 011110011101100011100101000011100011100110010100010001011110000101111000011101110011111100100111100100011100010110001110111111001001101011010010011011110110011100001111011011001011100000100110011101111100000110011110001000110000010011010101110100001111000000111011001010111110011111111000110011110100101001010100100010111000000111100001000101101001101101011101110000000111101001100111011111110111101101010111000011011011011000000011101101010010010110011011001100101101010001111001011001111000101011000010011101011111000110101111101101100011110100010011000011100011001111010111101010001010110100111001000000001000010100100111001101111010011010101100001111001110111100110101010010111001101010101000100010110010110011001011100000110100110000111000000010101000000000111001110001110000010110010001000111010111010111010001100010001010011000100101111100011110001010001000101010101101011111011110101110111000111111110101101011111110101101010100010001100101100111001101000010100000111010000011011100000010101100010011000110011001001101010001101100110110011010101011010110100101000000000000100011110101100100000111110000101010011101011001111010010000111111111011110010001110000110011000001111110010011111100111101111000011010111100000111111111001000111011001000010111100001000100111111000110100000110110000011011011110111111010000010010111010110010001110001110111010000111110001111011100001001010010011010101001110100010100111111110010101100000110001010110111111111001110110011110100111001000010010100001000101101100011111101010000111110000100000000100000000001100101101100001110100000100011000101111100000100110001111001111001011110000100000001101101110111110110010101111010101111100111111011001110001001010110111000101110011111001011001011101111100001101011111000111000011000000011000100001011011100111010110000110001100001011011010101011010110011011000100101100101001011010110101101111111000000011101110110010111110100100101010001110001001111100101010011000100001011100000110111001000010100100000011010110000000110110001000000010100000001000110110000110110000001110101011001000111011101100111011111110000001011010100000000011011010111010000000110111110101100011110101101001010000000010100000111110100001010010001110101111101110110100100010011010011010111011111111000101110110000100010000001110001010111101000101011111011110000010100001010110001100011000111010110000001000101010101010111111100100010010001101111111011001011100111011001110001110111110010110010001001100000101001011110101010100010111010010101110110010010000100100110010000001111110100010011100010110100100110011011010100010011101010101100111101001111110101100011001100011001001110101110000100100010111100010000000110111011001000111010011010111000010100001101111101100001110101001010101010100001111100001010010001111101110110001011010111010100111101111010011110010110110001001011000000010111011100101010111001110000100110110101110010100111000000000010001101111000110010000001000000001010110011011101000010011111010001011011111011101111010010000101000101111010010000111100100100010001110001100001110110110110101110001010011011100000110101001000001001111111101110010011011000111110000110111000000100000010000001010000100000101010111001100110001001101011110010011001101000000010001010111011000001011100111100101010010010000110111010011011010010101110111001011001000001001111011100011000000010011011101100010011110011100101010001110101101011111101000010001011001111100101111111101001010011001101010101010101001011010101011000001000001110111011110000010011100100000111100011001100010101010011001011010010101011010011111101001001100011011101000100111000101101100000010111100111001000100100001000001000000000001110010100101001110111110000101011111011011001011011101000111001111011111011100001000011011000110101000000110010100001111000000101110101100110101000001000111111010100111101000001011010101000010100110110000010110100110101111001111101001101110101100110000011110010000101001011100011110110011101001011001011100001101101010111010010001110010010001001111000011110011110110100101010000000011001101111001111011100111001100010010001111110000000101111011111011001010110111000111111011011000001001101100001001000110101000010111001010110010011100111100111100110110101100100001100111000001001010100001010111011001011111001001110010000011000100110011010000000101100010101101010000101110000100011110110111100101011010101010001100011011010100011001101110101100000010010010100111011110001010001011110001101110100111111110011010110111011100011100101010111101011000110000000001100010010001100011110100010000101010111010001001101000011100011101101010001001101011000101110000001110111010110110010000101001100101010110100011111100011000101011101000100100011110010110001001110001111001000110100111001011100100100010101110110010110011011101101010001011101010101101010111001110001111100001101101100010101010100101110101010101000011001110011000001111100001000001100010100001101100110100011110001010111110100110000100000000000010011101000010001110011010000100110111000111110000001010010110001010100111110100001110111111111101000011101001110100101110110010011010000010110000100011001101010100011001101000011100111000001010011100000000101001111000011111011110011000001110010000001101001010010011010110010001101111111101000000111000010111001011101010001011111010001010100000111011111011010000010000101010111111101010011101100101000110101101011101101100110010010010110000000100111100100101010110010011010100110000110101010000010110101010001100110011001110111101001111110110000111011110110111110000000100100011110001011101000010111001000100000111001011100001110011001101111100100110010001000111100001111110101001001001110010001000100000010111101010011010001001000011110101010010001000001111000001010110011101000111101100001010000100101100011101101111000101100000010000000001011101010101100111110001010110110111100011110110100111111011101011111110111011100101111101000100101100001101111001011011010011010110000010001110000101100001101101101111101100000011001001010000011010111001010010011101001101000000011101111110111110100010000100111110111101110010111111000011001111011001101101101110110100111011101001111011000000111000001101110000110001011010011001111101100100000110111001001110110001110111001001100000100010111101011010000101010000011010100111000101110000110110101011111110110010000111101101001101111000110100110110100001011001001111001111011111001010000111111110110111001001100000101100111001100010101110010000100001011001110010100101011011001000000001100111111011000101110011001011110010101100110000010001001000110101001101011010010101100100011001100110101110110111011010110101111111101100111100011010111011101000100110000100011011010000000110110111101010010101011010000110100001001110100010011110000001010010011111101100111111100000011000011010001101000000101001101010111101011011101011000000101101001101000101011110000100111001011110110010111011001010010101010000011110101110110010011101001001001011111101100100111110000101011010110000001100000100111001000000001100010001101111111110110001001000010101011111001011101010100110001010101011010101111000001000001011000111000011001110000010111010011010110000111110000111001110100100011111010100110111010111110110011011011110101011110110010001000101010100101000101010001010101101011001011011110000101100111011111000100101110101101011000000010101001001010111100000000100000000000101011010101000001000001111111101101101000000001000111100110101100111010001110001000111101101010100011111111100101001100001000111110001111011101011001011011000101101101110011011111111101100111111110111101010000001010010111011000111100000000101110010111001100110000100110010000000011110001010001110101101100101111010001010011111000001101101101011101110000100111111010001001011100010011011000100100001000010110011000010111110000001011010010011000110110011010111101001011001111010100101011101001001011111000101111000111100110010100110001010011110000000001010010101000100110001010001101010101101111001000100101001101111100011001001111011010010110000001011010100010110101101001000010010100101000101000100010010000001110111101010110110100010010000100100110010011111011011110100001010011001000111111010110100100010110111010001001110111011000001001100010111000110001111010110100100101001000001001110110101110001111111010001000000010011000111011001100011101111000011101010110011001111101001110110000100011110011011001011010000010110111001100000110000000010110001111101000011011000010010010101001010101011111100100100110011100101011000011100100001011110111010011101111110100011010010001101001010111011111010101011100000101110001100011010000111100001011010101011001010101000000011011001110101010100011110100100001110110010100101001101100010101100110011100100000011101000001010111110011000110101001001010001000110100100000111100000010000010111010001010100011010011110010100111110100110011000001011111011111111100110011011011011101101111111110111011101000010111110100101101011110010100101100010010000101100101111100100110001000011001010001011001101111000011100100001101111000010101111100110000100101111100010111011000011011000011001001011011111000011100000001011011110101000111010010001011001011110110111011101011111011000011000000000010000101101000100101100101001100100100001110101000101000011010010000011001011101100111110100100100001010010010101100001001001101010011000000110101101000001000001010101111011011010011111011101101101011011011110111000001001000100111001100000011001100110100010011010111111110110100110010011000101110000010111111110111010000000000100110101100101010100111101011111010000111010011100111111001101001011111110010110100100010010110001101000111010110001111110101111101000101011000001110000111111110000001011010001110100110110101101010000010011111101001001100000001110110101010100110000101001111011011000100011001110010000100111101110101110001111001010000000100111000111001011000111001110010010011110101001101010010100100111011010101001000001000110011010110101001101011001111110100011000100001100001000010100001111011010001110111011001110111001010001001101100010000010111011001001010110110010111101011001011000101101100010010000100000010001101011011000011011010000010101011100011101011010111001000011001110011100101001011101010100111100101110001101001101110011000111101001001100111011110011000100101011001110111000001111100110100001001100110001101000110101010000110010010011111110010000001000100111010011101010100111011010111111000001110110110000011111110010111111111010000111111110010110011011111000001100111110111011110011001001000000000001101010101110001000011010110100001101000011010000000011100001010001100100000110000000011010000110011001011000000110111100101111100010101010111010000000110100101100001001001000100000111100111001100011110010101101110110001000010010010001100011100101110001011000011001111110011110110010111010111101100000011010100111010001000000011101100000000000111001000011111101111111000100010101000000000010111010111110101100011101011011001000010111000010110011101110101110101101101001111111001100110001101100010101111100010001101101010010101110000100011100110100110100111110010011000011110110010011100111011001001101010001110110100011101110101111000111011100010011110000011100110001010111001000001001001010101010100111111110111011100101011110110110101100010000110000101100000001110111010010111111110111001111101101011000000101000100110001111100010110111010011110110110110000010101000010000100001110101110110110010010000010110010111100100000001100111001111001000011110000100101101111100011101100100001001001110011011011001011001001010110001101101101101000011111110010000100100011100011001111010000011101101000001111010011101001110111001111000110000110110100101101110101110010100111101111110001011101110001110101001011100110100011001000001000110111101100110001001011000000100001101011010100101100011100001010001011101011011000100110010010001010111111010100001101101