also document to_string