Unified __str__()