divide and conquer

.