1011010010001001001010011000001100100100101011101011101010011011000110000000100000101011100001111001000011011111100111100100001011100011111001000001101111011011001000000001000110011001001101010000000100111101011000011111001100010100011011011101001100001101011110100101010010010010001001001111100101001010000101100010101101110010010110010000111011011001110001010001101001100010110001111001111011010100 1001111111001111010010000000101110000000100110010011111010000001011110001011010110011111011111010001000100111010000010010111010110010101001110101110010110010100000101100000010000010010000101111001001000011010101111111111101111101001101011010010001000111011110111011110011101011001101011001000011011011111101010100000110101110111001101110000100110001111110111111100111101100010010010100011110110101100 1011001011111111001110111110001101010011110110010001101010110011111110110011011110110000011110111101010110011100100001111011100000011100101110011111001001010100000001111111111101010000100011000101111110111000111000000000101000011011010010011111011010100110101101000111111111111111111010101111101001111110010000010010010111101000011111100010001110111101111011101001000100001100101110010111010110010110 1101000000010000100111000010010111100111000111111001111100111010110100101110100011111000101011010000100111101110011000101011101101100101111100111110011000110110000001000011101000100011100001001010101000110001101011100011101000011100000001011100100000011101100011101010011110001000010111101011110100001011011101101011001011000100110001100100110000001110001100001000110100011111011001000000000011100111 1001010000001110000011110010110100101101111011000011101110000000001111010100110100001001110001011001001010100111000011001000110000010011101010110100101101001100110010111110110010000001010011001000100101111010010000100011011111111001010011010010000001101111000110010011000111111101011001001100011001100011110110001001001110101000110101111000111010010010001110001101000010001111011010001000110000100111 0001011000111111001111101111001100100110110110000110110101111100010000101011110010111111101011100110111110000100101011010101101011010110010100000010101100100101011111000001101001011111010111110000000101110011010110100111011110100101101011110111011100011110101111111011001100001010011110100110011101100010010111000111000101010011110011111101111011001001011011110100110111000110100110011001100101010010 1010000111111111001100001011011100100100010011011010000110010100100111110011100011010110001111011100010111011011001101111111010101011111101101100000011111110000100001111000110000101011010001111000011100100111001110100110001010011111011000011011100001011011101111000000011110100100000000010010110010001111011101110011011001110001000001010111110111100001101111110110000001111001111100010001100101001011 1110111011101100101010111011000110101011010110110110111011011000000111000011011010111101100111101110111100001000101111111001110110000011110111001011000010000110111110101111111011111111000001011110110111110001001011111000000100010111101010110111110101111011100000011101110110010001001101100101000001010111011111100010101000010111000001000100000001000010010010110000101111111100101100010000111101011011 0000110000000000011110001100110110111111111010001100010010011111001011000111010101110111110100000111001101010101000101010011110001010011000001011011100111101110111010001010000100000000010011011101000101111000110100101011111101001101100001111100100111111111100011101011100000101110011010000100110000111101011110111100011100101011000110011011001001100100010110000001010001110111100101100101010101101010 1111001110111011011011010101100101011001010001110011010100101101111100110010111010111001010110010000100011110110000001101010000001100011111010010100011100011010101111001010111011100101110000000001100101100110110011011100101100011101101010110011100010100110011011010100111011111100001110010001010001100000001101100101100010100100011101111101100111111010100111100110011001101101101111011010101111110001 1100001011110011001110110010101000101011101000011101011100010000011001010110010111101001011010101101110101110101000011100111100001111011011111100001011100011001101000110000001011010001100101101100100011100010110111000100011101101010001111000111010010000011100101001000111111110100111000010110101010100011101001111100110001110001000010001110000011111100111111001111100001001001100010110011110000000111 1011110010010011100001101101111101100111110100011000111110111010101111110111001010111110000011101010110001000000000111110110010010000010100111111010000000000101111010011001111101111110101100101111111011011110001000001100110101001101100110111111110100000100011001110100010010010001110100001001001000100010100001011000111111001111101001001100000010011001111110110010100111101100111011110010100011000111 0100110110111110010001010000011001010010110011010001011101110011111101001100111001111010100011010111000011000001111011000100001001100011000011011001101010111011110110001011000110101000010111000010000101000011010000100011110000011001101100011011101101100001110100000000111011100011110011010101010000110001011111010011011011101110000101010101011111011110000101100001111110111011010110011110011101010011 0101000100100001110100011101011011100001000101010001000100000011000101100110110001101001000111100010010000110011000110101000111110001011100100001010010111010000010110111111110110110110111111000110111011110110010101010011111001011011001011000111000111001100010010101100110011001111101100001110010100100001111001001110110110111001011001001100010101110100110101010010111100001101001100010100010001010111 1010101110011111000010100100100110011000110110011110001010001011000101100001110110111111111110010100101110000110001001001001010010001111000000101110000100001101100011100100111110010011110000100101111000011010011111101000010000100101011110010101110011001010010001000110111011110111100010010001001011000100100110110011110101111001100010001101000111011110111011100010100100111101000000110001000011001111 0011111110000010001100001011001101001000010111100110000100111011111101111010011110010011000101000000100001010110001011110110001000000111111011111001100111110010011101011101100100001101001100101110000010110011101000011110110101011110101001011000101100101100000101011000110100000110110010111011010001111010101101101100001111101000001111101010101111000111111000011011111101101001100100111000011010000000 0110100111111101100010101001100110011011000011000101100101100110010111111001010100110110011010111000101101101100001011011101000101100100011001011001011101001100001111000101100110001111111111010011110100001000001111111100000100101010001110100111101111010010011100011010111011011111011010100011100011111100110011011010111110101000011010010011111011011000100000010111110111111011101100110000101110100001 0100100110011011010010101111110000010000001001010110110100111101101101000111110111000000001110001110000000100111110111010100001010010000110001101101010011101101000001100011001110110101100111110100001001111011011000100010100011100010000100100000011110011011100000101010100100111101010111110110110000101001100010001101100010010010000010000011010100001010000100010110001100010000000011111001010001011011 0010110100000101110010111011011011110000110000110101011100101100000111110001000100010001001111110010011011111001011000001111011011110110100111001000101110010101000001001101010110100000000011010110110100101110011001111101001110101100100000000011001010110101000000100000111001100000011110011001101111000001111000100101010011100111010110110101001100010101001010110101100001000111100011111111110011000000 0110011110101011110100101010101001011111110001101111100001111011110101011011011110100011001011110110100010001000101101101010100000010010101010011001010000111001111001001001101101110010011110000100001000110111110110001001110111011000110110011110011100011010001100110000000010001011111000110111001010010111100101001100100110001011001100100101010111010101111100001111000000111010111001011111111100001101 1101010001101000000001011001000110001111010111011110100010110011100100001101001101010000001001000111011010001011100001001000000001010001011100001100111000011110011001000100101010101001111001111010101000000010010100101100100010110110010110000101000000110010111000110011011001110000010001001011111100111111110001000010001100001001101000100010010000111100000111011100101010111100000110101001001001010100 1101001111111101010110001111001001001010111001000011010100001000111011101111010000100110101010100010110100100001101000010011001010100100000110110110011001101100011011000010101110100010100101100111001111010011101100101110100010010101001011000100100100001001000001010101101100000001001100001000000110010110100111101001011001110101101001100000110101110011100100111001001111110011110111000000000100110110 1100101011110010101100010101110101101000110100110011100111001110001011001010110111001110011001100011101000100000010010000100001011000011001100000001110001100010010000001101000010110010010101110110010101110001010010010110101100000100001100000011000100001111100110001100101101100111011110110000011111111001110110000100101110011111100000100001000000011001000000010010100001100101100101001111001010110011 0000101111010100111010110100000101111001100100010001001010001001001011100000101100111110100100101100010111110101000001001111111110010101001000010010111000011101011010010110111111100110111010000110111010000111000111100000110111010011000010011000101010110101101000011100010010100111000100000010000101010001100001010001111001100000110001000001101110110001100001010000001000101100010000111011000100101110 0001101001100111100101010001011000111110011101110100001010001000000101111101111010111010010111011100111000110101100000100010100000101111010101010111110000100000000111001011010100110111101101101000010110101101100110011010100100001011100110001101000101100010001001011111010111001001001001101110100000011011111110001111111111011001011001101001001011011101110110111101100000011010001101001011010100001011 0001011101100011001001101011001111010000101000010001100000111001000011000001001001010001001100011110001100001111100001001100101010100111100110001111111000011100010111001111110100010100000101000010000101111010111010101011001001000111001001001111110000010010100010011011110001111100101100100111110001001001011011010010000010100100000011010011101101111101110100111001000010001010001101011110101111010001 1011110001010001110100101110010101110101011111110100010100111101110000111111110111111100011101011000110010000101100011011011000001000001000000110011111110110101011100100111110000111110000100101001100100100011001001100001111010000111010111001110010000010011001001100111110111000010100001100010001001101010000011011111011001000000000110110011010010111000111000111000000111000010011100111000001001111111 1011110110111100001001011000010001010001011011001101000010011101101011000001000001001010111110010111000001100010001101100000101011111000110111101111100101100010001010101011110010100011001101110110101110110001111001000101010110001110110000011010010101000101000001000001100011110101100001101110101000000011101100010000001110010101000100100000100010011101111000000111100000011111000100111110010100000111 1011010111001011111001001011100001110001010011101111100111101010110111100111000011000001110001101010000110001110010111100101111110001011111011110011001100000011011011111001111110100110011010101101101101100110111000010010001101110100101011001101101010000010110111011100011100100011111111001000000000111011001110111110110110111100111000101000100110101000110001110011010101010110100111101110100001100011 0110100110100001110010101001000010001011110000010111101101110111011001111010000100001000111110100000010110110011011000111101111001101100001011011101011011110111110101111011100011001010011100101110100011010000111001101110100011111001001111011110001010001100100001001011110101110101011000000101001011000100101001101010000000011000101011011010001010010110000110010110111010010000101111011111010101110111 1010100100001010001000110110100101110100111111100010001101100010100100101011100100011111010001010101101100111101010011111111001100001010000011110001110110001110011010011000010010110110101000111111100110101001000100111011111011111010100001011001011110001110111010000100011001001010111111100000010010000010001110000010101001111111011001111100001111001100111000001011001000100001000010111101111110100110 1011100100001010010011001010011010101110101111110100000000001001000100010010100110011110011111010001010100101111010010111000110110101011000101110010011010110111110010001000001001110011101001001110110110101001000101110100101011100100001011100011010110011101010100001011011110110110010011000011101111001111000101000111110100111000011111001000110101101110000011111110110001001011001100011010011000101010 1110111010101101101100011001011001110100011001011010010100101011111100000001000010101010001100110001010101111101000000110010000110000111111011100000101000010010001000010110001000100010100101011100101000111010101111001100000010001001110110110110010100001101100011100001011011110001110110101110100010010001100111100000001010111001001110101110011000100011000100010001111000000101101000111100000011110001 1001100011001000111011101110100011001110111110011000110000100100010101110111111110101111110111001100000100101100010010101100010100010100110110000001101000000110100011011110101001000011100110011101110000100010011110101110110100101110011010110101111010000110110101111000111111111111001001011110001111110001000101001111010010101010110011110010110111000011000101100011010110010111110111000110000000101010 0011100111101011011001101001110000010111001011110010010000100101111111111010011000010011100001001001010001011011110101000101011001010000011100000011100101010000001000100111010100001100010000000000110111101001101011000100001000110110111100010001011100011000101011110111110101101001110011000011101110100111010011111010000011111111001100101001111111011010111101101111001101010110011011110111100010000011 1111111100101101101011111000110110111100000001111111100001111110010011001101111000111000000001101000111001110101001110001111110111000011010101110001100001111000100010110001111000110001111000010001111000111110011010011100000111101101000010000111000111010100010101011110100100100100101010010010101101101011000111111100101000110101100101110111100100100110111001101100010001100000111011001101011000110010 0001000000010100111000000000111101011011110010010101100110100101001011000110100010011111010010101101000011000001111100011100011111001110111011111010100110111001100111110101101100101000111010111011001010000011000010110100110111110000100010111001111001001101000111101000010000111110010001001111011110010011100001001001000110100000110010010010110110100110000101100110101110100000011101100011110101001011 1010001001011110101111111000001001100110011010010001000000101111001010001110101110101010100010001111001010100000101101110101001011100101000101000001100000011011000011001011011011011100000011111011100000000010001101000010100001010101010011111101101110010110101000111010100001001000100000110011010000101100010110111011011101000010011100110010100111010011011011010010101100001000110000000001001010010001 1011101100111011110001001101110001010000000000110000001010100110001001000100110101011110100110011010010000010111000000100111000100111100110101101101101100100001101011111110100101100000111010101010011011111110101001001000011000110010111101001000011111110100011111101010110101010100001010010110111110111011101000111000111101001010011101010011011100001001011101100101011011111010110010000100010101000111 1011011001111110110000001000000001100011100001100100010101110110111111011011110001000010110001110011011001010000010001110010001101100010010111001001010010001111000001101100011101000101011010101100011010111110101111001100111000110010101000101100111101101010000000010101011011101011000110010011100001100100000000101000000111001001101111010000001110100110000110010111001111100100000011001100011100010100 0011010001000110001000111110110001100011110011001010001001100110000111000010110100001011001110100110101100010001101001110101100010100000101010001111111100111011101001011100011110000100100101001000111001000000101010011010100010111100110101001111011001010000101001111100111100010010111111110000110110001011101111111110110010011100100011010111010000100001010111111100111001010110111000100101001100001110 1101011010001100101101000011011101011111111010100100000000100000010111100100101001011011100100000011100001111100101001101000001110010011111100100010010101110100110110100001010111001101111010010001111010001101000110001100110000101101010010011000000001000011000000110111111011110110110110001111001011011000011010101111010110111110100101011001100100100100011100001001010001100010010100110000010110111010 0110110001010100000101110010011001111001010010111100010111011101111001111001100100110001010011011110001101001010011101111000000011111110101111001100010101001010110100111011000010010001011100111001100110010111110110011101100011011000000010101000000110110010111001000100010001010001010100001110111100010101001101110010101110100010000011111000110000111111111100010100001001001001001110110111100111000011 1111011010010010001100110001000010111000011011101110011001010010010100101110100001101100111010111110100011010010111010100010011010100000100101001011111100111100111100110100001001111011011101010111100100101000100101010110100111100001000000001010111101100100101011010001101111011011010110011101011101001101001011000011100101110110111101011110111001010101010110110000011010001100101010110000010100111111 1001000111010011010100001001110010001010110001000001000101111100110101100110101101000110000010010001100110001100100011000111000001011100100100011010000100100010011011011110101000101111100100010110010111110101100001011001100011001111101010100111010111111101111101101001100001000001100010111100101000010110010100100100000101101101000100010001000111111110101110000111011001100101010000101110000000110101 0001100011100001000111001001010100000011010001010001011101110001101100110010100001010010001110100010001010011111100110101100011001110011001101011010101011100010001000000011000011101111011110101110111111010000001100000000001011011001010101100000110000011110001010101100010100101000011111010000000010110001011010000101001101100000100110101010110000000000101001010011001010010001111010110001101110011000 0011110001001101100111111001001111111111111000110011101100011101100001001100010010010000111100100110110010110011111111111110011011100001101111011101101111101101010001011001010110111111001100100111101011101100100010000100110100011001111110010010110110011111111001100101010001110011001001010111101111101110100101010100100001011000000111111000001011010100110110010010110100101101010010011010111001111110 0010101000001001000011100100101000110101110001011001100101100010011011111011011110010001000001101101100110010001111011111010100000101110001010100100101101010010001100010000110111001000110100011001111100110001100110100001111110111111011101100000100110000111100000010010101001011101001110001101001110010010101000011011001110110000100101001001000111101000110011110101101100110000100110111101000001001110 0010011100110001110001000111111111110100000010010000111010101101001001000100100010011111111011001001010001010001100110011011110111010111100111001100011101000101010011001000110110100110100010101100010010001111000100101101100000101101001100100011001011011100000111001000000011010010011001000101101111100011001011000011110001001000100110111101000111010101011000111001000100000011001010111001010110100011 0010000110010100100101111110010110010001011011010111110110000001010000000101010000011111011101100010100001001110001011010011101101111000011011000101001010100111101111011001001011000011101111101110011110011110011000111110011010100001111000011111101110110110011101111011001110101000101101100101101001011011011110000111101010010011000111111110010100110010101011110110001001101111111011011001000000011100 1011000010011001001100100101011000111110110001000011100011000111010010101000101111111111001111001110110100110110000001011110110000001000110000010011011100101101111100000000111000001010010010111011111010001001110111000100000110000001010001110011110101001001111011010100010001110100010110010100011001110110011110111100111111011101100011011111010010011111110111001110101100100010110000000100010010101111 1010101111011110101000011011100010011010110001111110000100111110001010111011011011101010111011101101111010111101101100000000011110100111011011111110101100100100111010000000000111010100000011001110101000010101001001010001010111000110101011000010110100100010001010010011111000011001001110110110101110000110110010010011010010011101111100001100110100000010110000111010010100010111110011000100011011100011 0000101111011101101101000010100100100010100010110000001010110110010001010000100011000100011110111101110001011101101101001000001101101110111001100010111010001001101010111100100011001001101001110011110011000110111100100110110110000001000011010010101010100100000100011010111101111011000001111100100110101000100110000010101010001101011000011010011011100000101110000010001111110000001000100100001100111110 1001110100011000000000110001101011101101011110101110011101101010111001100011001000001000000100101001111100010110011101111000100000001001001110111101110100010111010001011010100101011000000101101010100010101110001110110010000101111001001001001001100111000010110001001101001110110111001001100110011100111000000111010011101101101101110110010101101100111100111111001000001000010010101001110000110111100011 1111001001010010000100110011110000101000100111110011011110000101101101110011111111111001100111100011111000100111001101110101000110001000110110000001111111011100101100010111011100000110011101010011001110011000000010000111010111110000100010011111101000010110111110111011110111000011001100011100001011111001011010110101101011100010011011101001110110100011011100110110001100000000000000001001110110010000 0100101000100101111011011111011000111010101110100000110110101010001100100001011000010000110011111101110001011000111111110000110111001010000110100111011111010111010111011100110001110101010100001101100011001110010001001011100011011010111111111010001011110011000011100001001100101100101100101110011101100001010010011000001011101000001000111001010011010010010110101110010111011010010101100001001110100001 0110111101111111101110100110011100000101111001000010011100000100011110000110111000010110001100110111001010110001100000011011101010001111011101101010011100001101000010000111001111110001010011001000111010000001011101101110010001001110111110100010110110011010110111001001011110000001010001000111110101011110001111011101010000001001010100010001110011100110100010011000100111001000111110001001011010001000 0101100011001000101111100011000110101000000010101100011010100000110001111101101110010011010011100010010110000001001111000000100110100100100010001110010100001100010011100110001010001101111101010101101010101101010010001101110001000101111001000111111100001011001010000011001101110111101010001001000110010011110111000110110000111010010110001000010101110101011010011110000000101111100101010111001001101000 0010010111000101101000110110011110101110110100100110100101010000000011110110110010100000101010000011001011101110011110111111110010101101111101001101101010011110100101000001010100011101110110110111110000000110110100101001000010110011100010100111000011101100001010011010000110001111011110000000000010101001011010101100010000001111000010001010010100010100100110101111010111110001011001111101100101011111 1001111111001111110000000100111010000011001010111100010010011111000000101101111111011111011110101010101100000110000001110001000110010101000101010101010011001000101100110001101110110010010000011011010110010100001110010101010001111101101011010000001100001000001110000110101101101100100010000111001000100110101010100101001001101001000001111111101100010000000011100011001100101100001100101110001110011011 1110111100110110111000001001001011100000011111000101111010010110111101100111110110111011001100011011100110011110000000001110101001101100011001101101000010001010001011111111011001010011100100110101111010011110010010111110100111110000110010001111001100011100001101010001001111111101100000010100000001001100010110000001011100000000110101100111101011000100110000110111001101101110000100001001001101101110 1110100111111101100000101001000110100001011100000000111101101010010100110000110000001000010100101100110101110100100011100111101101011110110100100001101110010010110001010000111101010111001110111110111110001101011001101101010010111001010111100100111001010011110000110101000011010100100011001110001110100111100100011101000111101101110101000010011000001011011011111100001111010110000110010110011110100001 1111111010010111110110000001111110010000010110011010100010011100010000111011000100001101000010010110010001010010011100010100000001010001101101001000111111110010011100001010111101111000010111111010111000110000011110000011011110111001110111101100011111100010000101110111011100110011110100110001100011100101100101100111110011100110000111110010010100110000010010100010100101011100000011011010110010011101 0011110000001000101110001111010101011000001100010101001001111110111000010100011110110000001101000011011110010111010001001010010110111010100111011001000110011011000110110110001010101100001111011001110101001100111110111001100110110100100101011110000010101000111101010010101001101001010000010101111110011100011010101111010110011110110010100011011101110010000110111110000000000001001101101101010110001100 1001000111000111011101011011110111110001100100100011110100011111011110001111100000000100010100111111011010100010101000101100101011011000111001110001110100001100010000000010110100011111100110010100001111010110000000100010011111000101001000100100111000111101101001010000001111110101000001110011000010100100100010001000010100000011111101001011100001100011100101001101111111001001110000101001101110110001 1000010000101011110101000010100101111010110111011111111101111011000111011111010000001110010000001100010100010001010001111001000000110100011010001100011011110000001000111100100100001101100010101111101001100010111011000000100100010100010100010001011001100110001001001101001100101111000011101111101110100010111011101011010011001010101011111101100010111100100110100111111100000001000101111110001110101100 1010111111110000101110010111111110100111110000100101101001001000111100111000010001101101001110010100001110100001111011100001001110011110100101000100001101000000010010111110000000101001101110001000010000101010111000111010000001110000111111001010001000001101100111101001110011110101100000001001110110011100010111010010001011100001100001100110001000011111011110011011011011100101111111110001000001111011 0111101011011011010000110100110000011110101111110101100111100010000000001100100001000101100110111011010111100110011100011011101100000100011110001010001000001001010110110111110001111001101011111010000111001011001110101000100101100110001110011011101011000101000010000100001101011010111100110110111011101111110110010100100101010110010101110110101001110101100001111011100101001010101001110000001011111010 0100101111001001001010011000000101111001011001001001101111101011011110101101000100101101110111001011000010011010111101010001110010000110000111010110001111010111100010101011101001000111110100100010101011010001010011100001100000101000100000100100101010001101101110011001011010000111011101001110110100111100111101110011100111000010001100110011000010011000000100101000001111100001000101011110001010000001 1100001011001111000100111111101000001101110101100001101010000111111100111010100101001010011110000101001011001000001101101010111111111001011101001111001010110011000110111001001000101001110111101000111010010111101000101111111000110110000100000111011010110011111110011111011111011000011100011000010101100111110000100000011001011110010011101100011110111100101001100101011101110011000111000011011011111111 0010001000101000100011100010100101101011000000100111011111100110001010100000111110111111011011001011000100110000100101011010111110110101111101000011011000011000011111011111101100011010111010100011100111101001110010011110001111011000010010110100110000011000011001000111101000000101000001101110001001100101101100101101000101101100011001001001000010001100000111110000001011110011011010101110010000011011 1011010011110000001110101000110001111000001001000010001011101101010111010101101000100111011110010111100000110000001100001011110011111001011000110010011011010100011101111101110100010101111110000110100111010011111011110010010001011000111001010001010000101000010110000000101001011110101110010101111000010001011100101000110011000010010000110000101101011000100001001110110111101111010000010110100011100111 1101111100001010100100011011110100001010100010000010010010000000011100110101011011111100011100101110111001001111011000001111100110000110010000011000011111100110111101111100010010010000011110100100100011100100110010110011001110001111110110010011110001111111110101011101001010111001101011100011010100100100010111100110000000010100011001110101110000011000111100010000111111111100011111010001100101011110 0101100100100101000111000011101011110000000101010110100010001011111111010011011000100001100110010010111100111111110100000100110000100101111100100000111011100001010110011101011011010000001101001110100001101110001110111001110100100000001011000111010111110011111010011010111100000000101110100000010100001100000111010001111001000000000101100001011000110000101011101110100000010110001110111011110100011000 0111010010010100110011011110010010010010010101100111000011000111010000101001101101110001110100000111010111011010101111000010100011101010011110110100111010001101001101100001111000111100000101101001111101001101100110100100011111100010110100001101100011101100111100000011001000001101100000000011111010001111000100001001101101101100001111111000101110000010100000010111010001010000101011111100101111000000 1011010011100010100101000011001001100101000110111011101000100001011000000100110110001100110101110000111010010100111010111000011001001000110111010101010000110111111001110111011110011011101011110110001011111110001110001011110011101101010101111111111111001111001100011011111110001010100111010011100100111101011010001100110110100110000100101110001011011111100111110000011100000110100001101000111010011011 1100101100101011100011110110100111010010000111101011000011000100000000111000101001100001010001001011011010101111000101000001001000110111110011010101100101011001101010110000100000000001101100011111011010100011111010001100011010000010000000101110100010110100110100111110011110110000001110100101101101000001110110011101001010101110001000111001000000010111100000011011001111110100101111011000010010001111 0101111000010000010010010001110001011011000111010000010110010111101110010100011000000000101000101100110110111011100011001010001100011001010010001101101000010000001101000001001010110101010111010110000010000110111110100101101000111011010110110010100000011100011011001110101000111101101110101000001111110111001000100101000110000001001011100011011111110101100100000111100010100100011011111100111111101011 1100100010111010101100111101100010001111011111000110110110110000001101101000010100100001101110111101001111011000111011111110110101110010110000111010000001110111010101001000101100010011110100011011011001010001001001111110000010110110010011101000111000111010100011100001010111010001100001110010100100101010010011111100101011001011011001010010100001001011000000010101001110100011010010011010011000100110 0111110100100100000110111101001111000101001010010100000000100100110010011100000101110001011111001011101001000111110111000110111001101101010100111011111000000100100110010101000000001000011111011010101111010011000110100010001111101101101010001110111001101111011101100010111101011010001110101110100001101101010001000011000001011000001101101000010000010100011010001111101110110100111111101000000011110110 1111101100001110100000001111100110010111011000100110100100011101100100110001000010011000101001101001110001110010100001001100111000110100111000011101001000001100001101100010101000111111011001110111111101010011110010111111110010100111101111111010100000011101000101110111001100101110110001101000001010111100001000101101011110111001000010010111011011111010100000110000001010010110001000000010110101100111 0100001001011111111100111101101111110110100001110010010010001110100100001111001110010100111110101111101011010000111001101011001000001111110100000011101000111001101001100100011111110001010011010101110010011101001110000001111101011110011110110000110011010011110011010010100001001010111111101100110110011001010111101000110100000001011000101000010011001010001111010101101010101111011100111010010000101010 0111000010111010010000010010001111111001101100111001100100110010001100011010100100000010010010000100101111011101011001111010010100110000001110101111111111011011010101111101000010111001000011000111100011101011100001111111111011111011110010010001011101001100100101011110010011111110011000101010100010000111010100000000111110101101011010111010101100000101100001111010110111110101110001110011011111111001 1110101000101100010101010101010100111111101100101100011001111111010101110111100000001010111000001001110001000001111100111010110101100101111111100101101100011110111111011101011010000110101011100000100000100111101101101001111001110111100001111101100110100001110011101010110110100100011101010001010000111001111101110101010001110110101011000111011111011111001100001101010100111001011100011001101010011010 0010101100101000100100011011001010110111000100111110001000010101110110100001000000100010011111101011100010110000100111001001000011001010000000110101011111100000000000100001010010110110010100111000001101010110011101101010111000000111010011010000010001111011111100001010110001001001101110101010111110010011011110011000000010000001010001011011101110111010111110110100000000010111101001110010101000101111 0111100101011010000110100010110011100000011001000001100011101110001011010100100001010101100101011101011100001101100011010011010001010000010001101010011010110101000001010100101000100010001110101001010111111011100110100000111110111000001001010111010000011011001001001100011001111101101110100000100101000000000001100001011010111000010011010111001011101011100011110101010000101011111101100010110111110100 0111110100000110101110000010000010011100010100111000101000001111110110011100010001010110011010000111011110111100010011000110100111011001001000000000101001010100011111011000101111110111010010101110011110111100111010110010111010010011110100101111101010011000001110011011111000001110011101100111101111101100100110010001010110100110010111101101000110010001100010010000101010100101110101000001011100011010 1000010100110010100111100111110111100011000111100010111000110011111010010101001011010001010001100001011000110110100010000011011101111100100111010111001101010100000000100111100010010001100001100101110011110011101110110100011000110110111110010011101000111010011011101000111110001100010011001100110110001001010101011001010010101111000000011111100001111101101010001111011000011100110000010110110110000100 1100110000100110101110010001000011001010111111000010100101100011000110100011001010110111111000011100011001010011000111001100100010111001011100110000111010010101101100101111101010111101011001100101000001000001101111001111100000011011011110000011100000111111011010111010001001111001110010011011101110101011011101001110000011000010111101000110111000100001011100001100110100000110001100111011001011100101 1010110000101111110011000111111001001110001011100111011110100101001111011000101000010100010001010011011100100011001010101011000001000011100001101001001100110001100010111011000111011110010110011011100101100101110110111011110101001101010101110101001000101101010101000011111111001100010111001100110010000111111011110001010100110011111011010001001101110110100100110101111000110101111011011111100100110000 1001100101001000001000100111000011110111110101101110111001100101101110111011001110100110011111100111000100010101100001101011110000011111001001110101111110101010000101111000010010111101001110111011111110010011100010011010111101011111111110000011011101110101101000100111001111110101000100001110000101011101110100001011110110101110111100101010101111100011100000101101001101011010111101010100010010100101 0011010110001010001110001100000011010111000001101001001101101100001000101001011001100010000111010011111111110110111010010001110010010110010001011101111011100100110010100110100010001000100000000000111000110001111101110011101110010100001110100111110111110011111110111011011111110011011100001010110100111111001011101101011111100111000100001010000100000101101001101110101100110101110101011000001110100111 1000100001010100101011111101110011101011010100101010001001001000011011001111000001100100000101101010101100011010101111110111011011010111000010110101100111111011111010101110111000011111010100011011111101011000100001100111101100011000000100101011100101111100000101100010111010000111101100001011001111000001001100011101011000110011001001001110011010011111010110111000011111011011001001110101111001001001 0000010011100011010101110100000000001110000111011100010000011101000000100111010111001101110000110010100011011100010001111100110110110001011000101011010001111110001110010001000110100100110110101111101111000111101100101000111100101011111100001010011110010100111111011010101000000101111011101001010111100000110100011100110101011110100110011010111101011111011001101000011001010010000100010011000111001001 0110111100101001010111010001000010110100011000101000001010000110111010010010010001001000110110110110100011110000101101001110010111101100011001101101000000110101110100011010001000100101110110111010111011001101010110110111010111101010000110111000011010000110110011000111110001100010110100010010011101011101000110000101110111111111000011101000111010011001010011100010110101010100001110100111111101110001 0010010110000110101111000110011101010010010000000000100010100111001101100000011111110010000011110111001011011111001110000000100010011110011101011110011110111000000001001100010010011110111101000110000011001101110010001111111001101001011000010000100111100100110011000101010011000101000000111010011111000111000000110100111010110001110111010101110011101111010010111001001010000111110000010001100101101100 0000110000001001100111011001001101101100001111101011111011110000010001011100111011011110010010101111101100111110000011011100111111100011110000010110100100010101001001010101101001100011110010011111111010010010110000101000000101010101011100010011010011001011010100110110011110111000011111001101100010010011001010111010111001011111111010101101100000111101010111100101111110011001011101001011101000100110 0101101111101110010001001100101000101001100000100000101011111111011001000010001100000100010000010100011110001000110011100011111101110011001010000111110110100110100101110100010000110110000100101010110011111011011010100101010011110010000001110001110110010110001111101110101000000101010100100011001101111101011111100111100101010001011001100100010100101010111001111100010110000111100010000101011001011000 1001100110001111011111101111101000111111100100101010011101010000011101100100011000110111101010010110001001011100111111000100011011000011100000011011110011100101110100101111110011010010101001000101111010100100110011110111010111111100011101000010000101010100101011110000110110101101001010110101000101111111111101111010101100010100110100110101100111000010001111110011101010101011011101010010110110001111 0101100101000110101101000111011111100111000001100001011110011010001011010010100001110101010010001000110000000011110001100100010100110011010111001111000011011011110110110101101110001101001101010001110000010001011101111010011010101011101011101010100011000110100110000001011111010011111111110001101001101100100101110110010100110111100111010011110001011100101000110100001001000101101000000001000001100011
cTrader AlgocTrader

