code: def _create_channels(channels, h5f, resolution):
      for channel in channels:
          var_name = "IMG_" + channel.upper()
  
          var = h5f.create_variable(
              var_name,
              ("time",) + dimensions_by_resolution[resolution],
              np.uint16,
              chunks=chunks_1km,
          )
          var[:] = values_by_resolution[resolution]
          var.attrs["_FillValue"] = 0
          for suffix, lut_values in zip(
              LUT_SUFFIXES[channel], (lut_values_2, lut_values_3)
          ):
              lut_name = "_".join((var_name, suffix))
              var = h5f.create_variable(lut_name, ("GreyCount",), float)
              var[:] = lut_values
              var.attrs["units"] = bytes(
                  calibrated_units[suffix], "ascii"
              )
              var.attrs["long_name"] = " ".join(
                  (channel_names[channel], calibrated_names[suffix])
              )
  
imports: import os
  from datetime import datetime
  import dask.array
  import h5netcdf
  import numpy
  import pytest
  from satpy import Scene
  from satpy.readers.insat3d_img_l1b_h5 import CHANNELS_BY_RESOLUTION, LUT_SUFFIXES, Insat3DIMGL1BH5FileHandler, get_lonlat_suffix, open_dataset, open_datatree
  from satpy.tests.utils import make_dataid
label_desc: Use image node_id 3 for calling a global function with example usage: _create_channels(channels, h5f, resolution) without return types