     private func parseNode(node: XMLIndexer, groupStyle: [String: String] = [:], groupPosition: Transform = Transform()) -> Node? {
         if let element = node.element {
             if node.children.isEmpty {
-                return parseShape(node, groupStyle: groupStyle, groupPosition: groupPosition)
+                return parseElement(node, groupStyle: groupStyle, groupPosition: groupPosition)
             } else if element.name == "g" {
                 return parseGroup(node, groupStyle: groupStyle, groupPosition: groupPosition)
             }

        }

        return resultPoints
    }

    private func parsePath(path: XMLIndexer) -> Path? {

        }
    }
    
    private func getDoubleValue(element: XMLElement, attribute: String) -> Double? {
        guard let attributeValue = element.attributes[attribute], doubleValue = Double(attributeValue) else {
            return .None
        }
        return doubleValue
    }
    
    private func getIntValue(element: XMLElement, attribute: String) -> Int? {
        guard let attributeValue = element.attributes[attribute], intValue = Int(attributeValue) else {
            return .None
        }
        return intValue
    }
    
    private func getFontName(attributes: [String: String]) -> String? {
        return attributes["font-family"]
    }
    
    private func getFontSize(attributes: [String: String]) -> Int? {
        guard let fontSize = attributes["font-size"] else {
            return .None
        }
        return Int(fontSize)
    }
    
    private func getFontStyle(attributes: [String: String], style: String) -> Bool? {
        guard let fontStyle = attributes["font-style"] else {
            return .None
        }
        if fontStyle.lowercaseString == style {
            return true
        }
        return false
    }
    
    private func getFontWeight(attributes: [String: String], style: String) -> Bool? {
        guard let fontWeight = attributes["font-weight"] else {
            return .None
        }
        if fontWeight.lowercaseString == style {
            return true
        }
        return false
    }
    
    private func getTextDecoration(attributes: [String: String], decoration: String) -> Bool? {
        guard let textDecoration = attributes["text-decoration"] else {
            return .None
        }
        if textDecoration.containsString(decoration) {
            return true
        }
        return false
    }
    
    private func concat(t1: Transform, t2: Transform) -> Transform {
        let nm11 = t2.m11 * t1.m11 + t2.m12 * t1.m21
        let nm21 = t2.m21 * t1.m11 + t2.m22 * t1.m21
