1011011101110010101010010101111111011100010000000110010101100001101010011100011001110011111011000000010110100100000101010010111010000001101110000111000001111011011100100000011110011101001011100101111000101110001000111001000000011111011110111001000100001010011011101011101100100010000000100110000001110000100101001101001000101100000011000011010110110011110100100000111100111110100111011001100001011110 0001100011100011011011001011111111011100100011001100111101000000001010010010010001010101011010000010111111101100011110111000010010001110010100101111100001000100111011110101010001101000001100101010000010100111000100011011000100110010100010011100111001001000100000000000011010010001111000000110101010011101011101111001000010111011011000000101101110010001100010001000011111110001110010101001100000000100 0011100010110110101001000001001001111100100110011101001010110110111010111110001100000000101100001010110010111111011101001011001001100110101011001110000010111010100011001111111101001001011100011010101001101101010011100011011000110011111110010001010111001000011000010000011010101001101100000010010100110001101011110011100101000101100010001110010001001010110011000011000100110010110000001111110000111010 1011110001001000100100100110000000001100110000111010101000101011000011111000101100111000001100101100010100110011011101000010011100001110100100110111101100100101010110111101111111001001101110111100011001011100100110000110011101000010100101110010001001100101101010001101001100100011011101100010010010110001000101111001100010000000111101110110100101000100110110001101100100001100110100110001000001001101 1110111111110011001000101100011011001001101111010110111000110111001010100111101100010100000110011100100010011110000000111001010000111010001100010110001010110111110110100111001010110111010111100111000000000001100100011110000000011011100111001010111110100011011100111110001011110111101010011011001111110111100110110110000110100111100100011001101110011000011100001111100111001000111100110011000101110011 0001101110100000100001100001110100111111000110001000110000010010001011100101001000000111101101000101111111100001111100001101001011000000010100100111010100111101111010100010101011011110101001010001101111111110000000011100110111001101101001100101010001010011001000000000001011010100111010011000011011110111111101111110011100100011110101100110001000011001010000001010011001110010001011000011000111001101 0011100100000110000100100011011110111101011110000101001010110110000110010101011101110110110100001000000111110001000011111011011011110110100000111110001010010011111101110100011010011101101110011100100110100101101101111101100011110000000010000100110110100111001111101111111001010001100000101110110101011100100101000000011011000100110110011011000101100100000100111101110000111010001011101010111100101110 0011101101111011100000111001111011110111110001111101101010110110010100101111100000000111101000100010110001100000110111111110100001001010011010010010001010001011000011100000011110100011101001100101110100100001011010011111011100101111011010110000111101000011011100000100011111111100001100110100010001001101010100110101010000001011010000100000101100111110011101110011100000001001011100110011000010011010 0011110001001001100011110001100010100001000111010101111100100101011001010110100110000001010100011011101000001000011010111111011001110000000000101000000010100101100001111000100001101110101000011100111111011100011110010000000110110100001110100000111001001110010100101001110100111111110011000001011110011001110011110100010000010101100111101010100000111100101011000000011010110100001100011110101101111000 1110010101100001000110111011000100011011000000111000011010000111111100010111000011011110111111001000101011101000100001001010011011100010000100101010101110000111010100010110010101111110111010100110101010011000011001001011010101101000111000111101111010101001010010001001010000111000011011010011011001101001001110010011011001100100011000100101101001000110010010111111011111011101111101001011001000110111 1010011110001010101110001110010000100111011011101000010000000101100001100010000010011100101000101110111001001101000101110011000001001010000111101000001010010100001010001000110011110001111101010010011001001011100000110110110001011101100111000001100100100010100111111101001011010100001100110101010001100010001001101000100111001101000001011011010100011100000100010010000111001011011000001010011001111011 1110000011011111111111000011111001011111110000011011010101011011110000101001011011100111010110100110010010101011111000110011011011111000010100110010001100110001101110111010111110101111100000111010101100110111111101000011101010111011100001011011000110101011100000101000001001100110000000101100001110001111001111110010110001011111001111001111001000010100011011000011100110100111110111111010011101111011 1001000000001001000111111101101100110110010110011000110010101100101000110011101110111111111010010000000011011101111000010111100111011010011101111010010010100101111111011000101110000111000011011001011011100011001101110011100011100000001010110100101111001011000010110011000010111010011000101110011100011111000101010011101100111111011111111010000101100001010111100011010100010010001001111011100111111110 0010101000000110000110111001100001011111011001011011010011100100101010000010100111101000100110010001010011100011011100011110100001100000011010101111100011011010001101110110010101010011100010110101010001001100010000010010111000000010101001001001111110110110011111010001010111111010101000100110011100110001101011010000001111011111110111100001011010100110011011111100011111001100100000100010001001111101 0101000010011100101001100011111010101111010000100110010101000001100111100111100001110111101110010100110001000000111100010000111001101101101001110000000101111001111101101010101000111111111111110101101001011011111110101101100000011000000011001100000110010111001100111100011100000001000111100000101100101001010000101101010110110101010010110110011101001110011000000011110010101110001000011111010000110101 0000101101101101011011111001011101110111011111100101101111110011111010001101010100011010001110000011110000110100111110110001001110111101111110011000011100010010000110011110001010011111000000010011000111011000001010011101011110001011111011000001101000110011011010100110011111010011010100111000111011101100101011001010001101011111010101100000111001111011110010110011001101010110101010101101001111100111 1111010101001000010110001110010110111000000110011110011111111000101010010101110011010000101110001010101110100011111001110110001010110100010101111101000011001001010101110001110111101000101111111001011110010101010111001110011100100100100000011010100110100000000011111000100000010100110101101010001110110000110010011011101110001010111001110111000010010111010100101110001000101010101010100011101010100001 1100101010001000100100010111000010111111001110000010101011111001010110110101000100110100111010010010110010001010101010101101001010100001000010111100010110101010111010000111011101011110010101111011011010110111000101011110011011010011110010001001011100101100001011000010100101011110011001111101110001000000110101101010100100001010010110101000011101010000100111010000000011111010111011101101101000110101 0011111100111010010000100011001011011111001000011110010011100010110001110100000001110101011011101001101011011100001000101001001111010100110001011000010010011101110010100110101010001111010001111111110001110001011101100001111011011100100110101101100001010011001110011001111110011110010101001011000101111110011111000100001101111000011010001001101010011110000100100111111000010000100101010100011000111000 1011000111000001110110101011101101000101100101111000111101100111111101110101110010110010010011111100011111010110011111011011010010010010101001011011001011010101111010001010100101011011100010010010010010011011101001000010010010001001100100110110001000111001000000010110001111011110100001100100110001111111011000011010100110111111100110111011011011001101110101011010100001000010100111001010100010101111 1111001000110110000001100001000010100111110000000101110111110111001000000000010110111101100010010011011011111110101011111110111101110001010101110000000011101111101111101010001100111111010110110110100000011010110011110111001111000000100111101000000101011011000101000001110100101011000100010000011101111011011110010111000011101011100110010101010110000011100010010110010000001000101110101000110100011000 1100010001011001001111110011010100100111111100101100000111011110001110000101111011000001000101001011100000001100111010000110100010110110101010011110010011011100100101010000101010110000101011010111111010110110100011000010000110011010100101001001011001101010010011110010001100010001101110001010101101010100000101001111111011110000000000000010100110100011011110011111111100111011011010101001111011111001 1111101001101101110101111010010001010010100001100010110001110000100011001011000111001101111110010011110111110100001011000110000100010011110110000110000010011101011001010100010001101100011111000101110111001001101010011110100111101110001010101000001110110110110000110011110000101011100100101110110111111100011110101011101001001011000000000000100010111011000010010101110010101000100010010101010101110000 1010110111110111111100110110110101001110010001011100000100100100101100000010010100011001000000101111100100010000111001011011110011011111011101111100010100101001010111111001010100011100100011111110110101101110011010101100111001111100110011111000010111011111001010000010101011100111101000001000110110100000001001000000100111001101101011101101110000001100101001111011110010011001011001101001100000111110 0101010101011001000111000111111001101111001100111110110000110011010111100101110001010010001101111010000100011010111000100010011011100000101111111111011000101101110000001100100110111011001100110101111000001110010001101011110011001110101110111001111100000000101111000101110011110001110110010110010010111011110101111100010110101100100110100101001110010101101110011010111100000011111011011111011000011011 0000110000000001111010101011100010011011001110001101011110111001011010000000111100111110100100111100101100111010110111111101100100010011001111001001010010000000110100110110110101100101000010011010010100101000000010001011011111110001101001000101111010010000101101010000001111111111011100000011111011000001001011111000101100111011100010100101101010111111000000100100101000101000010110010001010100010101 1001100111011000000011001011110000011001001100011000100110111101111011001011101011000001010111101111000111000011000000101110101011110000110001110100101111000011010111110011000001110100000001000100100001011010011000000011100000010000011001001010110001100000011011100100001110110100010010000111100000110111001000100111011110110110100110100001001110001100001000010010001100100010110110001000011011101111 0100001110111111101001111101000110011111011110100010110010010111011000001010011110100110000001000110101011111111111100110000010101000011111010110110100011000100110011010001011110010001000001101011000001001110110100010100100101011100111010001001111100010100010011010000001101011101011110011010100111110101011101010100101000101000100101011011110101100110011100000001110001101001111100110101011010000101 0000100010111110000000110001110101101010010110100110000110011110100101010000011101100011000000000111010011111010011011100010101000011111110100000101011111111101100000110010001000110100110001110000011000001101001110111110000010111100111000100011110101110000010000111011110000001111010010011111111001100111010101110111110101001111011100110011111100110101111010110101000010111010011010111000010011000101 1110011100100110010100111011000111000011010111110011001011111011111111001000101101000001110000100001011101110000111101111010110100011000001101001110111000000111110000111101011001101000011000001111001011010001000011111011011001010110111010101010100011110101011111111010101000001000110110011111011101100111000011011000110010000111101110000011101111011011100000111111001110001011000110001001111101000110 0000010011111011000101101001101111110000100000010100101110101010100000010100010101101010011001010000100110000110110111001000000010010110011100100101010001000111111001001101111001010101111101011110101011001010010011000011010101110110001101110000111010000110100111101100100010100000000110000000100000011110011001000000010110011011100111011011011111011101011101111000001010111011000000101110010001110111 0100010010000111111001001110111010001000101100000100011100011010100101110010101101111000111100010000001010010001011101011010101000101110010110000010111000100100110110000110011000001101011010010010111111000001011000111010000110110111000111101011000111100011110000110110111010010011101111101000101101001100100111010010000000101100111001111010111111101110101000001101001000111011001001101101010101101000 0010010101111100000111110111110000010101111100100110010001011010011110000001111000111011011100011101100000100111101111001011111101111010111000110101001110001111100001111001000100110010110010011100111110110110000110000101001100010000111000000001010100010100110111111001001010010100101000010111100111101011111001011110010110001110001111010110010000011001001010000111000111011000101101011101000110000011 0110001010110110110110001100001101010001011101101101100010010100010111100111100110001001010100111110110011011001101110000010000110001110010101010101011101101101000011101110100101101011011001111010001010011110001110101100100110101001110111010001100101100000000000111011000101011110000010101001001000001000011111111101000101100001000101000100010010001011011111000100110001011001110110101010111101000000 0111011010101001000111001001110101010110011010111001001110100010101001100111100000110101100100000001100101110100110011011000001110000100100101010011010001001011001011100110101101000110000010011011100110000101010001011001000100100110010011011000101000111010000101001110001000111111110110001010011000000111010100010000111010011001001000101000000010010000101101101000101110001011110010001001011001110011 0011111100010000110000110001100101101101001111000010111000101000100110000111010110100101101111000111101111111100101000100011101100001100011111111011010011100101011011110011100110000001111101111010010101010111100111000111001001011110011101010001010001111101101111110100011100111000011011111111111100010110100010100110110110110100011001000101001110110011101001110001110111000110110011000100001110100100 0000100010101100101110000000010100010100111011101111001110100110101110011101111101001111010010001110101100100000010010000011111110001000111110100101011000111100010011110000000111010010110001110011100001001100011100010000110111010001010100111110001110110100100001101100100111101110001111110100100110101010010010101010010011100111110010010101011100100000101000011100100001100001000101011010101010100111 1000110001001011101100110110010011111101110100011001010110011101001111000000101111110001010010111110111010000010000111100010110010000110000011010110011100100010110110111110000011100001001100000010100011010100110001011010010001001011101010001100010111010000100001111010010000101101011011011110000000000000111000111111001111011110000101110111001011111111010000010101010011110011011000100111010000000001 1110001110110100111111101001110100111111110111001101111111100101101110000011011100001100000001111000101010100101100110111010011001110000000101000000001110110101101110001010011110100110100101010110111100111110010101000011001000010011011001011111100111100110110001000101000110110010111110101001100010100001100011010000110011111110101100001110100010101000111110000100011000101010111010010110111000111011 1011100100110111110000001110110101111100110010110101000101101000010111001000001001101100101001011010001010100001110000010100001101101000001101110011111000111011111001010010100010011011001011001011100010011001100101000011010010000001111010011111000000101010011100010000110100110101000000100101101011001101011100101001010001100100101001011101101110001110000100101111001010010011000111010100110100100010 0010001101111100110001011111111100111100010011010011111011111111000010101000000111011101101001101110110100111010110000000110100100010010100100001101001110110100110100111110010111111110001101010110100000111101111110101001111100000000101111010101110110101000000000001100010010100000100110100100111111100001000010111010101101101001010011010001000110010111011110011101101000111011101010100111000110100110 1001111111010100101110111001000101110100010111010111101101011111000000110100011101100100010011000001000001100110010111100110000010101011001101101000101101001000001110111110010101010001011011110011000111100100001101001010111100111010010000100110111011011111110111001101101010001100000101101000011111001011101111101111001001110010011100011111111101000011010101101010101111001001010110111001101010111101 1111000000011011001011011110011111010010000101010110010001111010100010000111111010011010101010100010111101001011101000110100001011000110111111000001101010011011110101110010101101110010011001101011011101100100110000110110010110010111010000000100000001000001010000001011101111100111101100101010011100000100111111101101110010111100010001110101010110010001011111111100100110101000000100101010110110010001 0110010001001110110100001001110110001001100001110001101011100001110100100101111011000111001110000100111101011001101011101111010001010110100001010010101100101101111101101110010111010100011110111010011100111100000110000001110111000110111101010111001110111011001011100111101101110101110001000100111001000010011111101000011110110110000000110110101110111111110001111100010111001101001001111000110101111100 1100001100110110110110010001000011010110010100011111111010011001010010001000000100001001000000010111001111011111001011010000100100110100100101111011011110001100110001100100000110110011101110100001101101100011101111010110110111111000001011001011111111011111101010000011011110110111011000010011111110100110101110001001000000101100100000111110011111111010100100011111000100111100010101010101011111110100 1011010110010001110100100010010111000010101011111101111011110010001011110100100111100100101111010001001000001001101000001001010111001000110111100101110110001101001010100110011100100111100001100110011001010000010010001000011100000110101010001110101100111100101010100000000111000111010110010010000111000011100011111110001010000011100100000010110110101000010100011101110000110101011001011101101110101000 0001000100011000101110001110110110110011111101000001110010100101101011011000110000110010110010010101101101010011101100111111110011110110011100111111110110011100001010011011100101101010110101101000010101101000010110110001011111010010110101010010111100100011110010000001111110011001011111010001011111110010110000111011011101010010101100101110000011001110111000110001110110100111001001011110000001100101 1110010001011111001010101001101010011010011111101110100110000100011110000100001100111000111001010010111100110111111011001100101111010010010010100010000101010000110111111000111011110011001011111000101101101000100110110111001010100110000101100011001000100110110110000110000011111011001011001011110101101010110000010101001001100011001110110010001001010010001000100000100110110000101011011111001111110001 0100010010111011011110101110110011111011110100001100010111001111110101000010010110001000010100010001100001111000100000100000110101101000110111110011110001000000111110001111100011110110001110101011001100011001010101000001111000001011111011001100010100011111000101111010011000011101100110000100101000110010110111011000001010010100101110110011110100010110100101010001011001101111110010100111011001000111 0011111111111111101110111111101100101010010100110000001100110111001000110101010010000100101001101011101000110001010011101111110111010100100101101010010000101010101110010000110001010100100001011010010100001100000101001011101111000110000101010100000011101010010101100100101110010101010001110101011101101101110010100110110100111001111011011011010111111101111111110100111110011110110111110001011000101011 1000111001000110011011001111010101000010000001100010110010010101011111000101011011101000010101111011110001101100000111100111101101001000111100000100100011011011001011010101011110000011001010101001011111000010111110010010110000110011010010010101001000101110110111101000111011000010101001001001000110100100000100101010111101100111000010111001000100001010110001111001101111010011101001001011100011001111 0010101010110001100110110100100010011100011010100010010111011101011100010010011000000101100001001100110101000011010100010111010111110111100010000010001010111100100101011101101010010101000111101111010111010010011111111100000110110110010010110100100001000000001110000110111110111011000111001111101100101011001111111101101010011011001011011111001010111001111001000100010110001100001111101001000101110100 1001110010001001110111001010111011011010100110101100111010001110111010000110001110000101101000010101011100110111110111111000101011111100011010011010101111011001110011110110001011111111101001000111001101111001110010000101011110001111001101111110011001010011110101001110001000000000011101001001000110011100110111100000111000010000100001111000101111101110000100010100000011101011111111000000010011000001 1101001110100101101110011011111100111010100001010101111000000100101001011101111010000000111111111110110110110110001101111111011111101100011111110001101111110110111010100110101011010100110010000011011001000111100111110101101011110000111111001011010101110000100010100010011100100000110001111110101000101110101001001101011011011000110011101000111000110101110010001010000011110110101101010111101111011001 1101111111101010111100111110110001010100110010011000010011101010001001010000110111100101001010111110110111101111001101110010010110101011011000001001100101110000110000100100110110101011011100110001000100110010001000110111000001110110100000000100000110110011000001100110100110110001111110000101100100111010100110100100010101010111001100000001000000101100111100000110010010101000011111100000011011011010 1101101100101000011110110010111110011001000110111001111000101001110111011010001011001000111011010000101101110101011110101111011100010100010100101100101100011111110000100110011010101010000111001001101010101010100100011011110011101001101101100001111011000011000000101001100000010011110100001010000100101100101000010001111110010101000001100011001011101011111011000110101101000000010101011011011011101110 1001101011110101000011101010101111010000100011100111100001011001011100101000100100100010110100011101101101001100010111100001111100000000111000001010111110010101111000101010000011101111100001111101111111100101001010000110001110110101100111000100001110110101110001011011111000000100110100011000001001111110000100010111111011111010001101001101001001100001011110010110011001000101100111011101010001010101 0011011000101100000101110100011110110010010000011000010111100100101110100111010110110000100110011011101000010011111000011111000001010011000111101100100010000000100101100111001110100110111111010011000001001100010001001110000001100000011110011101111010000000001000100010011010011001011011001100101111110101110110100000100011000001001101011011010011110101011011011000110000011111100001111010111000101001 1100000011101111010001110100001110001011111011010010100011000101101110001110011111111101111010100110111101110011000011011101101000000111010001111100011001000000000111000000101010011000000100001011011010111100111110110110101111110101110100110000011101000110101110111101100110011001101110011101110000111100001111100100101111100111011111000100100111100111100000110100111101010001000011000000100001111111 0010010011101101101100101001101011100001111111000001011100100111110100010010111011100110111001101111110101110100011000100001001101000111100100100100111110011011101111101000101110000110110011000001011001011000000001011000001000010011001001011101100111011101010001101011001001101100010000011001111010011101100000100110100000110110111001010100110000101010010101101001100110111111110110111011100110000100 0011010111001110010001010000110111001100000101000100010001100001100111100011110011011001011001000111110000100011011000011100100011010101011100101010001000110100001111000101010110000101010100010100011100011111100100111001010011001111101001101100111000100110000001001111000101001100001010011101011100010011011100111011010001001110011111110101101000000011011111011011110100010010000010011110000011111011 0110010000010011011001010100100110000111111110100000010010101011000011001110001010111001001001000001001111110111000111010010110100101011100111000101101010101111100101011111101001000110100101110101010010100010100000001000001110100100110111110101110111001111000010011011001111010010001111100100111001110101001010111111111100111011011000010011001001011101011000110111011111010110000010101001110101110010 1110110011100011010101110100010001001101110011100011011011000001000111110000101111111110010100011000111000011011000000101101010000100011001110011001110111000011111100000101010001100001000110011100110101000100010110010011101100101001101010011000100100111101111000001110110011111100000011100011010100111100110001001001011011010001101100110001011111101011111111101101111111001110100001110000011000100011 0101110101110111101110000010111000011001001110010100011000110001110101110000110001101001011101010011110110110101011010011100010000011101011000110111000101011101100011101101111010010000110110011101000110000010000000010001010110000001100110001101011111111111101100111100111100111010000100001011101000000011110100000111100010001110111011101110001110101000101101111100001110010101100101100000101100111000 0011001110111001100010100000010010000110001001110111110011110111001010011010110100001111010100111100111010110110001011111001011001100110110100001110110010001100101110111001100011100101101100100100100010010011010010101001011100001010100101000010000011010110101000100011100001101000111100001101011101111110100000010100010010011011010011111101111010010011001100000111010010101111000000100011100100001100 1011101110010110010100110000110001100011100111100101100110101111110010101110101100110101100000111110000101110111101000011001110001000100111101110111101000111010101000001000111111010111111011010000000000001100111110001001110111101111110010111111111011001001011101010100010010001000001001111111111001101100101100111101010010001100001010111100100001010110010001000001101000111001010111001110001010101111 0101011100110011110101101100100000001011010110001010010101100101101011111011000001001111001000010000110100011000110111100011000000001110011101101111111101000110111000001000010101100010000100111110011100010111001011010101100000000000100100010011000000011011111011001111000001110101111101100100000010011111001110100111110100011111111101101000010001111000000010000100000010001101010111101010000000101111 0001111101011100010001001110000011000111111111001001010101001100111110001111100111110110100110000110001110010111001101101100111000111101000101001110110111000100001000000100001001100011010001110011110100010011000111000000100101010010010010101110100100100001001111110100010111010101011101111011000000011110000111010000101000001101100101101111100011100101010110111101101101100100100100000000000011011001 1011111110010010001010010100101000001011101111111000101100101110100001100111111001101001001101100111100001100011110100100000001000100000011001010010010111010010111010100111101101000001110100111000101000100011011010100010001111000011010101101111011100100010010001010110000010000110101110010010110001001100000100010110010110110000010101010011000000110101100000110010100100010110111001100110100001011000 1110110110001001111001100111101111011100011011111111011100010100100001110100111011101111111100000010110110101001000101101000000011001011100001000010001011101100101111010010010110011001110111111101111110101111011011000110010000100101010100100111001101100100001101010000111101101111110011100001011000001101100110100111110111101100011110111111000100000001101110001000000000111110110000111011011011110110 1011100001010000010010100111101000100011000010011011000101000011100110011000101101101001011110010101111110011001011000001000010010101010011011001101101101111111110101010111000110011011100000110010010010000011010111001111001010001000101011011110110111101111100100101110101111011100111111101110001011011011111001111110111011011111000101001010100001101110101011111010110001000100100100100101110101111111 0101110001000100001101111101001110001010111000000100010111010111011111110111001100001011111101010111001100010001001001011001001100010000000100101110000010100100000011101111010101100011010101000001111111011111100011110110001110001010001110110101111111001000100100100110001100010101111010010000100000111011101110100101111000011111011000101000010100001110010011110110110100111011001111101001011111000010 1101110100001111101100011010000101100111001110010101001000101010111000000011100111101000010100110100111110000110110100000000000101011011111110110111100100011000010110010010110111100001010100000111100001010111011000111111100100001100011011010011101000110000001001101010111111011101001010011111110100101100100010010000001110010001000010000010001010010111101010010110010011100100110111010000100101000010 0111101010101000111110101011001000110011111001001101110001100010011000001101001101010010011110001101001100010001011110011000011100100010100111001100010100001010111110000000000010011111010011111110001110101000111100101111011110011101001111100000111100001100110100100101001010110000110001011001001010100011010010110110100100000000000011000000000000111000110111010000001010101001111001001100111001000110 0100010100101100110000011110110000010111000101110000100011010011110010100000101110000110000001011100101111110100011111001110110000011101010111010011001110101111111111001111000001001010001011110100110001101000011001010011100011111010100001101010001000111110111010010101001010111011101011010100100000010010110010111010100110011010101011001110111001101100101111111000001110000011011000100001010000000000 0111011110111110101010001101000111100010100101100111111001001101101111000011101000101111100001010111110001111111000001001011111000001010011110010010000101111010101101110111001000101010111110001110101011010010101001001110100010001001110101100010011011111101001011000101101000010110111010011110101001111110011110000110111100010010001011011010101011100010110011100110001000100100110010111001110001011110 0001001110001000011010100110011010100010010111110101100110010100101110100100010001111101110000011101111111100011000110010010011011010010111111101001101111000101000110111111010100101111001111101111111110011101110101101011010101011000100000111001101101110110011110111100101010000000000000100001000001110110001001110010111110010010100101100010101001011000011001111100000011001111011011100011101010011011 0100010010001010101101000100011101000111100000010110001000100000110000001010011000010010101101011110000110111101000010011101010100010000111111011101100110110010000101101000111101001111110000111110001101010110110001011110111000110110000111001001100000101111010011010000110101010110010101110110010011110111101001111100011001000101100111101110101010000001001110101101111010110010101101111011110110001011 0111011010001001000100101101010111101100101010010101011101001100101000000010110111111000011101010101011110100001001111011111010111111001110111100111001001100111001001011011011111100001010001000101011001011000010010101000011000100011001100100100100111000100001100100111100010111101110010110011011110101011111000110101010001101110110110101100011010010001101000000101101101110111111001110010010000000001 0010001011110100110110110111010000100000010000001110101001000100110000000010001110111010111000010000100000100110011000010000001110001111100110000110010101101011001101001000011011111011100110101011111101101101100010011010110111000010000010000010111110100000111111001010010111000001010011001100100010111100111000000000110111011001001011010110110000100101011000001011101100010111101001111111001010010010 1110010000110000100001101111101111100111101101110010000011000110111001001110111110001010000010101011011001011111010010100100100111000000001100011010000001110101010011110010110111101000010011001001110101011100000110111110001011001100001001001110111000100001100110111100000111101100010010101010001101110011001101110101111010100011011111101001100011000100101010111010111000101010000101110110111101010000 1000000111000011011100101101011110110011000100110001011111011111100100101010011001100001000000000010110110011100001101100001011010000001010001000110101000010001101111101111001001010011001010000111100100101011010100010000011111001011111110110101100001001001100111001011001001000101011111111100101000111011101101010010010100111111001100010111001011110101110011001110100001100111001110101101111000000101 1001000011010100000111010001110100101011010001001000010100011011001010101100110100110011100100000000101000101101011101100111111011100001000010010101100000000010000110000011000111001111111000101010101101000111011010000001111101000111100001110000111110000101001011001000101101100000011101111010001011101001000010000110101100101000110111110100101000111111010001111100111110000111110000111000001011011100 0000000111100000110111111000000110011100010011001101011110000000101000000011110111100011101001001000100110000100000101111110100100101011011001011111000001001000010010000110100001111000101100101011011110101000100011100100110111011011000111000000001110000000011001111111111100000100111110100101101111100001001001000010110100100011110010000100111111011110011011010011110101100100101111100110011101100000 0001000011111110101010101010100111000011011101100000010101011110010100110101001101100011100110101001111111100000100100101110000010101100010010101011110000111110010100100001010111110001101000000000000101011110010011011101101100011101010110000011100000001010101110010110111100001000010111000001100000011010101110011100011000010011101001000001100110100100010000110101101101000100110001111010010110010000 0000010111001001111100000011110111011110111010101011011111000000100000000010101010111010110111101011010001100001011100001000000011110011110000000110001101100101011000011010111100000110100111110110010100110110101010101011111100001010110011001000110101111001101110001011110000100001010111111001011011000110011001000100110010100110111000101000011111111000101100001101011010100110101100101011010011101100 0111001001001010000001100000010101011001111010111010001111101111111111001010101001110000001111010001010010001011001011011000110001000010010011010001010001000100011101111000011011110111100001010110011000011110110010100100001010000101010101010101100101010111111100100101110001111010101010100111101111011110101010111110110000010101011100001011111110011100110100111110111101110111100001010011000000110011 1100101100100000010101010110111100001100101000101110010010110001011010010100000110011110000110010110011011011100110100100000011100110101111010010000001000001101111011101001011010010110111110000110111011000111000001000010000000100011100000111010011001100111010100100011010001010110101110000011010011110010011001000001001011000111001100101110001110111010110101001110111001111110111100011010110111101100 0011001010111000001101001000101010001011000000000011111001000011100111001100010000001101000100010001101101010101011111110110100011111000100100110101111011000111010010011100100100100101000011100011011000001000011001100011110011000010100010000100010101110001100110110010010101101001001100100111101110100100011101000011110010101000111011000101000100001100001101001111111101101101001010000010011000000010 1001111100011101100000101010010101100100111011111011101001100011010111101011111101001100110001100100011001000100111110110111010110001111000011010101101011111110100001001111010011111010011111100101010100101110001001011101001001110101111110010010110011101100010001010101100101100110100111000111101101101100011000111000110011010001111100000001000110000100100010100100111111000111100010011011001111010010 1001000000010100110000001001110101000110000011010010010001011111111110010000011000010001010101011001111101100100110101000000000100001010110011001011001010011111101000011111100100111111101110011000011000010001111000110000000011111011111000100010001011000001011110110011110110010000100011001111100010101011100100100000001111110011000100010111001000000110010100101111011100110000101011110010010011110101 0111011100010001000011001101000000001001101101101111101110001111111100100000111111110001111101000000101100000010010100100001011010101001111111001100100011000110100101111111111011001111010110110111010011010001100000000110101011010111001101111001101101011110011110010100011111010001001111100111101000111101010101010100111100001101000011110101011101111000001000110111111110011001001111001011010010000110 1100101111011010000010100100100000100101111000111000001000100001001001100101011001100000001000010000001111001110001010110011101111000011101000010111000110100001011001111001000111001110110001011110110011101110001011000100111101110011111101100010000011001010110100001100001011110010010011000100011110001101111010111101111100010111010010001110000011111011000000101001111000111101100010010100000100110001 0010001000101110110001010111110100111101010001111111010110100110111010000010110111001101011010001000110001110011100001101101101010000000011011011101111110000011001011010011010110100010011101110011101011111111101011001111011011011011000011100010000010111001100000111010011101001110000111101001110101111100111010000001111100011101010100101011100100000001101100110111000101100110110100101110001100111111 1101011000110110011111010001111011001010010111110000000111100010001000110000111111101010010110010000111110010011100001100100111111010010001011110110101110000100110101111110100000011110100110101101100011111010111110101011001011001110000001110011001100111010100101110101010011110111011101111100110000101000111000110101010010111100010001000011100000000010111001010011100111001001111011111110001001101011 0100100110000010111011001010011010001001000110000100101110111111100111011001100111010110011001011101011010111000010101000011110100001010011011011100100110010100011100000101000001101011111110001100110111100111000110001000000101111010100110010011100111000110000101010110001001011111110010101011010101011111001011011011011111000101110000111100101111011110010011001110101010011000001100111101101001000001 0110000101110100001111001101001110010101111010010000000011011101111010010011011101111111000001000011111111000001111010010101100010011110011010010101001010011110011101101100110001000110100110110001010001001000001010100000000010110101001001011101110111101011110110100000110001001101110111110111000101001001011100000101111010001100101010000011100110110010100000001000101010111011110010001101001011110001 0101110100101111000111000000001111100110011001111000101010001000000101000001101011001001010110100101010000011010110001111001111010001011100100101100101011001111000110101000111100011000000000001011010011110010010101111101010111101100101111010111100100010000010011011011010010100000011011010000110100010100011110110010101101101101100010010100110010101111011101111100010111110010100010100010001111011010 0110110000110111100000000111010001011001100001111110110101100001010001110010001000110000110011100000111011110111000011010110010010010100011111101010110000010100110010101001000001100001010100111011100110110111110001110000101110010000101111000100000111010110110100111010010011111000110110110110110100011100010001110011101101010010100111010101011101010110011110111000110010000010101101011110101000000001 1000010110000010100101010100100110010100110011010001011010110100100001000101010011111010011000101110111010000101100011001110001001011101100011010010011010001111101110101100100110010000001010011110110000000001111010000110111100001011110111000001111011011101111111110001110110011011010010010001001000100001000111111010011101111111110010001001101011011110010110010011011110101111000101101111111101000101
cTrader Algo

