def fromXML(self, name, attrs, content, ttFont):
    self.format = safeEval(attrs['format'])
    self.length = safeEval(attrs['length'])
    self.numVarSelectorRecords = safeEval(attrs['numVarSelectorRecords'])
    self.language = 255
    if (not hasattr(self, 'cmap')):
        self.cmap = {}
    if (not hasattr(self, 'uvsDict')):
        self.uvsDict = {}
        uvsDict = self.uvsDict
    for element in content:
        if (not isinstance(element, tuple)):
            continue
        (name, attrs, content) = element
        if (name != 'map'):
            continue
        uvs = safeEval(attrs['uvs'])
        uv = safeEval(attrs['uv'])
        gname = attrs['name']
        if (gname == 'None'):
            gname = None
        try:
            uvsDict[uvs].append([uv, gname])
        except KeyError:
            uvsDict[uvs] = [[uv, gname]]
def fromXML(self, name, attrs, content, ttFont):
    self.format = safeEval(attrs['format'])
    self.length = safeEval(attrs['length'])
    self.numVarSelectorRecords = safeEval(attrs['numVarSelectorRecords'])
    self.language = 255
    if (not hasattr(self, 'cmap')):
        self.cmap = {}
    if (not hasattr(self, 'uvsDict')):
        self.uvsDict = {}
        uvsDict = self.uvsDict
    for element in content:
        if (not isinstance(element, tuple)):
            continue
        (name, attrs, content) = element
        if (name != 'map'):
            continue
        uvs = safeEval(attrs['uvs'])
        uv = safeEval(attrs['uv'])
        gname = attrs['name']
        if (gname == 'None'):
            gname = None
        try:
            uvsDict[uvs].append([uv, gname])
        except KeyError:
            uvsDict[uvs] = [[uv, gname]]