!function(){function t(t){var n,e,i=t.css("color");t=t[0];for(var s=!1;t&&!e&&!s;){try{n=$(t).css("background-color")}catch(r){n="transparent"}"transparent"!==n&&"rgba(0, 0, 0, 0)"!==n&&(e=n),s=t.body,t=t.parentNode}t=/rgb[a]*\((\d+),\s*(\d+),\s*(\d+)/;var o,s=/#([AaBbCcDdEeFf\d]{2})([AaBbCcDdEeFf\d]{2})([AaBbCcDdEeFf\d]{2})/;n=void 0,(n=i.match(t))?o={r:parseInt(n[1],10),g:parseInt(n[2],10),b:parseInt(n[3],10)}:(n=i.match(s))&&(o={r:parseInt(n[1],16),g:parseInt(n[2],16),b:parseInt(n[3],16)});var a;return e?(n=void 0,(n=e.match(t))?a={r:parseInt(n[1],10),g:parseInt(n[2],10),b:parseInt(n[3],10)}:(n=e.match(s))&&(a={r:parseInt(n[1],16),g:parseInt(n[2],16),b:parseInt(n[3],16)})):a=o&&127').appendTo(o),this.isCanvasEmulator=!1,i=this.canvas=this.initializeCanvas(l),r=$(i),this.$controlbarLower=$('
').appendTo(o),this.canvasContext=i.getContext("2d"),r.data(a+".this",this),l.lineWidth=function(t,n){return t?t:Math.max(Math.round(n/400),2)}(l.lineWidth,i.width),this.lineCurveThreshold=3*l.lineWidth,l.cssclass&&""!=$.trim(l.cssclass)&&r.addClass(l.cssclass),this.fatFingerCompensation=0,o=function(t){var n,i,s=function(s){return s=s.changedTouches&&0l.minFatFingerCompensation?-3*l.lineWidth:l.minFatFingerCompensation,n(s),i.ontouchend=t,i.ontouchstart=n,i.ontouchmove=e},i.onmousedown=function(s){i.ontouchstart=i.ontouchend=i.ontouchmove=void 0,n(s),i.onmousedown=n,i.onmouseup=t,i.onmousemove=e},window.navigator.msPointerEnabled&&(i.onmspointerdown=n,i.onmspointerup=t,i.onmspointermove=e))}.call(this,o.drawEndHandler,o.drawStartHandler,o.drawMoveHandler),n[a+".windowmouseup"]=c.subscribe(a+".windowmouseup",o.drawEndHandler),this.events.publish(a+".attachingEventHandlers"),s.call(this,this,l.width.toString(10),a,c),this.resetCanvas(l.data),this.events.publish(a+".initialized"),this}function o(t){if(t.getContext)return!1;var n=t.ownerDocument.parentWindow,e=n.FlashCanvas?t.ownerDocument.parentWindow.FlashCanvas:"undefined"==typeof FlashCanvas?void 0:FlashCanvas;if(e){if(t=e.initElement(t),e=1,n&&n.screen&&n.screen.deviceXDPI&&n.screen.logicalXDPI&&(e=1*n.screen.deviceXDPI/n.screen.logicalXDPI),1!==e)try{$(t).children("object").get(0).resize(Math.ceil(t.width*e),Math.ceil(t.height*e)),t.getContext("2d").scale(e,e)}catch(i){}return!0}throw Error("Canvas element does not support 2d context. jSignature cannot proceed.")}var a="jSignature",h=function(t,n){var e;return this.kick=function(){clearTimeout(e),e=setTimeout(n,t)},this.clear=function(){clearTimeout(e)},this},u=function(t){this.topics={},this.context=t?t:this,this.publish=function(t,n,e,i){if(this.topics[t]){var s,r,o,a,h=this.topics[t],u=Array.prototype.slice.call(arguments,1),c=[];for(r=0,o=h.length;rthis.lineCurveThreshold){a=2this.lineCurveThreshold)if(1').appendTo(this.$controlbarLower),n=t.width();return t.css("left",Math.round((this.canvas.width-n)/2)),n!==t.width()&&t.width(n),t}),t.call(this,e,"jSignature",n)}})})}(),function(){for(var t={},n={},e="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWX".split(""),i=e.length/2,s=i-1;-1e&&0a&&(a=1,s.push("Y")),n=Math.abs(e),n>=i?s.push(r(n.toString(i))):s.push(n.toString(i));return s.join("")},a=function(e){var s=[];e=e.split("");for(var r,o=e.length,a=1,h=[],u=0,c=0;cr?(r=2s){var r=new n(i.x[r-2],i.y[r-2]).getVectorToPoint(a),a=o.angleTo(r.reverse()),h=.35*o.getLength(),r=new t(r.x+o.x,r.y+o.y).resizeTo(Math.max(.05,a)*h);return["c",e(r.x,2),e(r.y,2),e(o.x,2),e(o.y,2),e(o.x,2),e(o.y,2)]}return["l",e(o.x,2),e(o.y,2)]}function r(t,n,r){n=["M",e(t.x[0]-n,2),e(t.y[0]-r,2)],r=1;for(var o=t.x.length-1;r',''],a=t.length,h=[],u=[],c=i=e=0,l=0,d=[];if(0!==a){for(e=0;ea?0:a,l=0>h?0:h,e-=a,i=u-h}for(s.push(''),e=0,a=d.length;e');return s.push(""),s.join("")}function h(t,n){return[l,a(t,n)]}function u(t,n){return[d,c(a(t,n))]}if(function(t,n){"use strict";(typeof exports!=n+""?exports:t).simplify=function(t,e,i){if(e=e!==n?e*e:1,!i){var s,r=t.length,o=t[0],a=[o];for(i=1;ie&&(a.push(s),o=s)}o!==s&&a.push(s),t=a}s=t,i=s.length;var c,l,r=new(typeof Uint8Array!=n+""?Uint8Array:Array)(i),o=0,a=i-1,d=[],g=[],f=[];for(r[o]=r[a]=1;a;){for(u=0,h=o+1;hu&&(l=h,u=c)}u>e&&(r[l]=1,d.push(o),g.push(l),d.push(l),g.push(a)),o=d.pop(),a=g.pop()}for(h=0;h>18&63,e=s>>12&63,i=s>>6&63,s&=63,h[a++]=r[n]+r[e]+r[i]+r[s];while(o