def terminate_instance_in_auto_scaling_group(InstanceId=None,
    ShouldDecrementDesiredCapacity=None):
    """
    Terminates the specified instance and optionally adjusts the desired group size.
    This call simply makes a termination request. The instance is not terminated immediately.
    See also: AWS API Documentation
    
    Examples
    This example terminates the specified instance from the specified Auto Scaling group without updating the size of the group. Auto Scaling launches a replacement instance after the specified instance terminates.
    Expected Output:
    
    :example: response = client.terminate_instance_in_auto_scaling_group(
        InstanceId='string',
        ShouldDecrementDesiredCapacity=True|False
    )
    
    
    :type InstanceId: string
    :param InstanceId: [REQUIRED]
            The ID of the instance.
            

    :type ShouldDecrementDesiredCapacity: boolean
    :param ShouldDecrementDesiredCapacity: [REQUIRED]
            If true , terminating the instance also decrements the size of the Auto Scaling group.
            

    :rtype: dict
    :return: {
        'Activity': {
            'ActivityId': 'string',
            'AutoScalingGroupName': 'string',
            'Description': 'string',
            'Cause': 'string',
            'StartTime': datetime(2015, 1, 1),
            'EndTime': datetime(2015, 1, 1),
            'StatusCode': 'PendingSpotBidPlacement'|'WaitingForSpotInstanceRequestId'|'WaitingForSpotInstanceId'|'WaitingForInstanceId'|'PreInService'|'InProgress'|'WaitingForELBConnectionDraining'|'MidLifecycleAction'|'WaitingForInstanceWarmup'|'Successful'|'Failed'|'Cancelled',
            'StatusMessage': 'string',
            'Progress': 123,
            'Details': 'string'
        }
    }
    
    
    """
    pass
