var s=this.property('stroke'); return '<g '+this.writeCommonAttrs()+'>' + '<path style="stroke:'+s.color+';stroke-width:'+s.width+';fill:none;" d="' + "M"+this.start.x+","+this.start.y+" " + "Q"+this.control.x+","+this.control.y+" " + this.end.x+","+this.end.y + '" />' + '<g transform="translate(' + this.start.x + "," + this.start.y + ") " + 'rotate(' + (Math.round((this.startRotation*(180/Math.PI))*Math.pow(10,4))/Math.pow(10,4)) + ')">' + '<path style="fill:'+s.color+';" d="M0,0 l20,-5, -3,5, 3,5 Z" />' + '</g>' + '<g transform="rotate(' + (Math.round((this.endRotation*(180/Math.PI))*Math.pow(10,4))/Math.pow(10,4)) + ", "+this.end.x+", "+this.end.y + ')">' + '<path style="fill:'+s.color+';" d="M'+this.end.x+","+this.end.y+' l-20,-5, 3,5, -3,5 Z" />' + '</g>' + '<text style="fill:'+s.color+';text-anchor:'+this.textAlign+'" font-weight="bold" ' + 'x="' + this.textPosition.x + '" ' + 'y="' + this.textPosition.y + '">' + this.property('label') + '</text>' + '</g>';