code: def test_e2e_autoscaling_down(
      ray_start_10_cpus_shared, restore_data_context
  ):
      DataContext.get_current().new_execution_backend = True
      DataContext.get_current().use_streaming_executor = True
  
      class UDFClass:
          def __call__(self, x):
              time.sleep(1)
              return x
  
      # Tests that autoscaling works even when resource constrained via actor killing.
      # To pass this, we need to autoscale down to free up slots for task execution.
      DataContext.get_current().execution_options.resource_limits.cpu = (
          2
      )
      ray.data.range(5, parallelism=5).map_batches(
          UDFClass,
          compute=ray.data.ActorPoolStrategy(min_size=1, max_size=2),
          batch_size=None,
      ).map_batches(lambda x: x, batch_size=None, num_cpus=2).take_all()
  
imports: import itertools
  import random
  import threading
  import time
  from typing import Any, List
  import pandas
  import pytest
  import ray
  from ray import cloudpickle
  from ray._private.test_utils import wait_for_condition
  from ray.data._internal.execution.interfaces import ExecutionOptions, ExecutionResources, RefBundle
  from ray.data._internal.execution.operators.base_physical_operator import AllToAllOperator
  from ray.data._internal.execution.operators.input_data_buffer import InputDataBuffer
  from ray.data._internal.execution.operators.map_operator import MapOperator
  from ray.data._internal.execution.operators.map_transformer import create_map_transformer_from_block_fn
  from ray.data._internal.execution.operators.output_splitter import OutputSplitter
  from ray.data._internal.execution.streaming_executor import StreamingExecutor
  from ray.data._internal.execution.util import make_ref_bundles
  from ray.data.context import DataContext
  from ray.data.tests.conftest import *
  from ray.data.tests.util import extract_values
label_desc: Use image node_id 15 for calling a global function with example usage: test_e2e_autoscaling_down(ray_start_10_cpus_shared, restore_data_context) and returns: x