cTrader用ツールちょっとだけアップデート

3/19/2021

4年以上前の記事です。内容が古くなっている可能性があります。

SubChart

変更点

パラメータを追加しました。SeparateAreaEqualityをYesにすると、常に均等分割表示されるようになりサブチャートのサイズ変更ができなくなります。ウィンドウサイズ変更時、区切り位置がずれてしまう問題を防ぐためのものです。

・バグ修正。直近表示(右側が空いてる状態)からのチャートスクロール時にサブチャートの区切り位置がずれてしまう問題を修正しました。

 

ダウンロード

[dl i] SubChart_ver08 [/dl]

 

LineAlert

変更点

・アラートと同時にチャート全体に色を付けるようにしました。同時に色を消すためのリセットボタンを(アラート時のみ)右下に配置しました。

・SoundFileを空白にしておくと音を鳴らさずに、チャート色だけが変わるようにしました。

ちなみにScribblerの方に簡易アラート機能を追加する予定があり、ajinoriが使用するアラートツールはそっちに変更するつもりです。cTrader4.0以上でチャート上にライン描くならScribblerお勧めです。

なのでLineAlertはこれ以上のアップデートの予定はありません。ソースコードついてるので自分でいじれる人は好き勝手に自分仕様に改造しちゃってください。

 

