code: def fromXML(self, name, attrs, content, ttFont):
      if name == "GMAPRecord":
          if not hasattr(self, "gmapRecords"):
              self.gmapRecords = []
          gmapRecord = GMAPRecord()
          self.gmapRecords.append(gmapRecord)
          for element in content:
              if isinstance(element, str):
                  continue
              name, attrs, content = element
              gmapRecord.fromXML(name, attrs, content, ttFont)
      else:
          value = attrs["value"]
          if name == "PSFontName":
              self.psFontName = value
          else:
              setattr(self, name, safeEval(value))
  
file_path: catboost/contrib/python/fonttools/fontTools/ttLib/tables/G_M_A_P_.py
imports: from fontTools.misc import sstruct
  from fontTools.misc.textTools import tobytes, tostr, safeEval
  from .None import DefaultTable
label_desc: Use image node_id 4 for calling the table_G_M_A_P_ obj's underlying member method code with example usage: obj.fromXML(name, attrs, content, ttFont) without return types