Two sorted runs
- By the time a merge runs, both halves are already sorted — that is the recursion's contract.
- The merge only has to compare the two front elements and take the smaller one.
- When one run empties, the rest of the other run is appended unchanged.