(this.webpackJsonpLivePlayer=this.webpackJsonpLivePlayer||[]).push([[4],{179:function(e,t,n){"use strict";var xe=n(383),we=n(384),be=n(386),Ee=n(387),o=n(388),Ce=o(),Te=o(!0),Le=n(389),Be=n(390),Se=n(391);function r(e,n){var a=(n=n||{}).controller;if(a||(e instanceof SVGElement&&(a=Be(e,n)),e instanceof HTMLElement&&(a=Se(e,n))),!a)throw new Error("Cannot create panzoom for the current type of dom element");var t,o,q,r,i,c,u=a.getOwner(),s={x:0,y:0},f=!1,l=new Le,O=(a.initTransform&&a.initTransform(l),"function"==typeof n.filterKey?n.filterKey:De),R="number"==typeof n.pinchSpeed?n.pinchSpeed:1,m=n.bounds,d="number"==typeof n.maxZoom?n.maxZoom:Number.POSITIVE_INFINITY,h="number"==typeof n.minZoom?n.minZoom:0,p="number"==typeof n.boundsPadding?n.boundsPadding:.05,I="number"==typeof n.zoomDoubleClickSpeed?n.zoomDoubleClickSpeed:1.75,Z=n.beforeWheel||De,V=n.beforeMouseDown||De,j="number"==typeof n.zoomSpeed?n.zoomSpeed:.065,v=ke(n.transformOrigin),Y=n.enableTextSelection?Te:Ce,e=m,y=typeof e;if("undefined"!=y&&"boolean"!=y&&!(Ae(e.left)&&Ae(e.top)&&Ae(e.bottom)&&Ae(e.right)))throw new Error("Bounds object is not valid. It can be: undefined, boolean (true|false) or an object {left, top, right, bottom}");n.autocenter&&(e=y=0,o=(o=U())?(y=o.left,e=o.top,t=o.right-o.left,o.bottom-o.top):(o=u.getBoundingClientRect(),t=o.width,o.height),0!==(i=a.getBBox()).width)&&0!==i.height&&(q=o/i.height,r=t/i.width,r=Math.min(r,q),l.x=-(i.left+i.width/2)*r+t/2+y,l.y=-(i.top+i.height/2)*r+o/2+e,l.scale=r);var g,x,G,K,w,b,W=0,E=!1,C=!1,T="smoothScroll"in n&&!n.smoothScroll?{start:De,stop:De,cancel:De}:Ee(function(){return{x:l.x,y:l.y}},function(e,t){N(),H(e,t)},n.smoothScroll),L=!1,B=(ee(),{dispose:function(){te()},moveBy:k,moveTo:H,centerOn:function(e){var t=e.ownerSVGElement;if(!t)throw new Error("ui element is required to be within the scene");var e=e.getBoundingClientRect(),n=e.left+e.width/2,e=e.top+e.height/2,t=t.getBoundingClientRect(),n=t.width/2-n,t=t.height/2-e;k(n,t,!0)},zoomTo:F,zoomAbs:$,smoothZoom:M,smoothZoomAbs:function(t,n,e){var o={scale:l.scale},e={scale:e};T.cancel(),N(),w=we(o,e,{step:function(e){$(t,n,e.scale)}})},showRectangle:function(e){var t=u.getBoundingClientRect(),t=S(t.width,t.height),n=e.right-e.left,o=e.bottom-e.top;if(!Number.isFinite(n)||!Number.isFinite(o))throw new Error("Invalid rectangle");var r=t.x/n,i=t.y/o,r=Math.min(r,i);l.x=-(e.left+n/2)*r+t.x/2,l.y=-(e.top+o/2)*r+t.y/2,l.scale=r},pause:function(){te(),L=!0},resume:function(){L&&(ee(),L=!1)},isPaused:function(){return L},getTransform:function(){return l},getMinZoom:function(){return h},getMaxZoom:function(){return d},getTransformOrigin:function(){return v},setTransformOrigin:function(e){v=ke(e)}});return be(B),B;function S(e,t){var n,o,r,i;return a.getScreenCTM?(n=(i=a.getScreenCTM()).a,o=i.d,r=i.e,i=i.f,s.x=e*n-r,s.y=t*o-i):(s.x=e,s.y=t),s}function H(e,t){l.x=e,l.y=t,X(),P("pan"),_()}function J(e,t){H(l.x+e,l.y+t)}function X(){var e,t,n,o=U();if(o)return e=!1,t=a.getBBox(),t={left:(n=function(e,t){return{x:e*l.scale+l.x,y:t*l.scale+l.y}}(t.left,t.top)).x,top:n.y,right:t.width*l.scale+n.x,bottom:t.height*l.scale+n.y},0<(n=o.left-t.right)&&(l.x+=n,e=!0),(n=o.right-t.left)<0&&(l.x+=n,e=!0),0<(n=o.top-t.bottom)&&(l.y+=n,e=!0),(n=o.bottom-t.top)<0&&(l.y+=n,e=!0),e}function U(){var e,t;if(m)return"boolean"==typeof m?(e=(t=u.getBoundingClientRect()).width,t=t.height,{left:e*p,top:t*p,right:e*(1-p),bottom:t*(1-p)}):m}function _(){f=!0,c=window.requestAnimationFrame(ne)}function Q(e,t,n){if(Me(e)||Me(t)||Me(n))throw new Error("zoom requires valid numbers");var o=l.scale*n;if(o element. Use its child instead (e.g. ). As of March 2016 only FireFox supported transform on the root element");e.disableKeyboardInteraction||o.setAttribute("tabindex",0);return{getBBox:function(){var e=n.getBBox();return{left:e.x,top:e.y,width:e.width,height:e.height}},getScreenCTM:function(){var e=o.getCTM();return e||o.getScreenCTM()},getOwner:function(){return o},applyTransform:function(e){n.setAttribute("transform","matrix("+e.scale+" 0 0 "+e.scale+" "+e.x+" "+e.y+")")},initTransform:function(e){var t=n.getCTM();e.x=t.e,e.y=t.f,e.scale=t.a,o.removeAttributeNS(null,"viewBox")}}}},391:function(e,t){e.exports=function(t,e){if(!(t instanceof HTMLElement))throw new Error("svg element is required for svg.panzoom to work");var n=t.parentElement;if(!n)throw new Error("Do not apply panzoom to the detached DOM element. ");t.scrollTop=0,e.disableKeyboardInteraction||n.setAttribute("tabindex",0);return{getBBox:function(){return{left:0,top:0,width:t.clientWidth,height:t.clientHeight}},getOwner:function(){return n},applyTransform:function(e){t.style.transformOrigin="0 0 0",t.style.transform="matrix("+e.scale+", 0, 0, "+e.scale+", "+e.x+", "+e.y+")"}}}}}]);