def METHOD_NAME(element):
    shape = PShape([(0, 0)], children=[])
    transform = element.get("transform")
    transform_matrix = np.identity(4)
    if transform:
        properties = re.findall(r"(\w+)\(([\w\.]+)[,\s]*([^(]*)\)", transform)
        for p in properties:
            if p[0] == "scale":
                mat = matrix.scale_transform(float(p[1]), float(p[2]))
                transform_matrix = transform_matrix.dot(mat)
            elif p[0] == "translate":
                mat = matrix.translation_matrix(float(p[1]), float(p[2]))
                transform_matrix = transform_matrix.dot(mat)
    shape.transform_matrix(transform_matrix)
    for e in element:
        tag = e.tag.replace("{http://www.w3.org/2000/svg}", "")
        if tag in parser_function.keys():
            shape.add_child(parser_function[tag](e))
        elif tag == "g":
            shape.add_child(METHOD_NAME(e))
        else:
            continue
    return shape