4
4
1
1
1
4
64
64
4
4
1
1
1
4
1
1
1
4
64
64
1
4
1
1
1
4
64
64
4
4
4
1
4
64
64
4
4
4
1
4
64
1
1
4
64
64
1
4
64
1
1
4
64
66
3
3
3
1
4
64
66
3
3
3
1
4
1
66
1
4
64
66
1
4
1
66
512
4
3
3
1
4
66
66
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
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
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
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
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
512
4096
3
1
4096
512
3
1
512
4096
3
1
32
65536
1
1
512
4096
1
32
65536
3
1
512
1
1
512
4096
1
512
1
1
512
1
1
512
4096
1
512
1
512
512
1
512
4096
512
512
1
1
512
1
4096
512
1
1
512
1
4096
512
3
1
512
512
1
512
4096
512
512
1
1
512
1
4096
512
1
1
512
1
4096
512
3
1
1
1
1
1
1
4096
512
4
1
4096
1
512
4
1
1
4096
512
4
1
1
4096
512
1
4096
512
4
1
4096
1
512
4
1
1
4096
512
1
1
512
4096
1
1
4096
4096
512
512
1
512
4096
512
512
1
1
512
1
4096
512
1
1
512
1
4096
512
4
1
4096
1
512
4
1
1
4096
4096
1
1
4096
512
1
1
4096
512
4
1
1
1
1
4096
1
512
3
512
512
1
4096
512
512
512
1
1
512
1
4096
512
1
1
512
1
4096
512
3
1
1
1
1
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
1
512
64
64
4
1
1
4
1
1
1
1
512
64
64
4
4
4
1
512
64
64
4
4
4
1
512
64
1
1
512
64
64
1
512
64
1
1
512
64
66
4
1
1
3
1
1
1
1
512
64
66
3
3
3
1
512
64
66
3
3
3
1
512
1
66
1
512
64
66
1
512
1
66
512
512
3
3
1
512
66
66
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
2
2
1
512
128
128
4
1
1
4
1
1
1
1
512
128
128
4
4
4
1
512
128
128
4
4
4
1
512
128
1
1
512
128
128
1
512
128
1
1
512
128
130
4
1
1
3
1
1
1
1
512
128
130
3
3
3
1
512
128
130
3
3
3
1
512
1
130
1
512
128
130
1
512
1
130
512
512
3
3
1
512
130
130
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
1
512
128
128
4
1
1
4
1
1
1
1
512
128
128
4
4
4
1
512
128
128
4
4
4
1
512
128
1
1
512
128
128
1
512
128
1
1
512
128
130
4
1
1
3
1
1
1
1
512
128
130
3
3
3
1
512
128
130
3
3
3
1
512
1
130
1
512
128
130
1
512
1
130
512
512
3
3
1
512
130
130
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
1
512
128
128
4
1
1
4
1
1
1
1
512
128
128
4
4
4
1
512
128
128
4
4
4
1
512
128
1
1
512
128
128
1
512
128
1
1
512
128
130
4
1
1
3
1
1
1
1
512
128
130
3
3
3
1
512
128
130
3
3
3
1
512
1
130
1
512
128
130
1
512
1
130
512
512
3
3
1
512
130
130
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
1
512
128
128
4
1
1
4
1
1
1
1
512
128
128
4
4
4
1
512
128
128
4
4
4
1
512
128
1
1
512
128
128
1
512
128
1
1
512
128
130
4
1
1
3
1
1
1
1
512
128
130
3
3
3
1
512
128
130
3
3
3
1
512
1
130
1
512
128
130
1
512
1
130
512
512
3
3
1
512
130
130
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
1
512
128
128
4
1
1
4
1
1
1
1
512
128
128
4
4
4
1
512
128
128
4
4
4
1
512
128
1
1
512
128
128
1
512
128
1
1
512
128
130
4
1
1
3
1
1
1
1
512
128
130
3
3
3
1
512
128
130
3
3
3
1
512
1
130
1
512
128
130
1
512
1
130
512
512
3
3
1
512
130
130
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
1
512
128
128
4
1
1
4
1
1
1
1
512
128
128
4
4
4
1
512
128
128
4
4
4
1
512
128
1
1
512
128
128
1
512
128
1
1
512
128
130
4
1
1
3
1
1
1
1
512
128
130
3
3
3
1
512
128
130
3
3
3
1
512
1
130
1
512
128
130
1
512
1
130
512
512
3
3
1
512
130
130
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
1
512
128
128
4
1
1
4
1
1
1
1
512
128
128
4
4
4
1
512
128
128
4
4
4
1
512
128
1
1
512
128
128
1
512
128
1
1
512
128
130
4
1
1
3
1
1
1
1
512
128
130
3
3
3
1
512
128
130
3
3
3
1
512
1
130
1
512
128
130
1
512
1
130
512
512
3
3
1
512
130
130
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
2
2
1
512
256
256
4
1
1
4
1
1
1
1
512
256
256
4
4
4
1
512
256
256
4
4
4
1
512
256
1
1
512
256
256
1
512
256
1
1
512
256
258
4
1
1
3
1
1
1
1
512
256
258
3
3
3
1
512
256
258
3
3
3
1
512
1
258
1
512
256
258
1
512
1
258
512
512
3
3
1
512
258
258
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
1
512
256
256
4
1
1
4
1
1
1
1
512
256
256
4
4
4
1
512
256
256
4
4
4
1
512
256
1
1
512
256
256
1
512
256
1
1
512
256
258
4
1
1
3
1
1
1
1
512
256
258
3
3
3
1
512
256
258
3
3
3
1
512
1
258
1
512
256
258
1
512
1
258
256
512
3
3
1
512
258
258
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
1
256
256
256
4
1
1
4
1
1
1
1
256
256
256
4
4
4
1
256
256
256
4
4
4
1
256
256
1
1
256
256
256
1
256
256
1
1
256
256
258
4
1
1
3
1
1
1
1
256
256
258
3
3
3
1
256
256
258
3
3
3
1
256
1
258
1
256
256
258
1
256
1
258
256
256
3
3
1
256
258
258
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
1
256
256
256
4
1
1
4
1
1
1
1
256
256
256
4
4
4
1
256
256
256
4
4
4
1
256
256
1
1
256
256
256
1
256
256
1
1
256
256
258
4
1
1
3
1
1
1
1
256
256
258
3
3
3
1
256
256
258
3
3
3
1
256
1
258
1
256
256
258
1
256
1
258
256
256
3
3
1
256
258
258
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
1
256
256
256
4
1
1
4
1
1
1
1
256
256
256
4
4
4
1
256
256
256
4
4
4
1
256
256
1
1
256
256
256
1
256
256
1
1
256
256
258
4
1
1
3
1
1
1
1
256
256
258
3
3
3
1
256
256
258
3
3
3
1
256
1
258
1
256
256
258
1
256
1
258
256
256
3
3
1
256
258
258
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
1
256
256
256
4
1
1
4
1
1
1
1
256
256
256
4
4
4
1
256
256
256
4
4
4
1
256
256
1
1
256
256
256
1
256
256
1
1
256
256
258
4
1
1
3
1
1
1
1
256
256
258
3
3
3
1
256
256
258
3
3
3
1
256
1
258
1
256
256
258
1
256
1
258
256
256
3
3
1
256
258
258
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
1
256
256
256
4
1
1
4
1
1
1
1
256
256
256
4
4
4
1
256
256
256
4
4
4
1
256
256
1
1
256
256
256
1
256
256
1
1
256
256
258
4
1
1
3
1
1
1
1
256
256
258
3
3
3
1
256
256
258
3
3
3
1
256
1
258
1
256
256
258
1
256
1
258
256
256
3
3
1
256
258
258
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
2
2
1
256
512
512
4
1
1
4
1
1
1
1
256
512
512
4
4
4
1
256
512
512
4
4
4
1
256
512
1
1
256
512
512
1
256
512
1
1
256
512
514
4
1
1
3
1
1
1
1
256
512
514
3
3
3
1
256
512
514
3
3
3
1
256
1
514
1
256
512
514
1
256
1
514
256
256
3
3
1
256
514
514
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
1
256
512
512
4
1
1
4
1
1
1
1
256
512
512
4
4
4
1
256
512
512
4
4
4
1
256
512
1
1
256
512
512
1
256
512
1
1
256
512
514
4
1
1
3
1
1
1
1
256
512
514
3
3
3
1
256
512
514
3
3
3
1
256
1
514
1
256
512
514
1
256
1
514
128
256
3
3
1
256
514
514
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
1
128
512
512
4
1
1
4
1
1
1
1
128
512
512
4
4
4
1
128
512
512
4
4
4
1
128
512
1
1
128
512
512
1
128
512
1
1
128
512
514
4
1
1
3
1
1
1
1
128
512
514
3
3
3
1
128
512
514
3
3
3
1
128
1
514
1
128
512
514
1
128
1
514
128
128
3
3
1
128
514
514
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
1
128
512
512
4
1
1
4
1
1
1
1
128
512
512
4
4
4
1
128
512
512
4
4
4
1
128
512
1
1
128
512
512
1
128
512
1
1
128
512
514
4
1
1
3
1
1
1
1
128
512
514
3
3
3
1
128
512
514
3
3
3
1
128
1
514
1
128
512
514
1
128
1
514
128
128
3
3
1
128
514
514
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
1
128
512
512
4
1
1
4
1
1
1
1
128
512
512
4
4
4
1
128
512
512
4
4
4
1
128
512
1
1
128
512
512
1
128
512
1
1
128
512
514
4
1
1
3
1
1
1
1
128
512
514
3
3
3
1
128
512
514
3
3
3
1
128
1
514
1
128
512
514
1
128
1
514
128
128
3
3
1
128
514
514
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
1
128
512
512
4
1
1
4
1
1
1
1
128
512
512
4
4
4
1
128
512
512
4
4
4
1
128
512
1
1
128
512
512
1
128
512
1
1
128
512
514
4
1
1
3
1
1
1
1
128
512
514
3
3
3
1
128
512
514
3
3
3
1
128
1
514
1
128
512
514
1
128
1
514
128
128
3
3
1
128
514
514
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
1
128
512
512
4
1
1
4
1
1
1
1
128
512
512
4
4
4
1
128
512
512
4
4
4
1
128
512
1
1
128
512
512
1
128
512
1
1
128
512
514
4
1
1
3
1
1
1
1
128
512
514
3
3
3
1
128
512
514
3
3
3
1
128
1
514
1
128
512
514
1
128
1
514
128
128
3
3
1
128
514
514
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
1
128
512
512
4
1
1
4
1
1
1
1
128
512
512
4
4
4
1
128
512
512
4
4
4
1
128
512
1
1
128
512
512
1
128
512
1
1
128
512
514
4
1
1
3
1
1
1
1
128
512
514
3
3
3
1
128
512
514
3
3
3
1
128
1
514
1
128
512
514
1
128
1
514
3
128
3
3
1
128
514
514
3
128
3
3
1
3
1
1
1
3
512
512
1
3
1
1
1
3
512
512