divide & conquer
1