code: def _save_chunk(self, start_i: int, end_i: int) -> None:
      # create the data for a chunk
      slicer = slice(start_i, end_i)
      df = self.obj.iloc[slicer]
  
      res = df._get_values_for_csv(**self._number_format)
      data = list(res._iter_column_arrays())
  
      ix = self.data_index[slicer]._get_values_for_csv(
          **self._number_format
      )
      libwriters.write_csv_rows(
          data,
          ix,
          self.nlevels,
          self.cols,
          self.writer,
      )
  
imports: from __future__ import annotations
  from collections.abc import Hashable, Iterable, Iterator, Sequence
  import csv
  import os
  from typing import TYPE_CHECKING, Any, cast
  import numpy
  from pandas._libs import writers
  from pandas._typing import SequenceNotStr
  from pandas.util._decorators import cache_readonly
  from pandas.core.dtypes.generic import ABCDatetimeIndex, ABCIndex, ABCMultiIndex, ABCPeriodIndex
  from pandas.core.dtypes.missing import notna
  from pandas.core.indexes.api import Index
  from pandas.io.common import get_handle
label_desc: Use image node_id 27 for calling the CSVFormatter obj's underlying member method code with example usage: obj._save_chunk(start_i, end_i) without return types