Nit: don't really need the else here since the conditional always terminates with a `return`