Do you really need the extra precision that `repr` provides over `str`? If so, why? It seems like this is non-obvious from the code.