is `to_s` necessary?