nit: `else` may start on a new line.