1
1
512
1
1
512
4
4
1
1
1
4
64
64
4
4
1
1
1
4
1
1
1
4
64
64
1
4
1
1
512
4
3
3
1
4
64
64
512
4
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
1
512
64
64
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
3
512
512
1
512
4096
512
512
1
1
512
1
4096
512
1
4096
512
4
1
4096
1
512
4
1
1
4096
512
3
1
1
512
512
512
1
512
4096
512
512
1
1
512
1
4096
512
1
4096
512
4
1
4096
1
512
4
1
1
4096
512
3
1
1
1
1
4096
512
1
1
1
1
4096
512
1
4096
512
1
4096
4096
1
1
512
512
512
1
512
4096
512
512
1
1
512
1
4096
512
1
4096
512
4
1
4096
1
512
4
1
1
4096
512
3
1
4096
4096
1
4096
512
1
4096
512
4
1
1
4096
512
4
1
4096
1
512
3
512
512
1
4096
512
512
512
1
1
512
1
4096
512
1
4096
512
3
1
512
4096
4
1
512
64
64
1
512
64
64
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
1
512
64
64
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
1
512
64
64
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
1
512
64
64
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
3
1
32
65536
1
1
512
64
64
1
32
65536
4
1
512
1
1
1
512
64
64
1
512
1
1
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
512
512
3
3
1
512
64
64
512
512
3
3
1
512
1
1
1
512
64
64
1
512
1
1
1
512
64
64
1
512
64
64
1
512
64
64
4
512
512
3
3
1
512
128
128
512
512
3
3
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
3
1
32
262144
1
1
512
128
128
1
32
262144
4
1
512
1
1
1
512
128
128
1
512
1
1
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
512
512
3
3
1
512
128
128
512
512
3
3
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
3
1
32
262144
1
1
512
128
128
1
32
262144
4
1
512
1
1
1
512
128
128
1
512
1
1
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
512
512
3
3
1
512
128
128
512
512
3
3
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
1
512
128
128
1
512
128
128
3
1
32
262144
1
1
512
128
128
1
32
262144
4
1
512
1
1
1
512
128
128
1
512
1
1
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
512
512
3
3
1
512
128
128
512
512
3
3
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
3
1
32
262144
1
1
512
128
128
1
32
262144
4
1
512
1
1
1
512
128
128
1
512
1
1
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
512
512
3
3
1
512
128
128
512
512
3
3
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
1
512
128
128
1
512
128
128
3
1
32
262144
1
1
512
128
128
1
32
262144
4
1
512
1
1
1
512
128
128
1
512
1
1
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
512
512
3
3
1
512
128
128
512
512
3
3
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
3
1
32
262144
1
1
512
128
128
1
32
262144
4
1
512
1
1
1
512
128
128
1
512
1
1
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
512
512
3
3
1
512
128
128
512
512
3
3
1
512
1
1
1
512
128
128
1
512
1
1
1
512
128
128
1
512
128
128
1
512
128
128
4
512
512
3
3
1
512
256
256
512
512
3
3
1
512
1
1
1
512
256
256
1
512
1
1
256
512
1
1
1
512
256
256
256
512
1
1
1
256
1
1
1
256
256
256
1
256
1
1
1
512
256
256
3
1
32
1048576
1
1
512
256
256
1
32
1048576
4
1
512
1
1
1
512
256
256
1
512
1
1
1
512
1
1
1
512
256
256
1
512
1
1
1
512
256
256
256
512
3
3
1
512
256
256
256
512
3
3
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
3
1
32
524288
1
1
256
256
256
1
32
524288
4
1
256
1
1
1
256
256
256
1
256
1
1
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
256
256
3
3
1
256
256
256
256
256
3
3
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
1
256
256
256
1
256
256
256
3
1
32
524288
1
1
256
256
256
1
32
524288
4
1
256
1
1
1
256
256
256
1
256
1
1
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
256
256
3
3
1
256
256
256
256
256
3
3
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
3
1
32
524288
1
1
256
256
256
1
32
524288
4
1
256
1
1
1
256
256
256
1
256
1
1
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
256
256
3
3
1
256
256
256
256
256
3
3
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
1
256
256
256
1
256
256
256
3
1
32
524288
1
1
256
256
256
1
32
524288
4
1
256
1
1
1
256
256
256
1
256
1
1
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
256
256
3
3
1
256
256
256
256
256
3
3
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
3
1
32
524288
1
1
256
256
256
1
32
524288
4
1
256
1
1
1
256
256
256
1
256
1
1
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
256
256
3
3
1
256
256
256
256
256
3
3
1
256
1
1
1
256
256
256
1
256
1
1
1
256
256
256
1
256
256
256
1
256
256
256
4
256
256
3
3
1
256
512
512
256
256
3
3
1
256
1
1
1
256
512
512
1
256
1
1
128
256
1
1
1
256
512
512
128
256
1
1
1
128
1
1
1
128
512
512
1
128
1
1
1
256
512
512
3
1
32
2097152
1
1
256
512
512
1
32
2097152
4
1
256
1
1
1
256
512
512
1
256
1
1
1
256
1
1
1
256
512
512
1
256
1
1
1
256
512
512
128
256
3
3
1
256
512
512
128
256
3
3
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
3
1
32
1048576
1
1
128
512
512
1
32
1048576
4
1
128
1
1
1
128
512
512
1
128
1
1
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
128
128
3
3
1
128
512
512
128
128
3
3
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
1
128
512
512
1
128
512
512
3
1
32
1048576
1
1
128
512
512
1
32
1048576
4
1
128
1
1
1
128
512
512
1
128
1
1
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
128
128
3
3
1
128
512
512
128
128
3
3
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
3
1
32
1048576
1
1
128
512
512
1
32
1048576
4
1
128
1
1
1
128
512
512
1
128
1
1
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
128
128
3
3
1
128
512
512
128
128
3
3
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
1
128
512
512
1
128
512
512
3
1
32
1048576
1
1
128
512
512
1
32
1048576
4
1
128
1
1
1
128
512
512
1
128
1
1
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
128
128
3
3
1
128
512
512
128
128
3
3
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
3
1
32
1048576
1
1
128
512
512
1
32
1048576
4
1
128
1
1
1
128
512
512
1
128
1
1
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
128
128
3
3
1
128
512
512
128
128
3
3
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
1
128
512
512
1
128
512
512
3
1
32
1048576
1
1
128
512
512
1
32
1048576
4
1
128
1
1
1
128
512
512
1
128
1
1
1
128
1
1
1
128
512
512
1
128
1
1
1
128
512
512
3
128
3
3
1
128
512
512
3
128
3
3
1
3
1
1
1
3
512
512
1
3
1
1
1
3
512
512