!function(t,e){if("function"==typeof define&&define.amd)define(["./kute.js"],e);else if("object"==typeof module&&"function"==typeof require)module.exports=e(require("./kute.js"));else{if(void 0===t.KUTE)throw new Error("SVG Plugin require KUTE.js.");e(t.KUTE)}}(this,function(t){"use strict";var e="undefined"!=typeof global?global:window,r=t.dom,n=t.parseProperty,a=t.prepareStart,o=t.getCurrentStyle,s=(t.truC,t.truD,t.crossCheck),v=e.Interpolate.number,i=(e.Interpolate.unit,e.Interpolate.color,t.defaultOptions),l=null!==new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})").exec(navigator.userAgent)&&parseFloat(RegExp.$1);if(!(l&&l<9)){var h=/(m[^(h|v|l)]*|[vhl][^(v|h|l|z)]*)/gim,u=e.Interpolate.coords=function(t,e,r,n){for(var a=[],s=0;s>0)/1e3)}return a},m=function(t,e,r){for(var n,a,s,i,o,l=[],h=r.length,u=0;u>0)/100,i=0-(100*v(r.s,n.s,a)>>0)/100,o=(100*v(r.e,n.e,a)>>0)/100+i;t.style.strokeDashoffset=i+"px",t.style.strokeDasharray=(100*(o<1?0:o)>>0)/100+"px, "+s+"px"}),w(this.element,e)},a.draw=function(){return w(this.element)};var A=function(t,e){return/[a-zA-Z]/.test(t)&&!/px/.test(t)?t.replace(/top|left/,0).replace(/right|bottom/,100).replace(/center|middle/,50):/%/.test(t)?e.x+parseFloat(t)*e.width/100:parseFloat(t)},M=function(t){var e=t&&/\)/.test(t)?t.substring(0,t.length-1).split(/\)\s|\)/):"none",r={};if(e instanceof Array)for(var n=0,a=e.length;n>0)/1e3+(o?","+(1e3*o>>0)/1e3:"")+")":"")+(u?"rotate("+(1e3*u>>0)/1e3+")":"")+(f?"skewX("+(1e3*f>>0)/1e3+")":"")+(c?"skewY("+(1e3*c>>0)/1e3+")":"")+(1!==h?"scale("+(1e3*h>>0)/1e3+")":""))}),x.call(this,e)},a.svgTransform=function(t,e){var r={},n=M(this.element.getAttribute("transform"));for(var a in e)r[a]=a in n?n[a]:"scale"===a?1:0;return r},s.svgTransform=function(){if(this.options.rpr){var t=this.valuesStart.svgTransform,e=this.valuesEnd.svgTransform,r=x.call(this,M(this.element.getAttribute("transform")));for(var n in r)t[n]=r[n];var a=this.element.ownerSVGElement,s=a.createSVGTransformFromMatrix(a.createSVGMatrix().translate(-t.origin[0],-t.origin[1]).translate("translate"in t?t.translate[0]:0,"translate"in t?t.translate[1]:0).rotate(t.rotate||0).skewX(t.skewX||0).skewY(t.skewY||0).scale(t.scale||1).translate(+t.origin[0],+t.origin[1]));for(var n in t.translate=[s.matrix.e,s.matrix.f],t)n in e||(e[n]=t[n])}},this}});