ダウンロード

[dl i] LineAlert_ver11 [/dl]

 

 

P.S

どちらも自己都合による些細なアップデートです。一応なんでアップデートしたか説明。

 

こんな風に使ってます

ajinoriはいろんな種類の通貨ペアをトレードするため、監視するチャートの数も結構なものになります。

基本的に「全部のチャートにライン引いたらLineAlert仕掛けて放置」としてるんですが、「Alertが出てもどのチャートでアラートが出たのかわかりにくい」という問題がありました。

ポップアップ機能つければいいのですが、Alertがかぶることもありますし、時間帯によっては無視したいこともあるため、いちいちポップアップが出るのもうっとうしそうです。

そんなわけで運用を少し変えました。今までは常にSingle-ChartModeだったのですが、ライン引き終わったらF2キーでMulti-ChartModeに切り替えておくことにしたのです。

で、アラートが鳴ったら色がついたチャートをクリックしてF2キーでSingle-ChartModeに切り替えて確認、ということができるようにしました。

SubChartでは表示モード切り替え時に区切り位置がどうしてもずれてしまうので、それを防ぐために等分割固定モードを導入しました。(SubChartは本当はちゃんとオブジェクト描けるようにしたいんですけどね。手間がかかりそうなのでもう少しお待ちください。)

 

 

