code: def get_nsplits(
      tileable: TileableType,
      new_chunk_size: chunk_size_type,
      itemsize: int,
  ) -> Tuple[Tuple[int], ...]:
      if isinstance(new_chunk_size, dict):
          chunk_size = list(tileable.nsplits)
          for idx, c in new_chunk_size.items():
              chunk_size[idx] = c
      else:
          chunk_size = new_chunk_size
  
      return decide_chunk_sizes(tileable.shape, chunk_size, itemsize)
  
file_path: mars/mars/tensor/rechunk/core.py
imports: import itertools
  from dataclasses import dataclass
  from typing import Tuple, Union, List
  import numpy
  from ...typing import ChunkType, TileableType
  from ..utils import decide_chunk_sizes
label_desc: Use image node_id 1 for calling a global function with example usage: get_nsplits(tileable, new_chunk_size, itemsize) and returns: decide_chunk_sizes