def do_change_avatar_fields(user_profile: UserProfile, avatar_source: str, skip_notify: bool=False, acting_user: Optional[UserProfile]=None) -> None:
    user_profile.avatar_source = avatar_source
    user_profile.avatar_version += 1
    user_profile.save(update_fields=['avatar_source', 'avatar_version'])
    event_time = timezone_now()
    RealmAuditLog.objects.create(realm=user_profile.realm, modified_user=user_profile, event_type=RealmAuditLog.USER_AVATAR_SOURCE_CHANGED, extra_data={'avatar_source': avatar_source}, event_time=event_time, acting_user=acting_user)
    if (not skip_notify):
        notify_avatar_url_change(user_profile)
def do_change_avatar_fields(user_profile: UserProfile, avatar_source: str, skip_notify: bool=False, acting_user: Optional[UserProfile]=None) -> None:
    user_profile.avatar_source = avatar_source
    user_profile.avatar_version += 1
    user_profile.save(update_fields=['avatar_source', 'avatar_version'])
    event_time = timezone_now()
    RealmAuditLog.objects.create(realm=user_profile.realm, modified_user=user_profile, event_type=RealmAuditLog.USER_AVATAR_SOURCE_CHANGED, extra_data={'avatar_source': avatar_source}, event_time=event_time, acting_user=acting_user)
    if (not skip_notify):
        notify_avatar_url_change(user_profile)