おまけ

とはいっても、アラートツールにはやっぱりポップアップが欲しいという人の方が多いでしょう。

アクセス権限なしでは無理なのですが、アクセス権限さえとってしまえば簡単にポップアップを表示できるcAlgo用パッケージがありましたので、それを組み込んだものを置いておきます。

AccessRights.FullAccessをとりますので起動時にアラートウィンドウが出ます。使用しているパッケージは信頼できるものと考えていますが、気になる方は使用を控えてください。

あとパッケージそのまま取り込んでるため、ファイルがめちゃくちゃ重たいです。まさかの16MB!!それでもかまわない方だけダウンロードどうぞ。

[dl i] LineAlert_popup [/dl]

ついでにこっちも。

[dl i] MTF_Stochastics_popup [/dl]

 

ちなみに、利用してるパッケージはcAlgo.API.Alertというものです。

https://www.nuget.org/packages/cAlgo.API.Alert/

NuGetから導入可能ですので興味ある方は自分で組み込んでみるのもいいかもしれません。なお、事前にターゲットフレームワークを.Net Framework4.0から4.5以上に変更する必要がありますのでそこだけご注意を。

ソースコード見比べてもらうとわかりますが、ポップアップ出すだけなら本当に簡単です。今回使った機能は簡単なポップアップだけですが、結構いろんな機能があるみたいなので使いこなしたら面白そうですね。


まだコメントはありません

新しいコメント

コメントは承認後に公開されます。承認まで次のコメントは投稿できません。

cTrader's Life

© 2025 ajinori