=8&&(o=l+u)}}}if(o){var d,h,p=i.getUint16(o,n);for(h=0;h=0?a:200),height:Math.max(i.offsetHeight,o>=0?o:100)};this.containerData=r,V(n,{width:r.width,height:r.height}),q(t,f),Z(n,f)},initCanvas:function(){var t=this.containerData,e=this.imageData,i=this.options.viewMode,n=Math.abs(e.rotate)%180==90,a=n?e.naturalHeight:e.naturalWidth,o=n?e.naturalWidth:e.naturalHeight,r=a/o,s=t.width,l=t.height;t.height*r>t.width?3===i?s=t.height*r:l=t.width/r:3===i?l=t.width/r:s=t.height*r;var c={aspectRatio:r,naturalWidth:a,naturalHeight:o,width:s,height:l};this.canvasData=c,this.limited=1===i||2===i,this.limitCanvas(!0,!0),c.width=Math.min(Math.max(c.width,c.minWidth),c.maxWidth),c.height=Math.min(Math.max(c.height,c.minHeight),c.maxHeight),c.left=(t.width-c.width)/2,c.top=(t.height-c.height)/2,c.oldLeft=c.left,c.oldTop=c.top,this.initialCanvasData=Y({},c)},limitCanvas:function(t,e){var i=this.options,n=this.containerData,a=this.canvasData,o=this.cropBoxData,r=i.viewMode,s=a.aspectRatio,l=this.cropped&&o;if(t){var c=Number(i.minCanvasWidth)||0,u=Number(i.minCanvasHeight)||0;r>1?(c=Math.max(c,n.width),u=Math.max(u,n.height),3===r&&(u*s>c?c=u*s:u=c/s)):r>0&&(c?c=Math.max(c,l?o.width:0):u?u=Math.max(u,l?o.height:0):l&&(c=o.width,(u=o.height)*s>c?c=u*s:u=c/s));var d=pt({aspectRatio:s,width:c,height:u});c=d.width,u=d.height,a.minWidth=c,a.minHeight=u,a.maxWidth=1/0,a.maxHeight=1/0}if(e)if(r>(l?0:1)){var h=n.width-a.width,p=n.height-a.height;a.minLeft=Math.min(0,h),a.minTop=Math.min(0,p),a.maxLeft=Math.max(0,h),a.maxTop=Math.max(0,p),l&&this.limited&&(a.minLeft=Math.min(o.left,o.left+(o.width-a.width)),a.minTop=Math.min(o.top,o.top+(o.height-a.height)),a.maxLeft=o.left,a.maxTop=o.top,2===r&&(a.width>=n.width&&(a.minLeft=Math.min(0,h),a.maxLeft=Math.max(0,h)),a.height>=n.height&&(a.minTop=Math.min(0,p),a.maxTop=Math.max(0,p))))}else a.minLeft=-a.width,a.minTop=-a.height,a.maxLeft=n.width,a.maxTop=n.height},renderCanvas:function(t,e){var i=this.canvasData,n=this.imageData;if(e){var a=function(t){var e=t.width,i=t.height,n=t.degree;if(90==(n=Math.abs(n)%180))return{width:i,height:e};var a=n%90*Math.PI/180,o=Math.sin(a),r=Math.cos(a),s=e*r+i*o,l=e*o+i*r;return n>90?{width:l,height:s}:{width:s,height:l}}({width:n.naturalWidth*Math.abs(n.scaleX||1),height:n.naturalHeight*Math.abs(n.scaleY||1),degree:n.rotate||0}),o=a.width,r=a.height,s=i.width*(o/i.naturalWidth),l=i.height*(r/i.naturalHeight);i.left-=(s-i.width)/2,i.top-=(l-i.height)/2,i.width=s,i.height=l,i.aspectRatio=o/r,i.naturalWidth=o,i.naturalHeight=r,this.limitCanvas(!0,!1)}(i.width>i.maxWidth||i.widthi.maxHeight||i.heighte.width?a.height=a.width/i:a.width=a.height*i),this.cropBoxData=a,this.limitCropBox(!0,!0),a.width=Math.min(Math.max(a.width,a.minWidth),a.maxWidth),a.height=Math.min(Math.max(a.height,a.minHeight),a.maxHeight),a.width=Math.max(a.minWidth,a.width*n),a.height=Math.max(a.minHeight,a.height*n),a.left=e.left+(e.width-a.width)/2,a.top=e.top+(e.height-a.height)/2,a.oldLeft=a.left,a.oldTop=a.top,this.initialCropBoxData=Y({},a)},limitCropBox:function(t,e){var i=this.options,n=this.containerData,a=this.canvasData,o=this.cropBoxData,r=this.limited,s=i.aspectRatio;if(t){var l=Number(i.minCropBoxWidth)||0,c=Number(i.minCropBoxHeight)||0,u=r?Math.min(n.width,a.width,a.width+a.left,n.width-a.left):n.width,d=r?Math.min(n.height,a.height,a.height+a.top,n.height-a.top):n.height;l=Math.min(l,n.width),c=Math.min(c,n.height),s&&(l&&c?c*s>l?c=l/s:l=c*s:l?c=l/s:c&&(l=c*s),d*s>u?d=u/s:u=d*s),o.minWidth=Math.min(l,u),o.minHeight=Math.min(c,d),o.maxWidth=u,o.maxHeight=d}e&&(r?(o.minLeft=Math.max(0,a.left),o.minTop=Math.max(0,a.top),o.maxLeft=Math.min(n.width,a.left+a.width)-o.width,o.maxTop=Math.min(n.height,a.top+a.height)-o.height):(o.minLeft=0,o.minTop=0,o.maxLeft=n.width-o.width,o.maxTop=n.height-o.height))},renderCropBox:function(){var t=this.options,e=this.containerData,i=this.cropBoxData;(i.width>i.maxWidth||i.widthi.maxHeight||i.height=e.width&&i.height>=e.height?"move":"all"),V(this.cropBox,Y({width:i.width,height:i.height},dt({translateX:i.left,translateY:i.top}))),this.cropped&&this.limited&&this.limitCanvas(!0,!0),this.disabled||this.output()},output:function(){this.preview(),ot(this.element,"crop",this.getData())}},wt={initPreview:function(){var t=this.element,e=this.crossOrigin,i=this.options.preview,n=e?this.crossOriginUrl:this.url,a=t.alt||"The image to preview",o=document.createElement("img");if(e&&(o.crossOrigin=e),o.src=n,o.alt=a,this.viewBox.appendChild(o),this.viewBoxImage=o,i){var r=i;"string"==typeof i?r=t.ownerDocument.querySelectorAll(i):i.querySelector&&(r=[i]),this.previews=r,U(r,(function(t){var i=document.createElement("img");tt(t,y,{width:t.offsetWidth,height:t.offsetHeight,html:t.innerHTML}),e&&(i.crossOrigin=e),i.src=n,i.alt=a,i.style.cssText='display:block;width:100%;height:auto;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;image-orientation:0deg!important;"',t.innerHTML="",t.appendChild(i)}))}},resetPreview:function(){U(this.previews,(function(t){var e=J(t,y);V(t,{width:e.width,height:e.height}),t.innerHTML=e.html,function(t,e){if(N(t[e]))try{delete t[e]}catch(i){t[e]=void 0}else if(t.dataset)try{delete t.dataset[e]}catch(i){t.dataset[e]=void 0}else t.removeAttribute("data-".concat(Q(e)))}(t,y)}))},preview:function(){var t=this.imageData,e=this.canvasData,i=this.cropBoxData,n=i.width,a=i.height,o=t.width,r=t.height,s=i.left-e.left-t.left,l=i.top-e.top-t.top;this.cropped&&!this.disabled&&(V(this.viewBoxImage,Y({width:o,height:r},dt(Y({translateX:-s,translateY:-l},t)))),U(this.previews,(function(e){var i=J(e,y),c=i.width,u=i.height,d=c,h=u,p=1;n&&(h=a*(p=c/n)),a&&h>u&&(d=n*(p=u/a),h=u),V(e,{width:d,height:h}),V(e.getElementsByTagName("img")[0],Y({width:o*p,height:r*p},dt(Y({translateX:-s*p,translateY:-l*p},t))))})))}},yt={bind:function(){var t=this.element,e=this.options,i=this.cropper;z(e.cropstart)&&at(t,"cropstart",e.cropstart),z(e.cropmove)&&at(t,"cropmove",e.cropmove),z(e.cropend)&&at(t,"cropend",e.cropend),z(e.crop)&&at(t,"crop",e.crop),z(e.zoom)&&at(t,"zoom",e.zoom),at(i,k,this.onCropStart=this.cropStart.bind(this)),e.zoomable&&e.zoomOnWheel&&at(i,"wheel",this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),e.toggleDragModeOnDblclick&&at(i,"dblclick",this.onDblclick=this.dblclick.bind(this)),at(t.ownerDocument,T,this.onCropMove=this.cropMove.bind(this)),at(t.ownerDocument,S,this.onCropEnd=this.cropEnd.bind(this)),e.responsive&&at(window,"resize",this.onResize=this.resize.bind(this))},unbind:function(){var t=this.element,e=this.options,i=this.cropper;z(e.cropstart)&&nt(t,"cropstart",e.cropstart),z(e.cropmove)&&nt(t,"cropmove",e.cropmove),z(e.cropend)&&nt(t,"cropend",e.cropend),z(e.crop)&&nt(t,"crop",e.crop),z(e.zoom)&&nt(t,"zoom",e.zoom),nt(i,k,this.onCropStart),e.zoomable&&e.zoomOnWheel&&nt(i,"wheel",this.onWheel,{passive:!1,capture:!0}),e.toggleDragModeOnDblclick&&nt(i,"dblclick",this.onDblclick),nt(t.ownerDocument,T,this.onCropMove),nt(t.ownerDocument,S,this.onCropEnd),e.responsive&&nt(window,"resize",this.onResize)}},xt={resize:function(){if(!this.disabled){var t,e,i=this.options,n=this.container,a=this.containerData,o=n.offsetWidth/a.width;1===o&&n.offsetHeight===a.height||(i.restore&&(t=this.getCanvasData(),e=this.getCropBoxData()),this.render(),i.restore&&(this.setCanvasData(U(t,(function(e,i){t[i]=e*o}))),this.setCropBoxData(U(e,(function(t,i){e[i]=t*o})))))}},dblclick:function(){var t,e;this.disabled||"none"===this.options.dragMode||this.setDragMode((t=this.dragBox,e=h,(t.classList?t.classList.contains(e):t.className.indexOf(e)>-1)?"move":"crop"))},wheel:function(t){var e=this,i=Number(this.options.wheelZoomRatio)||.1,n=1;this.disabled||(t.preventDefault(),this.wheeling||(this.wheeling=!0,setTimeout((function(){e.wheeling=!1}),50),t.deltaY?n=t.deltaY>0?1:-1:t.wheelDelta?n=-t.wheelDelta/120:t.detail&&(n=t.detail>0?1:-1),this.zoom(-n*i,t)))},cropStart:function(t){var e=t.buttons,i=t.button;if(!(this.disabled||("mousedown"===t.type||"pointerdown"===t.type&&"mouse"===t.pointerType)&&(I(e)&&1!==e||I(i)&&0!==i||t.ctrlKey))){var n,a=this.options,o=this.pointers;t.changedTouches?U(t.changedTouches,(function(t){o[t.identifier]=ht(t)})):o[t.pointerId||0]=ht(t),n=Object.keys(o).length>1&&a.zoomable&&a.zoomOnTouch?"zoom":J(t.target,w),M.test(n)&&!1!==ot(this.element,"cropstart",{originalEvent:t,action:n})&&(t.preventDefault(),this.action=n,this.cropping=!1,"crop"===n&&(this.cropping=!0,q(this.dragBox,v)))}},cropMove:function(t){var e=this.action;if(!this.disabled&&e){var i=this.pointers;t.preventDefault(),!1!==ot(this.element,"cropmove",{originalEvent:t,action:e})&&(t.changedTouches?U(t.changedTouches,(function(t){Y(i[t.identifier]||{},ht(t,!0))})):Y(i[t.pointerId||0]||{},ht(t,!0)),this.change(t))}},cropEnd:function(t){if(!this.disabled){var e=this.action,i=this.pointers;t.changedTouches?U(t.changedTouches,(function(t){delete i[t.identifier]})):delete i[t.pointerId||0],e&&(t.preventDefault(),Object.keys(i).length||(this.action=""),this.cropping&&(this.cropping=!1,K(this.dragBox,v,this.cropped&&this.options.modal)),ot(this.element,"cropend",{originalEvent:t,action:e}))}}},Ct={change:function(t){var e,i=this.options,n=this.canvasData,a=this.containerData,r=this.cropBoxData,s=this.pointers,l=this.action,c=i.aspectRatio,u=r.left,d=r.top,h=r.width,p=r.height,m=u+h,g=d+p,v=0,b=0,w=a.width,y=a.height,x=!0;!c&&t.shiftKey&&(c=h&&p?h/p:1),this.limited&&(v=r.minLeft,b=r.minTop,w=v+Math.min(a.width,n.width,n.left+n.width),y=b+Math.min(a.height,n.height,n.top+n.height));var C=s[Object.keys(s)[0]],_={x:C.endX-C.startX,y:C.endY-C.startY},k=function(t){switch(t){case"e":m+_.x>w&&(_.x=w-m);break;case"w":u+_.xy&&(_.y=y-g)}};switch(l){case"all":u+=_.x,d+=_.y;break;case"e":if(_.x>=0&&(m>=w||c&&(d<=b||g>=y))){x=!1;break}k("e"),(h+=_.x)<0&&(l="w",u-=h=-h),c&&(p=h/c,d+=(r.height-p)/2);break;case"n":if(_.y<=0&&(d<=b||c&&(u<=v||m>=w))){x=!1;break}k("n"),p-=_.y,d+=_.y,p<0&&(l="s",d-=p=-p),c&&(h=p*c,u+=(r.width-h)/2);break;case"w":if(_.x<=0&&(u<=v||c&&(d<=b||g>=y))){x=!1;break}k("w"),h-=_.x,u+=_.x,h<0&&(l="e",u-=h=-h),c&&(p=h/c,d+=(r.height-p)/2);break;case"s":if(_.y>=0&&(g>=y||c&&(u<=v||m>=w))){x=!1;break}k("s"),(p+=_.y)<0&&(l="n",d-=p=-p),c&&(h=p*c,u+=(r.width-h)/2);break;case"ne":if(c){if(_.y<=0&&(d<=b||m>=w)){x=!1;break}k("n"),p-=_.y,d+=_.y,h=p*c}else k("n"),k("e"),_.x>=0?mb&&(p-=_.y,d+=_.y):(p-=_.y,d+=_.y);h<0&&p<0?(l="sw",d-=p=-p,u-=h=-h):h<0?(l="nw",u-=h=-h):p<0&&(l="se",d-=p=-p);break;case"nw":if(c){if(_.y<=0&&(d<=b||u<=v)){x=!1;break}k("n"),p-=_.y,d+=_.y,h=p*c,u+=r.width-h}else k("n"),k("w"),_.x<=0?u>v?(h-=_.x,u+=_.x):_.y<=0&&d<=b&&(x=!1):(h-=_.x,u+=_.x),_.y<=0?d>b&&(p-=_.y,d+=_.y):(p-=_.y,d+=_.y);h<0&&p<0?(l="se",d-=p=-p,u-=h=-h):h<0?(l="ne",u-=h=-h):p<0&&(l="sw",d-=p=-p);break;case"sw":if(c){if(_.x<=0&&(u<=v||g>=y)){x=!1;break}k("w"),h-=_.x,u+=_.x,p=h/c}else k("s"),k("w"),_.x<=0?u>v?(h-=_.x,u+=_.x):_.y>=0&&g>=y&&(x=!1):(h-=_.x,u+=_.x),_.y>=0?g=0&&(m>=w||g>=y)){x=!1;break}k("e"),p=(h+=_.x)/c}else k("s"),k("e"),_.x>=0?m=0&&g>=y&&(x=!1):h+=_.x,_.y>=0?gMath.abs(i)&&(i=l)}))})),i}(s),t),x=!1;break;case"crop":if(!_.x||!_.y){x=!1;break}e=rt(this.cropper),u=C.startX-e.left,d=C.startY-e.top,h=r.minWidth,p=r.minHeight,_.x>0?l=_.y>0?"se":"ne":_.x<0&&(u-=h,l=_.y>0?"sw":"nw"),_.y<0&&(d-=p),this.cropped||(Z(this.cropBox,f),this.cropped=!0,this.limited&&this.limitCropBox(!0,!0))}x&&(r.width=h,r.height=p,r.left=u,r.top=d,this.action=l,this.renderCropBox()),U(s,(function(t){t.startX=t.endX,t.startY=t.endY}))}},_t={crop:function(){return!this.ready||this.cropped||this.disabled||(this.cropped=!0,this.limitCropBox(!0,!0),this.options.modal&&q(this.dragBox,v),Z(this.cropBox,f),this.setCropBoxData(this.initialCropBoxData)),this},reset:function(){return this.ready&&!this.disabled&&(this.imageData=Y({},this.initialImageData),this.canvasData=Y({},this.initialCanvasData),this.cropBoxData=Y({},this.initialCropBoxData),this.renderCanvas(),this.cropped&&this.renderCropBox()),this},clear:function(){return this.cropped&&!this.disabled&&(Y(this.cropBoxData,{left:0,top:0,width:0,height:0}),this.cropped=!1,this.renderCropBox(),this.limitCanvas(!0,!0),this.renderCanvas(),Z(this.dragBox,v),q(this.cropBox,f)),this},replace:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return!this.disabled&&t&&(this.isImg&&(this.element.src=t),e?(this.url=t,this.image.src=t,this.ready&&(this.viewBoxImage.src=t,U(this.previews,(function(e){e.getElementsByTagName("img")[0].src=t})))):(this.isImg&&(this.replaced=!0),this.options.data=null,this.uncreate(),this.load(t))),this},enable:function(){return this.ready&&this.disabled&&(this.disabled=!1,Z(this.cropper,p)),this},disable:function(){return this.ready&&!this.disabled&&(this.disabled=!0,q(this.cropper,p)),this},destroy:function(){var t=this.element;return t.cropper?(t.cropper=void 0,this.isImg&&this.replaced&&(t.src=this.originalUrl),this.uncreate(),this):this},move:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,i=this.canvasData,n=i.left,a=i.top;return this.moveTo(O(t)?t:n+Number(t),O(e)?e:a+Number(e))},moveTo:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,i=this.canvasData,n=!1;return t=Number(t),e=Number(e),this.ready&&!this.disabled&&this.options.movable&&(I(t)&&(i.left=t,n=!0),I(e)&&(i.top=e,n=!0),n&&this.renderCanvas(!0)),this},zoom:function(t,e){var i=this.canvasData;return t=(t=Number(t))<0?1/(1-t):1+t,this.zoomTo(i.width*t/i.naturalWidth,null,e)},zoomTo:function(t,e,i){var n=this.options,a=this.canvasData,o=a.width,r=a.height,s=a.naturalWidth,l=a.naturalHeight;if((t=Number(t))>=0&&this.ready&&!this.disabled&&n.zoomable){var c=s*t,u=l*t;if(!1===ot(this.element,"zoom",{ratio:t,oldRatio:o/s,originalEvent:i}))return this;if(i){var d=this.pointers,h=rt(this.cropper),p=d&&Object.keys(d).length?function(t){var e=0,i=0,n=0;return U(t,(function(t){var a=t.startX,o=t.startY;e+=a,i+=o,n+=1})),{pageX:e/=n,pageY:i/=n}}(d):{pageX:i.pageX,pageY:i.pageY};a.left-=(c-o)*((p.pageX-h.left-a.left)/o),a.top-=(u-r)*((p.pageY-h.top-a.top)/r)}else j(e)&&I(e.x)&&I(e.y)?(a.left-=(c-o)*((e.x-a.left)/o),a.top-=(u-r)*((e.y-a.top)/r)):(a.left-=(c-o)/2,a.top-=(u-r)/2);a.width=c,a.height=u,this.renderCanvas(!0)}return this},rotate:function(t){return this.rotateTo((this.imageData.rotate||0)+Number(t))},rotateTo:function(t){return I(t=Number(t))&&this.ready&&!this.disabled&&this.options.rotatable&&(this.imageData.rotate=t%360,this.renderCanvas(!0,!0)),this},scaleX:function(t){var e=this.imageData.scaleY;return this.scale(t,I(e)?e:1)},scaleY:function(t){var e=this.imageData.scaleX;return this.scale(I(e)?e:1,t)},scale:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,i=this.imageData,n=!1;return t=Number(t),e=Number(e),this.ready&&!this.disabled&&this.options.scalable&&(I(t)&&(i.scaleX=t,n=!0),I(e)&&(i.scaleY=e,n=!0),n&&this.renderCanvas(!0,!0)),this},getData:function(){var t,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=this.options,n=this.imageData,a=this.canvasData,o=this.cropBoxData;if(this.ready&&this.cropped){t={x:o.left-a.left,y:o.top-a.top,width:o.width,height:o.height};var r=n.width/n.naturalWidth;if(U(t,(function(e,i){t[i]=e/r})),e){var s=Math.round(t.y+t.height),l=Math.round(t.x+t.width);t.x=Math.round(t.x),t.y=Math.round(t.y),t.width=l-t.x,t.height=s-t.y}}else t={x:0,y:0,width:0,height:0};return i.rotatable&&(t.rotate=n.rotate||0),i.scalable&&(t.scaleX=n.scaleX||1,t.scaleY=n.scaleY||1),t},setData:function(t){var e=this.options,i=this.imageData,n=this.canvasData,a={};if(this.ready&&!this.disabled&&j(t)){var o=!1;e.rotatable&&I(t.rotate)&&t.rotate!==i.rotate&&(i.rotate=t.rotate,o=!0),e.scalable&&(I(t.scaleX)&&t.scaleX!==i.scaleX&&(i.scaleX=t.scaleX,o=!0),I(t.scaleY)&&t.scaleY!==i.scaleY&&(i.scaleY=t.scaleY,o=!0)),o&&this.renderCanvas(!0,!0);var r=i.width/i.naturalWidth;I(t.x)&&(a.left=t.x*r+n.left),I(t.y)&&(a.top=t.y*r+n.top),I(t.width)&&(a.width=t.width*r),I(t.height)&&(a.height=t.height*r),this.setCropBoxData(a)}return this},getContainerData:function(){return this.ready?Y({},this.containerData):{}},getImageData:function(){return this.sized?Y({},this.imageData):{}},getCanvasData:function(){var t=this.canvasData,e={};return this.ready&&U(["left","top","width","height","naturalWidth","naturalHeight"],(function(i){e[i]=t[i]})),e},setCanvasData:function(t){var e=this.canvasData,i=e.aspectRatio;return this.ready&&!this.disabled&&j(t)&&(I(t.left)&&(e.left=t.left),I(t.top)&&(e.top=t.top),I(t.width)?(e.width=t.width,e.height=t.width/i):I(t.height)&&(e.height=t.height,e.width=t.height*i),this.renderCanvas(!0)),this},getCropBoxData:function(){var t,e=this.cropBoxData;return this.ready&&this.cropped&&(t={left:e.left,top:e.top,width:e.width,height:e.height}),t||{}},setCropBoxData:function(t){var e,i,n=this.cropBoxData,a=this.options.aspectRatio;return this.ready&&this.cropped&&!this.disabled&&j(t)&&(I(t.left)&&(n.left=t.left),I(t.top)&&(n.top=t.top),I(t.width)&&t.width!==n.width&&(e=!0,n.width=t.width),I(t.height)&&t.height!==n.height&&(i=!0,n.height=t.height),a&&(e?n.height=n.width/a:i&&(n.width=n.height*a)),this.renderCropBox()),this},getCroppedCanvas:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!this.ready||!window.HTMLCanvasElement)return null;var e=this.canvasData,i=ft(this.image,this.imageData,e,t);if(!this.cropped)return i;var n=this.getData(),a=n.x,o=n.y,s=n.width,l=n.height,c=i.width/Math.floor(e.naturalWidth);1!==c&&(a*=c,o*=c,s*=c,l*=c);var u=s/l,d=pt({aspectRatio:u,width:t.maxWidth||1/0,height:t.maxHeight||1/0}),h=pt({aspectRatio:u,width:t.minWidth||0,height:t.minHeight||0},"cover"),p=pt({aspectRatio:u,width:t.width||(1!==c?i.width:s),height:t.height||(1!==c?i.height:l)}),f=p.width,m=p.height;f=Math.min(d.width,Math.max(h.width,f)),m=Math.min(d.height,Math.max(h.height,m));var g=document.createElement("canvas"),v=g.getContext("2d");g.width=$(f),g.height=$(m),v.fillStyle=t.fillColor||"transparent",v.fillRect(0,0,f,m);var b=t.imageSmoothingEnabled,w=void 0===b||b,y=t.imageSmoothingQuality;v.imageSmoothingEnabled=w,y&&(v.imageSmoothingQuality=y);var x,C,_,k,T,S,M=i.width,D=i.height,A=a,E=o;A<=-s||A>M?(A=0,x=0,_=0,T=0):A<=0?(_=-A,A=0,T=x=Math.min(M,s+A)):A<=M&&(_=0,T=x=Math.min(s,M-A)),x<=0||E<=-l||E>D?(E=0,C=0,k=0,S=0):E<=0?(k=-E,E=0,S=C=Math.min(D,l+E)):E<=D&&(k=0,S=C=Math.min(l,D-E));var L=[A,E,x,C];if(T>0&&S>0){var P=f/s;L.push(_*P,k*P,T*P,S*P)}return v.drawImage.apply(v,[i].concat(r(L.map((function(t){return Math.floor($(t))}))))),g},setAspectRatio:function(t){var e=this.options;return this.disabled||O(t)||(e.aspectRatio=Math.max(0,t)||NaN,this.ready&&(this.initCropBox(),this.cropped&&this.renderCropBox())),this},setDragMode:function(t){var e=this.options,i=this.dragBox,n=this.face;if(this.ready&&!this.disabled){var a="crop"===t,o=e.movable&&"move"===t;t=a||o?t:"none",e.dragMode=t,tt(i,w,t),K(i,h,a),K(i,b,o),e.cropBoxMovable||(tt(n,w,t),K(n,h,a),K(n,b,o))}return this}},kt=c.Cropper,Tt=function(){function t(i){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e(this,t),!i||!E.test(i.tagName))throw new Error("The first argument is required and must be an or