Refactor
Dealing with `0` correctly