 }
 
 open class KMLOverlayPolygon: MKPolygon, KMLOverlay {
-
-    open var style: KMLStyle? = nil
+    open var style: KMLStyle?
 
     open func renderer() -> MKOverlayRenderer {
         let renderer: MKPolygonRenderer = MKPolygonRenderer(polygon: self)


public struct KMLConfig {
    // Able to replace with customized parser
    public static var tags: Dictionary<String, KMLElement.Type> = [
        KMLTag.Style.str : KMLStyle.self,
        KMLTag.StyleMap.str : KMLStyleMap.self,
        KMLTag.PolyStyle.str : KMLPolyStyle.self,
        KMLTag.LineStyle.str : KMLLineStyle.self,
        KMLTag.BalloonStyle.str : KMLBalloonStyle.self,
        KMLTag.MultiGeometry.str : KMLMultiGeometry.self,
        KMLTag.Polygon.str : KMLPolygon.self,
        KMLTag.LineString.str : KMLLineString.self,
        KMLTag.Point.str : KMLPoint.self,
        KMLTag.Folder.str : KMLElement.self,
        KMLTag.Placemark.str : KMLPlacemark.self,
        KMLTag.Icon.str : KMLIcon.self,
        KMLTag.IconStyle.str : KMLIconStyle.self
    ]
}



    class func parseCoordinates(_ element: AEXMLElement) -> [CLLocationCoordinate2D] {
        var coordinates: [CLLocationCoordinate2D] = []
        let lines: [String] = element.string.components(separatedBy: CharacterSet.whitespacesAndNewlines)
        for line in lines {
            let points: [String] = line.components(separatedBy: ",")
            assert(points.count >= 2, "points lenth is \(points)")
            coordinates.append(CLLocationCoordinate2DMake(atof(points[1]), atof(points[0])))
        }
