Why does this need to_str?