What’s wrong with this? It’s technically legal, but misleading: the parameter-name
calendar will stand for whatever first argument is provided when the function is called
(which may or may not be a calendar), and the parameter-name hacker will likewise
stand for the second argument (which may not be a hacker). For example, when you try
the second test case