instead of adding this extra `return` you can just drop the last else case... cleaner