code: def __init__(
      self,
      graph: TileableGraph,
      fuse_enabled: bool = True,
      tile_context: TileContext = None,
      tiler_cls: Union[Type[Tiler], Callable] = None,
  ):
      super().__init__(graph)
      self.fuse_enabled = fuse_enabled
      self.tile_context = (
          TileContext() if tile_context is None else tile_context
      )
      self.tile_context.set_tileables(set(graph))
  
      self._processed_chunks: Set[str] = set()
      self._chunk_to_fetch: Dict[ChunkType, ChunkType] = dict()
  
      tiler_cls = Tiler if tiler_cls is None else tiler_cls
      self.tiler = tiler_cls(
          self._graph,
          self.tile_context,
          self._processed_chunks,
          self._chunk_to_fetch,
          self._add_nodes,
      )
  
imports: import dataclasses
  import functools
  from typing import Callable, Dict, Generator, Iterable, List, Optional, Set, Type, Union
  from ....core import FUSE_CHUNK_TYPE, CHUNK_TYPE, TILEABLE_TYPE
  from ....typing import EntityType, TileableType, ChunkType
  from ....utils import copy_tileables, build_fetch
  from ...entity.tileables import handler
  from ...mode import enter_mode
  from ..entity import TileableGraph, ChunkGraph
  from .base import AbstractGraphBuilder
label_desc: Use image node_id 1 to create a new ChunkGraphBuilder object from inherited base classes: AbstractGraphBuilder with example: obj = ChunkGraphBuilder(graph, fuse_enabled, tile_context, tiler_cls)