code: def to_zarr(self, store=None, mode='w-', synchronizer=None, group=None,
                  encoding=None, compute=True, consolidated=False):
          
          if encoding is None:
              encoding = {}
          if mode not in ['w', 'w-']:
              # TODO: figure out how to handle 'r+' and 'a'
              raise ValueError("The only supported options for mode are 'w' "
                               "and 'w-'.")
          from ..backends.api import to_zarr
          return to_zarr(self, store=store, mode=mode, synchronizer=synchronizer,
                         group=group, encoding=encoding, compute=compute,
                         consolidated=consolidated)
docs: Write dataset contents to a zarr group.
  
          .. note:: Experimental
                    The Zarr backend is new and experimental. Please report any
                    unexpected behavior via github issues.
  
          Parameters
          ----------
          store : MutableMapping or str, optional
              Store or path to directory in file system.
          mode : {'w', 'w-'}
              Persistence mode: 'w' means create (overwrite if exists);
              'w-' means create (fail if exists).
          synchronizer : object, optional
              Array synchronizer
          group : str, obtional
              Group path. (a.k.a. `path` in zarr terminology.)
          encoding : dict, optional
              Nested dictionary with variable names as keys and dictionaries of
              variable specific encodings as values, e.g.,
              ``{'my_variable': {'dtype': 'int16', 'scale_factor': 0.1,}, ...}``
          compute: bool, optional
              If True compute immediately, otherwise return a
              ``dask.delayed.Delayed`` object that can be computed later.
          consolidated: bool, optional
              If True, apply zarr's `consolidate_metadata` function to the store
              after writing.
  
          References
          ----------
          https://zarr.readthedocs.io/