ChartFibonacciBase【cAlgo API】

10/27/2020 11/12/2020

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

フィボナッチなんちゃら

cTraderではフィボナッチリトレースメント、フィボナッチエクスパンジョン、フィボナッチファンと3つのフィボナッチ系のオブジェクトがあり、これらのベースとなるインターフェースが定義されています。

 

ChartFibonacciBaseインターフェース

フィボナッチ共通のメンバをもつインターフェースです。

public interface ChartFibonacciBase : ChartObject

関連するインターフェース:ChartFibonacciRetracement,ChartFibonacciExpansion,ChartFibonacciFan

 

プロパティ
(Color) Color {get; set;}

フィボナッチ~の色を取得、設定します。

(LineStyle) LineStyle {get; set;}

フィボナッチ~の線のスタイルを取得、設定します。n%の場所に引かれる線です。点同士を結ぶラインのスタイルは変えられません。

(int) Thickness {get; set;}

フィボナッチ~の線の太さを取得、設定します。同上。

(IReadonlyList<FibonacciLevel>) FibonacciLevels

下記FibonacciLevelのリストを取得、設定します。

(bool) DisplayPrices {get; set;}

各レベルの%表示の横に価格を表示するかどうかを取得、設定します。

ChartObjectのプロパティ

IsAlive、IsIntaractive、Name、Commentなど。

 

 

