Exercise 2.20: variable number of arguments.  And the price of clear variable names seems to be MURKIER, less DRY logic... at least in this case...