UNPKG

js-web-screen-shot

Version:

web端自定义截屏插件(原生JS版)

1 lines 298 kB
!function(A,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(A="undefined"!=typeof globalThis?globalThis:A||self).screenShotPlugin=e()}(this,(function(){"use strict";var A=function(){return A=Object.assign||function(A){for(var e,t=1,r=arguments.length;t<r;t++)for(var n in e=arguments[t])Object.prototype.hasOwnProperty.call(e,n)&&(A[n]=e[n]);return A},A.apply(this,arguments)};function e(A,e,t,r){return new(t||(t=Promise))((function(n,o){function i(A){try{B(r.next(A))}catch(A){o(A)}}function s(A){try{B(r.throw(A))}catch(A){o(A)}}function B(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(i,s)}B((r=r.apply(A,e||[])).next())}))}function t(A,e){var t,r,n,o,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(B){return function(s){if(t)throw new TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(i=0)),i;)try{if(t=1,r&&(n=2&s[0]?r.return:s[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,s[1])).done)return n;switch(r=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(n=i.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){i.label=s[1];break}if(6===s[0]&&i.label<n[1]){i.label=n[1],n=s;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(s);break}n[2]&&i.ops.pop(),i.trys.pop();continue}s=e.call(A,i)}catch(A){s=[6,A],r=0}finally{t=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,B])}}}"function"==typeof SuppressedError&&SuppressedError;var r=[{id:1,title:"square"},{id:2,title:"round"},{id:3,title:"right-top"},{id:4,title:"brush"},{id:5,title:"mosaicPen"},{id:6,title:"text"},{id:7,title:"separateLine"},{id:8,title:"save"},{id:9,title:"undo"},{id:10,title:"close"},{id:11,title:"confirm"}];function n(A,e,t){var r=function(A){var e="";switch(A){case 1:e="square-active";break;case 2:e="round-active";break;case 3:e="right-top-active";break;case 4:e="brush-active";break;case 5:e="mosaicPen-active";break;case 6:e="text-active"}return e}(e);t&&(r=function(A){var e="";switch(A){case 1:e="brush-small-active";break;case 2:e="brush-medium-active";break;case 3:e="brush-big-active"}return e}(e));for(var n=(A.path||A.composedPath&&A.composedPath())[1].children,o=0;o<n.length;o++){var i=n[o];if(Number(i.getAttribute("data-id"))>100&&e!==Number.MAX_VALUE){console.log("reset icon");var s=i.getAttribute("data-icon");i.style.backgroundImage="url(".concat(s,")")}i.className.includes("active")&&i.classList.remove(i.classList[2])}r&&(A.target.className+=" "+r)}function o(){var A,e=new aA;e.popHistory();var t=null===(A=e.getScreenShotContainer())||void 0===A?void 0:A.getContext("2d");null!=t&&e.getHistory().length>0&&t.putImageData(e.getHistory()[e.getHistory().length-1].data,0,0),e.setUndoClickNum(e.getUndoClickNum()+1),e.getHistory().length-1<=0&&(e.setUndoClickNum(0),e.setUndoStatus(!1))}function i(A,e,t){void 0===t&&(t=document.body);var r=t.getBoundingClientRect();return{left:A||Math.abs(r.left),top:e||Math.abs(r.top)}}var s,B=!0,a=null,c=!1,l=0,g=0,u=!1,w=null,h=!0,Q={r:0,g:0,b:0,a:.6},C=!0,d="#2CABFF",U=15,F=!1,p=!1,f=!1,m={w:0,h:0},H=[],I=null,E=null,y=null,v=null,b=0,S=function(){function e(){c&&(B=!0,l=0,g=0,d="#2CABFF",u=!1,C=!0,a=null,c=!1,w=null,E=null,U=15,F=!1,p=!1,y=null,h=!0,H=[],I=null,b=0)}return e.prototype.setInitStatus=function(A){c=A},e.prototype.getInitStatus=function(){return c},e.prototype.getWebRtcStatus=function(){return B},e.prototype.setWebRtcStatus=function(A){B=A},e.prototype.setScreenShotDom=function(A){w=A},e.prototype.getCutBoxBdColor=function(){return d},e.prototype.setCutBoxBdColor=function(A){d=A},e.prototype.getScreenShotDom=function(){return w},e.prototype.getScreenFlow=function(){return a},e.prototype.setScreenFlow=function(A){a=A},e.prototype.getCanvasSize=function(){return{canvasWidth:l,canvasHeight:g}},e.prototype.setCanvasSize=function(A,e){l=A,g=e},e.prototype.getShowScreenDataStatus=function(){return u},e.prototype.setShowScreenDataStatus=function(A){u=A},e.prototype.setMaskColor=function(A){Q.r=A.r,Q.g=A.g,Q.b=A.b,Q.a=A.a},e.prototype.getMaskColor=function(){return Q},e.prototype.setWriteImgState=function(A){C=A},e.prototype.getWriteImgState=function(){return C},e.prototype.setSaveCallback=function(A){E=A},e.prototype.getSaveCallback=function(){return E},e.prototype.setMaxUndoNum=function(A){U=A},e.prototype.getMaxUndoNum=function(){return U},e.prototype.setRatioArrow=function(A){F=A},e.prototype.getRatioArrow=function(){return F},e.prototype.setImgAutoFit=function(A){p=A},e.prototype.getImgAutoFit=function(){return p},e.prototype.setUseCustomImgSize=function(A,e){A&&e&&(f=!0,m=e)},e.prototype.getCustomImgSize=function(){return{useCustomImgSize:f,customImgSize:m}},e.prototype.setSaveImgTitle=function(A){y=A},e.prototype.getSaveImgTitle=function(){return y},e.prototype.setDestroyContainerState=function(A){h=A},e.prototype.getDestroyContainerState=function(){return h},e.prototype.setUserToolbar=function(e){for(var t=[],r=0;r<e.length;r++){var n=e[r];t.push(A(A({},n),{id:100+(r+1)}))}H=t},e.prototype.getUserToolbar=function(){return H},e.prototype.setH2cCrossImgLoadErrFn=function(A){I=A},e.prototype.getH2cCrossImgLoadErrFn=function(){return I},e.prototype.setCanvasEvents=function(A){v=A},e.prototype.getCanvasEvents=function(){return v},e.prototype.getMenuBarHeight=function(){return b},e.prototype.setMenuBarHeight=function(A){b=A},e}(),K=!1,x=!1,L=!1,D="#F53340",T="",M=null,P=2,O=10,k=0,G=[],R=!1,V={startX:0,startY:0,width:0,height:0},X=null,N=null,J=null,Y=null,W=null,Z=null,z=null,q=null,j=17,_=null,$=null,AA=null,eA=null,tA=null,rA=null,nA=!1,oA=!1,iA="",sA=!1,BA=!1,aA=function(){function A(){oA&&(oA=!1,X=null,x=!1,N=null,Y=null,_=null,W=null,Z=null,z=null,q=null,J=null,V={startX:0,startY:0,width:0,height:0},L=!1,sA=!1,BA=!1,R=!1,D="#F53340",T="",M=null,P=2,j=17,O=10,G=[],k=0,$=null,AA=null,eA=null,tA=null)}return A.prototype.setInitStatus=function(A){oA=A},A.prototype.setScreenShotInfo=function(A,e){this.getScreenShotContainer(),null!=X&&(nA&&document.body.classList.add("__screenshot-lock-scroll"),X.width=A,X.height=e)},A.prototype.setScreenShotPosition=function(A,e){if(this.getScreenShotContainer(),null!=X){var t=i(A,e),r=t.left,n=t.top;X.style.left=r+"px",X.style.top=n+"px"}},A.prototype.showScreenShotPanel=function(){this.getScreenShotContainer(),null!=X&&(X.style.display="block")},A.prototype.getScreenShotContainer=function(){return X=document.getElementById("screenShotContainer")},A.prototype.getToolController=function(){return N=document.getElementById("toolPanel")},A.prototype.getCutBoxSizeContainer=function(){return J=document.getElementById("cutBoxSizePanel")},A.prototype.getTextInputController=function(){return Y=document.getElementById("textInputPanel")},A.prototype.getTextStatus=function(){return false},A.prototype.getScreenShotImageController=function(){return rA},A.prototype.setScreenShotImageController=function(A){rA=A},A.prototype.setToolStatus=function(A){N=this.getToolController(),N.style.display=A?"block":"none"},A.prototype.setCutBoxSizeStatus=function(A){null!=J&&(J.style.display=A?"flex":"none")},A.prototype.setCutBoxSizePosition=function(A,e){if(null!=J){var t=i(A,e),r=t.left,n=t.top;J.style.left=r+"px";var o=0;X&&(o=parseInt(X.style.top)),J.style.top=n+o+"px"}},A.prototype.setTextEditState=function(A){BA=A},A.prototype.getTextEditState=function(){return BA},A.prototype.setCutBoxSize=function(A,e){if(null!=J){A=Math.floor(A),e=Math.floor(e);var t=J.childNodes;if(t.length>0)t[0].innerText="".concat(A," * ").concat(e);else{var r=document.createElement("p");r.innerText="".concat(A," * ").concat(e),J.appendChild(r)}}},A.prototype.setTextStatus=function(A){null!=(Y=this.getTextInputController())&&(Y.style.display=A?"block":"none")},A.prototype.setToolInfo=function(A,e){N=document.getElementById("toolPanel");var t=i(A,e),r=t.left,n=t.top;N.style.left=r+"px";var o=0;X&&(o=parseInt(X.style.top)),N.style.top=n+o+"px"},A.prototype.getToolClickStatus=function(){return L},A.prototype.setToolClickStatus=function(A){L=A},A.prototype.setResetScrollbarState=function(A){sA=A},A.prototype.getResetScrollbarState=function(){return sA},A.prototype.getCutOutBoxPosition=function(){return V},A.prototype.getDragging=function(){return x},A.prototype.setDragging=function(A){x=A},A.prototype.getDraggingTrim=function(){return K},A.prototype.getToolPositionStatus=function(){return R},A.prototype.setToolPositionStatus=function(A){R=A},A.prototype.setDraggingTrim=function(A){K=A},A.prototype.setCutOutBoxPosition=function(A,e,t,r){V.startX=A,V.startY=e,V.width=t,V.height=r},A.prototype.setFontSize=function(A){j=A},A.prototype.setOptionStatus=function(A){if(W=this.getOptionIcoController(),_=this.getOptionController(),null!=W&&null!=_){if(A)return W.style.display="block",void(_.style.display="block");W.style.display="none",_.style.display="none"}},A.prototype.getFontSize=function(){return j},A.prototype.setTextSizeOptionStatus=function(A){null!=(Z=this.getOptionTextSizeController())&&(Z.style.display=A?"flex":"none")},A.prototype.setTextSizePanelStatus=function(A){if(null!=(q=this.getTextSizeContainer()))return A?(console.log("显示"),void(q.style.display="flex")):void(q.style.display="none")},A.prototype.setBrushSelectionStatus=function(A){null!=(z=this.getBrushSelectionController())&&(z.style.display=A?"block":"none")},A.prototype.hiddenOptionIcoStatus=function(){null!=(W=this.getOptionIcoController())&&(W.style.display="none")},A.prototype.getOptionIcoController=function(){return W=document.getElementById("optionIcoController")},A.prototype.getTextSizeContainer=function(){return q=document.getElementById("textSizePanel")},A.prototype.getOptionTextSizeController=function(){return Z=document.getElementById("textSelectPanel")},A.prototype.getBrushSelectionController=function(){return z=document.getElementById("brushSelectPanel")},A.prototype.getOptionController=function(){return _=document.getElementById("optionPanel")},A.prototype.setOptionPosition=function(A){if(W=this.getOptionIcoController(),_=this.getOptionController(),null!=W&&null!=_){var e=this.getToolPosition();if(null!=e){var t=e.left+A+"px",r=e.top+44+"px",n=e.left+"px",o=e.top+44+6+"px";W.style.left=t,W.style.top=r,_.style.left=n,_.style.top=o}}},A.prototype.getToolPosition=function(){if(null!=(N=this.getToolController()))return{left:N.offsetLeft,top:N.offsetTop}},A.prototype.getSelectedColor=function(){return D},A.prototype.setSelectedColor=function(A){D=A,null!=(eA=this.getColorSelectPanel())&&(eA.style.backgroundColor=D)},A.prototype.getColorSelectPanel=function(){return eA=document.getElementById("colorSelectPanel")},A.prototype.getToolName=function(){return T},A.prototype.setToolName=function(A){T=A},A.prototype.getToolId=function(){return M},A.prototype.setToolId=function(A){M=A},A.prototype.getPenSize=function(){return P},A.prototype.setPenSize=function(A){P=A},A.prototype.getMosaicPenSize=function(){return O},A.prototype.setMosaicPenSize=function(A){O=A},A.prototype.getBorderSize=function(){return 10},A.prototype.getHistory=function(){return G},A.prototype.shiftHistory=function(){return G.shift()},A.prototype.popHistory=function(){return G.pop()},A.prototype.pushHistory=function(A){G.push(A)},A.prototype.getUndoClickNum=function(){return k},A.prototype.setUndoClickNum=function(A){k=A},A.prototype.getColorPanel=function(){return $=document.getElementById("colorPanel")},A.prototype.setColorPanelStatus=function(A){null!=($=this.getColorPanel())&&($.style.display=A?"flex":"none")},A.prototype.getNoScrollStatus=function(){return nA},A.prototype.setNoScrollStatus=function(A){null!=A&&(nA=A)},A.prototype.setActiveToolName=function(A){iA=A},A.prototype.getActiveToolName=function(){return iA},A.prototype.setTextInfo=function(A){s=A},A.prototype.getTextInfo=function(){return s},A.prototype.getRightPanel=function(){return AA=document.getElementById("rightPanel")},A.prototype.setRightPanel=function(A){null!=(AA=this.getRightPanel())&&(AA.style.display=A?"flex":"none")},A.prototype.setUndoStatus=function(A){if(null!=(tA=this.getUndoController())){if(A)return tA.classList.add("undo"),tA.classList.remove("undo-disabled"),void tA.addEventListener("click",this.cancelEvent);tA.classList.add("undo-disabled"),tA.classList.remove("undo"),tA.removeEventListener("click",this.cancelEvent)}},A.prototype.cancelEvent=function(){o()},A.prototype.getUndoController=function(){return tA=document.getElementById("undoPanel")},A.prototype.destroyDOM=function(){if(null!=X&&null!=N&&null!=W&&null!=_&&null!=Y&&null!=J){var A=new S;nA&&document.body.classList.remove("__screenshot-lock-scroll"),document.body.removeChild(X),document.body.removeChild(N),document.body.removeChild(W),document.body.removeChild(_),document.body.removeChild(Y),document.body.removeChild(J),document.body.classList.contains("no-cursor")&&document.body.classList.remove("no-cursor"),sA&&(document.documentElement.classList.remove("hidden-screen-shot-scroll"),document.body.classList.remove("hidden-screen-shot-scroll")),A.setInitStatus(!0)}},A}();function cA(A,e,t){var r=window.devicePixelRatio||1;A.width=Math.round(e*r),A.height=Math.round(t*r),A.style.width=e+"px",A.style.height=t+"px";var n=A.getContext("2d");return n&&n.scale(r,r),n}function lA(A){var e,t=new aA,r=new S,n=null===(e=t.getScreenShotContainer())||void 0===e?void 0:e.getContext("2d"),o=t.getCutOutBoxPosition(),i=o.startX,s=o.startY,B=o.width,a=o.height,c="";return n&&(A?function(A,e,t,r,n){var o=new S,i=window.devicePixelRatio||1,s=A.getImageData(e*i,t*i,r*i,n*i),B=document.createElement("canvas"),a=cA(B,r,n);if(a){a.putImageData(s,0,0);var c=document.createElement("a");c.href=B.toDataURL("png");var l=(null==o?void 0:o.getSaveImgTitle())||(new Date).getTime();c.download="".concat(l,".png"),c.click()}}(n,i,s,B,a):c=function(A,e,t,r,n,o,i){void 0===o&&(o=.75),void 0===i&&(i=!0);var s=window.devicePixelRatio||1,B=A.getImageData(e*s,t*s,r*s,n*s),a=document.createElement("canvas"),c=cA(a,r,n);return c?(c.putImageData(B,0,0),i&&(null==a||a.toBlob((function(A){var e,t;if(null!=A){var r=window.ClipboardItem;if(null==r)return a.toDataURL("png");var n=new r(((e={})[A.type]=A,e));null===(t=navigator.clipboard)||void 0===t||t.write([n]).then((function(){return"写入成功"}))}}),"image/png",o)),a.toDataURL("png")):""}(n,i,s,B,a,.75,r.getWriteImgState())),c}function gA(A,e,t,r,n,o,i,s,B){void 0===B&&(B=!0);var a=null==i?void 0:i.width,c=null==i?void 0:i.height,l=window.devicePixelRatio||1,g=new S;if(a&&c&&s&&i){n.clearRect(0,0,a,c),t=0!=t?t:5,r=0!=r?r:5,n.save();var u=g.getMaskColor();if(n.fillStyle="rgba(0, 0, 0, .6)",u&&(n.fillStyle="rgba(".concat(u.r,", ").concat(u.g,", ").concat(u.b,", ").concat(u.a,")")),n.fillRect(0,0,a,c),n.globalCompositeOperation="source-atop",n.clearRect(A,e,t,r),n.globalCompositeOperation="source-over",n.fillStyle=g.getCutBoxBdColor(),B){var w=o;n.fillRect(A-w/2,e-w/2,w,w),n.fillRect(A-w/2+t/2,e-w/2,w,w),n.fillRect(A-w/2+t,e-w/2,w,w),n.fillRect(A-w/2,e-w/2+r/2,w,w),n.fillRect(A-w/2+t,e-w/2+r/2,w,w),n.fillRect(A-w/2,e-w/2+r,w,w),n.fillRect(A-w/2+t/2,e-w/2+r,w,w),n.fillRect(A-w/2+t,e-w/2+r,w,w)}n.restore(),n.save(),n.globalCompositeOperation="destination-over";var h={imgWidth:parseInt(null==i?void 0:i.style.width),imgHeight:parseInt(null==i?void 0:i.style.height)},Q=h.imgWidth,C=h.imgHeight,d=g.getScreenShotDom();if(null!=d&&(Q=d.clientWidth,C=d.clientHeight),g.getCustomImgSize().useCustomImgSize){var U=g.getCustomImgSize().customImgSize;Q=U.w,C=U.h}return g.getWebRtcStatus()||g.getImgAutoFit()||g.getCustomImgSize().useCustomImgSize||null!=d||(Q=s.width/l,C=s.height/l),n.drawImage(s,0,0,Q,C),n.restore(),t>0&&r>0?{startX:A,startY:e,width:t,height:r}:t<0&&r<0?{startX:A+t,startY:e+r,width:Math.abs(t),height:Math.abs(r)}:t>0&&r<0?{startX:A,startY:e+r,width:t,height:Math.abs(r)}:t<0&&r>0?{startX:A+t,startY:e,width:Math.abs(t),height:r}:{startX:A,startY:e,width:t,height:r}}}function uA(A,e,t,r,n,o){o.save(),o.lineWidth=1,o.fillStyle=r,o.textBaseline="middle",o.font="bold ".concat(n,"px none");var i=A.split("\n");console.log(i);var s=1.4*n;i.forEach((function(A,r){var n=t+s*r;o.fillText(A,e,n)})),o.restore()}function wA(){var A=new aA,e=new S,t=A.getScreenShotContainer();if(null!=t){var r=t.getContext("2d"),n=t;A.getHistory().length>e.getMaxUndoNum()&&A.shiftHistory(),A.pushHistory({data:r.getImageData(0,0,n.width,n.height)}),A.setUndoStatus(!0)}}function hA(A){var e=new aA;A.putImageData(e.getHistory()[e.getHistory().length-1].data,0,0)}function QA(){var A=new aA,e=A.getTextInputController(),t=A.getScreenShotContainer(),r=A.getScreenShotImageController();if(null==t||null==r)return null;var n=t.getContext("2d");return{textInputController:e,screenShotController:t,ScreenShotImageController:r,screenShotCanvas:n}}function CA(A,e){var t=new aA,r=t.getTextInputController();if(null!=r&&t.getTextStatus()||null!=r&&"text"!==A){var n=r.innerText;if(n&&""!==n){var o=t.getTextInfo();uA(n,o.positionX,o.positionY,o.color,o.size,e),wA()}r.innerHTML="",t.setTextStatus(!1)}}function dA(A,e,t){var r,n,o=new aA,i=(null===(r=o.getToolPosition())||void 0===r?void 0:r.left)||0,s=(null===(n=o.getToolPosition())||void 0===n?void 0:n.top)||0;s&&o.getToolPositionStatus()&&o.setToolInfo(i,s-46),o.setToolStatus(!0);var B=o.getCutOutBoxPosition();gA(B.startX,B.startY,B.width,B.height,A,o.getBorderSize(),e,t,!1)}function UA(A,e,t){var r=new aA;n(t,e,!0);var o=2;switch(A){case"small":o=2;break;case"medium":o=5;break;case"big":o=10}return r.setPenSize(o),o}function FA(A,e,t){var r=new aA;n(t,e,!0);var o=10;switch(A){case"small":o=10;break;case"medium":o=20;break;case"big":o=40}return r.setMosaicPenSize(o),o}function pA(){(new aA).setColorPanelStatus(!0)}var fA=function(){function A(A){var e;this.textFontSizeList=[12,13,14,15,16,17,20,24,36,48,64,72,96];var t=new S;if(this.screenShotController=document.createElement("canvas"),this.toolController=document.createElement("div"),this.optionIcoController=document.createElement("div"),this.optionController=document.createElement("div"),this.cutBoxSizeContainer=document.createElement("div"),this.textInputController=document.createElement("div"),this.completeCallback=null==A?void 0:A.completeCallback,this.closeCallback=null==A?void 0:A.closeCallback,this.hiddenIcoArr=[],this.toolbar=Object.assign([],r),this.data=new aA,this.optionController.addEventListener("click",(function(A){var e=A.target;"colorSelectPanel"!==e.id&&"textSizePanel"!==e.id&&((new aA).setTextSizeOptionStatus(!1),(new aA).setColorPanelStatus(!1))})),A&&Object.prototype.hasOwnProperty.call(A,"completeCallback")||(this.completeCallback=function(A){sessionStorage.setItem("screenShotImg",JSON.stringify(A))}),null==A?void 0:A.hiddenToolIco)for(var n in A.hiddenToolIco)A.hiddenToolIco[n]&&this.filterHideIcon(n);this.setAllControllerId(),this.setOptionIcoClassName(),(e=this.toolbar).splice.apply(e,function(A,e,t){if(t||2===arguments.length)for(var r,n=0,o=e.length;n<o;n++)!r&&n in e||(r||(r=Array.prototype.slice.call(e,0,n)),r[n]=e[n]);return A.concat(r||Array.prototype.slice.call(e))}([r.length-2,0],t.getUserToolbar(),!1)),this.setToolBarIco(),this.setTextSizeSelectPanel(),this.setBrushSelectPanel(),this.setTextInputPanel(),this.setDomToBody(),this.hiddenAllDom()}return A.prototype.setToolBarIco=function(){for(var A=0;A<this.toolbar.length;A++){for(var e=this.toolbar[A],t=!1,r=0;r<this.hiddenIcoArr.length;r++)if(this.hiddenIcoArr[r]===e.title){t=!0;break}if(!t){var n=document.createElement("div");this.bindToolClickEvent(n,e),n.setAttribute("data-title",e.title),n.setAttribute("data-id",e.id+""),(null==e?void 0:e.icon)&&n.setAttribute("data-icon",e.icon),this.toolController.appendChild(n)}}this.hiddenIcoArr.length>0&&(this.toolController.style.minWidth="24px")},A.prototype.setTextSizeSelectPanel=function(){var A=document.createElement("div");A.className="text-size-panel",A.innerText="".concat((new aA).getFontSize()," px"),A.id="textSizePanel";var e=document.createElement("div");e.className="text-select-panel",e.id="textSelectPanel";for(var t=function(t){var n=document.createElement("div"),o=r.textFontSizeList[t];n.className="text-item",n.setAttribute("data-value","".concat(o)),n.innerText="".concat(o," px"),n.addEventListener("click",(function(){e.style.display="none";var t=n.getAttribute("data-value");A.innerText="".concat(t," px"),t&&function(A){(new aA).setFontSize(A)}(+t)})),e.appendChild(n)},r=this,n=0;n<this.textFontSizeList.length;n++)t(n);A.style.display="none",e.style.display="none",A.addEventListener("click",(function(){(new aA).setTextSizeOptionStatus(!0)})),this.optionController.appendChild(A),this.optionController.appendChild(e)},A.prototype.setBrushSelectPanel=function(){var A=document.createElement("div");A.id="brushSelectPanel",A.className="brush-select-panel";for(var e=0;e<3;e++){var t=document.createElement("div");switch(t.className="item-panel",e){case 0:t.classList.add("brush-small"),t.classList.add("brush-small-active"),t.addEventListener("click",(function(A){UA("small",1,A),FA("small",1,A)}));break;case 1:t.classList.add("brush-medium"),t.addEventListener("click",(function(A){UA("medium",2,A),FA("medium",2,A)}));break;case 2:t.classList.add("brush-big"),t.addEventListener("click",(function(A){UA("big",3,A),FA("big",3,A)}))}A.appendChild(t)}var r=document.createElement("div");r.className="right-panel";var n=document.createElement("div");n.className="color-select-panel",n.id="colorSelectPanel",n.addEventListener("click",(function(){pA()}));var o=document.createElement("div");o.id="colorPanel",o.className="color-panel",o.style.display="none";var i=function(A){var e=document.createElement("div");e.className="color-item",e.addEventListener("click",(function(){!function(A){var e=new aA,t="#F53440";switch(A){case 1:t="#F53440";break;case 2:t="#F65E95";break;case 3:t="#D254CF";break;case 4:t="#12A9D7";break;case 5:t="#30A345";break;case 6:t="#FACF50";break;case 7:t="#F66632";break;case 8:t="#989998";break;case 9:t="#000000";break;case 10:t="#FEFFFF"}e.setSelectedColor(t),e.setColorPanelStatus(!1)}(A+1)})),e.setAttribute("data-index",A+""),o.appendChild(e)};for(e=0;e<10;e++)i(e);r.appendChild(o),r.appendChild(n),r.id="rightPanel";var s=document.createElement("div");s.className="pull-down-arrow",s.addEventListener("click",(function(){pA()})),r.appendChild(s),this.optionController.appendChild(A),this.optionController.appendChild(r)},A.prototype.setTextInputPanel=function(){this.textInputController.contentEditable="true",this.textInputController.spellcheck=!1},A.prototype.setAllControllerId=function(){this.screenShotController.id="screenShotContainer",this.toolController.id="toolPanel",this.optionIcoController.id="optionIcoController",this.optionController.id="optionPanel",this.cutBoxSizeContainer.id="cutBoxSizePanel",this.textInputController.id="textInputPanel"},A.prototype.hiddenAllDom=function(){this.screenShotController.style.display="none",this.toolController.style.display="none",this.optionIcoController.style.display="none",this.optionController.style.display="none",this.cutBoxSizeContainer.style.display="none",this.textInputController.style.display="none"},A.prototype.setDomToBody=function(){this.clearBody(),document.body.appendChild(this.screenShotController),document.body.appendChild(this.toolController),document.body.appendChild(this.optionIcoController),document.body.appendChild(this.optionController),document.body.appendChild(this.cutBoxSizeContainer),document.body.appendChild(this.textInputController)},A.prototype.clearBody=function(){var A,e,t,r,n,o;null===(A=document.getElementById("screenShotContainer"))||void 0===A||A.remove(),null===(e=document.getElementById("toolPanel"))||void 0===e||e.remove(),null===(t=document.getElementById("optionIcoController"))||void 0===t||t.remove(),null===(r=document.getElementById("optionPanel"))||void 0===r||r.remove(),null===(n=document.getElementById("optionPanel"))||void 0===n||n.remove(),null===(o=document.getElementById("textInputPanel"))||void 0===o||o.remove()},A.prototype.setOptionIcoClassName=function(){this.optionIcoController.className="ico-panel"},A.prototype.filterHideIcon=function(A){if("rightTop"===A)this.hiddenIcoArr.push("right-top");else this.hiddenIcoArr.push(A)},A.prototype.bindToolClickEvent=function(A,e){var t=this;if("undo"==e.title)return A.className="item-panel undo-disabled",void(A.id="undoPanel");A.className="item-panel ".concat(e.title),e.id<=100?A.addEventListener("click",(function(A){!function(A,e,t,r,i){var s,B=new aA,a=new S;B.setActiveToolName(A),B.setToolId(e);var c=QA();if(null!=c){var l=c.screenShotController,g=c.ScreenShotImageController,u=c.screenShotCanvas;if(B.getToolClickStatus()||dA(u,l,g),B.setToolName(A),n(t,e,!1),"text"===A?(B.setTextSizePanelStatus(!0),B.setBrushSelectionStatus(!1),null===(s=B.getColorSelectPanel())||void 0===s||s.classList.add("text-select-status")):(B.setTextSizePanelStatus(!1),B.setBrushSelectionStatus(!0)),B.setOptionStatus(!0),B.setOptionPosition(function(A){switch(A){case 1:return 16;case 2:return 56;case 3:return 90;case 4:return 128;case 5:return 174;case 6:return 210;default:return 0}}(e)),B.setRightPanel(!0),"mosaicPen"==A&&(B.setRightPanel(!1),B.hiddenOptionIcoStatus()),CA(A,u),B.setDragging(!1),B.setDraggingTrim(!1),"save"==A){lA(!0);var w=a.getSaveCallback();w&&w(0,"保存成功"),B.destroyDOM(),B.setInitStatus(!0)}if("close"==A&&(i&&i(),B.destroyDOM(),B.setInitStatus(!0)),"confirm"==A){var h=lA(!1);if(r&&r({base64:h,cutInfo:B.getCutOutBoxPosition()}),!a.getDestroyContainerState())return B.setToolStatus(!1),void B.setOptionStatus(!1);B.destroyDOM(),B.setInitStatus(!0)}"undo"==A&&(B.setOptionStatus(!1),o()),B.setToolClickStatus(!0)}}(e.title,e.id,A,t.completeCallback,t.closeCallback)})):(A.addEventListener("click",(function(A){!function(A,e,t,r,o){var i=new aA;i.setActiveToolName(e),i.setToolId(A),o.target.style.backgroundImage="url(".concat(t,")");var s=QA();if(null!=s){var B=s.screenShotController,a=s.ScreenShotImageController,c=s.screenShotCanvas;i.getToolClickStatus()||dA(c,B,a),r({screenShotCanvas:c,screenShotController:B,ScreenShotImageController:a,currentInfo:{toolName:e,toolId:A},imgInfo:{base64:lA(!1),cutInfo:i.getCutOutBoxPosition()}}),i.setToolName(e),n(o,Number.MAX_VALUE,!1),i.setOptionStatus(!1),CA(e,c),i.setDragging(!1),i.setDraggingTrim(!1),i.setToolClickStatus(!0)}}(e.id,e.title,e.activeIcon,e.clickFn,A)})),A.style.backgroundImage="url(".concat(e.icon,")"),A.style.backgroundSize="cover",A.addEventListener("mouseenter",(function(A){t.switchBgIcon(A,e.activeIcon,t.data.getToolId())})),A.addEventListener("mouseleave",(function(A){t.switchBgIcon(A,e.icon,t.data.getToolId())})))},A.prototype.switchBgIcon=function(A,e,t){var r=A.target;t!==Number(r.getAttribute("data-id"))&&(r.style.backgroundImage="url(".concat(e,")"))},A}();function mA(A){return A>0?A:0}function HA(A,e,t){return mA(A)+e>t?mA(t-e):mA(A)}!function(A,e){void 0===e&&(e={});var t=e.insertAt;if(A&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===t&&r.firstChild?r.insertBefore(n,r.firstChild):r.appendChild(n),n.styleSheet?n.styleSheet.cssText=A:n.appendChild(document.createTextNode(A))}}('#screenShotContainer{cursor:crosshair;left:0;position:absolute;top:0}#toolPanel{background:#fff;box-sizing:content-box;height:24px;left:0;min-width:392px;padding:10px;position:absolute;top:0;z-index:9999}#toolPanel .item-panel{float:left;height:24px;margin-right:15px;width:24px}#toolPanel .item-panel:last-child{margin-right:0}#toolPanel .square{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAORJREFUaAXtmLENwkAQBA0iI6ULeqAKmqMHCiCmBzrBMdzK+fvlXVsgzUsX3d3u/2z2w8CBAAQgAAEItAmcqn2veld9Nip5yVPezbNrdqemhM5Vz47Z5MilxF5VV1dUNG6uyIJ9ecq7efbN7tQ8dsysNTLr3fOAtS4X0eUBEYyGCAkY8CKrJBDBaIiQgAEvskoCEYyGCAkY8CKrJBDBaIiQgAEvskoCEYyGCAkY8CKrJBDBaIiQgAEvstqTwBhxWiYy633o0H3UjD5at/4flae87aMv7p/9XrdfhwAEIAABCPw1gS8CdEV3aG1wFQAAAABJRU5ErkJggg==");background-size:cover}#toolPanel .square:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAARFJREFUaAXtmLENwkAMRe8QUoTogIoV2AGJjgHoWICRYABm4Dq2oaIkoFSHja6M4lN+FBD5lNj+//x+KjvHHwmQAAmQwJAJeGv55TUuqup1lL5tjHFq9XdR996XohOKYnK4bfy9SXPcVNRaevxKHn+2eruqi5eTJdbJewfpzsPzMbuUJ0ikxbB6qrc1OrIa+vps6t6R420uUCf8S/9xgW+nwQSYAEiAnxAIEB5nAjBCUIAJgADhcSYAIwQFmAAIEB5nAjBCUIAJgADhcSYAIwQFmAAIEB7//wTSoRUm1UYgx9s87opx0ENr3/dR9VRva3FzAT1x65VYBPc5t0rLMKeeyH/O6zn97CEBEiABEhgugTemKDubNjFCTQAAAABJRU5ErkJggg==")}#toolPanel .square-active,#toolPanel .square:active{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAPJJREFUaAXtmDEOwjAMRRuEVCFWJm7D1r0cgiNxlG7chokVoU4hkTJWcdQfKCovY2x/x+9nctNwIAABCEDgnwk4a/jjzR/G8XUNeZ33fm/l14g7555BZ2jb3eV+co+c5jYXjLH4+PDw3sqrGU+g+tA7yp5z2ptcMMW6gpxPpZi9zQG+9W2mCJT0NgeYEv6lOwZY2g0cwAGRAF9IBCiX44CMUBTAARGgXI4DMkJRAAdEgHI5DsgIRQEcEAHK5TggIxQFcEAEKJev34G0aJVJzREo6V3iwDCneaUas7e5nY4r7rQlXmS9XgkEMhCAAAQgsFICb9uiLZTmm16RAAAAAElFTkSuQmCC")}#toolPanel .round{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAi5JREFUaAXtmL9OwzAYxAsS7cLGwp+dSkh0ZmFgYusjdehD8BIsiBegEkM3xo4siDIjmFjgfk2uA1LSlDhpLXzS1VFj3/n77MR2Op2ElIGUgZSBlIH/nIGdgMF3pXUlDsUz8Tinis4850zlvfggfolbgUP14kZ8F78rkrq0oe3G0JPzWPwU3fEnXY9ERuJU3M/JNf9xjzquT1s00GoVZG4quiO3uu6v0QPq0sbt0WptNAYye8nNn1VeiH8FbdEgEDTPxUZBltz5ia4PArihgZaDaGwkejJhqDGaiHtiKKA1EdHGA6/g4GHDgCEPkfnfHUTT0wmvoGBY/bZh3jYFtEkSXkGnEu9shHlzNA2/nfAMgq5UvEj1gyiWi+BBsvDEuzaupYAgC1Bb8GKHdyl2S+9mN4d5nbsKdUNVsZe9C3WrBMDGDDxmRSu/9rJ3oWmVANhVgtesaOXXXvauZfqh1jwDbMzaAl544l2KKiNggZBnB2sWlfYiiFJUCWCeKxyVKoW9aa+3VbLrBHCySizgfXs5eYXSVQKY5a0vC1XC37CXvWs5bPVCViWy6LcSBBn1Zo4Aot9OE8RY5L0c5YGGAHriVCSIiRjdkVJ9XkylaA/1BAAGooNgOtU5YtLW52A0G/+sIo8FeKg9nZhSUX3YykLIngkebB/2CYST1Ejc+k+L6uMSjAbrhM/NBLKKwT7uetu67E2NC1ZsMs8xMKrP6zViTk1TBlIGUgZSBjacgR/CFam/GpziJgAAAABJRU5ErkJggg==");background-size:cover}#toolPanel .round:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA4hJREFUaAXtWEFrE0EUfrNJTVJBRK1oK6JYEVoQigr1IFKwBxVE0ZP+C6+KB9Gr/0JPFUUQDxaK9GCgSg9SQawI0lalKlKwSUyy4/smOzEEMm+SbJXQncsm+2a+b743b2feG6KkJR5IPJB4IPHAZvaAikv86ILesvqpNFGl8AIpGiFNg/wcNPiaVvj3Cr97m6LgycD+zMzCqPodB3fXAgZm9J6wVLxFOrymibb5TIpJ10gF94NM9vbqhPriM6ZVn44FDL/XmZ8f1m9oUte11ltBwGDzWgWPA6JZSqtllcqs4L2ulgapoodColNKhxdZ6Jjpr9QvRfre9kP9dxcPqxLetds6EmC8Xiw80qTHQahITSkKbn47m33nM4Fdz4pHNIV3ePyVaHw+yOYudbIabQvYPV06Wi1XnzL5PlLqI6Xo6o/J/rzPxJv77Hi+Pk5VekBaH2QnLKXTqXNfJzNvmvu5/rclIPL8HCbPhC+yfbnLy2fUdxeBZBua1juL5cJDxjwNEbwSJ9pZCQ5Xv4aYD2thYyZ/YCA32e3kwQwMYMEhcAw4wOU3KyJvAbUPlmOewwaef31clX1JpH7AAiawWcQ4uKQx1u4VQrWtsrBodpu0OtlpzFvSVk/zTVT0S8W7U5DJDfuEktcKYJ/H5HmZpzZq8hAFbHCAy5wtrZQ2vBcF4ITFIYUx2Cobxm7IzzoHcxpugUUUgPQAJyzH2rzvPi9wOs3gABc4we3szEZRgMltuCNOWAksLrvlstwuXFEAx80IALjjrAsoTludK+J2YcsCkFWicW7jAorVZrkstwNcFhClxDYxc2DFZqpz2XTcgSwLiAbrPiSb/6bVufhUkxhlAShG0IqlvRJYbPa/XJ8lTFkAKik0zuclsNjslstyO4BlAVwGYjyKEQdOrKY6V8TtAhcFoIYFACopF1CcNstluV3YogAU4Pz1rqEMRCXlAovDVqvWaAyc4JYwRQHm9oALcAChDJQAu7XXOZjT5+bCa2vs+XQaeTluD4x3uYZFGditp5vHG0zUx9zA5VMLoK8YQuiEhqsPztXzKMBRwx57xcdNTA1YwIyK+zy4fKG9QsiC9XRRDxFY1lRf6jyvxBJuEQqVwpwpA63CNp8YCwxgARPXKr6hY6naWgE7KFqJ3rzYsiJ6+mrRisCztsX24OVuowj8/l/X683zSP4nHkg8kHgg8cDm8sAfhkzSnCu/+OAAAAAASUVORK5CYII=")}#toolPanel .round-active,#toolPanel .round:active{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAqJJREFUaAXtWDFLHEEUfrNn3LsIIRYGOcQml8YDu0BKr7BREKzzL2wDFopt/kXqQCBdwDZgKWeTsxE5FRsREr2Eu8l8uzewCLvvzbp7q9xMM3M7b973vjdzM+89It+8B7wHvAe8B6bZA6oo8u2unr0+G3SGNNoiRSukqWn6ZqRfU9+M++bbSY2CbwvL4WG3rf4Wgf1oAguHenE0uN8lPfqoiV5JjDKgt6SCL0FY37vuqEvJmjSZ3ARav3R4c/rnkya1o7WeSwPI+q6U+q1If3799uVB750aZMmmzeUiEHn9/u6rJv0hTbHLd0XqZ1BvbOfZDWcCb34MVof/ht+N8UsuRnKyhsT5zExt42o9POZkk/NOBMaePyraeGsQSJideO+yE4FdzPU486P42BTq+SQuHAMMYCW/Z43FBOI/bDFnPssg/K+AlSWTnBMdofiqvOvlvW2SgJIxbqcgbLQkR0m0A7jnJ2U8CAIrelsEbFkCeGHxSAl0FStiMCNsRitLAOGB9IVlsJymgQlsbhFLIIptOC0lzUuwWQJRYFaSgaxaBIVM4wkgqqyqCbB5AjYkroKEAJsnUIXhFtO8anaY1vMEkIxU1y44aJ4AMqmqmgCbJ2DSwKrsRwrKYbMEkMNySsqal2CzBJCAm4jvtiwj0/QCE9hp8/Y7SyCqHpgE3C6YWG8wJZULlgAMRvUAIe6kjI/D6fqeBE9EAHE5qgcShUXIAEuSCwBLRACCKH2geoBxmQ0YwJJiiAmgboPSBxJvqXJXuXFSv+1SIxITgDHY1tqL2mYZJKATZRXp0bHOEeXEVtj2T6mw5bQDlgC8NN9qrAWK9h9zO0W3jdEBXa6et7bk2gG7GH1csXiGxd0kCYyrKq8/tMP/9h7wHvAe8B6YLg/8B7td+kBEJNs9AAAAAElFTkSuQmCC")}#toolPanel .right-top{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAgNJREFUaAXtmE0rRkEUx6/XsrC1okRPYWWhbCQWFmxsbCyelKysZGFnISWSlJBIkpT0ZO8T2Nmy8QGQkrzn7X8yU9N97h0z923uZE79u3PPPXPmd05zPeN6njPXAdcB1wHXgf/cgQqDxddi7QLULqgJ4xNoFVKyLAqoB0kbJILSuBWqgvz2Cked3xl2Xx32IIa/C3OLEAdu1Mx1qxmfePgpMn7HEM1XtkrlSPXAKYTeqIeXRV6UeSSONAoggH4oahFaBUhqi/2oAxmuId3t1Bt75QQTRCmiIcH1E0mlU8Sd7oppvAN+hks4zvzOkPvc7H/ORz+UOxB/Dx6FMfeJV4rNlW2AhgPOY/zXdprOEz2dZzj8ggAmK2JQiDM6XBLgFwNIwopoDojN3EVbhXd+WbK6v4gnxGZxuJQged6sAL8ijfx9KBZxrhCfasgMsvPOK5/nMYeKuILmIGNGBzgOv2aMIuLCkwL8esQcxqZNYOUvVsCmMYqIC49h3ieD38LV+F8QnTpGBXj6+bcKfgTAHxC9tLu2wQ8D+J3B7+GaxWkWyyRjQ0jzBlHn9yGr4AcA/MLgD2yD7wPwM4M/xDXoYxTc+bQeYPF/Qo4wtgq+G8APEO35Y9vgOwF8z+BLuKbxCRJp07NtpKbO05di6+CpLS3QOFRDN85cB1wHXAdcB1wH8tqBH3D6o7sgJgNQAAAAAElFTkSuQmCC");background-size:cover}#toolPanel .right-top:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAwdJREFUaAXtmD1s00AUx9+7JCgBIdEoNJ1QyoDqAQkJNkCqYGgEMwMDCwsLLOyUAitsMDCzsVUdSghVJTYkmJBI+VhgoOJTgiLH+fA93nNICFHjnGNXMZKfFPt89+z7/d/dO58DkFgSgSQCSQSSCISIAIa4N9StpXXK2m7zELmuRZosjWgxzDQhvs5AdvHTAn426SBt4hTGh0H32U7daiPOAZKFRBYQWj+d+iwAqd6ziYDkgmi+hfYBLp3ptfkUIhWwRKTuVRtl7eqzgMCgxKD2jNc/AwqhBylHxDYCvuXiKxZWA1AbXLlJ5FaR4LgP8z9NkQq4W7Gva4LFDnCnH4a0GXCDo14DxT/NsOlUrTS1692LY9jqp5lZrZeaUoH4q7/erxypACI8ITFm6DWF6nY6Q7WPp7IfEDmmA/Zt4FouXYUWaC4Q8IiY2d85aObv66UQ7osD084T6anN07n328EPewhpbXltCDydzCxSAV/Kux8CKp5ClOJAPiis2ufNMDpempO8U5KcMLNIBUiX38u5W2OL4NXJw0Y1OQGhRPwZAaTsZAWMI6JYoWlOnjyvAD++lnHTGwmDQ+RTqL/PINPJRcebPijLbQDbUQHCkVKpFU7qrZGJ3VuBzBNYnr+jAvY/bh5xdWuN30x7ObGf+YngPVC8RqAHz/Oa3wXLs4XsSd/VSdOcRBSU+QrkuXs3RXwYhC8Vcudk2+CXE90RUGnzt7BgR76dHgbfH6P8o/o1IH2Tu3d5Dl/AbG7FdewtHinnykJuzxKibCiMLNIcMIEXqsGRcBv1G1JPRG+CwMs9kQkwhZdOxfpFMPlVqeMReCrnIBaJgKDwXUARoRRcQgT5+nqZIbzTbTM9h86BceFNAUf5hRIwaXgRN7aAOMCPLSAu8GMJiBN8YAFxgw8kII7wxgLiCm8kIM7wIwXEHd5XwP8ALwJSchi0YrVxuK3b6/KRLR8j3f38oF8crrf9a7HVbl9muNjDDw1g8YlzMF+pXzz6nDJDnZKGJAJJBJIIJBFIIhCDCPwGO3q+e4PmVA0AAAAASUVORK5CYII=")}#toolPanel .right-top-active,#toolPanel .right-top:active{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAjBJREFUaAXtmDlLA0EUgN/brMaINiEqgoIoglEEQf+A4AXWlja2WuRPWPtPBLXywsZSS402NlYeSSPGHJt9zrisSOIeM9llR5wpsuy8zcz3vTmYXQBddAZ0BnQGdAb+cwYwKfmZG+ouPdYn69jMA2EegNgVRsGA/fJq715YrtgFcpfUT9XKFFgGA2SQCBw0TwATDDrVCoqI1dJab6a13uve9ArI1udO3heIcPMLlmXWfquMOG3ZzoWR+xUWfvGLt8YiF6Am7BLQitNRAG0rDbtHouIv1Z5VhmdENmCaBUR4lv07ICYrUFpOF8k0F2Ulkh8BlvryUvpWVgINI9kRcKeOrIQBPXduG2Gu0a+BH70KSyCUn1ZRaP3EKsBduISV7loPtSZIbAHz9mMXGDipz5m1xiEhbgdKoNgWGrsAh2/ajXMiGEYbFoMWtqHSCLjw7NiQZceDg7GBTCFoTYjuQLGNQBt8LrNxvYAN3qGfRMoWn0KRH+b84LmAW7JntWm0rAs2vQZ5HQJWXtcyfWy0hM4fkS7isPAcuH0k6F4UnrcTmYAIPO+YF1eC5f+B7VBHTq3YbyRTSAZeDNP76Y4FkoTnWh0JJA3fkYAK8NICqsBLCagELyygGryQgIrwoQVUhQ8loDJ8oIDq8L4CfwGeC7R9m+SVQ6e1Wcu2Lr5fRn6c53lcpfLrp8WGZe0wSOdNSmF4z0QOnVXHs8cfW/NX1OX5kA7oDOgM6AzoDOgMKJCBTz35SoU1TFsiAAAAAElFTkSuQmCC")}#toolPanel .brush{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAArJJREFUaAXtl7tu1UAURS+IDokkvEOABkENFVADEl+UXwglXb4EiY6UvN+PyzMlFZCCBhpYi3ikKWznWJixI3ykfce58mTWGc/Zx3c2m2LagWkHph2YdmAX78Ap2G+hp2gN7Ue7Ji5D+gP9ynSP6wU0+rgI4U+Uw6fr0SexAvhmA/zokxD+fQX/hHHeksjonsQJYN9VwA8ZF9Fx9Lr6Lu1+PprEKApb+LcV6CPGJZRipyRupBuHGpdZOB2Vx1wfrAFpS+JFzf3FvhLsDfJYeObr4Pn6TzQlsZ5uKD0eY8EEb6M6FAAwiTlKdfCJ6yOBeb3fInwqzmdcR+CFsLA9ZiawiU6j4nGUFV8hIZ6jwygSwj9AzvuIfM0oHj7ul0gIiy8Krysl+A9cn0TFQ3ihE3z07ApvX3CeTW4QeHfa4yKET8BjFAldyb7gPJucnbp4CG+hCuHZ7wKfCtYmZ7MrHrqLFim8rqP7RMJ59gXnDQbv408Q+r0eHok8aT3fTl08hE+PX4gofH7cuiTda4K6Rio8H390B3WlVOget2jS3Npf5JbX5ezmFmuhR2ulP3L+k50y+bWWF3UNXUlrtWC7WCy39xd5m7fZRP16FPALAN9H7mCXNu8x8bg4zw7tMSoeB1jRn3VC+IIVbfMWqIXqPAt3EHh/i96tILq8HQqvRQpvh9Y6B4lLrCrEZxR9L9dS59U8O7RNa7C4zsomcDtIoCtprc6xQxeB38tCTaHzGFvbQ+un8HfQOST8FfQF/fPoIwEtdQMJ7+vFVfQVFYm2BOy6xrftofZTV9pAZ5GvF0XhWW+2z4+G2OkIJfgzzBf+GmpLtmGZv/s6ksAFllhFJpTrPH/rOr5eCL+FRhXr0OgobbJDm9Rg0fYEbkJljexB7m6d7LLf0RTTDkw7MO3Af7oDvwFjWdeSB4jgWgAAAABJRU5ErkJggg==");background-size:cover}#toolPanel .brush:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABOFJREFUaAXtmVtzU1UUgNfaSZOckwFKW8ql6DDeRaugCOMDTE5vMuMP4J/4pk/+AB/9J9RSmqI8OCqKBUUEsYNQSymYjvScxKRnudZOT8xkcrJ3GhJ8yOnDydnXb133pQD9p6+Bvgb6GuhroAMNYAd9O+46dImeg2Lpc6JwTBGcTyrn0wcf4GY7Az8zAUbP++9XABYBKBUBo8Jv9ihn5s40bkRlprcyNehG/fCCf6qMcKkeXuahkE5uhMHcCxdoj+28PbfA8EV/jMp4mWmPxEG2Y4meWkDgocxuI/AqcRUBbzYToh1L9EyAkbnNQwyfJ6KXEOHK7lTaUxknx79vtBJi/xeUbVYflfVEAIGnLRT4lxn4+2zWnV72sPDQw1WVdidaCVGh4OMIttm76wKMzNJBCnGBgF7hgPvBAXf67mn8K4IxCQGAH0Ztm727KsC+PB0gCBZY868CwlUH3al7Z/FxI4hBiMuN7eu/uybA6DztD0uBuM1rDP+jk2wOH8HUhKgPbIW/D7iZT6I2zd5dEUDgtyp+FR5gieEn70/ho2YA9WUcrUVA5UsZZ6jljMLc6hl8WN+m8XeysaDTb84ao5Wyzz4Pr/NY1zIZhvfM8EfyNPh3MbjAsXKc8e+kFeRWpp0/TDwJU4N26g98SfvKZT/Pfd5gFV5n+IkVD9dNYzz/Fe194mv4E6z53yADubUp956pn9Q/NQsI/D++vwBUhU+5DH/GDn5z02fNw7uIeJvS4D327OBFgKeylTiUp5FikeEBxnnEnwbQneBd5ZpM0Oo5PEtDATA8wTsMfwsGwHs06d5v1aexrmMLbMNf5IHHWRs/J9uBJ3+eNX+c3eZXVOStT2ZXGgFN3x3FwNg8DRfLvsC/LatpYsCdWJsxa176BaHuV4VPMPxM+/Ai3I5dSMzvA0MQHGPz/6LSjie53KQxDV/R/VhovIngeOtn8U9Tv7j6HQmgfTcyP0MwfM4Gvs7d3mpH6Dh4KW97IZOUpwMv8l3WoA28ZKntQGd4uGFrsVbwUtdWEAu8TnmSNSTwtO+azV9LsQBvSqAnkhwrHj4wwdnUW7uQXilLnDVI5+tbnDVyNoEnK3OZauuDdYq1gZc2VgLULfMn2Hdvc77O2eTrbsNbCSAH7I2KXubfk2WeeJm3WSn1hq66JzrKarouK7NpY2ar9fp2LdeBoa9pdynQ8CdlgyV7FBt4OQeEvCfiReooT3YtlXUnuwEvgsRmITmLYiGY4/28hs/w7tAaXp8D9G50STZ03YIXAWKzUFkF41ChUxwkq+kkejZbWzk+bh9i5AQmhxirrbSA7PSJtUBiSw3KoMQgDH/XNIE+uFOwyBarHh8tDzGmcU31sQIQhloA9v2CaZDarcP2wd0FuxOYaVyb+lgBgKgqALYWQN+0hbiobx34yiTu4G4Ds5M2sTFApPYChIAh1a5AGicYyvuHofTfZZXc99RfmTS278Z3rACAbAHOgxyMTV1I4LEIovkXeW9z5VnAi0JiBeBg1C4kB47hWf+jqkBqkIG5nAaxRMe47iAvbt/tSjvTy6dbu1o3tN9SAEQV8j8emJXOMeg5bQ12qeipGge/3ZVxZuSaMCrv9TvWAkj4GUMqdiH+wwJ/Fzgg+K0KfP3N77BAKWeJ4Z/0Gro/X18DfQ30NfD/0cC/yGVeCCJ5w/QAAAAASUVORK5CYII=")}#toolPanel .brush-active,#toolPanel .brush:active{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA45JREFUaAXtmFtPE0EUx8/ZFuwuQS5yE9EYjJdoiLeoL2rYUpAPZXwwfgA/DiBQ1BfjXcQbKhoFREQsUXYLpXs8U9xkQzLb2d22+LDtw+zOnDPz+59zdnZagPgTRyCOQByBOAIRIoARfCO7dt2j9oKVv0lEfQxyP6npt75fw/UgE++agO5R62DegSkA6nWBEfFhU0IfmhvENbevXKuVM6jGeGvW6tlwIOuFF+twJi6uFe2x3jvUpLpuzTOwb8I6AJtwl4COyCCDZKKmGSjBF2DKDz5oJmqWgbax9W5ycIrL5Kgs8jv7RSaSqKf9HuyaZKAEX8RsEHg3E1uOfX2nMO991QW0jdB+jvwkl80x78Kq1wRw2c+2qgLas9RFYE9y5I/7QfiNcRnN+I1XTUDHOHU6G7YomxN+AL5jiJ/qjNQNP5uqCBDwxS0rGjzgXCqB/UtX8YefgITfYJixzlHqKBYZHuBkGP9tH4bXoH9xyPhabo6KCiidbQoWv2HhVLmFZeMI+BFS0L+cMeZlNt7+ipWQgN+0rEmgCPCIH4jhV001eCGkIhnozlLbhs3wAH3e6AS55t3mPdSBuZo2FoL4Rc6AgM/nrYlI8ICzqFH/z4Fg8EJopAwcGKd9+UIJ/nSQqHltueZnMUHmylDDordf9Tr0WahnhFotYHiCM6qL7bTjsnmHoJsrw/ht55jqfVLV0Gsn4G2yxrkvCvxbbY9u/jBxyTt30OvAz8Ch+9Rig3WH9/mzQRdz7RHhTSXgxXyBBAj49XWGJzjnwgRtuWZfJ5JG5Mi76yoLOJyl5n/w513nwC3Cq6RmmMsZ/B7YV+Kg9AwI+N95W5RNJPg6NMSPk2UJS6jusruQ+IG9tiXg6UKoFYQTwky9YaTLHczCzO9bQq0PaK/4lyASPMDLasFvx0Yim0+VDVtkT/B5/pLERKV7OpUyBhZNXFExDmMjzUBBs/siwSO80OuMdDXhhWCpgERRaw4TkZIPwnM9aQwsZPBn6DkUHaUCCJ1QAnhXeGZAbeCFRqkA/p8vsAB+wz7V0cjMD+OqYgAjm0nfA0RaC4CjvADDP2loMAa/XMFfyk4VMJRnANUzsFvwQr9UAO9ASiXE5/nHjXuMTK0j7yZPKgBRK1s/DP+oMaUPfjYx505Y61b6DCDhbT77aHwM4C/m+D4H6HCr5VAT906O6vVphv9Ta+h4vTgCcQTiCPw/EfgLJV9RSXPyCEcAAAAASUVORK5CYII=")}#toolPanel .mosaicPen{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAOtJREFUaAXtmckNwjAQRcNSBg3QCkVRIXQBZxogghlxQ7Zl8YKSSG8kX2bx8r4PtmYYNAlIQAJLJXCOjT1jvGYet1j/FKNom6L348zN7xrx3tC1N7GSdwz/I8ahEq+6pyJfXaAzcIm83EvRtkXvipweYG6xVEAFIAGvEASIy1UAI4QTqAAEiMtVACOEE6xegdb58w2eb3Fqf/1XrF4BD0DvF61XAUqQ1qsAJUjrVYASpPUqQAnSehWgBGm9ClCCtH7fmOAesWwuTPEnaCzTFRq7sr6Ssq2T7Z2pPiS/zpOdomx3aRKQgAQWSOANmudym8Lt+O8AAAAASUVORK5CYII=");background-size:cover}#toolPanel .mosaicPen:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAXxJREFUaAXtWU1Kw0AUfm90UeyuIih4Add6ATeinkP0TIrnqOLGC+gtFASxu0o2zpgpSUngvaTtS6YtfFkl37zf78tiZh4RHjAABsDAOhlgLfnBS3btvX8MIRxpNilwJv50O+72+2IwlvLtSmDEiuIPtfVlcGZ6X8a+ZhvoxP/5hxw7ruHFh9pAhfkxDfhucr73IQVowkZP0xDXfy6HZ012TWv7z9O3EOhUs3Hawhxfsfi5f88vrQ2swnzPNdfCtzZQs97ADzSwblGgABQwMoBfyEig2R0KmCk0BoACRgLN7uqBptwKmzN0FGByNRRr3fpfSD3QROLiScpyGClV1NhbRJwyhma79QqgAU3aVDgUSMW0lgcKaMykwqFAKqa1PFBAYyYVDgX6ZHr0+iteqVdzbqwCs+KzcF8tVnpXt9NxMkL5cCHez0uOi2D5vf7sadsSi7GywpkoMPOXaJODagNxrBMnI03DBS1ol3gs3jl302VMxAIDYAAMdMfAP+EdVKaWg/p6AAAAAElFTkSuQmCC")}#toolPanel .mosaicPen-active,#toolPanel .mosaicPen:active{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAV9JREFUaAXtmU1KBDEQhauiC9GdIih4Add6BhnmHOKhxHOoeAY9hjAgLkfcTGo6Mo2ZpivW2F3GgZdNJ5VKVfK9XuSHCAUEQAAEahJgLfnx0+c0xngnIqeaz1/Ymfg17ISbt6u9+758u33GZFtN/kTr38TOTC+b+K/5Cp3HRbxtbGdr9lVDXcA3ef4gkv2+wVbb++Tg0urb9Tt6nD+L0EXX3rZDW9G/wyavxx2nx7CAcRJ5RcECvMha40IBKykvPyjgRdYaFwpYSXn5QQEvsta4UMBKystP3U6PmfDwYS6/jddspYtl63+hogLpJDXkMDKEfBF71rn1CmABmZpVqlCgCvYsKRTIYFSpQoEq2LOkUCCDUaUKBapgz5L+cwXS1X65qNvp9DJCzeNCup8vh9B7fzqM6CPbnq+rfWHmWWvpftUFpGed9DJSelzoBvNop8mHEK49YiMmCIAACAwnsARsm0C5E2sdIAAAAABJRU5ErkJggg==")}#toolPanel .separateLine{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAAoCAYAAADUgSt0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABlJREFUeNpi4WUQTWMAAiYGKBhl0IIBEGAA+zwA23Qf36YAAAAASUVORK5CYII=");background-size:cover;width:1px}#toolPanel .text{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAupJREFUaAXtmE2ITlEYx8dn1EiUSYkSKRNRzMpEUayQolgZpXyVBStqdmY1ZDGyIKywsSCFSSE7Y2OiFBuTCPlokPIR/j+et+68zX3Pe+49933vne5T/857znme//M/5z33nHNvS0tp5QyUM1DOwFidgXUa2Edhd1EHeE/C/whDwgShUNYutYivYHOh1EvsKRP/1sr+Ig2gVWKHTfhqld+E38JCoRC2VypZOvdN7Tmrn7B67otBE7zdlK6w+geVU60tt0WniX2jcnJE5QNr3xVpy+XPSyb0WJW6ndb+sKo9V9U2qfku/BLmVimbovp7gWejo6ovN9WjJvBqjKJe678Q09/U5vHK/kJghtcLo9kCNbKdsq3OHM2hmW2blBzxz4VxNYTcNL/DNXya0nXLhB1yZN9ofq6BOmjCdkeXxgwHdXSpbXD4Nqz7uDKxfM7XmfGI+V+r0z9TN7ZHTlgGsLLOTLPkV9lu59UZk5lbl5gRP+CZ4aLF9XjGBXdHOAPo8mReZXFct6NXDk+adO7RSxpLydceKYDB7/ANjPpPjFY8fx8w/36V8z1jcb8hLBP2C5eFhhrbJScqMxgCS5OqT/oPcC3mbs9XB9ZxUmMiZgv8C/uSkvjGcVV4JjDznKxpbLGC4fkiTEtD5BPLZY2kQwIna1q7IwL4Ks9UWj5nPNdlEnKihrCtIoHvSQgyFwcvKrywcJLyAhPCeA5fCQxijS+h7xLYowR8ZbsivPNNFuPPhJy1Ph7mzGySmHlZZ6Y4SUPaHJH9FH4I7EqZGJ9JED+YCfv/fxX+7oz4/32oIgHLKAtbK1L4Xwos06C2RGyQDwutQZlHkj1VlTxbRjanr5024r70VDUZDlqe2zW9PDs5IT8bcbtnrK/7dAV8Ffh6scg3OM6frY2/9W6cQ+D2M5bvZCjeyr19WyhCB89yG8AnlUFedgZE9FjgHGiUXVei1wI33tTGlhZ8W3Oo4oaQ9KrvoC67yxkYWzPwF7rCpZtbo68bAAAAAElFTkSuQmCC");background-size:cover}#toolPanel .text:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABOpJREFUaAXtWd1vG0UQ3zk7ju0koCROUkWhUFEqQVB4KH1rKVGIXQlUgSoEDy1qpVI+/4VK+SMQFLUIgQQtEkKt+LLr0FQUeIAi8ZUCUkE0qBWJ46A0sc92zzf87i6Oncj4bs/rB5D9cre3szO/38zuzO5aiPav7YG2B9oe+F96oP+8PtH3aW4pltSPtpKg1jLlZT4O3b2m4ONPMgdaZYdaobhvunifuGXMVnQTicez+7rOVdoqny2JABnlFy2QAL5gg2Vht1UCr+hSHoGBGe42C/nrLMRtAU3ba5qcZBLhgNB2ZPaFr1YMq3oqjwAX8wct8HD/pUwi8rkgPi2YqSzMF1SBrtWjnIDJwgaqkXjVMoRpZD+F4MMjX3Gk1riKd6UEBtL6boAaA+j5oZHIBxbAxUTXt0T0tWDRl79ZeFoF6FodSgmUy1xZrKdmR6m0bojIiQav9693NfuijMBQigfh5QOYNOVOotdrgfWEwu8JElkW/GD/dG5XbV+z78oIGFxAxeUQps9HNxLRP2uB/TFOBcH0pv3NUJtSlRCYYtaY+ZgFkDVtbdHWUhAiGNJOYEUjCPTUSJL7Nvb6bykh8Eoy/xig34nFejU72ZmuB2dhIvwbZFJgECkI/Ug9GT/flBAwyZkW8O9rIIEyUP9XSa0QeB4RU1JEmyYw+FnhbizcOAnSo90RZ57Xxy9ejkc/huw1gN8+lCzG/0VM6nPTBIxbqLCWN4nPzO2hvxtZnyJCsJwMVSazknIbDXHta4rAXTMcxry25zNplYrb2GZHV/gUolBiFo8Op/WtjaXde5sisFJAZUWFhVe/WYx3XXY3J8RfD1EGqfZ9EA8Uy+ZzXsY0kmmKAECsTQOn0jYyVNsXqEbr6Ogsh2r7ZN99E4ilcjuREnehwi71hMNnZAwvxKNfYtz3mEaD83M6qrf/X9DvUBh/yRlLqRWjtK0/XZRTZRqfQMcDprBT8Gm5wVVpX7l46yXuza3qOLSo2R53BINj85OdP1ZheX/zFYH8qn7EBo/pAw/Meze3SZJFL4raFqNsp1RfBx7pCFgVNJbSf8XzHk0T+7Hf/3ATLM9NTLt72TCuoHqvUndkeHE3rXgevCYovYhhdNICj43ZnFNZZU1W5bFv+hngZ6Cvm1fzz1R7vL9JEyDTqaDEdMKqrN5N1ZdEDbd3r5hKvqaQFIHhVP4OZA7sPKkU1MJv1Ick93UsFDmLKNxAQRyNndf3yo0WQopAkRmVkwNWJZ1P0IKssXryF8fJIOaTVh+uYKT3R54J7LzMHbBh33PWVNJ6mKS/4Rx3EmvKwMAncK+0RUaBZwLXsvoBTJ8hKP/BrqQyVlxksxPR60iH57Cr7SgXC8+6iG/o9kwA9z12eDGg7pFxg1Y/jerNxTGZy2BPBIZSxfvhnT3w0k0KR9/xg89tTDYRuYDF/AsK5MiFtL7fTb7S74mAwWuHD6K3M+O0Whms/Ikjqa1TYjG7Eoh9wT3w/kFLMQcDjgHlyB2FtwcjbyEKORY0EZsu7PBixpUA5/KHENYeKL649EjnFS9K/cr8PknLsPWufUQ1vF0GuxNg4dz3cIsW7ya2Aa3DThL4Z+ewl8OOKwFsGUo4fPy0bSBydpOtljQz8dB31u0eEoa+vCya/2vKSmkyaU0Fqync9D08w762+irst3W0PfBf8sA/GcCs3A4F3NoAAAAASUVORK5CYII=")}#toolPanel .text-active,#toolPanel .text:active{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABFBJREFUaAXtWd1rHFUUv2e/srumSpNNUkrUirSglbwU6UulhriJglRERIVWKmgltiCITxYhhfY/EBWKDwr65ENFhWxTuwU/HsQH8aMqSMFqimmaQtLd+Whm5/ib2S7sTnYyc+/cfajsPOzMPffe3zm/c8+5XytE/+l7oO+Bvgf+lx4YPmtODc3XV4cr9ZO9JJjqGXiD3xYs7hRMrz/LnO6Vnp4QGDpnP8iC93tGM/NgtWI9d1sRIKfxWrvBrsBo9Ogh3bgjVR50LWORBcKn9RAhhlK7lh/P/9kS6XprDyG2jYMdxnuWMlNDuKd0Gd2Oo52Ay2K2XUHrG6SeGv+OC62yrrdWAiML5j4YNiEQMkEDiXnAWLOPBOVJy1oJNBrcTF6ETHfD+M3ucnVpiCJ5wLEKj6675t+CRNaL+TAEytHelani92H1snJtI+Cw9TKyNbeZ8b5x66Q1mbUQmGNOYcGKFd8s3MnxeR6S9XRYey0E3pk3noT37+2WvBsUs0ibwnhjg1xRoIWASyIieTutY0GzGLHQPOlsvXkpMYHRr6z7haBpqNkwdYaqZh4aXbCfCK2XqEhMwFl3Z28lrpRHXXZPSNgZ2lRKaRBlR5Xza7axCN8rJCVxPkM7rpQLl4O4MuVEI3DDsp5XM94zkclyxVsyxnZrm4gAjOjYNndTsJkM24tDu3/F2pHgUSZQqtT34NDyMBLYVdWPmaj47z/WC6r9vX7KBJjF0aZiVsbw+oPE8SaO2q9SEt/zNW+t10wcWvRsj7OZzMRSeeBnFQoZlU5GzXzJN57EdXhgSQXD78NiKxaPbU7D9XKp6zkiClt6BLwVtFQx/8B7ZyolDlybuePzKCVh9cML9gPsOBeJqEaDhe3X9tGNsLZhcun4hdKyZzz2PZePTRe/DAOOI18pD/wG46vAG+Sa8WKcPsE20gTI9YdbENP7c6Q+A7UMwY7oXe8boaQUQlIEtleMuzH7YOdJNzOp/ActI5K8J3KFMxiFK2Cwu3TW3C+LJUXAZn4VvkoTiU+XZuiqrLJu7S9MkoMF7bRX57ryC2NsAnt+4Cx04NQlRDrVHHbvW8fDOTqNnHKA9TTulbbJYMYm8NeK+QzCZwzgP12dLn4roySqLc7Ii5gOP8Oqlm3Y1itR7dvrYxPAfY+/70EHP+naQbR8E/m4CKcjMpfBsQiMVeyH4J1H4KU1yhc/1mJwAGRlpnAeyfw7Fsjx8wvmgUB1aDEWAYebUyfi9KPlSaqFoiWtYPGeDyGRzJEESt/wFnj/oAfMmXRTQVJDQ/rflSl8iFGo48w8VTpn7Qpp1iGOJMB14xCGdQuAL1x/bOBiR2/NhUtlWoWuT+AwEg6OqjGeaAIs/PsezEC9Sd6AkelU1teD/xQOxznsRBLAluEmrgt/uW+kcCagqyfF5encj1gov8CEYa6uiuR/TXlTmsy0poPVHG76Hq2y0lZfh/4+Rt8Dt5MH/gPfHXmcyfgZhQAAAABJRU5ErkJggg==")}#toolPanel .save{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAY9JREFUaAXtWDFKQ0EQDSaNliFl5F9AyBEscgKLHMLGQ9jkCBYeIkUkNxAsLA0eQLAT7bQR8xYZEPmzM7t/d/iaWRgW9r19M/Mm+flkMPDlDrgDNR24gXiIP7u+UHmIauugmrKRsDdgZDSbxifAWmME+ASMjGbT+ARYa4wAn4CR0WwanwBrjRGw1xO4g8n0usztNAcOp/N7IqbuXSbwmposwn+LYNWgKZRfEORi7h6MaKpVKQifFWhgIeSoDl91aOK6enWKBIfgPGQ08Yg7Rwp9E8oJsrwjtN+DD3BnJpUlJDlPaOAiQTeZ2uW/nJWiiXVyRd8X1HXRxyAnzxiXnhCk8Xt/BjbJEf6hKV6npCKRIZzi/BNBOrSHszlzR3NMOiJXTYwoXQIjHdqXEb4GIh2RqyZGlIbAbhGkFd6bRhG+BiItkasmCkrHwLeI8LxvBK4GVtelJmqyFuS01tXlbbRgbflS3kC+d2Vu+gTK+Jiv4hPI967MzdivY3ju9n61fYQ2Pa66z7X12DYv7T87sAMM9Kzb7VMBMwAAAABJRU5ErkJggg==");background-size:cover}#toolPanel .save:hover{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAuRJREFUaAXtWE1oE1EQntmkTXYLIok/KEGvQvVWKFgo5JKk9OShmoMepAp6KvTgxf+DFw+CPahIr5FCQT0U2xRK9VIU9VBQ8W6IKEktQjaJJjvOBgNJNtvd7PYFhbewZHfevO+b+Wb2vd0AyEMqIBUQpkBkpbRknsIIGDgoEhwIJoXiM7gimkA0vkxAtMJO+LICTgqJHpcVEK2wE76sgJNCosdlBUQr7IQvK+CkkOjx/74C6FWh6Ir+mohGvc5vnYcI74upoZFWm9trzxUgoB9uSRz9CLcdfWwcvH/QhPAiVGmTP1oiCDhTnNDmbDi6mqPZ0mUy4AEgbA8O4HRXJxdGzy1kYkdX9VNUp6ecQDWAwdHvqcFNF5xwMFs9XqP6W27BMACe3prQFt3M6+bjuYVMsGJCe4aoPOJ2CtWhtnD4HWndSFptsQ1Sf1NtoRE8wryf4E1cXwmYAOqe8Cy3wUcO6FiloN83bTsd5Z+Ve9x2w4j4ObxPm9nJ182Y7wRyJ7E8gME0B1ThwC5ElvUpO+JGy5FxqdFyEEznR1C383Vr952ASfQtGfoASLMNUqTHh9bKRzsDiKzrMTJo/q/9itvnpROn896SgNf/corJoYdchedchb3VX5SZIgo0yW4RKVCFTGPFQljqdcUycezisiTAJJONs8new68K6jS3Rw6Axtaz+s3m1Lls5RoQjfOG9TUU0s437T392sRlTaAn1HbnXAq3MIBneWk0DMKr+7Pl8QOr+hgHf8O0gaKcy8ex0D7L392uJmCGUkiorxSkO1wFhbPI1Ax4wtcB3nDuFhPqmr9wrbN3PQGTIp7UbgPiBu8PMVb/CD8bb06E1etWev8WIQksItbDCGlW/ZO53vOrwpmXcaz5D9eK4P1dyIrVZskntS9sGG4zCrgRUgEBcdpCygRspenTgKxAn4S2pZEVsJWmTwO2+0BkuUR9isEXTbcWeuELUezkfzk2sZlLdKmAjQJ/ANa802uhvjOOAAAAAElFTkSuQmCC")}#toolPanel .save:active{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAmNJREFUaAXtWL9rFEEUft/mcne7AYuY0v8gpDsQ7A7h7oIK6bxCi5AfrZDCLoWFjX+Bhf9BijRB0wixEVOkEIykDTkuGHKbNMkpqJO3p5tsuNnM3OwMKMzBcbPvx/fe+97sG26I/Mcz4BlwxsDk5tlG8nUWgIFLLsFJ0AOn+AweuA7gGt8X4JphFb7vgIoh13rfAdcMq/B9B1QMudb7DrhmWIXvO6BiyLX+v+8ATBm6vXn+SQhx19Q/6wfQTq81UcvKdNfGHRAkTnSDKO0ETpU2OQbGBVAFSwSKc3D1xaDTchkL+g7XLY0LiOtRBwEW/8BBXIfVeMJfH4Hlw/vhvoaH1MS4gASt14jWgeA1kRj9XRLsA3oTz0Zr0sw0hYUKSGKEt6ornMiuZrxLMwB71ano2aXAcFG4gM499MdRanNC33VzYOp/jFGp3a3hXNcnz65wAQnwt2blC0GsDIKke1sW8Ur3/KhV/iwzGVU2tHfTe5y4NfFwVDA+G9b5bJi7yY9n/gbP/Ec32ch0eXkN3wsVuMsJKVzoU7/GZ8QdWRKc/GGlEs3LdEpZTl5WtlAavNNCjDE8IcJvutourE5GJsuC4Gm3juPU3sav1QKShI4b4YcA4iUNxmR6Pggmn171GuF7G0lnMawXkIDXm9EL7sDHQRH8zBNqe6YarmYD21o7KWAN+FUFtZn1r8m8L4/j8VYdP20lncUZfomz2gLrbjM6YPfpAhBark46oBXZkpEvwBKRxjC+A8bUWXL0HbBEpDFM7jkw+e5s9L+JxmmYO8q20FtzOOee/3Juzov3ATwDMgYuAKebdW38MyGrAAAAAElFTkSuQmCC")}#toolPanel .close{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAUJJREFUaAXtmD0KwkAQhdPZWNho4wlEvIKnyDE8k3ewyE08hXaWWuh74MAi