Still deciding if this is the best way to handle zero division