def build_start_extension_upgrade_request_initial(resource_group_name: str, vm_scale_set_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest:
    api_version = kwargs.pop('api_version', '2021-07-01')
    _url = kwargs.pop('template_url', '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade')
    path_format_arguments = {'resourceGroupName': _SERIALIZER.url('resource_group_name', resource_group_name, 'str'), 'vmScaleSetName': _SERIALIZER.url('vm_scale_set_name', vm_scale_set_name, 'str'), 'subscriptionId': _SERIALIZER.url('subscription_id', subscription_id, 'str')}
    _url = _format_url_section(_url, **path_format_arguments)
    _query_parameters = kwargs.pop('params', {})
    _query_parameters['api-version'] = _SERIALIZER.query('api_version', api_version, 'str')
    return HttpRequest(method='POST', url=_url, params=_query_parameters, **kwargs)
def build_start_extension_upgrade_request_initial(resource_group_name: str, vm_scale_set_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest:
    api_version = kwargs.pop('api_version', '2021-07-01')
    _url = kwargs.pop('template_url', '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade')
    path_format_arguments = {'resourceGroupName': _SERIALIZER.url('resource_group_name', resource_group_name, 'str'), 'vmScaleSetName': _SERIALIZER.url('vm_scale_set_name', vm_scale_set_name, 'str'), 'subscriptionId': _SERIALIZER.url('subscription_id', subscription_id, 'str')}
    _url = _format_url_section(_url, **path_format_arguments)
    _query_parameters = kwargs.pop('params', {})
    _query_parameters['api-version'] = _SERIALIZER.query('api_version', api_version, 'str')
    return HttpRequest(method='POST', url=_url, params=_query_parameters, **kwargs)