def METHOD_NAME(dt: datetime, tz: t.Union[None, str, tzinfo] = None) -> datetime:
    """
    Convert a datetime into the specified timezone, defaulting to user's timezone.
    Naive datetimes are assumed to be in UTC.
    """
    if not dt.tzinfo:
        dt = utc.localize(dt)
    if not tz:
        tz = get_timezone()
    if isinstance(tz, str):
        tz = timezone(tz)
    return dt.astimezone(tz)