code: def _split_module_dicts():
      '''
      Create a copy of __salt__ dictionary with module.function and module[function]
  
      Takes advantage of Jinja's syntactic sugar lookup:
  
      .. code-block::
  
          {{ salt.cmd.run('uptime') }}
      '''
      if not isinstance(__salt__, dict):
          return __salt__
      mod_dict = dict(__salt__)
      for module_func_name, mod_fun in six.iteritems(mod_dict.copy()):
          mod, fun = module_func_name.split('.', 1)
          if mod not in mod_dict:
              # create an empty object that we can add attributes to
              mod_dict[mod] = lambda: None
          setattr(mod_dict[mod], fun, mod_fun)
      return mod_dicf _split_module_dicts():
      '''
      Create a copy of __salt__ dictionary with module.function and module[function]
  
      Takes advantage of Jinja's syntactic sugar lookup:
  
      .. code-block::
  
          {{ salt.cmd.run('uptime') }}
      '''
      if not isinstance(__salt__, dict):
          return __salt__
      mod_dict = dict(__salt__)
      for module_func_name, mod_fun in six.iteritems(mod_dict.copy()):
          mod, fun = module_func_name.split('.', 1)
          if mod not in mod_dict:
              # create an empty object that we can add attributes to
              mod_dict[mod] = lambda: None
          setattr(mod_dict[mod], fun, mod_fun)
      return mod_dict
docs: Create a copy of __salt__ dictionary with module.function and module[function]
  
      Takes advantage of Jinja's syntactic sugar lookup:
  
      .. code-block::
  
          {{ salt.cmd.run('uptime') }}