Optional parameters must be at the end of the function's signature