code: def _parse_vmconfig(config, instances):
      '''
      Parse vm_present vm config
      '''
      vmconfig = None
  
      if isinstance(config, (salt.utils.odict.OrderedDict)):
          vmconfig = salt.utils.odict.OrderedDict()
          for prop in config:
              if prop not in instances:
                  vmconfig[prop] = config[prop]
              else:
                  if not isinstance(config[prop], (salt.utils.odict.OrderedDict)):
                      continue
                  vmconfig[prop] = []
                  for instance in config[prop]:
                      instance_config = config[prop][instance]
                      instance_config[instances[prop]] = instance
                      ## some property are lowercase
                      if 'mac' in instance_config:
                          instance_config['mac'] = instance_config['mac'].lower()
                      vmconfig[prop].append(instance_config)
      else:
          log.error('smartos.vm_present::parse_vmconfig - failed to parse')
  
      return vmconfif _parse_vmconfig(config, instances):
      '''
      Parse vm_present vm config
      '''
      vmconfig = None
  
      if isinstance(config, (salt.utils.odict.OrderedDict)):
          vmconfig = salt.utils.odict.OrderedDict()
          for prop in config:
              if prop not in instances:
                  vmconfig[prop] = config[prop]
              else:
                  if not isinstance(config[prop], (salt.utils.odict.OrderedDict)):
                      continue
                  vmconfig[prop] = []
                  for instance in config[prop]:
                      instance_config = config[prop][instance]
                      instance_config[instances[prop]] = instance
                      ## some property are lowercase
                      if 'mac' in instance_config:
                          instance_config['mac'] = instance_config['mac'].lower()
                      vmconfig[prop].append(instance_config)
      else:
          log.error('smartos.vm_present::parse_vmconfig - failed to parse')
  
      return vmconfig
docs: Parse vm_present vm config