FibonacciLevelインターフェース

FibonacciLevelsの中身の要素です。フィボナッチの何%のところを管理するか、そこに線を表示するかどうかを表すためのオブジェクトを示します。

プログラムからフィボナッチリトレースメントを描画する場合はやたらとたくさん線が出るため、設定必須です。

public interface FibonacciLevel

 

プロパティ
(double) PercentLevel {get; set;}

パーセントレベルの数値を取得、設定します。一応set可能ですが、普通変えないと思います。

(bool) IsVisible {get; set;}

PercentLevelの%位置の線を表示するかどうかを取得、設定します。

 

サンプルコード

説明がわかりにくいと思うのでサンプルコードでご確認ください。

// チャート上のフィボナッチリトレースメントを取得
var frs = Chart.FindAllObjects<ChartFibonacciRetracement>();
if (frs.Count() == 0) return;
var fiboRetracement = frs.Last();

// 表示する%レベルを設定する
var displayLevels = new double[]{ 0.0, 38.2, 50.0, 61.8, 100.0 };
foreach(var level in fiboRetracement.FibonacciLevels) {
    if (displayLevels.Contains(level.PercentLevel)) {
        level.IsVisible = true;
    }else {
        level.IsVisible = false;
    }
}

チャート上にフィボナッチリトレースメントを一つ描いてから実行してください。最初に表示したい%を配列で用意しておいて、FibonacciLevelsの中で配列内と一致するFibonacciLevelだけをIsVisible=trueとしています。

初期状態だと、やたらとたくさん表示されてた%を示す横線が、上記のコードを実行すると0%,38.2%,50.0%,61.8%,100.0%の5本になったことが確認できます。

 


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

新しいコメント

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

cTrader's Life

© 2025 ajinori