   var points : [CGPoint] {
     return attributes["points"] as? [CGPoint] ?? []
   }
-  override func drawToContext(context: CGContextRef, state: SVGState) {
+  override func drawToContext(context: CGContextRef) {
     var pts = points
     CGContextAddLines(context, &pts, pts.count)
     CGContextClosePath(context)

      if let pres = child as? PresentationElement {
        if pres.isInvisible() { continue }
      }
      //    let subState = state.applyTransform(self.transform)
      CGContextSaveGState(context)
      if let xf = child as? SVGTransformable {
        CGContextConcatCTM(context, xf.transform.affine)
      }
      child.drawToContext(context, state: state)
      CGContextRestoreGState(context)
    }
  }

    attributes["height"] = Length(value: 100, unit: .pc)
  }
  
  func drawToContext(context: CGContextRef) {
    // Loop over all children and draw
    for child in children.filter({ $0 is SVGDrawable }).map({ $0 as! SVGDrawable }) {
      if let pres = child as? PresentationElement {
