docstr: return a deep copy of this config as a plain OrderedDict
  
  The config tree should be fully resolved.
  
  This is useful to get an object with no special semantics such as path expansion for the keys.
  In particular this means that keys that contain dots are not surrounded with '"' in the plain OrderedDict.
  
  :return: this config as an OrderedDict
  :type return: OrderedDict
docstr_tok: ["return","a","deep","copy","of","this","config","as","a","plain","OrderedDict","The","config","tree","should","be","fully","resolved",".","This","is","useful","to","get","an","object","with","no","special","semantics","such","as","path","expansion","for","the","keys",".","In","particular","this","means","that","keys","that","contain","dots","are","not","surrounded","with","'","''","'","in","the","plain","OrderedDict",".",":","return",":","this","config","as","an","OrderedDict",":","type","return",":","OrderedDict"]
code: def as_plain_ordered_dict(self):
      """return a deep copy of this config as a plain OrderedDict
  
      The config tree should be fully resolved.
  
      This is useful to get an object with no special semantics such as path expansion for the keys.
      In particular this means that keys that contain dots are not surrounded with '"' in the plain OrderedDict.
  
      :return: this config as an OrderedDict
      :type return: OrderedDict
      """
  
      def plain_value(v):
          if isinstance(v, list):
              return [plain_value(e) for e in v]
          elif isinstance(v, ConfigTree):
              return v.as_plain_ordered_dict()
          else:
              if isinstance(v, ConfigValues):
                  raise ConfigException(
                      "The config tree contains unresolved elements"
                  )
              return v
  
      return OrderedDict(
          (
              key.strip('"')
              if isinstance(key, (unicode, basestring))
              else key,
              plain_value(value),
          )
          for key, value in self.items()
      )
  
imports: from collections import OrderedDict
  from pyparsing import lineno
  from pyparsing import col
  import re
  import copy
  from .exceptions import ConfigException, ConfigWrongTypeException, ConfigMissingException
label_desc: Use image node_id 20 for calling the ConfigTree obj's underlying member method code with example usage: obj.as_plain_ordered_dict() and returns: OrderedDict, unknown, v, v