working, except for some cases of results with non-terminating decimals