code: def __init__(
      self,
      client: "Client",
      name: str,
      sub: str,
      *,
      read_only: bool,
      from_union: bool = False,
      no_cache: bool = False,
      index=False,
      timeout=None,
  ):
      self._resources: ProxyTreeAutoClean = None
  
      self._rpc_client = client
      self._hash = sub
  
      kwargs = {
          "name": name,
          "sub": sub,
          "read_only": read_only,
          "from_union": from_union,
          "index": index,
          "timeout": timeout,
          "no_cache": no_cache,
      }
      self.init_args = pack_args(encode_tree(kwargs))
      self.resource_type = "TreeView"
      handler = self._rpc_client.get_resource_handler(
          self, self.resource_type, args=self.init_args
      )
  
      self._resources = ProxyTreeAutoClean(self)
      self._resources.hash = sub
      self._resources.rpc_client = client
      self._resources.handler = handler
      self._handler = handler
  
imports: from aim.ext.transport.message_utils import ResourceObject, pack_args
  from aim.ext.transport.remote_resource import RemoteResourceAutoClean
  from aim.storage.treeview import TreeView
  from aim.storage.treeutils import encode_tree
  from aim.storage.treearrayview import TreeArrayView
  from aim.storage.types import AimObject, AimObjectKey, AimObjectPath
  from typing import TYPE_CHECKING, Any, Iterator, Tuple, Union, List
label_desc: Use image node_id 1 to create a new ProxyTree object from inherited base classes: TreeView with example: obj = ProxyTree(client, name, sub)