def get_mobjects_from(self, element):
    result = []
    if (not isinstance(element, minidom.Element)):
        return result
    if (element.tagName == 'defs'):
        self.update_ref_to_element(element)
    elif (element.tagName == 'style'):
        pass
    elif (element.tagName in ['g', 'svg', 'symbol']):
        result += it.chain(*[self.get_mobjects_from(child) for child in element.childNodes])
    elif (element.tagName == 'path'):
        result.append(self.path_string_to_mobject(element.getAttribute('d')))
    elif (element.tagName == 'use'):
        result += self.use_to_mobjects(element)
    elif (element.tagName == 'rect'):
        result.append(self.rect_to_mobject(element))
    elif (element.tagName == 'circle'):
        result.append(self.circle_to_mobject(element))
    elif (element.tagName == 'ellipse'):
        result.append(self.ellipse_to_mobject(element))
    elif (element.tagName in ['polygon', 'polyline']):
        result.append(self.polygon_to_mobject(element))
    else:
        pass
    result = [m for m in result if (m is not None)]
    self.handle_transforms(element, VGroup(*result))
    if ((len(result) > 1) and (not self.unpack_groups)):
        result = [VGroup(*result)]
    return result
def get_mobjects_from(self, element):
    result = []
    if (not isinstance(element, minidom.Element)):
        return result
    if (element.tagName == 'defs'):
        self.update_ref_to_element(element)
    elif (element.tagName == 'style'):
        pass
    elif (element.tagName in ['g', 'svg', 'symbol']):
        result += it.chain(*[self.get_mobjects_from(child) for child in element.childNodes])
    elif (element.tagName == 'path'):
        result.append(self.path_string_to_mobject(element.getAttribute('d')))
    elif (element.tagName == 'use'):
        result += self.use_to_mobjects(element)
    elif (element.tagName == 'rect'):
        result.append(self.rect_to_mobject(element))
    elif (element.tagName == 'circle'):
        result.append(self.circle_to_mobject(element))
    elif (element.tagName == 'ellipse'):
        result.append(self.ellipse_to_mobject(element))
    elif (element.tagName in ['polygon', 'polyline']):
        result.append(self.polygon_to_mobject(element))
    else:
        pass
    result = [m for m in result if (m is not None)]
    self.handle_transforms(element, VGroup(*result))
    if ((len(result) > 1) and (not self.unpack_groups)):
        result = [VGroup(*result)]
    return result