单项选择题

By the time Jack comes back from his home town, we ______ all the preparations.

A. finish
B. have finished
C. had finished
D. shall have finished