code: def apply_dict_of_variables_vfunc(
      func, *args, signature, join='inner', fill_value=None
  ):
      
      args = [_as_variables_or_variable(arg) for arg in args]
      names = join_dict_keys(args, how=join)
      grouped_by_name = collect_dict_values(args, names, fill_value)
  
      result_vars = OrderedDict()
      for name, variable_args in zip(names, grouped_by_name):
          result_vars[name] = func(*variable_args)
  
      if signature.num_outputs > 1:
          return _unpack_dict_tuples(result_vars, signature.num_outputs)
      else:
          return result_vars
docs: Apply a variable level function over dicts of DataArray, DataArray,
      Variable and ndarray objects.