var feelppVtkJs=function(n){var r={};function a(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,a),t.l=!0,t.exports}return a.m=n,a.c=r,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)a.d(n,r,function(e){return t[e]}.bind(null,r));return n},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=238)}([function(e,J,$){"use strict";!function(e,f){Object.defineProperty(J,"__esModule",{value:!0}),J.EVENT_ABORT=J.TYPED_ARRAYS=J.VOID=void 0;var l=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var n=e,r=t,a=[],i=!0,e=!1,t=void 0;try{for(var o,s=n[Symbol.iterator]();!(i=(o=s.next()).done)&&(a.push(o.value),!r||a.length!==r);i=!0);}catch(n){e=!0,t=n}finally{try{!i&&s.return&&s.return()}finally{if(e)throw t}}return a}throw new TypeError("Invalid attempt to destructure non-iterable instance")},a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u=(J.setLoggerFunction=m,J.vtkLogMacro=v,J.vtkInfoMacro=A,J.vtkDebugMacro=i,J.vtkErrorMacro=c,J.vtkWarningMacro=y,J.capitalize=h,J.uncapitalize=T,J.formatBytesToProperUnit=w,J.formatNumbersWithThousandSeparator=b,J.obj=N,J.get=o,J.set=L,J.setGet=C,J.getArray=O,J.setArray=S,J.setGetArray=j,J.algo=_,J.event=z,J.newInstance=k,J.chain=R,J.isVtkObject=B,J.traverseInstanceTree=s,J.debounce=U,J.throttle=V,J.keystore=F,J.proxy=Y,J.proxyPropertyMapping=W,J.proxyPropertyState=H,J.normalizeWheel=Z,(t=$(20))&&t.__esModule?t:{default:t});function g(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function d(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var p=0,t=J.VOID=Symbol("void"),M={};function n(){}["log","debug","info","warn","error","time","timeEnd","group","groupEnd"].forEach(function(e){M[e]=n}),e.console=console.hasOwnProperty("log")?console:M;var r={debug:n,error:e.console.error||n,info:e.console.info||n,log:e.console.log||n,warn:e.console.warn||n};function m(e,t){r[e]&&(r[e]=t||n)}function v(){r.log.apply(r,arguments)}function A(){r.info.apply(r,arguments)}function i(){r.debug.apply(r,arguments)}function c(){r.error.apply(r,arguments)}function y(){r.warn.apply(r,arguments)}e=J.TYPED_ARRAYS={Float32Array:Float32Array,Float64Array:Float64Array,Uint8Array:Uint8Array,Int8Array:Int8Array,Uint16Array:Uint16Array,Int16Array:Int16Array,Uint32Array:Uint32Array,Int32Array:Int32Array};function h(e){return e.charAt(0).toUpperCase()+e.slice(1)}function T(e){return e.charAt(0).toLowerCase()+e.slice(1)}function w(e){for(var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:2,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:1e3,r=["TB","GB","MB","KB"],a=Number(e),i="B";n<a;)a/=n,i=r.pop();return a.toFixed(t)+" "+i}function b(e){for(var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:" ",n=[],r=e;1e3<r;)n.push(("000"+r%1e3).slice(-3)),r=Math.floor(r/1e3);return 0<r&&n.push(r),n.reverse(),n.join(t)}function D(t){Object.keys(t).forEach(function(e){Array.isArray(t[e])&&(t[e]=[].concat(t[e]))})}function x(e){return e.isA?e.getState():e}function N(){var o=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},s=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},r=(D(s),[]);function a(e){r[e]=null}return Number.isInteger(s.mtime)||(s.mtime=++p),s.classHierarchy=["vtkObject"],o.isDeleted=function(){return!!s.deleted},o.modified=function(e){s.deleted?c("instance deleted - cannot call any method"):e&&e<o.getMTime()||(s.mtime=++p,r.forEach(function(e){return e&&e(o)}))},o.onModified=function(e){if(s.deleted)return c("instance deleted - cannot call any method"),null;var t,n=r.length;return r.push(e),t=n,Object.freeze({unsubscribe:function(){a(t)}})},o.getMTime=function(){return s.mtime},o.isA=function(e){for(var t=s.classHierarchy.length;t--;)if(s.classHierarchy[t]===e)return!0;return!1},o.getClassName=function(){return s.classHierarchy[s.classHierarchy.length-1-(0<arguments.length&&void 0!==arguments[0]?arguments[0]:0)]},o.set=function(){var n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},r=1<arguments.length&&void 0!==arguments[1]&&arguments[1],a=2<arguments.length&&void 0!==arguments[2]&&arguments[2],i=!1;return Object.keys(n).forEach(function(e){var t=a?null:o["set"+h(e)];i=t&&Array.isArray(n[e])?t.apply(void 0,d(n[e]))||i:t?t(n[e])||i:(-1!==["mtime"].indexOf(e)||r||y("Warning: Set value to model directly "+e+", "+n[e]),s[e]=n[e],!0)}),i},o.get=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];if(!t.length)return s;var r={};return t.forEach(function(e){r[e]=s[e]}),r},o.getReferenceByName=function(e){return s[e]},o.delete=function(){Object.keys(s).forEach(function(e){return delete s[e]}),r.forEach(function(e,t){return a(t)}),s.deleted=!0},o.getState=function(){var t=Object.assign({},s,{vtkClass:o.getClassName()}),n=(Object.keys(t).forEach(function(e){null===t[e]||void 0===t[e]?delete t[e]:t[e].isA?t[e]=t[e].getState():Array.isArray(t[e])&&(t[e]=t[e].map(x))}),{});return Object.keys(t).sort().forEach(function(e){n[e]=t[e]}),n.mtime&&delete n.mtime,n},o.shallowCopy=function(e){var n=1<arguments.length&&void 0!==arguments[1]&&arguments[1];if(e.getClassName()!==o.getClassName())throw new Error("Cannot ShallowCopy "+e.getClassName()+" into "+o.getClassName());var r=e.get(),a=Object.keys(s).sort();Object.keys(r).sort().forEach(function(e){var t=a.indexOf(e);-1===t?n&&i("add "+e+" in shallowCopy"):a.splice(t,1),s[e]=r[e]}),a.length&&n&&i("Untouched keys: "+a.join(", ")),o.modified()},o}function o(t,n,e){e.forEach(function(e){"object"===(void 0===e?"undefined":a(e))?t["get"+h(e.name)]=function(){return n[e.name]}:t["get"+h(e)]=function(){return n[e]}})}var E={enum:function(t,n,r){return function(e){if("string"==typeof e){if(void 0!==r.enum[e])return n[r.name]!==r.enum[e]&&(n[r.name]=r.enum[e],t.modified(),!0);throw c("Set Enum with invalid argument "+r+", "+e),new RangeError("Set Enum with invalid string argument")}if("number"!=typeof e)throw c("Set Enum with invalid argument (String/Number) "+r+", "+e),new TypeError("Set Enum with invalid argument (String/Number)");if(n[r.name]===e)return!1;if(-1!==Object.keys(r.enum).map(function(e){return r.enum[e]}).indexOf(e))return n[r.name]=e,t.modified(),!0;throw c("Set Enum outside numeric range "+r+", "+e),new RangeError("Set Enum outside numeric range")}}};function I(r){if("object"!==(void 0===r?"undefined":a(r)))return function(t,n){return function(e){return n.deleted?(c("instance deleted - cannot call any method"),!1):n[r]!==e&&(n[r]=e,t.modified(),!0)}};var n=E[r.type];if(n)return function(e,t){return n(e,t,r)};throw c("No setter for field "+r),new TypeError("No setter for field")}function L(t,n,e){e.forEach(function(e){"object"===(void 0===e?"undefined":a(e))?t["set"+h(e.name)]=I(e)(t,n):t["set"+h(e)]=I(e)(t,n)})}function C(e,t,n){o(e,t,n),L(e,t,n)}function O(t,n,e){e.forEach(function(e){t["get"+h(e)]=function(){return[].concat(n[e])},t["get"+h(e)+"ByReference"]=function(){return n[e]}})}function S(o,s,e,u){var l=4<arguments.length&&void 0!==arguments[4]?arguments[4]:void 0;e.forEach(function(i){o["set"+h(i)]=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];if(s.deleted)return c("instance deleted - cannot call any method"),!1;var r=t;if((r=1===r.length&&Array.isArray(r[0])?r[0]:r).length!==u){if(!(r.length<u&&void 0!==l))throw new RangeError("Invalid number of values for array setter");for(r=[].concat(r);r.length<u;)r.push(l)}var a=!1;return s[i].forEach(function(e,t){e!==r[t]&&(a=a||!0)}),!a&&s[i].length===r.length||(s[i]=[].concat(r),o.modified()),!0},o["set"+h(i)+"From"]=function(e){var n=s[i];e.forEach(function(e,t){n[t]=e})}})}function j(e,t,n,r){var a=4<arguments.length&&void 0!==arguments[4]?arguments[4]:void 0;O(e,t,n),S(e,t,n,r,a)}function _(a,i,e,o){function t(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0;i.deleted?c("instance deleted - cannot call any method"):t>=i.numberOfInputs?c("algorithm "+a.getClassName()+" only has "+(""+i.numberOfInputs)+" input ports. To add more input ports, use addInputData()"):i.inputData[t]===e&&!i.inputConnection[t]||(i.inputData[t]=e,i.inputConnection[t]=null,a.modified&&a.modified())}function n(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0;i.deleted?c("instance deleted - cannot call any method"):t>=i.numberOfInputs?c("algorithm "+a.getClassName()+" only has "+(""+i.numberOfInputs)+" input ports. To add more input ports, use addInputConnection()"):(i.inputData[t]=null,i.inputConnection[t]=e)}function r(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0;return i.deleted?(c("instance deleted - cannot call any method"),null):(a.shouldUpdate()&&a.update(),i.output[e])}if(i.inputData?i.inputData=i.inputData.map(u.default):i.inputData=[],i.inputConnection?i.inputConnection=i.inputConnection.map(u.default):i.inputConnection=[],i.output?i.output=i.output.map(u.default):i.output=[],i.inputArrayToProcess?i.inputArrayToProcess=i.inputArrayToProcess.map(u.default):i.inputArrayToProcess=[],i.numberOfInputs=e,a.shouldUpdate=function(){for(var e=a.getMTime(),t=o,n=1/0;t--;){if(!i.output[t])return!0;var r=i.output[t].getMTime();if(r<e)return!0;r<n&&(n=r)}for(t=i.numberOfInputs;t--;)if(i.inputConnection[t]&&i.inputConnection[t].filter.shouldUpdate())return!0;for(t=i.numberOfInputs;t--;)if(a.getInputData(t)&&a.getInputData(t).getMTime()>n)return!0;return!1},i.numberOfInputs){for(var s=i.numberOfInputs;s--;)i.inputData.push(null),i.inputConnection.push(null);a.setInputData=t,a.setInputConnection=n,a.addInputData=function(e){i.deleted?c("instance deleted - cannot call any method"):(i.numberOfInputs++,t(e,i.numberOfInputs-1))},a.addInputConnection=function(e){i.deleted?c("instance deleted - cannot call any method"):(i.numberOfInputs++,n(e,i.numberOfInputs-1))},a.getInputData=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0;return i.inputConnection[e]&&(i.inputData[e]=i.inputConnection[e]()),i.inputData[e]},a.getInputConnection=function(){return i.inputConnection[0<arguments.length&&void 0!==arguments[0]?arguments[0]:0]}}o&&(a.getOutputData=r,a.getOutputPort=function(){function e(){return r(t)}var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0;return e.filter=a,e}),a.update=function(){var e=[];if(i.numberOfInputs)for(var t=0;t<i.numberOfInputs;)e[t]=a.getInputData(t),t++;a.shouldUpdate()&&a.requestData&&a.requestData(e,i.output)},a.getNumberOfInputPorts=function(){return i.numberOfInputs},a.getNumberOfOutputPorts=function(){return o},a.getInputArrayToProcess=function(e){var t=i.inputArrayToProcess[e],e=i.inputData[e];return t&&e?e["get"+t.fieldAssociation]().getArray(t.arrayName):null},a.setInputArrayToProcess=function(e,t,n){for(var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:"Scalars";i.inputArrayToProcess.length<e;)i.inputArrayToProcess.push(null);i.inputArrayToProcess[e]={arrayName:t,fieldAssociation:n,attributeType:r}}}var P=J.EVENT_ABORT=Symbol("Event abort");function z(a,i,e){var o=[],t=a.delete,s=1;function u(e){for(var t=0;t<o.length;++t)if(l(o[t],1)[0]===e)return void o.splice(t,1)}a["invoke"+h(e)]=function(){var n=arguments;if(i.deleted)c("instance deleted - cannot call any method");else for(var r=o.slice(),e=0;e<r.length&&"break"!==function(e){var e=l(r[e],3),t=e[1],e=e[2];if(e<0)setTimeout(function(){return t.apply(a,n)},1-e);else if(t&&t.apply(a,n)===P)return"break"}(e);++e);},a["on"+h(e)]=function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0;if(i.deleted)return c("instance deleted - cannot call any method"),null;var n,r=s++;return o.push([r,e,t]),o.sort(function(e,t){return t[2]-e[2]}),n=r,Object.freeze({unsubscribe:function(){u(n)}})},a.delete=function(){t(),o.forEach(function(e){return u(l(e,1)[0])})}}function k(t,e){function n(){var e={};return t(e,{},0<arguments.length&&void 0!==arguments[0]?arguments[0]:{}),Object.freeze(e)}return e&&u.default.register(e,n),n}function R(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return r.filter(function(e){return!!e}).forEach(function(e){return e.apply(void 0,t)})}}function B(e){return e&&e.isA&&e.isA("vtkObject")}function s(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:[],r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:[];if(B(e)){if(0<=r.indexOf(e))return n;r.push(e);var a=t(e),i=(void 0!==a&&n.push(a),e.get());Object.keys(i).forEach(function(e){e=i[e];Array.isArray(e)?e.forEach(function(e){s(e,t,n,r)}):s(e,t,n,r)})}return n}function U(i,o,s){var u=this,l=void 0;return function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=u,a=s&&!l;clearTimeout(l),l=setTimeout(function(){l=null,s||i.apply(r,t)},o),a&&i.apply(r,t)}}function V(r,a){var i=!1,o=null;function s(){i=!1,null!==o&&(e.apply(void 0,d(o)),o=null)}function e(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];i?o=t:(i=!0,r.apply(void 0,t),setTimeout(s,a))}return e}function F(e,n){n.keystore=Object.assign(n.keystore||{},2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),e.setKey=function(e,t){n.keystore[e]=t},e.getKey=function(e,t){return n.keystore[e]},e.getAllKeys=function(e,t){return Object.keys(n.keystore)},e.deleteKey=function(e,t){return delete n.keystore[e]},e.clearKeystore=function(){return e.getAllKeys().forEach(function(e){return delete n.keystore[e]})}}var G=1,Q="__root__";function Y(s,d){F(s,d);var n=s.delete,a=(d.proxyId=""+G++,d.ui=JSON.parse(JSON.stringify(d.ui||[])),o(s,d,["proxyId","proxyGroup","proxyName"]),C(s,d,["proxyManager"]),{}),u={};function i(e,t){u[t]||(u[t]=[]);for(var n=u[t],r=0;r<e.length;r++)n.push(e[r].name),a[e[r].name]=e[r],e[r].children&&e[r].children.length&&i(e[r].children,e[r].name)}function l(e){for(var t=[],n=d.proxyId,r=function(e){return u[0<arguments.length&&void 0!==e?e:Q]}(0<arguments.length&&void 0!==e?e:Q)||[],a=0;a<r.length;a++){var i=r[a],o=s["get"+h(i)],o={id:n,name:i,value:o?o():void 0},i=l(i);i.length&&(o.children=i),t.push(o)}return t}i(d.ui,Q),s.updateUI=function(e){d.ui=JSON.parse(JSON.stringify(e||[])),Object.keys(a).forEach(function(e){return delete a[e]}),Object.keys(u).forEach(function(e){return delete u[e]}),i(d.ui,Q),s.modified()},s.updateProxyProperty=function(e,t){var n=a[e];n?Object.assign(n,t):a[e]=Object.assign({},t)},s.activate=function(){var e;d.proxyManager&&(e="setActive"+h(s.getProxyGroup().slice(0,-1)),d.proxyManager[e]&&d.proxyManager[e](s))},d.propertyLinkSubscribers={},s.registerPropertyLinkForGC=function(e,t){t in d.propertyLinkSubscribers||(d.propertyLinkSubscribers[t]=[]),d.propertyLinkSubscribers[t].push(e)},s.gcPropertyLinks=function(e){for(var t=d.propertyLinkSubscribers[e]||[];t.length;)t.pop().unbind(s)},d.propertyLinkMap={},s.getPropertyLink=function(s){if(d.propertyLinkMap[s])return d.propertyLinkMap[s];var u=null,l=[],c=0,f=!1;function i(e){var t=1<arguments.length&&void 0!==arguments[1]&&arguments[1];if(f)return null;var n=[],r=null;for(c=l.length;c--;){var a=l[c];a.instance===e?r=a:n.push(a)}if(!r)return null;var i=r.instance["get"+h(r.propertyName)]();if(i!==u||t){for(u=i,f=!0;n.length;){var o=n.pop();o.instance.set(g({},o.propertyName,u))}f=!1}return d.propertyLinkMap[s].persistent&&(d.propertyLinkMap[s].value=i),i}function o(e,t){var n=[];for(c=l.length;c--;){var r=l[c];r.instance!==e||r.propertyName!==t&&void 0!==t||(r.subscription.unsubscribe(),n.push(c))}for(;n.length;)l.splice(n.pop(),1)}var e={bind:function(e,t){var n=2<arguments.length&&void 0!==arguments[2]&&arguments[2],r=e.onModified(i),a=l[0];return l.push({instance:e,propertyName:t,subscription:r}),n&&(d.propertyLinkMap[s].persistent&&void 0!==d.propertyLinkMap[s].value?e.set(g({},t,d.propertyLinkMap[s].value)):a&&i(a.instance,!0)),{unsubscribe:function(){return o(e,t)}}},unbind:o,unsubscribe:function(){for(;l.length;)l.pop().subscription.unsubscribe()},persistent:1<arguments.length&&void 0!==arguments[1]&&arguments[1]};return d.propertyLinkMap[s]=e},s.listPropertyNames=function(){return l().map(function(e){return e.name})},s.getPropertyByName=function(t){return l().find(function(e){return e.name===t})},s.getPropertyDomainByName=function(e){return a[e].domain},s.getProxySection=function(){return{id:d.proxyId,name:d.proxyGroup,ui:d.ui,properties:l()}},s.delete=function(){for(var e=Object.keys(d.propertyLinkMap),t=e.length;t--;)d.propertyLinkMap[e[t]].unsubscribe();Object.keys(d.propertyLinkSubscribers).forEach(s.gcPropertyLinks),n()},f(function(){if(d.links)for(var e=0;e<d.links.length;e++){var t=d.links[e],n=t.link,r=t.property,a=t.persistent,i=t.updateOnBind;"application"===t.type&&(t=d.proxyManager.getPropertyLink(n,a),s.registerPropertyLinkForGC(t,"application"),t.bind(s,r,i))}})}function W(e,t,n){for(var c=e.delete,r=[],a=Object.keys(n),i=a.length;i--;){var o=a[i],s=n[o],u=s.modelKey,l=s.property,s=s.modified,s=void 0===s||s,l=h(l),o=h(o);e["get"+o]=t[u]["get"+l],e["set"+o]=t[u]["set"+l],s&&r.push(t[u].onModified(e.modified))}e.delete=function(){for(;r.length;)r.pop().unsubscribe();c()}}function H(s,u){var e=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},t=3<arguments.length&&void 0!==arguments[3]?arguments[3]:{};u.this=s;for(var n=Object.keys(t),r=n.length;r--;)!function(){var i=n[r],o=(u[i]=t[i],e[i]);s["set"+h(i)]=function(e){if(e!==u[i]){u[i]=e;for(var t=o[e],n=Object.keys(t),r=n.length;r--;){var a=n[r];u[a].set(t[a])}s.modified()}}}();n.length&&o(s,u,n)}var q=10,K=40,X=800;function Z(e){var t=0,n=0,r=0,a=0;return"detail"in e&&(n=e.detail),"wheelDelta"in e&&(n=-e.wheelDelta/120),"wheelDeltaY"in e&&(n=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=n,n=0),r=t*q,a=n*q,"deltaY"in e&&(a=e.deltaY),((r="deltaX"in e?e.deltaX:r)||a)&&e.deltaMode&&(1===e.deltaMode?(r*=K,a*=K):(r*=X,a*=X)),{spinX:t=r&&!t?r<1?-1:1:t,spinY:n=a&&!n?a<1?-1:1:n,pixelX:r,pixelY:a}}J.default={EVENT_ABORT:P,VOID:t,TYPED_ARRAYS:e,algo:_,capitalize:h,uncapitalize:T,chain:R,enumToString:function(t,n){return Object.keys(t).find(function(e){return t[e]===n})},event:z,get:o,getArray:O,getCurrentGlobalMTime:function(){return p},getStateArrayMapFunc:x,isVtkObject:B,keystore:F,newInstance:k,obj:N,safeArrays:D,set:L,setArray:S,setGet:C,setGetArray:j,setLoggerFunction:m,traverseInstanceTree:s,vtkDebugMacro:i,vtkErrorMacro:c,vtkInfoMacro:A,vtkLogMacro:v,vtkWarningMacro:y,debounce:U,throttle:V,proxy:Y,proxyPropertyMapping:W,proxyPropertyState:H,formatBytesToProperUnit:w,formatNumbersWithThousandSeparator:b,normalizeWheel:Z}}.call(this,$(8),$(103).setImmediate)},function(c,o,e){"use strict";var s=e(11),f=e(67),t=e(27),d=e(135),h=e(21);function n(e){return e}function u(e,t){for(var n=0;n<e.length;++n)t[n]=255&e.charCodeAt(n);return t}o.newBlob=function(t,n){o.checkSupport("blob");try{return new Blob(t,{type:n})}catch(e){try{for(var r=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder),a=0;a<t.length;a++)r.append(t[a]);return r.getBlob(n)}catch(t){throw new Error("Bug : can't construct the Blob.")}}};var a={stringifyByChunk:function(e,t,n){var r=[],a=0,i=e.length;if(i<=n)return String.fromCharCode.apply(null,e);for(;a<i;)"array"===t||"nodebuffer"===t?r.push(String.fromCharCode.apply(null,e.slice(a,Math.min(a+n,i)))):r.push(String.fromCharCode.apply(null,e.subarray(a,Math.min(a+n,i)))),a+=n;return r.join("")},stringifyByChar:function(e){for(var t="",n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t},applyCanBeUsed:{uint8array:function(){try{return s.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return s.nodebuffer&&1===String.fromCharCode.apply(null,t.newBuffer(1)).length}catch(e){return!1}}()}};function r(e){var t=65536,n=o.getTypeOf(e),r=!0;if("uint8array"===n?r=a.applyCanBeUsed.uint8array:"nodebuffer"===n&&(r=a.applyCanBeUsed.nodebuffer),r)for(;1<t;)try{return a.stringifyByChunk(e,n,t)}catch(e){t=Math.floor(t/2)}return a.stringifyByChar(e)}function i(e,t){for(var n=0;n<e.length;n++)t[n]=e[n];return t}o.applyFromCharCode=r;var l={};l.string={string:n,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return l.string.uint8array(e).buffer},uint8array:function(e){return u(e,new Uint8Array(e.length))},nodebuffer:function(e){return u(e,t.newBuffer(e.length))}},l.array={string:r,array:n,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return t.newBuffer(e)}},l.arraybuffer={string:function(e){return r(new Uint8Array(e))},array:function(e){return i(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:n,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return t.newBuffer(new Uint8Array(e))}},l.uint8array={string:r,array:function(e){return i(e,new Array(e.length))},arraybuffer:function(e){var t=new Uint8Array(e.length);return e.length&&t.set(e,0),t.buffer},uint8array:n,nodebuffer:function(e){return t.newBuffer(e)}},l.nodebuffer={string:r,array:function(e){return i(e,new Array(e.length))},arraybuffer:function(e){return l.nodebuffer.uint8array(e).buffer},uint8array:function(e){return i(e,new Uint8Array(e.length))},nodebuffer:n},o.transformTo=function(e,t){if(t=t||"",!e)return t;o.checkSupport(e);var n=o.getTypeOf(t);return l[n][e](t)},o.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":s.nodebuffer&&t.isBuffer(e)?"nodebuffer":s.uint8array&&e instanceof Uint8Array?"uint8array":s.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},o.checkSupport=function(e){if(!s[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},o.MAX_VALUE_16BITS=65535,o.MAX_VALUE_32BITS=-1,o.pretty=function(e){for(var t,n="",r=0;r<(e||"").length;r++)n+="\\x"+((t=e.charCodeAt(r))<16?"0":"")+t.toString(16).toUpperCase();return n},o.delay=function(e,t,n){d(function(){e.apply(n||null,t||[])})},o.inherits=function(e,t){function n(){}n.prototype=t.prototype,e.prototype=new n},o.extend=function(){for(var e,t={},n=0;n<arguments.length;n++)for(e in arguments[n])arguments[n].hasOwnProperty(e)&&void 0===t[e]&&(t[e]=arguments[n][e]);return t},o.prepareContent=function(n,e,r,a,i){return h.Promise.resolve(e).then(function(r){return s.blob&&(r instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(r)))&&"undefined"!=typeof FileReader?new h.Promise(function(t,n){var e=new FileReader;e.onload=function(e){t(e.target.result)},e.onerror=function(e){n(e.target.error)},e.readAsArrayBuffer(r)}):r}).then(function(e){var t=o.getTypeOf(e);return t?("arraybuffer"===t?e=o.transformTo("uint8array",e):"string"===t&&(i?e=f.decode(e):r&&!0!==a&&(e=u(t=e,new(s.uint8array?Uint8Array:Array)(t.length)))),e):h.Promise.reject(new Error("The data of '"+n+"' is in an unsupported format !"))})}},function(n,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var l=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var n=e,r=t,a=[],i=!0,e=!1,t=void 0;try{for(var o,s=n[Symbol.iterator]();!(i=(o=s.next()).done)&&(a.push(o.value),!r||a.length!==r);i=!0);}catch(n){e=!0,t=n}finally{try{!i&&s.return&&s.return()}finally{if(e)throw t}}return a}throw new TypeError("Invalid attempt to destructure non-iterable instance")},a=i(e(231)),e=i(e(0));function i(e){return e&&e.__esModule?e:{default:e}}var c=e.default.vtkErrorMacro,b=e.default.vtkWarningMacro,o=0,x=20;function t(e){return function(){return c("vtkMath::"+e+" - NOT IMPLEMENTED")}}function p(e,t){for(var n=0;n<3;n++){var r=e[n];e[n]=t[n],t[n]=r}}function D(e){for(var t=0<arguments.length&&void 0!==e?e:3,n=[];n.length<t;)n.push(0);return n}var e=Math.round,s=Math.floor,u=Math.ceil,f=Math.min,h=Math.max,g=t("ceilLog2"),m=t("factorial");function v(e){for(var t=1;t<e;)t*=2;return t}var A=t("gaussian");function w(e,t){e[0]*=t,e[1]*=t,e[2]*=t}function N(e,t){e[0]*=t,e[1]*=t}function y(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function E(e,t,n){var r=e[1]*t[2]-e[2]*t[1],a=e[2]*t[0]-e[0]*t[2],e=e[0]*t[1]-e[1]*t[0];n[0]=r,n[1]=a,n[2]=e}function T(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:3;switch(t){case 1:return Math.abs(e);case 2:return Math.sqrt(e[0]*e[0]+e[1]*e[1]);case 3:return Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);default:for(var n=0,r=0;r<t;r++)n+=e[r]*e[r];return Math.sqrt(n)}}function I(e){var t=T(e);return 0!==t&&(e[0]/=t,e[1]/=t,e[2]/=t),t}function L(e,t){return e[0]*t[0]+e[1]*t[1]}function C(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function M(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return 2===t.length?t[0][0]*t[1][1]-t[1][0]*t[0][1]:4===t.length?t[0]*t[3]-t[1]*t[2]:Number.NaN}function O(e,t,n){for(var r=[[0,0,0],[0,0,0],[0,0,0]],a=0;a<3;a++)r[0][a]=e[0][0]*t[0][a]+e[0][1]*t[1][a]+e[0][2]*t[2][a],r[1][a]=e[1][0]*t[0][a]+e[1][1]*t[1][a]+e[1][2]*t[2][a],r[2][a]=e[2][0]*t[0][a]+e[2][1]*t[1][a]+e[2][2]*t[2][a];for(var i=0;i<3;i++)n[i][0]=r[i][0],n[i][1]=r[i][1],n[i][2]=r[i][2]}function d(e,t){var n=e[1][0];t[1][0]=e[0][1],t[0][1]=n,n=e[2][0],t[2][0]=e[0][2],t[0][2]=n,n=e[2][1],t[2][1]=e[1][2],t[1][2]=n,t[0][0]=e[0][0],t[1][1]=e[1][1],t[2][2]=e[2][2]}function S(e){for(var t=0;t<3;t++)e[t][0]=e[t][1]=e[t][2]=0,e[t][t]=1}function j(e){return e[0][0]*e[1][1]*e[2][2]+e[1][0]*e[2][1]*e[0][2]+e[2][0]*e[0][1]*e[1][2]-e[0][0]*e[2][1]*e[1][2]-e[1][0]*e[0][1]*e[2][2]-e[2][0]*e[1][1]*e[0][2]}function _(e,t){var n=e[0]*e[0],r=e[0]*e[1],a=e[0]*e[2],i=e[0]*e[3],o=e[1]*e[1],s=e[2]*e[2],u=e[3]*e[3],c=e[1]*e[2],f=e[1]*e[3],e=e[2]*e[3],d=o+s+u,l=1/(n+d),n=(n-d)*l;t[0][0]=o*(l*=2)+n,t[1][0]=(c+i)*l,t[2][0]=(f-a)*l,t[0][1]=(c-i)*l,t[1][1]=s*l+n,t[2][1]=(e+r)*l,t[0][2]=(f+a)*l,t[1][2]=(e-r)*l,t[2][2]=u*l+n}function P(e,t,n,r){for(var c,f,d,a,i=void 0,o=void 0,h=void 0,s=void 0,u=void 0,g=void 0,p=void 0,M=void 0,l=void 0,m=void 0,v=void 0,A=D(t),y=D(t),T=function(e,t,n,r,a){m=e[t][n],l=e[r][a],e[t][n]=m-d*(l+m*f),e[r][a]=l+d*(m-l*f)},u=0;u<t;u++){for(s=0;s<t;s++)r[u][s]=0;r[u][u]=1}for(u=0;u<t;u++)A[u]=n[u]=e[u][u],y[u]=0;for(i=0;i<x;i++){for(u=M=0;u<t-1;u++)for(s=u+1;s<t;s++)M+=Math.abs(e[u][s]);if(0===M)break;for(c=i<3?.2*M/(t*t):0,u=0;u<t-1;u++)for(s=u+1;s<t;s++)if(m=100*Math.abs(e[u][s]),3<i&&Math.abs(n[u])+m===Math.abs(n[u])&&Math.abs(n[s])+m===Math.abs(n[s]))e[u][s]=0;else if(Math.abs(e[u][s])>c){for(l=n[s]-n[u],Math.abs(l)+m===Math.abs(l)?p=e[u][s]/l:(a=.5*l/e[u][s],p=1/(Math.abs(a)+Math.sqrt(1+a*a)),a<0&&(p=-p)),a=1/Math.sqrt(1+p*p),f=(d=p*a)/(1+a),l=p*e[u][s],y[u]-=l,y[s]+=l,n[u]-=l,n[s]+=l,o=e[u][s]=0;o<=u-1;o++)T(e,o,u,o,s);for(o=u+1;o<=s-1;o++)T(e,u,o,o,s);for(o=s+1;o<t;o++)T(e,u,o,s,o);for(o=0;o<t;o++)T(r,o,u,o,s)}for(u=0;u<t;u++)A[u]+=y[u],n[u]=A[u],y[u]=0}if(x<=i)return b("vtkMath::Jacobi: Error extracting eigenfunctions"),0;for(o=0;o<t-1;o++){for(v=n[h=o],i=o+1;i<t;i++)n[i]>=v&&(v=n[h=i]);if(h!==o)for(n[h]=n[o],n[o]=v,i=0;i<t;i++)v=r[i][o],r[i][o]=r[i][h],r[i][h]=v}for(var w=(t>>1)+(1&t),o=0;o<t;o++){for(i=g=0;i<t;i++)0<=r[i][o]&&g++;if(g<w)for(i=0;i<t;i++)r[i][o]*=-1}return 1}function z(e,t){var n=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]];n[0][0]=e[0][0]+e[1][1]+e[2][2],n[1][1]=e[0][0]-e[1][1]-e[2][2],n[2][2]=-e[0][0]+e[1][1]-e[2][2],n[3][3]=-e[0][0]-e[1][1]+e[2][2],n[0][1]=n[1][0]=e[2][1]-e[1][2],n[0][2]=n[2][0]=e[0][2]-e[2][0],n[0][3]=n[3][0]=e[1][0]-e[0][1],n[1][2]=n[2][1]=e[1][0]+e[0][1],n[1][3]=n[3][1]=e[0][2]+e[2][0],n[2][3]=n[3][2]=e[2][1]+e[1][2];for(var r=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],a=[0,0,0,0],i=[0,0,0,0],o=0;o<4;o++)a[o]=n[o],i[o]=r[o];P(a,4,[0,0,0,0],i),t[0]=r[0][0],t[1]=r[1][0],t[2]=r[2][0],t[3]=r[3][0]}function k(e,t){for(var n=0;n<3;n++)t[0][n]=e[0][n],t[1][n]=e[1][n],t[2][n]=e[2][n];for(var r=D(3),a=D(3),i=void 0,o=0;o<3;o++){var c=Math.abs(t[o][0]),f=Math.abs(t[o][1]),d=Math.abs(t[o][2]),i=d>(i=c<f?f:c)?d:i;r[o]=1,0!==i&&(r[o]/=i)}var h=Math.abs(t[0][0])*r[0],s=Math.abs(t[1][0])*r[1],g=Math.abs(t[2][0])*r[2],h=(a[0]=0,s>=(i=h)&&(i=s,a[0]=1),i<=g&&(a[0]=2),0!==a[0]&&(p(t[a[0]],t[0]),r[a[0]]=r[0]),Math.abs(t[1][1])*r[1]),s=Math.abs(t[2][1])*r[2],g=(a[1]=1,s>=(i=h)&&p(t[a[1]=2],t[1]),a[2]=2,0);if(j(t)<0)for(var g=1,u=0;u<3;u++)t[0][u]=-t[0][u],t[1][u]=-t[1][u],t[2][u]=-t[2][u];s=D(4);if(z(t,s),_(s,t),g)for(var l=0;l<3;l++)t[0][l]=-t[0][l],t[1][l]=-t[1][l],t[2][l]=-t[2][l];1!==a[1]&&p(t[a[1]],t[1]),0!==a[0]&&p(t[a[0]],t[0])}function R(e,t,n){for(var r,a=void 0,i=void 0,o=void 0,s=void 0,u=void 0,l=[D(3),D(3),D(3)],c=D(3),f=D(3),a=0;a<3;a++)l[a][0]=e[a][0],l[a][1]=e[a][1],l[a][2]=e[a][2],c[a]=l[a],f[a]=n[a];if(P(c,3,t,f),t[0]!==t[1]||t[0]!==t[2]){for(d(n,n),a=0;a<3;a++)if(t[(a+1)%3]===t[(a+2)%3]){for(u=Math.abs(n[a][0]),o=0,i=1;i<3;i++)u<(s=Math.abs(n[a][i]))&&(u=s,o=i);return o!==a&&(s=t[o],t[o]=t[a],t[a]=s,p(n[a],n[o])),n[o][o]<0&&(n[o][0]=-n[o][0],n[o][1]=-n[o][1],n[o][2]=-n[o][2]),r=(o+2)%3,n[i=(o+1)%3][0]=0,n[i][1]=0,n[i][2]=0,n[i][i]=1,E(n[o],n[i],n[r]),I(n[r]),E(n[r],n[o],n[i]),void d(n,n)}for(u=Math.abs(n[0][0]),o=0,a=1;a<3;a++)u<(s=Math.abs(n[a][0]))&&(u=s,o=a);for(0!==o&&(s=t[o],t[o]=t[0],t[0]=s,p(n[o],n[0])),Math.abs(n[1][1])<Math.abs(n[2][1])&&(s=t[2],t[2]=t[1],t[1]=s,p(n[2],n[1])),a=0;a<2;a++)n[a][a]<0&&(n[a][0]=-n[a][0],n[a][1]=-n[a][1],n[a][2]=-n[a][2]);j(n)<0&&(n[2][0]=-n[2][0],n[2][1]=-n[2][1],n[2][2]=-n[2][2]),d(n,n)}else S(n)}function B(e,c,t){for(var f,n=void 0,r=void 0,a=void 0,i=void 0,o=0,s=void 0,u=void 0,l=D(t),n=0;n<t;n++){for(r=i=0;r<t;r++)(f=Math.abs(e[n][r]))>i&&(i=f);if(0===i)return b("Unable to factor linear system"),0;l[n]=1/i}for(r=0;r<t;r++){for(n=0;n<r;n++){for(s=e[n][r],a=0;a<n;a++)s-=e[n][a]*e[a][r];e[n][r]=s}for(i=0,n=r;n<t;n++){for(s=e[n][r],a=0;a<r;a++)s-=e[n][a]*e[a][r];e[n][r]=s,(u=l[n]*Math.abs(s))>=i&&(i=u,o=n)}if(r!==o){for(a=0;a<t;a++)u=e[o][a],e[o][a]=e[r][a],e[r][a]=u;l[o]=l[r]}if(c[r]=o,Math.abs(e[r][r])<=1e-12)return b("Unable to factor linear system"),0;if(r!==t-1)for(u=1/e[r][r],n=r+1;n<t;n++)e[n][r]*=u}return 1}function U(e,t,n,r){for(var a,i=void 0,o=void 0,s=void 0,u=void 0,s=-1,i=0;i<r;i++){if(u=n[a=t[i]],n[a]=n[i],0<=s)for(o=s;o<=i-1;o++)u-=e[i][o]*n[o];else 0!==u&&(s=i);n[i]=u}for(i=r-1;0<=i;i--){for(u=n[i],o=i+1;o<r;o++)u-=e[i][o]*n[o];n[i]=u/e[i][i]}}function V(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null,l=4<arguments.length&&void 0!==arguments[4]?arguments[4]:null,a=r||D(n),i=l||D(n);if(0===B(e,a,n))return 0;for(var o=0;o<n;o++){for(var s=0;s<n;s++)i[s]=0;i[o]=1,U(e,a,i,n);for(var u=0;u<n;u++)t[u][o]=i[u]}return 1}function F(e,t,n,r){if(e<n)return b("Insufficient number of samples. Underdetermined."),0;for(var a=void 0,i=void 0,o=void 0,s=D(n),u=D(n),l=D(n),a=0;a<n;a++)for(l[a]=D(n),s[a]=D(n),i=0;i<n;i++)s[a][i]=0;for(o=0;o<e;o++)for(a=0;a<n;a++)for(i=a;i<n;i++)s[a][i]+=t[o][a]*t[o][i];for(a=0;a<n;a++)for(i=0;i<a;i++)s[a][i]=s[i][a];for(P(s,n,u,l),a=0;a<n;a++)r[a][0]=l[a][n-1];return 1}function G(e,t){var e=l(e,3),n=(e[0]+16)/116,r=e[1]/500+n,e=n-e[2]/200,n=.008856<Math.pow(n,3)?Math.pow(n,3):(n-16/116)/7.787,r=.008856<Math.pow(r,3)?Math.pow(r,3):(r-16/116)/7.787,e=.008856<Math.pow(e,3)?Math.pow(e,3):(e-16/116)/7.787;t[0]=.9505*r,t[1]=+n,t[2]=1.089*e}function Q(e,t){var e=l(e,3),n=e[0]/.9505,r=+e[1],e=e[2]/1.089,n=.008856<n?Math.pow(n,1/3):7.787*n+16/116,r=.008856<r?Math.pow(r,1/3):7.787*r+16/116,e=.008856<e?Math.pow(e,1/3):7.787*e+16/116;t[0]=116*r-16,t[1]=500*(n-r),t[2]=200*(r-e)}function Y(e,t){var e=l(e,3),n=e[0],r=e[1],e=e[2],a=3.2406*n+-1.5372*r+-.4986*e,i=-.9689*n+1.8758*r+.0415*e,n=.0557*n+-.204*r+1.057*e,r=(.0031308<a?a=1.055*Math.pow(a,1/2.4)-.055:a*=12.92,.0031308<i?i=1.055*Math.pow(i,1/2.4)-.055:i*=12.92,.0031308<n?n=1.055*Math.pow(n,1/2.4)-.055:n*=12.92,a);1<(r=(r=r<i?i:r)<n?n:r)&&(a/=r,i/=r,n/=r),i<0&&(i=0),n<0&&(n=0),t[0]=a=a<0?0:a,t[1]=i,t[2]=n}function W(e,t){var e=l(e,3),n=e[0],r=e[1],e=e[2];.04045<n?n=Math.pow((n+.055)/1.055,2.4):n/=12.92,.04045<r?r=Math.pow((r+.055)/1.055,2.4):r/=12.92,.04045<e?e=Math.pow((e+.055)/1.055,2.4):e/=12.92,t[0]=.4124*n+.3576*r+.1805*e,t[1]=.2126*n+.7152*r+.0722*e,t[2]=.0193*n+.1192*r+.9505*e}var H=t("GetScalarTypeFittingRange"),q=t("GetAdjustedScalarRange"),K=Number.isFinite,X=Number.isNaN;r.default={Pi:function(){return Math.PI},radiansFromDegrees:function(e){return e/180*Math.PI},degreesFromRadians:function(e){return 180*e/Math.PI},round:e,floor:s,ceil:u,ceilLog2:g,min:f,max:h,arrayMin:function(e){for(var t=1/0,n=0,r=e.length;n<r;++n)e[n]<t&&(t=e[n]);return t},arrayMax:function(e){for(var t=-1/0,n=0,r=e.length;n<r;++n)t<e[n]&&(t=e[n]);return t},isPowerOfTwo:function(e){return e===v(e)},nearestPowerOfTwo:v,factorial:m,binomial:function(e,t){for(var n=1,r=1;r<=t;++r)n*=(e-r+1)/r;return Math.floor(n)},beginCombination:function(e,t){if(e<t)return 0;for(var n=D(t),r=0;r<t;++r)n[r]=r;return n},nextCombination:function(e,t,n){for(var r=0,a=t-1;0<=a;--a)if(n[a]<e-t+a){for(var i=n[a]+1;a<t;)n[a++]=i++;r=1;break}return r},randomSeed:function(e){(0,a.default)(""+e,{global:!0}),o=e},getSeed:function(){return o},random:function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0;return e+((1<arguments.length&&void 0!==arguments[1]?arguments[1]:1)-e)*Math.random()},gaussian:A,add:function(e,t,n){n[0]=e[0]+t[0],n[1]=e[1]+t[1],n[2]=e[2]+t[2]},subtract:function(e,t,n){n[0]=e[0]-t[0],n[1]=e[1]-t[1],n[2]=e[2]-t[2]},multiplyScalar:w,multiplyScalar2D:N,dot:y,outer:function(e,t,n){for(var r=0;r<3;r++)for(var a=0;a<3;a++)n[r][a]=e[r]*t[a]},cross:E,norm:T,normalize:I,perpendiculars:function(e,t,n,r){var a=e[0]*e[0],i=e[1]*e[1],o=e[2]*e[2],s=Math.sqrt(a+i+o),u=void 0,l=void 0,c=void 0,c=i<a&&o<a?(u=0,l=1,2):o<i?(u=1,l=2,0):(u=2,l=0,1),a=e[u]/s,o=e[l]/s,i=e[c]/s,e=Math.sqrt(a*a+i*i);0!==r?(s=Math.sin(r),r=Math.cos(r),t&&(t[u]=(i*r-a*o*s)/e,t[l]=s*e,t[c]=(-a*r-o*i*s)/e),n&&(n[u]=(-i*s-a*o*r)/e,n[l]=r*e,n[c]=(a*s-o*i*r)/e)):(t&&(t[u]=i/e,t[l]=0,t[c]=-a/e),n&&(n[u]=-a*o/e,n[l]=e,n[c]=-o*i/e))},projectVector:function(e,t,n){var r=y(t,t);if(0===r)return n[0]=0,n[1]=0,n[2]=0,!1;for(var e=y(e,t)/r,a=0;a<3;a++)n[a]=t[a];return w(n,e),!0},projectVector2D:function(e,t,n){var r=L(t,t);if(0===r)return n[0]=0,n[1]=0,!1;for(var e=L(e,t)/r,a=0;a<2;a++)n[a]=t[a];return N(n,e),!0},distance2BetweenPoints:function(e,t){return(e[0]-t[0])*(e[0]-t[0])+(e[1]-t[1])*(e[1]-t[1])+(e[2]-t[2])*(e[2]-t[2])},angleBetweenVectors:function(e,t){var n=[0,0,0];return E(e,t,n),Math.atan2(T(n),y(e,t))},gaussianAmplitude:function(e,t,n){e=Math.abs(e-n);return 1/Math.sqrt(2*Math.PI*t)*Math.exp(-Math.pow(e,2)/(2*t))},gaussianWeight:function(e,t,n){e=Math.abs(e-n);return Math.exp(-Math.pow(e,2)/(2*t))},dot2D:L,outer2D:function(e,t,n){for(var r=0;r<2;r++)for(var a=0;a<2;a++)n[r][a]=e[r]*t[a]},norm2D:C,normalize2D:function(e){var t=C(e);return 0!==t&&(e[0]/=t,e[1]/=t),t},determinant2x2:M,LUFactor3x3:function(e,t){for(var n=void 0,r=void 0,a=void 0,i=[0,0,0],o=0;o<3;o++)a=Math.abs(e[o][0]),(r=Math.abs(e[o][1]))>a&&(a=r),(r=Math.abs(e[o][2]))>a&&(a=r),i[o]=1/a;a=i[0]*Math.abs(e[0][0]),n=0,(r=i[1]*Math.abs(e[1][0]))>=a&&(a=r,n=1),0!==(n=(r=i[2]*Math.abs(e[2][0]))>=a?2:n)&&(p(e[n],e[0]),i[n]=i[0]),t[0]=n,e[1][0]/=e[0][0],e[2][0]/=e[0][0],e[1][1]-=e[1][0]*e[0][1],e[2][1]-=e[2][0]*e[0][1],a=i[1]*Math.abs(e[1][1]),n=1,(r=i[2]*Math.abs(e[2][1]))>=a&&(p(e[n=2],e[1]),i[2]=i[1]),t[1]=n,e[2][1]/=e[1][1],e[1][2]-=e[1][0]*e[0][2],e[2][2]-=e[2][0]*e[0][2]+e[2][1]*e[1][2],t[2]=2},LUSolve3x3:function(e,t,n){var r=n[t[0]];n[t[0]]=n[0],n[0]=r,r=n[t[1]],n[t[1]]=n[1],n[1]=r-e[1][0]*n[0],r=n[t[2]],n[t[2]]=n[2],n[2]=r-e[2][0]*n[0]-e[2][1]*n[1],n[2]/=e[2][2],n[1]=(n[1]-e[1][2]*n[2])/e[1][1],n[0]=(n[0]-e[0][1]*n[1]-e[0][2]*n[2])/e[0][0]},linearSolve3x3:function(e,t,c){var n=e[0][0],r=e[0][1],a=e[0][2],i=e[1][0],o=e[1][1],s=e[1][2],u=e[2][0],l=e[2][1],e=e[2][2],f=+M(o,l,s,e),d=-M(i,u,s,e),h=+M(i,u,o,l),g=-M(r,l,a,e),e=+M(n,u,a,e),u=-M(n,u,r,l),l=+M(r,o,a,s),s=-M(n,i,a,s),i=+M(n,i,r,o),o=n*f+r*d+a*h,n=f*t[0]+g*t[1]+l*t[2],r=d*t[0]+e*t[1]+s*t[2],a=h*t[0]+u*t[1]+i*t[2];c[0]=n/o,c[1]=r/o,c[2]=a/o},multiply3x3_vect3:function(e,t,n){var r=e[0][0]*t[0]+e[0][1]*t[1]+e[0][2]*t[2],a=e[1][0]*t[0]+e[1][1]*t[1]+e[1][2]*t[2],e=e[2][0]*t[0]+e[2][1]*t[1]+e[2][2]*t[2];n[0]=r,n[1]=a,n[2]=e},multiply3x3_mat3:O,multiplyMatrix:function(e,t,n,r,a,i,o){r!==a&&c("Number of columns of A must match number of rows of B.");for(var s=0;s<n;s++)for(var u=0;u<i;u++)for(var l=o[s][u]=0;l<r;l++)o[s][u]+=e[s][l]*t[l][u]},transpose3x3:d,invert3x3:function(e,t){var n=e[0][0],r=e[0][1],a=e[0][2],i=e[1][0],o=e[1][1],s=e[1][2],u=e[2][0],l=e[2][1],e=e[2][2],c=+M(o,l,s,e),f=-M(i,u,s,e),d=+M(i,u,o,l),h=-M(r,l,a,e),e=+M(n,u,a,e),u=-M(n,u,r,l),l=+M(r,o,a,s),s=-M(n,i,a,s),i=+M(n,i,r,o),o=n*c+r*f+a*d;t[0][0]=c/o,t[1][0]=f/o,t[2][0]=d/o,t[0][1]=h/o,t[1][1]=e/o,t[2][1]=u/o,t[0][2]=l/o,t[1][2]=s/o,t[2][2]=i/o},identity3x3:S,determinant3x3:j,quaternionToMatrix3x3:_,areMatricesEqual:function(e,n){return!e.length!==n.length&&e.every(function(e,t){return e===n[t]})},matrix3x3ToQuaternion:z,multiplyQuaternion:function(e,t,n){var r=e[0]*t[0],a=e[0]*t[1],i=e[0]*t[2],o=e[0]*t[3],s=e[1]*t[0],u=e[1]*t[1],l=e[1]*t[2],c=e[1]*t[3],f=e[2]*t[0],d=e[2]*t[1],h=e[2]*t[2],g=e[2]*t[3],p=e[3]*t[0],M=e[3]*t[1],m=e[3]*t[2],e=e[3]*t[3];n[0]=r-u-h-e,n[1]=a+s+g-m,n[2]=i-c+f+M,n[3]=o+l-d+p},orthogonalize3x3:k,diagonalize3x3:R,singularValueDecomposition3x3:function(e,t,n,r){for(var a=void 0,i=[D(3),D(3),D(3)],a=0;a<3;a++)i[0][a]=e[0][a],i[1][a]=e[1][a],i[2][a]=e[2][a];var o=j(i);if(o<0)for(a=0;a<3;a++)i[0][a]=-i[0][a],i[1][a]=-i[1][a],i[2][a]=-i[2][a];k(i,t),d(i,i),O(i,t,r),R(r,n,r),O(t,r,t),d(r,r),o<0&&(n[0]=-n[0],n[1]=-n[1],n[2]=-n[2])},solveLinearSystem:function(e,t,n){var r;if(2===n)return r=D(2),0===(a=M(e[0][0],e[0][1],e[1][0],e[1][1]))?0:(r[0]=(e[1][1]*t[0]-e[0][1]*t[1])/a,r[1]=(-e[1][0]*t[0]+e[0][0]*t[1])/a,t[0]=r[0],t[1]=r[1],1);if(1===n)return 0===e[0][0]?0:(t[0]/=e[0][0],1);var a=D(n);return 0===B(e,a,n)?0:(U(e,a,t,n),1)},invertMatrix:V,luFactorLinearSystem:B,luSolveLinearSystem:U,estimateMatrixCondition:function(e,t){for(var n=+Number.MAX_VALUE,r=-Number.MAX_VALUE,a=0;a<t;a++)for(var i=a;i<t;i++)Math.abs(e[a][i])>h&&(r=Math.abs(e[a][i]));for(var o=0;o<t;o++)Math.abs(e[o][o])<f&&(n=Math.abs(e[o][o]));return 0===n?Number.MAX_VALUE:r/n},jacobi:function(e,t,n){return P(e,3,t,n)},jacobiN:P,solveHomogeneousLeastSquares:F,solveLeastSquares:function(e,t,n,c,r,a){var f=!(6<arguments.length&&void 0!==arguments[6])||arguments[6];if(e<n||e<r)return b("Insufficient number of samples. Underdetermined."),0;var d=D(r),h=1,g=void 0,p=0,i=void 0,o=void 0,s=void 0,u=0;if(f){for(o=0;o<r;o++)d[o]=1;for(i=0;i<e;i++)for(o=0;o<r;o++)1e-12<Math.abs(c[i][o])&&(d[o]=h=0);if(h&&1===r)return b("Detected homogeneous system (Y=0), calling SolveHomogeneousLeastSquares()"),F(e,t,n,a);if(h)u=1;else for(o=0;o<r;o++)d[o]&&(u=1)}if(u){for(g=D(n),o=0;o<n;o++)g[o]=[0];p=F(e,t,n,g)}for(var l=D(n),M=D(n),m=D(n),i=0;i<n;i++){for(l[i]=D(n),M[i]=D(n),o=0;o<n;o++)l[i][o]=0,M[i][o]=0;for(m[i]=D(r),o=0;o<r;o++)m[i][o]=0}for(s=0;s<e;s++)for(i=0;i<n;i++){for(o=i;o<n;o++)l[i][o]+=t[s][i]*t[s][o];for(o=0;o<r;o++)m[i][o]+=t[s][i]*c[s][o]}for(i=0;i<n;i++)for(o=0;o<i;o++)l[i][o]=l[o][i];f=V(l,M,n);if(f)for(i=0;i<n;i++)for(o=0;o<r;o++)for(s=a[i][o]=0;s<n;s++)a[i][o]+=M[i][s]*m[s][o];if(u)for(o=0;o<r;o++)if(d[o])for(i=0;i<n;i++)a[i][o]=g[i][0];return(!u||p)&&f},hex2float:function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:[0,.5,1];switch(e.length){case 3:return t[0]=17*parseInt(e[0],16)/255,t[1]=17*parseInt(e[1],16)/255,t[2]=17*parseInt(e[2],16)/255,t;case 4:return t[0]=17*parseInt(e[1],16)/255,t[1]=17*parseInt(e[2],16)/255,t[2]=17*parseInt(e[3],16)/255,t;case 6:return t[0]=parseInt(e.substr(0,2),16)/255,t[1]=parseInt(e.substr(2,2),16)/255,t[2]=parseInt(e.substr(4,2),16)/255,t;case 7:return t[0]=parseInt(e.substr(1,2),16)/255,t[1]=parseInt(e.substr(3,2),16)/255,t[2]=parseInt(e.substr(5,2),16)/255,t;case 9:return t[0]=parseInt(e.substr(1,2),16)/255,t[1]=parseInt(e.substr(3,2),16)/255,t[2]=parseInt(e.substr(5,2),16)/255,t[3]=parseInt(e.substr(7,2),16)/255,t;default:return t}},rgb2hsv:function(e,t){var n,r=void 0,e=l(e,3),a=e[0],i=e[1],e=e[2],o=a,s=a,u=(o<i?o=i:i<s&&(s=i),o<e?o=e:e<s&&(s=e),o);0<(n=0<u?(o-s)/o:0)?(r=a===o?1/6*(i-e)/(o-s):i===o?1/3+1/6*(e-a)/(o-s):2/3+1/6*(a-i)/(o-s))<0&&(r+=1):r=0,t[0]=r,t[1]=n,t[2]=u},hsv2rgb:function(e,t){var e=l(e,3),n=e[0],r=e[1],e=e[2],a=void 0,i=void 0,o=void 0;1/6<n&&n<=1/3?(a=((i=1)/3-n)/(1/6),o=0):1/3<n&&n<=.5?(o=(n-(i=1)/3)/(1/6),a=0):.5<n&&n<=2/3?(i=(2/3-n)/((o=1)/6),a=0):2/3<n&&n<=5/6?(a=(n-2/3)/((o=1)/6),i=0):5/6<n&&n<=1?(o=((a=1)-n)/(1/6),i=0):(i=n/((a=1)/6),o=0),a=r*a+(1-r),i=r*i+(1-r),o=r*o+(1-r),i*=e,o*=e,t[0]=a*=e,t[1]=i,t[2]=o},lab2xyz:G,xyz2lab:Q,xyz2rgb:Y,rgb2xyz:W,rgb2lab:function(e,t){var n=[0,0,0];W(e,n),Q(n,t)},lab2rgb:function(e,t){var n=[0,0,0];G(e,n),Y(n,t)},uninitializeBounds:function(e){e[0]=1,e[1]=-1,e[2]=1,e[3]=-1,e[4]=1,e[5]=-1},areBoundsInitialized:function(e){return!(e[1]-e[0]<0)},clampValue:function(e,t,n){return e<t?t:n<e?n:e},clampAndNormalizeValue:function(e,t){var n=0;return n=t[0]!==t[1]?((n=e<t[0]?t[0]:e>t[1]?t[1]:e)-t[0])/(t[1]-t[0]):n},getScalarTypeFittingRange:H,getAdjustedScalarRange:q,extentIsWithinOtherExtent:function(e,t){if(!e||!t)return 0;for(var n=0;n<6;n+=2)if(e[n]<t[n]||e[n]>t[n+1]||e[n+1]<t[n]||e[n+1]>t[n+1])return 0;return 1},boundsIsWithinOtherBounds:function(e,t,n){if(!e||!t)return 0;for(var r=0;r<6;r+=2)if(e[r]+n[r/2]<t[r]||e[r]-n[r/2]>t[r+1]||e[r+1]+n[r/2]<t[r]||e[r+1]-n[r/2]>t[r+1])return 0;return 1},pointIsWithinBounds:function(e,t,n){if(!e||!t||!n)return 0;for(var r=0;r<3;r++)if(e[r]+n[r]<t[2*r]||e[r]-n[r]>t[2*r+1])return 0;return 1},solve3PointCircle:function(e,t,n,c){for(var r=D(3),a=D(3),i=D(3),o=D(3),f=D(3),d=D(3),s=0;s<3;++s)r[s]=e[s]-t[s],a[s]=t[s]-n[s],i[s]=n[s]-e[s],o[s]=-r[s],f[s]=-a[s],d[s]=-i[s];var h=T(o),g=T(f),p=T(i),u=D(3);E(r,a,u);for(var u=T(u),M=h*g*p/(2*u),u=2*u*u,m=g*g*y(r,d)/u,v=p*p*y(o,a)/u,A=h*h*y(i,f)/u,l=0;l<3;++l)c[l]=m*e[l]+v*t[l]+A*n[l];return M},inf:1/0,negInf:-1/0,isInf:function(e){return!Number.isFinite(e)},isNan:X,isNaN:X,isFinite:K,createUninitializedBounds:function(){return[].concat([Number.MAX_VALUE,-Number.MAX_VALUE,Number.MAX_VALUE,-Number.MAX_VALUE,Number.MAX_VALUE,-Number.MAX_VALUE])}}},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.vec4=e.vec3=e.vec2=e.quat2=e.quat=e.mat4=e.mat3=e.mat2d=e.mat2=e.glMatrix=void 0;var n=l(t(9)),r=l(t(216)),a=l(t(215)),i=l(t(100)),o=l(t(99)),s=l(t(98)),u=l(t(214)),f=l(t(213)),d=l(t(97)),t=l(t(96));function l(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}e.glMatrix=n,e.mat2=r,e.mat2d=a,e.mat3=i,e.mat4=o,e.quat=s,e.quat2=u,e.vec2=f,e.vec3=d,e.vec4=t},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=(n=n(0))&&n.__esModule?n:{default:n},o=r.default.vtkErrorMacro,s={parent:null,renderable:null,myFactory:null,children:[],visited:!1};function a(e,t){var a,i;Object.assign(t,s,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),r.default.obj(e,t),r.default.event(e,t,"event"),t.renderableChildMap=new Map,r.default.get(e,t,["visited"]),r.default.setGet(e,t,["parent","renderable","myFactory"]),r.default.getArray(e,t,["children"]),a=e,(i=t).classHierarchy.push("vtkViewNode"),a.build=function(e){},a.render=function(e){},a.traverse=function(e){var t=e.getTraverseOperation(),t=a[t];if(t)t(e);else{a.apply(e,!0);for(var n=0;n<i.children.length;n++)i.children[n].traverse(e);a.apply(e,!1)}},a.apply=function(e,t){var n=a[e.getOperation()];n&&n(t,e)},a.getViewNodeFor=function(e){if(i.renderable===e)return a;for(var t=0;t<i.children.length;++t){var n=i.children[t].getViewNodeFor(e);if(n)return n}},a.getFirstAncestorOfType=function(e){return i.parent?i.parent.isA(e)?i.parent:i.parent.getFirstAncestorOfType(e):null},a.addMissingNode=function(e){var t;e&&(void 0!==(t=i.renderableChildMap.get(e))?t.setVisited(!0):(t=a.createViewNode(e))&&(t.setParent(a),t.setVisited(!0),i.renderableChildMap.set(e,t),i.children.push(t)))},a.addMissingNodes=function(e){if(e&&e.length)for(var t=0;t<e.length;++t){var n=e[t],r=i.renderableChildMap.get(n);void 0!==r?r.setVisited(!0):(r=a.createViewNode(n))&&(r.setParent(a),r.setVisited(!0),i.renderableChildMap.set(n,r),i.children.push(r))}},a.prepareNodes=function(){for(var e=0;e<i.children.length;++e)i.children[e].setVisited(!1)},a.setVisited=function(e){i.visited=e},a.removeUnusedNodes=function(){for(var t=null,e=0;e<i.children.length;++e){var n,r=i.children[e];r.getVisited()?r.setVisited(!1):((n=r.getRenderable())&&i.renderableChildMap.delete(n),(t=t||[]).push(r))}t&&(i.children=i.children.filter(function(e){return!t.includes(e)}))},a.createViewNode=function(e){if(!i.myFactory)return o("Cannot create view nodes without my own factory"),null;var t=i.myFactory.createNode(e);return t&&t.setRenderable(e),t}}n=r.default.newInstance(a,"vtkViewNode");t.default={newInstance:n,extend:a,PASS_TYPES:["Build","Render"]}},function(e,t,n){"use strict";function r(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var n=0;n<this._listeners[e].length;n++)this._listeners[e][n].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.end()}),e.on("error",function(e){t.error(e)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)this.extraStreamInfo.hasOwnProperty(e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},e.exports=r},function(e,t){e.exports=function(){throw new Error("define cannot be used indirect")}},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=e.STATIC=void 0,e.extend=a;var n=r(t(10)),o=r(t(0)),f=r(t(2));function r(e){return e&&e.__esModule?e:{default:e}}var t=n.default.DefaultDataType,d=[];function l(){var t=Number.MAX_VALUE,n=-Number.MAX_VALUE,r=0,a=0;return{add:function(e){e<t&&(t=e),n<e&&(n=e),r++,a+=e},get:function(){return{min:t,max:n,count:r,sum:a,mean:a/r}},getRange:function(){return{min:t,max:n}}}}function s(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:1,r=l(),a=e.length,i=0;if(t<0&&1<n){for(var o=0;o<a;o+=n){for(var i=0,s=0;s<n;s++)i+=e[o+s]*e[o+s];i=Math.pow(i,.5),r.add(i)}return r.getRange()}for(var u=t<0?0:t;u<a;u+=n)r.add(e[u]);return r.getRange()}function u(e){return Object.prototype.toString.call(e).split(" ")[1].slice(0,-1)}var h=e.STATIC={computeRange:s,createRangeHelper:l,getDataType:u,getMaxNorm:function(e){for(var t=e.getNumberOfComponents(),n=0,r=0;r<e.getNumberOfTuples();++r){var a=f.default.norm(e.getTuple(r),t);n<a&&(n=a)}return n}},g={name:"",numberOfComponents:1,size:0,dataType:t,rangeTuple:[0,0]};function a(e,t){var r,i;if(Object.assign(t,g,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),!t.empty&&!t.values&&!t.size)throw new TypeError("Cannot create vtkDataArray object without: size > 0, values");function a(){i.ranges=null,r.modified()}t.values?Array.isArray(t.values)&&(t.values=window[t.dataType].from(t.values)):t.values=new window[t.dataType](t.size),t.values&&(t.size=t.values.length,t.dataType=u(t.values)),o.default.obj(e,t),o.default.set(e,t,["name","numberOfComponents"]),r=e,(i=t).classHierarchy.push("vtkDataArray"),r.getElementComponentSize=function(){return i.values.BYTES_PER_ELEMENT},r.getComponent=function(e){return i.values[e*i.numberOfComponents+(1<arguments.length&&void 0!==arguments[1]?arguments[1]:0)]},r.setComponent=function(e,t,n){n!==i.values[e*i.numberOfComponents+t]&&(i.values[e*i.numberOfComponents+t]=n,a())},r.getData=function(){return i.values},r.getRange=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:-1,t=e<0?i.numberOfComponents:e,n=null;return i.ranges||(i.ranges=function(e,t){for(var n=1<arguments.length&&void 0!==t?t:0,r=e||[];r.length<=n;)r.push(null);return r}(i.ranges,i.numberOfComponents)),(n=i.ranges[t])||(n=s(i.values,e,i.numberOfComponents),i.ranges[t]=n),i.rangeTuple[0]=n.min,i.rangeTuple[1]=n.max,i.rangeTuple},r.setTuple=function(e,t){for(var n=e*i.numberOfComponents,r=0;r<i.numberOfComponents;r++)i.values[n+r]=t[r]},r.getTuple=function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:d,n=i.numberOfComponents||1,r=(t.length!==n&&(t.length=n),e*n);if(1===n)t[0]=i.values[r];else if(2===n)t[0]=i.values[r],t[1]=i.values[1+r];else if(3===n)t[0]=i.values[r],t[1]=i.values[1+r],t[2]=i.values[2+r];else if(4===n)t[0]=i.values[r],t[1]=i.values[1+r],t[2]=i.values[2+r],t[3]=i.values[3+r];else for(var a=0;a<n;a++)t[a]=i.values[r+a];return t},r.getTupleLocation=function(){return(0<arguments.length&&void 0!==arguments[0]?arguments[0]:1)*i.numberOfComponents},r.getNumberOfComponents=function(){return i.numberOfComponents},r.getNumberOfValues=function(){return i.values.length},r.getNumberOfTuples=function(){return i.values.length/i.numberOfComponents},r.getDataType=function(){return i.dataType},r.newClone=function(){return c({empty:!0,name:i.name,dataType:i.dataType,numberOfComponents:i.numberOfComponents})},r.getName=function(){return i.name||(r.modified(),i.name="vtkDataArray"+r.getMTime()),i.name},r.setData=function(e,t){i.values=e,i.size=e.length,i.dataType=u(e),t&&(i.numberOfComponents=t),i.size%i.numberOfComponents!=0&&(i.numberOfComponents=1),a()},r.shallowCopy=function(){return c(Object.assign({},i))},r.getState=function(){var t=Object.assign({},i,{vtkClass:r.getClassName()}),n=(t.values=Array.from(t.values),delete t.buffer,Object.keys(t).forEach(function(e){t[e]||delete t[e]}),{});return Object.keys(t).sort().forEach(function(e){n[e]=t[e]}),n.mtime&&delete n.mtime,n}}var c=e.newInstance=o.default.newInstance(a,"vtkDataArray");e.default=Object.assign({newInstance:c,extend:a},h,n.default)},function(e,t){var n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setMatrixArrayType=function(e){t.ARRAY_TYPE=e},t.toRadian=function(e){return e*a},t.equals=function(e,t){return Math.abs(e-t)<=r*Math.max(1,Math.abs(e),Math.abs(t))};var r=t.EPSILON=1e-6,a=(t.ARRAY_TYPE="undefined"!=typeof Float32Array?Float32Array:Array,t.RANDOM=Math.random,Math.PI/180)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.DataTypeByteSize={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},a=t.VtkDataTypes={VOID:"",CHAR:"Int8Array",SIGNED_CHAR:"Int8Array",UNSIGNED_CHAR:"Uint8Array",SHORT:"Int16Array",UNSIGNED_SHORT:"Uint16Array",INT:"Int32Array",UNSIGNED_INT:"Uint32Array",FLOAT:"Float32Array",DOUBLE:"Float64Array"},i=t.DefaultDataType=a.FLOAT;t.default={DefaultDataType:i,DataTypeByteSize:r,VtkDataTypes:a}},function(e,r,a){"use strict";!function(e){if(r.base64=!0,r.array=!0,r.string=!0,r.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,r.nodebuffer=void 0!==e,r.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)r.blob=!1;else{var t=new ArrayBuffer(0);try{r.blob=0===new Blob([t],{type:"application/zip"}).size}catch(e){try{var n=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder);n.append(t),r.blob=0===n.getBlob("application/zip").size}catch(e){r.blob=!1}}}try{r.nodestream=!!a(73).Readable}catch(e){r.nodestream=!1}}.call(this,a(23).Buffer)},function(e,t,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;t.assign=function(e){for(var t,n,r=Array.prototype.slice.call(arguments,1);r.length;){var a=r.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(var i in a)t=a,n=i,Object.prototype.hasOwnProperty.call(t,n)&&(e[i]=a[i])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var a={arraySet:function(e,t,n,r,a){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),a);else for(var i=0;i<r;i++)e[a+i]=t[n+i]},flattenChunks:function(e){for(var t,n,r,a=0,i=0,o=e.length;i<o;i++)a+=e[i].length;for(r=new Uint8Array(a),i=t=0,o=e.length;i<o;i++)n=e[i],r.set(n,t),t+=n.length;return r}},i={arraySet:function(e,t,n,r,a){for(var i=0;i<r;i++)e[a+i]=t[n+i]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,a)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,i))},t.setTyped(r)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=i(n(0)),a=i(n(201));function i(e){return e&&e.__esModule?e:{default:e}}var s=r.default.vtkErrorMacro,u={vertexShaderHandle:0,fragmentShaderHandle:0,geometryShaderHandle:0,vertexShader:null,fragmentShader:null,geometryShader:null,linked:!1,bound:!1,compiled:!1,error:"",handle:0,numberOfOutputs:0,attributesLocs:null,uniformLocs:null,md5Hash:0,context:null,lastCameraMTime:null};function o(e,t){var i,o;Object.assign(t,u,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),t.attributesLocs={},t.uniformLocs={},t.vertexShader=a.default.newInstance(),t.vertexShader.setShaderType("Vertex"),t.fragmentShader=a.default.newInstance(),t.fragmentShader.setShaderType("Fragment"),t.geometryShader=a.default.newInstance(),t.geometryShader.setShaderType("Geometry"),r.default.obj(e,t),r.default.get(e,t,["lastCameraMTime"]),r.default.setGet(e,t,["error","handle","compiled","bound","md5Hash","vertexShader","fragmentShader","geometryShader","linked"]),i=e,(o=t).classHierarchy.push("vtkShaderProgram"),i.compileShader=function(){return o.vertexShader.compile()?o.fragmentShader.compile()?i.attachShader(o.vertexShader)&&i.attachShader(o.fragmentShader)?i.link()?(i.setCompiled(!0),1):(s("Links failed: "+o.error),0):(s(o.error),0):(s(o.fragmentShader.getSource().split("\n").map(function(e,t){return t+": "+e}).join("\n")),s(o.fragmentShader.getError()),0):(s(o.vertexShader.getSource().split("\n").map(function(e,t){return t+": "+e}).join("\n")),s(o.vertexShader.getError()),0)},i.cleanup=function(){"Unknown"!==o.shaderType&&0!==o.handle&&(o.context.deleteShader(o.handle),o.handle=0)},i.bind=function(){return!(!o.linked&&!o.link()||(o.context.useProgram(o.handle),i.setBound(!0),0))},i.isBound=function(){return!!o.bound},i.release=function(){o.context.useProgram(null),i.setBound(!1)},i.setContext=function(e){o.vertexShader.setContext(e),o.fragmentShader.setContext(e),o.geometryShader.setContext(e)},i.link=function(){return!!o.inked||(0===o.handle?!(o.error="Program has not been initialized, and/or does not have shaders."):(o.uniformLocs={},o.context.linkProgram(o.handle),o.context.getProgramParameter(o.handle,o.context.LINK_STATUS)?(i.setLinked(!0),o.attributeLocs={},!0):(e=o.context.getProgramInfoLog(o.handle),s("Error linking shader "+e),o.handle=0,!1)));var e},i.setUniformMatrix=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniformMatrix4fv(n,!1,t),!0)},i.setUniformMatrix3x3=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniformMatrix3fv(n,!1,t),!0)},i.setUniformf=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform1f(n,t),!0)},i.setUniformfv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform1fv(n,t),!0)},i.setUniformi=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform1i(n,t),!0)},i.setUniformiv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform1iv(n,t),!0)},i.setUniform2f=function(e,t,n){var r=i.findUniform(e);if(-1===r)return o.error="Could not set uniform "+e+" . No such uniform.",!1;if(void 0===n)throw new RangeError("Invalid number of values for array");return o.context.uniform2f(r,t,n),!0},i.setUniform2fv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform2fv(n,t),!0)},i.setUniform2i=function(e,t,n){var r=i.findUniform(e);if(-1===r)return o.error="Could not set uniform "+e+" . No such uniform.",!1;if(void 0===n)throw new RangeError("Invalid number of values for array");return o.context.uniform2i(r,t,n),!0},i.setUniform2iv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform2iv(n,t),!0)},i.setUniform3f=function(e,t,n,r){var a=i.findUniform(e);if(-1===a)return o.error="Could not set uniform "+e+" . No such uniform.",!1;if(void 0===r)throw new RangeError("Invalid number of values for array");return o.context.uniform3f(a,t,n,r),!0},i.setUniform3fArray=function(e,t){var n=i.findUniform(e);if(-1===n)return o.error="Could not set uniform "+e+" . No such uniform.",!1;if(!Array.isArray(t)||3!==t.length)throw new RangeError("Invalid number of values for array");return o.context.uniform3f(n,t[0],t[1],t[2]),!0},i.setUniform3fv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform3fv(n,t),!0)},i.setUniform3i=function(e){for(var t=arguments.length,n=Array(1<t?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var a=i.findUniform(e);if(-1===a)return o.error="Could not set uniform "+e+" . No such uniform.",!1;e=n;if(3!==(e=1===e.length&&Array.isArray(e[0])?e[0]:e).length)throw new RangeError("Invalid number of values for array");return o.context.uniform3i(a,e[0],e[1],e[2]),!0},i.setUniform3iv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform3iv(n,t),!0)},i.setUniform4f=function(e){for(var t=arguments.length,n=Array(1<t?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var a=i.findUniform(e);if(-1===a)return o.error="Could not set uniform "+e+" . No such uniform.",!1;e=n;if(4!==(e=1===e.length&&Array.isArray(e[0])?e[0]:e).length)throw new RangeError("Invalid number of values for array");return o.context.uniform4f(a,e[0],e[1],e[2],e[3]),!0},i.setUniform4fv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform4fv(n,t),!0)},i.setUniform4i=function(e){for(var t=arguments.length,n=Array(1<t?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var a=i.findUniform(e);if(-1===a)return o.error="Could not set uniform "+e+" . No such uniform.",!1;e=n;if(4!==(e=1===e.length&&Array.isArray(e[0])?e[0]:e).length)throw new RangeError("Invalid number of values for array");return o.context.uniform4i(a,e[0],e[1],e[2],e[3]),!0},i.setUniform4iv=function(e,t){var n=i.findUniform(e);return-1===n?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform4iv(n,t),!0)},i.setUniform4fv=function(e,t,n){var r=i.findUniform(e);return-1===r?(o.error="Could not set uniform "+e+" . No such uniform.",!1):(o.context.uniform4fv(r,n),!0)},i.findUniform=function(e){if(!e||!o.linked)return-1;var t=o.uniformLocs[e];return void 0!==t?t:null===(t=o.context.getUniformLocation(o.handle,e))?(o.error="Uniform "+e+" not found in current shader program.",o.uniformLocs[e]=-1):o.uniformLocs[e]=t},i.isUniformUsed=function(e){if(!e)return!1;var t=o.uniformLocs[e];return void 0!==t?null!==t:o.linked?(t=o.context.getUniformLocation(o.handle,e),null!==(o.uniformLocs[e]=t)):(s("attempt to find uniform when the shader program is not linked"),!1)},i.isAttributeUsed=function(e){return!!e&&(-1!==Object.keys(o.attributeLocs).indexOf(e)||(o.linked?-1!==(t=o.context.getAttribLocation(o.handle,e))&&(o.attributeLocs[e]=t,!0):(s("attempt to find uniform when the shader program is not linked"),!1)));var t},i.attachShader=function(e){if(0===e.getHandle())return!(o.error="Shader object was not initialized, cannot attach it.");if("Unknown"===e.getShaderType())return!(o.error="Shader object is of type Unknown and cannot be used.");if(0===o.handle){var t=o.context.createProgram();if(0===t)return!(o.error="Could not create shader program.");o.handle=t,o.linked=!1}return"Vertex"===e.getShaderType()&&(0!==o.vertexShaderHandle&&o.comntext.detachShader(o.handle,o.vertexShaderHandle),o.vertexShaderHandle=e.getHandle()),"Fragment"===e.getShaderType()&&(0!==o.fragmentShaderHandle&&o.context.detachShader(o.handle,o.fragmentShaderHandle),o.fragmentShaderHandle=e.getHandle()),o.context.attachShader(o.handle,e.getHandle()),i.setLinked(!1),!0},i.detachShader=function(e){if(0===e.getHandle())return!(o.error="shader object was not initialized, cannot attach it.");if("Unknown"===e.getShaderType())return!(o.error="Shader object is of type Unknown and cannot be used.");switch(0===o.handle&&(o.errror="This shader prorgram has not been initialized yet."),e.getShaderType()){case"Vertex":return o.vertexShaderHandle!==e.getHandle()?!(o.error="The supplied shader was not attached to this program."):(o.context.detachShader(o.handle,e.getHandle()),o.vertexShaderHandle=0,!(o.linked=!1));case"Fragment":return o.fragmentShaderHandle!==e.getHandle()?!(o.error="The supplied shader was not attached to this program."):(o.context.detachShader(o.handle,e.getHandle()),o.fragmentShaderHandle=0,!(o.linked=!1));default:return!1}},i.setContext=function(e){o.context=e,o.vertexShader.setContext(e),o.fragmentShader.setContext(e),o.geometryShader.setContext(e)},i.setLastCameraMTime=function(e){o.lastCameraMTime=e}}n=r.default.newInstance(o,"vtkShaderProgram");t.default={newInstance:n,extend:o,substitute:function(e,t,n){var r=!(3<arguments.length&&void 0!==arguments[3])||arguments[3],n=Array.isArray(n)?n.join("\n"):n,a=!1,i=(-1!==e.search(t)&&(a=!0),""),r=(r&&(i="g"),new RegExp(t,i));return{replace:a,result:e.replace(r,n)}}}},function(e,c,t){"use strict";var n=t(29),r=Object.keys||function(e){var t,n=[];for(t in e)n.push(t);return n},e=(e.exports=l,Object.create(t(22))),a=(e.inherits=t(15),t(72)),i=t(41);e.inherits(l,a);for(var o=r(i.prototype),s=0;s<o.length;s++){var u=o[s];l.prototype[u]||(l.prototype[u]=i.prototype[u])}function l(e){if(!(this instanceof l))return new l(e);a.call(this,e),i.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",f)}function f(){this.allowHalfOpen||this._writableState.ended||n.nextTick(d,this)}function d(e){e.end()}Object.defineProperty(l.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(l.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&this._readableState.destroyed&&this._writableState.destroyed},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),l.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){var n;t&&(e.super_=t,(n=function(){}).prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e)}},function(o,a,e){"use strict";for(var u=e(1),l=e(11),c=e(27),t=e(5),f=new Array(256),n=0;n<256;n++)f[n]=252<=n?6:248<=n?5:240<=n?4:224<=n?3:192<=n?2:1;function r(){t.call(this,"utf-8 decode"),this.leftOver=null}function i(){t.call(this,"utf-8 encode")}f[254]=f[254]=1,a.utf8encode=function(e){if(l.nodebuffer)return c.newBuffer(e,"utf-8");for(var t,n,r,a,i=e,o=i.length,s=0,u=0;u<o;u++)55296==(64512&(n=i.charCodeAt(u)))&&u+1<o&&56320==(64512&(r=i.charCodeAt(u+1)))&&(n=65536+(n-55296<<10)+(r-56320),u++),s+=n<128?1:n<2048?2:n<65536?3:4;for(t=new(l.uint8array?Uint8Array:Array)(s),u=a=0;a<s;u++)55296==(64512&(n=i.charCodeAt(u)))&&u+1<o&&56320==(64512&(r=i.charCodeAt(u+1)))&&(n=65536+(n-55296<<10)+(r-56320),u++),n<128?t[a++]=n:(n<2048?t[a++]=192|n>>>6:(n<65536?t[a++]=224|n>>>12:(t[a++]=240|n>>>18,t[a++]=128|n>>>12&63),t[a++]=128|n>>>6&63),t[a++]=128|63&n);return t},a.utf8decode=function(e){if(l.nodebuffer)return u.transformTo("nodebuffer",e).toString("utf-8");for(var t,n,r=e=u.transformTo(l.uint8array?"uint8array":"array",e),a=r.length,i=new Array(2*a),o=0,s=0;s<a;)if((t=r[s++])<128)i[o++]=t;else if(4<(n=f[t]))i[o++]=65533,s+=n-1;else{for(t&=2===n?31:3===n?15:7;1<n&&s<a;)t=t<<6|63&r[s++],n--;1<n?i[o++]=65533:t<65536?i[o++]=t:(t-=65536,i[o++]=55296|t>>10&1023,i[o++]=56320|1023&t)}return i.length!==o&&(i.subarray?i=i.subarray(0,o):i.length=o),u.applyFromCharCode(i)},u.inherits(r,t),r.prototype.processChunk=function(e){var t=u.transformTo(l.uint8array?"uint8array":"array",e.data),n=(this.leftOver&&this.leftOver.length&&(l.uint8array?(n=t,(t=new Uint8Array(n.length+this.leftOver.length)).set(this.leftOver,0),t.set(n,this.leftOver.length)):t=this.leftOver.concat(t),this.leftOver=null),function(e,t){for(var n=(t=(t=t||e.length)>e.length?e.length:t)-1;0<=n&&128==(192&e[n]);)n--;return!(n<0)&&0!==n&&n+f[e[n]]>t?n:t}(t)),r=t;n!==t.length&&(l.uint8array?(r=t.subarray(0,n),this.leftOver=t.subarray(n,t.length)):(r=t.slice(0,n),this.leftOver=t.slice(n,t.length))),this.push({data:a.utf8decode(r),meta:e.meta})},r.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:a.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},a.Utf8DecodeWorker=r,u.inherits(i,t),i.prototype.processChunk=function(e){this.push({data:a.utf8encode(e.data),meta:e.meta})},a.Utf8EncodeWorker=i},function(t,e){!function(e){t.exports=e}.call(this,{})},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(s,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=h;var p=a(t(233)),n=a(t(35)),r=a(t(0)),u=a(t(7)),C=a(t(2)),l=a(t(4)),A=a(t(222));function a(e){return e&&e.__esModule?e:{default:e}}var i=n.default.Wrap,o=n.default.Filter,O=u.default.VtkDataTypes,c=r.default.vtkDebugMacro,S=r.default.vtkErrorMacro,f=r.default.vtkWarningMacro,d={openGLRenderWindow:null,context:null,handle:0,sendParametersTime:null,textureBuildTime:null,numberOfDimensions:0,target:0,format:0,openGLDataType:0,components:0,width:0,height:0,depth:0,autoParameters:!0,wrapS:i.CLAMP_TO_EDGE,wrapT:i.CLAMP_TO_EDGE,wrapR:i.CLAMP_TO_EDGE,minificationFilter:o.NEAREST,magnificationFilter:o.NEAREST,minLOD:-1e3,maxLOD:1e3,baseLevel:0,maxLevel:0,generateMipmap:!1,computedGradients:!1};function h(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,d,n),l.default.extend(e,t,n),t.sendParametersTime={},r.default.obj(t.sendParametersTime,{mtime:0}),t.textureBuildTime={},r.default.obj(t.textureBuildTime,{mtime:0}),t.gradientsBuildTime={},r.default.obj(t.gradientsBuildTime,{mtime:0}),r.default.set(e,t,["format","openGLDataType"]),r.default.setGet(e,t,["keyMatrixTime","minificationFilter","magnificationFilter","wrapS","wrapT","wrapR","generateMipmap"]),r.default.get(e,t,["width","height","volumeInfo","components","handle","target","computedGradients","gradientsBuildTime"]),function(I,L){var r=this;function d(e,t){var n=[];if(e!==O.FLOAT&&L.openGLDataType===L.context.FLOAT)for(var r=L.width*L.height*L.components,a=0;a<t.length;a++){for(var i=new Float32Array(r),o=0;o<r;o++)i[o]=t[a][o];n.push(i)}if(e!==O.UNSIGNED_CHAR&&L.openGLDataType===L.context.UNSIGNED_BYTE)for(var c=L.width*L.height*L.components,s=0;s<t.length;s++){for(var f=new Uint8Array(c),u=0;u<c;u++)f[u]=t[s][u];n.push(f)}if(0===n.length)for(var l=0;l<t.length;l++)n.push(t[l]);return n}function h(e){if(L.openGLRenderWindow.getWebgl2())return e;var t=[],n=L.width,r=L.height,a=L.components;if(e&&(!C.default.isPowerOfTwo(n)||!C.default.isPowerOfTwo(r)))for(var i=C.default.nearestPowerOfTwo(n),c=C.default.nearestPowerOfTwo(r),f=i*c*L.components,o=0;o<e.length;o++)if(null!==e[o]){var d=null;switch(L.openGLDataType){case L.context.FLOAT:d=new Float32Array(f);break;default:case L.context.UNSIGNED_BYTE:d=new Uint8Array(f)}for(var h=r/c,g=n/i,p=0;p<c;p++)for(var M=p*i*a,m=p*h,v=m-(y=Math.floor(m)),A=1-v,y=y*n*a,s=(s=r<=(s=Math.ceil(m))?r-1:s)*n*a,T=0;T<i;T++){var w=T*a,b=T*g,D=Math.floor(b),u=Math.ceil(b),x=(n<=u&&(u=n-1),b-D);D*=a,u*=a;for(var l=0;l<a;l++)d[M+w+l]=e[o][y+D+l]*A*(1-x)+e[o][y+u+l]*A*x+e[o][s+D+l]*v*(1-x)+e[o][s+u+l]*v*x}t.push(d),L.width=i,L.height=c}else t.push(null);if(0===t.length)for(var N=0;N<e.length;N++)t.push(e[N]);return t}L.classHierarchy.push("vtkOpenGLTexture"),I.render=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:null;if(e?L.openGLRenderWindow=e:(L.openGLRenderer=I.getFirstAncestorOfType("vtkOpenGLRenderer"),L.openGLRenderWindow=L.openGLRenderer.getParent()),L.context=L.openGLRenderWindow.getContext(),L.renderable.getInterpolate()?(L.generateMipmap?I.setMinificationFilter(o.LINEAR_MIPMAP_LINEAR):I.setMinificationFilter(o.LINEAR),I.setMagnificationFilter(o.LINEAR)):(I.setMinificationFilter(o.NEAREST),I.setMagnificationFilter(o.NEAREST)),L.renderable.getRepeat()&&(I.setWrapR(i.REPEAT),I.setWrapS(i.REPEAT),I.setWrapT(i.REPEAT)),L.renderable.getInputData()&&L.renderable.setImage(null),!L.handle||L.renderable.getMTime()>L.textureBuildTime.getMTime()){null!==L.renderable.getImage()&&(L.renderable.getInterpolate()&&(L.generateMipmap=!0,I.setMinificationFilter(o.LINEAR_MIPMAP_LINEAR)),L.renderable.getImage()&&L.renderable.getImageLoaded()&&(I.create2DFromImage(L.renderable.getImage()),I.activate(),I.sendParameters(),L.textureBuildTime.modified()));e=L.renderable.getInputData(0);if(e&&e.getPointData().getScalars()){for(var t=e.getExtent(),e=e.getPointData().getScalars(),n=[],r=0;r<6;++r){var a=L.renderable.getInputData(r),a=a?a.getPointData().getScalars().getData():null;a&&n.push(a)}6===n.length?I.createCubeFromRaw(t[1]-t[0]+1,t[3]-t[2]+1,e.getNumberOfComponents(),e.getDataType(),n):(L.renderable.getInterpolate()&&4===e.getNumberOfComponents()&&(L.generateMipmap=!0,I.setMinificationFilter(o.LINEAR_MIPMAP_LINEAR)),I.create2DFromRaw(t[1]-t[0]+1,t[3]-t[2]+1,e.getNumberOfComponents(),e.getDataType(),e.getData())),I.activate(),I.sendParameters(),L.textureBuildTime.modified()}}L.handle&&I.activate()},I.destroyTexture=function(){I.deactivate(),L.context&&L.handle&&L.context.deleteTexture(L.handle),L.handle=0,L.numberOfDimensions=0,L.target=0,L.components=0,L.width=0,L.height=0,L.depth=0,I.resetFormatAndType()},I.createTexture=function(){L.handle||(L.handle=L.context.createTexture(),L.target&&(L.context.bindTexture(L.target,L.handle),L.context.texParameteri(L.target,L.context.TEXTURE_MIN_FILTER,I.getOpenGLFilterMode(L.minificationFilter)),L.context.texParameteri(L.target,L.context.TEXTURE_MAG_FILTER,I.getOpenGLFilterMode(L.magnificationFilter)),L.context.texParameteri(L.target,L.context.TEXTURE_WRAP_S,I.getOpenGLWrapMode(L.wrapS)),L.context.texParameteri(L.target,L.context.TEXTURE_WRAP_T,I.getOpenGLWrapMode(L.wrapT)),L.context.bindTexture(L.target,null)))},I.getTextureUnit=function(){return L.openGLRenderWindow?L.openGLRenderWindow.getTextureUnitForTexture(I):-1},I.activate=function(){L.openGLRenderWindow.activateTexture(I),I.bind()},I.deactivate=function(){L.openGLRenderWindow&&L.openGLRenderWindow.deactivateTexture(I)},I.releaseGraphicsResources=function(e){e&&L.handle&&(e.activateTexture(I),e.deactivateTexture(I),L.context.deleteTexture(L.handle),L.handle=0,L.numberOfDimensions=0,L.target=0,L.internalFormat=0,L.format=0,L.openGLDataType=0,L.components=0,L.width=0,L.height=0,L.depth=0),L.shaderProgram&&(L.shaderProgram.releaseGraphicsResources(e),L.shaderProgram=null)},I.bind=function(){L.context.bindTexture(L.target,L.handle),L.autoParameters&&I.getMTime()>L.sendParametersTime.getMTime()&&I.sendParameters()},I.isBound=function(){var e,t=!1;return L.context&&L.handle&&(e=0,L.target===L.context.TEXTURE_2D?e=L.context.TEXTURE_BINDING_2D:f("impossible case"),t=L.context.getIntegerv(e)===L.handle),t},I.sendParameters=function(){L.context.texParameteri(L.target,L.context.TEXTURE_WRAP_S,I.getOpenGLWrapMode(L.wrapS)),L.context.texParameteri(L.target,L.context.TEXTURE_WRAP_T,I.getOpenGLWrapMode(L.wrapT)),L.openGLRenderWindow.getWebgl2()&&L.context.texParameteri(L.target,L.context.TEXTURE_WRAP_R,I.getOpenGLWrapMode(L.wrapR)),L.context.texParameteri(L.target,L.context.TEXTURE_MIN_FILTER,I.getOpenGLFilterMode(L.minificationFilter)),L.context.texParameteri(L.target,L.context.TEXTURE_MAG_FILTER,I.getOpenGLFilterMode(L.magnificationFilter)),L.sendParametersTime.modified()},I.getInternalFormat=function(e,t){return L.internalFormat||(L.internalFormat=I.getDefaultInternalFormat(e,t),L.internalFormat||c("Unable to find suitable internal format for T="+e+" NC= "+t),L.internalFormat)},I.getDefaultInternalFormat=function(e,t){var n=0;return(n=L.openGLRenderWindow.getDefaultTextureInternalFormat(e,t,!1))||(n=r.openGLRenderWindow.getDefaultTextureInternalFormat(e,t,!0))||(c("Unsupported internal texture type!"),c("Unable to find suitable internal format for T="+e+" NC= "+t)),n},I.setInternalFormat=function(e){e!==L.context.InternalFormat&&(L.internalFormat=e,I.modified())},I.getFormat=function(e,t){return L.format||(L.format=I.getDefaultFormat(e,t)),L.format},I.getDefaultFormat=function(e,t){if(L.openGLRenderWindow.getWebgl2())switch(t){case 1:return L.context.RED;case 2:return L.context.RG;case 3:return L.context.RGB;case 4:return L.context.RGBA;default:return L.context.RGB}else switch(t){case 1:return L.context.LUMINANCE;case 2:return L.context.LUMINANCE_ALPHA;case 3:return L.context.RGB;case 4:return L.context.RGBA;default:return L.context.RGB}},I.resetFormatAndType=function(){L.format=0,L.internalFormat=0,L.openGLDataType=0},I.getDefaultDataType=function(e){if(L.openGLRenderWindow.getWebgl2())switch(e){case O.UNSIGNED_CHAR:return L.context.UNSIGNED_BYTE;case O.FLOAT:case O.VOID:default:return L.context.FLOAT}switch(e){case O.UNSIGNED_CHAR:return L.context.UNSIGNED_BYTE;case O.FLOAT:case O.VOID:default:return L.context.getExtension("OES_texture_float")&&L.context.getExtension("OES_texture_float_linear")?L.context.FLOAT:L.context.UNSIGNED_BYTE}},I.getOpenGLDataType=function(e){return L.openGLDataType||(L.openGLDataType=I.getDefaultDataType(e)),L.openGLDataType},I.getShiftAndScale=function(){var e=0,t=1;switch(L.openGLDataType){case L.context.BYTE:e=(t=127.5)-128;break;case L.context.UNSIGNED_BYTE:t=255,e=0;break;case L.context.SHORT:e=(t=32767.5)-32768;break;case L.context.UNSIGNED_SHORT:t=65536,e=0;break;case L.context.INT:e=(t=2147483647.5)-2147483648;break;case L.context.UNSIGNED_INT:t=4294967295,e=0;break;case L.context.FLOAT:}return{shift:e,scale:t}},I.getOpenGLFilterMode=function(e){switch(e){case o.NEAREST:return L.context.NEAREST;case o.LINEAR:return L.context.LINEAR;case o.NEAREST_MIPMAP_NEAREST:return L.context.NEAREST_MIPMAP_NEAREST;case o.NEAREST_MIPMAP_LINEAR:return L.context.NEAREST_MIPMAP_LINEAR;case o.LINEAR_MIPMAP_NEAREST:return L.context.LINEAR_MIPMAP_NEAREST;case o.LINEAR_MIPMAP_LINEAR:return L.context.LINEAR_MIPMAP_LINEAR;default:return L.context.NEAREST}},I.getOpenGLWrapMode=function(e){switch(e){case i.CLAMP_TO_EDGE:return L.context.CLAMP_TO_EDGE;case i.REPEAT:return L.context.REPEAT;case i.MIRRORED_REPEAT:return L.context.MIRRORED_REPEAT;default:return L.context.CLAMP_TO_EDGE}},I.create2DFromRaw=function(e,t,n,r,a){if(I.getOpenGLDataType(r),I.getInternalFormat(r,n),I.getFormat(r,n),!L.internalFormat||!L.format||!L.openGLDataType)return S("Failed to determine texture parameters."),!1;L.target=L.context.TEXTURE_2D,L.components=n,L.width=e,L.height=t,L.depth=1,L.numberOfDimensions=2,L.openGLRenderWindow.activateTexture(I),I.createTexture(),I.bind();n=h(d(r,[a]));return L.context.pixelStorei(L.context.UNPACK_ALIGNMENT,1),L.context.texImage2D(L.target,0,L.internalFormat,L.width,L.height,0,L.format,L.openGLDataType,n[0]),L.generateMipmap&&L.context.generateMipmap(L.target),I.deactivate(),!0},I.createCubeFromRaw=function(e,t,n,r,c){if(I.getOpenGLDataType(r),I.getInternalFormat(r,n),I.getFormat(r,n),!L.internalFormat||!L.format||!L.openGLDataType)return S("Failed to determine texture parameters."),!1;L.target=L.context.TEXTURE_CUBE_MAP,L.components=n,L.width=e,L.height=t,L.depth=1,L.numberOfDimensions=2,L.openGLRenderWindow.activateTexture(I),I.createTexture(),I.bind();for(var a=h(d(r,c)),i=[],o=0;o<a.length;o++){i[o]=new window[r](L.height*L.width*L.components);for(var s=0;s<L.height;++s){var f=s*L.width*L.components,u=(L.height-s-1)*L.width*L.components;i[o].set(a[o].slice(u,u+L.width*L.components),f)}}L.context.pixelStorei(L.context.UNPACK_ALIGNMENT,1);for(var l=0;l<6;l++)i[l]&&L.context.texImage2D(L.context.TEXTURE_CUBE_MAP_POSITIVE_X+l,0,L.internalFormat,L.width,L.height,0,L.format,L.openGLDataType,i[l]);return I.deactivate(),!0},I.createDepthFromRaw=function(e,t,n,r){return I.getOpenGLDataType(n),L.format=L.context.DEPTH_COMPONENT,L.internalFormat=L.context.DEPTH_COMPONENT,L.internalFormat&&L.format&&L.openGLDataType?(L.target=L.context.TEXTURE_2D,L.components=1,L.width=e,L.height=t,L.depth=1,L.numberOfDimensions=2,L.openGLRenderWindow.activateTexture(I),I.createTexture(),I.bind(),L.context.pixelStorei(L.context.UNPACK_ALIGNMENT,1),L.context.texImage2D(L.target,0,L.internalFormat,L.width,L.height,0,L.format,L.openGLDataType,r),L.generateMipmap&&L.context.generateMipmap(L.target),I.deactivate(),!0):(S("Failed to determine texture parameters."),!1)},I.create2DFromImage=function(e){if(I.getOpenGLDataType(O.UNSIGNED_CHAR),I.getInternalFormat(O.UNSIGNED_CHAR,4),I.getFormat(O.UNSIGNED_CHAR,4),!L.internalFormat||!L.format||!L.openGLDataType)return S("Failed to determine texture parameters."),!1;L.target=L.context.TEXTURE_2D,L.components=4,L.width=e.width,L.height=e.height,L.depth=1,L.numberOfDimensions=2,L.openGLRenderWindow.activateTexture(I),I.createTexture(),I.bind(),L.context.pixelStorei(L.context.UNPACK_ALIGNMENT,1);var t=!C.default.isPowerOfTwo(e.width)||!C.default.isPowerOfTwo(e.height),n=document.createElement("canvas"),t=(n.width=t?C.default.nearestPowerOfTwo(e.width):e.width,n.height=t?C.default.nearestPowerOfTwo(e.height):e.height,n.getContext("2d"));return t.translate(0,n.height),t.scale(1,-1),t.drawImage(e,0,0,e.width,e.height,0,0,n.width,n.height),L.context.texImage2D(L.target,0,L.internalFormat,L.format,L.openGLDataType,n),L.generateMipmap&&L.context.generateMipmap(L.target),I.deactivate(),!0},I.create3DFromRaw=function(e,t,n,r,a,i){return I.getOpenGLDataType(a),I.getInternalFormat(a,r),I.getFormat(a,r),L.internalFormat&&L.format&&L.openGLDataType?(L.target=L.context.TEXTURE_3D,L.components=r,L.width=e,L.height=t,L.depth=n,L.numberOfDimensions=3,L.openGLRenderWindow.activateTexture(I),I.createTexture(),I.bind(),L.context.texImage3D(L.target,0,L.internalFormat,L.width,L.height,L.depth,0,L.format,L.openGLDataType,i),L.generateMipmap&&L.context.generateMipmap(L.target),I.deactivate(),!0):(S("Failed to determine texture parameters."),!1)},I.create3DOneComponentFromRaw=function(e,t,n,r,a){var c=e*t*n,i=C.default.arrayMin(a),o=C.default.arrayMax(a),f=(L.volumeInfo={min:i,max:o=i===o?i+1:o,width:e,height:t,depth:n},function(e,t,n,r,a){e[t]=n}),s=O.UNSIGNED_CHAR,u=1,d=!1;if(r===O.UNSIGNED_CHAR?(L.volumeInfo.min=0,L.volumeInfo.max=255):f=L.openGLRenderWindow.getWebgl2()||L.context.getExtension("OES_texture_float")&&L.context.getExtension("OES_texture_float_linear")?(s=O.FLOAT,function(e,t,n,r,a){e[t]=(n-r)/(a-r)}):(d=!0,s=O.UNSIGNED_CHAR,u=4,function(e,t,n,r,a){n=(n-r)/(a-r),a=Math.floor(255*n),n=255*n-a,e[t]=a,r=Math.floor(255*n),n=255*n-r,e[t+1]=r,a=Math.floor(255*n);e[t+2]=a}),L.openGLRenderWindow.getWebgl2()){if(r===O.UNSIGNED_CHAR)return I.create3DFromRaw(e,t,n,1,r,a);for(var h=new Float32Array(c),g=0;g<c;++g)h[g]=(a[g]-i)/(o-i);return I.create3DFromRaw(e,t,n,1,O.FLOAT,h)}if(I.getOpenGLDataType(s),I.getInternalFormat(s,u),I.getFormat(s,u),!L.internalFormat||!L.format||!L.openGLDataType)return S("Failed to determine texture parameters."),!1;L.target=L.context.TEXTURE_2D,L.components=u,L.depth=1,L.numberOfDimensions=2;for(var r=L.context.getParameter(L.context.MAX_TEXTURE_SIZE),l=1,p=1,r=((r=4096<r&&(s===O.FLOAT||4===u)?4096:r)*r<c&&(p=l=Math.ceil(Math.sqrt(c/(r*r)))),Math.sqrt(c)/l),r=C.default.nearestPowerOfTwo(r),M=Math.floor(r*l/e),m=Math.ceil(n/M),v=C.default.nearestPowerOfTwo(t*m/p),d=(L.width=r,L.height=v,L.openGLRenderWindow.activateTexture(I),I.createTexture(),I.bind(),L.volumeInfo={encodedScalars:d,min:i,max:o,width:e,height:t,depth:n,xreps:M,yreps:m,xstride:l,ystride:p},r*v*u),A=new(s===O.FLOAT?Float32Array:Uint8Array)(d),y=0,T=0;T<m;T++)for(var w=Math.min(M,n-T*M),b=L.width-w*Math.floor(e/l),D=0;D<t;D+=p){for(var x=0;x<w;x++)for(var N=(T*M+x)*e*t+D*e,E=0;E<e;E+=l)f(A,y,a[N+E],i,o),y+=u;y+=b*u}return L.context.pixelStorei(L.context.UNPACK_ALIGNMENT,1),L.context.texImage2D(L.target,0,L.internalFormat,L.width,L.height,0,L.format,L.openGLDataType,A),I.deactivate(),!0},I.create3DLighting=function(e,t,s){L.computedGradients=!1;var M=e.getVolumeInfo(),m=M.width,v=M.height,n=M.depth,r=L.openGLRenderWindow.getWebgl2(),i=void 0;if(r)i=function(e){var l=new Uint8Array(m*v*n*4),c=L.volumeInfo.max;return e.forEach(function(e){for(var t=e.subGradients,n=e.subMagnitudes,r=(e.subMinMag,e.subMaxMag,e.subDepthStart),e=e.subDepthEnd,a=0,i=0,o=r*m*v*4,s=m*v*(e-r+1),u=0;u<s;++u)l[o++]=t[a++],l[o++]=t[a++],l[o++]=t[a++],l[o++]=255*Math.sqrt(n[i++]/c)}),I.create3DFromRaw(m,v,n,4,O.UNSIGNED_CHAR,l)};else{if(I.getOpenGLDataType(O.UNSIGNED_CHAR),I.getInternalFormat(O.UNSIGNED_CHAR,4),I.getFormat(O.UNSIGNED_CHAR,4),!L.internalFormat||!L.format||!L.openGLDataType)return void S("Failed to determine texture parameters.");L.target=L.context.TEXTURE_2D,L.components=4,L.depth=1,L.numberOfDimensions=2,L.width=e.getWidth(),L.height=e.getHeight(),i=function(e){var g=new Uint8Array(L.width*L.height*4),p=L.volumeInfo.max;return e.forEach(function(e){for(var t=e.subGradients,c=e.subMagnitudes,n=(e.subMinMag,e.subMaxMag,e.subDepthStart),f=e.subDepthEnd,r=n;r<=f;++r){var a=Math.floor(r/M.xreps),i=r-a*M.xreps;i*=Math.floor(m/M.xstride);for(var d=a*=Math.floor(v/M.ystride),o=0;o<v;o+=M.ystride,d++)for(var s=4*(d*L.width+i),u=((r-n)*v+o)*m,l=3*u,h=0;h<m;h+=M.xstride)g[s++]=t[l],g[s++]=t[l+1],g[s++]=t[l+2],g[s++]=255*Math.sqrt(c[u]/p),u+=M.xstride,l+=3*M.xstride}}),L.openGLRenderWindow.activateTexture(I),I.createTexture(),I.bind(),L.context.pixelStorei(L.context.UNPACK_ALIGNMENT,1),L.context.texImage2D(L.target,0,L.internalFormat,L.width,L.height,0,L.format,L.openGLDataType,g),I.deactivate(),!0}}for(var u=Math.ceil(n/4),l=[],c=[],a=0;a<n-1;){var f=new A.default,d=new p.default(f),h=a,o=a+u,o=Math.min(o,n-1),g=new t.constructor(t.slice(h*m*v,(o+1)*m*v));c.push(f),l.push(d.postMessage({width:m,height:v,depth:n,spacing:s,data:g,haveWebgl2:r,depthStart:h,depthEnd:o},[g.buffer])),a+=u}Promise.all(l).then(function(e){c.forEach(function(e){return e.terminate()});var r=1/0,a=-1/0;return e.forEach(function(e){e.subGradients,e.subMagnitudes;var t=e.subMinMag,n=e.subMaxMag;e.subDepthStart,e.subDepthEnd,r=Math.min(t,r),a=Math.max(n,a)}),L.volumeInfo={min:r,max:a},L.computedGradients=i(e),L.computedGradients&&L.gradientsBuildTime.modified(),L.computedGradients})},I.setOpenGLRenderWindow=function(e){L.openGLRenderWindow!==e&&(I.releaseGraphicsResources(),L.openGLRenderWindow=e,L.context=null,e&&(L.context=L.openGLRenderWindow.getContext()))},I.getMaximumTextureSize=function(e){return e&&e.isCurrent()?e.getIntegerv(e.MAX_TEXTURE_SIZE):-1}}(e,t)}t=e.newInstance=r.default.newInstance(h,"vtkOpenGLTexture");e.default=Object.assign({newInstance:t,extend:h},n.default)},function(e,t,n){"use strict";!function(r){Object.defineProperty(t,"__esModule",{value:!0});var a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=(t.default=o,{vtkObject:function(){return null}});function o(e){if(null==e)return e;if(e.isA)return e;if(!e.vtkClass)return r.console&&r.console.error&&r.console.error("Invalid VTK object"),null;var t=i[e.vtkClass];if(!t)return r.console&&r.console.error&&r.console.error("No vtk class found for Object of type "+e.vtkClass),null;var n=Object.assign({},e),e=(Object.keys(n).forEach(function(e){n[e]&&"object"===a(n[e])&&n[e].vtkClass&&(n[e]=o(n[e]))}),t(n));return e&&e.modified&&e.modified(),e}o.register=function(e,t){i[e]=t}}.call(this,n(8))},function(e,t,n){"use strict";n="undefined"!=typeof Promise?Promise:n(120);e.exports={Promise:n}},function(e,t,n){function r(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===r(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===r(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===r(e)},t.isError=function(e){return"[object Error]"===r(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(23).Buffer.isBuffer},function(e,O,t){"use strict";!function(e){var D=t(81),i=t(146),c=t(74);function n(){return f.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function u(e,t){if(n()<t)throw new RangeError("Invalid typed array length");return f.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=f.prototype:(e=null===e?new f(t):e).length=t,e}function f(e,t,n){if(!(f.TYPED_ARRAY_SUPPORT||this instanceof f))return new f(e,t,n);if("number"!=typeof e)return d(this,e,t,n);if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return g(this,e)}function d(e,t,n,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');if("undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer){var a=e,i=t,o=n;if(i.byteLength,o<0||i.byteLength<o)throw new RangeError("'offset' is out of bounds");if(i.byteLength<o+(r||0))throw new RangeError("'length' is out of bounds");return i=void 0===o&&void 0===r?new Uint8Array(i):void 0===r?new Uint8Array(i,o):new Uint8Array(i,o,r),f.TYPED_ARRAY_SUPPORT?(a=i).__proto__=f.prototype:a=p(a,i),a}if("string"==typeof t){o=e,r=t,i=n;if(!f.isEncoding(i="string"==typeof i&&""!==i?i:"utf8"))throw new TypeError('"encoding" must be a valid string encoding');a=0|m(r,i);return o=(r=(o=u(o,a)).write(r,i))!==a?o.slice(0,r):o}var s,n=e,r=t;if(f.isBuffer(r))return 0===(n=u(n,s=0|M(r.length))).length||r.copy(n,0,0,s),n;if(r){if("undefined"!=typeof ArrayBuffer&&r.buffer instanceof ArrayBuffer||"length"in r)return"number"!=typeof r.length||(s=r.length)!=s?u(n,0):p(n,r);if("Buffer"===r.type&&c(r.data))return p(n,r.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function h(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function g(e,t){if(h(t),e=u(e,t<0?0:0|M(t)),!f.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function p(e,t){var n=t.length<0?0:0|M(t.length);e=u(e,n);for(var r=0;r<n;r+=1)e[r]=255&t[r];return e}function M(e){if(e>=n())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+n().toString(16)+" bytes");return 0|e}function m(e,t){if(f.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;var n=(e="string"!=typeof e?""+e:e).length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return v(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return L(e).length;default:if(r)return v(e).length;t=(""+t).toLowerCase(),r=!0}}function r(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function A(e,t,n,r,a){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):2147483647<n?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,(n=(n=isNaN(n)?a?0:e.length-1:n)<0?e.length+n:n)>=e.length){if(a)return-1;n=e.length-1}else if(n<0){if(!a)return-1;n=0}if("string"==typeof t&&(t=f.from(t,r)),f.isBuffer(t))return 0===t.length?-1:y(e,t,n,r,a);if("number"==typeof t)return t&=255,f.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?(a?Uint8Array.prototype.indexOf:Uint8Array.prototype.lastIndexOf).call(e,t,n):y(e,[t],n,r,a);throw new TypeError("val must be string, number or Buffer")}function y(e,t,n,r,c){var a=1,i=e.length,o=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;i/=a=2,o/=2,n/=2}function s(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(c)for(var u=-1,l=n;l<i;l++)if(s(e,l)===s(t,-1===u?0:l-u)){if(l-(u=-1===u?l:u)+1===o)return u*a}else-1!==u&&(l-=l-u),u=-1;else for(l=n=i<n+o?i-o:n;0<=l;l--){for(var f=!0,d=0;d<o;d++)if(s(e,l+d)!==s(t,d)){f=!1;break}if(f)return l}return-1}function T(e,t,n,r){return C(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function x(e,c,t){t=Math.min(e.length,t);for(var n=[],r=c;r<t;){var a,i,f,o,s=e[r],u=null,l=239<s?4:223<s?3:191<s?2:1;if(r+l<=t)switch(l){case 1:s<128&&(u=s);break;case 2:128==(192&(a=e[r+1]))&&127<(o=(31&s)<<6|63&a)&&(u=o);break;case 3:a=e[r+1],i=e[r+2],128==(192&a)&&128==(192&i)&&2047<(o=(15&s)<<12|(63&a)<<6|63&i)&&(o<55296||57343<o)&&(u=o);break;case 4:a=e[r+1],i=e[r+2],f=e[r+3],128==(192&a)&&128==(192&i)&&128==(192&f)&&65535<(o=(15&s)<<18|(63&a)<<12|(63&i)<<6|63&f)&&o<1114112&&(u=o)}null===u?(u=65533,l=1):65535<u&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),r+=l}var d=n,h=d.length;if(h<=w)return String.fromCharCode.apply(String,d);for(var g="",p=0;p<h;)g+=String.fromCharCode.apply(String,d.slice(p,p+=w));return g}O.Buffer=f,O.SlowBuffer=function(e){return f.alloc(+(e=+e!=e?0:e))},O.INSPECT_MAX_BYTES=50,f.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),O.kMaxLength=n(),f.poolSize=8192,f._augment=function(e){return e.__proto__=f.prototype,e},f.from=function(e,t,n){return d(null,e,t,n)},f.TYPED_ARRAY_SUPPORT&&(f.prototype.__proto__=Uint8Array.prototype,f.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&f[Symbol.species]===f&&Object.defineProperty(f,Symbol.species,{value:null,configurable:!0})),f.alloc=function(e,t,n){return t=t,n=n,h(e=e),!(e<=0)&&void 0!==t?"string"==typeof n?u(null,e).fill(t,n):u(null,e).fill(t):u(null,e)},f.allocUnsafe=function(e){return g(null,e)},f.allocUnsafeSlow=function(e){return g(null,e)},f.isBuffer=function(e){return!(null==e||!e._isBuffer)},f.compare=function(e,t){if(!f.isBuffer(e)||!f.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,a=0,i=Math.min(n,r);a<i;++a)if(e[a]!==t[a]){n=e[a],r=t[a];break}return n<r?-1:r<n?1:0},f.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},f.concat=function(e,t){if(!c(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return f.alloc(0);if(void 0===t)for(a=t=0;a<e.length;++a)t+=e[a].length;for(var n=f.allocUnsafe(t),r=0,a=0;a<e.length;++a){var i=e[a];if(!f.isBuffer(i))throw new TypeError('"list" argument must be an Array of Buffers');i.copy(n,r),r+=i.length}return n},f.byteLength=m,f.prototype._isBuffer=!0,f.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)r(this,t,t+1);return this},f.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)r(this,t,t+3),r(this,t+1,t+2);return this},f.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)r(this,t,t+7),r(this,t+1,t+6),r(this,t+2,t+5),r(this,t+3,t+4);return this},f.prototype.toString=function(){var e=0|this.length;return 0==e?"":0===arguments.length?x(this,0,e):function(e,t,n){var r,c=!1;if((t=void 0===t||t<0?0:t)>this.length)return"";if((n=void 0===n||n>this.length?this.length:n)<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e=e||"utf8";;)switch(e){case"hex":var f=this,a=t,i=n,o=f.length;(!i||i<0||o<i)&&(i=o);for(var d="",s=a=!a||a<0?0:a;s<i;++s)d+=function(e){return e<16?"0"+e.toString(16):e.toString(16)}(f[s]);return d;case"utf8":case"utf-8":return x(this,t,n);case"ascii":var h=this,o=t,g=n,p="";g=Math.min(h.length,g);for(var M=o;M<g;++M)p+=String.fromCharCode(127&h[M]);return p;case"latin1":case"binary":var m=this,a=t,v=n,A="";v=Math.min(m.length,v);for(var y=a;y<v;++y)A+=String.fromCharCode(m[y]);return A;case"base64":return u=this,r=n,0===(T=t)&&r===u.length?D.fromByteArray(u):D.fromByteArray(u.slice(T,r));case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":for(var u=t,T=n,w=this.slice(u,T),b="",l=0;l<w.length;l+=2)b+=String.fromCharCode(w[l]+256*w[l+1]);return b;default:if(c)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),c=!0}}.apply(this,arguments)},f.prototype.equals=function(e){if(!f.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===f.compare(this,e)},f.prototype.inspect=function(){var e="",t=O.INSPECT_MAX_BYTES;return 0<this.length&&(e=this.toString("hex",0,t).match(/.{2}/g).join(" "),this.length>t&&(e+=" ... ")),"<Buffer "+e+">"},f.prototype.compare=function(e,t,n,r,a){if(!f.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===a&&(a=this.length),(t=void 0===t?0:t)<0||n>e.length||r<0||a>this.length)throw new RangeError("out of range index");if(a<=r&&n<=t)return 0;if(a<=r)return-1;if(n<=t)return 1;if(this===e)return 0;for(var i=(a>>>=0)-(r>>>=0),o=(n>>>=0)-(t>>>=0),c=Math.min(i,o),s=this.slice(r,a),u=e.slice(t,n),l=0;l<c;++l)if(s[l]!==u[l]){i=s[l],o=u[l];break}return i<o?-1:o<i?1:0},f.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},f.prototype.indexOf=function(e,t,n){return A(this,e,t,n,!0)},f.prototype.lastIndexOf=function(e,t,n){return A(this,e,t,n,!1)},f.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(n)?(n|=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var c=this.length-t;if((void 0===n||c<n)&&(n=c),0<e.length&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r=r||"utf8";for(var f,d,a,i,o,h=!1;;)switch(r){case"hex":var g=this,p=e,M=t,s=n,u=(M=Number(M)||0,g.length-M);if((!s||(s=Number(s))>u)&&(s=u),(u=p.length)%2!=0)throw new TypeError("Invalid hex string");u/2<s&&(s=u/2);for(var l=0;l<s;++l){var m=parseInt(p.substr(2*l,2),16);if(isNaN(m))return l;g[M+l]=m}return l;case"utf8":case"utf-8":return u=t,o=n,C(v(e,(i=this).length-u),i,u,o);case"ascii":return T(this,e,t,n);case"latin1":case"binary":return T(this,e,t,n);case"base64":return i=this,o=t,a=n,C(L(e),i,o,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return a=t,d=n,C(function(e,t){for(var n,r,a=[],i=0;i<e.length&&!((t-=2)<0);++i)r=(n=e.charCodeAt(i))>>8,a.push(n%256),a.push(r);return a}(e,(f=this).length-a),f,a,d);default:if(h)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),h=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var w=4096;function o(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(n<e+t)throw new RangeError("Trying to access beyond buffer length")}function s(e,t,n,r,a,i){if(!f.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(a<t||t<i)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function a(e,t,n,r){t<0&&(t=65535+t+1);for(var a=0,i=Math.min(e.length-n,2);a<i;++a)e[n+a]=(t&255<<8*(r?a:1-a))>>>8*(r?a:1-a)}function l(e,t,n,r){t<0&&(t=4294967295+t+1);for(var a=0,i=Math.min(e.length-n,4);a<i;++a)e[n+a]=t>>>8*(r?a:3-a)&255}function b(e,t,n,r){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function N(e,t,n,r,a){return a||b(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function E(e,t,n,r,a){return a||b(e,0,n,8),i.write(e,t,n,r,52,8),n+8}f.prototype.slice=function(e,t){var n=this.length;if((e=~~e)<0?(e+=n)<0&&(e=0):n<e&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):n<t&&(t=n),t<e&&(t=e),f.TYPED_ARRAY_SUPPORT)(a=this.subarray(e,t)).__proto__=f.prototype;else for(var r=t-e,a=new f(r,void 0),i=0;i<r;++i)a[i]=this[i+e];return a},f.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||o(e,t,this.length);for(var r=this[e],a=1,i=0;++i<t&&(a*=256);)r+=this[e+i]*a;return r},f.prototype.readUIntBE=function(e,t,n){e|=0,t|=0,n||o(e,t,this.length);for(var r=this[e+--t],a=1;0<t&&(a*=256);)r+=this[e+--t]*a;return r},f.prototype.readUInt8=function(e,t){return t||o(e,1,this.length),this[e]},f.prototype.readUInt16LE=function(e,t){return t||o(e,2,this.length),this[e]|this[e+1]<<8},f.prototype.readUInt16BE=function(e,t){return t||o(e,2,this.length),this[e]<<8|this[e+1]},f.prototype.readUInt32LE=function(e,t){return t||o(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},f.prototype.readUInt32BE=function(e,t){return t||o(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},f.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||o(e,t,this.length);for(var r=this[e],a=1,i=0;++i<t&&(a*=256);)r+=this[e+i]*a;return r>=(a*=128)&&(r-=Math.pow(2,8*t)),r},f.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||o(e,t,this.length);for(var r=t,a=1,i=this[e+--r];0<r&&(a*=256);)i+=this[e+--r]*a;return i>=(a*=128)&&(i-=Math.pow(2,8*t)),i},f.prototype.readInt8=function(e,t){return t||o(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},f.prototype.readInt16LE=function(e,t){t||o(e,2,this.length);t=this[e]|this[e+1]<<8;return 32768&t?4294901760|t:t},f.prototype.readInt16BE=function(e,t){t||o(e,2,this.length);t=this[e+1]|this[e]<<8;return 32768&t?4294901760|t:t},f.prototype.readInt32LE=function(e,t){return t||o(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},f.prototype.readInt32BE=function(e,t){return t||o(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},f.prototype.readFloatLE=function(e,t){return t||o(e,4,this.length),i.read(this,e,!0,23,4)},f.prototype.readFloatBE=function(e,t){return t||o(e,4,this.length),i.read(this,e,!1,23,4)},f.prototype.readDoubleLE=function(e,t){return t||o(e,8,this.length),i.read(this,e,!0,52,8)},f.prototype.readDoubleBE=function(e,t){return t||o(e,8,this.length),i.read(this,e,!1,52,8)},f.prototype.writeUIntLE=function(e,t,n,r){e=+e,t|=0,n|=0,r||s(this,e,t,n,Math.pow(2,8*n)-1,0);var a=1,i=0;for(this[t]=255&e;++i<n&&(a*=256);)this[t+i]=e/a&255;return t+n},f.prototype.writeUIntBE=function(e,t,n,r){e=+e,t|=0,n|=0,r||s(this,e,t,n,Math.pow(2,8*n)-1,0);var a=n-1,i=1;for(this[t+a]=255&e;0<=--a&&(i*=256);)this[t+a]=e/i&255;return t+n},f.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,1,255,0),f.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},f.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):a(this,e,t,!0),t+2},f.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):a(this,e,t,!1),t+2},f.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):l(this,e,t,!0),t+4},f.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):l(this,e,t,!1),t+4},f.prototype.writeIntLE=function(e,t,n,r){e=+e,t|=0,r||s(this,e,t,n,(r=Math.pow(2,8*n-1))-1,-r);var a=0,i=1,o=0;for(this[t]=255&e;++a<n&&(i*=256);)e<0&&0===o&&0!==this[t+a-1]&&(o=1),this[t+a]=(e/i>>0)-o&255;return t+n},f.prototype.writeIntBE=function(e,t,n,r){e=+e,t|=0,r||s(this,e,t,n,(r=Math.pow(2,8*n-1))-1,-r);var a=n-1,i=1,o=0;for(this[t+a]=255&e;0<=--a&&(i*=256);)e<0&&0===o&&0!==this[t+a+1]&&(o=1),this[t+a]=(e/i>>0)-o&255;return t+n},f.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,1,127,-128),f.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&(e=e<0?255+e+1:e),t+1},f.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):a(this,e,t,!0),t+2},f.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):a(this,e,t,!1),t+2},f.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,4,2147483647,-2147483648),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):l(this,e,t,!0),t+4},f.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||s(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):l(this,e,t,!1),t+4},f.prototype.writeFloatLE=function(e,t,n){return N(this,e,t,!0,n)},f.prototype.writeFloatBE=function(e,t,n){return N(this,e,t,!1,n)},f.prototype.writeDoubleLE=function(e,t,n){return E(this,e,t,!0,n)},f.prototype.writeDoubleBE=function(e,t,n){return E(this,e,t,!1,n)},f.prototype.copy=function(e,t,n,r){if(n=n||0,r||0===r||(r=this.length),t>=e.length&&(t=e.length),(r=0<r&&r<n?n:r)===n)return 0;if(0===e.length||0===this.length)return 0;if((t=t||0)<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length);var a,i=(r=e.length-t<r-n?e.length-t+n:r)-n;if(this===e&&n<t&&t<r)for(a=i-1;0<=a;--a)e[a+t]=this[a+n];else if(i<1e3||!f.TYPED_ARRAY_SUPPORT)for(a=0;a<i;++a)e[a+t]=this[a+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+i),t);return i},f.prototype.fill=function(e,t,n,r){if("string"==typeof e){var a;if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),1===e.length&&(a=e.charCodeAt(0))<256&&(e=a),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!f.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;if(t>>>=0,n=void 0===n?this.length:n>>>0,"number"==typeof(e=e||0))for(s=t;s<n;++s)this[s]=e;else for(var i=f.isBuffer(e)?e:v(new f(e,r).toString()),o=i.length,s=0;s<n-t;++s)this[s+t]=i[s%o];return this};var I=/[^+\/0-9A-Za-z-_]/g;function v(e,t){var n;t=t||1/0;for(var r=e.length,a=null,i=[],o=0;o<r;++o){if(55295<(n=e.charCodeAt(o))&&n<57344){if(!a){if(56319<n){-1<(t-=3)&&i.push(239,191,189);continue}if(o+1===r){-1<(t-=3)&&i.push(239,191,189);continue}a=n;continue}if(n<56320){-1<(t-=3)&&i.push(239,191,189),a=n;continue}n=65536+(a-55296<<10|n-56320)}else a&&-1<(t-=3)&&i.push(239,191,189);if(a=null,n<128){if(--t<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function L(e){return D.toByteArray(function(e){if((e=((t=e).trim?t.trim():t.replace(/^\s+|\s+$/g,"")).replace(I,"")).length<2)return"";for(var t;e.length%4!=0;)e+="=";return e}(e))}function C(e,t,n,r){for(var a=0;a<r&&!(a+n>=t.length||a>=e.length);++a)t[a+n]=e[a];return a}}.call(this,t(8))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.Shading={FLAT:0,GOURAUD:1,PHONG:2},a=t.Representation={POINTS:0,WIREFRAME:1,SURFACE:2},i=t.Interpolation=r;t.default={Shading:r,Representation:a,Interpolation:i}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.ObjectType={ARRAY_BUFFER:0,ELEMENT_ARRAY_BUFFER:1,TEXTURE_BUFFER:2};t.default={ObjectType:r}},function(e,t){e=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},function(e,t,n){"use strict";!function(n){e.exports={isNode:void 0!==n,newBuffer:function(e,t){return new n(e,t)},isBuffer:function(e){return n.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}}.call(this,n(23).Buffer)},function(e,t,n){var r=n(23),a=r.Buffer;function i(e,t){for(var n in e)t[n]=e[n]}function o(e,t,n){return a(e,t,n)}a.from&&a.alloc&&a.allocUnsafe&&a.allocUnsafeSlow?e.exports=r:(i(r,t),t.Buffer=o),o.prototype=Object.create(a.prototype),i(a,o),o.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return a(e,t,n)},o.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");e=a(e);return void 0!==t?"string"==typeof n?e.fill(t,n):e.fill(t):e.fill(0),e},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return a(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";!function(s){void 0===s||!s.version||0===s.version.indexOf("v0.")||0===s.version.indexOf("v1.")&&0!==s.version.indexOf("v1.8.")?e.exports={nextTick:function(e,t,n,r){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var a,i,o=arguments.length;switch(o){case 0:case 1:return s.nextTick(e);case 2:return s.nextTick(function(){e.call(null,t)});case 3:return s.nextTick(function(){e.call(null,t,n)});case 4:return s.nextTick(function(){e.call(null,t,n,r)});default:for(a=new Array(o-1),i=0;i<a.length;)a[i++]=arguments[i];return s.nextTick(function(){e.apply(null,a)})}}}:e.exports=s}.call(this,n(36))},function(e,t,n){"use strict";var r={};(0,n(12).assign)(r,n(157),n(154),n(76)),e.exports=r},function(e,t){e.exports="//VTK::System::Dec\n\n/*=========================================================================\n\n  Program:   Visualization Toolkit\n  Module:    vtkPolyDataFS.glsl\n\n  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen\n  All rights reserved.\n  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.\n\n     This software is distributed WITHOUT ANY WARRANTY; without even\n     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR\n     PURPOSE.  See the above copyright notice for more information.\n\n=========================================================================*/\n// Template for the polydata mappers fragment shader\n\nuniform int PrimitiveIDOffset;\n\n// VC position of this fragment\n//VTK::PositionVC::Dec\n\n// optional color passed in from the vertex shader, vertexColor\n//VTK::Color::Dec\n\n// optional surface normal declaration\n//VTK::Normal::Dec\n\n// extra lighting parameters\n//VTK::Light::Dec\n\n// Texture coordinates\n//VTK::TCoord::Dec\n\n// picking support\n//VTK::Picking::Dec\n\n// Depth Peeling Support\n//VTK::DepthPeeling::Dec\n\n// clipping plane vars\n//VTK::Clip::Dec\n\n// the output of this shader\n//VTK::Output::Dec\n\n// Apple Bug\n//VTK::PrimID::Dec\n\n// handle coincident offsets\n//VTK::Coincident::Dec\n\n//VTK::ZBuffer::Dec\n\nvoid main()\n{\n  // VC position of this fragment. This should not branch/return/discard.\n  //VTK::PositionVC::Impl\n\n  // Place any calls that require uniform flow (e.g. dFdx) here.\n  //VTK::UniformFlow::Impl\n\n  // Set gl_FragDepth here (gl_FragCoord.z by default)\n  //VTK::Depth::Impl\n\n  // Early depth peeling abort:\n  //VTK::DepthPeeling::PreColor\n\n  // Apple Bug\n  //VTK::PrimID::Impl\n\n  //VTK::Clip::Impl\n\n  //VTK::Color::Impl\n\n  // Generate the normal if we are not passed in one\n  //VTK::Normal::Impl\n\n  //VTK::Light::Impl\n\n  //VTK::TCoord::Impl\n\n  if (gl_FragData[0].a <= 0.0)\n    {\n    discard;\n    }\n\n  //VTK::DepthPeeling::Impl\n\n  //VTK::Picking::Impl\n\n  // handle coincident offsets\n  //VTK::Coincident::Impl\n\n  //VTK::ZBuffer::Impl\n}\n"},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=u;var r=n(t(0)),a=n(t(202)),i=n(t(13)),o=n(t(94));function n(e){return e&&e.__esModule?e:{default:e}}var s={program:null,shaderSourceTime:null,VAO:null,attributeUpdateTime:null,CABO:null,primitiveType:0};function u(e,t){var n;Object.assign(t,s,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),r.default.obj(e,t),t.shaderSourceTime={},r.default.obj(t.shaderSourceTime),t.attributeUpdateTime={},r.default.obj(t.attributeUpdateTime),r.default.setGet(e,t,["program","shaderSourceTime","VAO","attributeUpdateTime","CABO","primitiveType"]),t.program=i.default.newInstance(),t.VAO=o.default.newInstance(),t.CABO=a.default.newInstance(),e=e,(n=t).classHierarchy.push("vtkOpenGLHelper"),e.setOpenGLRenderWindow=function(e){n.program.setContext(e.getContext()),n.VAO.setOpenGLRenderWindow(e),n.CABO.setOpenGLRenderWindow(e)},e.releaseGraphicsResources=function(e){n.VAO.releaseGraphicsResources(),n.CABO.releaseGraphicsResources(),n.CABO.setElementCount(0)}}t=e.newInstance=r.default.newInstance(u);e.default={newInstance:t,extend:u}},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=h;var M=t(3),g=n(t(0)),a=n(t(95)),i=n(t(32)),o=n(t(48)),y=n(t(2)),f=n(t(19)),s=n(t(49)),m=n(t(13)),u=n(t(4)),l=n(t(90)),T=n(t(31));function n(e){return e&&e.__esModule?e:{default:e}}var d={Start:0,Points:0,Lines:1,Tris:2,TriStrips:3,TrisEdges:4,TriStripsEdges:5,End:6},v=s.default.Representation,w=s.default.Shading,c=o.default.ScalarMode,b=f.default.Filter,D=f.default.Wrap,x=a.default.PassTypes,A=g.default.vtkErrorMacro,N={type:"StartEvent"},E={type:"EndEvent"},I={context:null,VBOBuildTime:0,VBOBuildString:null,primitives:null,primTypes:null,shaderRebuildString:null,tmpMat4:null,ambientColor:[],diffuseColor:[],specularColor:[],lightColor:[],lightHalfAngle:[],lightDirection:[],lastHaveSeenDepthRequest:!1,haveSeenDepthRequest:!1};function h(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,I,n),u.default.extend(e,t,n),t.primitives=[],t.primTypes=d,t.tmpMat4=M.mat4.create();for(var h,p,r=d.Start;r<d.End;r++)t.primitives[r]=i.default.newInstance(),t.primitives[r].setPrimitiveType(r),t.primitives[r].set({lastLightComplexity:0,lastLightCount:0,lastSelectionPass:-1},!0);g.default.setGet(e,t,["context"]),t.VBOBuildTime={},g.default.obj(t.VBOBuildTime,{mtime:0}),h=e,(p=t).classHierarchy.push("vtkOpenGLPolyDataMapper"),h.buildPass=function(e){e&&(p.openGLActor=h.getFirstAncestorOfType("vtkOpenGLActor"),p.openGLRenderer=p.openGLActor.getFirstAncestorOfType("vtkOpenGLRenderer"),p.openGLRenderWindow=p.openGLRenderer.getParent(),p.openGLCamera=p.openGLRenderer.getViewNodeFor(p.openGLRenderer.getRenderable().getActiveCamera()))},h.translucentPass=function(e){e&&h.render()},h.opaqueZBufferPass=function(e){e&&(p.haveSeenDepthRequest=!0,p.renderDepth=!0,h.render(),p.renderDepth=!1)},h.opaquePass=function(e){e&&h.render()},h.render=function(){var e=p.openGLRenderWindow.getContext();if(p.context!==e){p.context=e;for(var t=d.Start;t<d.End;t++)p.primitives[t].setOpenGLRenderWindow(p.openGLRenderWindow)}var e=p.openGLActor.getRenderable(),n=p.openGLRenderer.getRenderable();h.renderPiece(n,e)},h.buildShaders=function(e,t,n){h.getShaderTemplate(e,t,n);var c=p.renderable.getViewSpecificProperties().OpenGL,r=null;if(r=c?c.ShaderReplacements:r)for(var a=0;a<r.length;a++){var f,i,o=r[a];o.replaceFirst&&(i=e[f=o.shaderType],i=m.default.substitute(i,o.originalValue,o.replacementValue,o.replaceAll),e[f]=i.result)}if(h.replaceShaderValues(e,t,n),r)for(var s=0;s<r.length;s++){var d,u,l=r[s];l.replaceFirst||(u=e[d=l.shaderType],u=m.default.substitute(u,l.originalValue,l.replacementValue,l.replaceAll),e[d]=u.result)}},h.getShaderTemplate=function(e,t,n){var r=p.renderable.getViewSpecificProperties().OpenGL,a=l.default,i=(!r||void 0!==(i=r.VertexShaderCode)&&""!==i&&(a=i),e.Vertex=a,T.default),a=(!r||void 0!==(a=r.FragmentShaderCode)&&""!==a&&(i=a),e.Fragment=i,"");!r||void 0!==(i=r.GeometryShaderCode)&&(a=i),e.Geometry=a},h.replaceShaderColor=function(e,t,n){var r=e.Vertex,a=e.Geometry,i=e.Fragment,o=p.lastBoundBO.getReferenceByName("lastLightComplexity"),s=["uniform float ambient;","uniform float diffuse;","uniform float specular;","uniform float opacityUniform; // the fragment opacity","uniform vec3 ambientColorUniform;","uniform vec3 diffuseColorUniform;"],u=(o&&(s=s.concat(["uniform vec3 specularColorUniform;","uniform float specularPowerUniform;"])),["vec3 ambientColor;","  vec3 diffuseColor;","  float opacity;"]),u=(u=o?u.concat(["  vec3 specularColor;","  float specularPower;"]):u).concat(["  ambientColor = ambientColorUniform;","  diffuseColor = diffuseColorUniform;","  opacity = opacityUniform;"]);o&&(u=u.concat(["  specularColor = specularColorUniform;","  specularPower = specularPowerUniform;"])),0===p.lastBoundBO.getCABO().getColorComponents()||p.drawingEdges||(s=s.concat(["varying vec4 vertexColorVSOutput;"]),r=m.default.substitute(r,"//VTK::Color::Dec",["attribute vec4 scalarColor;","varying vec4 vertexColorVSOutput;"]).result,r=m.default.substitute(r,"//VTK::Color::Impl",["vertexColorVSOutput =  scalarColor;"]).result,a=m.default.substitute(a,"//VTK::Color::Dec",["in vec4 vertexColorVSOutput[];","out vec4 vertexColorGSOutput;"]).result,a=m.default.substitute(a,"//VTK::Color::Impl",["vertexColorGSOutput = vertexColorVSOutput[i];"]).result),i=(0===p.lastBoundBO.getCABO().getColorComponents()||p.drawingEdges?p.renderable.getInterpolateScalarsBeforeMapping()&&p.renderable.getColorCoordinates()&&!p.drawingEdges?m.default.substitute(i,"//VTK::Color::Impl",u.concat(["  vec4 texColor = texture2D(texture1, tcoordVCVSOutput.st);","  diffuseColor = texColor.rgb;","  ambientColor = texColor.rgb;","  opacity = opacity*texColor.a;"])):m.default.substitute(i,"//VTK::Color::Impl",u):m.default.substitute(i,"//VTK::Color::Impl",u.concat(["  diffuseColor = vertexColorVSOutput.rgb;","  ambientColor = vertexColorVSOutput.rgb;","  opacity = opacity*vertexColorVSOutput.a;"]))).result,i=m.default.substitute(i,"//VTK::Color::Dec",s).result,e.Vertex=r,e.Geometry=a,e.Fragment=i},h.replaceShaderLight=function(e,l,c){var t=e.Fragment,n=p.lastBoundBO.getReferenceByName("lastLightComplexity"),r=p.lastBoundBO.getReferenceByName("lastLightCount"),a=[];switch(n){case 0:t=m.default.substitute(t,"//VTK::Light::Impl",["  gl_FragData[0] = vec4(ambientColor * ambient + diffuseColor * diffuse, opacity);","  //VTK::Light::Impl"],!1).result;break;case 1:t=m.default.substitute(t,"//VTK::Light::Impl",["  float df = max(0.0, normalVCVSOutput.z);","  float sf = pow(df, specularPower);","  vec3 diffuseL = df * diffuseColor;","  vec3 specularL = sf * specularColor;","  gl_FragData[0] = vec4(ambientColor * ambient + diffuseL * diffuse + specularL * specular, opacity);","  //VTK::Light::Impl"],!1).result;break;case 2:for(var i=0;i<r;++i)a=a.concat(["uniform vec3 lightColor"+i+";","uniform vec3 lightDirectionVC"+i+"; // normalized","uniform vec3 lightHalfAngleVC"+i+"; // normalized"]);for(var t=m.default.substitute(t,"//VTK::Light::Dec",a).result,a=["vec3 diffuseL = vec3(0,0,0);","  vec3 specularL = vec3(0,0,0);","  float df;"],o=0;o<r;++o)a=a.concat(["  df = max(0.0, dot(normalVCVSOutput, -lightDirectionVC"+o+"));","  diffuseL += ((df) * lightColor"+o+");","  if (dot(normalVCVSOutput, lightDirectionVC"+o+") < 0.0)","    {","    float sf = pow( max(0.0, dot(lightHalfAngleVC"+o+",normalVCVSOutput)), specularPower);","    specularL += ((sf) * lightColor"+o+");","    }"]);a=a.concat(["  diffuseL = diffuseL * diffuseColor;","  specularL = specularL * specularColor;","  gl_FragData[0] = vec4(ambientColor * ambient + diffuseL * diffuse + specularL * specular, opacity);","  //VTK::Light::Impl"]),t=m.default.substitute(t,"//VTK::Light::Impl",a,!1).result;break;case 3:for(var s=0;s<r;++s)a=a.concat(["uniform vec3 lightColor"+s+";","uniform vec3 lightDirectionVC"+s+"; // normalized","uniform vec3 lightHalfAngleVC"+s+"; // normalized","uniform vec3 lightPositionVC"+s+";","uniform vec3 lightAttenuation"+s+";","uniform float lightConeAngle"+s+";","uniform float lightExponent"+s+";","uniform int lightPositional"+s+";"]);t=m.default.substitute(t,"//VTK::Light::Dec",a).result,a=["vec3 diffuseL = vec3(0,0,0);","  vec3 specularL = vec3(0,0,0);","  vec3 vertLightDirectionVC;","  float attenuation;","  float df;"];for(var u=0;u<r;++u)a=a.concat(["  attenuation = 1.0;","  if (lightPositional"+u+" == 0)","    {","      vertLightDirectionVC = lightDirectionVC"+u+";","    }","  else","    {","    vertLightDirectionVC = vertexVC.xyz - lightPositionVC"+u+";","    float distanceVC = length(vertLightDirectionVC);","    vertLightDirectionVC = normalize(vertLightDirectionVC);","    attenuation = 1.0 /","      (lightAttenuation"+u+".x","       + lightAttenuation"+u+".y * distanceVC","       + lightAttenuation"+u+".z * distanceVC * distanceVC);","    // per OpenGL standard cone angle is 90 or less for a spot light","    if (lightConeAngle"+u+" <= 90.0)","      {","      float coneDot = dot(vertLightDirectionVC, lightDirectionVC"+u+");","      // if inside the cone","      if (coneDot >= cos(radians(lightConeAngle"+u+")))","        {","        attenuation = attenuation * pow(coneDot, lightExponent"+u+");","        }","      else","        {","        attenuation = 0.0;","        }","      }","    }","    df = max(0.0, attenuation*dot(normalVCVSOutput, -vertLightDirectionVC));","    diffuseL += ((df) * lightColor"+u+");","    if (dot(normalVCVSOutput, vertLightDirectionVC) < 0.0)","      {","      float sf = attenuation*pow( max(0.0, dot(lightHalfAngleVC"+u+",normalVCVSOutput)), specularPower);","    specularL += ((sf) * lightColor"+u+");","    }"]);a=a.concat(["  diffuseL = diffuseL * diffuseColor;","  specularL = specularL * specularColor;","  gl_FragData[0] = vec4(ambientColor * ambient + diffuseL * diffuse + specularL * specular, opacity);","  //VTK::Light::Impl"]),t=m.default.substitute(t,"//VTK::Light::Impl",a,!1).result;break;default:A("bad light complexity")}e.Fragment=t},h.replaceShaderNormal=function(e,t,n){var r,a,i;0<p.lastBoundBO.getReferenceByName("lastLightComplexity")&&(r=e.Vertex,a=e.Geometry,i=e.Fragment,i=p.lastBoundBO.getCABO().getNormalOffset()?(r=m.default.substitute(r,"//VTK::Normal::Dec",["attribute vec3 normalMC;","uniform mat3 normalMatrix;","varying vec3 normalVCVSOutput;"]).result,r=m.default.substitute(r,"//VTK::Normal::Impl",["normalVCVSOutput = normalMatrix * normalMC;"]).result,a=m.default.substitute(a,"//VTK::Normal::Dec",["in vec3 normalVCVSOutput[];","out vec3 normalVCGSOutput;"]).result,a=m.default.substitute(a,"//VTK::Normal::Impl",["normalVCGSOutput = normalVCVSOutput[i];"]).result,i=m.default.substitute(i,"//VTK::Normal::Dec",["varying vec3 normalVCVSOutput;"]).result,m.default.substitute(i,"//VTK::Normal::Impl",["vec3 normalVCVSOutput = normalize(normalVCVSOutput);","  if (gl_FrontFacing == false) { normalVCVSOutput = -normalVCVSOutput; }"]).result):p.haveCellNormals?(i=m.default.substitute(i,"//VTK::Normal::Dec",["uniform mat3 normalMatrix;","uniform samplerBuffer textureN;"]).result,m.default.substitute(i,"//VTK::Normal::Impl",["vec3 normalVCVSOutput = normalize(normalMatrix *","    texelFetchBuffer(textureN, gl_PrimitiveID + PrimitiveIDOffset).xyz);","  if (gl_FrontFacing == false) { normalVCVSOutput = -normalVCVSOutput; }"]).result):h.getOpenGLMode(n.getProperty().getRepresentation(),p.lastBoundBO.getPrimitiveType())===p.context.LINES?(i=m.default.substitute(i,"//VTK::UniformFlow::Impl",["  vec3 fdx = vec3(dFdx(vertexVC.x),dFdx(vertexVC.y),dFdx(vertexVC.z));","  vec3 fdy = vec3(dFdy(vertexVC.x),dFdy(vertexVC.y),dFdy(vertexVC.z));","  //VTK::UniformFlow::Impl"]).result,m.default.substitute(i,"//VTK::Normal::Impl",["vec3 normalVCVSOutput;","  fdx = normalize(fdx);","  fdy = normalize(fdy);","  if (abs(fdx.x) > 0.0)","    { normalVCVSOutput = normalize(cross(vec3(fdx.y, -fdx.x, 0.0), fdx)); }","  else { normalVCVSOutput = normalize(cross(vec3(fdy.y, -fdy.x, 0.0), fdy));}"]).result):(i=m.default.substitute(i,"//VTK::Normal::Dec",["uniform int cameraParallel;"]).result,i=m.default.substitute(i,"//VTK::UniformFlow::Impl",["  vec3 fdx = dFdx(vertexVC.xyz);","  vec3 fdy = dFdy(vertexVC.xyz);","  //VTK::UniformFlow::Impl"]).result,m.default.substitute(i,"//VTK::Normal::Impl",["  fdx = normalize(fdx);","  fdy = normalize(fdy);","  vec3 normalVCVSOutput = normalize(cross(fdx,fdy));","  if (cameraParallel == 1 && normalVCVSOutput.z < 0.0) { normalVCVSOutput = -1.0*normalVCVSOutput; }","  if (cameraParallel == 0 && dot(normalVCVSOutput,vertexVC.xyz) > 0.0) { normalVCVSOutput = -1.0*normalVCVSOutput; }"]).result),e.Vertex=r,e.Geometry=a,e.Fragment=i)},h.replaceShaderPositionVC=function(e,t,n){var r=e.Vertex,a=e.Geometry,i=e.Fragment;n.getProperty().getRepresentation()!==v.POINTS&&p.lastBoundBO.getPrimitiveType()!==d.Points||(r=m.default.substitute(r,"//VTK::PositionVC::Impl",["//VTK::PositionVC::Impl","  gl_PointSize = "+n.getProperty().getPointSize()+".0;"],!1).result),0<p.lastBoundBO.getReferenceByName("lastLightComplexity")?(r=m.default.substitute(r,"//VTK::PositionVC::Dec",["varying vec4 vertexVCVSOutput;"]).result,r=m.default.substitute(r,"//VTK::PositionVC::Impl",["vertexVCVSOutput = MCVCMatrix * vertexMC;","  gl_Position = MCDCMatrix * vertexMC;"]).result,r=m.default.substitute(r,"//VTK::Camera::Dec",["uniform mat4 MCDCMatrix;","uniform mat4 MCVCMatrix;"]).result,a=m.default.substitute(a,"//VTK::PositionVC::Dec",["in vec4 vertexVCVSOutput[];","out vec4 vertexVCGSOutput;"]).result,a=m.default.substitute(a,"//VTK::PositionVC::Impl",["vertexVCGSOutput = vertexVCVSOutput[i];"]).result,i=m.default.substitute(i,"//VTK::PositionVC::Dec",["varying vec4 vertexVCVSOutput;"]).result,i=m.default.substitute(i,"//VTK::PositionVC::Impl",["vec4 vertexVC = vertexVCVSOutput;"]).result):(r=m.default.substitute(r,"//VTK::Camera::Dec",["uniform mat4 MCDCMatrix;"]).result,r=m.default.substitute(r,"//VTK::PositionVC::Impl",["  gl_Position = MCDCMatrix * vertexMC;"]).result),e.Vertex=r,e.Geometry=a,e.Fragment=i},h.replaceShaderTCoord=function(e,t,n){if(p.lastBoundBO.getCABO().getTCoordOffset()){var r=e.Vertex,a=e.Geometry,i=e.Fragment;if(!p.drawingEdges){var r=m.default.substitute(r,"//VTK::TCoord::Impl","tcoordVCVSOutput = tcoordMC;").result,o=p.openGLActor.getActiveTextures(),s=2,u=2;if(o&&0<o.length&&(s=o[0].getComponents(),o[0].getTarget()===p.context.TEXTURE_CUBE_MAP&&(u=3)),p.renderable.getColorTextureMap()&&(s=p.renderable.getColorTextureMap().getPointData().getScalars().getNumberOfComponents(),u=2),2===u)switch(r=m.default.substitute(r,"//VTK::TCoord::Dec","attribute vec2 tcoordMC; varying vec2 tcoordVCVSOutput;").result,a=m.default.substitute(a,"//VTK::TCoord::Dec",["in vec2 tcoordVCVSOutput[];","out vec2 tcoordVCGSOutput;"]).result,a=m.default.substitute(a,"//VTK::TCoord::Impl","tcoordVCGSOutput = tcoordVCVSOutput[i];").result,i=m.default.substitute(i,"//VTK::TCoord::Dec",["varying vec2 tcoordVCVSOutput;","uniform sampler2D texture1;"]).result,s){case 1:i=m.default.substitute(i,"//VTK::TCoord::Impl",["vec4 tcolor = texture2D(texture1, tcoordVCVSOutput);","gl_FragData[0] = clamp(gl_FragData[0],0.0,1.0)*","  vec4(tcolor.r,tcolor.r,tcolor.r,1.0);"]).result;break;case 2:i=m.default.substitute(i,"//VTK::TCoord::Impl",["vec4 tcolor = texture2D(texture1, tcoordVCVSOutput);","gl_FragData[0] = clamp(gl_FragData[0],0.0,1.0)*","  vec4(tcolor.r,tcolor.r,tcolor.r,tcolor.g);"]).result;break;default:i=m.default.substitute(i,"//VTK::TCoord::Impl","gl_FragData[0] = clamp(gl_FragData[0],0.0,1.0)*texture2D(texture1, tcoordVCVSOutput.st);").result}else switch(r=m.default.substitute(r,"//VTK::TCoord::Dec","attribute vec3 tcoordMC; varying vec3 tcoordVCVSOutput;").result,a=m.default.substitute(a,"//VTK::TCoord::Dec",["in vec3 tcoordVCVSOutput[];","out vec3 tcoordVCGSOutput;"]).result,a=m.default.substitute(a,"//VTK::TCoord::Impl","tcoordVCGSOutput = tcoordVCVSOutput[i];").result,i=m.default.substitute(i,"//VTK::TCoord::Dec",["varying vec3 tcoordVCVSOutput;","uniform samplerCube texture1;"]).result,s){case 1:i=m.default.substitute(i,"//VTK::TCoord::Impl",["vec4 tcolor = textureCube(texture1, tcoordVCVSOutput);","gl_FragData[0] = clamp(gl_FragData[0],0.0,1.0)*","  vec4(tcolor.r,tcolor.r,tcolor.r,1.0);"]).result;break;case 2:i=m.default.substitute(i,"//VTK::TCoord::Impl",["vec4 tcolor = textureCube(texture1, tcoordVCVSOutput);","gl_FragData[0] = clamp(gl_FragData[0],0.0,1.0)*","  vec4(tcolor.r,tcolor.r,tcolor.r,tcolor.g);"]).result;break;default:i=m.default.substitute(i,"//VTK::TCoord::Impl","gl_FragData[0] = clamp(gl_FragData[0],0.0,1.0)*textureCube(texture1, tcoordVCVSOutput);").result}e.Vertex=r,e.Geometry=a,e.Fragment=i}}},h.replaceShaderClip=function(e,t,n){var r=e.Vertex,a=e.Fragment;p.renderable.getNumberOfClippingPlanes()&&(6<p.renderable.getNumberOfClippingPlanes()&&g.default.vtkErrorMacro("OpenGL has a limit of 6 clipping planes"),r=m.default.substitute(r,"//VTK::Clip::Dec",["uniform int numClipPlanes;","uniform vec4 clipPlanes[6];","varying float clipDistancesVSOutput[6];"]).result,r=m.default.substitute(r,"//VTK::Clip::Impl",["for (int planeNum = 0; planeNum < 6; planeNum++)","    {","    if (planeNum >= numClipPlanes)","        {","        break;","        }","    clipDistancesVSOutput[planeNum] = dot(clipPlanes[planeNum], vertexMC);","    }"]).result,a=m.default.substitute(a,"//VTK::Clip::Dec",["uniform int numClipPlanes;","varying float clipDistancesVSOutput[6];"]).result,a=m.default.substitute(a,"//VTK::Clip::Impl",["for (int planeNum = 0; planeNum < 6; planeNum++)","    {","    if (planeNum >= numClipPlanes)","        {","        break;","        }","    if (clipDistancesVSOutput[planeNum] < 0.0) discard;","    }"]).result),e.Vertex=r,e.Fragment=a},h.getCoincidentParameters=function(e,t){var n,r=null,t=t.getProperty();return(p.renderable.getResolveCoincidentTopology()||t.getEdgeVisibility()&&t.getRepresentation()===v.SURFACE)&&((n=p.lastBoundBO.getPrimitiveType())===d.Points||t.getRepresentation()===v.POINTS?r=p.renderable.getCoincidentTopologyPointOffsetParameter():n===d.Lines||t.getRepresentation()===v.WIREFRAME?r=p.renderable.getCoincidentTopologyLineOffsetParameters():n!==d.Tris&&n!==d.TriStrips||(r=p.renderable.getCoincidentTopologyPolygonOffsetParameters()),n!==d.TrisEdges&&n!==d.TriStripsEdges||((r=p.renderable.getCoincidentTopologyPolygonOffsetParameters()).factor/=2,r.offset/=2)),r},h.replaceShaderCoincidentOffset=function(e,t,n){t=h.getCoincidentParameters(t,n);!t||0===t.factor&&0===t.offset||(n=e.Fragment,n=m.default.substitute(n,"//VTK::Coincident::Dec",["uniform float cfactor;","uniform float coffset;"]).result,p.context.getExtension("EXT_frag_depth")&&(n=0!==t.factor?(n=m.default.substitute(n,"//VTK::UniformFlow::Impl",["float cscale = length(vec2(dFdx(gl_FragCoord.z),dFdy(gl_FragCoord.z)));","//VTK::UniformFlow::Impl"],!1).result,m.default.substitute(n,"//VTK::Depth::Impl","gl_FragDepthEXT = gl_FragCoord.z + cfactor*cscale + 0.000016*coffset;").result):m.default.substitute(n,"//VTK::Depth::Impl","gl_FragDepthEXT = gl_FragCoord.z + 0.000016*coffset;").result),e.Fragment=n)},h.replaceShaderPicking=function(e,t,n){var r;p.openGLRenderer.getSelector()&&(r=e.Fragment,p.openGLRenderer.getSelector().getCurrentPass()===x.ID_LOW24||(r=m.default.substitute(r,"//VTK::Picking::Dec","uniform vec3 mapperIndex;").result,r=m.default.substitute(r,"//VTK::Picking::Impl","  gl_FragData[0] = vec4(mapperIndex,1.0);").result),e.Fragment=r)},h.replaceShaderValues=function(e,t,n){h.replaceShaderColor(e,t,n),h.replaceShaderNormal(e,t,n),h.replaceShaderLight(e,t,n),h.replaceShaderTCoord(e,t,n),h.replaceShaderPicking(e,t,n),h.replaceShaderClip(e,t,n),h.replaceShaderCoincidentOffset(e,t,n),h.replaceShaderPositionVC(e,t,n),p.haveSeenDepthRequest&&(t=e.Fragment,t=m.default.substitute(t,"//VTK::ZBuffer::Dec","uniform int depthRequest;").result,t=m.default.substitute(t,"//VTK::ZBuffer::Impl",["if (depthRequest == 1) {","float iz = floor(gl_FragCoord.z*65535.0 + 0.1);","float rf = floor(iz/256.0)/255.0;","float gf = mod(iz,256.0)/255.0;","gl_FragData[0] = vec4(rf, gf, 0.0, 1.0); }"]).result,e.Fragment=t)},h.getNeedToRebuildShaders=function(e,t,n){var r=0,a=0,i=e.getPrimitiveType(),o=!0,s=p.currentInput,u=n.getProperty().getInterpolation()!==w.FLAT?s.getPointData().getNormals():null,s=null!==(u=null===u&&s.getCellData().getNormals()?s.getCellData().getNormals():u);if(n.getProperty().getRepresentation()!==v.POINTS&&i!==d.Points||(o=s),n.getProperty().getLighting()&&o)for(var r=0,c=t.getLightsByReference(),f=0;f<c.length;++f){var l=c[f];0<l.getSwitch()&&(a++,0===r&&(r=1)),(r=1===r&&(1<a||1!==l.getIntensity()||!l.lightTypeIsHeadLight())?2:r)<3&&l.getPositional()&&(r=3)}u=!1,i=p.lastBoundBO.getReferenceByName("lastLightComplexity"),s=p.lastBoundBO.getReferenceByName("lastLightCount"),i===r&&s===a||(p.lastBoundBO.set({lastLightComplexity:r},!0),p.lastBoundBO.set({lastLightCount:a},!0),u=!0),o=p.openGLRenderer.getSelector(),t=null===o?-1:o.getCurrentPass();return p.lastBoundBO.getReferenceByName("lastSelectionPass")!==t&&(p.lastBoundBO.set({lastSelectionPass:t},!0),u=!0),!!(p.lastHaveSeenDepthRequest!==p.haveSeenDepthRequest||0===e.getProgram()||e.getShaderSourceTime().getMTime()<h.getMTime()||e.getShaderSourceTime().getMTime()<n.getMTime()||e.getShaderSourceTime().getMTime()<p.renderable.getMTime()||e.getShaderSourceTime().getMTime()<p.currentInput.getMTime()||u)&&(p.lastHaveSeenDepthRequest=p.haveSeenDepthRequest,!0)},h.updateShaders=function(t,n,r){p.lastBoundBO=t,h.getNeedToRebuildShaders(t,n,r)?(h.buildShaders(e={Vertex:null,Fragment:null,Geometry:null},n,r),(e=p.openGLRenderWindow.getShaderCache().readyShaderProgramArray(e.Vertex,e.Fragment,e.Geometry))!==t.getProgram()&&(t.setProgram(e),t.getVAO().releaseGraphicsResources()),t.getShaderSourceTime().modified()):p.openGLRenderWindow.getShaderCache().readyShaderProgram(t.getProgram()),t.getVAO().bind(),h.setMapperShaderParameters(t,n,r),h.setPropertyShaderParameters(t,n,r),h.setCameraShaderParameters(t,n,r),h.setLightingShaderParameters(t,n,r);var e=p.renderable.getViewSpecificProperties().ShadersCallbacks;e&&e.forEach(function(e){e.callback(e.userData,t,n,r)})},h.setMapperShaderParameters=function(e,t,n){if(e.getProgram().isUniformUsed("PrimitiveIDOffset")&&e.getProgram().setUniformi("PrimitiveIDOffset",p.primitiveIDOffset),e.getCABO().getElementCount()&&(p.VBOBuildTime.getMTime()>e.getAttributeUpdateTime().getMTime()||e.getShaderSourceTime().getMTime()>e.getAttributeUpdateTime().getMTime())&&(s=p.lastBoundBO.getReferenceByName("lastLightComplexity"),e.getProgram().isAttributeUsed("vertexMC")&&(e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"vertexMC",e.getCABO().getVertexOffset(),e.getCABO().getStride(),p.context.FLOAT,3,!1)||A("Error setting vertexMC in shader VAO.")),e.getProgram().isAttributeUsed("normalMC")&&e.getCABO().getNormalOffset()&&0<s?e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"normalMC",e.getCABO().getNormalOffset(),e.getCABO().getStride(),p.context.FLOAT,3,!1)||A("Error setting normalMC in shader VAO."):e.getVAO().removeAttributeArray("normalMC"),e.getProgram().isAttributeUsed("tcoordMC")&&e.getCABO().getTCoordOffset()?e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"tcoordMC",e.getCABO().getTCoordOffset(),e.getCABO().getStride(),p.context.FLOAT,e.getCABO().getTCoordComponents(),!1)||A("Error setting tcoordMC in shader VAO."):e.getVAO().removeAttributeArray("tcoordMC"),e.getProgram().isAttributeUsed("scalarColor")&&e.getCABO().getColorComponents()?e.getVAO().addAttributeArray(e.getProgram(),e.getCABO().getColorBO(),"scalarColor",e.getCABO().getColorOffset(),e.getCABO().getColorBOStride(),p.context.UNSIGNED_BYTE,4,!0)||A("Error setting scalarColor in shader VAO."):e.getVAO().removeAttributeArray("scalarColor"),e.getAttributeUpdateTime().modified()),p.renderable.getNumberOfClippingPlanes()){var r=p.renderable.getNumberOfClippingPlanes();6<r&&(g.default.vtkErrorMacro("OpenGL has a limit of 6 clipping planes"),r=6);for(var a=[],i=0;i<r;i++){var c=[];p.renderable.getClippingPlaneInDataCoords(n.getMatrix(),i,c);for(var o=0;o<4;o++)a.push(c[o])}e.getProgram().setUniformi("numClipPlanes",r),e.getProgram().setUniform4fv("clipPlanes",6,a)}p.internalColorTexture&&e.getProgram().isUniformUsed("texture1")&&e.getProgram().setUniformi("texture1",p.internalColorTexture.getTextureUnit());var s,u=p.openGLActor.getActiveTextures();if(u)for(var l=0;l<u.length;++l){var f=u[l].getTextureUnit(),d="texture"+(f+1);e.getProgram().isUniformUsed(d)&&e.getProgram().setUniformi(d,f)}p.haveSeenDepthRequest&&e.getProgram().setUniformi("depthRequest",p.renderDepth?1:0),e.getProgram().isUniformUsed("coffset")&&(s=h.getCoincidentParameters(t,n),e.getProgram().setUniformf("coffset",s.offset),e.getProgram().isUniformUsed("cfactor")&&e.getProgram().setUniformf("cfactor",s.factor));t=p.openGLRenderer.getSelector();t&&e.getProgram().isUniformUsed("mapperIndex")&&t.getCurrentPass()<x.ID_LOW24&&e.getProgram().setUniform3fArray("mapperIndex",t.getPropColorValue())},h.setLightingShaderParameters=function(c,f,d){var h=p.lastBoundBO.getReferenceByName("lastLightComplexity");if(!(h<2)){for(var e=c.getProgram(),t=0,n=f.getLightsByReference(),r=0;r<n.length;++r){var a,i,o=n[r];0<o.getSwitch()&&(i=o.getColorByReference(),a=o.getIntensity(),p.lightColor[0]=i[0]*a,p.lightColor[1]=i[1]*a,p.lightColor[2]=i[2]*a,i=o.getDirection(),p.lightDirection[0]=i[0],p.lightDirection[1]=i[1],p.lightDirection[2]=i[2],p.lightHalfAngle[0]=-p.lightDirection[0],p.lightHalfAngle[1]=-p.lightDirection[1],p.lightHalfAngle[2]=1-p.lightDirection[2],y.default.normalize(p.lightDirection),e.setUniform3fArray("lightColor"+t,p.lightColor),e.setUniform3fArray("lightDirectionVC"+t,p.lightDirection),e.setUniform3fArray("lightHalfAngleVC"+t,p.lightHalfAngle),t++)}if(!(h<3)){var s=f.getActiveCamera().getViewMatrix();M.mat4.transpose(s,s);for(var t=0,g=0;g<n.length;++g){var u,l=n[g];0<l.getSwitch()&&(u=l.getTransformedPosition(),u=M.vec3.fromValues(u[0],u[1],u[2]),M.vec3.transformMat4(u,u,s),e.setUniform3fArray("lightAttenuation"+t,l.getAttenuationValuesByReference()),e.setUniformi("lightPositional"+t,l.getPositional()),e.setUniformf("lightExponent"+t,l.getExponent()),e.setUniformf("lightConeAngle"+t,l.getConeAngle()),e.setUniform3fArray("lightPositionVC"+t,[u[0],u[1],u[2]]),t++)}}}},h.setCameraShaderParameters=function(e,t,n){var e=e.getProgram(),r=p.openGLCamera.getKeyMatrices(t),t=t.getActiveCamera(),a=p.openGLCamera.getKeyMatrixTime().getMTime();e.getLastCameraMTime()!==a&&(n.getIsIdentity()&&(e.setUniformMatrix("MCDCMatrix",r.wcdc),e.isUniformUsed("MCVCMatrix")&&e.setUniformMatrix("MCVCMatrix",r.wcvc),e.isUniformUsed("normalMatrix")&&e.setUniformMatrix3x3("normalMatrix",r.normalMatrix)),e.isUniformUsed("cameraParallel")&&e.setUniformi("cameraParallel",t.getParallelProjection()),e.setLastCameraMTime(a)),n.getIsIdentity()||(t=p.openGLActor.getKeyMatrices(),e.isUniformUsed("normalMatrix")&&(a=M.mat3.create(),M.mat3.multiply(a,r.normalMatrix,t.normalMatrix),e.setUniformMatrix3x3("normalMatrix",a)),M.mat4.identity(p.tmpMat4),M.mat4.multiply(p.tmpMat4,r.wcdc,t.mcwc),e.setUniformMatrix("MCDCMatrix",p.tmpMat4),e.isUniformUsed("MCVCMatrix")&&(M.mat4.multiply(p.tmpMat4,r.wcvc,t.mcwc),e.setUniformMatrix("MCVCMatrix",p.tmpMat4)),e.setLastCameraMTime(0))},h.setPropertyShaderParameters=function(e,t,n){var e=e.getProgram(),n=n.getProperty(),r=n.getOpacity(),r=(e.setUniformf("opacityUniform",r),p.drawingEdges?n.getEdgeColorByReference():n.getAmbientColorByReference()),r=(e.setUniform3fArray("ambientColorUniform",r),e.setUniformf("ambient",n.getAmbient()),p.drawingEdges?n.getEdgeColorByReference():n.getDiffuseColorByReference());e.setUniform3fArray("diffuseColorUniform",r),e.setUniformf("diffuse",n.getDiffuse()),p.lastBoundBO.getReferenceByName("lastLightComplexity")<1||(r=n.getSpecularColorByReference(),e.setUniform3fArray("specularColorUniform",r),e.setUniformf("specular",n.getSpecular()),e.setUniformf("specularPowerUniform",n.getSpecularPower()))},h.renderPieceStart=function(e,t){p.primitiveIDOffset=0,p.openGLRenderer.getSelector()&&(p.openGLRenderer.getSelector().getCurrentPass(),p.openGLRenderer.getSelector().renderProp(t)),h.updateBufferObjects(e,t),p.renderable.getColorTextureMap()&&p.internalColorTexture.activate(),p.lastBoundBO=null},h.renderPieceDraw=function(e,t){for(var n=t.getProperty().getRepresentation(),r=p.context,a=t.getProperty().getEdgeVisibility()&&n===v.SURFACE,i=d.Start;i<d.End;i++){var o,s=p.primitives[i].getCABO();s.getElementCount()&&(p.drawingEdges=a&&(i===d.TrisEdges||i===d.TriStripsEdges),h.updateShaders(p.primitives[i],e,t),o=h.getOpenGLMode(n,i),r.drawArrays(o,0,s.getElementCount()),o=(o===r.POINTS?1:0)||(o===r.LINES?2:3),p.primitiveIDOffset+=s.getElementCount()/o)}},h.getOpenGLMode=function(e,t){return e===v.POINTS||t===d.Points?p.context.POINTS:e===v.WIREFRAME||t===d.Lines||t===d.TrisEdges||t===d.TriStripsEdges?p.context.LINES:p.context.TRIANGLES},h.renderPieceFinish=function(e,t){p.LastBoundBO&&p.LastBoundBO.getVAO().release(),p.renderable.getColorTextureMap()&&p.internalColorTexture.deactivate()},h.renderPiece=function(e,t){var n,r,a;h.invokeEvent(N),p.renderable.getStatic()||p.renderable.update(),p.currentInput=p.renderable.getInputData(),h.invokeEvent(E),p.currentInput?p.currentInput.getPoints&&p.currentInput.getPoints().getNumberOfValues()&&(n=p.context,r=t.getProperty().getBackfaceCulling(),a=t.getProperty().getFrontfaceCulling(),r||a?a?(p.openGLRenderWindow.enableCullFace(),n.cullFace(n.FRONT)):(p.openGLRenderWindow.enableCullFace(),n.cullFace(n.BACK)):p.openGLRenderWindow.disableCullFace(),h.renderPieceStart(e,t),h.renderPieceDraw(e,t),h.renderPieceFinish(e,t)):A("No input!")},h.computeBounds=function(e,t){h.getInput()?p.bounds=h.getInput().getBounds():y.default.uninitializeBounds(p.bounds)},h.updateBufferObjects=function(e,t){h.getNeedToRebuildBufferObjects(e,t)&&h.buildBufferObjects(e,t)},h.getNeedToRebuildBufferObjects=function(e,t){var n=p.VBOBuildTime.getMTime();return n<h.getMTime()||n<p.renderable.getMTime()||n<t.getMTime()||n<p.currentInput.getMTime()},h.buildBufferObjects=function(l,e){var t,n,r,a,i,o,s,u=p.currentInput;null!==u&&(p.renderable.mapScalars(u,1),t=p.renderable.getColorMapColors(),p.haveCellScalars=!1,n=p.renderable.getScalarMode(),p.renderable.getScalarVisibility()&&(n!==c.USE_CELL_DATA&&n!==c.USE_CELL_FIELD_DATA&&n!==c.USE_FIELD_DATA&&u.getPointData().getScalars()||n===c.USE_POINT_FIELD_DATA||!t||(p.haveCellScalars=!0)),null===(n=e.getProperty().getInterpolation()!==w.FLAT?u.getPointData().getNormals():null)&&u.getCellData().getNormals()&&(p.haveCellNormals=!0,n=u.getCellData().getNormals()),r=e.getProperty().getRepresentation(),a=u.getPointData().getTCoords(),p.openGLActor.getActiveTextures()||(a=null),p.renderable.getColorCoordinates()&&(a=p.renderable.getColorCoordinates(),p.internalColorTexture||(p.internalColorTexture=f.default.newInstance()),(s=p.internalColorTexture).setMinificationFilter(b.NEAREST),s.setMagnificationFilter(b.NEAREST),s.setWrapS(D.CLAMP_TO_EDGE),s.setWrapT(D.CLAMP_TO_EDGE),s.setOpenGLRenderWindow(p.openGLRenderWindow),i=(o=p.renderable.getColorTextureMap()).getExtent(),o=o.getPointData().getScalars(),s.create2DFromRaw(i[1]-i[0]+1,i[3]-i[2]+1,o.getNumberOfComponents(),o.getDataType(),o.getData()),s.activate(),s.sendParameters(),s.deactivate()),i=u.getMTime()+"A"+r+"B"+u.getMTime()+"C"+(n?n.getMTime():1)+"D"+(t?t.getMTime():1)+"E"+e.getProperty().getEdgeVisibility()+"F"+(a?a.getMTime():1),p.VBOBuildString!==i&&((s={points:o=u.getPoints(),normals:n,tcoords:a,colors:t,cellOffset:0,haveCellScalars:p.haveCellScalars,haveCellNormals:p.haveCellNormals}).cellOffset+=p.primitives[d.Points].getCABO().createVBO(u.getVerts(),"verts",r,s),s.cellOffset+=p.primitives[d.Lines].getCABO().createVBO(u.getLines(),"lines",r,s),s.cellOffset+=p.primitives[d.Tris].getCABO().createVBO(u.getPolys(),"polys",r,s),s.cellOffset+=p.primitives[d.TriStrips].getCABO().createVBO(u.getStrips(),"strips",r,s),e.getProperty().getEdgeVisibility()&&r===v.SURFACE?(p.primitives[d.TrisEdges].getCABO().createVBO(u.getPolys(),"polys",v.WIREFRAME,{points:o,normals:n,tcoords:null,colors:null,cellOffset:0,haveCellScalars:!1,haveCellNormals:!1}),p.primitives[d.TriStripsEdges].getCABO().createVBO(u.getStrips(),"strips",v.WIREFRAME,{points:o,normals:n,tcoords:null,colors:null,cellOffset:0,haveCellScalars:!1,haveCellNormals:!1})):(p.primitives[d.TrisEdges].releaseGraphicsResources(p.openGLRenderWindow),p.primitives[d.TriStripsEdges].releaseGraphicsResources(p.openGLRenderWindow)),p.VBOBuildTime.modified(),p.VBOBuildString=i))}}t=e.newInstance=g.default.newInstance(h,"vtkOpenGLPolyDataMapper");e.default={newInstance:t,extend:h}},function(o,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=e.STATIC=void 0,e.extend=a;var l=n(t(0)),t=n(t(25));function n(e){return e&&e.__esModule?e:{default:e}}var c=t.default.ObjectType,r=e.STATIC={},f={objectType:c.ARRAY_BUFFER,openGLRenderWindow:null,context:null};function a(e,t){var n,r,a,i,o,s;function u(e){switch(e){case c.ELEMENT_ARRAY_BUFFER:return r.context.ELEMENT_ARRAY_BUFFER;case c.TEXTURE_BUFFER:if("TEXTURE_BUFFER"in r.context)return r.context.TEXTURE_BUFFER;default:case c.ARRAY_BUFFER:return r.context.ARRAY_BUFFER}}Object.assign(t,f,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),l.default.obj(e,t),l.default.get(e,t,["openGLRenderWindow"]),n=e,(r=t).classHierarchy.push("vtkOpenGLBufferObject"),o=!(i=a=null),s="",n.getType=function(){return a},n.setType=function(e){a=e},n.getHandle=function(){return i},n.isReady=function(){return!1===o},n.generateBuffer=function(e){var t=u(e);return null===i&&(i=r.context.createBuffer(),a=e),u(a)===t},n.upload=function(e,t){return n.generateBuffer(t)?(r.context.bindBuffer(u(a),i),r.context.bufferData(u(a),e,r.context.STATIC_DRAW),!(o=!1)):!(s="Trying to upload array buffer to incompatible buffer.")},n.bind=function(){return!!i&&(r.context.bindBuffer(u(a),i),!0)},n.release=function(){return!!i&&(r.context.bindBuffer(u(a),null),!0)},n.releaseGraphicsResources=function(){null!==i&&(r.context.bindBuffer(u(a),null),r.context.deleteBuffer(i),i=null)},n.setOpenGLRenderWindow=function(e){r.openGLRenderWindow!==e&&(n.releaseGraphicsResources(),r.openGLRenderWindow=e,r.context=null,e&&(r.context=r.openGLRenderWindow.getContext()))},n.getError=function(){return s}}var i=e.newInstance=l.default.newInstance(a);e.default=Object.assign({newInstance:i,extend:a},r,t.default)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.Wrap={CLAMP_TO_EDGE:0,REPEAT:1,MIRRORED_REPEAT:2},a=t.Filter={NEAREST:0,LINEAR:1,NEAREST_MIPMAP_NEAREST:2,NEAREST_MIPMAP_LINEAR:3,LINEAR_MIPMAP_NEAREST:4,LINEAR_MIPMAP_LINEAR:5};t.default={Wrap:r,Filter:a}},function(e,c){var n,r,e=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function f(t){if(n===setTimeout)return setTimeout(t,0);if((n===a||!n)&&setTimeout)return(n=setTimeout)(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}try{n="function"==typeof setTimeout?setTimeout:a}catch(e){n=a}try{r="function"==typeof clearTimeout?clearTimeout:i}catch(e){r=i}var o,s=[],u=!1,l=-1;function d(){u&&o&&(u=!1,o.length?s=o.concat(s):l=-1,s.length&&h())}function h(){if(!u){var e=f(d);u=!0;for(var t=s.length;t;){for(o=s,s=[];++l<t;)o&&o[l].run();l=-1,t=s.length}o=null,u=!1,function(t){if(r===clearTimeout)return clearTimeout(t);if((r===i||!r)&&clearTimeout)return(r=clearTimeout)(t);try{r(t)}catch(e){try{return r.call(null,t)}catch(e){return r.call(this,t)}}}(e)}}function g(e,t){this.fun=e,this.array=t}function t(){}e.nextTick=function(e){var t=new Array(arguments.length-1);if(1<arguments.length)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];s.push(new g(e,t)),1!==s.length||u||f(h)},g.prototype.run=function(){this.fun.apply(null,this.array)},e.title="browser",e.browser=!0,e.env={},e.argv=[],e.version="",e.versions={},e.on=t,e.addListener=t,e.once=t,e.off=t,e.removeListener=t,e.removeAllListeners=t,e.emit=t,e.prependListener=t,e.prependOnceListener=t,e.listeners=function(e){return[]},e.binding=function(e){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(e){throw new Error("process.chdir is not supported")},e.umask=function(){return 0}},function(e,t,n){"use strict";var r=n(1),o=function(){for(var e=[],t=0;t<256;t++){for(var n=t,r=0;r<8;r++)n=1&n?3988292384^n>>>1:n>>>1;e[t]=n}return e}();e.exports=function(e,t){return void 0!==e&&e.length?("string"!==r.getTypeOf(e)?function(e,t,n){var r=o,a=0+n;e^=-1;for(var i=0;i<a;i++)e=e>>>8^r[255&(e^t[i])];return-1^e}:function(e,t,n){var r=o,a=0+n;e^=-1;for(var i=0;i<a;i++)e=e>>>8^r[255&(e^t.charCodeAt(i))];return-1^e})(0|t,e,e.length):0}},function(e,t,n){"use strict";var r=n(21),a=n(60),i=n(59),o=n(58);function s(e,t,n,r,a){this.compressedSize=e,this.uncompressedSize=t,this.crc32=n,this.compression=r,this.compressedContent=a}i=n(59),s.prototype={getContentWorker:function(){var e=new a(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new i("data_length")),t=this;return e.on("end",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),e},getCompressedWorker:function(){return new a(r.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},s.createWorkerFrom=function(e,t,n){return e.pipe(new o).pipe(new i("uncompressedSize")).pipe(t.compressWorker(n)).pipe(new i("compressedSize")).withStreamInfo("compression",t)},e.exports=s},function(e,t,n){e.exports=!n(64)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(l,e,T){"use strict";!function(e,o,t){var h=T(29);function f(a){var i=this;this.next=null,this.entry=null,this.finish=function(){var e=i,t=a,n=e.entry;for(e.entry=null;n;){var r=n.callback;t.pendingcb--,r(void 0),n=n.next}t.corkedRequestsFree.next=e}}l.exports=a;var i,n,d=!e.browser&&-1<["v0.10","v0.9."].indexOf(e.version.slice(0,5))?o:h.nextTick,e=(a.WritableState=r,Object.create(T(22))),o=(e.inherits=T(15),{deprecate:T(141)}),s=T(71),g=T(28).Buffer,M=(void 0!==t?t:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},t=T(70);function m(){}function r(e,l){i=i||T(14);var t=l instanceof i,n=(this.objectMode=!!(e=e||{}).objectMode,t&&(this.objectMode=this.objectMode||!!e.writableObjectMode),e.highWaterMark),r=e.writableHighWaterMark,a=this.objectMode?16:16384,n=(this.highWaterMark=n||0===n?n:t&&(r||0===r)?r:a,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,(this.destroyed=!1)===e.decodeStrings);this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){var t,n,r,a,i,o,s,u;e=e,o=(t=l)._writableState,s=o.sync,u=o.writecb,(i=o).writing=!1,i.writecb=null,i.length-=i.writelen,i.writelen=0,e?(i=t,r=s,e=e,a=u,--(n=o).pendingcb,r?(h.nextTick(a,e),h.nextTick(c,i,n),i._writableState.errorEmitted=!0,i.emit("error",e)):(a(e),i._writableState.errorEmitted=!0,i.emit("error",e),c(i,n))):((r=y(o))||o.corked||o.bufferProcessing||!o.bufferedRequest||A(t,o),s?d(v,t,o,r,u):v(t,o,r,u))},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new f(this)}function a(e){if(i=i||T(14),!(n.call(a,this)||this instanceof i))return new a(e);this._writableState=new r(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),s.call(this)}function p(e,t,n,r,a,i,o){t.writelen=r,t.writecb=o,t.writing=!0,t.sync=!0,n?e._writev(a,t.onwrite):e._write(a,i,t.onwrite),t.sync=!1}function v(e,t,n,r){var a;n||(n=e,0===(a=t).length&&a.needDrain&&(a.needDrain=!1,n.emit("drain"))),t.pendingcb--,r(),c(e,t)}function A(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,a=new Array(r),r=t.corkedRequestsFree;r.entry=n;for(var i=0,o=!0;n;)(a[i]=n).isBuf||(o=!1),n=n.next,i+=1;a.allBuffers=o,p(e,t,!0,t.length,a,"",r.finish),t.pendingcb++,t.lastBufferedRequest=null,r.next?(t.corkedRequestsFree=r.next,r.next=null):t.corkedRequestsFree=new f(t),t.bufferedRequestCount=0}else{for(;n;){var s=n.chunk,u=n.encoding,l=n.callback;if(p(e,t,!1,t.objectMode?1:s.length,s,u,l),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function y(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function u(t,n){t._final(function(e){n.pendingcb--,e&&t.emit("error",e),n.prefinished=!0,t.emit("prefinish"),c(t,n)})}function c(e,t){var n,r,a=y(t);return a&&(n=e,(r=t).prefinished||r.finalCalled||("function"==typeof n._final?(r.pendingcb++,r.finalCalled=!0,h.nextTick(u,n,r)):(r.prefinished=!0,n.emit("prefinish"))),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),a}e.inherits(a,s),r.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t};try{Object.defineProperty(r.prototype,"buffer",{get:o.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(n=Function.prototype[Symbol.hasInstance],Object.defineProperty(a,Symbol.hasInstance,{value:function(e){return!!n.call(this,e)||this===a&&e&&e._writableState instanceof r}})):n=function(e){return e instanceof this},a.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},a.prototype.write=function(e,t,n){var r,c,f,a,i,o,s,u=this._writableState,d=!1,l=!u.objectMode&&(l=e,g.isBuffer(l)||l instanceof M);return l&&!g.isBuffer(e)&&(s=e,e=g.from(s)),"function"==typeof t&&(n=t,t=null),t=l?"buffer":t||u.defaultEncoding,"function"!=typeof n&&(n=m),u.ended?(s=this,i=n,o=new Error("write after end"),s.emit("error",o),h.nextTick(i,o)):(l||(i=this,o=u,c=n,a=!(f=!0),null===(r=e)?a=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||o.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(i.emit("error",a),h.nextTick(c,a),f=!1),f))&&(u.pendingcb++,d=function(e,t,n,r,a,i){n||(u=r,s=a,u=t.objectMode||!1===t.decodeStrings||"string"!=typeof u?u:g.from(u,s),r!==u&&(n=!0,a="buffer",r=u));var o,s=t.objectMode?1:r.length,u=(t.length+=s,t.length<t.highWaterMark);return u||(t.needDrain=!0),t.writing||t.corked?(o=t.lastBufferedRequest,t.lastBufferedRequest={chunk:r,encoding:a,isBuf:n,callback:i,next:null},o?o.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1):p(e,t,!1,s,r,a,i),u}(this,u,l,e,t,n)),d},a.prototype.cork=function(){this._writableState.corked++},a.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||A(this,e))},a.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(-1<["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(a.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),a.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},a.prototype._writev=null,a.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,t=e=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||(e=this,t=n,(n=r).ending=!0,c(e,n),t&&(n.finished?h.nextTick(t):e.once("finish",t)),n.ended=!0,e.writable=!1)},Object.defineProperty(a.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),a.prototype.destroy=t.destroy,a.prototype._undestroy=t.undestroy,a.prototype._destroy=function(e,t){this.end(),t(e)}}.call(this,T(36),T(103).setImmediate,T(8))},function(e,t,n){(((t=e.exports=n(72)).Stream=t).Readable=t).Writable=n(41),t.Duplex=n(14),t.Transform=n(68),t.PassThrough=n(140)},function(e,t){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function u(e){return"function"==typeof e}function l(e){return"object"==typeof e&&null!==e}function c(e){return void 0===e}((e.exports=r).EventEmitter=r).prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},r.prototype.emit=function(e){var t,n,r,a,i,o;if(this._events||(this._events={}),"error"===e&&(!this._events.error||l(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var s=new Error('Uncaught, unspecified "error" event. ('+t+")");throw s.context=t,s}if(c(n=this._events[e]))return!1;if(u(n))switch(arguments.length){case 1:n.call(this);break;case 2:n.call(this,arguments[1]);break;case 3:n.call(this,arguments[1],arguments[2]);break;default:a=Array.prototype.slice.call(arguments,1),n.apply(this,a)}else if(l(n))for(a=Array.prototype.slice.call(arguments,1),r=(o=n.slice()).length,i=0;i<r;i++)o[i].apply(this,a);return!0},r.prototype.on=r.prototype.addListener=function(e,t){var n;if(!u(t))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",e,u(t.listener)?t.listener:t),this._events[e]?l(this._events[e])?this._events[e].push(t):this._events[e]=[this._events[e],t]:this._events[e]=t,l(this._events[e])&&!this._events[e].warned&&(n=c(this._maxListeners)?r.defaultMaxListeners:this._maxListeners)&&0<n&&this._events[e].length>n&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.once=function(e,t){if(!u(t))throw TypeError("listener must be a function");var n=!1;function r(){this.removeListener(e,r),n||(n=!0,t.apply(this,arguments))}return r.listener=t,this.on(e,r),this},r.prototype.removeListener=function(e,t){var n,r,a,i;if(!u(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(a=(n=this._events[e]).length,r=-1,n===t||u(n.listener)&&n.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(l(n)){for(i=a;0<i--;)if(n[i]===t||n[i].listener&&n[i].listener===t){r=i;break}if(r<0)return this;1===n.length?(n.length=0,delete this._events[e]):n.splice(r,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(u(n=this._events[e]))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?u(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){e=this._events[e];if(u(e))return 1;if(e)return e.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},function(e,t,n){"use strict";function r(){var e=new ArrayBuffer(4),t=new Uint8Array(e),e=new Uint32Array(e);return t[0]=161,t[1]=178,t[2]=195,t[3]=212,3569595041===e[0]?"LittleEndian":2712847316===e[0]?"BigEndian":null}Object.defineProperty(t,"__esModule",{value:!0}),t.getEndianness=r,t.swapBytes=i;var a=t.ENDIANNESS=r();function i(e,t){if(!(t<2))for(var n=new Int8Array(e),r=n.length,a=[],i=0;i<r;i+=t){for(var o=0;o<t;o++)a.push(n[i+o]);for(var s=0;s<t;s++)n[i+s]=a.pop()}}t.default={ENDIANNESS:a,getEndianness:r,swapBytes:i}},function(e,t,n){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=o(n(158)),a=o(n(75)),i=o(n(149));function o(e){return e&&e.__esModule?e:{default:e}}var s={http:function(e){return a.default},zip:function(e){return i.default.create(e)},html:function(e){return r.default}};t.default={get:function(){return s[0<arguments.length&&void 0!==arguments[0]?arguments[0]:"http"](1<arguments.length&&void 0!==arguments[1]?arguments[1]:{})}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.VectorMode={MAGNITUDE:0,COMPONENT:1,RGBCOLORS:2},a=t.ScalarMappingTarget={LUMINANCE:1,LUMINANCE_ALPHA:2,RGB:3,RGBA:4};t.default={VectorMode:r,ScalarMappingTarget:a}},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=f;var r=i(t(0)),c=i(t(200)),d=i(t(7)),h=i(t(93)),w=i(t(197)),g=i(t(2)),n=i(t(47)),a=i(t(195)),p=i(t(194)),t=i(t(91));function i(e){return e&&e.__esModule?e:{default:e}}var M=t.default.ColorMode,s=t.default.ScalarMode,m=t.default.GetArray,v=n.default.VectorMode;function o(e){return function(){return r.default.vtkErrorMacro("vtkMapper::"+e+" - NOT IMPLEMENTED")}}var u={},A=(a.default.addCoincidentTopologyMethods(u,{Polygon:{factor:2,offset:0},Line:{factor:1,offset:-1},Point:{factor:0,offset:-2}},a.default.CATEGORIES.map(function(e){return{key:e,method:"ResolveCoincidentTopology"+e+"OffsetParameters"}})),{colorMapColors:null,static:!1,lookupTable:null,scalarVisibility:!0,scalarRange:[0,1],useLookupTableScalarRange:!1,colorMode:0,scalarMode:0,arrayAccessMode:1,renderTime:0,colorByArrayName:null,fieldDataTupleId:-1,interpolateScalarsBeforeMapping:!1,colorCoordinates:null,colorTextureMap:null,forceCompileOnly:0,useInvertibleColors:!1,invertibleScalars:null,resolveCoincidentTopology:!1,viewSpecificProperties:null});function f(e,t){var T,f,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,A,n),c.default.extend(e,t,n),r.default.get(e,t,["colorCoordinates","colorMapColors","colorTextureMap"]),r.default.setGet(e,t,["colorByArrayName","arrayAccessMode","colorMode","fieldDataTupleId","interpolateScalarsBeforeMapping","lookupTable","renderTime","resolveCoincidentTopology","scalarMode","scalarVisibility","static","useLookupTableScalarRange","viewSpecificProperties"]),r.default.setGetArray(e,t,["scalarRange"],2),t.viewSpecificProperties||(t.viewSpecificProperties={}),T=e,(f=t).classHierarchy.push("vtkMapper"),T.getBounds=function(){var e=T.getInputData();return e?(f.static||T.update(),f.bounds=e.getBounds()):f.bounds=g.default.createUninitializedBounds(),f.bounds},T.setForceCompileOnly=function(e){f.forceCompileOnly=e},T.createDefaultLookupTable=function(){f.lookupTable=w.default.newInstance()},T.getColorModeAsString=function(){return r.default.enumToString(M,f.colorMode)},T.setColorModeToDefault=function(){return T.setColorMode(0)},T.setColorModeToMapScalars=function(){return T.setColorMode(1)},T.setColorModeToDirectScalars=function(){return T.setColorMode(2)},T.getScalarModeAsString=function(){return r.default.enumToString(s,f.scalarMode)},T.setScalarModeToDefault=function(){return T.setScalarMode(0)},T.setScalarModeToUsePointData=function(){return T.setScalarMode(1)},T.setScalarModeToUseCellData=function(){return T.setScalarMode(2)},T.setScalarModeToUsePointFieldData=function(){return T.setScalarMode(3)},T.setScalarModeToUseCellFieldData=function(){return T.setScalarMode(4)},T.setScalarModeToUseFieldData=function(){return T.setScalarMode(5)},Object.keys(p.default).forEach(function(e){T[e]=p.default[e]}),Object.keys(u).forEach(function(e){T[e]=u[e]}),f.topologyOffset={Polygon:{factor:0,offset:0},Line:{factor:0,offset:0},Point:{factor:0,offset:0}},a.default.addCoincidentTopologyMethods(T,f.topologyOffset,a.default.CATEGORIES.map(function(e){return{key:e,method:"RelativeCoincidentTopology"+e+"OffsetParameters"}})),T.getCoincidentTopologyPolygonOffsetParameters=function(){var e=u.getResolveCoincidentTopologyPolygonOffsetParameters(),t=T.getRelativeCoincidentTopologyPolygonOffsetParameters();return{factor:e.factor+t.factor,offset:e.offset+t.offset}},T.getCoincidentTopologyLineOffsetParameters=function(){var e=u.getResolveCoincidentTopologyLineOffsetParameters(),t=T.getRelativeCoincidentTopologyLineOffsetParameters();return{factor:e.factor+t.factor,offset:e.offset+t.offset}},T.getCoincidentTopologyPointOffsetParameter=function(){var e=u.getResolveCoincidentTopologyPointOffsetParameters(),t=T.getRelativeCoincidentTopologyPointOffsetParameters();return{factor:e.factor+t.factor,offset:e.offset+t.offset}},T.getAbstractScalars=function(e,t,n,r,a){if(!e||!f.scalarVisibility)return null;var i,o=null;return t===s.DEFAULT?(o=e.getPointData().getScalars())||(o=e.getCellData().getScalars()):t===s.USE_POINT_DATA?o=e.getPointData().getScalars():t===s.USE_CELL_DATA?o=e.getCellData().getScalars():t===s.USE_POINT_FIELD_DATA?(i=e.getPointData(),o=n===m.BY_ID?i.getArrayByIndex(r):i.getArrayByName(a)):t===s.USE_CELL_FIELD_DATA?(i=e.getCellData(),o=n===m.BY_ID?i.getArrayByIndex(r):i.getArrayByName(a)):t===s.USE_FIELD_DATA&&(i=e.getFieldData(),o=n===m.BY_ID?i.getArrayByIndex(r):i.getArrayByName(a)),o},T.mapScalars=function(e,t){var n=T.getAbstractScalars(e,f.scalarMode,f.arrayAccessMode,f.arrayId,f.colorByArrayName);if(!n)return f.colorCoordinates=null,f.colorTextureMap=null,void(f.colorMapColors=null);f.useLookupTableScalarRange||T.getLookupTable().setRange(f.scalarRange[0],f.scalarRange[1]),T.canUseTextureMapForColoring(e)?T.mapScalarsToTexture(n,t):(f.colorCoordinates=null,f.colorTextureMap=null,(e=T.getLookupTable())&&(e.build(),f.colorMapColors=e.mapScalars(n,f.colorMode,0)))},T.scalarToTextureCoordinate=function(e,t,n){var r=.5,a=1;return g.default.isNan(e)||(a=.49,1e3<(r=(e-t)*n)?r=1e3:r<-1e3&&(r=-1e3)),{texCoordS:r,texCoordT:a}},T.createColorTextureCoordinates=function(c,f,d,e,t,n,h,r,g){var r=(n[1]-n[0])/r,a=[],p=(a[0]=n[0]-r,a[1]=n[1]+r,1/(a[1]-a[0])),i=f.getData(),M=c.getData(),o=0,s=0;if(t<0||e<=t)for(var m=0;m<d;++m){for(var v=0,A=0;A<e;++A)v+=M[o]*M[o],o++;var u=Math.sqrt(v),u=(g&&(u=w.default.applyLogScale(u,h,n)),T.scalarToTextureCoordinate(u,a[0],p));i[s]=u.texCoordS,i[s+1]=u.texCoordT,s+=2}else{o+=t;for(var y=0;y<d;++y){var l=M[o],l=(g&&(l=w.default.applyLogScale(l,h,n)),T.scalarToTextureCoordinate(l,a[0],p));i[s]=l.texCoordS,i[s+1]=l.texCoordT,s+=2,o+=e}}},T.mapScalarsToTexture=function(e,t){var n,r=f.lookupTable.getRange(),a=f.lookupTable.usingLogScale(),i=(a&&w.default.getLogRange(r,r),f.lookupTable.getAlpha());if((f.colorMapColors=null)==f.colorTextureMap||T.getMTime()>f.colorTextureMap.getMTime()||f.lookupTable.getMTime()>f.colorTextureMap.getMTime()||f.lookupTable.getAlpha()!==t){f.lookupTable.setAlpha(t),f.colorTextureMap=null,f.lookupTable.build();var o=f.lookupTable.getNumberOfAvailableColors();4094<o&&(o=4094);for(var c=(r[1]-r[0])/((o+=2)-1-2),s=new Float64Array(2*o),u=0;u<o;++u)s[u]=r[0]+u*c-c,a&&(s[u]=Math.pow(10,s[u]));for(var l=0;l<o;++l)s[l+o]=NaN;f.colorTextureMap=h.default.newInstance(),f.colorTextureMap.setExtent(0,o-1,0,1,0,0);var t=d.default.newInstance({numberOfComponents:1,values:s});f.colorTextureMap.getPointData().setScalars(f.lookupTable.mapScalars(t,f.colorMode,0)),f.lookupTable.setAlpha(i)}(!f.colorCoordinates||T.getMTime()>f.colorCoordinates.getMTime()||T.getInputData(0).getMTime()>f.colorCoordinates.getMTime()||f.lookupTable.getMTime()>f.colorCoordinates.getMTime())&&(f.colorCoordinates=null,t=e.getNumberOfComponents(),i=e.getNumberOfTuples(),f.colorCoordinates=d.default.newInstance({numberOfComponents:2,values:new Float32Array(2*i)}),n=f.lookupTable.getVectorComponent(),f.lookupTable.getVectorMode()===v.MAGNITUDE&&1<e.getNumberOfComponents()&&(n=-1),T.createColorTextureCoordinates(e,f.colorCoordinates,i,t,n,r,f.lookupTable.getRange(),f.colorTextureMap.getPointData().getScalars().getNumberOfTuples()/2-2,a))},T.getIsOpaque=function(){var e=T.getLookupTable();return!e||(e.build(),e.isOpaque())},T.canUseTextureMapForColoring=function(e){return!(!f.interpolateScalarsBeforeMapping||f.lookupTable&&f.lookupTable.getIndexedLookup())},T.clearColorArrays=function(){f.colorMapColors=null,f.colorCoordinates=null,f.colorTextureMap=null},T.getLookupTable=function(){return f.lookupTable||T.createDefaultLookupTable(),f.lookupTable},T.getMTime=function(){var e,t=f.mtime;return t=null!==f.lookupTable?t<(e=f.lookupTable.getMTime())?e:t:t},T.getPrimitiveCount=function(){var e=T.getInputData();return{points:e.getPoints().getNumberOfValues()/3,verts:e.getVerts().getNumberOfValues()-e.getVerts().getNumberOfCells(),lines:e.getLines().getNumberOfValues()-2*e.getLines().getNumberOfCells(),triangles:e.getPolys().getNumberOfValues()-3*e.getLines().getNumberOfCells()}},T.acquireInvertibleLookupTable=o("AcquireInvertibleLookupTable"),T.valueToColor=o("ValueToColor"),T.colorToValue=o("ColorToValue"),T.useInvertibleColorFor=o("UseInvertibleColorFor"),T.clearInvertibleColor=o("ClearInvertibleColor")}n=e.newInstance=r.default.newInstance(f,"vtkMapper");e.default=Object.assign({newInstance:n,extend:f},u,p.default,t.default)},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=a;var n=r(t(0)),t=r(t(24));function r(e){return e&&e.__esModule?e:{default:e}}var i=t.default.Representation,o=t.default.Interpolation;function s(e){return function(){return n.default.vtkErrorMacro("vtkProperty::"+e+" - NOT IMPLEMENTED")}}var u={color:[1,1,1],ambientColor:[1,1,1],diffuseColor:[1,1,1],specularColor:[1,1,1],edgeColor:[0,0,0],ambient:0,diffuse:1,specular:0,specularPower:1,opacity:1,interpolation:o.GOURAUD,representation:i.SURFACE,edgeVisibility:!1,backfaceCulling:!1,frontfaceCulling:!1,pointSize:1,lineWidth:1,lighting:!0,shading:!1,materialName:null};function a(e,t){var r,a;Object.assign(t,u,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),n.default.obj(e,t),n.default.setGet(e,t,["lighting","interpolation","ambient","diffuse","specular","specularPower","opacity","edgeVisibility","lineWidth","pointSize","backfaceCulling","frontfaceCulling","representation"]),n.default.setGetArray(e,t,["ambientColor","specularColor","diffuseColor","edgeColor"],3),r=e,(a=t).classHierarchy.push("vtkProperty"),r.setColor=function(e,t,n){a.color[0]===e&&a.color[1]===t&&a.color[2]===n||(a.color[0]=e,a.color[1]=t,a.color[2]=n,r.modified()),r.setDiffuseColor(a.color),r.setAmbientColor(a.color),r.setSpecularColor(a.color)},r.computeCompositeColor=s("ComputeCompositeColor"),r.getColor=function(){var e=0;0<a.ambient+a.diffuse+a.specular&&(e=1/(a.ambient+a.diffuse+a.specular));for(var t=0;t<3;t++)a.color[t]=e*(a.ambient*a.ambientColor[t]+a.diffuse*a.diffuseColor[t]+a.specular*a.specularColor[t]);return[].concat(a.color)},r.addShaderVariable=s("AddShaderVariable"),r.setInterpolationToFlat=function(){return r.setInterpolation(o.FLAT)},r.setInterpolationToGouraud=function(){return r.setInterpolation(o.GOURAUD)},r.setInterpolationToPhong=function(){return r.setInterpolation(o.PHONG)},r.getInterpolationAsString=function(){return n.default.enumToString(o,a.interpolation)},r.setRepresentationToWireframe=function(){return r.setRepresentation(i.WIREFRAME)},r.setRepresentationToSurface=function(){return r.setRepresentation(i.SURFACE)},r.setRepresentationToPoints=function(){return r.setRepresentation(i.POINTS)},r.getRepresentationAsString=function(){return n.default.enumToString(i,a.representation)}}var l=e.newInstance=n.default.newInstance(a,"vtkProperty");e.default=Object.assign({newInstance:l,extend:a},t.default)},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=u;var r=n(t(0)),a=n(t(20)),i=n(t(206)),t=n(t(203));function n(e){return e&&e.__esModule?e:{default:e}}var o=["pointData","cellData","fieldData"],s={};function u(e,t){var n;Object.assign(t,s,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),r.default.obj(e,t),r.default.setGet(e,t,o),(n=t).classHierarchy.push("vtkDataSet"),o.forEach(function(e){n[e]?n[e]=(0,a.default)(n[e]):n[e]=i.default.newInstance()})}var l=e.newInstance=r.default.newInstance(u,"vtkDataSet");e.default=Object.assign({newInstance:l,extend:u},t.default)},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=n;var a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(t(0)),i=(r=t(19))&&r.__esModule?r:{default:r},o=t(10),s=t(35),u={openGLRenderWindow:null,glFramebuffer:null,colorTexture:null,depthTexture:null,previousDrawBinding:0,previousReadBinding:0,previousDrawBuffer:0,previousReadBuffer:0,previousActiveFramebuffer:null};function n(e,t){var n,r;Object.assign(t,u,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.obj(e,t),a.setGet(e,t,["colorTexture"]),n=e,(r=t).classHierarchy.push("vtkFramebuffer"),n.getBothMode=function(){return r.context.FRAMEBUFFER},n.saveCurrentBindingsAndBuffers=function(e){e=void 0!==e?e:n.getBothMode();n.saveCurrentBindings(e),n.saveCurrentBuffers(e)},n.saveCurrentBindings=function(e){var t=r.context;r.previousDrawBinding=t.getParameter(r.context.FRAMEBUFFER_BINDING),r.previousActiveFramebuffer=r.openGLRenderWindow.getActiveFramebuffer()},n.saveCurrentBuffers=function(e){},n.restorePreviousBindingsAndBuffers=function(e){e=void 0!==e?e:n.getBothMode();n.restorePreviousBindings(e),n.restorePreviousBuffers(e)},n.restorePreviousBindings=function(e){var t=r.context;t.bindFramebuffer(t.FRAMEBUFFER,r.previousDrawBinding),r.openGLRenderWindow.setActiveFramebuffer(r.previousActiveFramebuffer)},n.restorePreviousBuffers=function(e){},n.bind=function(){r.context.bindFramebuffer(r.context.FRAMEBUFFER,r.glFramebuffer),r.colorTexture&&r.colorTexture.bind(),r.openGLRenderWindow.setActiveFramebuffer(n)},n.create=function(e,t){r.glFramebuffer=r.context.createFramebuffer(),r.glFramebuffer.width=e,r.glFramebuffer.height=t},n.setColorBuffer=function(e,t){var n=r.context;r.colorTexture=e,n.framebufferTexture2D(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0,n.TEXTURE_2D,e.getHandle(),0)},n.getGLFramebuffer=function(){return r.glFramebuffer},n.setOpenGLRenderWindow=function(e){r.openGLRenderWindow!==e&&(n.releaseGraphicsResources(),r.openGLRenderWindow=e,r.context=null,e&&(r.context=r.openGLRenderWindow.getContext()))},n.releaseGraphicsResources=function(){r.glFramebuffer&&r.context.deleteFramebuffer(r.glFramebuffer),r.depthTexture&&r.depthTexture.releaseGraphicsResources(),r.colorTexture&&r.colorTexture.releaseGraphicsResources()},n.getSize=function(){var e=[0,0];return null!==r.glFramebuffer&&(e[0]=r.glFramebuffer.width,e[1]=r.glFramebuffer.height),e},n.populateFramebuffer=function(){n.bind();var e=r.context,t=i.default.newInstance();t.setOpenGLRenderWindow(r.openGLRenderWindow),t.setMinificationFilter(s.Filter.LINEAR),t.setMagnificationFilter(s.Filter.LINEAR),t.create2DFromRaw(r.glFramebuffer.width,r.glFramebuffer.height,4,o.VtkDataTypes.UNSIGNED_CHAR,null),n.setColorBuffer(t),r.depthTexture=e.createRenderbuffer(),e.bindRenderbuffer(e.RENDERBUFFER,r.depthTexture),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_COMPONENT16,r.glFramebuffer.width,r.glFramebuffer.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,r.depthTexture)}}var r=e.newInstance=a.newInstance(n,"vtkFramebuffer");e.default=Object.assign({newInstance:r,extend:n})},function(e,t,n){"use strict";var r=n(54);function a(e){r.call(this,e)}n(1).inherits(a,r),a.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=a},function(e,t,n){"use strict";var r=n(1);function a(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}a.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(e){},readInt:function(e){var t,n=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)n=(n<<8)+this.byteAt(t);return this.index+=e,n},readString:function(e){return r.transformTo("string",this.readData(e))},readData:function(e){},lastIndexOfSignature:function(e){},readAndCheckSignature:function(e){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},e.exports=a},function(e,t,n){"use strict";var r=n(53);function a(e){r.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}n(1).inherits(a,r),a.prototype.byteAt=function(e){return this.data[this.zero+e]},a.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),a=e.charCodeAt(3),i=this.length-4;0<=i;--i)if(this.data[i]===t&&this.data[i+1]===n&&this.data[i+2]===r&&this.data[i+3]===a)return i-this.zero;return-1},a.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),e=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&n===a[1]&&r===a[2]&&e===a[3]},a.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=a},function(e,t,n){"use strict";var r=n(1),a=n(11),i=n(54),o=n(109),s=n(108),u=n(52);e.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),"string"!==t||a.uint8array?"nodebuffer"===t?new s(e):a.uint8array?new u(r.transformTo("uint8array",e)):new i(r.transformTo("array",e)):new o(e)}},function(e,t,n){"use strict";t.LOCAL_FILE_HEADER="PK",t.CENTRAL_FILE_HEADER="PK",t.CENTRAL_DIRECTORY_END="PK",t.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",t.ZIP64_CENTRAL_DIRECTORY_END="PK",t.DATA_DESCRIPTOR="PK\b"},function(e,t,n){"use strict";var r=n(5);t.STORE={magic:"\0\0",compressWorker:function(e){return new r("STORE compression")},uncompressWorker:function(){return new r("STORE decompression")}},t.DEFLATE=n(114)},function(e,t,n){"use strict";var r=n(5),a=n(37);function i(){r.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}n(1).inherits(i,r),i.prototype.processChunk=function(e){this.streamInfo.crc32=a(e.data,this.streamInfo.crc32||0),this.push(e)},e.exports=i},function(e,t,n){"use strict";var r=n(1),a=n(5);function i(e){a.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(i,a),i.prototype.processChunk=function(e){var t;e&&(t=this.streamInfo[this.propName]||0,this.streamInfo[this.propName]=t+e.data.length),a.prototype.processChunk.call(this,e)},e.exports=i},function(e,t,n){"use strict";var r=n(1),a=n(5);function i(e){a.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}r.inherits(i,a),i.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this.data=null},i.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},i.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},i.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},e.exports=i},function(e,t,n){"use strict";t.base64=!1,t.binary=!1,t.dir=!1,t.createFolders=!0,t.date=null,t.compression=null,t.compressionOptions=null,t.comment=null,t.unixPermissions=null,t.dosPermissions=null},function(s,e,u){"use strict";!function(o){var l=u(1),a=u(118),i=u(5),c=u(67),e=u(11),t=u(21),n=null;if(e.nodestream)try{n=u(117)}catch(e){}function f(e,t){for(var n=0,r=null,a=0,i=0;i<t.length;i++)a+=t[i].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(r=new Uint8Array(a),i=0;i<t.length;i++)r.set(t[i],n),n+=t[i].length;return r;case"nodebuffer":return o.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}function r(e,t,n){var r=t;switch(t){case"blob":r="arraybuffer";break;case"arraybuffer":r="uint8array";break;case"base64":r="string"}try{this._internalType=r,this._outputType=t,this._mimeType=n,l.checkSupport(r),this._worker=e.pipe(new a(r)),e.lock()}catch(e){this._worker=new i("error"),this._worker.error(e)}}r.prototype={accumulate:function(e){return s=this,u=e,new t.Promise(function(t,n){var r=[],a=s._internalType,i=s._outputType,o=s._mimeType;s.on("data",function(e,t){r.push(e),u&&u(t)}).on("error",function(e){r=[],n(e)}).on("end",function(){try{var e=function(e,t,n,r){var a=null;switch(e){case"blob":return l.newBlob(n,r);case"base64":return a=f(t,n),c.encode(a);default:return a=f(t,n),l.transformTo(e,a)}}(i,a,r,o);t(e)}catch(e){n(e)}r=[]}).resume()});var s,u},on:function(e,t){var n=this;return"data"===e?this._worker.on(e,function(e){t.call(n,e.data,e.meta)}):this._worker.on(e,function(){l.delay(t,arguments,n)}),this},resume:function(){return l.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(l.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new n(this,{objectMode:"nodebuffer"!==this._outputType},e)}},s.exports=r}.call(this,u(23).Buffer)},function(e,t,n){var r=n(40),a=n(26).document,i=r(a)&&r(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t,n){var i=n(132);e.exports=function(r,a,e){if(i(r),void 0===a)return r;switch(e){case 1:return function(e){return r.call(a,e)};case 2:return function(e,t){return r.call(a,e,t)};case 3:return function(e,t,n){return r.call(a,e,t,n)}}return function(){return r.apply(a,arguments)}}},function(e,t){e=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},function(e,t,n){"use strict";var f=n(1),c=n(11),d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";t.encode=function(e){for(var t,n,r,a,i,o,s=[],u=0,l=e.length,c="string"!==f.getTypeOf(e);u<e.length;)o=l-u,r=c?(t=e[u++],n=u<l?e[u++]:0,u<l?e[u++]:0):(t=e.charCodeAt(u++),n=u<l?e.charCodeAt(u++):0,u<l?e.charCodeAt(u++):0),a=(3&t)<<4|n>>4,i=1<o?(15&n)<<2|r>>6:64,o=2<o?63&r:64,s.push(d.charAt(t>>2)+d.charAt(a)+d.charAt(i)+d.charAt(o));return s.join("")},t.decode=function(e){var t,n,r,a,i,o=0,s=0;if("data:"===e.substr(0,"data:".length))throw new Error("Invalid base64 input, it looks like a data url.");var u,l=3*(e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"")).length/4;if(e.charAt(e.length-1)===d.charAt(64)&&l--,e.charAt(e.length-2)===d.charAt(64)&&l--,l%1!=0)throw new Error("Invalid base64 input, bad content length.");for(u=new(c.uint8array?Uint8Array:Array)(0|l);o<e.length;)t=d.indexOf(e.charAt(o++))<<2|(a=d.indexOf(e.charAt(o++)))>>4,n=(15&a)<<4|(a=d.indexOf(e.charAt(o++)))>>2,r=(3&a)<<6|(i=d.indexOf(e.charAt(o++))),u[s++]=t,64!==a&&(u[s++]=n),64!==i&&(u[s++]=r);return u}},function(e,t,n){"use strict";e.exports=a;var r=n(14),e=Object.create(n(22));function a(e){if(!(this instanceof a))return new a(e);r.call(this,e),this._transformState={afterTransform:function(e,t){var n=this._transformState,r=(n.transforming=!1,n.writecb);if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,(n.writecb=null)!=t&&this.push(t),r(e);n=this._readableState;n.reading=!1,(n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark)}.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",i)}function i(){var n=this;"function"==typeof this._flush?this._flush(function(e,t){o(n,e,t)}):o(this,null,null)}function o(e,t,n){if(t)return e.emit("error",t);if(null!=n&&e.push(n),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}e.inherits=n(15),e.inherits(a,r),a.prototype.push=function(e,t){return this._transformState.needTransform=!1,r.prototype.push.call(this,e,t)},a.prototype._transform=function(e,t,n){throw new Error("_transform() is not implemented")},a.prototype._write=function(e,t,n){var r=this._transformState;r.writecb=n,r.writechunk=e,r.writeencoding=t,r.transforming||(n=this._readableState,(r.needTransform||n.needReadable||n.length<n.highWaterMark)&&this._read(n.highWaterMark))},a.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},a.prototype._destroy=function(e,t){var n=this;r.prototype._destroy.call(this,e,function(e){t(e),n.emit("close")})}},function(c,e,t){"use strict";var n=t(28).Buffer,r=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===r||!r(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=s,this.end=u,t=4;break;case"utf8":this.fillLast=o,t=4;break;case"base64":this.text=l,this.end=f,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function i(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function o(e){var t,n=this.lastTotal-this.lastNeed,r=(t=this,128!=(192&(r=e)[0])?(t.lastNeed=0,"�"):1<t.lastNeed&&1<r.length?128!=(192&r[1])?(t.lastNeed=1,"�"):2<t.lastNeed&&2<r.length&&128!=(192&r[2])?(t.lastNeed=2,"�"):void 0:void 0);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,n,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,n,0,e.length),void(this.lastNeed-=e.length))}function s(e,t){if((e.length-t)%2!=0)return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1);t=e.toString("utf16le",t);if(t){var n=t.charCodeAt(t.length-1);if(55296<=n&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],t.slice(0,-1)}return t}function u(e){var t,e=e&&e.length?this.write(e):"";return this.lastNeed?(t=this.lastTotal-this.lastNeed,e+this.lastChar.toString("utf16le",0,t)):e}function l(e,t){var n=(e.length-t)%3;return 0==n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1==n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){e=e&&e.length?this.write(e):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}(e.StringDecoder=a).prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n<e.length?t?t+this.text(e,n):this.text(e,n):t||""},a.prototype.end=function(e){e=e&&e.length?this.write(e):"";return this.lastNeed?e+"�":e},a.prototype.text=function(e,t){var n=function(e,t,n){var r=t.length-1;if(r<n)return 0;var a=i(t[r]);return 0<=a?(0<a&&(e.lastNeed=a-1),a):--r<n||-2===a?0:0<=(a=i(t[r]))?(0<a&&(e.lastNeed=a-2),a):!(--r<n||-2===a)&&0<=(a=i(t[r]))?(0<a&&(2===a?a=0:e.lastNeed=a-3),a):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;n=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";var i=n(29);function o(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,r=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return r||a?t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,i.nextTick(o,this,e)):i.nextTick(o,this,e)):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(e){!t&&e?n._writableState?n._writableState.errorEmitted||(n._writableState.errorEmitted=!0,i.nextTick(o,n,e)):i.nextTick(o,n,e):t&&t(e)})),this},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,n){e.exports=n(43).EventEmitter},function(C,e,O){"use strict";!function(e,v){var M=O(29);C.exports=r;function A(e,t){return e.listeners(t).length}var i,o,y=O(74),n=(r.ReadableState=a,O(43).EventEmitter,O(71)),f=O(28).Buffer,h=(void 0!==e?e:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},e=Object.create(O(22)),t=(e.inherits=O(15),O(144)),m=void 0,m=t&&t.debuglog?t.debuglog("stream"):function(){},s=O(143),t=O(70),u=(e.inherits(r,n),["error","close","destroy","pause","resume"]);function a(e,t){var t=t instanceof(i=i||O(14)),n=(this.objectMode=!!(e=e||{}).objectMode,t&&(this.objectMode=this.objectMode||!!e.readableObjectMode),e.highWaterMark),r=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:t&&(r||0===r)?r:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new s,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(o=o||O(69).StringDecoder,this.decoder=new o(e.encoding),this.encoding=e.encoding)}function r(e){if(i=i||O(14),!(this instanceof r))return new r(e);this._readableState=new a(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),n.call(this)}function l(e,t,c,n,r){var a,i,o,s,u,l=e._readableState;return null===t?(l.reading=!1,o=e,(s=l).ended||(!s.decoder||(u=s.decoder.end())&&u.length&&(s.buffer.push(u),s.length+=s.objectMode?1:u.length),s.ended=!0,d(o))):(r||(u=l,o=s=t,a=i=f.isBuffer(o)||o instanceof h||"string"==typeof s||void 0===s||u.objectMode?i:new TypeError("Invalid non-string/buffer chunk")),a?e.emit("error",a):l.objectMode||t&&0<t.length?("string"==typeof t||l.objectMode||Object.getPrototypeOf(t)===f.prototype||(r=t,t=f.from(r)),n?l.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):g(e,l,t,!0):l.ended?e.emit("error",new Error("stream.push() after EOF")):(l.reading=!1,l.decoder&&!c?(t=l.decoder.write(t),l.objectMode||0!==t.length?g(e,l,t,!1):T(e,l)):g(e,l,t,!1))):n||(l.reading=!1)),!l.ended&&(l.needReadable||l.length<l.highWaterMark||0===l.length)}function g(e,t,n,r){t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&d(e)),T(e,t)}Object.defineProperty(r.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),r.prototype.destroy=t.destroy,r.prototype._undestroy=t.undestroy,r.prototype._destroy=function(e,t){this.push(null),t(e)},r.prototype.push=function(e,t){var n,r=this._readableState;return r.objectMode?n=!0:"string"==typeof e&&((t=t||r.defaultEncoding)!==r.encoding&&(e=f.from(e,t),t=""),n=!0),l(this,e,t,!1,n)},r.prototype.unshift=function(e){return l(this,e,null,!0,!1)},r.prototype.isPaused=function(){return!1===this._readableState.flowing},r.prototype.setEncoding=function(e){return o=o||O(69).StringDecoder,this._readableState.decoder=new o(e),this._readableState.encoding=e,this};function c(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?(t.flowing&&t.length?t.buffer.head.data:t).length:(e>t.highWaterMark&&(t.highWaterMark=(8388608<=(n=e)?n=8388608:(n--,n=(n=(n=(n=(n|=n>>>1)|n>>>2)|n>>>4)|n>>>8)|n>>>16,n++),n)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0));var n}function d(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(m("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?M.nextTick(p,e):p(e))}function p(e){m("emit readable"),e.emit("readable"),x(e)}function T(e,t){t.readingMore||(t.readingMore=!0,M.nextTick(w,e,t))}function w(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(m("maybeReadMore read 0"),e.read(0),n!==t.length);)n=t.length;t.readingMore=!1}function b(e){m("readable nexttick read 0"),e.read(0)}function D(e,t){t.reading||(m("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),x(e),t.flowing&&!t.reading&&e.read(0)}function x(e){var t=e._readableState;for(m("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?a=t.buffer.shift():!e||e>=t.length?(a=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):(e=e,n=t.buffer,t=t.decoder,e<n.head.data.length?(r=n.head.data.slice(0,e),n.head.data=n.head.data.slice(e)):r=e===n.head.data.length?n.shift():(t?function(e,t){var n=t.head,r=1,a=n.data;for(e-=a.length;n=n.next;){var i=n.data,o=e>i.length?i.length:e;if(o===i.length?a+=i:a+=i.slice(0,e),0==(e-=o)){o===i.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n).data=i.slice(o);break}++r}return t.length-=r,a}:function(e,t){var n=f.allocUnsafe(e),r=t.head,a=1;for(r.data.copy(n),e-=r.data.length;r=r.next;){var i=r.data,o=e>i.length?i.length:e;if(i.copy(n,n.length-e,0,o),0==(e-=o)){o===i.length?(++a,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r).data=i.slice(o);break}++a}return t.length-=a,n})(e,n),a=r),a);var n,r,a}function E(e){var t=e._readableState;if(0<t.length)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,M.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function L(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}r.prototype.read=function(e){m("read",e),e=parseInt(e,10);var t=this._readableState,n=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return m("read: emitReadable",t.length,t.ended),(0===t.length&&t.ended?E:d)(this),null;if(0===(e=c(e,t))&&t.ended)return 0===t.length&&E(this),null;var r=t.needReadable;return m("need readable",r),(0===t.length||t.length-e<t.highWaterMark)&&m("length less than watermark",r=!0),t.ended||t.reading?m("reading or ended",r=!1):r&&(m("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=c(n,t))),null===(r=0<e?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&E(this)),null!==r&&this.emit("data",r),r},r.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},r.prototype.pipe=function(r,e){var a=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=r;break;case 1:i.pipes=[i.pipes,r];break;default:i.pipes.push(r)}i.pipesCount+=1,m("pipe count=%d opts=%j",i.pipesCount,e);e=e&&!1===e.end||r===v.stdout||r===v.stderr?l:c;function c(){m("onend"),r.end()}i.endEmitted?M.nextTick(e):a.once("end",e),r.on("unpipe",function e(t,n){m("onunpipe"),t===a&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,m("cleanup"),r.removeListener("close",g),r.removeListener("finish",p),r.removeListener("drain",s),r.removeListener("error",h),r.removeListener("unpipe",e),a.removeListener("end",c),a.removeListener("end",l),a.removeListener("data",d),f=!0,!i.awaitDrain||r._writableState&&!r._writableState.needDrain||s())});t=a;var t,n,o,s=function(){var e=t._readableState;m("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&A(t,"data")&&(e.flowing=!0,x(t))},f=(r.on("drain",s),!1),u=!1;function d(e){m("ondata"),(u=!1)!==r.write(e)||u||((1===i.pipesCount&&i.pipes===r||1<i.pipesCount&&-1!==L(i.pipes,r))&&!f&&(m("false write response, pause",i.awaitDrain),i.awaitDrain++,u=!0),a.pause())}function h(e){m("onerror",e),l(),r.removeListener("error",h),0===A(r,"error")&&r.emit("error",e)}function g(){r.removeListener("finish",p),l()}function p(){m("onfinish"),r.removeListener("close",g),l()}function l(){m("unpipe"),a.unpipe(r)}return a.on("data",d),e="error",o=h,"function"==typeof(n=r).prependListener?n.prependListener(e,o):n._events&&n._events[e]?y(n._events[e])?n._events[e].unshift(o):n._events[e]=[o,n._events[e]]:n.on(e,o),r.once("close",g),r.once("finish",p),r.emit("pipe",a),i.flowing||(m("pipe resume"),a.resume()),r},r.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e=e||t.pipes,t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,a=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i<a;i++)r[i].emit("unpipe",this,{hasUnpiped:!1});return this}var o=L(t.pipes,e);return-1===o||(t.pipes.splice(o,1),--t.pipesCount,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,n)),this},r.prototype.addListener=r.prototype.on=function(e,t){t=n.prototype.on.call(this,e,t);return"data"===e?!1!==this._readableState.flowing&&this.resume():"readable"===e&&((e=this._readableState).endEmitted||e.readableListening||(e.readableListening=e.needReadable=!0,e.emittedReadable=!1,e.reading?e.length&&d(this):M.nextTick(b,this))),t},r.prototype.resume=function(){var e,t=this._readableState;return t.flowing||(m("resume"),t.flowing=!0,e=this,(t=t).resumeScheduled||(t.resumeScheduled=!0,M.nextTick(D,e,t))),this},r.prototype.pause=function(){return m("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(m("pause"),this._readableState.flowing=!1,this.emit("pause")),this},r.prototype.wrap=function(t){var e,n=this,r=this._readableState,a=!1;for(e in t.on("end",function(){var e;m("wrapped end"),r.decoder&&!r.ended&&(e=r.decoder.end())&&e.length&&n.push(e),n.push(null)}),t.on("data",function(e){m("wrapped data"),r.decoder&&(e=r.decoder.write(e)),r.objectMode&&null==e||!(r.objectMode||e&&e.length)||n.push(e)||(a=!0,t.pause())}),t)void 0===this[e]&&"function"==typeof t[e]&&(this[e]=function(e){return function(){return t[e].apply(t,arguments)}}(e));for(var i=0;i<u.length;i++)t.on(u[i],this.emit.bind(this,u[i]));return this._read=function(e){m("wrapped _read",e),a&&(a=!1,t.resume())},this},Object.defineProperty(r.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),r._fromList=N}.call(this,O(8),O(36))},function(e,t,n){e.exports=n(145)},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var u=r(t(30)),n=r(t(0)),l=r(t(44)),c=t(10);function r(e){return e&&e.__esModule?e:{default:e}}var f=n.default.vtkErrorMacro,d=n.default.vtkDebugMacro,h=0;e.default={fetchArray:function(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},i=arguments[1],o=arguments[2],s=3<arguments.length&&void 0!==arguments[3]?arguments[3]:{};return o.ref&&!o.ref.pending?new Promise(function(t,n){var r=new XMLHttpRequest,e=[i,o.ref.basepath,s.compression?o.ref.id+".gz":o.ref.id].join("/");r.onreadystatechange=function(e){1===r.readyState&&(o.ref.pending=!0,1==++h&&a.invokeBusy&&a.invokeBusy(!0)),4===r.readyState&&(o.ref.pending=!1,200===r.status||0===r.status?(o.buffer=r.response,s.compression&&("string"===o.dataType||"JSON"===o.dataType?o.buffer=u.default.inflate(new Uint8Array(o.buffer),{to:"string"}):o.buffer=u.default.inflate(new Uint8Array(o.buffer)).buffer),"JSON"===o.ref.encode?o.values=JSON.parse(o.buffer):(l.default.ENDIANNESS!==o.ref.encode&&l.default.ENDIANNESS&&(d("Swap bytes of "+o.name),l.default.swapBytes(o.buffer,c.DataTypeByteSize[o.dataType])),o.values=new window[o.dataType](o.buffer)),o.values.length!==o.size&&f("Error in FetchArray: "+o.name+", does not have the proper array size. Got "+o.values.length+", instead of "+o.size),delete o.ref,0==--h&&a.invokeBusy&&a.invokeBusy(!1),a.modified&&a.modified(),t(o)):n({xhr:r,e:e}))},s&&s.progressCallback&&r.addEventListener("progress",s.progressCallback),r.open("GET",e,!0),r.responseType=s.compression||"string"!==o.dataType?"arraybuffer":"text",r.send()}):Promise.resolve(o)},fetchJSON:function(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=arguments[1],i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};return new Promise(function(t,n){var r=new XMLHttpRequest;r.onreadystatechange=function(e){1===r.readyState&&1==++h&&a.invokeBusy&&a.invokeBusy(!0),4===r.readyState&&(0==--h&&a.invokeBusy&&a.invokeBusy(!1),200===r.status||0===r.status?i.compression?t(JSON.parse(u.default.inflate(new Uint8Array(r.response),{to:"string"}))):t(JSON.parse(r.responseText)):n({xhr:r,e:e}))},i&&i.progressCallback&&r.addEventListener("progress",i.progressCallback),r.open("GET",e,!0),r.responseType=i.compression?"arraybuffer":"text",r.send()})},fetchText:function(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=arguments[1],i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};return i&&i.compression&&"gz"!==i.compression&&(f("Supported algorithms are: [gz]"),f("Unkown compression algorithm: "+i.compression)),new Promise(function(t,n){var r=new XMLHttpRequest;r.onreadystatechange=function(e){1===r.readyState&&1==++h&&a.invokeBusy&&a.invokeBusy(!0),4===r.readyState&&(0==--h&&a.invokeBusy&&a.invokeBusy(!1),200===r.status||0===r.status?i.compression?t(u.default.inflate(new Uint8Array(r.response),{to:"string"})):t(r.responseText):n({xhr:r,e:e}))},i.progressCallback&&r.addEventListener("progress",i.progressCallback),r.open("GET",e,!0),r.responseType=i.compression?"arraybuffer":"text",r.send()})},fetchBinary:function(e){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};return new Promise(function(t,n){var r=new XMLHttpRequest;r.onreadystatechange=function(e){4===r.readyState&&(200===r.status||0===r.status?t(r.response):n({xhr:r,e:e}))},a&&a.progressCallback&&r.addEventListener("progress",a.progressCallback),r.open("GET",e,!0),r.responseType="arraybuffer",r.send()})}}},function(e,t,n){"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},function(e,t,n){"use strict";e.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},function(e,t,n){"use strict";var u=n(12),a=!0,i=!0;try{String.fromCharCode.apply(null,[0])}catch(e){a=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){i=!1}for(var l=new u.Buf8(256),r=0;r<256;r++)l[r]=252<=r?6:248<=r?5:240<=r?4:224<=r?3:192<=r?2:1;function c(e,t){if(t<65534&&(e.subarray&&i||!e.subarray&&a))return String.fromCharCode.apply(null,u.shrinkBuf(e,t));for(var n="",r=0;r<t;r++)n+=String.fromCharCode(e[r]);return n}l[254]=l[254]=1,t.string2buf=function(e){for(var t,n,r,a,i=e.length,o=0,s=0;s<i;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<i&&56320==(64512&(r=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(r-56320),s++),o+=n<128?1:n<2048?2:n<65536?3:4;for(t=new u.Buf8(o),s=a=0;a<o;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<i&&56320==(64512&(r=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(r-56320),s++),n<128?t[a++]=n:(n<2048?t[a++]=192|n>>>6:(n<65536?t[a++]=224|n>>>12:(t[a++]=240|n>>>18,t[a++]=128|n>>>12&63),t[a++]=128|n>>>6&63),t[a++]=128|63&n);return t},t.buf2binstring=function(e){return c(e,e.length)},t.binstring2buf=function(e){for(var t=new u.Buf8(e.length),n=0,r=t.length;n<r;n++)t[n]=e.charCodeAt(n);return t},t.buf2string=function(e,t){for(var n,r,a=t||e.length,i=new Array(2*a),o=0,s=0;s<a;)if((n=e[s++])<128)i[o++]=n;else if(4<(r=l[n]))i[o++]=65533,s+=r-1;else{for(n&=2===r?31:3===r?15:7;1<r&&s<a;)n=n<<6|63&e[s++],r--;1<r?i[o++]=65533:n<65536?i[o++]=n:(n-=65536,i[o++]=55296|n>>10&1023,i[o++]=56320|1023&n)}return c(i,o)},t.utf8border=function(e,t){for(var n=(t=(t=t||e.length)>e.length?e.length:t)-1;0<=n&&128==(192&e[n]);)n--;return!(n<0)&&0!==n&&n+l[e[n]]>t?n:t}},function(e,t,n){"use strict";var s=function(){for(var e=[],t=0;t<256;t++){for(var n=t,r=0;r<8;r++)n=1&n?3988292384^n>>>1:n>>>1;e[t]=n}return e}();e.exports=function(e,t,n,r){var a=s,i=r+n;e^=-1;for(var o=r;o<i;o++)e=e>>>8^a[255&(e^t[o])];return-1^e}},function(e,t,n){"use strict";e.exports=function(e,t,n,r){for(var a=65535&e|0,i=e>>>16&65535|0,o=0;0!==n;){for(n-=o=2e3<n?2e3:n;i=i+(a=a+t[r++]|0)|0,--o;);a%=65521,i%=65521}return a|i<<16|0}},function(e,t,i){"use strict";t.byteLength=function(e){var e=c(e),t=e[0],e=e[1];return 3*(t+e)/4-e},t.toByteArray=function(e){for(var t,n=c(e),r=n[0],n=n[1],a=new l(3*(r+n)/4-n),i=0,o=0<n?r-4:r,s=0;s<o;s+=4)t=u[e.charCodeAt(s)]<<18|u[e.charCodeAt(s+1)]<<12|u[e.charCodeAt(s+2)]<<6|u[e.charCodeAt(s+3)],a[i++]=t>>16&255,a[i++]=t>>8&255,a[i++]=255&t;return 2===n&&(t=u[e.charCodeAt(s)]<<2|u[e.charCodeAt(s+1)]>>4,a[i++]=255&t),1===n&&(t=u[e.charCodeAt(s)]<<10|u[e.charCodeAt(s+1)]<<4|u[e.charCodeAt(s+2)]>>2,a[i++]=t>>8&255,a[i++]=255&t),a},t.fromByteArray=function(e){for(var t,n=e.length,r=n%3,a=[],i=0,o=n-r;i<o;i+=16383)a.push(function(e,t,n){for(var r,a=[],i=t;i<n;i+=3)r=(e[i]<<16&16711680)+(e[i+1]<<8&65280)+(255&e[i+2]),a.push(function(e){return s[e>>18&63]+s[e>>12&63]+s[e>>6&63]+s[63&e]}(r));return a.join("")}(e,i,o<i+16383?o:i+16383));return 1==r?(t=e[n-1],a.push(s[t>>2]+s[t<<4&63]+"==")):2==r&&(t=(e[n-2]<<8)+e[n-1],a.push(s[t>>10]+s[t>>4&63]+s[t<<2&63]+"=")),a.join("")};for(var s=[],u=[],l="undefined"!=typeof Uint8Array?Uint8Array:Array,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=0,a=n.length;r<a;++r)s[r]=n[r],u[n.charCodeAt(r)]=r;function c(e){var t=e.length;if(0<t%4)throw new Error("Invalid string. Length must be a multiple of 4");e=e.indexOf("=");return[e=-1===e?t:e,e===t?0:4-e%4]}u["-".charCodeAt(0)]=62,u["_".charCodeAt(0)]=63},function(e,r,a){"use strict";!function(o){Object.defineProperty(r,"__esModule",{value:!0}),r.newInstance=void 0,r.extend=t;var s=e(a(0)),u=e(a(83)),l=e(a(159)),c=e(a(48)),g=e(a(105)),p=e(a(46));function e(e){return e&&e.__esModule?e:{default:e}}var M=s.default.vtkWarningMacro,f=s.default.vtkErrorMacro,m=1;function d(e,t){t.actor&&e.actor.set(t.actor),t.actorRotation&&e.actor.rotateWXYZ(t.actorRotation[0],t.actorRotation[1],t.actorRotation[2],t.actorRotation[3]),t.property&&e.actor.getProperty().set(t.property),t.mapper&&(t.mapper.colorByArrayName&&(e.source.enableArray(t.mapper.colorByArrayName,t.mapper.colorByArrayName),e.source.loadData()),e.mapper.set(t.mapper)),t.lookupTable&&(e.mapper.getLookupTable().set(t.lookupTable),e.mapper.getLookupTable().build())}var h={httpDataSetReader:function(e,t,n){var r,a=l.default.newInstance({fetchGzip:t.fetchGzip,dataAccessHelper:t.dataAccessHelper}),i=u.default.newInstance(),o=c.default.newInstance(),s={name:e.name||"Item "+m++,source:a,mapper:o,actor:i,defaultSettings:e};return e.texture&&(r=l.default.newInstance({fetchGzip:t.fetchGzip,dataAccessHelper:t.dataAccessHelper})).setUrl([t.baseURL,e.texture].join("/"),{loadData:!0}).then(function(){var e=g.default.newInstance();e.setInterpolate(!0),e.setRepeat(!0),e.setInputData(r.getOutputData()),i.addTexture(e),s.texture=e}),t.renderer.addActor(i),i.setMapper(o),o.setInputConnection(a.getOutputPort()),a.setUrl([t.baseURL,e.httpDataSetReader.url].join("/")).then(function(){a.loadData().then(function(){n.invokeReady()})}),d(s,e),t.scene.push(s),s}};var v={fetchGzip:!1,url:null,baseURL:null};function t(e,t){var n,r,a;function i(e){var t=r.renderer.getActiveCamera();t?t.set(e):f("No active camera to update")}Object.assign(t,v,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),s.default.obj(e,t),s.default.get(e,t,["fetchGzip","url","baseURL","scene"]),s.default.setGet(e,t,["renderer"]),s.default.event(e,t,"ready"),n=e,a={},(r=t).classHierarchy.push("vtkHttpSceneLoader"),r.scene||(r.scene=[]),r.dataAccessHelper||(r.dataAccessHelper=p.default.get("http")),n.update=function(){r.renderer?r.dataAccessHelper.fetchJSON(n,r.url).then(function(e){var t;void 0!==e.fetchGzip&&(r.fetchGzip=e.fetchGzip),e.background&&(t=r.renderer).setBackground.apply(t,function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}(e.background)),e.camera&&(a.camera=e.camera,i(e.camera)),e.scene&&(e.scene.forEach(function(e){var t=h[e.type];t&&t(e,r,n)}),o.scene=r.scene)},function(e){f("Error fetching scene "+e)}):M("No renderer provided, skip update process")},n.resetScene=function(){a.camera&&i(a.camera)},n.setUrl=function(e){return-1===e.indexOf("index.json")?(r.baseURL=e,r.url=e+"/index.json"):((e=(r.url=e).split("/")).pop(),r.baseURL=e.join("/")),n.update()}}var n=r.newInstance=s.default.newInstance(t,"vtkHttpSceneLoader");r.default={newInstance:n,extend:t,applySettings:d,updateDatasetTypeMapping:function(e,t){h[e]=t}}}.call(this,a(8))},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var o=t(3),s=n(t(0)),u=n(t(161)),l=n(t(49));function n(e){return e&&e.__esModule?e:{default:e}}var c=s.default.vtkDebugMacro,f={mapper:null,property:null,backfaceProperty:null,forceOpaque:!1,forceTranslucent:!1,bounds:[1,-1,1,-1,1,-1]};function r(e,t){var r,a,n,i=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,f,i),u.default.extend(e,t,i),t.boundsMTime={},s.default.obj(t.boundsMTime),s.default.set(e,t,["property"]),s.default.setGet(e,t,["backfaceProperty","forceOpaque","forceTranslucent","mapper"]),r=e,(a=t).classHierarchy.push("vtkActor"),n=Object.assign({},r),r.getActors=function(){return r},r.getIsOpaque=function(){if(a.forceOpaque)return!0;if(a.forceTranslucent)return!1;a.property||r.getProperty();var e=1<=a.property.getOpacity();return(e=e&&(!a.texture||!a.texture.isTranslucent()))&&(!a.mapper||a.mapper.getIsOpaque())},r.hasTranslucentPolygonalGeometry=function(){return null!==a.mapper&&(null===a.property&&r.setProperty(r.makeProperty()),!r.getIsOpaque())},r.makeProperty=l.default.newInstance,r.getProperty=function(){return null===a.property&&(a.property=r.makeProperty()),a.property},r.getBounds=function(){if(null===a.mapper)return a.bounds;var t,n,e=a.mapper.getBounds();return e&&6===e.length?e[0]>e[1]?(a.mapperBounds=e.concat(),a.bounds=[1,-1,1,-1,1,-1],a.boundsMTime.modified(),e):((!a.mapperBounds||e[0]!==a.mapperBounds[0]||e[1]!==a.mapperBounds[1]||e[2]!==a.mapperBounds[2]||e[3]!==a.mapperBounds[3]||e[4]!==a.mapperBounds[4]||e[5]!==a.mapperBounds[5]||r.getMTime()>a.boundsMTime.getMTime())&&(c("Recomputing bounds..."),a.mapperBounds=e.concat(),t=[o.vec3.fromValues(e[1],e[3],e[5]),o.vec3.fromValues(e[1],e[2],e[5]),o.vec3.fromValues(e[0],e[2],e[5]),o.vec3.fromValues(e[0],e[3],e[5]),o.vec3.fromValues(e[1],e[3],e[4]),o.vec3.fromValues(e[1],e[2],e[4]),o.vec3.fromValues(e[0],e[2],e[4]),o.vec3.fromValues(e[0],e[3],e[4])],r.computeMatrix(),n=o.mat4.create(),o.mat4.transpose(n,a.matrix),t.forEach(function(e){return o.vec3.transformMat4(e,e,n)}),a.bounds[0]=a.bounds[2]=a.bounds[4]=Number.MAX_VALUE,a.bounds[1]=a.bounds[3]=a.bounds[5]=-Number.MAX_VALUE,a.bounds=a.bounds.map(function(e,n){return n%2==0?t.reduce(function(e,t){return e>t[n/2]?t[n/2]:e},e):t.reduce(function(e,t){return e<t[(n-1)/2]?t[(n-1)/2]:e},e)}),a.boundsMTime.modified()),a.bounds):e},r.getMTime=function(){var e,t=n.getMTime();return null!==a.property&&(t=t<(e=a.property.getMTime())?e:t),t=null!==a.backfaceProperty?t<(e=a.backfaceProperty.getMTime())?e:t:t},r.getRedrawMTime=function(){var e,t=a.mtime;return null!==a.mapper&&(t=t<(e=a.mapper.getMTime())?e:t,null!==a.mapper.getInput()&&(a.mapper.getInputAlgorithm().update(),t=(e=a.mapper.getInput().getMTime())>t?e:t)),t},r.getSupportsSelection=function(){return!!a.mapper&&a.mapper.getSupportsSelection()}}t=e.newInstance=s.default.newInstance(r,"vtkActor");e.default={newInstance:t,extend:r}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var i=n(t(0)),o=n(t(20)),s=n(t(163)),u=n(t(162));function n(e){return e&&e.__esModule?e:{default:e}}var l=["verts","lines","polys","strips"],c={};function r(e,t){var n,r,a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,c,a),u.default.extend(e,t,a),i.default.setGet(e,t,["verts","lines","polys","strips"]),n=e,(r=t).classHierarchy.push("vtkPolyData"),l.forEach(function(e){n["getNumberOf"+e.replace(/(?:^\w|[A-Z]|\b\w)/g,function(e){return e.toUpperCase()}).replace(/\s+/g,"")]=function(){return r[e].getNumberOfCells()},r[e]?r[e]=(0,o.default)(r[e]):r[e]=s.default.newInstance()}),n.getNumberOfCells=function(){return l.reduce(function(e,t){return e+r[t].getNumberOfCells()},0)}}t=e.newInstance=i.default.newInstance(r,"vtkPolyData");e.default={newInstance:t,extend:r}},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=o;var n=r(t(0)),a=r(t(7)),t=t(10);function r(e){return e&&e.__esModule?e:{default:e}}var i=n.default.vtkErrorMacro,s=[1,-1,1,-1,1,-1],u={empty:!0,numberOfComponents:3,dataType:t.VtkDataTypes.FLOAT,bounds:[1,-1,1,-1,1,-1]};function o(e,t){var n,o,r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,u,r),a.default.extend(e,t,r),n=e,(o=t).classHierarchy.push("vtkPoints"),n.getNumberOfPoints=n.getNumberOfTuples,n.setNumberOfPoints=function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:3;n.getNumberOfPoints()!==e&&(o.size=e*t,o.values=new window[o.dataType](o.size),n.setNumberOfComponents(t),n.modified())},n.setPoint=function(e){for(var t=arguments.length,n=Array(1<t?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];for(var a=e*o.numberOfComponents,i=0;i<o.numberOfComponents;i++)o.values[a+i]=n[i]},n.getPoint=n.getTuple,n.getBounds=function(){if(3===n.getNumberOfComponents())return e=n.getRange(0),o.bounds[0]=e[0],o.bounds[1]=e[1],e=n.getRange(1),o.bounds[2]=e[0],o.bounds[3]=e[1],e=n.getRange(2),o.bounds[4]=e[0],o.bounds[5]=e[1],o.bounds;if(2!==n.getNumberOfComponents())return i("getBounds called on an array with components of\n        "+n.getNumberOfComponents()),s;var e=n.getRange(0),e=(o.bounds[0]=e[0],o.bounds[1]=e[1],n.getRange(1));return o.bounds[2]=e[0],o.bounds[3]=e[1],o.bounds[4]=0,o.bounds[5]=0,o.bounds},n.computeBounds=n.getBounds}t=e.newInstance=n.default.newInstance(o,"vtkPoints");e.default={newInstance:t,extend:o}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.Device={Unknown:0,LeftController:1,RightController:2},a=t.Input={Unknown:0,Trigger:1,TrackPad:2,Grip:3,ApplicationMenu:4};t.default={Device:r,Input:a}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.States={IS_START:0,IS_NONE:0,IS_ROTATE:1,IS_PAN:2,IS_SPIN:3,IS_DOLLY:4,IS_CAMERA_POSE:11,IS_WINDOW_LEVEL:1024,IS_SLICE:1025};t.default={States:r}},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=a;var f=n(t(0)),y=n(t(2)),T=n(t(166)),t=n(t(86));function n(e){return e&&e.__esModule?e:{default:e}}var g=t.default.Device,p=t.default.Input,M=f.default.vtkWarningMacro,m=f.default.vtkErrorMacro,w=f.default.normalizeWheel,v={"OpenVR Gamepad":[p.TrackPad,p.Trigger,p.Grip,p.ApplicationMenu]},A=["StartAnimation","Animation","EndAnimation","StartMouseMove","MouseMove","EndMouseMove","LeftButtonPress","LeftButtonRelease","MiddleButtonPress","MiddleButtonRelease","RightButtonPress","RightButtonRelease","KeyPress","KeyDown","KeyUp","StartMouseWheel","MouseWheel","EndMouseWheel","StartPinch","Pinch","EndPinch","StartPan","Pan","EndPan","StartRotate","Rotate","EndRotate","Button3D","Move3D"];function b(e){return e.stopPropagation(),e.preventDefault(),!1}var D={renderWindow:null,interactorStyle:null,picker:null,pickingManager:null,initialized:!1,enabled:!1,enableRender:!0,currentRenderer:null,lightFollowCamera:!0,desiredUpdateRate:30,stillUpdateRate:2,container:null,view:null,recognizeGestures:!0,currentGesture:"Start",animationRequest:null,lastFrameTime:.1,wheelTimeoutID:0,moveTimeoutID:0,lastGamepadValues:{}};function a(t,n){var d,h,r;function u(e,t){h.currentRenderer=d.findPokedRenderer(e,t)}function a(e){var t=h.container.getBoundingClientRect(),n=h.view.getCanvas(),r=n.width/t.width,n=n.height/t.height,r={x:r*(e.clientX-t.left),y:n*(t.height-e.clientY+t.top),z:0};return u(r.x,r.y),r}function i(e){for(var t={},n=0;n<e.length;n++){var r=e[n];t[r.identifier]=a(r)}return t}function o(e){return{controlKey:e.ctrlKey,altKey:e.altKey,shiftKey:e.shiftKey}}function l(e){var t=o(e),e={key:e.key,keyCode:e.charCode};return Object.assign(e,t),e}function s(e){var t=document.querySelector("body"),n=e?"addEventListener":"removeEventListener";h.container&&h.container[e?"removeEventListener":"addEventListener"]("mousemove",d.handleMouseMove),t[n]("mouseup",d.handleMouseUp),t[n]("mousemove",d.handleMouseMove),t[n]("touchend",d.handleTouchEnd,!1),t[n]("touchcancel",d.handleTouchEnd,!1),t[n]("touchmove",d.handleTouchMove,!1)}function c(){h.view&&h.enabled&&h.enableRender&&(h.inRender=!0,h.view.traverseAllPasses(),h.inRender=!1),d.invokeRenderEvent()}Object.assign(n,D,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),f.default.obj(t,n),f.default.event(t,n,"RenderEvent"),A.forEach(function(e){return f.default.event(t,n,e)}),f.default.get(t,n,["initialized","container","enabled","enableRender","interactorStyle","lastFrameTime","view"]),f.default.setGet(t,n,["lightFollowCamera","enabled","recognizeGestures","desiredUpdateRate","stillUpdateRate","picker"]),d=t,(h=n).classHierarchy.push("vtkRenderWindowInteractor"),r=new Set,d.start=function(){(h.initialized||(d.initialize(),h.initialized))&&d.startEventLoop()},d.setRenderWindow=function(e){m("you want to call setView(view) instead of setRenderWindow on a vtk.js interactor")},d.setInteractorStyle=function(e){h.interactorStyle!==e&&(null!=h.interactorStyle&&h.interactorStyle.setInteractor(null),h.interactorStyle=e,null!=h.interactorStyle&&h.interactorStyle.getInteractor()!==d&&h.interactorStyle.setInteractor(d))},d.initialize=function(){h.initialized=!0,d.enable(),d.render()},d.enable=function(){return d.setEnabled(!0)},d.disable=function(){return d.setEnabled(!1)},d.startEventLoop=function(){return M("empty event loop")},d.getCurrentRenderer=function(){return h.currentRenderer||(u(0,0),h.currentRenderer)},d.bindEvents=function(e){(h.container=e).addEventListener("contextmenu",b),e.addEventListener("wheel",d.handleWheel),e.addEventListener("DOMMouseScroll",d.handleWheel),e.addEventListener("mousemove",d.handleMouseMove),e.addEventListener("mousedown",d.handleMouseDown),document.querySelector("body").addEventListener("keypress",d.handleKeyPress),document.querySelector("body").addEventListener("keydown",d.handleKeyDown),document.querySelector("body").addEventListener("keyup",d.handleKeyUp),e.addEventListener("touchstart",d.handleTouchStart,!1)},d.unbindEvents=function(){s(!1),h.container.removeEventListener("contextmenu",b),h.container.removeEventListener("wheel",d.handleWheel),h.container.removeEventListener("DOMMouseScroll",d.handleWheel),h.container.removeEventListener("mousemove",d.handleMouseMove),h.container.removeEventListener("mousedown",d.handleMouseDown),document.querySelector("body").removeEventListener("keypress",d.handleKeyPress),document.querySelector("body").removeEventListener("keydown",d.handleKeyDown),document.querySelector("body").removeEventListener("keyup",d.handleKeyUp),h.container.removeEventListener("touchstart",d.handleTouchStart),h.container=null},d.handleKeyPress=function(e){e=l(e);d.keyPressEvent(e)},d.handleKeyDown=function(e){e=l(e);d.keyDownEvent(e)},d.handleKeyUp=function(e){e=l(e);d.keyUpEvent(e)},d.handleMouseDown=function(e){s(!0),e.stopPropagation(),e.preventDefault();var t={position:a(e)},n=o(e);switch(Object.assign(t,n),e.which){case 1:d.leftButtonPressEvent(t);break;case 2:d.middleButtonPressEvent(t);break;case 3:d.rightButtonPressEvent(t);break;default:m("Unknown mouse button pressed: "+e.which)}},d.requestAnimation=function(e){void 0!==e?r.has(e)?M("requester is already registered for animating"):(r.add(e),1===r.size&&(h.lastFrameTime=.1,h.lastFrameStart=Date.now(),h.animationRequest=requestAnimationFrame(d.handleAnimation),d.startAnimationEvent())):m("undefined requester, can not start animating")},d.isAnimating=function(){return h.vrAnimation||null!==h.animationRequest},d.cancelAnimation=function(e){r.has(e)?(r.delete(e),h.animationRequest&&0===r.size&&(cancelAnimationFrame(h.animationRequest),h.animationRequest=null,d.endAnimationEvent(),d.render())):M(e+" did not request an animation")},d.switchToVRAnimation=function(){h.animationRequest&&(cancelAnimationFrame(h.animationRequest),h.animationRequest=null),h.vrAnimation=!0},d.returnFromVRAnimation=function(){h.vrAnimation=!1},d.updateGamepads=function(e){for(var t=navigator.getGamepads(),n=0;n<t.length;++n){var r=t[n];if(r&&r.displayId===e){r.index in h.lastGamepadValues||(h.lastGamepadValues[r.index]={buttons:{}});for(var a=0;a<r.buttons.length;++a)a in h.lastGamepadValues[r.index].buttons||(h.lastGamepadValues[r.index].buttons[a]=!1),h.lastGamepadValues[r.index].buttons[a]!==r.buttons[a].pressed&&(d.button3DEvent({gamepad:r,position:r.pose.position,orientation:r.pose.orientation,pressed:r.buttons[a].pressed,device:"left"===r.hand?g.LeftController:g.RightController,input:v[r.id]&&v[r.id][a]?v[r.id][a]:p.Trigger}),h.lastGamepadValues[r.index].buttons[a]=r.buttons[a].pressed),h.lastGamepadValues[r.index].buttons[a]&&d.move3DEvent({gamepad:r,position:r.pose.position,orientation:r.pose.orientation,device:"left"===r.hand?g.LeftController:g.RightController})}}},d.handleMouseMove=function(e){var t={position:a(e)},e=o(e);Object.assign(t,e),0===h.moveTimeoutID?d.startMouseMoveEvent(t):(d.mouseMoveEvent(t),clearTimeout(h.moveTimeoutID)),h.moveTimeoutID=setTimeout(function(){d.endMouseMoveEvent(),h.moveTimeoutID=0},200)},d.handleAnimation=function(){var e=Date.now();-1===h.FrameTime?h.lastFrameTime=.1:h.lastFrameTime=(e-h.lastFrameStart)/1e3,h.lastFrameTime=Math.max(.01,h.lastFrameTime),h.lastFrameStart=e,d.animationEvent(),c(),h.animationRequest=requestAnimationFrame(d.handleAnimation)},d.handleWheel=function(e){e.stopPropagation(),e.preventDefault();e=w(e);0===h.wheelTimeoutID?d.startMouseWheelEvent(e):(d.mouseWheelEvent(e),clearTimeout(h.wheelTimeoutID)),h.wheelTimeoutID=setTimeout(function(){d.endMouseWheelEvent(),h.wheelTimeoutID=0},200)},d.handleMouseUp=function(e){s(!1),e.stopPropagation(),e.preventDefault();var t={position:a(e)},n=o(e);switch(Object.assign(t,n),e.which){case 1:d.leftButtonReleaseEvent(t);break;case 2:d.middleButtonReleaseEvent(t);break;case 3:d.rightButtonReleaseEvent(t);break;default:m("Unknown mouse button released: "+e.which)}},d.handleTouchStart=function(e){var t,n;s(!0),e.stopPropagation(),e.preventDefault(),h.recognizeGestures&&1<e.touches.length?(t=i(e.touches),2===e.touches.length&&(n={position:a(e.touches[0]),shiftKey:!1,altKey:!1,controlKey:!1},d.leftButtonReleaseEvent(n)),d.recognizeGesture("TouchStart",t)):(n={position:a(e.touches[0]),shiftKey:!1,altKey:!1,controlKey:!1},d.leftButtonPressEvent(n))},d.handleTouchMove=function(e){var t;e.stopPropagation(),e.preventDefault(),h.recognizeGestures&&1<e.touches.length?(t=i(e.touches),d.recognizeGesture("TouchMove",t)):(t={position:a(e.touches[0]),shiftKey:!1,altKey:!1,controlKey:!1},d.mouseMoveEvent(t))},d.handleTouchEnd=function(e){var t;e.stopPropagation(),e.preventDefault(),h.recognizeGestures?0===e.touches.length?(1===e.changedTouches.length?(t={position:a(e.changedTouches[0]),shiftKey:!1,altKey:!1,controlKey:!1},d.leftButtonReleaseEvent(t)):(t=i(e.changedTouches),d.recognizeGesture("TouchEnd",t)),s(!1)):1===e.touches.length?(t=i(e.changedTouches),d.recognizeGesture("TouchEnd",t),t={position:a(e.touches[0]),shiftKey:!1,altKey:!1,controlKey:!1},d.leftButtonPressEvent(t)):(t=i(e.touches),d.recognizeGesture("TouchMove",t)):(t={position:a(e.changedTouches[0]),shiftKey:!1,altKey:!1,controlKey:!1},d.leftButtonReleaseEvent(t),s(!1))},d.setView=function(e){h.view!==e&&(h.view=e,h.view.getRenderable().setInteractor(d),d.modified())},d.findPokedRenderer=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0,t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0;if(!h.view)return null;for(var n=h.view.getRenderable().getRenderersByReference(),r=null,a=null,i=null,o=n.length;o--;){var s=n[o];h.view.isInViewport(e,t,s)&&s.getInteractive()&&(i=s),null===r&&s.getInteractive()&&(r=s),null===a&&h.view.isInViewport(e,t,s)&&(a=s)}return i=null==(i=null===(i=null===i?r:i)?a:i)?n[0]:i},d.render=function(){null!==h.animationRequest||h.inRender||c()},A.forEach(function(n){var e=n.charAt(0).toLowerCase()+n.slice(1);d[e+"Event"]=function(e){var t;h.enabled&&(d.getCurrentRenderer()?(t={type:n,pokedRenderer:h.currentRenderer},Object.assign(t,e),d["invoke"+n](t)):m("\n          Can not forward events without a current renderer on the interactor.\n        "))}}),d.recognizeGesture=function(e,t){if(!(2<Object.keys(t).length)){if(h.startingEventPositions||(h.startingEventPositions={}),"TouchStart"===e)return Object.keys(t).forEach(function(e){h.startingEventPositions[e]=t[e]}),void(h.currentGesture="Start");if("TouchEnd"===e)return"Pinch"===h.currentGesture&&(d.render(),d.endPinchEvent()),"Rotate"===h.currentGesture&&(d.render(),d.endRotateEvent()),"Pan"===h.currentGesture&&(d.render(),d.endPanEvent()),h.currentGesture="Start",void(h.startingEventPositions={});var n,r,a=0,i=[],o=[],c=(Object.keys(t).forEach(function(e){i[a]=t[e],o[a]=h.startingEventPositions[e],a++}),Math.sqrt((o[0].x-o[1].x)*(o[0].x-o[1].x)+(o[0].y-o[1].y)*(o[0].y-o[1].y))),f=Math.sqrt((i[0].x-i[1].x)*(i[0].x-i[1].x)+(i[0].y-i[1].y)*(i[0].y-i[1].y)),s=y.default.degreesFromRadians(Math.atan2(o[1].y-o[0].y,o[1].x-o[0].x)),u=(l=y.default.degreesFromRadians(Math.atan2(i[1].y-i[0].y,i[1].x-i[0].x)))-s,l=360<=l+180?l-180:l+180,s=360<=s+180?s-180:s+180,l=(Math.abs(l-s)<Math.abs(u)&&(u=l-s),[]);l[0]=(i[0].x-o[0].x+i[1].x-o[1].x)/2,l[1]=(i[0].y-o[0].y+i[1].y-o[1].y)/2,"TouchMove"===e&&("Start"===h.currentGesture?((s=.01*Math.sqrt(h.container.clientWidth*h.container.clientWidth+h.container.clientHeight*h.container.clientHeight))<15&&(s=15),e=Math.abs(f-c),n=3.1415926*f*Math.abs(u)/360,r=Math.sqrt(l[0]*l[0]+l[1]*l[1]),s<e&&n<e&&r<e?(h.currentGesture="Pinch",d.startPinchEvent({scale:1,touches:t})):s<n&&r<n?(h.currentGesture="Rotate",d.startRotateEvent({rotation:0,touches:t})):s<r&&(h.currentGesture="Pan",d.startPanEvent({translation:[0,0],touches:t}))):("Rotate"===h.currentGesture&&d.rotateEvent({rotation:u,touches:t}),"Pinch"===h.currentGesture&&d.pinchEvent({scale:f/c,touches:t}),"Pan"===h.currentGesture&&d.panEvent({translation:l,touches:t})))}},t.setInteractorStyle(T.default.newInstance())}var i=e.newInstance=f.default.newInstance(a,"vtkRenderWindowInteractor");e.default=Object.assign({newInstance:i,extend:a,handledEvents:A},t.default)},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=e.STATIC=void 0;var d=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var n=e,r=t,a=[],i=!0,e=!1,t=void 0;try{for(var o,s=n[Symbol.iterator]();!(i=(o=s.next()).done)&&(a.push(o.value),!r||a.length!==r);i=!0);}catch(n){e=!0,t=n}finally{try{!i&&s.return&&s.return()}finally{if(e)throw t}}return a}throw new TypeError("Invalid attempt to destructure non-iterable instance")},n=(e.extend=M,l(t(0))),v=l(t(168));function l(e){return e&&e.__esModule?e:{default:e}}function r(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var a=[Number.MAX_VALUE,-Number.MAX_VALUE,Number.MAX_VALUE,-Number.MAX_VALUE,Number.MAX_VALUE,-Number.MAX_VALUE];function o(e){return e[0]<=e[1]&&e[2]<=e[3]&&e[4]<=e[5]}function c(e){return[.5*(e[0]+e[1]),.5*(e[2]+e[3]),.5*(e[4]+e[5])]}function s(e,t){return e[2*t+1]-e[2*t]}function u(e){return[s(e,0),s(e,1),s(e,2)]}function f(e){e=u(e);return e[0]>e[1]?e[0]>e[2]?e[0]:e[2]:e[1]>e[2]?e[1]:e[2]}function h(e){return o(e)?(e=u(e),Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2])):null}function m(e,t){return e<=0&&0<=t||0<=e&&t<=0}function g(e,t){for(var n=0,r=0;r<2;r++)for(var a=2;a<4;a++)for(var i=4;i<6;i++)t[n]=[e[r],e[a],e[i]],n++}var t=e.STATIC={isValid:o,getCenter:c,getLength:s,getLengths:u,getMaxLength:f,getDiagonalLength:h,getXRange:function(e){return e.slice(0,2)},getYRange:function(e){return e.slice(2,4)},getZRange:function(e){return e.slice(4,6)},getCorners:g,INIT_BOUNDS:a},p={type:"vtkBoundingBox",bounds:[].concat(a),corners:[]};function M(e,t){var i,M;Object.assign(t,p,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),n.default.obj(e,t),n.default.setGet(e,t,["bounds"]),i=e,(M=t).classHierarchy.push("vtkBoundingBox"),i.clone=function(){var e=[].concat(M.bounds);return A({bounds:e})},i.equals=function(e){var t=M.bounds,e=e.getBounds();return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]},i.setMinPoint=function(e,t,n){var r=d(M.bounds,6),a=r[0],i=r[1],o=r[2],s=r[3],u=r[4],r=r[5];return M.bounds=[e,i<e?e:i,t,s<t?t:s,n,r<n?n:r],a!==e||o!==t||u!==n},i.setMaxPoint=function(e,t,n){var r=d(M.bounds,6),a=r[0],i=r[1],o=r[2],s=r[3],u=r[4],r=r[5];return M.bounds=[e<a?e:a,e,t<o?t:o,t,n<u?n:u,n],i!==e||s!==t||r!==n},i.addPoint=function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];M.bounds=M.bounds.map(function(e,t){if(t%2==0)return e<r[n=t/2]?e:r[n];var n=(t-1)/2;return e>r[n]?e:r[n]})},i.addBounds=function(e,t,n,r,a,i){var o=d(M.bounds,6),s=o[0],u=o[1],l=o[2],c=o[3],f=o[4],o=o[5];M.bounds=[Math.min(e,s),Math.max(t,u),Math.min(n,l),Math.max(r,c),Math.min(a,f),Math.max(i,o)]},i.addBox=function(e){i.addBounds.apply(i,r(e.getBounds()))},i.isValid=function(){return o(M.bounds)},i.intersect=function(e){if(!i.isValid()||!e.isValid())return!1;for(var t=[0,0,0,0,0,0],n=e.getBounds(),r=void 0,a=0;a<3;a++)if(r=!1,n[2*a]>=M.bounds[2*a]&&n[2*a]<=M.bounds[2*a+1]?(r=!0,t[2*a]=n[2*a]):M.bounds[2*a]>=n[2*a]&&M.bounds[2*a]<=n[2*a+1]&&(r=!0,t[2*a]=M.bounds[2*a]),n[2*a+1]>=M.bounds[2*a]&&n[2*a+1]<=M.bounds[2*a+1]?(r=!0,t[2*a+1]=e.MaxPnt[a]):M.bounds[2*a+1]>=e.MinPnt[2*a]&&M.bounds[2*a+1]<=e.MaxPnt[2*a+1]&&(r=!0,t[2*a+1]=M.bounds[2*a+1]),!r)return!1;return M.bounds=t,!0},i.intersects=function(e){if(!i.isValid()||!e.isValid())return!1;for(var t=e.getBounds(),n=0;n<3;n++)if(!(t[2*n]>=M.bounds[2*n]&&t[2*n]<=M.bounds[2*n+1]||M.bounds[2*n]>=t[2*n]&&M.bounds[2*n]<=t[2*n+1]||t[2*n+1]>=M.bounds[2*n]&&t[2*n+1]<=M.bounds[2*n+1]||M.bounds[2*n+1]>=e.MinPnt[2*n]&&M.bounds[2*n+1]<=e.MaxPnt[2*n+1]))return!1;return!0},i.intersectPlane=function(c,e){for(var t=[[0,1,2,3,4,5,6,7],[0,1,4,5,2,3,6,7],[0,2,4,6,1,3,5,7]],n=[0,0,0,0,0,0,0,0],f=0,r=0;r<2;r++)for(var a=2;a<4;a++)for(var i=4;i<6;i++){var d=[M.bounds[r],M.bounds[a],M.bounds[i]];n[f++]=v.default.evaluate(e,c,d)}for(var o=2;o--&&!(m(n[t[o][0]],n[t[o][4]])&&m(n[t[o][1]],n[t[o][5]])&&m(n[t[o][2]],n[t[o][6]])&&m(n[t[o][3]],n[t[o][7]])););if(o<0)return!1;for(var s,u=Math.sign(e[o]),h=Math.abs((M.bounds[2*o+1]-M.bounds[2*o])*e[o]),l=0<u?1:0,g=0;g<4;g++)0!==h&&(s=Math.abs(n[t[o][g]])/h,0<u&&s<l&&(l=s),u<0&&l<s&&(l=s));var p=(1-l)*M.bounds[2*o]+l*M.bounds[2*o+1];return 0<u?M.bounds[2*o]=p:M.bounds[2*o+1]=p,!0},i.containsPoint=function(e,t,n){return!(e<M.bounds[0]||e>M.bounds[1]||t<M.bounds[2]||t>M.bounds[3]||n<M.bounds[4]||n>M.bounds[5])},i.getMinPoint=function(){return[M.bounds[0],M.bounds[2],M.bounds[4]]},i.getMaxPoint=function(){return[M.bounds[1],M.bounds[3],M.bounds[5]]},i.getBound=function(e){return M.bound[e]},i.contains=function(e){return!!i.intersects(e)&&!!i.containsPoint.apply(i,r(e.getMinPoint()))&&(!!i.containsPoint.apply(i,r(e.getMaxPoint()))||0)},i.getCenter=function(){return c(M.bounds)},i.getLength=function(e){return s(M.bounds,e)},i.getLengths=function(){return u(M.bounds)},i.getMaxLength=function(){return f(M.bounds)},i.getDiagonalLength=function(){return h(M.bounds)},i.reset=function(){return i.setBounds([].concat(a))},i.inflate=function(n){M.bounds=M.bounds.map(function(e,t){return t%2==0?e-n:e+n})},i.getCorners=function(){return g(M.bounds,M.corners),M.corners},i.scale=function(e,t,n){var r;return!!i.isValid()&&(r=[].concat(M.bounds),0<=e?(r[0]*=e,r[1]*=e):(r[0]=e*M.bounds[1],r[1]=e*M.bounds[0]),0<=t?(r[2]*=t,r[3]*=t):(r[2]=t*M.bounds[3],r[3]=t*M.bounds[2]),0<=n?(r[4]*=n,r[5]*=n):(r[4]=n*M.bounds[5],r[5]=n*M.bounds[4]),M.bounds=r,!0)}}var A=e.newInstance=n.default.newInstance(M,"vtkBoundingBox");e.default=Object.assign({newInstance:A,extend:M},t)},function(e,t){e.exports="//VTK::System::Dec\n\n/*=========================================================================\n\n  Program:   Visualization Toolkit\n  Module:    vtkPolyDataVS.glsl\n\n  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen\n  All rights reserved.\n  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.\n\n     This software is distributed WITHOUT ANY WARRANTY; without even\n     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR\n     PURPOSE.  See the above copyright notice for more information.\n\n=========================================================================*/\n\nattribute vec4 vertexMC;\n\n// frag position in VC\n//VTK::PositionVC::Dec\n\n// optional normal declaration\n//VTK::Normal::Dec\n\n// extra lighting parameters\n//VTK::Light::Dec\n\n// Texture coordinates\n//VTK::TCoord::Dec\n\n// material property values\n//VTK::Color::Dec\n\n// clipping plane vars\n//VTK::Clip::Dec\n\n// camera and actor matrix values\n//VTK::Camera::Dec\n\n// Apple Bug\n//VTK::PrimID::Dec\n\n// picking support\n//VTK::Picking::Dec\n\nvoid main()\n{\n  //VTK::Color::Impl\n\n  //VTK::Normal::Impl\n\n  //VTK::TCoord::Impl\n\n  //VTK::Clip::Impl\n\n  //VTK::PrimID::Impl\n\n  //VTK::PositionVC::Impl\n\n  //VTK::Light::Impl\n\n  //VTK::Picking::Impl\n}\n"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.ColorMode={DEFAULT:0,MAP_SCALARS:1,DIRECT_SCALARS:2},a=t.ScalarMode={DEFAULT:0,USE_POINT_DATA:1,USE_CELL_DATA:2,USE_POINT_FIELD_DATA:3,USE_CELL_FIELD_DATA:4,USE_FIELD_DATA:5},i=t.GetArray={BY_ID:0,BY_NAME:1};t.default={ColorMode:r,GetArray:i,ScalarMode:a}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.StructuredType={UNCHANGED:0,SINGLE_POINT:1,X_LINE:2,Y_LINE:3,Z_LINE:4,XY_PLANE:5,YZ_PLANE:6,XZ_PLANE:7,XYZ_GRID:8,EMPTY:9};t.default={StructuredType:r}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var i=n(t(0)),u=n(t(50)),l=n(t(198)),c=t(92),f=t(3);function n(e){return e&&e.__esModule?e:{default:e}}var d=i.default.vtkErrorMacro,h={direction:null,indexToWorld:null,worldToIndex:null,spacing:[1,1,1],origin:[0,0,0],extent:[0,-1,0,-1,0,-1],dataDescription:c.StructuredType.EMPTY};function r(e,t){var o,s,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};if(Object.assign(t,h,n),u.default.extend(e,t,n),t.direction){if(Array.isArray(t.direction)){var r=t.direction.slice(0);t.direction=f.mat3.create();for(var a=0;a<9;++a)t.direction[a]=r[a]}}else t.direction=f.mat3.create();t.indexToWorld=f.mat4.create(),t.worldToIndex=f.mat4.create(),i.default.get(e,t,["direction","indexToWorld","worldToIndex"]),i.default.setGetArray(e,t,["origin","spacing"],3),i.default.getArray(e,t,["extent"],6),o=e,(s=t).classHierarchy.push("vtkImageData"),o.setExtent=function(){for(var n,e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];s.deleted?d("instance deleted - cannot call any method"):r&&6===r.length&&(n=!1,s.extent.forEach(function(e,t){e!==r[t]&&(n=n||!0)}),n&&(s.extent=[].concat(r),s.dataDescription=l.default.getDataDescriptionFromExtent(s.extent),o.modified()))},o.setDimensions=function(){var e=void 0,t=void 0,n=void 0;if(s.deleted)d("instance deleted - cannot call any method");else{if(1===arguments.length)var r=arguments.length<=0?void 0:arguments[0],e=r[0],t=r[1],n=r[2];else{if(3!==arguments.length)return void d("Bad dimension specification");e=arguments.length<=0?void 0:arguments[0],t=arguments.length<=1?void 0:arguments[1],n=arguments.length<=2?void 0:arguments[2]}o.setExtent(0,e-1,0,t-1,0,n-1)}},o.getDimensions=function(){return[s.extent[1]-s.extent[0]+1,s.extent[3]-s.extent[2]+1,s.extent[5]-s.extent[4]+1]},o.getNumberOfCells=function(){for(var e=o.getDimensions(),t=1,n=0;n<3;n++){if(0===e[n])return 0;1<e[n]&&(t*=e[n]-1)}return t},o.getNumberOfPoints=function(){var e=o.getDimensions();return e[0]*e[1]*e[2]},o.getPoint=function(e){var t=o.getDimensions(),n=f.vec3.fromValues(0,0,0),r=[0,0,0];if(0===t[0]||0===t[1]||0===t[2])return d("Requesting a point from an empty image."),null;switch(s.dataDescription){case c.StructuredType.EMPTY:return null;case c.StructuredType.SINGLE_POINT:break;case c.StructuredType.X_LINE:n[0]=e;break;case c.StructuredType.Y_LINE:n[1]=e;break;case c.StructuredType.Z_LINE:n[2]=e;break;case c.StructuredType.XY_PLANE:n[0]=e%t[0],n[1]=e/t[0];break;case c.StructuredType.YZ_PLANE:n[1]=e%t[1],n[2]=e/t[1];break;case c.StructuredType.XZ_PLANE:n[0]=e%t[0],n[2]=e/t[0];break;case c.StructuredType.XYZ_GRID:n[0]=e%t[0],n[1]=e/t[0]%t[1],n[2]=e/(t[0]*t[1]);break;default:d("Invalid dataDescription")}var a=f.vec3.create();return o.indexToWorldVec3(n,a),f.vec3.copy(r,a),r},o.getBounds=function(){return o.extentToBounds(s.extent)},o.extentToBounds=function(e){var t=[e[0],e[2],e[4],e[1],e[2],e[4],e[0],e[3],e[4],e[1],e[3],e[4],e[0],e[2],e[5],e[1],e[2],e[5],e[0],e[3],e[5],e[1],e[3],e[5]],n=f.vec3.fromValues(t[0],t[1],t[2]),r=f.vec3.create();o.indexToWorldVec3(n,r);for(var a=[r[0],r[0],r[1],r[1],r[2],r[2]],i=3;i<24;i+=3)f.vec3.set(n,t[i],t[i+1],t[i+2]),o.indexToWorldVec3(n,r),r[0]<a[0]&&(a[0]=r[0]),r[1]<a[2]&&(a[2]=r[1]),r[2]<a[4]&&(a[4]=r[2]),r[0]>a[1]&&(a[1]=r[0]),r[1]>a[3]&&(a[3]=r[1]),r[2]>a[5]&&(a[5]=r[2]);return a},o.computeTransforms=function(){var e=f.quat.create(),t=(f.quat.fromMat3(e,s.direction),f.vec3.fromValues(s.origin[0],s.origin[1],s.origin[2])),n=f.vec3.fromValues(s.spacing[0],s.spacing[1],s.spacing[2]);f.mat4.fromRotationTranslationScale(s.indexToWorld,e,t,n),f.mat4.invert(s.worldToIndex,s.indexToWorld)},o.setDirection=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];if(s.deleted)return d("instance deleted - cannot call any method"),!1;var r=t;if(9!==(r=1===r.length&&Array.isArray(r[0])?r[0]:r).length)throw new RangeError("Invalid number of values for array setter");var a=!1;if(s.direction.forEach(function(e,t){e!==r[t]&&(a=a||!0)}),a){for(var i=0;i<9;++i)s.direction[i]=r[i];o.modified()}return!0},o.indexToWorldVec3=function(e,t){f.vec3.transformMat4(t,e,s.indexToWorld)},o.indexToWorld=function(e,t){var e=f.vec3.fromValues(e[0],e[1],e[2]),n=f.vec3.create();f.vec3.transformMat4(n,e,s.indexToWorld),f.vec3.copy(t,n)},o.worldToIndexVec3=function(e,t){f.vec3.transformMat4(t,e,s.worldToIndex)},o.worldToIndex=function(e,t){var e=f.vec3.fromValues(e[0],e[1],e[2]),n=f.vec3.create();f.vec3.transformMat4(n,e,s.worldToIndex),f.vec3.copy(t,n)},o.onModified(o.computeTransforms),o.computeTransforms()}t=e.newInstance=i.default.newInstance(r,"vtkImageData");e.default={newInstance:t,extend:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=i;var r=(o=n(0))&&o.__esModule?o:{default:o},v=n(25),a={forceEmulation:!1,handleVAO:0,handleProgram:0,supported:!0,buffers:null,context:null,openGLRenderWindow:null};function i(e,t){var M,m;Object.assign(t,a,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),t.buffers=[],r.default.obj(e,t),r.default.get(e,t,["supported"]),r.default.setGet(e,t,["forceEmulation"]),M=e,(m=t).classHierarchy.push("vtkOpenGLVertexArrayObject"),M.exposedMethod=function(){},M.initialize=function(){m.instancingExtension=null,m.openGLRenderWindow.getWebgl2()||(m.instancingExtension=m.context.getExtension("ANGLE_instanced_arrays")),!m.forceEmulation&&m.openGLRenderWindow&&m.openGLRenderWindow.getWebgl2()?(m.extension=null,m.supported=!0,m.handleVAO=m.context.createVertexArray()):(m.extension=m.context.getExtension("OES_vertex_array_object"),!m.forceEmulation&&m.extension?(m.supported=!0,m.handleVAO=m.extension.createVertexArrayOES()):m.supported=!1)},M.isReady=function(){return 0!==m.handleVAO||!1===m.supported},M.bind=function(){if(M.isReady()||M.initialize(),M.isReady()&&m.supported)m.extension?m.extension.bindVertexArrayOES(m.handleVAO):m.context.bindVertexArray(m.handleVAO);else if(M.isReady())for(var e=m.context,t=0;t<m.buffers.length;++t){var n=m.buffers[t];m.context.bindBuffer(e.ARRAY_BUFFER,n.buffer);for(var r=0;r<n.attributes.length;++r)for(var a=n.attributes[r],i=a.isMatrix?a.size:1,o=0;o<i;++o)e.enableVertexAttribArray(a.index+o),e.vertexAttribPointer(a.index+o,a.size,a.type,a.normalize,a.stride,a.offset+a.stride*o/a.size),0<a.divisor&&(m.instancingExtension?m.instancingExtension.vertexAttribDivisorANGLE(a.index+o,1):e.vertexAttribDivisor(a.index+o,1))}},M.release=function(){if(M.isReady()&&m.supported)m.extension?m.extension.bindVertexArrayOES(null):m.context.bindVertexArray(null);else if(M.isReady())for(var e=m.context,t=0;t<m.buffers.length;++t){var n=m.buffers[t];m.context.bindBuffer(e.ARRAY_BUFFER,n.buffer);for(var r=0;r<n.attributes.length;++r)for(var a=n.attributes[r],i=a.isMatrix?a.size:1,o=0;o<i;++o)e.enableVertexAttribArray(a.index+o),e.vertexAttribPointer(a.index+o,a.size,a.type,a.normalize,a.stride,a.offset+a.stride*o/a.size),0<a.divisor&&(m.instancingExtension?m.instancingExtension.vertexAttribDivisorANGLE(a.index+o,0):e.vertexAttribDivisor(a.index+o,0)),e.disableVertexAttribArray(a.index+o)}},M.shaderProgramChanged=function(){M.release(),m.handleVAO&&(m.extension?m.extension.deleteVertexArrayOES(m.handleVAO):m.context.deleteVertexArray(m.handleVAO)),m.handleVAO=0,m.handleProgram=0},M.releaseGraphicsResources=function(){M.shaderProgramChanged(),m.handleVAO&&(m.extension?m.extension.deleteVertexArrayOES(m.handleVAO):m.context.deleteVertexArray(m.handleVAO)),m.handleVAO=0,m.supported=!0,m.handleProgram=0},M.addAttributeArray=function(e,t,n,r,a,i,o,s){return M.addAttributeArrayWithDivisor(e,t,n,r,a,i,o,s,0,!1)},M.addAttributeArrayWithDivisor=function(e,t,n,r,c,f,d,h,a,g){if(!e)return!1;if(!e.isBound()||0===t.getHandle()||t.getType()!==v.ObjectType.ARRAY_BUFFER)return!1;if(0===m.handleProgram&&(m.handleProgram=e.getHandle()),M.isReady()||M.initialize(),!M.isReady()||m.handleProgram!==e.getHandle())return!1;var e=m.context,i={};if(i.name=n,i.index=e.getAttribLocation(m.handleProgram,n),i.offset=r,i.stride=c,i.type=f,i.size=d,i.normalize=h,i.isMatrix=g,i.divisor=a,-1===i.Index)return!1;if(t.bind(),e.enableVertexAttribArray(i.index),e.vertexAttribPointer(i.index,i.size,i.type,i.normalize,i.stride,i.offset),0<a&&(m.instancingExtension?m.instancingExtension.vertexAttribDivisorANGLE(i.index,1):e.vertexAttribDivisor(i.index,1)),i.buffer=t.getHandle(),!m.supported){for(var p=!1,o=0;o<m.buffers.length;++o){var s=m.buffers[o];if(s.buffer===i.buffer){for(var p=!0,u=!1,l=0;l<s.attributes.length;++l)s.attributes[l].name===n&&(u=!0,s.attributes[l]=i);u||s.attributes.push(i)}}p||m.buffers.push({buffer:i.buffer,attributes:[i]})}return!0},M.addAttributeMatrixWithDivisor=function(e,c,t,n,r,a,i,o,f){e=M.addAttributeArrayWithDivisor(e,c,t,n,r,a,i,o,f,!0);if(!e)return e;for(var s=m.context,u=s.getAttribLocation(m.handleProgram,t),l=1;l<i;l++)s.enableVertexAttribArray(u+l),s.vertexAttribPointer(u+l,i,a,o,r,n+r*l/i),0<f&&(m.instancingExtension?m.instancingExtension.vertexAttribDivisorANGLE(u+l,1):s.vertexAttribDivisor(u+l,1));return!0},M.removeAttributeArray=function(e){if(!M.isReady()||0===m.handleProgram)return!1;if(!m.supported)for(var t=0;t<m.buffers.length;++t)for(var n=m.buffers[t],r=0;r<n.attributes.length;++r)if(n.attributes[r].name===e)return n.attributes.splice(r,1),n.attributes.length||m.buffers.splice(t,1),!0;return!0},M.setOpenGLRenderWindow=function(e){m.openGLRenderWindow!==e&&(M.releaseGraphicsResources(),m.openGLRenderWindow=e,m.context=null,e&&(m.context=m.openGLRenderWindow.getContext()))}}var o=t.newInstance=r.default.newInstance(i,"vtkOpenGLVertexArrayObject");t.default={newInstance:o,extend:i}},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=i;var n=a(t(0)),r=a(t(209)),c=a(t(51)),o=a(t(208)),t=a(t(50));function a(e){return e&&e.__esModule?e:{default:e}}var g=r.default.PassTypes,f=o.default.SelectionContent,s=o.default.SelectionField,u=t.default.FieldAssociations,p=n.default.vtkErrorMacro,M={fieldAssociation:u.FIELD_ASSOCIATION_CELLS,renderer:null,area:null,openGLRenderWindow:null,openGLRenderer:null,currentPass:-1,propColorValue:null,props:null,idOffset:1};function i(e,t){var d,h;Object.assign(t,M,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),n.default.obj(e,t),t.area=[0,0,0,0],t.propColorValue=[0,0,0],t.props=[],n.default.setGet(e,t,["fieldAssociation","renderer","currentPass"]),n.default.setGetArray(e,t,["area"],4),n.default.setGetArray(e,t,["propColorValue"],3),n.default.event(e,t,"event"),d=e,(h=t).classHierarchy.push("vtkOpenGLHardwareSelector"),d.releasePixBuffers=function(){h.pixBuffer=[]},d.beginSelection=function(){h.openGLRenderer=h.openGLRenderWindow.getViewNodeFor(h.renderer),h.maxAttributeId=0,h.framebuffer=c.default.newInstance(),h.framebuffer.setOpenGLRenderWindow(h.openGLRenderWindow),h.framebuffer.saveCurrentBindingsAndBuffers();var e=h.openGLRenderWindow.getSize();h.framebuffer.create(e[0],e[1]),h.framebuffer.populateFramebuffer(),h.openGLRenderer.clear(),h.openGLRenderer.setSelector(d),h.hitProps=[],h.props=[],d.releasePixBuffers()},d.endSelection=function(){h.hitProps=[],h.openGLRenderer.setSelector(null),h.framebuffer.restorePreviousBindingsAndBuffers()},d.preCapturePass=function(){},d.postCapturePass=function(){},d.select=function(){var e=null;return d.captureBuffers()&&(e=d.generateSelection(h.area[0],h.area[1],h.area[2],h.area[3]),d.releasePixBuffers()),e},d.captureBuffers=function(){if(!h.renderer||!h.openGLRenderWindow)return p("Renderer and view must be set before calling Select."),!1;for(h.openGLRenderer=h.openGLRenderWindow.getViewNodeFor(h.renderer),d.invokeEvent({type:"StartEvent"}),h.originalBackground=h.renderer.getBackgroundByReference(),h.renderer.setBackground(0,0,0),d.beginSelection(),h.currentPass=g.MIN_KNOWN_PASS;h.currentPass<=g.MAX_KNOWN_PASS;h.currentPass++)d.passRequired(h.currentPass)&&(d.preCapturePass(h.currentPass),h.openGLRenderWindow.traverseAllPasses(),d.postCapturePass(h.currentPass),d.savePixelBuffer(h.currentPass));return d.endSelection(),h.renderer.setBackground(h.originalBackground),d.invokeEvent({type:"EndEvent"}),h.openGLRenderWindow.traverseAllPasses(),!0},d.passRequired=function(e){return!0},d.savePixelBuffer=function(e){h.pixBuffer[e]=h.openGLRenderWindow.getPixelData(h.area[0],h.area[1],h.area[2],h.area[3]),e===g.ACTOR_PASS&&d.buildPropHitList(h.pixBuffer[e])},d.buildPropHitList=function(e){for(var t=0;t<=h.area[3]-h.area[1];t++)for(var n=0;n<=h.area[2]-h.area[0];n++){var r=d.convert(n,t,e);0<r&&(r--,-1===h.hitProps.indexOf(r)&&h.hitProps.push(r))}},d.renderProp=function(e){h.currentPass===g.ACTOR_PASS&&(d.setPropColorValueFromInt(h.props.length+h.idOffset),h.props.push(e))},d.renderCompositeIndex=function(e){h.currentPass===g.COMPOSITE_INDEX_PASS&&d.setPropColorValueFromInt(e+h.idOffset)},d.renderAttributeId=function(e){e<0||(h.maxAttributeId=e>h.maxAttributeId?e:h.maxAttributeId)},d.getPropFromID=function(e){return 0<=e&&e<h.props.length?h.props[e]:null},d.passTypeToString=function(e){return n.default.enumToString(g,e)},d.isPropHit=function(e){return h.hitProps.hasKey(e)},d.convert=function(e,t,n){if(!n)return 0;t=4*(t*(h.area[2]-h.area[0]+1)+e),e=[],e[0]=n[t],e[1]=n[1+t],e[2]=n[2+t],n=e[2];return(n=((n*=256)+e[1])*256)+e[0]},d.setPropColorValueFromInt=function(e){h.propColorValue[0]=e%256/255,h.propColorValue[1]=e/256%256/255,h.propColorValue[2]=e/65536%256/255},d.getPixelInformation=function(e,t,n){var c=t<0?0:t;if(0===c){if(n[0]=e[0],n[1]=e[1],e[0]<h.area[0]||e[0]>h.area[2]||e[1]<h.area[1]||e[1]>h.area[3])return null;var t=[e[0]-h.area[0],e[1]-h.area[1]],r=d.convert(t[0],t[1],h.pixBuffer[g.ACTOR_PASS]);if(r<=0)return null;var a={valid:!0},r=(a.propID=r-h.idOffset,a.prop=d.getPropFromID(a.propID),d.convert(t[0],t[1],h.pixBuffer[g.COMPOSITE_INDEX_PASS]));return a.compositeID=(r=r<0||16777215<r?0:r)-h.idOffset,a}var i=[e[0],e[1]],o=[0,0],s=d.getPixelInformation(e,0,n);if(s&&s.valid)return s;for(var u=1;u<c;++u){for(var l=u<i[1]?i[1]-u:0;l<=i[1]+u;++l){if(o[1]=l,u<=i[0]&&(o[0]=i[0]-u,(s=d.getPixelInformation(o,0,n))&&s.valid))return s;if(o[0]=i[0]+u,(s=d.getPixelInformation(o,0,n))&&s.valid)return s}for(var f=u<=i[0]?i[0]-(u-1):0;f<=i[0]+(u-1);++f){if(o[0]=f,u<=i[1]&&(o[1]=i[1]-u,(s=d.getPixelInformation(o,0,n))&&s.valid))return s;if(o[1]=i[1]+u,(s=d.getPixelInformation(o,0,n))&&s.valid)return s}}return n[0]=e[0],n[1]=e[1],null},d.convertSelection=function(r,e){var a=[],i=0;return e.forEach(function(e,t){var n=o.default.newInstance();switch(n.setContentType(f.INDICES),r){case u.FIELD_ASSOCIATION_CELLS:n.setFieldType(s.CELL);break;case u.FIELD_ASSOCIATION_POINTS:n.setFieldType(s.POINT);break;default:p("Unknown field association")}n.getProperties().propID=e.info.propID,n.getProperties().prop=e.info.prop,n.getProperties().compositeID=e.info.compositeID,n.getProperties().pixelCount=e.pixelCount,n.setSelectionList(e.attributeIDs),a[i]=n,i++}),a},d.getInfoHash=function(e){return e.propID+" "+e.compositeID},d.generateSelection=function(e,t,n,r){for(var a=new Map,i=[0,0],o=t;o<=r;o++)for(var s=e;s<=n;s++){var u,l=d.getPixelInformation([s,o],0,i);l&&l.valid&&(u=d.getInfoHash(l),a.has(u)?(a.get(u).pixelCount++,-1===a.get(u).attributeIDs.indexOf(l.attributeID)&&a.get(u).attributeIDs.push(l.attributeID)):a.set(u,{info:l,pixelCount:1,attributeIDs:[l.attributeID]}))}return d.convertSelection(h.fieldAssociation,a)},d.attach=function(e,t){h.openGLRenderWindow=e,h.renderer=t}}t=e.newInstance=n.default.newInstance(i,"vtkOpenGLHardwareSelector");e.default=Object.assign({newInstance:t,extend:i},r.default)},function(c,e,f){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.forEach=e.sqrLen=e.len=e.sqrDist=e.dist=e.div=e.mul=e.sub=void 0,e.create=t,e.clone=function(e){var t=new l.ARRAY_TYPE(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},e.fromValues=function(e,t,n,r){var a=new l.ARRAY_TYPE(4);return a[0]=e,a[1]=t,a[2]=n,a[3]=r,a},e.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},e.set=function(e,t,n,r,a){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e},e.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e},e.subtract=n,e.multiply=r,e.divide=a,e.ceil=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e[3]=Math.ceil(t[3]),e},e.floor=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e[3]=Math.floor(t[3]),e},e.min=function(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e[3]=Math.min(t[3],n[3]),e},e.max=function(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e[3]=Math.max(t[3],n[3]),e},e.round=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e[3]=Math.round(t[3]),e},e.scale=i,e.scaleAndAdd=function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e},e.distance=o,e.squaredDistance=s,e.length=d,e.squaredLength=h,e.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e},e.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e},e.normalize=g,e.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]},e.lerp=function(e,t,n,r){var a=t[0],i=t[1],o=t[2],t=t[3];return e[0]=a+r*(n[0]-a),e[1]=i+r*(n[1]-i),e[2]=o+r*(n[2]-o),e[3]=t+r*(n[3]-t),e},e.random=function(e,t){return t=t||1,e[0]=l.RANDOM(),e[1]=l.RANDOM(),e[2]=l.RANDOM(),e[3]=l.RANDOM(),g(e,e),i(e,e,t),e},e.transformMat4=function(e,t,n){var r=t[0],a=t[1],i=t[2],t=t[3];return e[0]=n[0]*r+n[4]*a+n[8]*i+n[12]*t,e[1]=n[1]*r+n[5]*a+n[9]*i+n[13]*t,e[2]=n[2]*r+n[6]*a+n[10]*i+n[14]*t,e[3]=n[3]*r+n[7]*a+n[11]*i+n[15]*t,e},e.transformQuat=function(e,t,n){var r=t[0],a=t[1],i=t[2],o=n[0],s=n[1],u=n[2],n=n[3],l=n*r+s*i-u*a,c=n*a+u*r-o*i,f=n*i+o*a-s*r,r=-o*r-s*a-u*i;return e[0]=l*n+r*-o+c*-u-f*-s,e[1]=c*n+r*-s+f*-o-l*-u,e[2]=f*n+r*-u+l*-s-c*-o,e[3]=t[3],e},e.str=function(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},e.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]},e.equals=function(e,t){var n=e[0],r=e[1],a=e[2],e=e[3],i=t[0],o=t[1],s=t[2],t=t[3];return Math.abs(n-i)<=l.EPSILON*Math.max(1,Math.abs(n),Math.abs(i))&&Math.abs(r-o)<=l.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-s)<=l.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(e-t)<=l.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))};var u,l=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(f(9));function t(){var e=new l.ARRAY_TYPE(4);return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e}function n(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e}function r(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e[3]=t[3]*n[3],e}function a(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e[2]=t[2]/n[2],e[3]=t[3]/n[3],e}function i(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e}function o(e,t){var n=t[0]-e[0],r=t[1]-e[1],a=t[2]-e[2],t=t[3]-e[3];return Math.sqrt(n*n+r*r+a*a+t*t)}function s(e,t){var n=t[0]-e[0],r=t[1]-e[1],a=t[2]-e[2],t=t[3]-e[3];return n*n+r*r+a*a+t*t}function d(e){var t=e[0],n=e[1],r=e[2],e=e[3];return Math.sqrt(t*t+n*n+r*r+e*e)}function h(e){var t=e[0],n=e[1],r=e[2],e=e[3];return t*t+n*n+r*r+e*e}function g(e,t){var n=t[0],r=t[1],a=t[2],t=t[3],i=n*n+r*r+a*a+t*t;return 0<i&&(i=1/Math.sqrt(i),e[0]=n*i,e[1]=r*i,e[2]=a*i,e[3]=t*i),e}e.sub=n,e.mul=r,e.div=a,e.dist=o,e.sqrDist=s,e.len=d,e.sqrLen=h,e.forEach=(u=t(),function(e,t,n,r,a,i){var o,s=void 0;for(t=t||4,n=n||0,o=r?Math.min(r*t+n,e.length):e.length,s=n;s<o;s+=t)u[0]=e[s],u[1]=e[s+1],u[2]=e[s+2],u[3]=e[s+3],a(u,u,i),e[s]=u[0],e[s+1]=u[1],e[s+2]=u[2],e[s+3]=u[3];return e})},function(c,e,f){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.forEach=e.sqrLen=e.len=e.sqrDist=e.dist=e.div=e.mul=e.sub=void 0,e.create=t,e.clone=function(e){var t=new o.ARRAY_TYPE(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},e.length=n,e.fromValues=r,e.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},e.set=function(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e},e.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e},e.subtract=a,e.multiply=i,e.divide=s,e.ceil=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e},e.floor=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e},e.min=function(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e},e.max=function(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e},e.round=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e},e.scale=function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e},e.scaleAndAdd=function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e},e.distance=d,e.squaredDistance=h,e.squaredLength=g,e.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e},e.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e},e.normalize=l,e.dot=p,e.cross=function(e,t,n){var r=t[0],a=t[1],t=t[2],i=n[0],o=n[1],n=n[2];return e[0]=a*n-t*o,e[1]=t*i-r*n,e[2]=r*o-a*i,e},e.lerp=function(e,t,n,r){var a=t[0],i=t[1],t=t[2];return e[0]=a+r*(n[0]-a),e[1]=i+r*(n[1]-i),e[2]=t+r*(n[2]-t),e},e.hermite=function(e,t,n,r,a,i){var o=i*i,s=o*(2*i-3)+1,u=o*(i-2)+i,l=o*(i-1),o=o*(3-2*i);return e[0]=t[0]*s+n[0]*u+r[0]*l+a[0]*o,e[1]=t[1]*s+n[1]*u+r[1]*l+a[1]*o,e[2]=t[2]*s+n[2]*u+r[2]*l+a[2]*o,e},e.bezier=function(e,t,n,r,a,i){var o=1-i,s=o*o,u=i*i,l=s*o,s=3*i*s,o=3*u*o,u=u*i;return e[0]=t[0]*l+n[0]*s+r[0]*o+a[0]*u,e[1]=t[1]*l+n[1]*s+r[1]*o+a[1]*u,e[2]=t[2]*l+n[2]*s+r[2]*o+a[2]*u,e},e.random=function(e,t){t=t||1;var n=2*o.RANDOM()*Math.PI,r=2*o.RANDOM()-1,a=Math.sqrt(1-r*r)*t;return e[0]=Math.cos(n)*a,e[1]=Math.sin(n)*a,e[2]=r*t,e},e.transformMat4=function(e,t,n){var r=t[0],a=t[1],t=t[2],i=n[3]*r+n[7]*a+n[11]*t+n[15];return e[0]=(n[0]*r+n[4]*a+n[8]*t+n[12])/(i=i||1),e[1]=(n[1]*r+n[5]*a+n[9]*t+n[13])/i,e[2]=(n[2]*r+n[6]*a+n[10]*t+n[14])/i,e},e.transformMat3=function(e,t,n){var r=t[0],a=t[1],t=t[2];return e[0]=r*n[0]+a*n[3]+t*n[6],e[1]=r*n[1]+a*n[4]+t*n[7],e[2]=r*n[2]+a*n[5]+t*n[8],e},e.transformQuat=function(e,t,n){var r=n[0],a=n[1],i=n[2],n=n[3],o=t[0],s=t[1],t=t[2],c=a*t-i*s,u=i*o-r*t,l=r*s-a*o,f=a*l-i*u,i=i*c-r*l,r=r*u-a*c,a=2*n;return u*=a,l*=a,i*=2,r*=2,e[0]=o+(c*=a)+(f*=2),e[1]=s+u+i,e[2]=t+l+r,e},e.rotateX=function(e,t,n,r){var a=[],i=[];return a[0]=t[0]-n[0],a[1]=t[1]-n[1],a[2]=t[2]-n[2],i[0]=a[0],i[1]=a[1]*Math.cos(r)-a[2]*Math.sin(r),i[2]=a[1]*Math.sin(r)+a[2]*Math.cos(r),e[0]=i[0]+n[0],e[1]=i[1]+n[1],e[2]=i[2]+n[2],e},e.rotateY=function(e,t,n,r){var a=[],i=[];return a[0]=t[0]-n[0],a[1]=t[1]-n[1],a[2]=t[2]-n[2],i[0]=a[2]*Math.sin(r)+a[0]*Math.cos(r),i[1]=a[1],i[2]=a[2]*Math.cos(r)-a[0]*Math.sin(r),e[0]=i[0]+n[0],e[1]=i[1]+n[1],e[2]=i[2]+n[2],e},e.rotateZ=function(e,t,n,r){var a=[],i=[];return a[0]=t[0]-n[0],a[1]=t[1]-n[1],a[2]=t[2]-n[2],i[0]=a[0]*Math.cos(r)-a[1]*Math.sin(r),i[1]=a[0]*Math.sin(r)+a[1]*Math.cos(r),i[2]=a[2],e[0]=i[0]+n[0],e[1]=i[1]+n[1],e[2]=i[2]+n[2],e},e.angle=function(e,t){e=r(e[0],e[1],e[2]),t=r(t[0],t[1],t[2]),l(e,e),l(t,t),e=p(e,t);return 1<e?0:e<-1?Math.PI:Math.acos(e)},e.str=function(e){return"vec3("+e[0]+", "+e[1]+", "+e[2]+")"},e.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]},e.equals=function(e,t){var n=e[0],r=e[1],e=e[2],a=t[0],i=t[1],t=t[2];return Math.abs(n-a)<=o.EPSILON*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(r-i)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(e-t)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))};var u,o=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(f(9));function t(){var e=new o.ARRAY_TYPE(3);return e[0]=0,e[1]=0,e[2]=0,e}function n(e){var t=e[0],n=e[1],e=e[2];return Math.sqrt(t*t+n*n+e*e)}function r(e,t,n){var r=new o.ARRAY_TYPE(3);return r[0]=e,r[1]=t,r[2]=n,r}function a(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e}function i(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e}function s(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e[2]=t[2]/n[2],e}function d(e,t){var n=t[0]-e[0],r=t[1]-e[1],t=t[2]-e[2];return Math.sqrt(n*n+r*r+t*t)}function h(e,t){var n=t[0]-e[0],r=t[1]-e[1],t=t[2]-e[2];return n*n+r*r+t*t}function g(e){var t=e[0],n=e[1],e=e[2];return t*t+n*n+e*e}function l(e,t){var n=t[0],r=t[1],a=t[2],n=n*n+r*r+a*a;return 0<n&&(n=1/Math.sqrt(n),e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n),e}function p(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}e.sub=a,e.mul=i,e.div=s,e.dist=d,e.sqrDist=h,e.len=n,e.sqrLen=g,e.forEach=(u=t(),function(e,t,n,r,a,i){var o,s=void 0;for(t=t||3,n=n||0,o=r?Math.min(r*t+n,e.length):e.length,s=n;s<o;s+=t)u[0]=e[s],u[1]=e[s+1],u[2]=e[s+2],a(u,u,i),e[s]=u[0],e[s+1]=u[1],e[s+2]=u[2];return e})},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.setAxes=e.sqlerp=e.rotationTo=e.equals=e.exactEquals=e.normalize=e.sqrLen=e.squaredLength=e.len=e.length=e.lerp=e.dot=e.scale=e.mul=e.add=e.set=e.copy=e.fromValues=e.clone=void 0,e.create=r,e.identity=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e},e.setAxisAngle=h,e.getAxisAngle=function(e,t){var n=2*Math.acos(t[3]),r=Math.sin(n/2);return 0!=r?(e[0]=t[0]/r,e[1]=t[1]/r,e[2]=t[2]/r):(e[0]=1,e[1]=0,e[2]=0),n},e.multiply=g,e.rotateX=function(e,t,n){n*=.5;var r=t[0],a=t[1],i=t[2],t=t[3],o=Math.sin(n),n=Math.cos(n);return e[0]=r*n+t*o,e[1]=a*n+i*o,e[2]=i*n-a*o,e[3]=t*n-r*o,e},e.rotateY=function(e,t,n){n*=.5;var r=t[0],a=t[1],i=t[2],t=t[3],o=Math.sin(n),n=Math.cos(n);return e[0]=r*n-i*o,e[1]=a*n+t*o,e[2]=i*n+r*o,e[3]=t*n-a*o,e},e.rotateZ=function(e,t,n){n*=.5;var r=t[0],a=t[1],i=t[2],t=t[3],o=Math.sin(n),n=Math.cos(n);return e[0]=r*n+a*o,e[1]=a*n-r*o,e[2]=i*n+t*o,e[3]=t*n-i*o,e},e.calculateW=function(e,t){var n=t[0],r=t[1],t=t[2];return e[0]=n,e[1]=r,e[2]=t,e[3]=Math.sqrt(Math.abs(1-n*n-r*r-t*t)),e},e.slerp=o,e.invert=function(e,t){var n=t[0],r=t[1],a=t[2],t=t[3],i=n*n+r*r+a*a+t*t,i=i?1/i:0;return e[0]=-n*i,e[1]=-r*i,e[2]=-a*i,e[3]=t*i,e},e.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e},e.fromMat3=p,e.fromEuler=function(e,t,n,r){var a=.5*Math.PI/180,a=(t*=a,n*=a,r*=a,Math.sin(t)),t=Math.cos(t),i=Math.sin(n),n=Math.cos(n),o=Math.sin(r),r=Math.cos(r);return e[0]=a*n*r-t*i*o,e[1]=t*i*r+a*n*o,e[2]=t*n*o-a*i*r,e[3]=t*n*r+a*i*o,e},e.str=function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"};var f=n(t(9)),d=n(t(100)),a=n(t(97)),t=n(t(96));function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function r(){var e=new f.ARRAY_TYPE(4);return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e}function h(e,t,n){n*=.5;var r=Math.sin(n);return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=Math.cos(n),e}function g(e,t,n){var r=t[0],a=t[1],i=t[2],t=t[3],o=n[0],s=n[1],u=n[2],n=n[3];return e[0]=r*n+t*o+a*u-i*s,e[1]=a*n+t*s+i*o-r*u,e[2]=i*n+t*u+r*s-a*o,e[3]=t*n-r*o-a*s-i*u,e}function o(e,t,n,r){var c,f=t[0],d=t[1],h=t[2],t=t[3],a=n[0],i=n[1],o=n[2],n=n[3],s=void 0,u=void 0,l=void 0;return(s=f*a+d*i+h*o+t*n)<0&&(s=-s,a=-a,i=-i,o=-o,n=-n),l=1e-6<1-s?(s=Math.acos(s),c=Math.sin(s),u=Math.sin((1-r)*s)/c,Math.sin(r*s)/c):(u=1-r,r),e[0]=u*f+l*a,e[1]=u*d+l*i,e[2]=u*h+l*o,e[3]=u*t+l*n,e}function p(e,t){var n,r,a=t[0]+t[4]+t[8],i=void 0;return 0<a?(i=Math.sqrt(a+1),e[3]=.5*i,e[0]=(t[5]-t[7])*(i=.5/i),e[1]=(t[6]-t[2])*i,e[2]=(t[1]-t[3])*i):(t[4]>t[a=0]&&(a=1),n=((a=t[8]>t[3*a+a]?2:a)+1)%3,r=(a+2)%3,i=Math.sqrt(t[3*a+a]-t[3*n+n]-t[3*r+r]+1),e[a]=.5*i,e[3]=(t[3*n+r]-t[3*r+n])*(i=.5/i),e[n]=(t[3*n+a]+t[3*a+n])*i,e[r]=(t[3*r+a]+t[3*a+r])*i),e}e.clone=t.clone,e.fromValues=t.fromValues,e.copy=t.copy,e.set=t.set,e.add=t.add,e.mul=g,e.scale=t.scale,e.dot=t.dot,e.lerp=t.lerp;var i,s,u,l,M,m,v=e.length=t.length,v=(e.len=v,e.squaredLength=t.squaredLength),A=(e.sqrLen=v,e.normalize=t.normalize);e.exactEquals=t.exactEquals,e.equals=t.equals,e.rotationTo=(l=a.create(),M=a.fromValues(1,0,0),m=a.fromValues(0,1,0),function(e,t,n){var r=a.dot(t,n);return r<-.999999?(a.cross(l,M,t),a.len(l)<1e-6&&a.cross(l,m,t),a.normalize(l,l),h(e,l,Math.PI),e):.999999<r?(e[0]=0,e[1]=0,e[2]=0,e[3]=1,e):(a.cross(l,t,n),e[0]=l[0],e[1]=l[1],e[2]=l[2],e[3]=1+r,A(e,e))}),e.sqlerp=(s=r(),u=r(),function(e,t,n,r,a,i){return o(s,t,a,i),o(u,n,r,i),o(e,s,u,2*i*(1-i)),e}),e.setAxes=(i=d.create(),function(e,t,n,r){return i[0]=n[0],i[3]=n[1],i[6]=n[2],i[1]=r[0],i[4]=r[1],i[7]=r[2],i[2]=-t[0],i[5]=-t[1],i[8]=-t[2],A(e,p(e,i))})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sub=t.mul=void 0,t.create=function(){var e=new S.ARRAY_TYPE(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},t.clone=function(e){var t=new S.ARRAY_TYPE(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.fromValues=function(e,t,n,r,a,i,o,s,u,c,f,d,h,g,p,M){var l=new S.ARRAY_TYPE(16);return l[0]=e,l[1]=t,l[2]=n,l[3]=r,l[4]=a,l[5]=i,l[6]=o,l[7]=s,l[8]=u,l[9]=c,l[10]=f,l[11]=d,l[12]=h,l[13]=g,l[14]=p,l[15]=M,l},t.set=function(e,t,n,r,a,i,o,s,u,l,c,f,d,h,g,p,M){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=o,e[6]=s,e[7]=u,e[8]=l,e[9]=c,e[10]=f,e[11]=d,e[12]=h,e[13]=g,e[14]=p,e[15]=M,e},t.identity=m,t.transpose=function(e,t){var n,r,a,i,o,s;return e===t?(n=t[1],r=t[2],a=t[3],i=t[6],o=t[7],s=t[11],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=n,e[6]=t[9],e[7]=t[13],e[8]=r,e[9]=i,e[11]=t[14],e[12]=a,e[13]=o,e[14]=s):(e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15]),e},t.invert=function(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],o=t[4],s=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],g=t[11],p=t[12],M=t[13],m=t[14],t=t[15],v=n*s-r*o,A=n*u-a*o,y=n*c-i*o,T=r*u-a*s,w=r*c-i*s,b=a*c-i*u,D=f*M-d*p,x=f*m-h*p,N=f*t-g*p,E=d*m-h*M,I=d*t-g*M,L=h*t-g*m,l=v*L-A*I+y*E+T*N-w*x+b*D;return l?(e[0]=(s*L-u*I+c*E)*(l=1/l),e[1]=(a*I-r*L-i*E)*l,e[2]=(M*b-m*w+t*T)*l,e[3]=(h*w-d*b-g*T)*l,e[4]=(u*N-o*L-c*x)*l,e[5]=(n*L-a*N+i*x)*l,e[6]=(m*y-p*b-t*A)*l,e[7]=(f*b-h*y+g*A)*l,e[8]=(o*I-s*N+c*D)*l,e[9]=(r*N-n*I-i*D)*l,e[10]=(p*w-M*y+t*v)*l,e[11]=(d*y-f*w-g*v)*l,e[12]=(s*x-o*E-u*D)*l,e[13]=(n*E-r*x+a*D)*l,e[14]=(M*A-p*T-m*v)*l,e[15]=(f*T-d*A+h*v)*l,e):null},t.adjoint=function(e,t){var c=t[0],n=t[1],r=t[2],a=t[3],f=t[4],d=t[5],i=t[6],o=t[7],h=t[8],g=t[9],s=t[10],u=t[11],p=t[12],M=t[13],l=t[14],t=t[15];return e[0]=d*(s*t-u*l)-g*(i*t-o*l)+M*(i*u-o*s),e[1]=-(n*(s*t-u*l)-g*(r*t-a*l)+M*(r*u-a*s)),e[2]=n*(i*t-o*l)-d*(r*t-a*l)+M*(r*o-a*i),e[3]=-(n*(i*u-o*s)-d*(r*u-a*s)+g*(r*o-a*i)),e[4]=-(f*(s*t-u*l)-h*(i*t-o*l)+p*(i*u-o*s)),e[5]=c*(s*t-u*l)-h*(r*t-a*l)+p*(r*u-a*s),e[6]=-(c*(i*t-o*l)-f*(r*t-a*l)+p*(r*o-a*i)),e[7]=c*(i*u-o*s)-f*(r*u-a*s)+h*(r*o-a*i),e[8]=f*(g*t-u*M)-h*(d*t-o*M)+p*(d*u-o*g),e[9]=-(c*(g*t-u*M)-h*(n*t-a*M)+p*(n*u-a*g)),e[10]=c*(d*t-o*M)-f*(n*t-a*M)+p*(n*o-a*d),e[11]=-(c*(d*u-o*g)-f*(n*u-a*g)+h*(n*o-a*d)),e[12]=-(f*(g*l-s*M)-h*(d*l-i*M)+p*(d*s-i*g)),e[13]=c*(g*l-s*M)-h*(n*l-r*M)+p*(n*s-r*g),e[14]=-(c*(d*l-i*M)-f*(n*l-r*M)+p*(n*i-r*d)),e[15]=c*(d*s-i*g)-f*(n*s-r*g)+h*(n*i-r*d),e},t.determinant=function(e){var t=e[0],n=e[1],r=e[2],a=e[3],i=e[4],o=e[5],s=e[6],u=e[7],l=e[8],c=e[9],f=e[10],d=e[11],h=e[12],g=e[13],p=e[14],e=e[15];return(t*o-n*i)*(f*e-d*p)-(t*s-r*i)*(c*e-d*g)+(t*u-a*i)*(c*p-f*g)+(n*s-r*o)*(l*e-d*h)-(n*u-a*o)*(l*p-f*h)+(r*u-a*s)*(l*g-c*h)},t.multiply=r,t.translate=function(e,t,n){var r,a,i,o,s,c,f,d,h,g,p,M,u=n[0],l=n[1],n=n[2];return t===e?(e[12]=t[0]*u+t[4]*l+t[8]*n+t[12],e[13]=t[1]*u+t[5]*l+t[9]*n+t[13],e[14]=t[2]*u+t[6]*l+t[10]*n+t[14],e[15]=t[3]*u+t[7]*l+t[11]*n+t[15]):(r=t[0],a=t[1],i=t[2],o=t[3],s=t[4],c=t[5],f=t[6],d=t[7],h=t[8],g=t[9],p=t[10],M=t[11],e[0]=r,e[1]=a,e[2]=i,e[3]=o,e[4]=s,e[5]=c,e[6]=f,e[7]=d,e[8]=h,e[9]=g,e[10]=p,e[11]=M,e[12]=r*u+s*l+h*n+t[12],e[13]=a*u+c*l+g*n+t[13],e[14]=i*u+f*l+p*n+t[14],e[15]=o*u+d*l+M*n+t[15]),e},t.scale=function(e,t,n){var r=n[0],a=n[1],n=n[2];return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*a,e[5]=t[5]*a,e[6]=t[6]*a,e[7]=t[7]*a,e[8]=t[8]*n,e[9]=t[9]*n,e[10]=t[10]*n,e[11]=t[11]*n,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.rotate=function(e,t,n,r){var a,c,f,d,h,g,p,M,m,v,A,y,T,w,i,o,b,D,x,N,s=r[0],u=r[1],r=r[2],l=Math.sqrt(s*s+u*u+r*r);return Math.abs(l)<S.EPSILON?null:(s*=l=1/l,u*=l,r*=l,l=Math.sin(n),n=Math.cos(n),c=t[0],f=t[1],d=t[2],h=t[3],g=t[4],p=t[5],M=t[6],m=t[7],v=t[8],A=t[9],y=t[10],T=t[11],i=s*u*(a=1-n)-r*l,o=u*u*a+n,b=r*u*a+s*l,D=s*r*a+u*l,x=u*r*a-s*l,N=r*r*a+n,e[0]=c*(n=s*s*a+n)+g*(w=u*s*a+r*l)+v*(r=r*s*a-u*l),e[1]=f*n+p*w+A*r,e[2]=d*n+M*w+y*r,e[3]=h*n+m*w+T*r,e[4]=c*i+g*o+v*b,e[5]=f*i+p*o+A*b,e[6]=d*i+M*o+y*b,e[7]=h*i+m*o+T*b,e[8]=c*D+g*x+v*N,e[9]=f*D+p*x+A*N,e[10]=d*D+M*x+y*N,e[11]=h*D+m*x+T*N,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)},t.rotateX=function(e,t,n){var r=Math.sin(n),n=Math.cos(n),a=t[4],i=t[5],o=t[6],s=t[7],u=t[8],l=t[9],c=t[10],f=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*n+u*r,e[5]=i*n+l*r,e[6]=o*n+c*r,e[7]=s*n+f*r,e[8]=u*n-a*r,e[9]=l*n-i*r,e[10]=c*n-o*r,e[11]=f*n-s*r,e},t.rotateY=function(e,t,n){var r=Math.sin(n),n=Math.cos(n),a=t[0],i=t[1],o=t[2],s=t[3],u=t[8],l=t[9],c=t[10],f=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*n-u*r,e[1]=i*n-l*r,e[2]=o*n-c*r,e[3]=s*n-f*r,e[8]=a*r+u*n,e[9]=i*r+l*n,e[10]=o*r+c*n,e[11]=s*r+f*n,e},t.rotateZ=function(e,t,n){var r=Math.sin(n),n=Math.cos(n),a=t[0],i=t[1],o=t[2],s=t[3],u=t[4],l=t[5],c=t[6],f=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*n+u*r,e[1]=i*n+l*r,e[2]=o*n+c*r,e[3]=s*n+f*r,e[4]=u*n-a*r,e[5]=l*n-i*r,e[6]=c*n-o*r,e[7]=f*n-s*r,e},t.fromTranslation=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e},t.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},t.fromRotation=function(e,t,n){var r,a=n[0],i=n[1],n=n[2],o=Math.sqrt(a*a+i*i+n*n);return Math.abs(o)<S.EPSILON?null:(a*=o=1/o,i*=o,n*=o,o=Math.sin(t),t=Math.cos(t),e[0]=a*a*(r=1-t)+t,e[1]=i*a*r+n*o,e[2]=n*a*r-i*o,e[3]=0,e[4]=a*i*r-n*o,e[5]=i*i*r+t,e[6]=n*i*r+a*o,e[7]=0,e[8]=a*n*r+i*o,e[9]=i*n*r-a*o,e[10]=n*n*r+t,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)},t.fromXRotation=function(e,t){var n=Math.sin(t),t=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t,e[6]=n,e[7]=0,e[8]=0,e[9]=-n,e[10]=t,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},t.fromYRotation=function(e,t){var n=Math.sin(t),t=Math.cos(t);return e[0]=t,e[1]=0,e[2]=-n,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=n,e[9]=0,e[10]=t,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},t.fromZRotation=function(e,t){var n=Math.sin(t),t=Math.cos(t);return e[0]=t,e[1]=n,e[2]=0,e[3]=0,e[4]=-n,e[5]=t,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},t.fromRotationTranslation=d,t.fromQuat2=function(c,e){var t=new S.ARRAY_TYPE(3),n=-e[0],r=-e[1],a=-e[2],i=e[3],o=e[4],s=e[5],u=e[6],l=e[7],f=n*n+r*r+a*a+i*i;return 0<f?(t[0]=2*(o*i+l*n+s*a-u*r)/f,t[1]=2*(s*i+l*r+u*n-o*a)/f,t[2]=2*(u*i+l*a+o*r-s*n)/f):(t[0]=2*(o*i+l*n+s*a-u*r),t[1]=2*(s*i+l*r+u*n-o*a),t[2]=2*(u*i+l*a+o*r-s*n)),d(c,e,t),c},t.getTranslation=function(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e},t.getScaling=function(e,t){var n=t[0],r=t[1],a=t[2],i=t[4],o=t[5],s=t[6],u=t[8],l=t[9],t=t[10];return e[0]=Math.sqrt(n*n+r*r+a*a),e[1]=Math.sqrt(i*i+o*o+s*s),e[2]=Math.sqrt(u*u+l*l+t*t),e},t.getRotation=function(e,t){var n=t[0]+t[5]+t[10],r=0;return 0<n?(r=2*Math.sqrt(n+1),e[3]=.25*r,e[0]=(t[6]-t[9])/r,e[1]=(t[8]-t[2])/r,e[2]=(t[1]-t[4])/r):t[0]>t[5]&&t[0]>t[10]?(r=2*Math.sqrt(1+t[0]-t[5]-t[10]),e[3]=(t[6]-t[9])/r,e[0]=.25*r,e[1]=(t[1]+t[4])/r,e[2]=(t[8]+t[2])/r):t[5]>t[10]?(r=2*Math.sqrt(1+t[5]-t[0]-t[10]),e[3]=(t[8]-t[2])/r,e[0]=(t[1]+t[4])/r,e[1]=.25*r,e[2]=(t[6]+t[9])/r):(r=2*Math.sqrt(1+t[10]-t[0]-t[5]),e[3]=(t[1]-t[4])/r,e[0]=(t[8]+t[2])/r,e[1]=(t[6]+t[9])/r,e[2]=.25*r),e},t.fromRotationTranslationScale=function(e,t,n,r){var a=t[0],i=t[1],o=t[2],t=t[3],s=a+a,u=i+i,l=o+o,c=a*s,f=a*u,a=a*l,d=i*u,i=i*l,o=o*l,s=t*s,u=t*u,t=t*l,l=r[0],h=r[1],r=r[2];return e[0]=(1-(d+o))*l,e[1]=(f+t)*l,e[2]=(a-u)*l,e[3]=0,e[4]=(f-t)*h,e[5]=(1-(c+o))*h,e[6]=(i+s)*h,e[7]=0,e[8]=(a+u)*r,e[9]=(i-s)*r,e[10]=(1-(c+d))*r,e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e},t.fromRotationTranslationScaleOrigin=function(e,t,c,n,r){var a=t[0],i=t[1],o=t[2],t=t[3],f=a+a,s=i+i,u=o+o,d=a*f,h=a*s,a=a*u,g=i*s,i=i*u,o=o*u,f=t*f,s=t*s,t=t*u,u=n[0],l=n[1],n=n[2],p=r[0],M=r[1],r=r[2],m=(1-(g+o))*u,v=(h+t)*u,u=(a-s)*u,h=(h-t)*l,t=(1-(d+o))*l,o=(i+f)*l,l=(a+s)*n,a=(i-f)*n,s=(1-(d+g))*n;return e[0]=m,e[1]=v,e[2]=u,e[3]=0,e[4]=h,e[5]=t,e[6]=o,e[7]=0,e[8]=l,e[9]=a,e[10]=s,e[11]=0,e[12]=c[0]+p-(m*p+h*M+l*r),e[13]=c[1]+M-(v*p+t*M+a*r),e[14]=c[2]+r-(u*p+o*M+s*r),e[15]=1,e},t.fromQuat=function(e,t){var n=t[0],r=t[1],a=t[2],t=t[3],i=n+n,o=r+r,s=a+a,n=n*i,u=r*i,r=r*o,l=a*i,c=a*o,a=a*s,i=t*i,o=t*o,t=t*s;return e[0]=1-r-a,e[1]=u+t,e[2]=l-o,e[3]=0,e[4]=u-t,e[5]=1-n-a,e[6]=c+i,e[7]=0,e[8]=l+o,e[9]=c-i,e[10]=1-n-r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},t.frustum=function(e,t,n,r,a,i,o){var s=1/(n-t),u=1/(a-r),l=1/(i-o);return e[0]=2*i*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*i*u,e[6]=0,e[7]=0,e[8]=(n+t)*s,e[9]=(a+r)*u,e[10]=(o+i)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*i*2*l,e[15]=0,e},t.perspective=function(e,t,n,r,a){var t=1/Math.tan(t/2),i=1/(r-a);return e[0]=t/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(a+r)*i,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*a*r*i,e[15]=0,e},t.perspectiveFromFieldOfView=function(e,t,n,r){var a=Math.tan(t.upDegrees*Math.PI/180),i=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),t=Math.tan(t.rightDegrees*Math.PI/180),s=2/(o+t),u=2/(a+i);return e[0]=s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-(o-t)*s*.5,e[9]=(a-i)*u*.5,e[10]=r/(n-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*n/(n-r),e[15]=0,e},t.ortho=function(e,t,n,r,a,i,o){var s=1/(t-n),u=1/(r-a),l=1/(i-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+n)*s,e[13]=(a+r)*u,e[14]=(o+i)*l,e[15]=1,e},t.lookAt=function(e,t,n,c){var r=void 0,a=void 0,i=void 0,o=void 0,f=void 0,d=void 0,s=void 0,h=t[0],g=t[1],t=t[2],p=c[0],M=c[1],c=c[2],u=n[0],l=n[1],n=n[2];return Math.abs(h-u)<S.EPSILON&&Math.abs(g-l)<S.EPSILON&&Math.abs(t-n)<S.EPSILON?m(e):(u=h-u,l=g-l,n=t-n,r=M*(n*=s=1/Math.sqrt(u*u+l*l+n*n))-c*(l*=s),a=c*(u*=s)-p*n,i=p*l-M*u,(s=Math.sqrt(r*r+a*a+i*i))?(r*=s=1/s,a*=s,i*=s):i=a=r=0,o=l*i-n*a,f=n*r-u*i,d=u*a-l*r,(s=Math.sqrt(o*o+f*f+d*d))?(o*=s=1/s,f*=s,d*=s):d=f=o=0,e[0]=r,e[1]=o,e[2]=u,e[3]=0,e[4]=a,e[5]=f,e[6]=l,e[7]=0,e[8]=i,e[9]=d,e[10]=n,e[11]=0,e[12]=-(r*h+a*g+i*t),e[13]=-(o*h+f*g+d*t),e[14]=-(u*h+l*g+n*t),e[15]=1,e)},t.targetTo=function(e,t,n,r){var a=t[0],c=t[1],t=t[2],i=r[0],f=r[1],r=r[2],o=a-n[0],s=c-n[1],n=t-n[2],u=o*o+s*s+n*n,l=(0<u&&(o*=u=1/Math.sqrt(u),s*=u,n*=u),f*n-r*s),r=r*o-i*n,i=i*s-f*o;return 0<(u=l*l+r*r+i*i)&&(l*=u=1/Math.sqrt(u),r*=u,i*=u),e[0]=l,e[1]=r,e[2]=i,e[3]=0,e[4]=s*i-n*r,e[5]=n*l-o*i,e[6]=o*r-s*l,e[7]=0,e[8]=o,e[9]=s,e[10]=n,e[11]=0,e[12]=a,e[13]=c,e[14]=t,e[15]=1,e},t.str=function(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"},t.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2)+Math.pow(e[4],2)+Math.pow(e[5],2)+Math.pow(e[6],2)+Math.pow(e[7],2)+Math.pow(e[8],2)+Math.pow(e[9],2)+Math.pow(e[10],2)+Math.pow(e[11],2)+Math.pow(e[12],2)+Math.pow(e[13],2)+Math.pow(e[14],2)+Math.pow(e[15],2))},t.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e[8]=t[8]+n[8],e[9]=t[9]+n[9],e[10]=t[10]+n[10],e[11]=t[11]+n[11],e[12]=t[12]+n[12],e[13]=t[13]+n[13],e[14]=t[14]+n[14],e[15]=t[15]+n[15],e},t.subtract=a,t.multiplyScalar=function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*n,e[9]=t[9]*n,e[10]=t[10]*n,e[11]=t[11]*n,e[12]=t[12]*n,e[13]=t[13]*n,e[14]=t[14]*n,e[15]=t[15]*n,e},t.multiplyScalarAndAdd=function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e[6]=t[6]+n[6]*r,e[7]=t[7]+n[7]*r,e[8]=t[8]+n[8]*r,e[9]=t[9]+n[9]*r,e[10]=t[10]+n[10]*r,e[11]=t[11]+n[11]*r,e[12]=t[12]+n[12]*r,e[13]=t[13]+n[13]*r,e[14]=t[14]+n[14]*r,e[15]=t[15]+n[15]*r,e},t.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]},t.equals=function(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],o=e[4],s=e[5],u=e[6],l=e[7],c=e[8],f=e[9],d=e[10],h=e[11],g=e[12],p=e[13],M=e[14],e=e[15],m=t[0],v=t[1],A=t[2],y=t[3],T=t[4],w=t[5],b=t[6],D=t[7],x=t[8],N=t[9],E=t[10],I=t[11],L=t[12],C=t[13],O=t[14],t=t[15];return Math.abs(n-m)<=S.EPSILON*Math.max(1,Math.abs(n),Math.abs(m))&&Math.abs(r-v)<=S.EPSILON*Math.max(1,Math.abs(r),Math.abs(v))&&Math.abs(a-A)<=S.EPSILON*Math.max(1,Math.abs(a),Math.abs(A))&&Math.abs(i-y)<=S.EPSILON*Math.max(1,Math.abs(i),Math.abs(y))&&Math.abs(o-T)<=S.EPSILON*Math.max(1,Math.abs(o),Math.abs(T))&&Math.abs(s-w)<=S.EPSILON*Math.max(1,Math.abs(s),Math.abs(w))&&Math.abs(u-b)<=S.EPSILON*Math.max(1,Math.abs(u),Math.abs(b))&&Math.abs(l-D)<=S.EPSILON*Math.max(1,Math.abs(l),Math.abs(D))&&Math.abs(c-x)<=S.EPSILON*Math.max(1,Math.abs(c),Math.abs(x))&&Math.abs(f-N)<=S.EPSILON*Math.max(1,Math.abs(f),Math.abs(N))&&Math.abs(d-E)<=S.EPSILON*Math.max(1,Math.abs(d),Math.abs(E))&&Math.abs(h-I)<=S.EPSILON*Math.max(1,Math.abs(h),Math.abs(I))&&Math.abs(g-L)<=S.EPSILON*Math.max(1,Math.abs(g),Math.abs(L))&&Math.abs(p-C)<=S.EPSILON*Math.max(1,Math.abs(p),Math.abs(C))&&Math.abs(M-O)<=S.EPSILON*Math.max(1,Math.abs(M),Math.abs(O))&&Math.abs(e-t)<=S.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))};var S=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(9));function m(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function r(e,t,n){var r=t[0],a=t[1],i=t[2],c=t[3],f=t[4],d=t[5],h=t[6],g=t[7],p=t[8],M=t[9],m=t[10],v=t[11],A=t[12],y=t[13],T=t[14],t=t[15],o=n[0],s=n[1],u=n[2],l=n[3];return e[0]=o*r+s*f+u*p+l*A,e[1]=o*a+s*d+u*M+l*y,e[2]=o*i+s*h+u*m+l*T,e[3]=o*c+s*g+u*v+l*t,o=n[4],s=n[5],u=n[6],l=n[7],e[4]=o*r+s*f+u*p+l*A,e[5]=o*a+s*d+u*M+l*y,e[6]=o*i+s*h+u*m+l*T,e[7]=o*c+s*g+u*v+l*t,o=n[8],s=n[9],u=n[10],l=n[11],e[8]=o*r+s*f+u*p+l*A,e[9]=o*a+s*d+u*M+l*y,e[10]=o*i+s*h+u*m+l*T,e[11]=o*c+s*g+u*v+l*t,o=n[12],s=n[13],u=n[14],l=n[15],e[12]=o*r+s*f+u*p+l*A,e[13]=o*a+s*d+u*M+l*y,e[14]=o*i+s*h+u*m+l*T,e[15]=o*c+s*g+u*v+l*t,e}function d(e,t,n){var r=t[0],a=t[1],i=t[2],t=t[3],o=r+r,s=a+a,u=i+i,l=r*o,c=r*s,r=r*u,f=a*s,a=a*u,i=i*u,o=t*o,s=t*s,t=t*u;return e[0]=1-(f+i),e[1]=c+t,e[2]=r-s,e[3]=0,e[4]=c-t,e[5]=1-(l+i),e[6]=a+o,e[7]=0,e[8]=r+s,e[9]=a-o,e[10]=1-(l+f),e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function a(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e[6]=t[6]-n[6],e[7]=t[7]-n[7],e[8]=t[8]-n[8],e[9]=t[9]-n[9],e[10]=t[10]-n[10],e[11]=t[11]-n[11],e[12]=t[12]-n[12],e[13]=t[13]-n[13],e[14]=t[14]-n[14],e[15]=t[15]-n[15],e}t.mul=r,t.sub=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sub=t.mul=void 0,t.create=function(){var e=new v.ARRAY_TYPE(9);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},t.fromMat4=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e},t.clone=function(e){var t=new v.ARRAY_TYPE(9);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t},t.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},t.fromValues=function(e,t,n,r,a,i,o,s,u){var l=new v.ARRAY_TYPE(9);return l[0]=e,l[1]=t,l[2]=n,l[3]=r,l[4]=a,l[5]=i,l[6]=o,l[7]=s,l[8]=u,l},t.set=function(e,t,n,r,a,i,o,s,u,l){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=o,e[6]=s,e[7]=u,e[8]=l,e},t.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},t.transpose=function(e,t){var n,r,a;return e===t?(n=t[1],r=t[2],a=t[5],e[1]=t[3],e[2]=t[6],e[3]=n,e[5]=t[7],e[6]=r,e[7]=a):(e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8]),e},t.invert=function(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],o=t[4],s=t[5],u=t[6],c=t[7],t=t[8],f=t*o-s*c,d=-t*i+s*u,h=c*i-o*u,l=n*f+r*d+a*h;return l?(e[0]=f*(l=1/l),e[1]=(-t*r+a*c)*l,e[2]=(s*r-a*o)*l,e[3]=d*l,e[4]=(t*n-a*u)*l,e[5]=(-s*n+a*i)*l,e[6]=h*l,e[7]=(-c*n+r*u)*l,e[8]=(o*n-r*i)*l,e):null},t.adjoint=function(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],o=t[4],s=t[5],u=t[6],l=t[7],t=t[8];return e[0]=o*t-s*l,e[1]=a*l-r*t,e[2]=r*s-a*o,e[3]=s*u-i*t,e[4]=n*t-a*u,e[5]=a*i-n*s,e[6]=i*l-o*u,e[7]=r*u-n*l,e[8]=n*o-r*i,e},t.determinant=function(e){var t=e[0],n=e[1],r=e[2],a=e[3],i=e[4],o=e[5],s=e[6],u=e[7],e=e[8];return t*(e*i-o*u)+n*(-e*a+o*s)+r*(u*a-i*s)},t.multiply=r,t.translate=function(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=t[4],u=t[5],c=t[6],f=t[7],t=t[8],l=n[0],n=n[1];return e[0]=r,e[1]=a,e[2]=i,e[3]=o,e[4]=s,e[5]=u,e[6]=l*r+n*o+c,e[7]=l*a+n*s+f,e[8]=l*i+n*u+t,e},t.rotate=function(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=t[4],u=t[5],c=t[6],f=t[7],t=t[8],l=Math.sin(n),n=Math.cos(n);return e[0]=n*r+l*o,e[1]=n*a+l*s,e[2]=n*i+l*u,e[3]=n*o-l*r,e[4]=n*s-l*a,e[5]=n*u-l*i,e[6]=c,e[7]=f,e[8]=t,e},t.scale=function(e,t,n){var r=n[0],n=n[1];return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=n*t[3],e[4]=n*t[4],e[5]=n*t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},t.fromTranslation=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=t[0],e[7]=t[1],e[8]=1,e},t.fromRotation=function(e,t){var n=Math.sin(t),t=Math.cos(t);return e[0]=t,e[1]=n,e[2]=0,e[3]=-n,e[4]=t,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},t.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=t[1],e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},t.fromMat2d=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=0,e[3]=t[2],e[4]=t[3],e[5]=0,e[6]=t[4],e[7]=t[5],e[8]=1,e},t.fromQuat=function(e,t){var n=t[0],r=t[1],a=t[2],t=t[3],i=n+n,o=r+r,s=a+a,n=n*i,u=r*i,r=r*o,l=a*i,c=a*o,a=a*s,i=t*i,o=t*o,t=t*s;return e[0]=1-r-a,e[3]=u-t,e[6]=l+o,e[1]=u+t,e[4]=1-n-a,e[7]=c-i,e[2]=l-o,e[5]=c+i,e[8]=1-n-r,e},t.normalFromMat4=function(e,t){var n=t[0],r=t[1],c=t[2],a=t[3],f=t[4],d=t[5],h=t[6],i=t[7],o=t[8],s=t[9],u=t[10],l=t[11],g=t[12],p=t[13],M=t[14],t=t[15],m=n*d-r*f,v=n*h-c*f,A=n*i-a*f,y=r*h-c*d,T=r*i-a*d,w=c*i-a*h,b=o*p-s*g,D=o*M-u*g,o=o*t-l*g,x=s*M-u*p,s=s*t-l*p,u=u*t-l*M,l=m*u-v*s+A*x+y*o-T*D+w*b;return l?(e[0]=(d*u-h*s+i*x)*(l=1/l),e[1]=(h*o-f*u-i*D)*l,e[2]=(f*s-d*o+i*b)*l,e[3]=(c*s-r*u-a*x)*l,e[4]=(n*u-c*o+a*D)*l,e[5]=(r*o-n*s-a*b)*l,e[6]=(p*w-M*T+t*y)*l,e[7]=(M*A-g*w-t*v)*l,e[8]=(g*T-p*A+t*m)*l,e):null},t.projection=function(e,t,n){return e[0]=2/t,e[1]=0,e[2]=0,e[3]=0,e[4]=-2/n,e[5]=0,e[6]=-1,e[7]=1,e[8]=1,e},t.str=function(e){return"mat3("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+")"},t.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2)+Math.pow(e[4],2)+Math.pow(e[5],2)+Math.pow(e[6],2)+Math.pow(e[7],2)+Math.pow(e[8],2))},t.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e[8]=t[8]+n[8],e},t.subtract=a,t.multiplyScalar=function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*n,e},t.multiplyScalarAndAdd=function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e[6]=t[6]+n[6]*r,e[7]=t[7]+n[7]*r,e[8]=t[8]+n[8]*r,e},t.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]},t.equals=function(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],o=e[4],s=e[5],u=e[6],l=e[7],e=e[8],c=t[0],f=t[1],d=t[2],h=t[3],g=t[4],p=t[5],M=t[6],m=t[7],t=t[8];return Math.abs(n-c)<=v.EPSILON*Math.max(1,Math.abs(n),Math.abs(c))&&Math.abs(r-f)<=v.EPSILON*Math.max(1,Math.abs(r),Math.abs(f))&&Math.abs(a-d)<=v.EPSILON*Math.max(1,Math.abs(a),Math.abs(d))&&Math.abs(i-h)<=v.EPSILON*Math.max(1,Math.abs(i),Math.abs(h))&&Math.abs(o-g)<=v.EPSILON*Math.max(1,Math.abs(o),Math.abs(g))&&Math.abs(s-p)<=v.EPSILON*Math.max(1,Math.abs(s),Math.abs(p))&&Math.abs(u-M)<=v.EPSILON*Math.max(1,Math.abs(u),Math.abs(M))&&Math.abs(l-m)<=v.EPSILON*Math.max(1,Math.abs(l),Math.abs(m))&&Math.abs(e-t)<=v.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))};var v=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(9));function r(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=t[4],u=t[5],l=t[6],c=t[7],t=t[8],f=n[0],d=n[1],h=n[2],g=n[3],p=n[4],M=n[5],m=n[6],v=n[7],n=n[8];return e[0]=f*r+d*o+h*l,e[1]=f*a+d*s+h*c,e[2]=f*i+d*u+h*t,e[3]=g*r+p*o+M*l,e[4]=g*a+p*s+M*c,e[5]=g*i+p*u+M*t,e[6]=m*r+v*o+n*l,e[7]=m*a+v*s+n*c,e[8]=m*i+v*u+n*t,e}function a(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e[6]=t[6]-n[6],e[7]=t[7]-n[7],e[8]=t[8]-n[8],e}t.mul=r,t.sub=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var a=(n=n(0))&&n.__esModule?n:{default:n},i={delegates:[],currentOperation:null,preDelegateOperations:[],postDelegateOperations:[],currentParent:null};function r(e,t){var n,r;Object.assign(t,i,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),a.default.get(e,t,["currentOperation"]),a.default.setGet(e,t,["delegates","currentParent","preDelegateOperations","postDelegateOperations"]),n=e,(r=t).classHierarchy.push("vtkRenderPass"),n.getOperation=function(){return r.currentOperation},n.setCurrentOperation=function(e){r.currentOperation=e,r.currentTraverseOperation="traverse"+a.default.capitalize(r.currentOperation)},n.getTraverseOperation=function(){return r.currentTraverseOperation},n.traverse=function(t){r.deleted||(r.currentParent=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null,r.preDelegateOperations.forEach(function(e){n.setCurrentOperation(e),t.traverse(n)}),r.delegates.forEach(function(e){e.traverse(t,n)}),r.postDelegateOperations.forEach(function(e){n.setCurrentOperation(e),t.traverse(n)}))}}n=t.newInstance=a.default.newInstance(r,"vtkRenderPass");t.default={newInstance:n,extend:r}},function(u,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0;var h=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var n=e,r=t,a=[],i=!0,e=!1,t=void 0;try{for(var o,s=n[Symbol.iterator]();!(i=(o=s.next()).done)&&(a.push(o.value),!r||a.length!==r);i=!0);}catch(n){e=!0,t=n}finally{try{!i&&s.return&&s.return()}finally{if(e)throw t}}return a}throw new TypeError("Invalid attempt to destructure non-iterable instance")},a=(e.extend=r,n(t(0))),l=n(t(234)),c=n(t(220)),p=n(t(101)),M=n(t(176)),m=n(t(4)),v=n(t(174)),i=t(10),A=n(t(173));function n(e){return e&&e.__esModule?e:{default:e}}var o=a.default.vtkDebugMacro,s=a.default.vtkErrorMacro;function g(e,t,n){var r=e.createFramebuffer(),a=e.createTexture(),t=(e.bindTexture(e.TEXTURE_2D,a),e.texImage2D(e.TEXTURE_2D,0,t,2,2,0,t,n,null),e.bindFramebuffer(e.FRAMEBUFFER,r),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,a,0),e.checkFramebufferStatus(e.FRAMEBUFFER));return e.bindFramebuffer(e.FRAMEBUFFER,null),e.bindTexture(e.TEXTURE_2D,null),t===e.FRAMEBUFFER_COMPLETE}var y={cullFaceEnabled:!1,depthMaskEnabled:!0,shaderCache:null,initialized:!1,context:null,canvas:null,size:[300,300],cursorVisibility:!0,cursor:"pointer",textureUnitManager:null,textureResourceIds:null,renderPasses:[],notifyImageReady:!1,webgl2:!1,defaultToWebgl2:!0,vrResolution:[2160,1200],queryVRSize:!1,activeFramebuffer:null,vrDisplay:null};function r(e,t){var f,d,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};function r(e){return d.canvas.toDataURL(0<arguments.length&&void 0!==e?e:"image/png")}Object.assign(t,y,n),t.canvas=document.createElement("canvas"),t.canvas.style.width="100%",t.textureResourceIds=new Map,m.default.extend(e,t,n),t.myFactory=c.default.newInstance(),t.shaderCache=M.default.newInstance(),t.shaderCache.setOpenGLRenderWindow(e),t.renderPasses[0]=l.default.newInstance(),a.default.event(e,t,"imageReady"),a.default.event(e,t,"haveVRDisplay"),a.default.get(e,t,["shaderCache","textureUnitManager","webgl2","vrDisplay"]),a.default.setGet(e,t,["initialized","context","canvas","renderPasses","notifyImageReady","defaultToWebgl2","cursor","queryVRSize","activeFramebuffer"]),a.default.setGetArray(e,t,["size","vrResolution"],2),f=e,(d=t).classHierarchy.push("vtkOpenGLRenderWindow"),f.onModified(function(){d.renderable&&(d.canvas.setAttribute("width",d.size[0]),d.canvas.setAttribute("height",d.size[1])),d.canvas.style.display=d.useOffScreen?"none":"block",d.el&&(d.el.style.cursor=d.cursorVisibility?d.cursor:"none")}),f.buildPass=function(e){e&&d.renderable&&(f.prepareNodes(),f.addMissingNodes(d.renderable.getRenderersByReference()),f.removeUnusedNodes(),f.initialize(),d.children.forEach(function(e){e.setOpenGLRenderWindow(f)}))},f.initialize=function(){var e;d.initialized||(d.context=f.get3DContext(),d.textureUnitManager=v.default.newInstance(),d.textureUnitManager.setContext(d.context),d.shaderCache.setContext(d.context),(e=d.context).blendFuncSeparate(e.SRC_ALPHA,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA),e.depthFunc(e.LEQUAL),e.enable(e.BLEND),d.initialized=!0)},f.makeCurrent=function(){d.context.makeCurrent()},f.setContainer=function(e){d.el&&d.el!==e&&(d.canvas.parentNode===d.el?d.el.removeChild(d.canvas):s("Error: canvas parent node does not match container")),d.el!==e&&(d.el=e,d.el&&d.el.appendChild(d.canvas),f.modified())},f.getFramebufferSize=function(){return d.activeFramebuffer?d.activeFramebuffer.getSize():d.size},f.isInViewport=function(e,t,n){var n=n.getViewportByReference(),r=f.getFramebufferSize();return n[0]*r[0]<=e&&n[2]*r[0]>=e&&n[1]*r[1]<=t&&n[3]*r[1]>=t},f.getViewportSize=function(e){var e=e.getViewportByReference(),t=f.getFramebufferSize();return[(e[2]-e[0])*t[0],(e[3]-e[1])*t[1]]},f.getViewportCenter=function(e){e=f.getViewportSize(e);return[.5*e[0],.5*e[1]]},f.displayToNormalizedDisplay=function(e,t,n){var r=f.getFramebufferSize();return[e/r[0],t/r[1],n]},f.normalizedDisplayToDisplay=function(e,t,n){var r=f.getFramebufferSize();return[e*r[0],t*r[1],n]},f.worldToView=function(e,t,n,r){var a=f.getViewportSize(r);return r.worldToView(e,t,n,a[0]/a[1])},f.viewToWorld=function(e,t,n,r){var a=f.getViewportSize(r);return r.viewToWorld(e,t,n,a[0]/a[1])},f.worldToDisplay=function(e,t,n,r){e=f.worldToView(e,t,n,r),t=r.viewToNormalizedDisplay(e[0],e[1],e[2]);return f.normalizedDisplayToDisplay(t[0],t[1],t[2])},f.displayToWorld=function(e,t,n,r){e=f.displayToNormalizedDisplay(e,t,n),t=r.normalizedDisplayToView(e[0],e[1],e[2]);return f.viewToWorld(t[0],t[1],t[2],r)},f.normalizedDisplayToViewport=function(e,t,n,r){r=r.getViewportByReference(),r=f.normalizedDisplayToDisplay(r[0],r[1],0),e=f.normalizedDisplayToDisplay(e,t,n);return[e[0]-r[0]-.5,e[1]-r[1]-.5,n]},f.viewportToNormalizedViewport=function(e,t,n,r){r=f.getViewportSize(r);return r&&0!==r[0]&&0!==r[1]?[e/(r[0]-1),t/(r[1]-1),n]:[e,t,n]},f.normalizedViewportToViewport=function(e,t,n){var r=f.getFramebufferSize();return[e*(r[0]-1),t*(r[1]-1),n]},f.displayToLocalDisplay=function(e,t,n){return[e,f.getFramebufferSize()[1]-t-1,n]},f.viewportToNormalizedDisplay=function(e,t,n,r){r=r.getViewportByReference(),e=e+(r=f.normalizedDisplayToDisplay(r[0],r[1],0))[0]+.5,t=t+r[1]+.5;return f.displayToNormalizedDisplay(e,t,n)},f.getPixelData=function(e,t,n,r){var a=new Uint8Array((n-e+1)*(r-t+1)*4);return d.context.readPixels(e,t,n-e+1,r-t+1,d.context.RGBA,d.context.UNSIGNED_BYTE,a),a},f.get2DContext=function(){return d.canvas.getContext("2d")},f.get3DContext=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{preserveDrawingBuffer:!1,depth:!0,alpha:!0},t=null,n="undefined"!=typeof WebGL2RenderingContext;return d.webgl2=!1,d.defaultToWebgl2&&n&&(t=d.canvas.getContext("webgl2"))&&(d.webgl2=!0,o("using webgl2")),t||(o("using webgl1"),t=d.canvas.getContext("webgl",e)||d.canvas.getContext("experimental-webgl",e)),new A.default({PROVIDE_MOBILE_VRDISPLAY:!0,DIRTY_SUBMIT_FRAME_BINDINGS:!1,BUFFER_SCALE:.75}),navigator.getVRDisplays&&navigator.getVRDisplays().then(function(e){0<e.length&&(d.vrDisplay=e[0],d.vrDisplay.depthNear=.01,d.vrDisplay.depthFar=100,f.invokeHaveVRDisplay())}),d.canvas.addEventListener("webglcontextlost",function(e){e.preventDefault()},!1),d.canvas.addEventListener("webglcontextrestored",f.restoreContext,!1),t},f.startVR=function(){d.vrDisplay.capabilities.canPresent?d.vrDisplay.requestPresent([{source:d.canvas}]).then(function(){var e,t,n;d.oldCanvasSize=d.size.slice(),d.el&&d.vrDisplay.capabilities.hasExternalDisplay&&(d.el.style.display="none"),d.queryVRSize?(n=d.vrDisplay.getEyeParameters("left"),e=d.vrDisplay.getEyeParameters("right"),t=Math.floor(n.renderWidth+e.renderWidth),n=Math.floor(Math.max(n.renderHeight,e.renderHeight)),f.setSize(t,n)):f.setSize(d.vrResolution),d.renderable.getRenderers()[0].resetCamera(),d.vrFrameData=new VRFrameData,d.renderable.getInteractor().switchToVRAnimation(),f.vrRender()}).catch(function(){console.log("failed to requestPresent")}):s("vrDisplay is not connected")},f.stopVR=function(){d.renderable.getInteractor().returnFromVRAnimation(),d.vrDisplay.exitPresent(),d.vrDisplay.cancelAnimationFrame(d.vrSceneFrame),f.setSize.apply(f,function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}(d.oldCanvasSize)),d.el&&d.vrDisplay.capabilities.hasExternalDisplay&&(d.el.style.display="block");var e=d.renderable.getRenderers()[0];e.getActiveCamera().setProjectionMatrix(null),e.setViewport(0,0,1,1),f.traverseAllPasses()},f.vrRender=function(){d.renderable.getInteractor().updateGamepads(d.vrDisplay.displayId),d.vrSceneFrame=d.vrDisplay.requestAnimationFrame(f.vrRender),d.vrDisplay.getFrameData(d.vrFrameData);var e=d.renderable.getRenderers()[0];e.setViewport(0,0,.5,1),e.getActiveCamera().computeViewParametersFromPhysicalMatrix(d.vrFrameData.leftViewMatrix),e.getActiveCamera().setProjectionMatrix(d.vrFrameData.leftProjectionMatrix),f.traverseAllPasses(),e.setViewport(.5,0,1,1),e.getActiveCamera().computeViewParametersFromPhysicalMatrix(d.vrFrameData.rightViewMatrix),e.getActiveCamera().setProjectionMatrix(d.vrFrameData.rightProjectionMatrix),f.traverseAllPasses(),d.vrDisplay.submitFrame()},f.restoreContext=function(){var e=p.default.newInstance();e.setCurrentOperation("Release"),e.traverse(f,null)},f.activateTexture=function(e){var t,n=d.textureResourceIds.get(e);void 0===n?(t=f.getTextureUnitManager().allocate())<0?s("Hardware does not support the number of textures defined."):(d.textureResourceIds.set(e,t),d.context.activeTexture(d.context.TEXTURE0+t)):d.context.activeTexture(d.context.TEXTURE0+n)},f.deactivateTexture=function(e){var t=d.textureResourceIds.get(e);void 0!==t&&(f.getTextureUnitManager().free(t),d.textureResourceIds.delete(e))},f.getTextureUnitForTexture=function(e){e=d.textureResourceIds.get(e);return void 0!==e?e:-1},f.getDefaultTextureInternalFormat=function(e,t,n){if(d.webgl2)switch(e){case i.VtkDataTypes.UNSIGNED_CHAR:switch(t){case 1:return d.context.R8;case 2:return d.context.RG8;case 3:return d.context.RGB8;default:return d.context.RGBA8}default:case i.VtkDataTypes.FLOAT:switch(t){case 1:return d.context.R16F;case 2:return d.context.RG16F;case 3:return d.context.RGB16F;default:return d.context.RGBA16F}}switch(t){case 1:return d.context.LUMINANCE;case 2:return d.context.LUMINANCE_ALPHA;case 3:return d.context.RGB;default:return d.context.RGBA}},f.captureImage=function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"image/png";return d.deleted?null:(f.traverseAllPasses(),r(e))},f.getGLInformations=function(){for(var e=f.get3DContext(),t=e.getExtension("OES_texture_float"),n=e.getExtension("OES_texture_half_float"),r=e.getExtension("WEBGL_debug_renderer_info"),a=e.getExtension("WEBGL_draw_buffers"),i=e.getExtension("EXT_texture_filter_anisotropic")||e.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),o=[["Max Vertex Attributes","MAX_VERTEX_ATTRIBS",e.getParameter(e.MAX_VERTEX_ATTRIBS)],["Max Varying Vectors","MAX_VARYING_VECTORS",e.getParameter(e.MAX_VARYING_VECTORS)],["Max Vertex Uniform Vectors","MAX_VERTEX_UNIFORM_VECTORS",e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS)],["Max Fragment Uniform Vectors","MAX_FRAGMENT_UNIFORM_VECTORS",e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS)],["Max Fragment Texture Image Units","MAX_TEXTURE_IMAGE_UNITS",e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS)],["Max Vertex Texture Image Units","MAX_VERTEX_TEXTURE_IMAGE_UNITS",e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS)],["Max Combined Texture Image Units","MAX_COMBINED_TEXTURE_IMAGE_UNITS",e.getParameter(e.MAX_COMBINED_TEXTURE_IMAGE_UNITS)],["Max 2D Texture Size","MAX_TEXTURE_SIZE",e.getParameter(e.MAX_TEXTURE_SIZE)],["Max Cube Texture Size","MAX_CUBE_MAP_TEXTURE_SIZE",e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE)],["Max Texture Anisotropy","MAX_TEXTURE_MAX_ANISOTROPY_EXT",i&&e.getParameter(i.MAX_TEXTURE_MAX_ANISOTROPY_EXT)],["Point Size Range","ALIASED_POINT_SIZE_RANGE",e.getParameter(e.ALIASED_POINT_SIZE_RANGE).join(" - ")],["Line Width Range","ALIASED_LINE_WIDTH_RANGE",e.getParameter(e.ALIASED_LINE_WIDTH_RANGE).join(" - ")],["Max Viewport Dimensions","MAX_VIEWPORT_DIMS",e.getParameter(e.MAX_VIEWPORT_DIMS).join(" - ")],["Max Renderbuffer Size","MAX_RENDERBUFFER_SIZE",e.getParameter(e.MAX_RENDERBUFFER_SIZE)],["Framebuffer Red Bits","RED_BITS",e.getParameter(e.RED_BITS)],["Framebuffer Green Bits","GREEN_BITS",e.getParameter(e.GREEN_BITS)],["Framebuffer Blue Bits","BLUE_BITS",e.getParameter(e.BLUE_BITS)],["Framebuffer Alpha Bits","ALPHA_BITS",e.getParameter(e.ALPHA_BITS)],["Framebuffer Depth Bits","DEPTH_BITS",e.getParameter(e.DEPTH_BITS)],["Framebuffer Stencil Bits","STENCIL_BITS",e.getParameter(e.STENCIL_BITS)],["Framebuffer Subpixel Bits","SUBPIXEL_BITS",e.getParameter(e.SUBPIXEL_BITS)],["MSAA Samples","SAMPLES",e.getParameter(e.SAMPLES)],["MSAA Sample Buffers","SAMPLE_BUFFERS",e.getParameter(e.SAMPLE_BUFFERS)],["Supported Formats for UByte Render Targets     ","UNSIGNED_BYTE RENDER TARGET FORMATS",[t&&g(e,e.RGBA,e.UNSIGNED_BYTE)?"RGBA":"",t&&g(e,e.RGB,e.UNSIGNED_BYTE)?"RGB":"",t&&g(e,e.LUMINANCE,e.UNSIGNED_BYTE)?"LUMINANCE":"",t&&g(e,e.ALPHA,e.UNSIGNED_BYTE)?"ALPHA":"",t&&g(e,e.LUMINANCE_ALPHA,e.UNSIGNED_BYTE)?"LUMINANCE_ALPHA":""].join(" ")],["Supported Formats for Half Float Render Targets","HALF FLOAT RENDER TARGET FORMATS",[n&&g(e,e.RGBA,n.HALF_FLOAT_OES)?"RGBA":"",n&&g(e,e.RGB,n.HALF_FLOAT_OES)?"RGB":"",n&&g(e,e.LUMINANCE,n.HALF_FLOAT_OES)?"LUMINANCE":"",n&&g(e,e.ALPHA,n.HALF_FLOAT_OES)?"ALPHA":"",n&&g(e,e.LUMINANCE_ALPHA,n.HALF_FLOAT_OES)?"LUMINANCE_ALPHA":""].join(" ")],["Supported Formats for Full Float Render Targets","FLOAT RENDER TARGET FORMATS",[t&&g(e,e.RGBA,e.FLOAT)?"RGBA":"",t&&g(e,e.RGB,e.FLOAT)?"RGB":"",t&&g(e,e.LUMINANCE,e.FLOAT)?"LUMINANCE":"",t&&g(e,e.ALPHA,e.FLOAT)?"ALPHA":"",t&&g(e,e.LUMINANCE_ALPHA,e.FLOAT)?"LUMINANCE_ALPHA":""].join(" ")],["Max Multiple Render Targets Buffers","MAX_DRAW_BUFFERS_WEBGL",a?e.getParameter(a.MAX_DRAW_BUFFERS_WEBGL):0],["High Float Precision in Vertex Shader","HIGH_FLOAT VERTEX_SHADER",[e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_FLOAT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_FLOAT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_FLOAT).rangeMax,"</sup>)"].join("")],["Medium Float Precision in Vertex Shader","MEDIUM_FLOAT VERTEX_SHADER",[e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).rangeMax,"</sup>)"].join("")],["Low Float Precision in Vertex Shader","LOW_FLOAT VERTEX_SHADER",[e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.LOW_FLOAT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.LOW_FLOAT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.LOW_FLOAT).rangeMax,"</sup>)"].join("")],["High Float Precision in Fragment Shader","HIGH_FLOAT FRAGMENT_SHADER",[e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).rangeMax,"</sup>)"].join("")],["Medium Float Precision in Fragment Shader","MEDIUM_FLOAT FRAGMENT_SHADER",[e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).rangeMax,"</sup>)"].join("")],["Low Float Precision in Fragment Shader","LOW_FLOAT FRAGMENT_SHADER",[e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.LOW_FLOAT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.LOW_FLOAT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.LOW_FLOAT).rangeMax,"</sup>)"].join("")],["High Int Precision in Vertex Shader","HIGH_INT VERTEX_SHADER",[e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_INT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_INT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_INT).rangeMax,"</sup>)"].join("")],["Medium Int Precision in Vertex Shader","MEDIUM_INT VERTEX_SHADER",[e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_INT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_INT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_INT).rangeMax,"</sup>)"].join("")],["Low Int Precision in Vertex Shader","LOW_INT VERTEX_SHADER",[e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.LOW_INT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.LOW_INT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.LOW_INT).rangeMax,"</sup>)"].join("")],["High Int Precision in Fragment Shader","HIGH_INT FRAGMENT_SHADER",[e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_INT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_INT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_INT).rangeMax,"</sup>)"].join("")],["Medium Int Precision in Fragment Shader","MEDIUM_INT FRAGMENT_SHADER",[e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_INT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_INT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_INT).rangeMax,"</sup>)"].join("")],["Low Int Precision in Fragment Shader","LOW_INT FRAGMENT_SHADER",[e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.LOW_INT).precision," (-2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.LOW_INT).rangeMin,"</sup> - 2<sup>",e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.LOW_INT).rangeMax,"</sup>)"].join("")],["Supported Extensions","EXTENSIONS",e.getSupportedExtensions().join("<br/>\t\t\t\t\t    ")],["WebGL Renderer","RENDERER",e.getParameter(e.RENDERER)],["WebGL Vendor","VENDOR",e.getParameter(e.VENDOR)],["WebGL Version","VERSION",e.getParameter(e.VERSION)],["Shading Language Version","SHADING_LANGUAGE_VERSION",e.getParameter(e.SHADING_LANGUAGE_VERSION)],["Unmasked Renderer","UNMASKED_RENDERER",r&&e.getParameter(r.UNMASKED_RENDERER_WEBGL)],["Unmasked Vendor","UNMASKED_VENDOR",r&&e.getParameter(r.UNMASKED_VENDOR_WEBGL)],["WebGL Version","WEBGL_VERSION",d.webgl2?2:1]],s={};o.length;){var u=o.pop(),u=h(u,3),c=u[0],l=u[1],u=u[2];l&&(s[l]={label:c,value:u})}return s},f.traverseAllPasses=function(){if(d.renderPasses)for(var e=0;e<d.renderPasses.length;++e)d.renderPasses[e].traverse(f,null);d.notifyImageReady&&f.invokeImageReady(r())},f.disableDepthMask=function(){d.depthMaskEnabled&&(d.context.depthMask(!1),d.depthMaskEnabled=!1)},f.enableDepthMask=function(){d.depthMaskEnabled||(d.context.depthMask(!0),d.depthMaskEnabled=!0)},f.disableCullFace=function(){d.cullFaceEnabled&&(d.context.disable(d.context.CULL_FACE),d.cullFaceEnabled=!1)},f.enableCullFace=function(){d.cullFaceEnabled||(d.context.enable(d.context.CULL_FACE),d.cullFaceEnabled=!0)}}t=e.newInstance=a.default.newInstance(r,"vtkOpenGLRenderWindow");e.default={newInstance:t,extend:r}},function(e,a,i){!function(e){var t=void 0!==e&&e||"undefined"!=typeof self&&self||window,n=Function.prototype.apply;function r(e,t){this._id=e,this._clearFn=t}a.setTimeout=function(){return new r(n.call(setTimeout,t,arguments),clearTimeout)},a.setInterval=function(){return new r(n.call(setInterval,t,arguments),clearInterval)},a.clearTimeout=a.clearInterval=function(e){e&&e.close()},r.prototype.unref=r.prototype.ref=function(){},r.prototype.close=function(){this._clearFn.call(t,this._id)},a.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},a.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},a._unrefActive=a.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;0<=t&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},i(235),a.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,a.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}.call(this,i(8))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,i){var f,a={},d=void 0,h=e.container,o=e.scene,s=e.render,u={};for(f in i.objects?u=i.objects:i.onlyOneObject?(u.object=[],o.map(function(e,t){u.object.push({scene:e.name})})):o.map(function(e,t){u[e.name]=[{scene:e.name}]}),u)for(var g=0;g<u[f].length;g++)u[f][g].name||(u[f][g].name=u[f][g].scene);var p=Object.keys(u).length;function M(e){var t=e.target.value,n=l.querySelectorAll("select")[0].value,r=a[n].querySelectorAll("select")[0].value,r=D[n+r],r=T[r];y[n]=e.target.selectedIndex,o[r][t]?P.default.applySettings(o[r],o[r][t]):z[t]&&P.default.applySettings(o[r],z[t]),s&&s()}function m(e){var t,e=e.target.value;for(t in u)a[t].style.display="none";a[e].style.display="block";var n=a[e].querySelectorAll("select")[0].value;D[e+n],c.querySelectorAll("select")[0].selectedIndex=y[e]}function v(e){var t=l.querySelectorAll("select")[0].value,e=e.target.value,e=D[t+e],n=T[e],r=c.querySelectorAll("select")[0];r.selectedIndex=y[t];for(var a=0;a<u[t].length;a++){var i=u[t][a].name,i=D[t+i],i=T[i];i!==n?P.default.applySettings(o[i],z.Hidden):P.default.applySettings(o[i],z[r.options[r.selectedIndex].value])}s&&s()}var A,t=document.createElement("div"),y={},T={};for(A in o.map(function(e,t){T[e.name]=t}),u)y[A]=0;var w,e=document.createElement("div"),n=(e.style.position="relative",e.style.width="20px",e.style.height="22px",e.style.flex="none",e.style.backgroundColor="grey",e.style.borderRadius="5px",e.style.padding="2px 2px 2px 2px",e.style.border="solid 1px black",document.createElement("input")),b=(n.type="checkbox",n.style.position="relative",n.style.borderRadius="5px",n.style.verticalAlign="middle",n.style.textAlign="center",n.style.width="100%",n.style.height="100%",e.style.display="flex",e.style.flexFlow="row",e.appendChild(n),t.appendChild(e),'<li><select name="scene-objects" style="width: 100%;">');for(w in u)b+='<option value="'+w+'">'+w+"</option>";b+="</select></li>";var r,l=document.createElement("div"),D=(l.innerHTML=b,l.style.position="relative",l.style.backgroundColor="white",l.style.borderRadius="5px",l.style.listStyle="none",l.style.padding="0px 5px",l.style.margin="0",l.style.display="none",l.style.border="solid 1px black",l.style.width="20%",l.style.maxWidth="200px",t.appendChild(l),{});for(r in u){for(var x='<li><select name="fields-objects'+r+'" style="width: 100%;">',N=0;N<u[r].length;N++)x+='<option value="'+u[r][N].name+'">'+u[r][N].name+"</option>",D[r+u[r][N].name]=u[r][N].scene;x+="</select></li>",a[r]=document.createElement("div"),a[r].innerHTML=x,a[r].style.position="relative",a[r].style.backgroundColor="white",a[r].style.borderRadius="5px",a[r].style.listStyle="none",a[r].style.padding="0px 5px",a[r].style.margin="0",a[r].style.display="none",a[r].style.border="solid 1px black",a[r].style.width="20%",a[r].style.maxWidth="200px",t.appendChild(a[r])}var e='<li><select name="representation" style="width: 100%;">'+k+"</select></li>",c=document.createElement("div");c.innerHTML=e,c.style.position="relative",c.style.backgroundColor="white",c.style.borderRadius="5px",c.style.listStyle="none",c.style.padding="0px 5px",c.style.margin="0",c.style.display="none",c.style.border="solid 1px black",c.style.width="20%",c.style.maxWidth="200px",t.style.display="flex",t.style.flexFlow="row",t.appendChild(c),h.appendChild(t),n.addEventListener("change",function(){var e=l.querySelectorAll("select")[0].value;"none"===c.style.display?(1<p&&(l.style.display="block"),a[e].style.display="block",c.style.display="block"):(l.style.display="none",a[e].style.display="none",c.style.display="none")});for(var E=l.querySelectorAll("select"),I=0;I<E.length;I++)E[I].addEventListener("change",m);for(d in u)a[d].addEventListener("change",v);for(var L,C=c.querySelectorAll("select"),O=0;O<C.length;O++)C[O].addEventListener("change",M);for(L in i.activateWidgetSettingByDefault&&(n.checked=i.activateWidgetSettingByDefault,(e=document.createEvent("Event")).initEvent("change",!0,!0),n.dispatchEvent(e)),o.map(function(e,t){P.default.applySettings(o[t],z.Hidden)}),u){var S=u[L][0].name,S=D[L+S],S=T[S],j=c.querySelectorAll("select")[0],_=y[L];P.default.applySettings(o[S],z[j.options[_].value])}s&&s()};var P=(t=n(82))&&t.__esModule?t:{default:t},z={Surface:{actor:{visibility:!0},property:{Representation:2,edgeVisibility:!1}},"Surface with Edges":{actor:{visibility:!0},property:{Representation:2,edgeVisibility:!0,edgeColor:[.5,.5,.5]}},Wireframe:{actor:{visibility:!0},property:{Representation:1,edgeVisibility:!1}},Points:{actor:{visibility:!0},property:{Representation:0,edgeVisibility:!1}},Hidden:{actor:{visibility:!1},property:{edgeVisibility:!1}}},k=Object.keys(z).map(function(e){return'<option value="'+e+'">'+e+"</option>"}).join("")},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var a=(n=n(0))&&n.__esModule?n:{default:n},i={repeat:!1,interpolate:!1,edgeClamp:!1,image:null,imageLoaded:!1};function r(e,t){var n,r;Object.assign(t,i,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),a.default.algo(e,t,6,0),a.default.get(e,t,["imageLoaded"]),a.default.setGet(e,t,["repeat","edgeClamp","interpolate","image"]),n=e,(r=t).classHierarchy.push("vtkTexture"),n.imageLoaded=function(){r.image.removeEventListener("load",n.imageLoaded),r.imageLoaded=!0,n.modified()},n.setImage=function(e){r.image!==e&&(null!==e&&(n.setInputData(null),n.setInputConnection(null)),r.image=e,r.imageLoaded=!1,e.complete?n.imageLoaded():e.addEventListener("load",n.imageLoaded),n.modified())}}n=t.newInstance=a.default.newInstance(r,"vtkTexture");t.default={newInstance:n,extend:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var a=(n=n(0))&&n.__esModule?n:{default:n},o=[],s={name:"",numberOfComponents:1,size:0,dataType:"string"};function r(e,t){var r,i;if(Object.assign(t,s,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),!t.empty&&!t.values&&!t.size)throw new TypeError("Cannot create vtkStringArray object without: size > 0, values");t.values?Array.isArray(t.values)&&(t.values=t.values):t.values=[],t.values&&(t.size=t.values.length),a.default.obj(e,t),a.default.set(e,t,["name"]),r=e,(i=t).classHierarchy.push("vtkStringArray"),r.getComponent=function(e){return i.values[e*i.numberOfComponents+(1<arguments.length&&void 0!==arguments[1]?arguments[1]:0)]},r.setComponent=function(e,t,n){n!==i.values[e*i.numberOfComponents+t]&&(i.values[e*i.numberOfComponents+t]=n,r.modified())},r.getData=function(){return i.values},r.getTuple=function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:o,n=i.numberOfComponents||1;t.length&&(t.length=n);for(var r=e*n,a=0;a<n;a++)t[a]=i.values[r+a];return t},r.getTupleLocation=function(){return(0<arguments.length&&void 0!==arguments[0]?arguments[0]:1)*i.numberOfComponents},r.getNumberOfComponents=function(){return i.numberOfComponents},r.getNumberOfValues=function(){return i.values.length},r.getNumberOfTuples=function(){return i.values.length/i.numberOfComponents},r.getDataType=function(){return i.dataType},r.newClone=function(){return u({name:i.name,numberOfComponents:i.numberOfComponents})},r.getName=function(){return i.name||(r.modified(),i.name="vtkStringArray"+r.getMTime()),i.name},r.setData=function(e,t){i.values=e,i.size=e.length,t&&(i.numberOfComponents=t),i.size%i.numberOfComponents!=0&&(i.numberOfComponents=1),r.modified()}}var u=t.newInstance=a.default.newInstance(r,"vtkStringArray");t.default={newInstance:u,extend:r}},function(e,c,t){"use strict";var n=t(55),r=t(1),a=t(38),i=t(37),o=t(16),s=t(57),u=t(11);function l(e,t){this.options=e,this.loadOptions=t}l.prototype={isEncrypted:function(){return 1==(1&this.bitFlag)},useUTF8:function(){return 2048==(2048&this.bitFlag)},readLocalPart:function(e){var t;if(e.skip(22),this.fileNameLength=e.readInt(2),t=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(t),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in s)if(s.hasOwnProperty(t)&&s[t].magic===e)return s[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+r.pretty(this.compressionMethod)+" unknown (inner file : "+r.transformTo("string",this.fileName)+")");this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(e){var t;this.extraFields[1]&&(t=n(this.extraFields[1].value),this.uncompressedSize===r.MAX_VALUE_32BITS&&(this.uncompressedSize=t.readInt(8)),this.compressedSize===r.MAX_VALUE_32BITS&&(this.compressedSize=t.readInt(8)),this.localHeaderOffset===r.MAX_VALUE_32BITS&&(this.localHeaderOffset=t.readInt(8)),this.diskNumberStart===r.MAX_VALUE_32BITS&&(this.diskNumberStart=t.readInt(4)))},readExtraFields:function(e){var t,n,r,a=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index<a;)t=e.readInt(2),n=e.readInt(2),r=e.readData(n),this.extraFields[t]={id:t,length:n,value:r}},handleUTF8:function(){var e,t=u.uint8array?"uint8array":"array";this.useUTF8()?(this.fileNameStr=o.utf8decode(this.fileName),this.fileCommentStr=o.utf8decode(this.fileComment)):(null!==(e=this.findExtraFieldUnicodePath())?this.fileNameStr=e:(e=r.transformTo(t,this.fileName),this.fileNameStr=this.loadOptions.decodeFileName(e)),null!==(e=this.findExtraFieldUnicodeComment())?this.fileCommentStr=e:(e=r.transformTo(t,this.fileComment),this.fileCommentStr=this.loadOptions.decodeFileName(e)))},findExtraFieldUnicodePath:function(){var e,t=this.extraFields[28789];return!t||1!==(e=n(t.value)).readInt(1)||i(this.fileName)!==e.readInt(4)?null:o.utf8decode(e.readData(t.length-5))},findExtraFieldUnicodeComment:function(){var e,t=this.extraFields[25461];return!t||1!==(e=n(t.value)).readInt(1)||i(this.fileComment)!==e.readInt(4)?null:o.utf8decode(e.readData(t.length-5))}},e.exports=l},function(e,t,n){"use strict";var r=n(52);function a(e){r.call(this,e)}n(1).inherits(a,r),a.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=a},function(e,t,n){"use strict";var r=n(53);function a(e){r.call(this,e)}n(1).inherits(a,r),a.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},a.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},a.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},a.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=a},function(e,t,n){"use strict";var r=n(55),a=n(1),i=n(56),o=n(107),s=(n(16),n(11));function u(e){this.files=[],this.loadOptions=e}u.prototype={checkSignature:function(e){var t;if(!this.reader.readAndCheckSignature(e))throw this.reader.index-=4,t=this.reader.readString(4),new Error("Corrupted zip or bug: unexpected signature ("+a.pretty(t)+", expected "+a.pretty(e)+")")},isSignature:function(e,t){var n=this.reader.index,e=(this.reader.setIndex(e),this.reader.readString(4)===t);return this.reader.setIndex(n),e},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?"uint8array":"array",t=a.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(t)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,n,r=this.zip64EndOfCentralSize-44;0<r;)e=this.reader.readInt(2),t=this.reader.readInt(4),n=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:n}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){for(var e,t=0;t<this.files.length;t++)e=this.files[t],this.reader.setIndex(e.localHeaderOffset),this.checkSignature(i.LOCAL_FILE_HEADER),e.readLocalPart(this.reader),e.handleUTF8(),e.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(i.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(i.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,i.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(e);var t=e;if(this.checkSignature(i.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===a.MAX_VALUE_16BITS||this.diskWithCentralDirStart===a.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===a.MAX_VALUE_16BITS||this.centralDirRecords===a.MAX_VALUE_16BITS||this.centralDirSize===a.MAX_VALUE_32BITS||this.centralDirOffset===a.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(i.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(i.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,i.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(i.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(i.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}e=this.centralDirOffset+this.centralDirSize,e=t-(e=this.zip64?e+20+(12+this.zip64EndOfCentralSize):e);if(0<e)this.isSignature(t,i.CENTRAL_FILE_HEADER)||(this.reader.zero=e);else if(e<0)throw new Error("Corrupted zip: missing "+Math.abs(e)+" bytes.")},prepareReader:function(e){this.reader=r(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},e.exports=u},function(e,t,n){"use strict";var r=n(1),o=n(21),s=n(16),u=(r=n(1),n(110)),l=n(58),c=n(27);e.exports=function(e,a){var i=this;return a=r.extend(a||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:s.utf8decode}),c.isNode&&c.isStream(e)?o.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):r.prepareContent("the loaded zip file",e,!0,a.optimizedBinaryString,a.base64).then(function(e){var t=new u(a);return t.load(e),t}).then(function(e){var t=[o.Promise.resolve(e)],n=e.files;if(a.checkCRC32)for(var r=0;r<n.length;r++)t.push(function(r){return new o.Promise(function(e,t){var n=r.decompressed.getContentWorker().pipe(new l);n.on("error",function(e){t(e)}).on("end",function(){n.streamInfo.crc32!==r.decompressed.crc32?t(new Error("Corrupted zip : CRC32 mismatch")):e()}).resume()})}(n[r]));return o.Promise.all(t)}).then(function(e){for(var e=e.shift(),t=e.files,n=0;n<t.length;n++){var r=t[n];i.file(r.fileNameStr,r.decompressed,{binary:!0,optimizedBinaryString:!0,date:r.date,dir:r.dir,comment:r.fileCommentStr.length?r.fileCommentStr:null,unixPermissions:r.unixPermissions,dosPermissions:r.dosPermissions,createFolders:a.createFolders})}return e.zipComment.length&&(i.comment=e.zipComment),i})}},function(e,t,n){"use strict";var r=n(1),a=n(5);function i(e,t){a.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}r.inherits(i,a),i.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on("data",function(e){t.push({data:e,meta:{percent:0}})}).on("error",function(e){t.isPaused?this.generatedError=e:t.error(e)}).on("end",function(){t.isPaused?t._upstreamEnded=!0:t.end()})},i.prototype.pause=function(){return!!a.prototype.pause.call(this)&&(this._stream.pause(),!0)},i.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},e.exports=i},function(e,i,t){"use strict";function v(e,t){for(var n="",r=0;r<t;r++)n+=String.fromCharCode(255&e),e>>>=8;return n}function r(e,t,c,f,n,r){var a=e.file,d=e.compression,i=r!==y.utf8encode,h=A.transformTo("string",r(a.name)),g=A.transformTo("string",y.utf8encode(a.name)),o=a.comment,r=A.transformTo("string",r(o)),p=A.transformTo("string",y.utf8encode(o)),M=g.length!==a.name.length,o=p.length!==o.length,s="",m=a.dir,u=a.date,l={crc32:0,compressedSize:0,uncompressedSize:0},c=(t&&!c||(l.crc32=e.crc32,l.compressedSize=e.compressedSize,l.uncompressedSize=e.uncompressedSize),0),e=(t&&(c|=8),i||!M&&!o||(c|=2048),0),t=0,u=(m&&(e|=16),"UNIX"===n?(t=798,e|=(65535&((i=a.unixPermissions)?i:m?16893:33204))<<16):(t=20,e|=63&(a.dosPermissions||0)),n=u.getUTCHours(),n=(n=((n<<=6)|u.getUTCMinutes())<<5)|u.getUTCSeconds()/2,i=u.getUTCFullYear()-1980,i=(i=((i<<=4)|u.getUTCMonth()+1)<<5)|u.getUTCDate(),M&&(m=v(1,1)+v(T(h),4)+g,s+="up"+v(m.length,2)+m),o&&(a=v(1,1)+v(T(r),4)+p,s+="uc"+v(a.length,2)+a),""),u=(u=(u=(u=(u=(u=(u=(u=(u=(u+="\n\0")+v(c,2))+d.magic)+v(n,2))+v(i,2))+v(l.crc32,4))+v(l.compressedSize,4))+v(l.uncompressedSize,4))+v(h.length,2))+v(s.length,2);return{fileRecord:w.LOCAL_FILE_HEADER+u+h+s,dirRecord:w.CENTRAL_FILE_HEADER+v(t,2)+u+v(r.length,2)+"\0\0\0\0"+v(e,4)+v(f,4)+h+s+r}}var A=t(1),a=t(5),y=t(16),T=t(37),w=t(56);function n(e,t,n,r){a.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=n,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}A.inherits(n,a),n.prototype.push=function(e){var t=e.meta.percent||0,n=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,a.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:n?(t+100*(n-r-1))/n:100}}))},n.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;t?(e=r(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName),this.push({data:e.fileRecord,meta:{percent:0}})):this.accumulate=!0},n.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,n=r(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(n.dirRecord),t)this.push({data:(t=e,w.DATA_DESCRIPTOR+v(t.crc32,4)+v(t.compressedSize,4)+v(t.uncompressedSize,4)),meta:{percent:100}});else for(this.push({data:n.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},n.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var n=this.bytesWritten-e,n=function(e,t,n,r,a){a=A.transformTo("string",a(r));return w.CENTRAL_DIRECTORY_END+"\0\0\0\0"+v(e,2)+v(e,2)+v(t,4)+v(n,4)+v(a.length,2)+a}(this.dirRecords.length,n,e,this.zipComment,this.encodeFileName);this.push({data:n,meta:{percent:100}})},n.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},n.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()}),e.on("error",function(e){t.error(e)}),this},n.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},n.prototype.error=function(e){var t=this._sources;if(!a.prototype.error.call(this,e))return!1;for(var n=0;n<t.length;n++)try{t[n].error(e)}catch(e){}return!0},n.prototype.lock=function(){a.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},e.exports=n},function(e,t,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,a=n(30),i=n(1),o=n(5),s=r?"uint8array":"array";function u(e,t){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}t.magic="\b\0",i.inherits(u,o),u.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(i.transformTo(s,e.data),!1)},u.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},u.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},u.prototype._createPako=function(){this._pako=new a[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var t=this;this._pako.onData=function(e){t.push({data:e,meta:t.meta})}},t.compressWorker=function(e){return new u("Deflate",e)},t.uncompressWorker=function(){return new u("Inflate",{})}},function(e,t,n){"use strict";var l=n(57),r=n(113);t.generateWorker=function(e,o,t){var s=new r(o.streamFiles,t,o.platform,o.encodeFileName),u=0;try{e.forEach(function(e,t){u++;var n=function(e,t){e=e||t,t=l[e];if(!t)throw new Error(e+" is not a valid compression method !");return t}(t.options.compression,o.compression),r=t.options.compressionOptions||o.compressionOptions||{},a=t.dir,i=t.date;t._compressWorker(n,r).withStreamInfo("file",{name:e,dir:a,date:i,comment:t.comment||"",unixPermissions:t.unixPermissions,dosPermissions:t.dosPermissions}).pipe(s)}),s.entriesCount=u}catch(e){s.error(e)}return s}},function(e,c,t){"use strict";function n(e,t,n){this.name=e,this.dir=n.dir,this.date=n.date,this.comment=n.comment,this.unixPermissions=n.unixPermissions,this.dosPermissions=n.dosPermissions,this._data=t,this._dataBinary=n.binary,this.options={compression:n.compression,compressionOptions:n.compressionOptions}}var a=t(62),r=t(60),i=t(16),o=t(38),s=t(5);n.prototype={internalStream:function(e){var e=e.toLowerCase(),t="string"===e||"text"===e,n=("binarystring"!==e&&"text"!==e||(e="string"),this._decompressWorker()),r=!this._dataBinary;return r&&!t&&(n=n.pipe(new i.Utf8EncodeWorker)),!r&&t&&(n=n.pipe(new i.Utf8DecodeWorker)),new a(n,e,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof o&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var n=this._decompressWorker();return this._dataBinary||(n=n.pipe(new i.Utf8EncodeWorker)),o.createWorkerFrom(n,e,t)},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof s?this._data:new r(this._data)}};for(var u=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],f=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},l=0;l<u.length;l++)n.prototype[u[l]]=f;e.exports=n},function(e,t,n){"use strict";var a=n(73).Readable;function r(e,t,n){a.call(this,t),this._helper=e;var r=this;e.on("data",function(e,t){r.push(e)||r._helper.pause(),n&&n(t)}).on("error",function(e){r.emit("error",e)}).on("end",function(){r.push(null)})}n(1).inherits(r,a),r.prototype._read=function(){this._helper.resume()},e.exports=r},function(e,t,n){"use strict";var r=n(5),a=n(1);function i(e){r.call(this,"ConvertWorker to "+e),this.destType=e}a.inherits(i,r),i.prototype.processChunk=function(e){this.push({data:a.transformTo(this.destType,e.data),meta:e.meta})},e.exports=i},function(l,e,t){"use strict";!function(t){var r,e,n,a,i=t.MutationObserver||t.WebKitMutationObserver,o=i?(e=0,i=new i(u),n=t.document.createTextNode(""),i.observe(n,{characterData:!0}),function(){n.data=e=++e%2}):t.setImmediate||void 0===t.MessageChannel?"document"in t&&"onreadystatechange"in t.document.createElement("script")?function(){var e=t.document.createElement("script");e.onreadystatechange=function(){u(),e.onreadystatechange=null,e.parentNode.removeChild(e),e=null},t.document.documentElement.appendChild(e)}:function(){setTimeout(u,0)}:((a=new t.MessageChannel).port1.onmessage=u,function(){a.port2.postMessage(0)}),s=[];function u(){var e,t;r=!0;for(var n=s.length;n;){for(t=s,s=[],e=-1;++e<n;)t[e]();n=s.length}r=!1}l.exports=function(e){1!==s.push(e)||r||o()}}.call(this,t(8))},function(t,n,d){"use strict";var h=d(119);function u(){}var l={},a=["REJECTED"],i=["FULFILLED"],r=["PENDING"];function e(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=r,this.queue=[],this.outcome=void 0,e!==u&&c(this,e)}function o(e,t,n){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function s(t,n,r){h(function(){var e;try{e=n(r)}catch(e){return l.reject(t,e)}e===t?l.reject(t,new TypeError("Cannot resolve promise with itself")):l.resolve(t,e)})}function g(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function c(t,e){var n=!1;function r(e){n||(n=!0,l.reject(t,e))}function a(e){n||(n=!0,l.resolve(t,e))}var i=f(function(){e(a,r)});"error"===i.status&&r(i.value)}function f(e,t){var n={};try{n.value=e(t),n.status="success"}catch(e){n.status="error",n.value=e}return n}(t.exports=e).prototype.catch=function(e){return this.then(null,e)},e.prototype.then=function(e,t){if("function"!=typeof e&&this.state===i||"function"!=typeof t&&this.state===a)return this;var n=new this.constructor(u);return this.state!==r?s(n,this.state===i?e:t,this.outcome):this.queue.push(new o(n,e,t)),n},o.prototype.callFulfilled=function(e){l.resolve(this.promise,e)},o.prototype.otherCallFulfilled=function(e){s(this.promise,this.onFulfilled,e)},o.prototype.callRejected=function(e){l.reject(this.promise,e)},o.prototype.otherCallRejected=function(e){s(this.promise,this.onRejected,e)},l.resolve=function(e,t){var n=f(g,t);if("error"===n.status)return l.reject(e,n.value);n=n.value;if(n)c(e,n);else{e.state=i,e.outcome=t;for(var r=-1,a=e.queue.length;++r<a;)e.queue[r].callFulfilled(t)}return e},l.reject=function(e,t){e.state=a,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},e.resolve=function(e){return e instanceof this?e:l.resolve(new this(u),e)},e.reject=function(e){var t=new this(u);return l.reject(t,e)},e.all=function(e){var n=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,a=!1;if(!r)return this.resolve([]);for(var i=new Array(r),o=0,t=-1,s=new this(u);++t<r;)!function(e,t){n.resolve(e).then(function(e){i[t]=e,++o!==r||a||(a=!0,l.resolve(s,i))},function(e){a||(a=!0,l.reject(s,e))})}(e[t],t);return s},e.race=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var a,i=-1,o=new this(u);++i<n;)a=e[i],t.resolve(a).then(function(e){r||(r=!0,l.resolve(o,e))},function(e){r||(r=!0,l.reject(o,e))});return o}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){n=n(26).document;e.exports=n&&n.documentElement},function(e,t){e.exports=function(e,t,n){var r=void 0===n;switch(t.length){case 0:return r?e():e.call(n);case 1:return r?e(t[0]):e.call(n,t[0]);case 2:return r?e(t[0],t[1]):e.call(n,t[0],t[1]);case 3:return r?e(t[0],t[1],t[2]):e.call(n,t[0],t[1],t[2]);case 4:return r?e(t[0],t[1],t[2],t[3]):e.call(n,t[0],t[1],t[2],t[3])}return e.apply(n,t)}},function(c,f,e){function t(){var e,t=+this;l.hasOwnProperty(t)&&(e=l[t],delete l[t],e())}function d(e){t.call(e.data)}var r,n=e(65),h=e(123),g=e(122),p=e(63),a=e(26),M=a.process,i=a.setImmediate,o=a.clearImmediate,s=a.MessageChannel,u=a.Dispatch,m=0,l={};i&&o||(i=function(e){for(var t=[],n=1;n<arguments.length;)t.push(arguments[n++]);return l[++m]=function(){h("function"==typeof e?e:Function(e),t)},r(m),m},o=function(e){delete l[e]},"process"==e(121)(M)?r=function(e){M.nextTick(n(t,e,1))}:u&&u.now?r=function(e){u.now(n(t,e,1))}:s?(s=(e=new s).port2,e.port1.onmessage=d,r=n(s.postMessage,s,1)):a.addEventListener&&"function"==typeof postMessage&&!a.importScripts?(r=function(e){a.postMessage(e+"","*")},a.addEventListener("message",d,!1)):r="onreadystatechange"in p("script")?function(e){g.appendChild(p("script")).onreadystatechange=function(){g.removeChild(this),t.call(e)}}:function(e){setTimeout(n(t,e,1),0)}),c.exports={set:i,clear:o}},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){var a=n(40);e.exports=function(e,t){if(!a(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!a(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!a(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!a(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){e.exports=!n(39)&&!n(64)(function(){return 7!=Object.defineProperty(n(63)("div"),"a",{get:function(){return 7}}).a})},function(e,t,n){var r=n(40);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},function(e,t,n){var r=n(129),a=n(128),i=n(127),o=Object.defineProperty;t.f=n(39)?Object.defineProperty:function(e,t,n){if(r(e),t=i(t,!0),r(n),a)try{return o(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},function(e,t,n){var r=n(130),a=n(126);e.exports=n(39)?function(e,t,n){return r.f(e,t,a(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t,n){function p(e,t,n){var r,a,i,c=e&p.F,o=e&p.G,f=e&p.S,d=e&p.P,h=e&p.B,g=e&p.W,s=o?m:m[t]||(m[t]={}),u=s.prototype,l=o?M:f?M[t]:(M[t]||{}).prototype;for(r in n=o?t:n)(a=!c&&l&&void 0!==l[r])&&y(s,r)||(i=(a?l:n)[r],s[r]=o&&"function"!=typeof l[r]?n[r]:h&&a?v(i,M):g&&l[r]==i?function(r){function e(e,t,n){if(this instanceof r){switch(arguments.length){case 0:return new r;case 1:return new r(e);case 2:return new r(e,t)}return new r(e,t,n)}return r.apply(this,arguments)}return e.prototype=r.prototype,e}(i):d&&"function"==typeof i?v(Function.call,i):i,d&&((s.virtual||(s.virtual={}))[r]=i,e&p.R&&u&&!u[r]&&A(u,r,i)))}var M=n(26),m=n(66),v=n(65),A=n(131),y=n(125);p.F=1,p.G=2,p.S=4,p.P=8,p.B=16,p.W=32,p.U=64,p.R=128,e.exports=p},function(e,t,n){var r=n(133),n=n(124);r(r.G+r.B,{setImmediate:n.set,clearImmediate:n.clear})},function(e,t,n){n(134),e.exports=n(66).setImmediate},function(e,t,n){e.exports=n(42).PassThrough},function(e,t,n){e.exports=n(42).Transform},function(e,t,n){e.exports=n(14)},function(e,t,n){e.exports=n(41)},function(e,t,n){"use strict";e.exports=a;var r=n(68),e=Object.create(n(22));function a(e){if(!(this instanceof a))return new a(e);r.call(this,e)}e.inherits=n(15),e.inherits(a,r),a.prototype._transform=function(e,t,n){n(null,e)}},function(e,t,n){!function(n){function r(e){try{if(!n.localStorage)return}catch(e){return}var t=n.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(r("noDeprecation"))return e;var n=!1;return function(){if(!n){if(r("throwDeprecation"))throw new Error(t);r("traceDeprecation")?console.trace(t):console.warn(t),n=!0}return e.apply(this,arguments)}}}.call(this,n(8))},function(e,t){},function(e,t,n){"use strict";var o=n(28).Buffer,r=n(142);function a(){var e=this;if(!(e instanceof a))throw new TypeError("Cannot call a class as a function");this.head=null,this.tail=null,this.length=0}e.exports=(a.prototype.push=function(e){e={data:e,next:null};0<this.length?this.tail.next=e:this.head=e,this.tail=e,++this.length},a.prototype.unshift=function(e){e={data:e,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},a.prototype.shift=function(){var e;if(0!==this.length)return e=this.head.data,1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e},a.prototype.clear=function(){this.head=this.tail=null,this.length=0},a.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},a.prototype.concat=function(e){if(0===this.length)return o.alloc(0);for(var t,n,r=o.allocUnsafe(e>>>0),a=this.head,i=0;a;)t=a.data,n=i,t.copy(r,n),i+=a.data.length,a=a.next;return r},a),r&&r.inspect&&r.inspect.custom&&(e.exports.prototype[r.inspect.custom]=function(){var e=r.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){e.exports=r;var c=n(43).EventEmitter;function r(){c.call(this)}n(15)(r,c),r.Readable=n(42),r.Writable=n(139),r.Duplex=n(138),r.Transform=n(137),r.PassThrough=n(136),(r.Stream=r).prototype.pipe=function(t,e){var n=this;function r(e){t.writable&&!1===t.write(e)&&n.pause&&n.pause()}function a(){n.readable&&n.resume&&n.resume()}n.on("data",r),t.on("drain",a),t._isStdio||e&&!1===e.end||(n.on("end",o),n.on("close",s));var i=!1;function o(){i||(i=!0,t.end())}function s(){i||(i=!0,"function"==typeof t.destroy&&t.destroy())}function u(e){if(l(),0===c.listenerCount(this,"error"))throw e}function l(){n.removeListener("data",r),t.removeListener("drain",a),n.removeListener("end",o),n.removeListener("close",s),n.removeListener("error",u),t.removeListener("error",u),n.removeListener("end",l),n.removeListener("close",l),t.removeListener("close",l)}return n.on("error",u),t.on("error",u),n.on("end",l),n.on("close",l),t.on("close",l),t.emit("pipe",n),t}},function(e,t){t.read=function(e,t,n,r,a){var i,o,c=8*a-r-1,f=(1<<c)-1,d=f>>1,s=-7,u=n?a-1:0,l=n?-1:1,a=e[t+u];for(u+=l,i=a&(1<<-s)-1,a>>=-s,s+=c;0<s;i=256*i+e[t+u],u+=l,s-=8);for(o=i&(1<<-s)-1,i>>=-s,s+=r;0<s;o=256*o+e[t+u],u+=l,s-=8);if(0===i)i=1-d;else{if(i===f)return o?NaN:1/0*(a?-1:1);o+=Math.pow(2,r),i-=d}return(a?-1:1)*o*Math.pow(2,i-r)},t.write=function(e,t,c,n,r,f){var a,i,o=8*f-r-1,s=(1<<o)-1,u=s>>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,l=n?0:f-1,h=n?1:-1,f=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(i=isNaN(t)?1:0,a=s):(a=Math.floor(Math.log(t)/Math.LN2),t*(n=Math.pow(2,-a))<1&&(a--,n*=2),2<=(t+=1<=a+u?d/n:d*Math.pow(2,1-u))*n&&(a++,n/=2),s<=a+u?(i=0,a=s):1<=a+u?(i=(t*n-1)*Math.pow(2,r),a+=u):(i=t*Math.pow(2,u-1)*Math.pow(2,r),a=0));8<=r;e[c+l]=255&i,l+=h,i/=256,r-=8);for(a=a<<r|i,o+=r;0<o;e[c+l]=255&a,l+=h,a/=256,o-=8);e[c+l-h]|=128*f}},function(t,n,e){"use strict";function s(e,t){return t=void 0!==t?t:c.createFolders,e=h(e),this.files[e]||a.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]}var o=e(16),u=e(1),l=e(5),g=e(62),c=e(61),f=e(38),p=e(116),M=e(115),d=e(27),m=e(112),a=function(e,t,n){var r,a=u.getTypeOf(t),i=u.extend(n||{},c),o=(i.date=i.date||new Date,null!==i.compression&&(i.compression=i.compression.toUpperCase()),"string"==typeof i.unixPermissions&&(i.unixPermissions=parseInt(i.unixPermissions,8)),i.unixPermissions&&16384&i.unixPermissions&&(i.dir=!0),i.dosPermissions&&16&i.dosPermissions&&(i.dir=!0),i.dir&&(e=h(e)),i.createFolders&&(r=0<(o=(r="/"===(r=e).slice(-1)?r.substring(0,r.length-1):r).lastIndexOf("/"))?r.substring(0,o):"")&&s.call(this,r,!0),"string"===a&&!1===i.binary&&!1===i.base64),a=(n&&void 0!==n.binary||(i.binary=!o),(t instanceof f&&0===t.uncompressedSize||i.dir||!t||0===t.length)&&(i.base64=!1,i.binary=!0,t="",i.compression="STORE"),t instanceof f||t instanceof l?t:d.isNode&&d.isStream(t)?new m(e,t):u.prepareContent(e,t,i.binary,i.optimizedBinaryString,i.base64)),n=new p(e,a,i);this.files[e]=n},h=function(e){return"/"!==e.slice(-1)&&(e+="/"),e};function i(e){return"[object RegExp]"===Object.prototype.toString.call(e)}t.exports={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,n,r;for(t in this.files)this.files.hasOwnProperty(t)&&(r=this.files[t],(n=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(n,r))},filter:function(n){var r=[];return this.forEach(function(e,t){n(e,t)&&r.push(t)}),r},file:function(e,t,n){if(1!==arguments.length)return e=this.root+e,a.call(this,e,t,n),this;var r;if(i(e))return r=e,this.filter(function(e,t){return!t.dir&&r.test(e)});t=this.files[this.root+e];return t&&!t.dir?t:null},folder:function(n){if(!n)return this;if(i(n))return this.filter(function(e,t){return t.dir&&n.test(e)});var e=this.root+n,e=s.call(this,e),t=this.clone();return t.root=e.name,t},remove:function(n){n=this.root+n;var e=this.files[n];if(e||("/"!==n.slice(-1)&&(n+="/"),e=this.files[n]),e&&!e.dir)delete this.files[n];else for(var t=this.filter(function(e,t){return t.name.slice(0,n.length)===n}),r=0;r<t.length;r++)delete this.files[t[r].name];return this},generate:function(e){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t={};try{if((t=u.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:o.utf8encode})).type=t.type.toLowerCase(),t.compression=t.compression.toUpperCase(),"binarystring"===t.type&&(t.type="string"),!t.type)throw new Error("No output type specified.");u.checkSupport(t.type),"darwin"!==t.platform&&"freebsd"!==t.platform&&"linux"!==t.platform&&"sunos"!==t.platform||(t.platform="UNIX"),"win32"===t.platform&&(t.platform="DOS");var n=t.comment||this.comment||"",r=M.generateWorker(this,t,n)}catch(e){(r=new l("error")).error(e)}return new g(r,t.type||"string",t.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}}},function(e,t,n){"use strict";function r(){if(!(this instanceof r))return new r;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files={},this.comment=null,this.root="",this.clone=function(){var e,t=new r;for(e in this)"function"!=typeof this[e]&&(t[e]=this[e]);return t}}(r.prototype=n(147)).loadAsync=n(111),r.support=n(11),r.defaults=n(61),r.version="3.1.4",r.loadAsync=function(e,t){return(new r).loadAsync(e,t)},r.external=n(21),e.exports=r},function(u,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=s(t(148)),i=s(t(30)),r=s(t(0)),a=s(t(44)),o=t(10);function s(e){return e&&e.__esModule?e:{default:e}}var d=r.default.vtkErrorMacro,l=r.default.vtkDebugMacro,g={uint8array:function(t,n,r){return function(e){t.buffer=new ArrayBuffer(e.length),new Uint8Array(t.buffer).set(e),n&&("string"===t.dataType||"JSON"===t.dataType?t.buffer=i.default.inflate(new Uint8Array(t.buffer),{to:"string"}):t.buffer=i.default.inflate(new Uint8Array(t.buffer)).buffer),"JSON"===t.ref.encode?t.values=JSON.parse(t.buffer):(a.default.ENDIANNESS!==t.ref.encode&&a.default.ENDIANNESS&&(l("Swap bytes of "+t.name),a.default.swapBytes(t.buffer,o.DataTypeByteSize[t.dataType])),t.values=new window[t.dataType](t.buffer)),t.values.length!==t.size&&d("Error in FetchArray: "+t.name+" does not have the proper array size. Got "+t.values.length+", instead of "+t.size),r()}},string:function(t,n,r){return function(e){t.values=n?JSON.parse(i.default.inflate(e,{to:"string"})):JSON.parse(e),r()}}};function h(e){return"/"===e[0]?e.substr(1):e}e.default={create:function(r){var l=!1,c=0,a=new n.default,f=a;return a.loadAsync(r.zipContent).then(function(){l=!0;var n=[];a.forEach(function(e,t){-1!==e.indexOf("index.json")&&n.push(e)}),n.sort(function(e,t){return e.length-t.length});for(var e=n[0].split("/");1<e.length;){var t=e.shift();f=f.folder(t)}r.callback&&r.callback(a)}),{fetchArray:function(){var i=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},o=arguments[1],s=arguments[2],u=3<arguments.length&&void 0!==arguments[3]?arguments[3]:{};return new Promise(function(e,t){l||d("ERROR!!! zip not ready...");var n=h([o,s.ref.basepath,u.compression?s.ref.id+".gz":s.ref.id].join("/")),r=(1==++c&&i.invokeBusy&&i.invokeBusy(!0),"string"!==s.dataType||u.compression?"uint8array":"string"),a=g[r](s,u.compression,function(){delete s.ref,0==--c&&i.invokeBusy&&i.invokeBusy(!1),i.modified&&i.modified(),e(s)});f.file(n).async(r).then(a)})},fetchJSON:function(){var e=arguments[1],t=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},e=h(e);return l||d("ERROR!!! zip not ready..."),t.compression?"gz"===t.compression?f.file(e).async("uint8array").then(function(e){e=i.default.inflate(e,{to:"string"});return Promise.resolve(JSON.parse(e))}):Promise.reject(new Error("Invalid compression")):f.file(e).async("string").then(function(e){return Promise.resolve(JSON.parse(e))})},fetchText:function(){var e=arguments[1],t=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},e=h(e);return l||d("ERROR!!! zip not ready..."),t.compression?"gz"===t.compression?f.file(e).async("uint8array").then(function(e){e=i.default.inflate(e,{to:"string"});return Promise.resolve(e)}):Promise.reject(new Error("Invalid compression")):f.file(e).async("string").then(function(e){return Promise.resolve(e)})}}}}},function(e,t,n){"use strict";e.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},function(e,t,n){"use strict";var _=n(12),P=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],z=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],k=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],R=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(c,f,d,h,g,p,e,M){for(var t,m,v,A,y,T,w,b,D,x=M.bits,n=0,r=0,a=0,i=0,o=0,s=0,u=0,N=0,E=0,l=0,I=null,L=0,C=new _.Buf16(16),O=new _.Buf16(16),S=null,j=0,n=0;n<=15;n++)C[n]=0;for(r=0;r<h;r++)C[f[d+r]]++;for(o=x,i=15;1<=i&&0===C[i];i--);if(i<o&&(o=i),0===i)return g[p++]=20971520,g[p++]=20971520,M.bits=1,0;for(a=1;a<i&&0===C[a];a++);for(o<a&&(o=a),n=N=1;n<=15;n++)if((N=(N<<1)-C[n])<0)return-1;if(0<N&&(0===c||1!==i))return-1;for(O[1]=0,n=1;n<15;n++)O[n+1]=O[n]+C[n];for(r=0;r<h;r++)0!==f[d+r]&&(e[O[f[d+r]]++]=r);if(T=0===c?(I=S=e,19):1===c?(I=P,L-=257,S=z,j-=257,256):(I=k,S=R,-1),n=a,y=p,u=r=l=0,v=-1,A=(E=1<<(s=o))-1,1===c&&852<E||2===c&&592<E)return 1;for(;;){for(D=e[r]<T?(b=0,e[r]):e[r]>T?(b=S[j+e[r]],I[L+e[r]]):(b=96,0),t=1<<(w=n-u),a=m=1<<s;g[y+(l>>u)+(m-=t)]=w<<24|b<<16|D|0,0!==m;);for(t=1<<n-1;l&t;)t>>=1;if(0!==t?l=(l&t-1)+t:l=0,r++,0==--C[n]){if(n===i)break;n=f[d+e[r]]}if(o<n&&(l&A)!==v){for(y+=a,N=1<<(s=n-(u=0===u?o:u));s+u<i&&!((N-=C[s+u])<=0);)s++,N<<=1;if(E+=1<<s,1===c&&852<E||2===c&&592<E)return 1;g[v=l&A]=o<<24|s<<16|y-p|0}}return 0!==l&&(g[y+l]=n-u<<24|64<<16|0),M.bits=o,0}},function(e,t,n){"use strict";e.exports=function(e,c){var f,t,n,d,r,h,a=e.state,i=e.next_in,g=e.input,p=i+(e.avail_in-5),o=e.next_out,s=e.output,M=o-(c-e.avail_out),m=o+(e.avail_out-257),v=a.dmax,A=a.wsize,y=a.whave,T=a.wnext,w=a.window,u=a.hold,l=a.bits,b=a.lencode,D=a.distcode,x=(1<<a.lenbits)-1,N=(1<<a.distbits)-1;e:do{for(l<15&&(u+=g[i++]<<l,l+=8,u+=g[i++]<<l,l+=8),f=b[u&x];;){if(u>>>=t=f>>>24,l-=t,0==(t=f>>>16&255))s[o++]=65535&f;else{if(!(16&t)){if(0==(64&t)){f=b[(65535&f)+(u&(1<<t)-1)];continue}if(32&t){a.mode=12;break e}e.msg="invalid literal/length code",a.mode=30;break e}for(n=65535&f,(t&=15)&&(l<t&&(u+=g[i++]<<l,l+=8),n+=u&(1<<t)-1,u>>>=t,l-=t),l<15&&(u+=g[i++]<<l,l+=8,u+=g[i++]<<l,l+=8),f=D[u&N];;){if(u>>>=t=f>>>24,l-=t,!(16&(t=f>>>16&255))){if(0==(64&t)){f=D[(65535&f)+(u&(1<<t)-1)];continue}e.msg="invalid distance code",a.mode=30;break e}if(d=65535&f,l<(t&=15)&&(u+=g[i++]<<l,(l+=8)<t&&(u+=g[i++]<<l,l+=8)),(d+=u&(1<<t)-1)>v){e.msg="invalid distance too far back",a.mode=30;break e}if(u>>>=t,l-=t,d>(t=o-M)){if((t=d-t)>y&&a.sane){e.msg="invalid distance too far back",a.mode=30;break e}if(h=w,(r=0)===T){if(r+=A-t,t<n){for(n-=t;s[o++]=w[r++],--t;);r=o-d,h=s}}else if(T<t){if(r+=A+T-t,(t-=T)<n){for(n-=t;s[o++]=w[r++],--t;);if(r=0,T<n){for(n-=t=T;s[o++]=w[r++],--t;);r=o-d,h=s}}}else if(r+=T-t,t<n){for(n-=t;s[o++]=w[r++],--t;);r=o-d,h=s}for(;2<n;)s[o++]=h[r++],s[o++]=h[r++],s[o++]=h[r++],n-=3;n&&(s[o++]=h[r++],1<n&&(s[o++]=h[r++]))}else{for(r=o-d;s[o++]=s[r++],s[o++]=s[r++],s[o++]=s[r++],2<(n-=3););n&&(s[o++]=s[r++],1<n&&(s[o++]=s[r++]))}break}}break}}while(i<p&&o<m);i-=n=l>>3,u&=(1<<(l-=n<<3))-1,e.next_in=i,e.next_out=o,e.avail_in=i<p?p-i+5:5-(i-p),e.avail_out=o<m?m-o+257:257-(o-m),a.hold=u,a.bits=l}},function(n,e,t){"use strict";var O=t(12),S=t(80),j=t(79),B=t(152),_=t(151),P=0,z=-2,U=1,r=852,a=592;function V(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function i(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=U,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new O.Buf32(r),t.distcode=t.distdyn=new O.Buf32(a),t.sane=1,t.back=-1,P):z}function o(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,i(e)):z}function s(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?z:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,o(e))):z}function u(e,t){var n;return e?(n=new function(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new O.Buf16(320),this.work=new O.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0},(e.state=n).window=null,(n=s(e,t))!==P&&(e.state=null),n):z}var k,R,F=!0;function G(e,t,n,r){var a,e=e.state;return null===e.window&&(e.wsize=1<<e.wbits,e.wnext=0,e.whave=0,e.window=new O.Buf8(e.wsize)),r>=e.wsize?(O.arraySet(e.window,t,n-e.wsize,e.wsize,0),e.wnext=0,e.whave=e.wsize):((a=e.wsize-e.wnext)>r&&(a=r),O.arraySet(e.window,t,n-r,a,e.wnext),(r-=a)?(O.arraySet(e.window,t,n-r,r,0),e.wnext=r,e.whave=e.wsize):(e.wnext+=a,e.wnext===e.wsize&&(e.wnext=0),e.whave<e.wsize&&(e.whave+=a))),0}e.inflateReset=o,e.inflateReset2=s,e.inflateResetKeep=i,e.inflateInit=function(e){return u(e,15)},e.inflateInit2=u,e.inflate=function(e,c){var t,n,f,r,d,a,h,i,o,g,p,s,M,m,u,v,A,y,T,w,l,b,D,x,N=0,E=new O.Buf8(4),I=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return z;12===(t=e.state).mode&&(t.mode=13),d=e.next_out,f=e.output,h=e.avail_out,r=e.next_in,n=e.input,a=e.avail_in,i=t.hold,o=t.bits,g=a,p=h,b=P;e:for(;;)switch(t.mode){case U:if(0===t.wrap){t.mode=13;break}for(;o<16;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(2&t.wrap&&35615===i){E[t.check=0]=255&i,E[1]=i>>>8&255,t.check=j(t.check,E,2,0),o=i=0,t.mode=2;break}if(t.flags=0,t.head&&(t.head.done=!1),!(1&t.wrap)||(((255&i)<<8)+(i>>8))%31){e.msg="incorrect header check",t.mode=30;break}if(8!=(15&i)){e.msg="unknown compression method",t.mode=30;break}if(o-=4,l=8+(15&(i>>>=4)),0===t.wbits)t.wbits=l;else if(l>t.wbits){e.msg="invalid window size",t.mode=30;break}t.dmax=1<<l,e.adler=t.check=1,t.mode=512&i?10:12,o=i=0;break;case 2:for(;o<16;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(t.flags=i,8!=(255&t.flags)){e.msg="unknown compression method",t.mode=30;break}if(57344&t.flags){e.msg="unknown header flags set",t.mode=30;break}t.head&&(t.head.text=i>>8&1),512&t.flags&&(E[0]=255&i,E[1]=i>>>8&255,t.check=j(t.check,E,2,0)),o=i=0,t.mode=3;case 3:for(;o<32;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}t.head&&(t.head.time=i),512&t.flags&&(E[0]=255&i,E[1]=i>>>8&255,E[2]=i>>>16&255,E[3]=i>>>24&255,t.check=j(t.check,E,4,0)),o=i=0,t.mode=4;case 4:for(;o<16;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}t.head&&(t.head.xflags=255&i,t.head.os=i>>8),512&t.flags&&(E[0]=255&i,E[1]=i>>>8&255,t.check=j(t.check,E,2,0)),o=i=0,t.mode=5;case 5:if(1024&t.flags){for(;o<16;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}t.length=i,t.head&&(t.head.extra_len=i),512&t.flags&&(E[0]=255&i,E[1]=i>>>8&255,t.check=j(t.check,E,2,0)),o=i=0}else t.head&&(t.head.extra=null);t.mode=6;case 6:if(1024&t.flags&&((s=(s=t.length)>a?a:s)&&(t.head&&(l=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Array(t.head.extra_len)),O.arraySet(t.head.extra,n,r,s,l)),512&t.flags&&(t.check=j(t.check,n,s,r)),a-=s,r+=s,t.length-=s),t.length))break e;t.length=0,t.mode=7;case 7:if(2048&t.flags){if(0===a)break e;for(s=0;l=n[r+s++],t.head&&l&&t.length<65536&&(t.head.name+=String.fromCharCode(l)),l&&s<a;);if(512&t.flags&&(t.check=j(t.check,n,s,r)),a-=s,r+=s,l)break e}else t.head&&(t.head.name=null);t.length=0,t.mode=8;case 8:if(4096&t.flags){if(0===a)break e;for(s=0;l=n[r+s++],t.head&&l&&t.length<65536&&(t.head.comment+=String.fromCharCode(l)),l&&s<a;);if(512&t.flags&&(t.check=j(t.check,n,s,r)),a-=s,r+=s,l)break e}else t.head&&(t.head.comment=null);t.mode=9;case 9:if(512&t.flags){for(;o<16;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(i!==(65535&t.check)){e.msg="header crc mismatch",t.mode=30;break}o=i=0}t.head&&(t.head.hcrc=t.flags>>9&1,t.head.done=!0),e.adler=t.check=0,t.mode=12;break;case 10:for(;o<32;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}e.adler=t.check=V(i),o=i=0,t.mode=11;case 11:if(0===t.havedict)return e.next_out=d,e.avail_out=h,e.next_in=r,e.avail_in=a,t.hold=i,t.bits=o,2;e.adler=t.check=1,t.mode=12;case 12:if(5===c||6===c)break e;case 13:if(t.last){i>>>=7&o,o-=7&o,t.mode=27;break}for(;o<3;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}switch(t.last=1&i,--o,3&(i>>>=1)){case 0:t.mode=14;break;case 1:L=C=void 0;var L,C=t;if(F){for(k=new O.Buf32(512),R=new O.Buf32(32),L=0;L<144;)C.lens[L++]=8;for(;L<256;)C.lens[L++]=9;for(;L<280;)C.lens[L++]=7;for(;L<288;)C.lens[L++]=8;for(_(1,C.lens,0,288,k,0,C.work,{bits:9}),L=0;L<32;)C.lens[L++]=5;_(2,C.lens,0,32,R,0,C.work,{bits:5}),F=!1}if(C.lencode=k,C.lenbits=9,C.distcode=R,C.distbits=5,t.mode=20,6!==c)break;i>>>=2,o-=2;break e;case 2:t.mode=17;break;case 3:e.msg="invalid block type",t.mode=30}i>>>=2,o-=2;break;case 14:for(i>>>=7&o,o-=7&o;o<32;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if((65535&i)!=(i>>>16^65535)){e.msg="invalid stored block lengths",t.mode=30;break}if(t.length=65535&i,o=i=0,t.mode=15,6===c)break e;case 15:t.mode=16;case 16:if(s=t.length){if(0===(s=h<(s=a<s?a:s)?h:s))break e;O.arraySet(f,n,r,s,d),a-=s,r+=s,h-=s,d+=s,t.length-=s;break}t.mode=12;break;case 17:for(;o<14;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(t.nlen=257+(31&i),i>>>=5,o-=5,t.ndist=1+(31&i),i>>>=5,o-=5,t.ncode=4+(15&i),i>>>=4,o-=4,286<t.nlen||30<t.ndist){e.msg="too many length or distance symbols",t.mode=30;break}t.have=0,t.mode=18;case 18:for(;t.have<t.ncode;){for(;o<3;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}t.lens[I[t.have++]]=7&i,i>>>=3,o-=3}for(;t.have<19;)t.lens[I[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,D={bits:t.lenbits},b=_(0,t.lens,0,19,t.lencode,0,t.work,D),t.lenbits=D.bits,b){e.msg="invalid code lengths set",t.mode=30;break}t.have=0,t.mode=19;case 19:for(;t.have<t.nlen+t.ndist;){for(;v=(N=t.lencode[i&(1<<t.lenbits)-1])>>>16&255,A=65535&N,!((u=N>>>24)<=o);){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(A<16)i>>>=u,o-=u,t.lens[t.have++]=A;else{if(16===A){for(x=u+2;o<x;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(i>>>=u,o-=u,0===t.have){e.msg="invalid bit length repeat",t.mode=30;break}l=t.lens[t.have-1],s=3+(3&i),i>>>=2,o-=2}else if(17===A){for(x=u+3;o<x;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}l=0,s=3+(7&(i>>>=u)),i>>>=3,o=o-u-3}else{for(x=u+7;o<x;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}l=0,s=11+(127&(i>>>=u)),i>>>=7,o=o-u-7}if(t.have+s>t.nlen+t.ndist){e.msg="invalid bit length repeat",t.mode=30;break}for(;s--;)t.lens[t.have++]=l}}if(30===t.mode)break;if(0===t.lens[256]){e.msg="invalid code -- missing end-of-block",t.mode=30;break}if(t.lenbits=9,D={bits:t.lenbits},b=_(1,t.lens,0,t.nlen,t.lencode,0,t.work,D),t.lenbits=D.bits,b){e.msg="invalid literal/lengths set",t.mode=30;break}if(t.distbits=6,t.distcode=t.distdyn,D={bits:t.distbits},b=_(2,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,D),t.distbits=D.bits,b){e.msg="invalid distances set",t.mode=30;break}if(t.mode=20,6===c)break e;case 20:t.mode=21;case 21:if(6<=a&&258<=h){e.next_out=d,e.avail_out=h,e.next_in=r,e.avail_in=a,t.hold=i,t.bits=o,B(e,p),d=e.next_out,f=e.output,h=e.avail_out,r=e.next_in,n=e.input,a=e.avail_in,i=t.hold,o=t.bits,12===t.mode&&(t.back=-1);break}for(t.back=0;v=(N=t.lencode[i&(1<<t.lenbits)-1])>>>16&255,A=65535&N,!((u=N>>>24)<=o);){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(v&&0==(240&v)){for(y=u,T=v,w=A;v=(N=t.lencode[w+((i&(1<<y+T)-1)>>y)])>>>16&255,A=65535&N,!(y+(u=N>>>24)<=o);){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}i>>>=y,o-=y,t.back+=y}if(i>>>=u,o-=u,t.back+=u,t.length=A,0===v){t.mode=26;break}if(32&v){t.back=-1,t.mode=12;break}if(64&v){e.msg="invalid literal/length code",t.mode=30;break}t.extra=15&v,t.mode=22;case 22:if(t.extra){for(x=t.extra;o<x;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}t.length+=i&(1<<t.extra)-1,i>>>=t.extra,o-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=23;case 23:for(;v=(N=t.distcode[i&(1<<t.distbits)-1])>>>16&255,A=65535&N,!((u=N>>>24)<=o);){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(0==(240&v)){for(y=u,T=v,w=A;v=(N=t.distcode[w+((i&(1<<y+T)-1)>>y)])>>>16&255,A=65535&N,!(y+(u=N>>>24)<=o);){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}i>>>=y,o-=y,t.back+=y}if(i>>>=u,o-=u,t.back+=u,64&v){e.msg="invalid distance code",t.mode=30;break}t.offset=A,t.extra=15&v,t.mode=24;case 24:if(t.extra){for(x=t.extra;o<x;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}t.offset+=i&(1<<t.extra)-1,i>>>=t.extra,o-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){e.msg="invalid distance too far back",t.mode=30;break}t.mode=25;case 25:if(0===h)break e;if(t.offset>(s=p-h)){if((s=t.offset-s)>t.whave&&t.sane){e.msg="invalid distance too far back",t.mode=30;break}M=s>t.wnext?(s-=t.wnext,t.wsize-s):t.wnext-s,s>t.length&&(s=t.length),m=t.window}else m=f,M=d-t.offset,s=t.length;for(h-=s=h<s?h:s,t.length-=s;f[d++]=m[M++],--s;);0===t.length&&(t.mode=21);break;case 26:if(0===h)break e;f[d++]=t.length,h--,t.mode=21;break;case 27:if(t.wrap){for(;o<32;){if(0===a)break e;a--,i|=n[r++]<<o,o+=8}if(p-=h,e.total_out+=p,t.total+=p,p&&(e.adler=t.check=(t.flags?j:S)(t.check,f,p,d-p)),p=h,(t.flags?i:V(i))!==t.check){e.msg="incorrect data check",t.mode=30;break}o=i=0}t.mode=28;case 28:if(t.wrap&&t.flags){for(;o<32;){if(0===a)break e;a--,i+=n[r++]<<o,o+=8}if(i!==(4294967295&t.total)){e.msg="incorrect length check",t.mode=30;break}o=i=0}t.mode=29;case 29:b=1;break e;case 30:b=-3;break e;case 31:return-4;default:return z}return e.next_out=d,e.avail_out=h,e.next_in=r,e.avail_in=a,t.hold=i,t.bits=o,(t.wsize||p!==e.avail_out&&t.mode<30&&(t.mode<27||4!==c))&&G(e,e.output,e.next_out,p-e.avail_out)?(t.mode=31,-4):(g-=e.avail_in,p-=e.avail_out,e.total_in+=g,e.total_out+=p,t.total+=p,t.wrap&&p&&(e.adler=t.check=(t.flags?j:S)(t.check,f,p,e.next_out-p)),e.data_type=t.bits+(t.last?64:0)+(12===t.mode?128:0)+(20===t.mode||15===t.mode?256:0),b=(0==g&&0===p||4===c)&&b===P?-5:b)},e.inflateEnd=function(e){if(!e||!e.state)return z;var t=e.state;return t.window&&(t.window=null),e.state=null,P},e.inflateGetHeader=function(e,t){var n;return!e||!e.state||0==(2&(n=e.state).wrap)?z:((n.head=t).done=!1,P)},e.inflateSetDictionary=function(e,t){var n,r=t.length;return!e||!e.state||0!==(n=e.state).wrap&&11!==n.mode?z:11===n.mode&&S(1,t,r,0)!==n.check?-3:G(e,t,r,r)?(n.mode=31,-4):(n.havedict=1,P)},e.inflateInfo="pako inflate (from Nodeca project)"},function(i,e,t){"use strict";var f=t(153),d=t(12),h=t(78),g=t(76),n=t(45),o=t(77),s=t(150),p=Object.prototype.toString;function r(e){if(!(this instanceof r))return new r(e);this.options=d.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options,e=(t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new o,this.strm.avail_out=0,f.inflateInit2(this.strm,t.windowBits));if(e!==g.Z_OK)throw new Error(n[e]);if(this.header=new s,f.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=h.string2buf(t.dictionary):"[object ArrayBuffer]"===p.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(e=f.inflateSetDictionary(this.strm,t.dictionary))!==g.Z_OK))throw new Error(n[e])}function a(e,t){t=new r(t);if(t.push(e,!0),t.err)throw t.msg||n[t.err];return t.result}r.prototype.push=function(e,t){var n,r,a,i,o,s=this.strm,u=this.options.chunkSize,c=this.options.dictionary,l=!1;if(this.ended)return!1;r=t===~~t?t:!0===t?g.Z_FINISH:g.Z_NO_FLUSH,"string"==typeof e?s.input=h.binstring2buf(e):"[object ArrayBuffer]"===p.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new d.Buf8(u),s.next_out=0,s.avail_out=u),(n=(n=f.inflate(s,g.Z_NO_FLUSH))===g.Z_NEED_DICT&&c?f.inflateSetDictionary(this.strm,c):n)===g.Z_BUF_ERROR&&!0===l&&(n=g.Z_OK,l=!1),n!==g.Z_STREAM_END&&n!==g.Z_OK)return this.onEnd(n),!(this.ended=!0)}while(s.next_out&&(0!==s.avail_out&&n!==g.Z_STREAM_END&&(0!==s.avail_in||r!==g.Z_FINISH&&r!==g.Z_SYNC_FLUSH)||("string"===this.options.to?(a=h.utf8border(s.output,s.next_out),i=s.next_out-a,o=h.buf2string(s.output,a),s.next_out=i,s.avail_out=u-i,i&&d.arraySet(s.output,s.output,a,i,0),this.onData(o)):this.onData(d.shrinkBuf(s.output,s.next_out)))),0===s.avail_in&&0===s.avail_out&&(l=!0),(0<s.avail_in||0===s.avail_out)&&n!==g.Z_STREAM_END);return(r=n===g.Z_STREAM_END?g.Z_FINISH:r)===g.Z_FINISH?(n=f.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===g.Z_OK):r!==g.Z_SYNC_FLUSH||(this.onEnd(g.Z_OK),!(s.avail_out=0))},r.prototype.onData=function(e){this.chunks.push(e)},r.prototype.onEnd=function(e){e===g.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=d.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},e.Inflate=r,e.inflate=a,e.inflateRaw=function(e,t){return(t=t||{}).raw=!0,a(e,t)},e.ungzip=a},function(n,e,r){"use strict";var i=r(12);function t(e){for(var t=e.length;0<=--t;)e[t]=0}var o=16,g=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],u=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],p=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],M=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],c=new Array(576),f=(t(c),new Array(60)),s=(t(f),new Array(512)),l=(t(s),new Array(256)),m=(t(l),new Array(29));t(m);var v,A,y,T=new Array(30);function w(e,t,n,r,a){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=a,this.has_stree=e&&e.length}function b(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function D(e){return e<256?s[e]:s[256+(e>>>7)]}function a(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function d(e,t,n){e.bi_valid>o-n?(e.bi_buf|=t<<e.bi_valid&65535,a(e,e.bi_buf),e.bi_buf=t>>o-e.bi_valid,e.bi_valid+=n-o):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function h(e,t,n){d(e,n[2*t],n[2*t+1])}function x(e,t){for(var n=0;n|=1&e,e>>>=1,n<<=1,0<--t;);return n>>>1}function N(e,t,n){for(var r,a=new Array(16),i=0,o=1;o<=15;o++)a[o]=i=i+n[o-1]<<1;for(r=0;r<=t;r++){var s=e[2*r+1];0!==s&&(e[2*r]=x(a[s]++,s))}}function E(e){for(var t=0;t<286;t++)e.dyn_ltree[2*t]=0;for(t=0;t<30;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function I(e){8<e.bi_valid?a(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function L(e,t,n,r){var a=2*t,i=2*n;return e[a]<e[i]||e[a]===e[i]&&r[t]<=r[n]}function C(e,t,n){for(var r=e.heap[n],a=n<<1;a<=e.heap_len&&(a<e.heap_len&&L(t,e.heap[a+1],e.heap[a],e.depth)&&a++,!L(t,r,e.heap[a],e.depth));)e.heap[n]=e.heap[a],n=a,a<<=1;e.heap[n]=r}function O(e,t,n){var r,a,i,o,s=0;if(0!==e.last_lit)for(;r=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],a=e.pending_buf[e.l_buf+s],s++,0==r?h(e,a,t):(h(e,(i=l[a])+256+1,t),0!==(o=g[i])&&d(e,a-=m[i],o),h(e,i=D(--r),n),0!==(o=u[i])&&d(e,r-=T[i],o)),s<e.last_lit;);h(e,256,t)}function S(e,t){var n,r,a,i=t.dyn_tree,c=t.stat_desc.static_tree,f=t.stat_desc.has_stree,d=t.stat_desc.elems,h=-1;for(e.heap_len=0,e.heap_max=573,n=0;n<d;n++)0!==i[2*n]?(e.heap[++e.heap_len]=h=n,e.depth[n]=0):i[2*n+1]=0;for(;e.heap_len<2;)i[2*(a=e.heap[++e.heap_len]=h<2?++h:0)]=1,e.depth[a]=0,e.opt_len--,f&&(e.static_len-=c[2*a+1]);for(t.max_code=h,n=e.heap_len>>1;1<=n;n--)C(e,i,n);for(a=d;n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],C(e,i,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,i[2*a]=i[2*n]+i[2*r],e.depth[a]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,i[2*n+1]=i[2*r+1]=a,e.heap[1]=a++,C(e,i,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1];for(var g,o,p,M,m,s=e,u=t.dyn_tree,v=t.max_code,A=t.stat_desc.static_tree,y=t.stat_desc.has_stree,T=t.stat_desc.extra_bits,w=t.stat_desc.extra_base,b=t.stat_desc.max_length,D=0,l=0;l<=15;l++)s.bl_count[l]=0;for(u[2*s.heap[s.heap_max]+1]=0,g=s.heap_max+1;g<573;g++)(l=u[2*u[2*(o=s.heap[g])+1]+1]+1)>b&&(l=b,D++),u[2*o+1]=l,v<o||(s.bl_count[l]++,M=0,w<=o&&(M=T[o-w]),m=u[2*o],s.opt_len+=m*(l+M),y&&(s.static_len+=m*(A[2*o+1]+M)));if(0!==D){do{for(l=b-1;0===s.bl_count[l];)l--}while(s.bl_count[l]--,s.bl_count[l+1]+=2,s.bl_count[b]--,0<(D-=2));for(l=b;0!==l;l--)for(o=s.bl_count[l];0!==o;)(p=s.heap[--g])>v||(u[2*p+1]!==l&&(s.opt_len+=(l-u[2*p+1])*u[2*p],u[2*p+1]=l),o--)}N(i,h,e.bl_count)}function j(e,t,n){var r,a,i=-1,o=t[1],s=0,u=7,l=4;for(0===o&&(u=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)a=o,o=t[2*(r+1)+1],++s<u&&a===o||(s<l?e.bl_tree[2*a]+=s:0!==a?(a!==i&&e.bl_tree[2*a]++,e.bl_tree[32]++):s<=10?e.bl_tree[34]++:e.bl_tree[36]++,i=a,l=(s=0)===o?(u=138,3):a===o?(u=6,3):(u=7,4))}function _(e,t,n){var r,a,i=-1,o=t[1],s=0,u=7,l=4;for(0===o&&(u=138,l=3),r=0;r<=n;r++)if(a=o,o=t[2*(r+1)+1],!(++s<u&&a===o)){if(s<l)for(;h(e,a,e.bl_tree),0!=--s;);else 0!==a?(a!==i&&(h(e,a,e.bl_tree),s--),h(e,16,e.bl_tree),d(e,s-3,2)):s<=10?(h(e,17,e.bl_tree),d(e,s-3,3)):(h(e,18,e.bl_tree),d(e,s-11,7));i=a,l=(s=0)===o?(u=138,3):a===o?(u=6,3):(u=7,4)}}t(T);var P=!1;function z(e,t,n,r){d(e,0+(r?1:0),3),r=t,t=n,I(n=e),a(n,t),a(n,~t),i.arraySet(n.pending_buf,n.window,r,t,n.pending),n.pending+=t}e._tr_init=function(e){if(!P){for(var t,n,r,a=new Array(16),i=0,o=0;o<28;o++)for(m[o]=i,t=0;t<1<<g[o];t++)l[i++]=o;for(l[i-1]=o,o=r=0;o<16;o++)for(T[o]=r,t=0;t<1<<u[o];t++)s[r++]=o;for(r>>=7;o<30;o++)for(T[o]=r<<7,t=0;t<1<<u[o]-7;t++)s[256+r++]=o;for(n=0;n<=15;n++)a[n]=0;for(t=0;t<=143;)c[2*t+1]=8,t++,a[8]++;for(;t<=255;)c[2*t+1]=9,t++,a[9]++;for(;t<=279;)c[2*t+1]=7,t++,a[7]++;for(;t<=287;)c[2*t+1]=8,t++,a[8]++;for(N(c,287,a),t=0;t<30;t++)f[2*t+1]=5,f[2*t]=x(t,5);v=new w(c,g,257,286,15),A=new w(f,u,0,30,15),y=new w(new Array(0),p,0,19,7),P=!0}e.l_desc=new b(e.dyn_ltree,v),e.d_desc=new b(e.dyn_dtree,A),e.bl_desc=new b(e.bl_tree,y),e.bi_buf=0,e.bi_valid=0,E(e)},e._tr_stored_block=z,e._tr_flush_block=function(e,t,n,r){var a,i,o,s=0;if(0<e.level?(2===e.strm.data_type&&(e.strm.data_type=function(e){for(var t=4093624447,n=0;n<=31;n++,t>>>=1)if(1&t&&0!==e.dyn_ltree[2*n])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(n=32;n<256;n++)if(0!==e.dyn_ltree[2*n])return 1;return 0}(e)),S(e,e.l_desc),S(e,e.d_desc),s=function(e){var t;for(j(e,e.dyn_ltree,e.l_desc.max_code),j(e,e.dyn_dtree,e.d_desc.max_code),S(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*M[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),a=e.opt_len+3+7>>>3,(i=e.static_len+3+7>>>3)<=a&&(a=i)):a=i=n+5,n+4<=a&&-1!==t)z(e,t,n,r);else if(4===e.strategy||i===a)d(e,2+(r?1:0),3),O(e,c,f);else{d(e,4+(r?1:0),3);var u=e,l=(t=e.l_desc.max_code+1,n=e.d_desc.max_code+1,s+1);for(d(u,t-257,5),d(u,n-1,5),d(u,l-4,4),o=0;o<l;o++)d(u,u.bl_tree[2*M[o]+1],3);_(u,u.dyn_ltree,t-1),_(u,u.dyn_dtree,n-1),O(e,e.dyn_ltree,e.dyn_dtree)}E(e),r&&I(e)},e._tr_tally=function(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(l[n]+256+1)]++,e.dyn_dtree[2*D(t)]++),e.last_lit===e.lit_bufsize-1},e._tr_align=function(e){d(e,2,3),h(e,256,c),16===(e=e).bi_valid?(a(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}},function(n,e,r){"use strict";var g,f=r(12),s=r(155),M=r(80),m=r(79),a=r(45),v=0,c=0,d=-2,i=2,h=3,A=258,p=A+h+1,y=42,T=113;function w(e,t){return e.msg=a[t],t}function b(e){return(e<<1)-(4<e?9:0)}function D(e){for(var t=e.length;0<=--t;)e[t]=0}function x(e){var t=e.state,n=t.pending;0!==(n=n>e.avail_out?e.avail_out:n)&&(f.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function u(e,t){s._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,x(e.strm)}function l(e,t){e.pending_buf[e.pending++]=t}function N(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function o(e,t){var n,r,a=e.max_chain_length,i=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-p?e.strstart-(e.w_size-p):0,u=e.window,f=e.w_mask,d=e.prev,l=e.strstart+A,h=u[i+o-1],g=u[i+o];e.prev_length>=e.good_match&&(a>>=2),s>e.lookahead&&(s=e.lookahead);do{if(u[(n=t)+o]===g&&u[n+o-1]===h&&u[n]===u[i]&&u[++n]===u[i+1]){for(i+=2,n++;u[++i]===u[++n]&&u[++i]===u[++n]&&u[++i]===u[++n]&&u[++i]===u[++n]&&u[++i]===u[++n]&&u[++i]===u[++n]&&u[++i]===u[++n]&&u[++i]===u[++n]&&i<l;);if(r=A-(l-i),i=l-A,o<r){if(e.match_start=t,s<=(o=r))break;h=u[i+o-1],g=u[i+o]}}}while((t=d[t&f])>c&&0!=--a);return o<=e.lookahead?o:e.lookahead}function E(e){var t,n,r,a,i,o,c,s,u,l=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=l+(l-p)){for(f.arraySet(e.window,e.window,l,l,0),e.match_start-=l,e.strstart-=l,e.block_start-=l,t=n=e.hash_size;r=e.head[--t],e.head[t]=l<=r?r-l:0,--n;);for(t=n=l;r=e.prev[--t],e.prev[t]=l<=r?r-l:0,--n;);s+=l}if(0===e.strm.avail_in)break;if(i=e.strm,o=e.window,c=e.strstart+e.lookahead,s=s,u=void 0,u=i.avail_in,n=0===(u=s<u?s:u)?0:(i.avail_in-=u,f.arraySet(o,i.input,i.next_in,u,c),1===i.state.wrap?i.adler=M(i.adler,o,u,c):2===i.state.wrap&&(i.adler=m(i.adler,o,u,c)),i.next_in+=u,i.total_in+=u,u),e.lookahead+=n,e.lookahead+e.insert>=h)for(a=e.strstart-e.insert,e.ins_h=e.window[a],e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+h-1])&e.hash_mask,e.prev[a&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=a,a++,e.insert--,!(e.lookahead+e.insert<h)););}while(e.lookahead<p&&0!==e.strm.avail_in)}function I(e,t){for(var n,r;;){if(e.lookahead<p){if(E(e),e.lookahead<p&&t===v)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=h&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+h-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==n&&e.strstart-n<=e.w_size-p&&(e.match_length=o(e,n)),e.match_length>=h)if(r=s._tr_tally(e,e.strstart-e.match_start,e.match_length-h),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=h){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+h-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,0!=--e.match_length;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(u(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<h-1?e.strstart:h-1,4===t?(u(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(u(e,!1),0===e.strm.avail_out)?1:2}function L(e,t){for(var n,r,a;;){if(e.lookahead<p){if(E(e),e.lookahead<p&&t===v)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=h&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+h-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=h-1,0!==n&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-p&&(e.match_length=o(e,n),e.match_length<=5&&(1===e.strategy||e.match_length===h&&4096<e.strstart-e.match_start)&&(e.match_length=h-1)),e.prev_length>=h&&e.match_length<=e.prev_length){for(a=e.strstart+e.lookahead-h,r=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-h),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=a&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+h-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!=--e.prev_length;);if(e.match_available=0,e.match_length=h-1,e.strstart++,r&&(u(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((r=s._tr_tally(e,0,e.window[e.strstart-1]))&&u(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=s._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<h-1?e.strstart:h-1,4===t?(u(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(u(e,!1),0===e.strm.avail_out)?1:2}function t(e,t,n,r,a){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=a}function C(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=i,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?y:T,e.adler=2===t.wrap?0:1,t.last_flush=v,s._tr_init(t),c):w(e,d)}function O(e){var t=C(e);return t===c&&((e=e.state).window_size=2*e.w_size,D(e.head),e.max_lazy_match=g[e.level].max_lazy,e.good_match=g[e.level].good_length,e.nice_match=g[e.level].nice_length,e.max_chain_length=g[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=h-1,e.match_available=0,e.ins_h=0),t}function S(e,t,n,r,a,i){if(!e)return d;var o=1;if(-1===t&&(t=6),r<0?(o=0,r=-r):15<r&&(o=2,r-=16),a<1||9<a||8!==n||r<8||15<r||t<0||9<t||i<0||4<i)return w(e,d);8===r&&(r=9);var s=new function(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new f.Buf16(1146),this.dyn_dtree=new f.Buf16(122),this.bl_tree=new f.Buf16(78),D(this.dyn_ltree),D(this.dyn_dtree),D(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new f.Buf16(16),this.heap=new f.Buf16(573),D(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new f.Buf16(573),D(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0};return(e.state=s).strm=e,s.wrap=o,s.gzhead=null,s.w_bits=r,s.w_size=1<<s.w_bits,s.w_mask=s.w_size-1,s.hash_bits=a+7,s.hash_size=1<<s.hash_bits,s.hash_mask=s.hash_size-1,s.hash_shift=~~((s.hash_bits+h-1)/h),s.window=new f.Buf8(2*s.w_size),s.head=new f.Buf16(s.hash_size),s.prev=new f.Buf16(s.w_size),s.lit_bufsize=1<<a+6,s.pending_buf_size=4*s.lit_bufsize,s.pending_buf=new f.Buf8(s.pending_buf_size),s.d_buf=+s.lit_bufsize,s.l_buf=3*s.lit_bufsize,s.level=t,s.strategy=i,s.method=n,O(e)}g=[new t(0,0,0,0,function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(E(e),0===e.lookahead&&t===v)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,u(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-p&&(u(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(u(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(u(e,!1),e.strm.avail_out),1)}),new t(4,4,8,4,I),new t(4,5,16,8,I),new t(4,6,32,32,I),new t(4,4,16,16,L),new t(8,16,32,32,L),new t(8,16,128,128,L),new t(8,32,128,256,L),new t(32,128,258,1024,L),new t(32,258,258,4096,L)],e.deflateInit=function(e,t){return S(e,t,8,15,8,0)},e.deflateInit2=S,e.deflateReset=O,e.deflateResetKeep=C,e.deflateSetHeader=function(e,t){return!e||!e.state||2!==e.state.wrap?d:(e.state.gzhead=t,c)},e.deflate=function(e,t){var n,r,a,i;if(!e||!e.state||5<t||t<0)return e?w(e,d):d;if(r=e.state,!e.output||!e.input&&0!==e.avail_in||666===r.status&&4!==t)return w(e,0===e.avail_out?-5:d);if(r.strm=e,n=r.last_flush,r.last_flush=t,r.status===y&&(2===r.wrap?(e.adler=0,l(r,31),l(r,139),l(r,8),r.gzhead?(l(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),l(r,255&r.gzhead.time),l(r,r.gzhead.time>>8&255),l(r,r.gzhead.time>>16&255),l(r,r.gzhead.time>>24&255),l(r,9===r.level?2:2<=r.strategy||r.level<2?4:0),l(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(l(r,255&r.gzhead.extra.length),l(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=m(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69):(l(r,0),l(r,0),l(r,0),l(r,0),l(r,0),l(r,9===r.level?2:2<=r.strategy||r.level<2?4:0),l(r,3),r.status=T)):(o=8+(r.w_bits-8<<4)<<8,o|=(2<=r.strategy||r.level<2?0:r.level<6?1:6===r.level?2:3)<<6,0!==r.strstart&&(o|=32),o+=31-o%31,r.status=T,N(r,o),0!==r.strstart&&(N(r,e.adler>>>16),N(r,65535&e.adler)),e.adler=1)),69===r.status)if(r.gzhead.extra){for(a=r.pending;r.gzindex<(65535&r.gzhead.extra.length)&&(r.pending!==r.pending_buf_size||(r.gzhead.hcrc&&r.pending>a&&(e.adler=m(e.adler,r.pending_buf,r.pending-a,a)),x(e),a=r.pending,r.pending!==r.pending_buf_size));)l(r,255&r.gzhead.extra[r.gzindex]),r.gzindex++;r.gzhead.hcrc&&r.pending>a&&(e.adler=m(e.adler,r.pending_buf,r.pending-a,a)),r.gzindex===r.gzhead.extra.length&&(r.gzindex=0,r.status=73)}else r.status=73;if(73===r.status)if(r.gzhead.name){a=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>a&&(e.adler=m(e.adler,r.pending_buf,r.pending-a,a)),x(e),a=r.pending,r.pending===r.pending_buf_size)){i=1;break}}while(i=r.gzindex<r.gzhead.name.length?255&r.gzhead.name.charCodeAt(r.gzindex++):0,l(r,i),0!==i);r.gzhead.hcrc&&r.pending>a&&(e.adler=m(e.adler,r.pending_buf,r.pending-a,a)),0===i&&(r.gzindex=0,r.status=91)}else r.status=91;if(91===r.status)if(r.gzhead.comment){a=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>a&&(e.adler=m(e.adler,r.pending_buf,r.pending-a,a)),x(e),a=r.pending,r.pending===r.pending_buf_size)){i=1;break}}while(i=r.gzindex<r.gzhead.comment.length?255&r.gzhead.comment.charCodeAt(r.gzindex++):0,l(r,i),0!==i);r.gzhead.hcrc&&r.pending>a&&(e.adler=m(e.adler,r.pending_buf,r.pending-a,a)),0===i&&(r.status=103)}else r.status=103;if(103===r.status&&(r.gzhead.hcrc?(r.pending+2>r.pending_buf_size&&x(e),r.pending+2<=r.pending_buf_size&&(l(r,255&e.adler),l(r,e.adler>>8&255),e.adler=0,r.status=T)):r.status=T),0!==r.pending){if(x(e),0===e.avail_out)return r.last_flush=-1,c}else if(0===e.avail_in&&b(t)<=b(n)&&4!==t)return w(e,-5);if(666===r.status&&0!==e.avail_in)return w(e,-5);if(0!==e.avail_in||0!==r.lookahead||t!==v&&666!==r.status){var o=2===r.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(E(e),0===e.lookahead)){if(t===v)return 1;break}if(e.match_length=0,n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(u(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(u(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(u(e,!1),0===e.strm.avail_out)?1:2}(r,t):3===r.strategy?function(e,t){for(var n,r,a,i,o=e.window;;){if(e.lookahead<=A){if(E(e),e.lookahead<=A&&t===v)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=h&&0<e.strstart&&(r=o[a=e.strstart-1])===o[++a]&&r===o[++a]&&r===o[++a]){for(i=e.strstart+A;r===o[++a]&&r===o[++a]&&r===o[++a]&&r===o[++a]&&r===o[++a]&&r===o[++a]&&r===o[++a]&&r===o[++a]&&a<i;);e.match_length=A-(i-a),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=h?(n=s._tr_tally(e,1,e.match_length-h),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(u(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(u(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(u(e,!1),0===e.strm.avail_out)?1:2}(r,t):g[r.level].func(r,t);if(3!==o&&4!==o||(r.status=666),1===o||3===o)return 0===e.avail_out&&(r.last_flush=-1),c;if(2===o&&(1===t?s._tr_align(r):5!==t&&(s._tr_stored_block(r,0,0,!1),3===t&&(D(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),x(e),0===e.avail_out))return r.last_flush=-1,c}return 4!==t?c:r.wrap<=0?1:(2===r.wrap?(l(r,255&e.adler),l(r,e.adler>>8&255),l(r,e.adler>>16&255),l(r,e.adler>>24&255),l(r,255&e.total_in),l(r,e.total_in>>8&255),l(r,e.total_in>>16&255),l(r,e.total_in>>24&255)):(N(r,e.adler>>>16),N(r,65535&e.adler)),x(e),0<r.wrap&&(r.wrap=-r.wrap),0!==r.pending?c:1)},e.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==y&&69!==t&&73!==t&&91!==t&&103!==t&&t!==T&&666!==t?w(e,d):(e.state=null,t===T?w(e,-3):c):d},e.deflateSetDictionary=function(e,t){var n,r,a,i,o,s,u,l=t.length;if(!e||!e.state)return d;if(2===(i=(n=e.state).wrap)||1===i&&n.status!==y||n.lookahead)return d;for(1===i&&(e.adler=M(e.adler,t,l,0)),n.wrap=0,l>=n.w_size&&(0===i&&(D(n.head),n.strstart=0,n.block_start=0,n.insert=0),u=new f.Buf8(n.w_size),f.arraySet(u,t,l-n.w_size,n.w_size,0),t=u,l=n.w_size),u=e.avail_in,o=e.next_in,s=e.input,e.avail_in=l,e.next_in=0,e.input=t,E(n);n.lookahead>=h;){for(r=n.strstart,a=n.lookahead-(h-1);n.ins_h=(n.ins_h<<n.hash_shift^n.window[r+h-1])&n.hash_mask,n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++,--a;);n.strstart=r,n.lookahead=h-1,E(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=h-1,n.match_available=0,e.next_in=o,e.input=s,e.avail_in=u,n.wrap=i,c},e.deflateInfo="pako deflate (from Nodeca project)"},function(c,e,t){"use strict";var o=t(156),s=t(12),u=t(78),n=t(45),r=t(77),l=Object.prototype.toString;function a(e){if(!(this instanceof a))return new a(e);this.options=s.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var e=this.options,t=(e.raw&&0<e.windowBits?e.windowBits=-e.windowBits:e.gzip&&0<e.windowBits&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new r,this.strm.avail_out=0,o.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy));if(0!==t)throw new Error(n[t]);if(e.header&&o.deflateSetHeader(this.strm,e.header),e.dictionary){e="string"==typeof e.dictionary?u.string2buf(e.dictionary):"[object ArrayBuffer]"===l.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary;if(0!==(t=o.deflateSetDictionary(this.strm,e)))throw new Error(n[t]);this._dict_set=!0}}function i(e,t){t=new a(t);if(t.push(e,!0),t.err)throw t.msg||n[t.err];return t.result}a.prototype.push=function(e,t){var n,r,a=this.strm,i=this.options.chunkSize;if(this.ended)return!1;r=t===~~t?t:!0===t?4:0,"string"==typeof e?a.input=u.string2buf(e):"[object ArrayBuffer]"===l.call(e)?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;do{if(0===a.avail_out&&(a.output=new s.Buf8(i),a.next_out=0,a.avail_out=i),1!==(n=o.deflate(a,r))&&0!==n)return this.onEnd(n),!(this.ended=!0)}while(0!==a.avail_out&&(0!==a.avail_in||4!==r&&2!==r)||("string"===this.options.to?this.onData(u.buf2binstring(s.shrinkBuf(a.output,a.next_out))):this.onData(s.shrinkBuf(a.output,a.next_out))),(0<a.avail_in||0===a.avail_out)&&1!==n);return 4===r?(n=o.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,0===n):2!==r||(this.onEnd(0),!(a.avail_out=0))},a.prototype.onData=function(e){this.chunks.push(e)},a.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=s.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},e.Deflate=a,e.deflate=i,e.deflateRaw=function(e,t){return(t=t||{}).raw=!0,i(e,t)},e.gzip=function(e,t){return(t=t||{}).gzip=!0,i(e,t)}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var u=t(81),l=r(t(30)),n=r(t(0)),c=r(t(44)),f=t(10);function r(e){return e&&e.__esModule?e:{default:e}}var g=n.default.vtkErrorMacro,p=n.default.vtkDebugMacro,M=0;function d(e){e=document.querySelector('.webResource[data-url="'+e+'"]');return e?e.innerHTML:null}function h(e){return"/"===e[0]?e.substr(1):e}e.default={fetchJSON:function(){var r=arguments[1];return new Promise(function(e,t){var n=d(h(r));null===n?t(new Error("No such JSON "+r)):e(JSON.parse(n))})},fetchText:function(){var r=arguments[1];return new Promise(function(e,t){var n=d(r);null===n?t(new Error("No such text "+r)):e(n)})},fetchArray:function(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},i=arguments[1],o=arguments[2],s=3<arguments.length&&void 0!==arguments[3]?arguments[3]:{};return new Promise(function(e,t){var n=h([i,o.ref.basepath,s.compression?o.ref.id+".gz":o.ref.id].join("/")),r=d(n);null===r?t(new Error("No such array "+n)):("string"===o.dataType?(t=atob(r),s.compression&&(t=l.default.inflate(t,{to:"string"})),o.values=JSON.parse(t)):(n=(0,u.toByteArray)(r),o.buffer=new ArrayBuffer(n.length),new Uint8Array(o.buffer).set(n),s.compression&&("string"===o.dataType||"JSON"===o.dataType?o.buffer=l.default.inflate(new Uint8Array(o.buffer),{to:"string"}):o.buffer=l.default.inflate(new Uint8Array(o.buffer)).buffer),"JSON"===o.ref.encode?o.values=JSON.parse(o.buffer):(c.default.ENDIANNESS!==o.ref.encode&&c.default.ENDIANNESS&&(p("Swap bytes of "+o.name),c.default.swapBytes(o.buffer,f.DataTypeByteSize[o.dataType])),o.values=new window[o.dataType](o.buffer)),o.values.length!==o.size&&g("Error in FetchArray: "+o.name+" does not have the proper array size. Got "+o.values.length+", instead of "+o.size)),delete o.ref,0==--M&&a.invokeBusy&&a.invokeBusy(!1),a.modified&&a.modified(),e(o))})}}},function(u,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=s,t(93),t(84);var d=r(t(20)),c=r(t(0)),a=r(t(46)),n=r(t(7)),t=r(t(106));function r(e){return e&&e.__esModule?e:{default:e}}var h=["pointData","cellData","fieldData"],i=a.default.get("http"),f={vtkDataArray:n.default,vtkStringArray:t.default},g={vtkPolyData:function(t){var n=[];return n.push(t.points),["verts","lines","polys","strips"].forEach(function(e){t[e]&&n.push(t[e])}),n},vtkImageData:function(e){return[]},vtkUnstructuredGrid:function(e){var t=[];return t.push(e.points),t.push(e.cells),t.push(e.cellTypes),t},vtkRectilinearGrid:function(e){var t=[];return t.push(e.xCoordinates),t.push(e.yCoordinates),t.push(e.zCoordinates),t}};function o(e,n,r,t,a,i,o){var s=n.enableArray,u=(n.arrays=[],h.forEach(function(t){r[t]&&(r[t].arrays.map(function(e){return e.data}).forEach(function(e){n.arrays.push({name:e.name,enable:s,location:t,array:e,registration:e.ref.registration||"addArray"})}),r[t].arrays=[])}),[]),c=n.progressCallback,f=n.fetchGzip?"gz":null;function l(){n.dataset=(0,d.default)(r),o?e.loadData().then(function(){n.output[0]=n.dataset,a(e,n.output[0])}):(n.output[0]=n.dataset,a(e,n.output[0]))}g[r.vtkClass](r).forEach(function(e){u.push(t(e,{compression:f,progressCallback:c}))}),u.length?Promise.all(u).then(l,function(e){i(e)}):l()}var p={enableArray:!0,fetchGzip:!1,arrays:[],url:null,baseURL:null,requestCount:0};function s(e,t){var s,u;function l(e){return u.dataAccessHelper.fetchArray(s,u.baseURL,e,1<arguments.length&&void 0!==arguments[1]?arguments[1]:{})}Object.assign(t,p,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),c.default.obj(e,t),c.default.get(e,t,["enableArray","fetchGzip","url","baseURL","dataAccessHelper"]),c.default.set(e,t,["dataAccessHelper","progressCallback"]),c.default.getArray(e,t,["arrays"]),c.default.algo(e,t,0,1),c.default.event(e,t,"busy"),s=e,(u=t).classHierarchy.push("vtkHttpDataSetReader"),u.output[0]=(0,d.default)({vtkClass:"vtkPolyData"}),u.dataAccessHelper||(u.dataAccessHelper=i),s.updateMetadata=function(){var r=0<arguments.length&&void 0!==arguments[0]&&arguments[0];return"zip"===u.compression?new Promise(function(t,n){i.fetchBinary(u.url).then(function(e){u.dataAccessHelper=a.default.get("zip",{zipContent:e,callback:function(e){u.baseURL="",u.dataAccessHelper.fetchJSON(s,"index.json").then(function(e){o(s,u,e,l,t,n,r)},function(e){n(e)})}})},function(e){n(e)})}):new Promise(function(t,n){u.dataAccessHelper.fetchJSON(s,u.url).then(function(e){o(s,u,e,l,t,n,r)},function(e){n(e)})})},s.setUrl=function(e){var t,n=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};return-1!==e.indexOf("index.json")||n.fullpath?((t=(u.url=e).split("/")).pop(),u.baseURL=t.join("/")):(u.baseURL=e,u.url=e+"/index.json"),u.compression=n.compression,s.updateMetadata(!!n.loadData)},s.loadData=function(){var i=u.dataset,o=u.arrays.filter(function(e){return e.enable}).filter(function(e){return e.array.ref}).map(function(e){return e.array});return new Promise(function(r,t){function a(e){t(e)}!function e(){var t,n;o.length?(t=u.progressCallback,n=u.fetchGzip?"gz":null,l(o.pop(),{compression:n,progressCallback:t}).then(e,a)):i&&(u.arrays.filter(function(e){return e.registration}).forEach(function(e){var t=f[e.array.vtkClass].newInstance(e.array);i["get"+c.default.capitalize(e.location)]()[e.registration](t),delete e.registration}),i.modified(),r(s,i))}()})},s.requestData=function(e,t){},s.enableArray=function(t,n){var e=!(2<arguments.length&&void 0!==arguments[2])||arguments[2],r=u.arrays.filter(function(e){return e.name===n&&e.location===t});1===r.length&&(r[0].enable=e)},s.isBusy=function(){return!!u.requestCount},void 0===t.progressCallback&&(t.progressCallback=null)}n=e.newInstance=c.default.newInstance(s,"vtkHttpDataSetReader");e.default={newInstance:n,extend:s}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var a=(n=n(0))&&n.__esModule?n:{default:n};function i(e){return function(){return a.default.vtkErrorMacro("vtkProp::"+e+" - NOT IMPLEMENTED")}}var o={visibility:!0,pickable:!0,dragable:!0,useBounds:!0,allocatedRenderTime:10,estimatedRenderTime:0,savedEstimatedRenderTime:0,renderTimeMultiplier:1,paths:null,textures:[]};function r(e,t){var n,r;Object.assign(t,o,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),a.default.get(e,t,["estimatedRenderTime","allocatedRenderTime"]),a.default.setGet(e,t,["visibility","pickable","dragable","useBounds","renderTimeMultiplier"]),n=e,(r=t).classHierarchy.push("vtkProp"),n.getMTime=function(){for(var e=r.mtime,t=0;t<r.textures.length;++t){var n=r.textures[t].getMTime();e<n&&(e=n)}return e},n.getNestedProps=function(){return null},n.getActors=function(){return null},n.getActors2D=function(){return null},n.getVolumes=function(){return null},n.pick=i("pick"),n.hasKey=i("hasKey"),n.getRedrawMTime=function(){return r.mtime},n.setEstimatedRenderTime=function(e){r.estimatedRenderTime=e,r.savedEstimatedRenderTime=e},n.restoreEstimatedRenderTime=function(){r.estimatedRenderTime=r.savedEstimatedRenderTime},n.addEstimatedRenderTime=function(e){r.estimatedRenderTime+=e},n.setAllocatedRenderTime=function(e){r.allocatedRenderTime=e,r.savedEstimatedRenderTime=r.estimatedRenderTime,r.estimatedRenderTime=0},n.getSupportsSelection=function(){return!1},n.getTextures=function(){return r.textures},n.hasTexture=function(t){return!!r.textures.filter(function(e){return e===t}).length},n.addTexture=function(e){e&&!n.hasTexture(e)&&(r.textures=r.textures.concat(e),n.modified())},n.removeTexture=function(t){var e=r.textures.filter(function(e){return e===t});r.texture.length!==e.length&&(r.textures=e,n.modified())},n.removeAllTextures=function(){r.textures=[],n.modified()}}n=t.newInstance=a.default.newInstance(r,"vtkProp");t.default={newInstance:n,extend:r}},function(o,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=i;var s=t(3),r=n(t(0)),a=n(t(89)),u=n(t(2)),l=n(t(160));function n(e){return e&&e.__esModule?e:{default:e}}var c={origin:[0,0,0],position:[0,0,0],rotation:null,scale:[1,1,1],bounds:[1,-1,1,-1,1,-1],userMatrix:null,userMatrixMTime:null,cachedProp3D:null,isIdentity:!0,matrixMTime:null};function i(e,t){var i,o,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,c,n),l.default.extend(e,t,n),t.matrixMTime={},r.default.obj(t.matrixMTime),r.default.get(e,t,["bounds","isIdentity"]),r.default.setGetArray(e,t,["origin","position","orientation","scale"],3),t.matrix=s.mat4.create(),t.rotation=s.mat4.create(),t.userMatrix=s.mat4.create(),t.transform=null,i=e,(o=t).classHierarchy.push("vtkProp3D"),i.addPosition=function(n){o.position=o.position.map(function(e,t){return e+n[t]}),i.modified()},i.getOrientationWXYZ=function(){var e=s.quat.create(),t=(s.mat4.getRotation(e,o.rotation),s.vec3.create()),e=s.quat.getAxisAngle(t,e);return[u.default.degreesFromRadians(e),t[0],t[1],t[2]]},i.rotateX=function(e){0!==e&&(s.mat4.rotateX(o.rotation,o.rotation,u.default.radiansFromDegrees(e)),i.modified())},i.rotateY=function(e){0!==e&&(s.mat4.rotateY(o.rotation,o.rotation,u.default.radiansFromDegrees(e)),i.modified())},i.rotateZ=function(e){0!==e&&(s.mat4.rotateZ(o.rotation,o.rotation,u.default.radiansFromDegrees(e)),i.modified())},i.rotateWXYZ=function(e,t,n,r){var a;0===e||0===t&&0===n&&0===r||(e=u.default.radiansFromDegrees(e),a=s.quat.create(),s.quat.setAxisAngle(a,[t,n,r],e),t=s.mat4.create(),s.mat4.fromQuat(t,a),s.mat4.multiply(o.rotation,o.rotation,t),i.modified())},i.setUserMatrix=function(e){s.mat4.copy(o.userMatrix,e),i.modified()},i.getMatrix=function(){return i.computeMatrix(),o.matrix},i.computeMatrix=function(){if(i.getMTime()>o.matrixMTime.getMTime()){s.mat4.identity(o.matrix),o.userMatrix&&s.mat4.multiply(o.matrix,o.matrix,o.userMatrix),s.mat4.translate(o.matrix,o.matrix,o.origin),s.mat4.translate(o.matrix,o.matrix,o.position),s.mat4.multiply(o.matrix,o.matrix,o.rotation),s.mat4.scale(o.matrix,o.matrix,o.scale),s.mat4.translate(o.matrix,o.matrix,[-o.origin[0],-o.origin[1],-o.origin[2]]),s.mat4.transpose(o.matrix,o.matrix),o.isIdentity=!0;for(var e=0;e<4;++e)for(var t=0;t<4;++t)(e===t?1:0)!==o.matrix[e+4*t]&&(o.isIdentity=!1);o.matrixMTime.modified()}},i.getCenter=function(){return a.default.getCenter(o.bounds)},i.getLength=function(){return a.default.getLength(o.bounds)},i.getXRange=function(){return a.default.getXRange(o.bounds)},i.getYRange=function(){return a.default.getYRange(o.bounds)},i.getZRange=function(){return a.default.getZRange(o.bounds)},i.getUserMatrix=function(){return o.userMatrix},i.onModified(function(){i.computeMatrix()})}t=e.newInstance=r.default.newInstance(i,"vtkProp3D");e.default={newInstance:t,extend:i}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var i=n(t(20)),o=n(t(0)),s=n(t(50)),u=n(t(85));function n(e){return e&&e.__esModule?e:{default:e}}var l={};function r(e,t){var n,r,a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,l,a),s.default.extend(e,t,a),o.default.setGet(e,t,["points"]),n=e,(r=t).classHierarchy.push("vtkPointSet"),r.points?r.points=(0,i.default)(r.points):r.points=u.default.newInstance(),n.getBounds=function(){return r.points.getBounds()},n.computeBounds=function(){n.getBounds()}}t=e.newInstance=o.default.newInstance(r,"vtkPointSet");e.default={newInstance:t,extend:r}},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=e.STATIC=void 0,e.extend=u;var n=r(t(0)),a=r(t(7)),t=t(10);function r(e){return e&&e.__esModule?e:{default:e}}function i(e){var n=0;return e.filter(function(e,t){return t===n&&(n+=e+1,!0)})}var o=e.STATIC={extractCellSizes:i,getNumberOfCells:function(e){return i(e).length}},s={empty:!0,numberOfComponents:1,dataType:t.VtkDataTypes.UNSIGNED_INT};function u(e,t){var n,r=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,s,r),a.default.extend(e,t,r),r=e,(n=t).classHierarchy.push("vtkCellArray"),r.getNumberOfCells=function(e){return(void 0===n.numberOfCells||e)&&(n.cellSizes=i(n.values),n.numberOfCells=n.cellSizes.length),n.numberOfCells},r.getCellSizes=function(e){return(void 0===n.cellSizes||e)&&(n.cellSizes=i(n.values)),n.cellSizes}}t=e.newInstance=n.default.newInstance(u,"vtkCellArray");e.default=Object.assign({newInstance:t,extend:u},o)},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=e.STATIC=void 0,e.extend=r;var o=n(t(0)),s=n(t(88));function n(e){return e&&e.__esModule?e:{default:e}}var u=o.default.vtkErrorMacro,t=e.STATIC={computeWorldToDisplay:function(e,t,n,r){return e.getRenderWindow().getViews()[0].worldToDisplay(t,n,r,e)},computeDisplayToWorld:function(e,t,n,r){return e.getRenderWindow().getViews()[0].displayToWorld(t,n,r,e)}},l={enabled:!0,interactor:null,priority:0,subscribedEvents:[]};function r(e,t){var n,a;function r(){for(;a.subscribedEvents.length;)a.subscribedEvents.pop().unsubscribe()}function i(){s.default.handledEvents.forEach(function(e){n["handle"+e]&&a.subscribedEvents.push(a.interactor["on"+e](n["handle"+e],a.priority))})}Object.assign(t,l,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),o.default.obj(e,t),o.default.event(e,t,"InteractionEvent"),o.default.event(e,t,"StartInteractionEvent"),o.default.event(e,t,"EndInteractionEvent"),o.default.get(e,t,["interactor","enabled"]),o.default.setGet(e,t,["priority"]),n=e,(a=t).classHierarchy.push("vtkInteractorObserver"),n.setInteractor=function(e){e!==a.interactor&&(r(),(a.interactor=e)&&a.enabled&&i(),n.modified())},n.setEnabled=function(e){e!==a.enabled&&(r(),e&&(a.interactor?i():u("\n          The interactor must be set before subscribing to events\n        ")),a.enabled=e,n.modified())},n.computeDisplayToWorld=function(e,t,n,r){return e?a.interactor.getView().displayToWorld(t,n,r,e):null},n.computeWorldToDisplay=function(e,t,n,r){return e?a.interactor.getView().worldToDisplay(t,n,r,e):null}}var a=e.newInstance=o.default.newInstance(r,"vtkInteractorObserver");e.default=Object.assign({newInstance:a,extend:r},t)},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var i=n(t(0)),o=n(t(164)),t=n(t(87));function n(e){return e&&e.__esModule?e:{default:e}}var s=t.default.States,u={Rotate:s.IS_ROTATE,Pan:s.IS_PAN,Spin:s.IS_SPIN,Dolly:s.IS_DOLLY,CameraPose:s.IS_CAMERA_POSE,WindowLevel:s.IS_WINDOW_LEVEL,Slice:s.IS_SLICE},l={state:s.IS_NONE,handleObservers:1,autoAdjustCameraClippingRange:1};function r(e,t){var n,r,a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,l,a),o.default.extend(e,t,a),n=e,(r=t).classHierarchy.push("vtkInteractorStyle"),Object.keys(u).forEach(function(e){i.default.event(n,r,"Start"+e+"Event"),n["start"+e]=function(){r.state===s.IS_NONE&&(r.state=u[e],r.interactor.requestAnimation(n),n.invokeStartInteractionEvent({type:"StartInteractionEvent"}),n["invokeStart"+e+"Event"]({type:"Start"+e+"Event"}))},i.default.event(n,r,"End"+e+"Event"),n["end"+e]=function(){r.state===u[e]&&(r.state=s.IS_NONE,r.interactor.cancelAnimation(n),n.invokeEndInteractionEvent({type:"EndInteractionEvent"}),n["invokeEnd"+e+"Event"]({type:"End"+e+"Event"}),r.interactor.render())}}),n.handleKeyPress=function(e){var t=r.interactor;switch(e.key){case"r":case"R":e.pokedRenderer.resetCamera(),t.render();break;case"w":case"W":e.pokedRenderer.getActors().forEach(function(e){e.getProperty().setRepresentationToWireframe()}),t.render();break;case"s":case"S":e.pokedRenderer.getActors().forEach(function(e){e.getProperty().setRepresentationToSurface()}),t.render();break;case"v":case"V":e.pokedRenderer.getActors().forEach(function(e){e.getProperty().setRepresentationToPoints()}),t.render()}}}var a=e.newInstance=i.default.newInstance(r,"vtkInteractorStyle");e.default=Object.assign({newInstance:a,extend:r},t.default)},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=s;var r=o(t(0)),a=o(t(165)),n=o(t(87)),i=o(t(2)),u=t(86);function o(e){return e&&e.__esModule?e:{default:e}}var l=n.default.States,f={motionFactor:10};function s(e,t){var o,s,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,f,n),a.default.extend(e,t,n),r.default.setGet(e,t,["motionFactor"]),o=e,(s=t).classHierarchy.push("vtkInteractorStyleTrackballCamera"),o.handleMouseMove=function(e){var t=e.position,n=e.pokedRenderer;switch(s.state){case l.IS_ROTATE:o.handleMouseRotate(n,t),o.invokeInteractionEvent({type:"InteractionEvent"});break;case l.IS_PAN:o.handleMousePan(n,t),o.invokeInteractionEvent({type:"InteractionEvent"});break;case l.IS_DOLLY:o.handleMouseDolly(n,t),o.invokeInteractionEvent({type:"InteractionEvent"});break;case l.IS_SPIN:o.handleMouseSpin(n,t),o.invokeInteractionEvent({type:"InteractionEvent"})}s.previousPosition=t},o.handleButton3D=function(e){e&&e.pressed&&e.device===u.Device.RightController&&e.input===u.Input.TrackPad?o.startCameraPose():e&&!e.pressed&&e.device===u.Device.RightController&&e.input===u.Input.TrackPad&&s.state===l.IS_CAMERA_POSE&&o.endCameraPose()},o.handleMove3D=function(e){s.state===l.IS_CAMERA_POSE&&o.updateCameraPose(e)},o.updateCameraPose=function(e){var t=e.pokedRenderer.getActiveCamera(),n=t.getPhysicalTranslation(),r=.05*e.gamepad.axes[1]/t.getPhysicalScale(),e=t.physicalOrientationToWorldDirection(e.orientation);t.setPhysicalTranslation(n[0]+e[0]*r,n[1]+e[1]*r,n[2]+e[2]*r)},o.handleLeftButtonPress=function(e){var t=e.position;s.previousPosition=t,e.shiftKey?e.controlKey||e.altKey?o.startDolly():o.startPan():e.controlKey||e.altKey?o.startSpin():o.startRotate()},o.handleLeftButtonRelease=function(){switch(s.state){case l.IS_DOLLY:o.endDolly();break;case l.IS_PAN:o.endPan();break;case l.IS_SPIN:o.endSpin();break;case l.IS_ROTATE:o.endRotate()}},o.handleStartMouseWheel=function(e){o.startDolly(),o.handleMouseWheel(e)},o.handleEndMouseWheel=function(){o.endDolly()},o.handleStartPinch=function(e){s.previousScale=e.scale,o.startDolly()},o.handleEndPinch=function(){o.endDolly()},o.handleStartRotate=function(e){s.previousRotation=e.rotation,o.startRotate()},o.handleEndRotate=function(){o.endRotate()},o.handleStartPan=function(e){s.previousTranslation=e.translation,o.startPan()},o.handleEndPan=function(){o.endPan()},o.handlePinch=function(e){o.dollyByFactor(e.pokedRenderer,e.scale/s.previousScale),s.previousScale=e.scale},o.handlePan=function(e){var t=e.pokedRenderer.getActiveCamera(),n=t.getFocalPoint(),r=(n=o.computeWorldToDisplay(e.pokedRenderer,n[0],n[1],n[2]))[2],a=e.translation,i=s.previousTranslation,a=o.computeDisplayToWorld(e.pokedRenderer,n[0]+a[0]-i[0],n[1]+a[1]-i[1],r),i=o.computeDisplayToWorld(e.pokedRenderer,n[0],n[1],r),r=[],i=(r[0]=i[0]-a[0],r[1]=i[1]-a[1],r[2]=i[2]-a[2],n=t.getFocalPoint(),t.getPosition());t.setFocalPoint(r[0]+n[0],r[1]+n[1],r[2]+n[2]),t.setPosition(r[0]+i[0],r[1]+i[1],r[2]+i[2]),s.interactor.getLightFollowCamera()&&e.pokedRenderer.updateLightsGeometryToFollowCamera(),t.orthogonalizeViewUp(),s.previousTranslation=e.translation},o.handleRotate=function(e){var t=e.pokedRenderer.getActiveCamera();t.roll(e.rotation-s.previousRotation),t.orthogonalizeViewUp(),s.previousRotation=e.rotation},o.handleMouseRotate=function(e,t){var n=s.interactor,r=t.x-s.previousPosition.x,t=t.y-s.previousPosition.y,a=n.getView().getViewportSize(e),i=-.1,o=-.1,a=(a[0]&&a[1]&&(i=-20/a[1],o=-20/a[0]),r*o*s.motionFactor),r=t*i*s.motionFactor,o=e.getActiveCamera();Number.isNaN(a)||Number.isNaN(r)||(o.azimuth(a),o.elevation(r),o.orthogonalizeViewUp()),s.autoAdjustCameraClippingRange&&e.resetCameraClippingRange(),n.getLightFollowCamera()&&e.updateLightsGeometryToFollowCamera()},o.handleMouseSpin=function(e,t){var n=s.interactor,r=e.getActiveCamera(),n=n.getView().getViewportCenter(e),e=i.default.degreesFromRadians(Math.atan2(s.previousPosition.y-n[1],s.previousPosition.x-n[0])),t=i.default.degreesFromRadians(Math.atan2(t.y-n[1],t.x-n[0]))-e;Number.isNaN(t)||(r.roll(t),r.orthogonalizeViewUp())},o.handleMousePan=function(e,t){var n=e.getActiveCamera(),r=n.getFocalPoint(),a=o.computeWorldToDisplay(e,r[0],r[1],r[2])[2],t=o.computeDisplayToWorld(e,t.x,t.y,a),a=o.computeDisplayToWorld(e,s.previousPosition.x,s.previousPosition.y,a),i=[],a=(i[0]=a[0]-t[0],i[1]=a[1]-t[1],i[2]=a[2]-t[2],r=n.getFocalPoint(),n.getPosition());n.setFocalPoint(i[0]+r[0],i[1]+r[1],i[2]+r[2]),n.setPosition(i[0]+a[0],i[1]+a[1],i[2]+a[2]),s.interactor.getLightFollowCamera()&&e.updateLightsGeometryToFollowCamera()},o.handleMouseDolly=function(e,t){var t=t.y-s.previousPosition.y,n=s.interactor.getView().getViewportCenter(e),t=s.motionFactor*t/n[1];o.dollyByFactor(e,Math.pow(1.1,t))},o.handleMouseWheel=function(e){var t=1-e.spinY/10;o.dollyByFactor(e.pokedRenderer,t)},o.dollyByFactor=function(e,t){var n;Number.isNaN(t)||((n=e.getActiveCamera()).getParallelProjection()?n.setParallelScale(n.getParallelScale()/t):(n.dolly(t),s.autoAdjustCameraClippingRange&&e.resetCameraClippingRange()),s.interactor.getLightFollowCamera()&&e.updateLightsGeometryToFollowCamera())}}t=e.newInstance=r.default.newInstance(s,"vtkInteractorStyleTrackballCamera");e.default=Object.assign({newInstance:t,extend:s})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=t.DEFAULT_VALUES=void 0,t.extend=r;var a=(n=n(0))&&n.__esModule?n:{default:n},i=t.DEFAULT_VALUES={renderers:[],views:[],interactor:null,neverRendered:!0,numberOfLayers:1};function r(e,t){var n,r;Object.assign(t,i,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),a.default.setGet(e,t,["interactor","numberOfLayers","views"]),a.default.get(e,t,["neverRendered"]),a.default.getArray(e,t,["renderers"]),a.default.event(e,t,"completion"),n=e,(r=t).classHierarchy.push("vtkRenderWindow"),n.addRenderer=function(e){n.hasRenderer(e)||(e.setRenderWindow(n),r.renderers.push(e),n.modified())},n.removeRenderer=function(t){r.renderers=r.renderers.filter(function(e){return e!==t}),n.modified()},n.hasRenderer=function(e){return-1!==r.renderers.indexOf(e)},n.addView=function(e){n.hasView(e)||(e.setRenderable(n),r.views.push(e),n.modified())},n.removeView=function(t){r.views=r.views.filter(function(e){return e!==t}),n.modified()},n.hasView=function(e){return-1!==r.views.indexOf(e)},n.render=function(){r.interactor?r.interactor.render():r.views.forEach(function(e){return e.traverseAllPasses()})},n.getStatistics=function(){var n={propCount:0,invisiblePropCount:0};return r.renderers.forEach(function(e){e.getViewProps().forEach(function(e){var t;e.getVisibility()?(n.propCount+=1,(e=e.getMapper())&&e.getPrimitiveCount&&(t=e.getPrimitiveCount(),Object.keys(t).forEach(function(e){n[e]||(n[e]=0),n[e]+=t[e]}))):n.invisiblePropCount+=1})}),n.str=Object.keys(n).map(function(e){return e+": "+n[e]}).join("\n"),n},n.captureImages=function(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"image/png";return n.render(),r.views.map(function(e){return e.captureImage?e.captureImage(t):void 0}).filter(function(e){return!!e})}}n=t.newInstance=a.default.newInstance(r,"vtkRenderWindow");t.default={newInstance:n,extend:r}},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=e.STATIC=void 0,e.vtkPlane=h,e.extend=l;var o=r(t(2)),n=r(t(0));function r(e){return e&&e.__esModule?e:{default:e}}var s=1e-6;function a(e,t,n){n=n[0]*(e[0]-t[0])+n[1]*(e[1]-t[1])+n[2]*(e[2]-t[2]);return Math.abs(n)}function i(e,t,n,r){var a=[],t=(o.default.subtract(e,t,a),o.default.dot(n,a));r[0]=e[0]-t*n[0],r[1]=e[1]-t*n[1],r[2]=e[2]-t*n[2]}function u(e,t,n){var r=o.default.dot(e,t),a=o.default.dot(t,t);n[0]=e[0]-r*t[0]/(a=0===a?1:a),n[1]=e[1]-r*t[1]/a,n[2]=e[2]-r*t[2]/a}function f(e,t,n,r){var a=[],t=(o.default.subtract(e,t,a),o.default.dot(n,a)),a=o.default.dot(n,n);0!==a?(r[0]=e[0]-t*n[0]/a,r[1]=e[1]-t*n[1]/a,r[2]=e[2]-t*n[2]/a):(r[0]=e[0],r[1]=e[1],r[2]=e[2])}function d(e,t,n,r){var a={intersection:!1,t:Number.MAX_VALUE,x:[]},i=[],t=(o.default.subtract(t,e,i),o.default.dot(r,n)-o.default.dot(r,e)),n=o.default.dot(r,i);return(n<0?-n:n)<=(t<0?-t*s:t*s)||(a.t=t/n,a.x[0]=e[0]+a.t*i[0],a.x[1]=e[1]+a.t*i[1],a.x[2]=e[2]+a.t*i[2],a.intersection=0<=a.t&&a.t<=1),a}t=e.STATIC={evaluate:function(e,t,n){return e[0]*(n[0]-t[0])+e[1]*(n[1]-t[1])+e[2]*(n[2]-t[2])},distanceToPlane:a,projectPoint:i,projectVector:u,generalizedProjectPoint:f,intersectWithLine:d};function h(e,r){r.classHierarchy.push("vtkPlane"),e.distanceToPlane=function(e){return a(e,r.origin,r.normal)},e.projectPoint=function(e,t){i(e,r.origin,r.normal,t)},e.projectVector=function(e,t){u(e,r.normal,t)},e.push=function(e){if(0!==e)for(var t=0;t<3;t++)r.origin[t]+=e*r.normal[t]},e.generalizedProjectPoint=function(e,t){f(e,r.origin,r.normal,t)},e.evaluateFunction=function(e,t,n){return Array.isArray(e)?r.normal[0]*(e[0]-r.origin[0])+r.normal[1]*(e[1]-r.origin[1])+r.normal[2]*(e[2]-r.origin[2]):r.normal[0]*(e-r.origin[0])+r.normal[1]*(t-r.origin[1])+r.normal[2]*(n-r.origin[2])},e.evaluateGradient=function(e){return[r.normal[0],r.normal[1],r.normal[2]]},e.intersectWithLine=function(e,t){return d(e,t,r.origin,r.normal)}}var g={normal:[0,0,1],origin:[0,0,0]};function l(e,t){Object.assign(t,g,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),n.default.obj(e,t),n.default.setGetArray(e,t,["normal","origin"],3),h(e,t)}var p=e.newInstance=n.default.newInstance(l,"vtkPlane");e.default=Object.assign({newInstance:p,extend:l},t)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var i=(n=n(0))&&n.__esModule?n:{default:n},o=i.default.vtkErrorMacro;var s={vtkWindow:null,background:[0,0,0],background2:[.2,.2,.2],gradientBackground:!1,viewport:[0,0,1,1],aspect:[1,1],pixelAspect:[1,1],props:[],actors2D:[]};function r(e,t){var r,a;Object.assign(t,s,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),i.default.obj(e,t),i.default.event(e,t,"event"),i.default.setGetArray(e,t,["viewport"],4),i.default.setGetArray(e,t,["background","background2"],3),r=e,(a=t).classHierarchy.push("vtkViewport"),r.getViewProps=function(){return a.props},r.hasViewProp=function(t){return!!a.props.filter(function(e){return e===t}).length},r.addViewProp=function(e){e&&!r.hasViewProp(e)&&(a.props=a.props.concat(e))},r.removeViewProp=function(t){var e=a.props.filter(function(e){return e!==t});a.props.length!==e.length&&(a.props=e)},r.removeAllViewProps=function(){a.props=[]},r.getViewPropsWithNestedProps=function(){a.allprops=a.props;for(var e=0;e<a.props.length;++e){var t=a.props[e];t.getNestedProps()&&(a.allprops=a.allprops.concat(t.getNestedProps()))}return a.allprops},r.addActor2D=r.addViewProp,r.removeActor2D=function(e){r.removeViewProp(e)},r.getActors2D=function(){return a.actors2D=[],a.props.forEach(function(e){a.actors2D=a.actors2D.concat(e.getActors2D())}),a.actors2D},r.displayToView=function(){return o("call displayToView on your view instead")},r.viewToDisplay=function(){return o("callviewtodisplay on your view instead")},r.getSize=function(){return o("call getSize on your View instead")},r.normalizedDisplayToView=function(e,t,n){e=r.normalizedDisplayToNormalizedViewport(e,t,n);return r.normalizedViewportToView(e[0],e[1],e[2])},r.normalizedDisplayToNormalizedViewport=function(e,t,n){var r=[a.viewport[2]-a.viewport[0],a.viewport[3]-a.viewport[1]];return[(e-a.viewport[0])/r[0],(t-a.viewport[1])/r[1],n]},r.normalizedViewportToView=function(e,t,n){return[2*e-1,2*t-1,2*n-1]},r.viewToNormalizedDisplay=function(e,t,n){e=r.viewToNormalizedViewport(e,t,n);return r.normalizedViewportToNormalizedDisplay(e[0],e[1],e[2])},r.normalizedViewportToNormalizedDisplay=function(e,t,n){var r=[a.viewport[2]-a.viewport[0],a.viewport[3]-a.viewport[1]];return[e*r[0]+a.viewport[0],t*r[1]+a.viewport[1],n]},r.viewToNormalizedViewport=function(e,t,n){return[.5*(e+1),.5*(t+1),.5*(n+1)]},r.PickPropFrom=function(){return o("vtkViewport::PickPropFrom - NOT IMPLEMENTED")}}n=t.newInstance=i.default.newInstance(r,"vtkViewport");t.default={newInstance:n,extend:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=t.LIGHT_TYPES=void 0,t.extend=s;var a=r(n(0)),i=r(n(2));function r(e){return e&&e.__esModule?e:{default:e}}var n=t.LIGHT_TYPES=["HeadLight","CameraLight","SceneLight"],o={switch:!0,intensity:1,color:[1,1,1],position:[0,0,1],focalPoint:[0,0,0],positional:!1,exponent:1,coneAngle:30,attenuationValues:[1,0,0],transformMatrix:null,lightType:"SceneLight",shadowAttenuation:1,direction:[0,0,0],directionMTime:0};function s(e,t){var n,r;Object.assign(t,o,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),a.default.setGet(e,t,["intensity","switch","positional","exponent","coneAngle","transformMatrix","lightType","shadowAttenuation"]),a.default.setGetArray(e,t,["color","position","focalPoint","attenuationValues"],3),n=e,(r=t).classHierarchy.push("vtkLight"),n.getTransformedPosition=function(){return r.transformMatrix?[]:[].concat(r.position)},n.getTransformedFocalPoint=function(){return r.transformMatrix?[]:[].concat(r.focalPoint)},n.getDirection=function(){return r.directionMTime<r.mtime&&(r.direction[0]=r.focalPoint[0]-r.position[0],r.direction[1]=r.focalPoint[1]-r.position[1],r.direction[2]=r.focalPoint[2]-r.position[2],i.default.normalize(r.direction),r.directionMTime=r.mtime),r.direction},n.setDirectionAngle=function(e,t){e=i.default.radiansFromDegrees(e),t=i.default.radiansFromDegrees(t);n.setPosition(Math.cos(e)*Math.sin(t),Math.sin(e),Math.cos(e)*Math.cos(t)),n.setFocalPoint(0,0,0),n.setPositional(0)},n.setLightTypeToHeadLight=function(){n.setLightType("HeadLight")},n.setLightTypeToCameraLight=function(){n.setLightType("CameraLight")},n.setLightTypeToSceneLight=function(){n.setTransformMatrix(null),n.setLightType("SceneLight")},n.lightTypeIsHeadLight=function(){return"HeadLight"===r.lightType},n.lightTypeIsSceneLight=function(){return"SceneLight"===r.lightType},n.lightTypeIsCameraLight=function(){return"CameraLight"===r.lightType}}var u=t.newInstance=a.default.newInstance(s,"vtkLight");t.default={newInstance:u,extend:s,LIGHT_TYPES:n}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=e.DEFAULT_VALUES=void 0,e.extend=r;var v=t(3),A=n(t(0)),y=n(t(2));function n(e){return e&&e.__esModule?e:{default:e}}var T=A.default.vtkDebugMacro,w=e.DEFAULT_VALUES={position:[0,0,1],focalPoint:[0,0,0],viewUp:[0,1,0],directionOfProjection:[0,0,-1],parallelProjection:!1,useHorizontalViewAngle:!1,viewAngle:30,parallelScale:1,clippingRange:[.01,1000.01],thickness:1e3,windowCenter:[0,0],viewPlaneNormal:[0,0,1],useOffAxisProjection:!1,screenBottomLeft:[-.5,-.5,-.5],screenBottomRight:[.5,-.5,-.5],screenTopRight:[.5,.5,-.5],freezeFocalPoint:!1,useScissor:!1,projectionMatrix:null,viewMatrix:null,physicalTranslation:[0,0,0],physicalScale:1,physicalViewUp:[0,1,0],physicalViewNorth:[0,0,-1]};function r(n,e){var o,d,a,s,r,c,f,h,u,t,g,p,i,l,M;function m(){v.vec3.transformMat4(u,c,a),o.computeDistance();var e=d.distance;o.setPosition(u[0],u[1],u[2]),v.vec3.transformMat4(t,f,a),v.vec3.subtract(t,t,u),v.vec3.normalize(t,t),o.setDirectionOfProjection(t[0],t[1],t[2]),v.vec3.transformMat4(g,h,a),v.vec3.subtract(g,g,u),o.setViewUp(g[0],g[1],g[2]),o.setDistance(e)}Object.assign(e,w,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),A.default.obj(n,e),e.viewMatrix=A.default.get(n,e,["distance","thickness"]),A.default.setGet(n,e,["parallelProjection","useHorizontalViewAngle","viewAngle","parallelScale","useOffAxisProjection","freezeFocalPoint","useScissor","physicalScale"]),A.default.getArray(n,e,["directionOfProjection","viewPlaneNormal","position","focalPoint"]),A.default.setGetArray(n,e,["clippingRange","windowCenter"],2),A.default.setGetArray(n,e,["viewUp","screenBottomLeft","screenBottomRight","screenTopRight","physicalTranslation","physicalViewUp","physicalViewNorth"],3),o=n,(d=e).classHierarchy.push("vtkCamera"),a=v.mat4.create(),s=v.mat4.create(),r=v.mat4.create(),c=v.vec3.create(),f=v.vec3.fromValues(0,0,-1),h=v.vec3.fromValues(0,1,0),u=v.vec3.create(),t=v.vec3.create(),g=v.vec3.create(),p=v.mat4.create(),i=v.mat4.create(),l=v.vec3.create(),M=v.vec3.create(),o.orthogonalizeViewUp=function(){var e=o.getViewMatrix();d.viewUp[0]=e[4],d.viewUp[1]=e[5],d.viewUp[2]=e[6],o.modified()},o.setPosition=function(e,t,n){e===d.position[0]&&t===d.position[1]&&n===d.position[2]||(d.position[0]=e,d.position[1]=t,d.position[2]=n,o.computeDistance(),o.modified())},o.setFocalPoint=function(e,t,n){e===d.focalPoint[0]&&t===d.focalPoint[1]&&n===d.focalPoint[2]||(d.focalPoint[0]=e,d.focalPoint[1]=t,d.focalPoint[2]=n,o.computeDistance(),o.modified())},o.setDistance=function(e){d.distance!==e&&(d.distance=e,d.distance<1e-20&&(d.distance=1e-20,T("Distance is set to minimum.")),e=d.directionOfProjection,d.focalPoint[0]=d.position[0]+e[0]*d.distance,d.focalPoint[1]=d.position[1]+e[1]*d.distance,d.focalPoint[2]=d.position[2]+e[2]*d.distance,o.modified())},o.computeDistance=function(){var e,t=d.focalPoint[0]-d.position[0],n=d.focalPoint[1]-d.position[1],r=d.focalPoint[2]-d.position[2];d.distance=Math.sqrt(t*t+n*n+r*r),d.distance<1e-20&&(d.distance=1e-20,T("Distance is set to minimum."),e=d.directionOfProjection,d.focalPoint[0]=d.position[0]+e[0]*d.distance,d.focalPoint[1]=d.position[1]+e[1]*d.distance,d.focalPoint[2]=d.position[2]+e[2]*d.distance),d.directionOfProjection[0]=t/d.distance,d.directionOfProjection[1]=n/d.distance,d.directionOfProjection[2]=r/d.distance,o.computeViewPlaneNormal()},o.computeViewPlaneNormal=function(){d.viewPlaneNormal[0]=-d.directionOfProjection[0],d.viewPlaneNormal[1]=-d.directionOfProjection[1],d.viewPlaneNormal[2]=-d.directionOfProjection[2]},o.dolly=function(e){e<=0||(e=d.distance/e,o.setPosition(d.focalPoint[0]-e*d.directionOfProjection[0],d.focalPoint[1]-e*d.directionOfProjection[1],d.focalPoint[2]-e*d.directionOfProjection[2]))},o.setRoll=function(e){},o.getRoll=function(){},o.roll=function(e){var t=d.position,n=d.focalPoint,r=d.viewUp,r=v.vec4.fromValues(r[0],r[1],r[2],0),n=(v.mat4.identity(p),v.vec3.fromValues(n[0]-t[0],n[1]-t[1],n[2]-t[2]));v.mat4.rotate(p,p,y.default.radiansFromDegrees(e),n),v.vec4.transformMat4(r,r,p),d.viewUp[0]=r[0],d.viewUp[1]=r[1],d.viewUp[2]=r[2],o.modified()},o.azimuth=function(e){var t=d.focalPoint;v.mat4.identity(i),v.mat4.translate(i,i,v.vec3.fromValues(t[0],t[1],t[2])),v.mat4.rotate(i,i,y.default.radiansFromDegrees(e),v.vec3.fromValues(d.viewUp[0],d.viewUp[1],d.viewUp[2])),v.mat4.translate(i,i,v.vec3.fromValues(-t[0],-t[1],-t[2])),v.vec3.transformMat4(l,v.vec3.fromValues(d.position[0],d.position[1],d.position[2]),i),o.setPosition(l[0],l[1],l[2])},o.yaw=function(e){var t=d.position;v.mat4.identity(i),v.mat4.translate(i,i,v.vec3.fromValues(t[0],t[1],t[2])),v.mat4.rotate(i,i,y.default.radiansFromDegrees(e),v.vec3.fromValues(d.viewUp[0],d.viewUp[1],d.viewUp[2])),v.mat4.translate(i,i,v.vec3.fromValues(-t[0],-t[1],-t[2])),v.vec3.transformMat4(M,v.vec3.fromValues(d.focalPoint[0],d.focalPoint[1],d.focalPoint[2]),i),o.setFocalPoint(M[0],M[1],M[2])},o.elevation=function(e){var t=d.focalPoint,n=o.getViewMatrix(),n=[-n[0],-n[1],-n[2]];v.mat4.identity(i),v.mat4.translate(i,i,v.vec3.fromValues(t[0],t[1],t[2])),v.mat4.rotate(i,i,y.default.radiansFromDegrees(e),v.vec3.fromValues(n[0],n[1],n[2])),v.mat4.translate(i,i,v.vec3.fromValues(-t[0],-t[1],-t[2])),v.vec3.transformMat4(l,v.vec3.fromValues(d.position[0],d.position[1],d.position[2]),i),o.setPosition(l[0],l[1],l[2])},o.pitch=function(e){var t=d.position,n=o.getViewMatrix(),n=[n[0],n[1],n[2]];v.mat4.identity(i),v.mat4.translate(i,i,v.vec3.fromValues(t[0],t[1],t[2])),v.mat4.rotate(i,i,y.default.radiansFromDegrees(e),v.vec3.fromValues(n[0],n[1],n[2])),v.mat4.translate(i,i,v.vec3.fromValues(-t[0],-t[1],-t[2])),v.vec3.transformMat4(M,v.vec3.fromValues(d.focalPoint[0],d.focalPoint[1],d.focalPoint[2]),i),o.setFocalPoint(M[0],M[1],M[2])},o.zoom=function(e){e<=0||(d.parallelProjection?d.parallelScale/=e:d.viewAngle/=e,o.modified())},o.setThickness=function(e){},o.setObliqueAngles=function(e,t){},o.physicalOrientationToWorldDirection=function(e){o.getPhysicalToWorldMatrix(r);var e=v.quat.fromValues(e[0],e[1],e[2],e[3]),t=v.quat.create(),n=v.quat.fromValues(0,0,1,0);return v.quat.conjugate(t,e),v.quat.multiply(n,e,n),v.quat.multiply(n,n,t),[n[0],n[1],n[2]]},o.getPhysicalToWorldMatrix=function(e){o.getWorldToPhysicalMatrix(e),v.mat4.invert(e,e)},o.getWorldToPhysicalMatrix=function(e){v.mat4.identity(r),v.vec3.set(u,d.physicalScale,d.physicalScale,d.physicalScale),v.mat4.scale(r,r,u),v.mat4.translate(r,r,d.physicalTranslation);var t=[3],n=(y.default.cross(d.physicalViewNorth,d.physicalViewUp,t),v.mat4.create());n[0]=t[0],n[1]=t[1],n[2]=t[2],n[4]=d.physicalViewUp[0],n[5]=d.physicalViewUp[1],n[6]=d.physicalViewUp[2],n[8]=-d.physicalViewNorth[0],n[9]=-d.physicalViewNorth[1],n[10]=-d.physicalViewNorth[2],v.mat4.transpose(n,n),v.mat4.multiply(e,r,n)},o.computeViewParametersFromPhysicalMatrix=function(e){o.getWorldToPhysicalMatrix(r),v.mat4.multiply(a,e,r),v.mat4.invert(a,a),m()},o.setViewMatrix=function(e){d.viewMatrix=e,d.viewMatrix&&(v.mat4.copy(a,d.viewMatrix),m(),v.mat4.transpose(d.viewMatrix,d.viewMatrix))},o.getViewMatrix=function(){if(d.viewMatrix)return d.viewMatrix;var e=v.mat4.create(),t=d.position,n=d.focalPoint,r=d.viewUp;return v.mat4.lookAt(a,v.vec3.fromValues(t[0],t[1],t[2]),v.vec3.fromValues(n[0],n[1],n[2]),v.vec3.fromValues(r[0],r[1],r[2])),v.mat4.transpose(a,a),v.mat4.copy(e,a),e},o.setProjectionMatrix=function(e){d.projectionMatrix=e},o.getProjectionMatrix=function(e,t,n){var r=v.mat4.create();if(d.projectionMatrix)return v.vec3.set(u,d.physicalScale,d.physicalScale,d.physicalScale),v.mat4.copy(r,d.projectionMatrix),v.mat4.scale(r,r,u),v.mat4.transpose(r,r),r;v.mat4.identity(s);var a=d.clippingRange[1]-d.clippingRange[0],t=[d.clippingRange[0]+(t+1)*a/2,d.clippingRange[0]+(n+1)*a/2];if(d.parallelProjection){var n=d.parallelScale*e,a=d.parallelScale,i=(d.windowCenter[0]-1)*n,n=(d.windowCenter[0]+1)*n,o=(d.windowCenter[1]-1)*a,a=(d.windowCenter[1]+1)*a;v.mat4.ortho(s,i,n,o,a,t[0],t[1]),v.mat4.transpose(s,s)}else{if(d.useOffAxisProjection)throw new Error("Off-Axis projection is not supported at this time");i=Math.tan(y.default.radiansFromDegrees(d.viewAngle)/2),n=void 0,o=void 0,o=!0===d.useHorizontalViewAngle?(n=d.clippingRange[0]*i,d.clippingRange[0]*i/e):(n=d.clippingRange[0]*i*e,d.clippingRange[0]*i),a=(d.windowCenter[0]-1)*n,e=(d.windowCenter[0]+1)*n,i=(d.windowCenter[1]-1)*o,n=(d.windowCenter[1]+1)*o,o=t[0],t=t[1];s[0]=2*o/(e-a),s[5]=2*o/(n-i),s[2]=(a+e)/(e-a),s[6]=(i+n)/(n-i),s[10]=-(o+t)/(t-o),s[14]=-1,s[11]=-2*o*t/(t-o),s[15]=0}return v.mat4.copy(r,s),r},o.getCompositeProjectionMatrix=function(e,t,n){var r=o.getViewMatrix(),e=o.getProjectionMatrix(e,t,n),t=v.mat4.create();return v.mat4.multiply(t,r,e),t},o.getFrustumPlanes=function(e){},o.getOrientation=function(){},o.getOrientationWXYZ=function(){},o.setDirectionOfProjection=function(e,t,n){d.directionOfProjection[0]===e&&d.directionOfProjection[1]===t&&d.directionOfProjection[2]===n||(d.directionOfProjection[0]=e,d.directionOfProjection[1]=t,d.directionOfProjection[2]=n,e=d.directionOfProjection,d.focalPoint[0]=d.position[0]+e[0]*d.distance,d.focalPoint[1]=d.position[1]+e[1]*d.distance,d.focalPoint[2]=d.position[2]+e[2]*d.distance,o.computeViewPlaneNormal())},o.setDeviceAngles=function(e,t,n,r){var a=[3],i=(y.default.cross(d.physicalViewNorth,d.physicalViewUp,a),v.mat4.create()),e=(v.mat4.rotate(i,i,y.default.radiansFromDegrees(e),d.physicalViewUp),v.mat4.rotate(i,i,y.default.radiansFromDegrees(t),a),v.mat4.rotate(i,i,y.default.radiansFromDegrees(n),d.physicalViewNorth),v.mat4.rotate(i,i,y.default.radiansFromDegrees(-r),d.physicalViewUp),v.vec3.fromValues(-d.physicalViewUp[0],-d.physicalViewUp[1],-d.physicalViewUp[2])),t=v.vec3.fromValues(d.physicalViewNorth[0],d.physicalViewNorth[1],d.physicalViewNorth[2]);v.vec3.transformMat4(e,e,i),v.vec3.transformMat4(t,t,i),o.setDirectionOfProjection(e[0],e[1],e[2]),o.setViewUp(t[0],t[1],t[2]),o.modified()},o.setOrientationWXYZ=function(e,t,n,r){var a,i=v.mat4.create(),t=(0===e||0===t&&0===n&&0===r||(e=y.default.radiansFromDegrees(e),a=v.quat.create(),v.quat.setAxisAngle(a,[t,n,r],e),v.quat.toMat4(a,i)),v.vec3.fromValues(0,0,-1)),n=v.vec3.create(),r=(v.vec3.transformMat4(n,t,i),v.vec3.fromValues(0,1,0)),e=v.vec3.create();v.vec3.transformMat4(e,r,i),o.setDirectionOfProjection(n[0],n[1],n[2]),o.setViewUp(e[0],e[1],e[2]),o.modified()},o.computeClippingRange=function(e){for(var t=d.viewPlaneNormal,n=d.position,r=-t[0],a=-t[1],i=-t[2],c=-(r*n[0]+a*n[1]+i*n[2]),o=[r*e[0]+a*e[2]+i*e[4]+c,1e-18],s=0;s<2;s++)for(var u=0;u<2;u++)for(var f=0;f<2;f++){var l=r*e[f]+a*e[2+u]+i*e[4+s]+c;o[0]=l<o[0]?l:o[0],o[1]=l>o[1]?l:o[1]}return o}}t=e.newInstance=A.default.newInstance(r,"vtkCamera");e.default={newInstance:t,extend:r}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var i=t(3),o=n(t(0)),g=n(t(171)),p=n(t(170)),c=n(t(2)),M=n(t(169)),f=n(t(89));function n(e){return e&&e.__esModule?e:{default:e}}var d=o.default.vtkDebugMacro,h=o.default.vtkErrorMacro,m=o.default.vtkWarningMacro;function v(e){return function(){return h("vtkRenderer::"+e+" - NOT IMPLEMENTED")}}var A={pickedProp:null,activeCamera:null,allBounds:[],ambient:[1,1,1],allocatedRenderTime:100,timeFactor:1,createdLight:null,automaticLightCreation:!0,twoSidedLighting:!0,lastRenderTimeInSeconds:-1,renderWindow:null,lights:[],actors:[],volumes:[],lightFollowCamera:!0,numberOfPropsRendered:0,propArray:null,pathArray:null,layer:1,preserveColorBuffer:!1,preserveDepthBuffer:!1,computeVisiblePropBounds:c.default.createUninitializedBounds(),interactive:!0,nearClippingPlaneTolerance:0,clippingRangeExpansion:.05,erase:!0,draw:!0,useShadows:!1,useDepthPeeling:!1,occlusionRatio:0,maximumNumberOfPeels:4,selector:null,delegate:null,texturedBackground:!1,backgroundTexture:null,pass:0};function r(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},s=(Object.assign(t,A,n),M.default.extend(e,t,n),o.default.get(e,t,["renderWindow","allocatedRenderTime","timeFactor","lastRenderTimeInSeconds","numberOfPropsRendered","lastRenderingUsedDepthPeeling","selector"]),o.default.setGet(e,t,["twoSidedLighting","lightFollowCamera","automaticLightCreation","erase","draw","nearClippingPlaneTolerance","clippingRangeExpansion","backingStore","interactive","layer","preserveColorBuffer","preserveDepthBuffer","useDepthPeeling","occlusionRatio","maximumNumberOfPeels","delegate","backgroundTexture","texturedBackground","useShadows","pass"]),o.default.getArray(e,t,["actors","volumes","lights"]),o.default.setGetArray(e,t,["background"],4,1),e),u=t;for(u.classHierarchy.push("vtkRenderer"),u.background||(u.background=[0,0,0,1]);u.background.length<3;)u.background.push(0);3===u.background.length&&u.background.push(1);var r={type:"ComputeVisiblePropBoundsEvent",renderer:s},a={type:"ResetCameraClippingRangeEvent",renderer:s},l={type:"ResetCameraEvent",renderer:s};s.updateCamera=function(){return u.activeCamera||(d("No cameras are on, creating one."),s.getActiveCameraAndResetIfCreated()),u.activeCamera.render(s),!0},s.updateLightsGeometryToFollowCamera=function(){var t=s.getActiveCameraAndResetIfCreated();u.lights.forEach(function(e){e.lightTypeIsSceneLight()||(e.lightTypeIsHeadLight()?(e.setPositionFrom(t.getPositionByReference()),e.setFocalPointFrom(t.getFocalPointByReference()),e.modified(t.getMTime())):e.lightTypeIsCameraLight()?h("camera lights not supported yet",e):h("light has unknown light type",e))})},s.updateLightGeometry=function(){return!u.lightFollowCamera||s.updateLightsGeometryToFollowCamera()},s.allocateTime=v("allocateTime"),s.updateGeometry=v("updateGeometry"),s.getVTKWindow=function(){return u.renderWindow},s.setLayer=function(e){d(s.getClassName(),s,"setting Layer to ",e),u.layer!==e&&(u.layer=e,s.modified()),s.setPreserveColorBuffer(!!e)},s.setActiveCamera=function(e){return u.activeCamera!==e&&(u.activeCamera=e,s.modified(),s.invokeEvent({type:"ActiveCameraEvent",camera:e}),!0)},s.makeCamera=function(){var e=g.default.newInstance();return s.invokeEvent({type:"CreateCameraEvent",camera:e}),e},s.getActiveCamera=function(){return u.activeCamera||(u.activeCamera=s.makeCamera()),u.activeCamera},s.getActiveCameraAndResetIfCreated=function(){return u.activeCamera||(s.getActiveCamera(),s.resetCamera()),u.activeCamera},s.addActor=s.addViewProp,s.addVolume=s.addViewProp,s.removeActor=function(t){u.actors=u.actors.filter(function(e){return e!==t}),s.removeViewProp(t)},s.removeVolume=function(t){u.volumes=u.volumes.filter(function(e){return e!==t}),s.removeViewProp(t)},s.addLight=function(e){u.lights=[].concat(u.lights,e),s.modified()},s.getActors=function(){return u.actors=[],u.props.forEach(function(e){u.actors=u.actors.concat(e.getActors())}),u.actors},s.getVolumes=function(){return u.volumes=[],u.props.forEach(function(e){u.volumes=u.volumes.concat(e.getVolumes())}),u.volumes},s.removeLight=function(t){u.lights=u.lights.filter(function(e){return e!==t}),s.modified()},s.removeAllLights=function(){u.lights=[]},s.setLightCollection=function(e){u.lights=e,s.modified()},s.makeLight=p.default.newInstance,s.createLight=function(){u.automaticLightCreation&&(u.createdLight&&(s.removeLight(u.createdLight),u.createdLight.delete(),u.createdLight=null),u.createdLight=s.makeLight(),s.addLight(u.createdLight),u.createdLight.setLightTypeToHeadLight(),u.createdLight.setPosition(s.getActiveCamera().getPosition()),u.createdLight.setFocalPoint(s.getActiveCamera().getFocalPoint()))},s.normalizedDisplayToWorld=function(e,t,n,r){e=s.normalizedDisplayToView(e,t,n);return s.viewToWorld(e[0],e[1],e[2],r)},s.worldToNormalizedDisplay=function(e,t,n,r){e=s.worldToView(e,t,n);return s.viewToNormalizedDisplay(e[0],e[1],e[2],r)},s.viewToWorld=function(e,t,n,r){if(null===u.activeCamera)return h("ViewToWorld: no active camera, cannot compute view to world, returning 0,0,0"),[0,0,0];r=u.activeCamera.getCompositeProjectionMatrix(r,-1,1),i.mat4.invert(r,r),i.mat4.transpose(r,r),e=i.vec3.fromValues(e,t,n);return i.vec3.transformMat4(e,e,r),[e[0],e[1],e[2]]},s.worldToView=function(e,t,n,r){if(null===u.activeCamera)return h("ViewToWorld: no active camera, cannot compute view to world, returning 0,0,0"),[0,0,0];r=u.activeCamera.getCompositeProjectionMatrix(r,-1,1),i.mat4.transpose(r,r),e=i.vec3.fromValues(e,t,n);return i.vec3.transformMat4(e,e,r),[e[0],e[1],e[2]]},s.computeVisiblePropBounds=function(){u.allBounds[0]=f.default.INIT_BOUNDS[0],u.allBounds[1]=f.default.INIT_BOUNDS[1],u.allBounds[2]=f.default.INIT_BOUNDS[2],u.allBounds[3]=f.default.INIT_BOUNDS[3],u.allBounds[4]=f.default.INIT_BOUNDS[4],u.allBounds[5]=f.default.INIT_BOUNDS[5];var e=!0;s.invokeEvent(r);for(var t=0;t<u.props.length;++t){var n=u.props[t];n.getVisibility()&&n.getUseBounds()&&((n=n.getBounds())&&c.default.areBoundsInitialized(n)&&(e=!1,n[0]<u.allBounds[0]&&(u.allBounds[0]=n[0]),n[1]>u.allBounds[1]&&(u.allBounds[1]=n[1]),n[2]<u.allBounds[2]&&(u.allBounds[2]=n[2]),n[3]>u.allBounds[3]&&(u.allBounds[3]=n[3]),n[4]<u.allBounds[4]&&(u.allBounds[4]=n[4]),n[5]>u.allBounds[5]&&(u.allBounds[5]=n[5])))}return e&&(c.default.uninitializeBounds(u.allBounds),d("Can't compute bounds, no 3D props are visible")),u.allBounds},s.resetCamera=function(){var e=(0<arguments.length&&void 0!==arguments[0]?arguments[0]:null)||s.computeVisiblePropBounds(),t=[0,0,0];if(!c.default.areBoundsInitialized(e))return d("Cannot reset camera!"),!1;var n;if(!s.getActiveCamera())return h("Trying to reset non-existant camera"),!1;n=u.activeCamera.getViewPlaneNormal(),u.activeCamera.setViewAngle(30),t[0]=(e[0]+e[1])/2,t[1]=(e[2]+e[3])/2,t[2]=(e[4]+e[5])/2;var r=e[1]-e[0],a=e[3]-e[2],i=e[5]-e[4],r=0===(r=(r*=r)+(a*=a)+(i*=i))?1:r,a=(r=.5*Math.sqrt(r),c.default.radiansFromDegrees(u.activeCamera.getViewAngle())),i=r,a=r/Math.sin(.5*a),o=u.activeCamera.getViewUp();return.999<Math.abs(c.default.dot(o,n))&&(m("Resetting view-up since view plane normal is parallel"),u.activeCamera.setViewUp(-o[2],o[0],o[1])),u.activeCamera.setFocalPoint(t[0],t[1],t[2]),u.activeCamera.setPosition(t[0]+a*n[0],t[1]+a*n[1],t[2]+a*n[2]),s.resetCameraClippingRange(e),u.activeCamera.setParallelScale(i),u.activeCamera.setPhysicalScale(1/r),u.activeCamera.setPhysicalTranslation(-t[0],-t[1],-t[2]),s.invokeEvent(l),!0},s.resetCameraClippingRange=function(){var e=(0<arguments.length&&void 0!==arguments[0]?arguments[0]:null)||s.computeVisiblePropBounds();if(!c.default.areBoundsInitialized(e))return d("Cannot reset camera clipping range!"),!1;if(s.getActiveCameraAndResetIfCreated(),!u.activeCamera)return h("Trying to reset clipping range of non-existant camera"),!1;var t,e=u.activeCamera.computeClippingRange(e),n=0;return n=u.activeCamera.getParallelProjection()?.1*u.activeCamera.getParallelScale():(t=c.default.radiansFromDegrees(u.activeCamera.getViewAngle()),.2*Math.tan(t/2)*e[1]),e[1]-e[0]<n&&(n=n-e[1]+e[0],e[1]+=n/2,e[0]-=n/2),e[0]<0&&(e[0]=0),e[0]=.99*e[0]-(e[1]-e[0])*u.clippingRangeExpansion,e[1]=1.01*e[1]+(e[1]-e[0])*u.clippingRangeExpansion,e[0]=e[0]>=e[1]?.01*e[1]:e[0],u.nearClippingPlaneTolerance||(u.nearClippingPlaneTolerance=.01),e[0]<u.nearClippingPlaneTolerance*e[1]&&(e[0]=u.nearClippingPlaneTolerance*e[1]),u.activeCamera.setClippingRange(e[0],e[1]),s.invokeEvent(a),!1},s.setRenderWindow=function(e){e!==u.renderWindow&&(u.vtkWindow=e,u.renderWindow=e)},s.visibleActorCount=function(){return u.props.filter(function(e){return e.getVisibility()}).length},s.visibleVolumeCount=s.visibleActorCount,s.getMTime=function(){var e=u.mtime,t=u.activeCamera?u.activeCamera.getMTime():0,t=(e<t&&(e=t),u.createdLight?u.createdLight.getMTime():0);return e=e<t?t:e},s.getTransparent=function(){return!!u.preserveColorBuffer},s.isActiveCameraCreated=function(){return!!u.activeCamera}}t=e.newInstance=o.default.newInstance(r,"vtkRenderer");e.default={newInstance:t,extend:r}},function(e,t,n){!function(u){e.exports=function(){"use strict";var Me="undefined"!=typeof window?window:void 0!==u?u:"undefined"!=typeof self?self:{},t=function(){return/Android/i.test(navigator.userAgent)||/iPhone|iPad|iPod/i.test(navigator.userAgent)},a=function(e,t){for(var n=0,r=e.length;n<r;n++)t[n]=e[n]},n=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e},i=function(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}(function(e,t){return e(t={exports:{}},t.exports),t.exports}(function(e,t){e.exports=function(){var u=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},l=function(){function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}}(),c=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},w=function(e,t,n){return e+(t-e)*n},f=function(){var e=/iPad|iPhone|iPod/.test(navigator.platform);return function(){return e}}(),d=function(){var e=-1!==navigator.userAgent.indexOf("Version")&&-1!==navigator.userAgent.indexOf("Android")&&-1!==navigator.userAgent.indexOf("Chrome");return function(){return e}}(),h=(/^((?!chrome|android).)*safari/i.test(navigator.userAgent),function(){var e=-1!==navigator.userAgent.indexOf("Firefox")&&-1!==navigator.userAgent.indexOf("Android");return function(){return e}}()),g=function(){var e=navigator.userAgent.match(/.*Chrome\/([0-9]+)/),t=e?parseInt(e[1],10):null;return function(){return t}}(),p=function(){var e=!1;if(65===g()){var t=navigator.userAgent.match(/.*Chrome\/([0-9\.]*)/);if(t){var n=t[1].split("."),r=c(n,4),a=(r[0],r[1],r[2]),i=r[3];e=3325===parseInt(a,10)&&parseInt(i,10)<148}}return function(){return e}}(),M=function(){var e=-1!==navigator.userAgent.indexOf("R7 Build");return function(){return e}}(),m=function(){var e=90==window.orientation||-90==window.orientation;return M()?!e:e},A=function(){return Math.max(window.screen.width,window.screen.height)*window.devicePixelRatio},y=function(){return Math.min(window.screen.width,window.screen.height)*window.devicePixelRatio},T=function(){if(document.exitFullscreen)document.exitFullscreen();else if(document.webkitExitFullscreen)document.webkitExitFullscreen();else if(document.mozCancelFullScreen)document.mozCancelFullScreen();else{if(!document.msExitFullscreen)return!1;document.msExitFullscreen()}return!0},b=function(e,t,n,r){var a=e.createShader(e.VERTEX_SHADER);e.shaderSource(a,t),e.compileShader(a);var i=e.createShader(e.FRAGMENT_SHADER);e.shaderSource(i,n),e.compileShader(i);var o=e.createProgram();for(var s in e.attachShader(o,a),e.attachShader(o,i),r)e.bindAttribLocation(o,r[s],s);return e.linkProgram(o),e.deleteShader(a),e.deleteShader(i),o},D=function(e,t){for(var n={},r=e.getProgramParameter(t,e.ACTIVE_UNIFORMS),a="",i=0;i<r;i++){var o=e.getActiveUniform(t,i);a=o.name.replace("[0]",""),n[a]=e.getUniformLocation(t,a)}return n},x=function(){var t=!1;return function(e){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4)))&&(t=!0)}(navigator.userAgent||navigator.vendor||window.opera),t},N=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e},E=function(e){if(f()){var t=e.style.width,n=e.style.height;e.style.width=parseInt(t)+1+"px",e.style.height=parseInt(n)+"px",setTimeout(function(){e.style.width=t,e.style.height=n},100)}window.canvas=e},I=function(){var c=Math.PI/180,f=.25*Math.PI,u=new Float32Array([0,0,0,1]),l=new Float32Array([0,0,0]);function r(e,t,n,r,a,i){!function(e,t,n,r){var a=Math.tan(t?t.upDegrees*c:f),i=Math.tan(t?t.downDegrees*c:f),o=Math.tan(t?t.leftDegrees*c:f),s=Math.tan(t?t.rightDegrees*c:f),u=2/(o+s),l=2/(a+i);e[0]=u,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=l,e[6]=0,e[7]=0,e[8]=-(o-s)*u*.5,e[9]=(a-i)*l*.5,e[10]=r/(n-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*n/(n-r),e[15]=0}(e,r||null,i.depthNear,i.depthFar);var o=n.orientation||u,s=n.position||l;!function(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=r+r,u=a+a,l=i+i,c=r*s,f=r*u,d=r*l,h=a*u,g=a*l,p=i*l,M=o*s,m=o*u,v=o*l;e[0]=1-(h+p),e[1]=f+v,e[2]=d-m,e[3]=0,e[4]=f-v,e[5]=1-(c+p),e[6]=g+M,e[7]=0,e[8]=d+m,e[9]=g-M,e[10]=1-(c+h),e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1}(t,o,s),a&&function(e,t,n){var r,a,i,o,c,f,d,h,g,p,M,m,s=n[0],u=n[1],l=n[2];t===e?(e[12]=t[0]*s+t[4]*u+t[8]*l+t[12],e[13]=t[1]*s+t[5]*u+t[9]*l+t[13],e[14]=t[2]*s+t[6]*u+t[10]*l+t[14],e[15]=t[3]*s+t[7]*u+t[11]*l+t[15]):(r=t[0],a=t[1],i=t[2],o=t[3],c=t[4],f=t[5],d=t[6],h=t[7],g=t[8],p=t[9],M=t[10],m=t[11],e[0]=r,e[1]=a,e[2]=i,e[3]=o,e[4]=c,e[5]=f,e[6]=d,e[7]=h,e[8]=g,e[9]=p,e[10]=M,e[11]=m,e[12]=r*s+c*u+g*l+t[12],e[13]=a*s+f*u+p*l+t[13],e[14]=i*s+d*u+M*l+t[14],e[15]=o*s+h*u+m*l+t[15])}(t,t,a),function(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],o=t[4],s=t[5],u=t[6],c=t[7],f=t[8],d=t[9],h=t[10],g=t[11],p=t[12],M=t[13],m=t[14],v=t[15],A=n*s-r*o,y=n*u-a*o,T=n*c-i*o,w=r*u-a*s,b=r*c-i*s,D=a*c-i*u,x=f*M-d*p,N=f*m-h*p,E=f*v-g*p,I=d*m-h*M,L=d*v-g*M,C=h*v-g*m,l=A*C-y*L+T*I+w*E-b*N+D*x;if(!l)return null;l=1/l,e[0]=(s*C-u*L+c*I)*l,e[1]=(a*L-r*C-i*I)*l,e[2]=(M*D-m*b+v*w)*l,e[3]=(h*b-d*D-g*w)*l,e[4]=(u*E-o*C-c*N)*l,e[5]=(n*C-a*E+i*N)*l,e[6]=(m*T-p*D-v*y)*l,e[7]=(f*D-h*T+g*y)*l,e[8]=(o*L-s*E+c*x)*l,e[9]=(r*E-n*L-i*x)*l,e[10]=(p*b-M*T+v*A)*l,e[11]=(d*T-f*b-g*A)*l,e[12]=(s*N-o*I-u*x)*l,e[13]=(n*I-r*N+a*x)*l,e[14]=(M*y-p*w-m*A)*l,e[15]=(f*w-d*y+h*A)*l}(t,t)}return function(e,t,n){return!(!e||!t||(e.pose=t,e.timestamp=t.timestamp,r(e.leftProjectionMatrix,e.leftViewMatrix,t,n._getFieldOfView("left"),n._getEyeOffset("left"),n),r(e.rightProjectionMatrix,e.rightViewMatrix,t,n._getFieldOfView("right"),n._getEyeOffset("right"),n),0))}}(),L=function(e){var t,n=e.indexOf("://");t=-1!==n?n+3:0;var r=e.indexOf("/",t);return-1===r&&(r=e.length),e.substring(0,r)},C=function(){var n={};return function(e,t){void 0===n[e]&&(console.warn("webvr-polyfill: "+t),n[e]=!0)}}(),O=function(e,t){var n=t?"Please use "+t+" instead.":"";C(e,e+" has been deprecated. This may not work on native WebVR displays. "+n)},S=function(e,t,n){if(t){for(var r=[],a=null,i=0;i<t.length;++i){var o=t[i];switch(o){case e.TEXTURE_BINDING_2D:case e.TEXTURE_BINDING_CUBE_MAP:var s=t[++i];if(s<e.TEXTURE0||s>e.TEXTURE31){console.error("TEXTURE_BINDING_2D or TEXTURE_BINDING_CUBE_MAP must be followed by a valid texture unit"),r.push(null,null);break}a||(a=e.getParameter(e.ACTIVE_TEXTURE)),e.activeTexture(s),r.push(e.getParameter(o),null);break;case e.ACTIVE_TEXTURE:a=e.getParameter(e.ACTIVE_TEXTURE),r.push(null);break;default:r.push(e.getParameter(o))}}n(e);for(var i=0;i<t.length;++i){var o=t[i],u=r[i];switch(o){case e.ACTIVE_TEXTURE:break;case e.ARRAY_BUFFER_BINDING:e.bindBuffer(e.ARRAY_BUFFER,u);break;case e.COLOR_CLEAR_VALUE:e.clearColor(u[0],u[1],u[2],u[3]);break;case e.COLOR_WRITEMASK:e.colorMask(u[0],u[1],u[2],u[3]);break;case e.CURRENT_PROGRAM:e.useProgram(u);break;case e.ELEMENT_ARRAY_BUFFER_BINDING:e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,u);break;case e.FRAMEBUFFER_BINDING:e.bindFramebuffer(e.FRAMEBUFFER,u);break;case e.RENDERBUFFER_BINDING:e.bindRenderbuffer(e.RENDERBUFFER,u);break;case e.TEXTURE_BINDING_2D:var s=t[++i];if(s<e.TEXTURE0||s>e.TEXTURE31)break;e.activeTexture(s),e.bindTexture(e.TEXTURE_2D,u);break;case e.TEXTURE_BINDING_CUBE_MAP:var s=t[++i];if(s<e.TEXTURE0||s>e.TEXTURE31)break;e.activeTexture(s),e.bindTexture(e.TEXTURE_CUBE_MAP,u);break;case e.VIEWPORT:e.viewport(u[0],u[1],u[2],u[3]);break;case e.BLEND:case e.CULL_FACE:case e.DEPTH_TEST:case e.SCISSOR_TEST:case e.STENCIL_TEST:u?e.enable(o):e.disable(o);break;default:console.log("No GL restore behavior for 0x"+o.toString(16))}a&&e.activeTexture(a)}}else n(e)},j=["attribute vec2 position;","attribute vec3 texCoord;","varying vec2 vTexCoord;","uniform vec4 viewportOffsetScale[2];","void main() {","  vec4 viewport = viewportOffsetScale[int(texCoord.z)];","  vTexCoord = (texCoord.xy * viewport.zw) + viewport.xy;","  gl_Position = vec4( position, 1.0, 1.0 );","}"].join("\n"),_=["precision mediump float;","uniform sampler2D diffuse;","varying vec2 vTexCoord;","void main() {","  gl_FragColor = texture2D(diffuse, vTexCoord);","}"].join("\n");function t(e,t,n,r){this.gl=e,this.cardboardUI=t,this.bufferScale=n,this.dirtySubmitFrameBindings=r,this.ctxAttribs=e.getContextAttributes(),this.meshWidth=20,this.meshHeight=20,this.bufferWidth=e.drawingBufferWidth,this.bufferHeight=e.drawingBufferHeight,this.realBindFramebuffer=e.bindFramebuffer,this.realEnable=e.enable,this.realDisable=e.disable,this.realColorMask=e.colorMask,this.realClearColor=e.clearColor,this.realViewport=e.viewport,f()||(this.realCanvasWidth=Object.getOwnPropertyDescriptor(e.canvas.__proto__,"width"),this.realCanvasHeight=Object.getOwnPropertyDescriptor(e.canvas.__proto__,"height")),this.isPatched=!1,this.lastBoundFramebuffer=null,this.cullFace=!1,this.depthTest=!1,this.blend=!1,this.scissorTest=!1,this.stencilTest=!1,this.viewport=[0,0,0,0],this.colorMask=[!0,!0,!0,!0],this.clearColor=[0,0,0,0],this.attribs={position:0,texCoord:1},this.program=b(e,j,_,this.attribs),this.uniforms=D(e,this.program),this.viewportOffsetScale=new Float32Array(8),this.setTextureBounds(),this.vertexBuffer=e.createBuffer(),this.indexBuffer=e.createBuffer(),this.indexCount=0,this.renderTarget=e.createTexture(),this.framebuffer=e.createFramebuffer(),this.depthStencilBuffer=null,this.depthBuffer=null,this.stencilBuffer=null,this.ctxAttribs.depth&&this.ctxAttribs.stencil?this.depthStencilBuffer=e.createRenderbuffer():this.ctxAttribs.depth?this.depthBuffer=e.createRenderbuffer():this.ctxAttribs.stencil&&(this.stencilBuffer=e.createRenderbuffer()),this.patch(),this.onResize()}t.prototype.destroy=function(){var e=this.gl;this.unpatch(),e.deleteProgram(this.program),e.deleteBuffer(this.vertexBuffer),e.deleteBuffer(this.indexBuffer),e.deleteTexture(this.renderTarget),e.deleteFramebuffer(this.framebuffer),this.depthStencilBuffer&&e.deleteRenderbuffer(this.depthStencilBuffer),this.depthBuffer&&e.deleteRenderbuffer(this.depthBuffer),this.stencilBuffer&&e.deleteRenderbuffer(this.stencilBuffer),this.cardboardUI&&this.cardboardUI.destroy()},t.prototype.onResize=function(){var e=this.gl,t=this,n=[e.RENDERBUFFER_BINDING,e.TEXTURE_BINDING_2D,e.TEXTURE0];S(e,n,function(e){t.realBindFramebuffer.call(e,e.FRAMEBUFFER,null),t.scissorTest&&t.realDisable.call(e,e.SCISSOR_TEST),t.realColorMask.call(e,!0,!0,!0,!0),t.realViewport.call(e,0,0,e.drawingBufferWidth,e.drawingBufferHeight),t.realClearColor.call(e,0,0,0,1),e.clear(e.COLOR_BUFFER_BIT),t.realBindFramebuffer.call(e,e.FRAMEBUFFER,t.framebuffer),e.bindTexture(e.TEXTURE_2D,t.renderTarget),e.texImage2D(e.TEXTURE_2D,0,t.ctxAttribs.alpha?e.RGBA:e.RGB,t.bufferWidth,t.bufferHeight,0,t.ctxAttribs.alpha?e.RGBA:e.RGB,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t.renderTarget,0),t.ctxAttribs.depth&&t.ctxAttribs.stencil?(e.bindRenderbuffer(e.RENDERBUFFER,t.depthStencilBuffer),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_STENCIL,t.bufferWidth,t.bufferHeight),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.RENDERBUFFER,t.depthStencilBuffer)):t.ctxAttribs.depth?(e.bindRenderbuffer(e.RENDERBUFFER,t.depthBuffer),e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_COMPONENT16,t.bufferWidth,t.bufferHeight),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,t.depthBuffer)):t.ctxAttribs.stencil&&(e.bindRenderbuffer(e.RENDERBUFFER,t.stencilBuffer),e.renderbufferStorage(e.RENDERBUFFER,e.STENCIL_INDEX8,t.bufferWidth,t.bufferHeight),e.framebufferRenderbuffer(e.FRAMEBUFFER,e.STENCIL_ATTACHMENT,e.RENDERBUFFER,t.stencilBuffer)),!e.checkFramebufferStatus(e.FRAMEBUFFER)===e.FRAMEBUFFER_COMPLETE&&console.error("Framebuffer incomplete!"),t.realBindFramebuffer.call(e,e.FRAMEBUFFER,t.lastBoundFramebuffer),t.scissorTest&&t.realEnable.call(e,e.SCISSOR_TEST),t.realColorMask.apply(e,t.colorMask),t.realViewport.apply(e,t.viewport),t.realClearColor.apply(e,t.clearColor)}),this.cardboardUI&&this.cardboardUI.onResize()},t.prototype.patch=function(){if(!this.isPatched){var a=this,t=this.gl.canvas,i=this.gl;f()||(t.width=A()*this.bufferScale,t.height=y()*this.bufferScale,Object.defineProperty(t,"width",{configurable:!0,enumerable:!0,get:function(){return a.bufferWidth},set:function(e){a.bufferWidth=e,a.realCanvasWidth.set.call(t,e),a.onResize()}}),Object.defineProperty(t,"height",{configurable:!0,enumerable:!0,get:function(){return a.bufferHeight},set:function(e){a.bufferHeight=e,a.realCanvasHeight.set.call(t,e),a.onResize()}})),this.lastBoundFramebuffer=i.getParameter(i.FRAMEBUFFER_BINDING),null==this.lastBoundFramebuffer&&(this.lastBoundFramebuffer=this.framebuffer,this.gl.bindFramebuffer(i.FRAMEBUFFER,this.framebuffer)),this.gl.bindFramebuffer=function(e,t){a.lastBoundFramebuffer=t||a.framebuffer,a.realBindFramebuffer.call(i,e,a.lastBoundFramebuffer)},this.cullFace=i.getParameter(i.CULL_FACE),this.depthTest=i.getParameter(i.DEPTH_TEST),this.blend=i.getParameter(i.BLEND),this.scissorTest=i.getParameter(i.SCISSOR_TEST),this.stencilTest=i.getParameter(i.STENCIL_TEST),i.enable=function(e){switch(e){case i.CULL_FACE:a.cullFace=!0;break;case i.DEPTH_TEST:a.depthTest=!0;break;case i.BLEND:a.blend=!0;break;case i.SCISSOR_TEST:a.scissorTest=!0;break;case i.STENCIL_TEST:a.stencilTest=!0}a.realEnable.call(i,e)},i.disable=function(e){switch(e){case i.CULL_FACE:a.cullFace=!1;break;case i.DEPTH_TEST:a.depthTest=!1;break;case i.BLEND:a.blend=!1;break;case i.SCISSOR_TEST:a.scissorTest=!1;break;case i.STENCIL_TEST:a.stencilTest=!1}a.realDisable.call(i,e)},this.colorMask=i.getParameter(i.COLOR_WRITEMASK),i.colorMask=function(e,t,n,r){a.colorMask[0]=e,a.colorMask[1]=t,a.colorMask[2]=n,a.colorMask[3]=r,a.realColorMask.call(i,e,t,n,r)},this.clearColor=i.getParameter(i.COLOR_CLEAR_VALUE),i.clearColor=function(e,t,n,r){a.clearColor[0]=e,a.clearColor[1]=t,a.clearColor[2]=n,a.clearColor[3]=r,a.realClearColor.call(i,e,t,n,r)},this.viewport=i.getParameter(i.VIEWPORT),i.viewport=function(e,t,n,r){a.viewport[0]=e,a.viewport[1]=t,a.viewport[2]=n,a.viewport[3]=r,a.realViewport.call(i,e,t,n,r)},this.isPatched=!0,E(t)}},t.prototype.unpatch=function(){if(this.isPatched){var e=this.gl,t=this.gl.canvas;f()||(Object.defineProperty(t,"width",this.realCanvasWidth),Object.defineProperty(t,"height",this.realCanvasHeight)),t.width=this.bufferWidth,t.height=this.bufferHeight,e.bindFramebuffer=this.realBindFramebuffer,e.enable=this.realEnable,e.disable=this.realDisable,e.colorMask=this.realColorMask,e.clearColor=this.realClearColor,e.viewport=this.realViewport,this.lastBoundFramebuffer==this.framebuffer&&e.bindFramebuffer(e.FRAMEBUFFER,null),this.isPatched=!1,setTimeout(function(){E(t)},1)}},t.prototype.setTextureBounds=function(e,t){e||(e=[0,0,.5,1]),t||(t=[.5,0,.5,1]),this.viewportOffsetScale[0]=e[0],this.viewportOffsetScale[1]=e[1],this.viewportOffsetScale[2]=e[2],this.viewportOffsetScale[3]=e[3],this.viewportOffsetScale[4]=t[0],this.viewportOffsetScale[5]=t[1],this.viewportOffsetScale[6]=t[2],this.viewportOffsetScale[7]=t[3]},t.prototype.submitFrame=function(){var e=this.gl,t=this,n=[];if(this.dirtySubmitFrameBindings||n.push(e.CURRENT_PROGRAM,e.ARRAY_BUFFER_BINDING,e.ELEMENT_ARRAY_BUFFER_BINDING,e.TEXTURE_BINDING_2D,e.TEXTURE0),S(e,n,function(e){t.realBindFramebuffer.call(e,e.FRAMEBUFFER,null),t.cullFace&&t.realDisable.call(e,e.CULL_FACE),t.depthTest&&t.realDisable.call(e,e.DEPTH_TEST),t.blend&&t.realDisable.call(e,e.BLEND),t.scissorTest&&t.realDisable.call(e,e.SCISSOR_TEST),t.stencilTest&&t.realDisable.call(e,e.STENCIL_TEST),t.realColorMask.call(e,!0,!0,!0,!0),t.realViewport.call(e,0,0,e.drawingBufferWidth,e.drawingBufferHeight),(t.ctxAttribs.alpha||f())&&(t.realClearColor.call(e,0,0,0,1),e.clear(e.COLOR_BUFFER_BIT)),e.useProgram(t.program),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,t.indexBuffer),e.bindBuffer(e.ARRAY_BUFFER,t.vertexBuffer),e.enableVertexAttribArray(t.attribs.position),e.enableVertexAttribArray(t.attribs.texCoord),e.vertexAttribPointer(t.attribs.position,2,e.FLOAT,!1,20,0),e.vertexAttribPointer(t.attribs.texCoord,3,e.FLOAT,!1,20,8),e.activeTexture(e.TEXTURE0),e.uniform1i(t.uniforms.diffuse,0),e.bindTexture(e.TEXTURE_2D,t.renderTarget),e.uniform4fv(t.uniforms.viewportOffsetScale,t.viewportOffsetScale),e.drawElements(e.TRIANGLES,t.indexCount,e.UNSIGNED_SHORT,0),t.cardboardUI&&t.cardboardUI.renderNoState(),t.realBindFramebuffer.call(t.gl,e.FRAMEBUFFER,t.framebuffer),t.ctxAttribs.preserveDrawingBuffer||(t.realClearColor.call(e,0,0,0,0),e.clear(e.COLOR_BUFFER_BIT)),t.dirtySubmitFrameBindings||t.realBindFramebuffer.call(e,e.FRAMEBUFFER,t.lastBoundFramebuffer),t.cullFace&&t.realEnable.call(e,e.CULL_FACE),t.depthTest&&t.realEnable.call(e,e.DEPTH_TEST),t.blend&&t.realEnable.call(e,e.BLEND),t.scissorTest&&t.realEnable.call(e,e.SCISSOR_TEST),t.stencilTest&&t.realEnable.call(e,e.STENCIL_TEST),t.realColorMask.apply(e,t.colorMask),t.realViewport.apply(e,t.viewport),!t.ctxAttribs.alpha&&t.ctxAttribs.preserveDrawingBuffer||t.realClearColor.apply(e,t.clearColor)}),f()){var r=e.canvas;r.width==t.bufferWidth&&r.height==t.bufferHeight||(t.bufferWidth=r.width,t.bufferHeight=r.height,t.onResize())}},t.prototype.updateDeviceInfo=function(r){var e=this.gl,a=this,t=[e.ARRAY_BUFFER_BINDING,e.ELEMENT_ARRAY_BUFFER_BINDING];S(e,t,function(e){var t=a.computeMeshVertices_(a.meshWidth,a.meshHeight,r);if(e.bindBuffer(e.ARRAY_BUFFER,a.vertexBuffer),e.bufferData(e.ARRAY_BUFFER,t,e.STATIC_DRAW),!a.indexCount){var n=a.computeMeshIndices_(a.meshWidth,a.meshHeight);e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,a.indexBuffer),e.bufferData(e.ELEMENT_ARRAY_BUFFER,n,e.STATIC_DRAW),a.indexCount=n.length}})},t.prototype.computeMeshVertices_=function(e,c,t){for(var n=new Float32Array(2*e*c*5),r=t.getLeftEyeVisibleTanAngles(),a=t.getLeftEyeNoLensTanAngles(),i=t.getLeftEyeVisibleScreenRect(a),o=0,f=0;f<2;f++){for(var d=0;d<c;d++)for(var h=0;h<e;h++,o++){var s=h/(e-1),u=d/(c-1),g=s,p=u,M=w(r[0],r[2],s),m=w(r[3],r[1],u),v=Math.sqrt(M*M+m*m),A=t.distortion.distortInverse(v),y=M*A/v,T=m*A/v;s=(y-a[0])/(a[2]-a[0]),u=(T-a[3])/(a[1]-a[3]),s=2*(i.x+s*i.width-.5),u=2*(i.y+u*i.height-.5),n[5*o+0]=s,n[5*o+1]=u,n[5*o+2]=g,n[5*o+3]=p,n[5*o+4]=f}var l=r[2]-r[0];r[0]=-(l+r[0]),r[2]=l-r[2],l=a[2]-a[0],a[0]=-(l+a[0]),a[2]=l-a[2],i.x=1-(i.x+i.width)}return n},t.prototype.computeMeshIndices_=function(e,t){for(var n=new Uint16Array(2*(e-1)*(t-1)*6),r=e/2,a=t/2,i=0,o=0,s=0;s<2;s++)for(var u=0;u<t;u++)for(var l=0;l<e;l++,i++)0!=l&&0!=u&&(l<=r==u<=a?(n[o++]=i,n[o++]=i-e-1,n[o++]=i-e,n[o++]=i-e-1,n[o++]=i,n[o++]=i-1):(n[o++]=i-1,n[o++]=i-e,n[o++]=i,n[o++]=i-e,n[o++]=i-1,n[o++]=i-e-1));return n},t.prototype.getOwnPropertyDescriptor_=function(e,t){var n=Object.getOwnPropertyDescriptor(e,t);return void 0!==n.get&&void 0!==n.set||(n.configurable=!0,n.enumerable=!0,n.get=function(){return this.getAttribute(t)},n.set=function(e){this.setAttribute(t,e)}),n};var P=["attribute vec2 position;","uniform mat4 projectionMat;","void main() {","  gl_Position = projectionMat * vec4( position, -1.0, 1.0 );","}"].join("\n"),z=["precision mediump float;","uniform vec4 color;","void main() {","  gl_FragColor = color;","}"].join("\n"),k=Math.PI/180,R=.3125;function B(e){this.gl=e,this.attribs={position:0},this.program=b(e,P,z,this.attribs),this.uniforms=D(e,this.program),this.vertexBuffer=e.createBuffer(),this.gearOffset=0,this.gearVertexCount=0,this.arrowOffset=0,this.arrowVertexCount=0,this.projMat=new Float32Array(16),this.listener=null,this.onResize()}function U(e){this.coefficients=e}B.prototype.destroy=function(){var e=this.gl;this.listener&&e.canvas.removeEventListener("click",this.listener,!1),e.deleteProgram(this.program),e.deleteBuffer(this.vertexBuffer)},B.prototype.listen=function(n,r){var a=this.gl.canvas;this.listener=function(e){var t=a.clientWidth/2;e.clientX>t-42&&e.clientX<t+42&&e.clientY>a.clientHeight-42?n(e):e.clientX<42&&e.clientY<42&&r(e)},a.addEventListener("click",this.listener,!1)},B.prototype.onResize=function(){var e=this.gl,p=this,t=[e.ARRAY_BUFFER_BINDING];S(e,t,function(n){var i=[],o=n.drawingBufferWidth/2,c=Math.max(screen.width,screen.height)*window.devicePixelRatio,f=n.drawingBufferWidth/c,e=f*window.devicePixelRatio,t=4*e/2,d=42*e,s=28*e/2,h=14*e;function r(e,t){var n=(90-e)*k,r=Math.cos(n),a=Math.sin(n);i.push(R*r*s+o,R*a*s+s),i.push(t*r*s+o,t*a*s+s)}i.push(o-t,d),i.push(o-t,n.drawingBufferHeight),i.push(o+t,d),i.push(o+t,n.drawingBufferHeight),p.gearOffset=i.length/2;for(var g=0;g<=6;g++){var a=60*g;r(a,1),r(a+12,1),r(a+20,.75),r(a+40,.75),r(a+48,1)}function u(e,t){i.push(h+e,n.drawingBufferHeight-h-t)}p.gearVertexCount=i.length/2-p.gearOffset,p.arrowOffset=i.length/2;var l=t/Math.sin(45*k);u(0,s),u(s,0),u(s+l,l),u(l,s+l),u(l,s-l),u(0,s),u(s,2*s),u(s+l,2*s-l),u(l,s-l),u(0,s),u(l,s-t),u(28*e,s-t),u(l,s+t),u(28*e,s+t),p.arrowVertexCount=i.length/2-p.arrowOffset,n.bindBuffer(n.ARRAY_BUFFER,p.vertexBuffer),n.bufferData(n.ARRAY_BUFFER,new Float32Array(i),n.STATIC_DRAW)})},B.prototype.render=function(){var e=this.gl,t=this,n=[e.CULL_FACE,e.DEPTH_TEST,e.BLEND,e.SCISSOR_TEST,e.STENCIL_TEST,e.COLOR_WRITEMASK,e.VIEWPORT,e.CURRENT_PROGRAM,e.ARRAY_BUFFER_BINDING];S(e,n,function(e){e.disable(e.CULL_FACE),e.disable(e.DEPTH_TEST),e.disable(e.BLEND),e.disable(e.SCISSOR_TEST),e.disable(e.STENCIL_TEST),e.colorMask(!0,!0,!0,!0),e.viewport(0,0,e.drawingBufferWidth,e.drawingBufferHeight),t.renderNoState()})},B.prototype.renderNoState=function(){var e=this.gl;e.useProgram(this.program),e.bindBuffer(e.ARRAY_BUFFER,this.vertexBuffer),e.enableVertexAttribArray(this.attribs.position),e.vertexAttribPointer(this.attribs.position,2,e.FLOAT,!1,8,0),e.uniform4f(this.uniforms.color,1,1,1,1),function(e,t,n,r,a,i,o){var s=1/(t-n),u=1/(r-a),l=1/(i-o);e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+n)*s,e[13]=(a+r)*u,e[14]=(o+i)*l,e[15]=1}(this.projMat,0,e.drawingBufferWidth,0,e.drawingBufferHeight,.1,1024),e.uniformMatrix4fv(this.uniforms.projectionMat,!1,this.projMat),e.drawArrays(e.TRIANGLE_STRIP,0,4),e.drawArrays(e.TRIANGLE_STRIP,this.gearOffset,this.gearVertexCount),e.drawArrays(e.TRIANGLE_STRIP,this.arrowOffset,this.arrowVertexCount)},U.prototype.distortInverse=function(e){for(var t=0,n=1,r=e-this.distort(t);Math.abs(n-t)>1e-4;){var a=e-this.distort(n),i=n-a*((n-t)/(a-r));t=n,n=i,r=a}return n},U.prototype.distort=function(e){for(var t=e*e,n=0,r=0;r<this.coefficients.length;r++)n=t*(n+this.coefficients[r]);return(n+1)*e};var v=Math.PI/180,V=180/Math.PI,o=function(e,t,n){this.x=e||0,this.y=t||0,this.z=n||0};o.prototype={constructor:o,set:function(e,t,n){return this.x=e,this.y=t,this.z=n,this},copy:function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},normalize:function(){var e=this.length();if(0!==e){var t=1/e;this.multiplyScalar(t)}else this.x=0,this.y=0,this.z=0;return this},multiplyScalar:function(e){this.x*=e,this.y*=e,this.z*=e},applyQuaternion:function(e){var t=this.x,n=this.y,r=this.z,a=e.x,i=e.y,o=e.z,s=e.w,u=s*t+i*r-o*n,l=s*n+o*t-a*r,c=s*r+a*n-i*t,f=-a*t-i*n-o*r;return this.x=u*s+f*-a+l*-o-c*-i,this.y=l*s+f*-i+c*-a-u*-o,this.z=c*s+f*-o+u*-i-l*-a,this},dot:function(e){return this.x*e.x+this.y*e.y+this.z*e.z},crossVectors:function(e,t){var n=e.x,r=e.y,a=e.z,i=t.x,o=t.y,s=t.z;return this.x=r*s-a*o,this.y=a*i-n*s,this.z=n*o-r*i,this}};var i=function(e,t,n,r){this.x=e||0,this.y=t||0,this.z=n||0,this.w=void 0!==r?r:1};function F(e){this.width=e.width||A(),this.height=e.height||y(),this.widthMeters=e.widthMeters,this.heightMeters=e.heightMeters,this.bevelMeters=e.bevelMeters}i.prototype={constructor:i,set:function(e,t,n,r){return this.x=e,this.y=t,this.z=n,this.w=r,this},copy:function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w,this},setFromEulerXYZ:function(e,t,n){var r=Math.cos(e/2),a=Math.cos(t/2),i=Math.cos(n/2),o=Math.sin(e/2),s=Math.sin(t/2),u=Math.sin(n/2);return this.x=o*a*i+r*s*u,this.y=r*s*i-o*a*u,this.z=r*a*u+o*s*i,this.w=r*a*i-o*s*u,this},setFromEulerYXZ:function(e,t,n){var r=Math.cos(e/2),a=Math.cos(t/2),i=Math.cos(n/2),o=Math.sin(e/2),s=Math.sin(t/2),u=Math.sin(n/2);return this.x=o*a*i+r*s*u,this.y=r*s*i-o*a*u,this.z=r*a*u-o*s*i,this.w=r*a*i+o*s*u,this},setFromAxisAngle:function(e,t){var n=t/2,r=Math.sin(n);return this.x=e.x*r,this.y=e.y*r,this.z=e.z*r,this.w=Math.cos(n),this},multiply:function(e){return this.multiplyQuaternions(this,e)},multiplyQuaternions:function(e,t){var n=e.x,r=e.y,a=e.z,i=e.w,o=t.x,s=t.y,u=t.z,l=t.w;return this.x=n*l+i*o+r*u-a*s,this.y=r*l+i*s+a*o-n*u,this.z=a*l+i*u+n*s-r*o,this.w=i*l-n*o-r*s-a*u,this},inverse:function(){return this.x*=-1,this.y*=-1,this.z*=-1,this.normalize(),this},normalize:function(){var e=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);return 0===e?(this.x=0,this.y=0,this.z=0,this.w=1):(e=1/e,this.x=this.x*e,this.y=this.y*e,this.z=this.z*e,this.w=this.w*e),this},slerp:function(e,t){if(0===t)return this;if(1===t)return this.copy(e);var n=this.x,r=this.y,a=this.z,i=this.w,o=i*e.w+n*e.x+r*e.y+a*e.z;if(o<0?(this.w=-e.w,this.x=-e.x,this.y=-e.y,this.z=-e.z,o=-o):this.copy(e),o>=1)return this.w=i,this.x=n,this.y=r,this.z=a,this;var c=Math.acos(o),s=Math.sqrt(1-o*o);if(Math.abs(s)<.001)return this.w=.5*(i+this.w),this.x=.5*(n+this.x),this.y=.5*(r+this.y),this.z=.5*(a+this.z),this;var u=Math.sin((1-t)*c)/s,l=Math.sin(t*c)/s;return this.w=i*u+this.w*l,this.x=n*u+this.x*l,this.y=r*u+this.y*l,this.z=a*u+this.z*l,this},setFromUnitVectors:function(){var n,r;return function(e,t){return void 0===n&&(n=new o),(r=e.dot(t)+1)<1e-6?(r=0,Math.abs(e.x)>Math.abs(e.z)?n.set(-e.y,e.x,0):n.set(0,-e.z,e.y)):n.crossVectors(e,t),this.x=n.x,this.y=n.y,this.z=n.z,this.w=r,this.normalize(),this}}()};var G=new F({widthMeters:.11,heightMeters:.062,bevelMeters:.004}),Q=new F({widthMeters:.1038,heightMeters:.0584,bevelMeters:.004}),Y={CardboardV1:new W({id:"CardboardV1",label:"Cardboard I/O 2014",fov:40,interLensDistance:.06,baselineLensDistance:.035,screenLensDistance:.042,distortionCoefficients:[.441,.156],inverseCoefficients:[-.4410035,.42756155,-.4804439,.5460139,-.58821183,.5733938,-.48303202,.33299083,-.17573841,.0651772,-.01488963,.001559834]}),CardboardV2:new W({id:"CardboardV2",label:"Cardboard I/O 2015",fov:60,interLensDistance:.064,baselineLensDistance:.035,screenLensDistance:.039,distortionCoefficients:[.34,.55],inverseCoefficients:[-.33836704,-.18162185,.862655,-1.2462051,1.0560602,-.58208317,.21609078,-.05444823,.009177956,-.0009904169,6183535e-11,-16981803e-13]})};function n(e){this.viewer=Y.CardboardV2,this.updateDeviceParams(e),this.distortion=new U(this.viewer.distortionCoefficients)}function W(e){this.id=e.id,this.label=e.label,this.fov=e.fov,this.interLensDistance=e.interLensDistance,this.baselineLensDistance=e.baselineLensDistance,this.screenLensDistance=e.screenLensDistance,this.distortionCoefficients=e.distortionCoefficients,this.inverseCoefficients=e.inverseCoefficients}n.prototype.updateDeviceParams=function(e){this.device=this.determineDevice_(e)||this.device},n.prototype.getDevice=function(){return this.device},n.prototype.setViewer=function(e){this.viewer=e,this.distortion=new U(this.viewer.distortionCoefficients)},n.prototype.determineDevice_=function(e){if(!e)return f()?(console.warn("Using fallback iOS device measurements."),Q):(console.warn("Using fallback Android device measurements."),G);var t=.0254/e.xdpi,n=.0254/e.ydpi,r=A(),a=y();return new F({widthMeters:t*r,heightMeters:n*a,bevelMeters:.001*e.bevelMm})},n.prototype.getDistortedFieldOfViewLeftEye=function(){var e=this.viewer,t=this.device,n=this.distortion,r=e.screenLensDistance,a=(t.widthMeters-e.interLensDistance)/2,i=e.interLensDistance/2,o=e.baselineLensDistance-t.bevelMeters,s=t.heightMeters-o,u=V*Math.atan(n.distort(a/r)),l=V*Math.atan(n.distort(i/r)),c=V*Math.atan(n.distort(o/r)),f=V*Math.atan(n.distort(s/r));return{leftDegrees:Math.min(u,e.fov),rightDegrees:Math.min(l,e.fov),downDegrees:Math.min(c,e.fov),upDegrees:Math.min(f,e.fov)}},n.prototype.getLeftEyeVisibleTanAngles=function(){var e=this.viewer,t=this.device,n=this.distortion,r=Math.tan(-v*e.fov),c=Math.tan(v*e.fov),f=Math.tan(v*e.fov),d=Math.tan(-v*e.fov),a=t.widthMeters/4,i=t.heightMeters/2,h=e.baselineLensDistance-t.bevelMeters-i,o=e.interLensDistance/2-a,s=-h,u=e.screenLensDistance,g=n.distort((o-a)/u),p=n.distort((s+i)/u),M=n.distort((o+a)/u),m=n.distort((s-i)/u),l=new Float32Array(4);return l[0]=Math.max(r,g),l[1]=Math.min(c,p),l[2]=Math.min(f,M),l[3]=Math.max(d,m),l},n.prototype.getLeftEyeNoLensTanAngles=function(){var e=this.viewer,t=this.device,n=this.distortion,r=new Float32Array(4),a=n.distortInverse(Math.tan(-v*e.fov)),c=n.distortInverse(Math.tan(v*e.fov)),f=n.distortInverse(Math.tan(v*e.fov)),d=n.distortInverse(Math.tan(-v*e.fov)),i=t.widthMeters/4,o=t.heightMeters/2,h=e.baselineLensDistance-t.bevelMeters-o,s=e.interLensDistance/2-i,u=-h,l=e.screenLensDistance,g=(s-i)/l,p=(u+o)/l,M=(s+i)/l,m=(u-o)/l;return r[0]=Math.max(a,g),r[1]=Math.min(c,p),r[2]=Math.min(f,M),r[3]=Math.max(d,m),r},n.prototype.getLeftEyeVisibleScreenRect=function(e){var t=this.viewer,n=this.device,r=t.screenLensDistance,a=(n.widthMeters-t.interLensDistance)/2,i=t.baselineLensDistance-n.bevelMeters,o=(e[0]*r+a)/n.widthMeters,s=(e[1]*r+i)/n.heightMeters,u=(e[2]*r+a)/n.widthMeters,l=(e[3]*r+i)/n.heightMeters;return{x:o,y:l,width:u-o,height:s-l}},n.prototype.getFieldOfViewLeftEye=function(e){return e?this.getUndistortedFieldOfViewLeftEye():this.getDistortedFieldOfViewLeftEye()},n.prototype.getFieldOfViewRightEye=function(e){var t=this.getFieldOfViewLeftEye(e);return{leftDegrees:t.rightDegrees,rightDegrees:t.leftDegrees,upDegrees:t.upDegrees,downDegrees:t.downDegrees}},n.prototype.getUndistortedFieldOfViewLeftEye=function(){var e=this.getUndistortedParams_();return{leftDegrees:V*Math.atan(e.outerDist),rightDegrees:V*Math.atan(e.innerDist),downDegrees:V*Math.atan(e.bottomDist),upDegrees:V*Math.atan(e.topDist)}},n.prototype.getUndistortedViewportLeftEye=function(){var e=this.getUndistortedParams_(),t=this.viewer,n=this.device,r=t.screenLensDistance,a=n.widthMeters/r,i=n.heightMeters/r,o=n.width/a,s=n.height/i,u=Math.round((e.eyePosX-e.outerDist)*o),l=Math.round((e.eyePosY-e.bottomDist)*s);return{x:u,y:l,width:Math.round((e.eyePosX+e.innerDist)*o)-u,height:Math.round((e.eyePosY+e.topDist)*s)-l}},n.prototype.getUndistortedParams_=function(){var e=this.viewer,t=this.device,n=this.distortion,r=e.screenLensDistance,a=e.interLensDistance/2/r,i=t.widthMeters/r,o=t.heightMeters/r,s=i/2-a,u=(e.baselineLensDistance-t.bevelMeters)/r,c=e.fov,l=n.distortInverse(Math.tan(v*c)),f=Math.min(s,l),d=Math.min(a,l),h=Math.min(u,l),g=Math.min(o-u,l);return{outerDist:f,innerDist:d,topDist:g,bottomDist:h,eyePosX:s,eyePosY:u}},n.Viewers=Y;var H={format:1,last_updated:"2018-02-20T22:55:10Z",devices:[{type:"android",rules:[{mdmh:"asus/*/Nexus 7/*"},{ua:"Nexus 7"}],dpi:[320.8,323],bw:3,ac:500},{type:"android",rules:[{mdmh:"asus/*/ASUS_Z00AD/*"},{ua:"ASUS_Z00AD"}],dpi:[403,404.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Google/*/Pixel XL/*"},{ua:"Pixel XL"}],dpi:[537.9,533],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Google/*/Pixel/*"},{ua:"Pixel"}],dpi:[432.6,436.7],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"HTC/*/HTC6435LVW/*"},{ua:"HTC6435LVW"}],dpi:[449.7,443.3],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"HTC/*/HTC One XL/*"},{ua:"HTC One XL"}],dpi:[315.3,314.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"htc/*/Nexus 9/*"},{ua:"Nexus 9"}],dpi:289,bw:3,ac:500},{type:"android",rules:[{mdmh:"HTC/*/HTC One M9/*"},{ua:"HTC One M9"}],dpi:[442.5,443.3],bw:3,ac:500},{type:"android",rules:[{mdmh:"HTC/*/HTC One_M8/*"},{ua:"HTC One_M8"}],dpi:[449.7,447.4],bw:3,ac:500},{type:"android",rules:[{mdmh:"HTC/*/HTC One/*"},{ua:"HTC One"}],dpi:472.8,bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Huawei/*/Nexus 6P/*"},{ua:"Nexus 6P"}],dpi:[515.1,518],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"LENOVO/*/Lenovo PB2-690Y/*"},{ua:"Lenovo PB2-690Y"}],dpi:[457.2,454.713],bw:3,ac:500},{type:"android",rules:[{mdmh:"LGE/*/Nexus 5X/*"},{ua:"Nexus 5X"}],dpi:[422,419.9],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"LGE/*/LGMS345/*"},{ua:"LGMS345"}],dpi:[221.7,219.1],bw:3,ac:500},{type:"android",rules:[{mdmh:"LGE/*/LG-D800/*"},{ua:"LG-D800"}],dpi:[422,424.1],bw:3,ac:500},{type:"android",rules:[{mdmh:"LGE/*/LG-D850/*"},{ua:"LG-D850"}],dpi:[537.9,541.9],bw:3,ac:500},{type:"android",rules:[{mdmh:"LGE/*/VS985 4G/*"},{ua:"VS985 4G"}],dpi:[537.9,535.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"LGE/*/Nexus 5/*"},{ua:"Nexus 5 B"}],dpi:[442.4,444.8],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"LGE/*/Nexus 4/*"},{ua:"Nexus 4"}],dpi:[319.8,318.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"LGE/*/LG-P769/*"},{ua:"LG-P769"}],dpi:[240.6,247.5],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"LGE/*/LGMS323/*"},{ua:"LGMS323"}],dpi:[206.6,204.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"LGE/*/LGLS996/*"},{ua:"LGLS996"}],dpi:[403.4,401.5],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Micromax/*/4560MMX/*"},{ua:"4560MMX"}],dpi:[240,219.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Micromax/*/A250/*"},{ua:"Micromax A250"}],dpi:[480,446.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Micromax/*/Micromax AQ4501/*"},{ua:"Micromax AQ4501"}],dpi:240,bw:3,ac:500},{type:"android",rules:[{mdmh:"motorola/*/G5/*"},{ua:"Moto G (5) Plus"}],dpi:[403.4,403],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/DROID RAZR/*"},{ua:"DROID RAZR"}],dpi:[368.1,256.7],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/XT830C/*"},{ua:"XT830C"}],dpi:[254,255.9],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/XT1021/*"},{ua:"XT1021"}],dpi:[254,256.7],bw:3,ac:500},{type:"android",rules:[{mdmh:"motorola/*/XT1023/*"},{ua:"XT1023"}],dpi:[254,256.7],bw:3,ac:500},{type:"android",rules:[{mdmh:"motorola/*/XT1028/*"},{ua:"XT1028"}],dpi:[326.6,327.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/XT1034/*"},{ua:"XT1034"}],dpi:[326.6,328.4],bw:3,ac:500},{type:"android",rules:[{mdmh:"motorola/*/XT1053/*"},{ua:"XT1053"}],dpi:[315.3,316.1],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/XT1562/*"},{ua:"XT1562"}],dpi:[403.4,402.7],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/Nexus 6/*"},{ua:"Nexus 6 B"}],dpi:[494.3,489.7],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/XT1063/*"},{ua:"XT1063"}],dpi:[295,296.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/XT1064/*"},{ua:"XT1064"}],dpi:[295,295.6],bw:3,ac:500},{type:"android",rules:[{mdmh:"motorola/*/XT1092/*"},{ua:"XT1092"}],dpi:[422,424.1],bw:3,ac:500},{type:"android",rules:[{mdmh:"motorola/*/XT1095/*"},{ua:"XT1095"}],dpi:[422,423.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"motorola/*/G4/*"},{ua:"Moto G (4)"}],dpi:401,bw:4,ac:1e3},{type:"android",rules:[{mdmh:"OnePlus/*/A0001/*"},{ua:"A0001"}],dpi:[403.4,401],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"OnePlus/*/ONE E1005/*"},{ua:"ONE E1005"}],dpi:[442.4,441.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"OnePlus/*/ONE A2005/*"},{ua:"ONE A2005"}],dpi:[391.9,405.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"OnePlus/*/ONEPLUS A5000/*"},{ua:"ONEPLUS A5000 "}],dpi:[403.411,399.737],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"OnePlus/*/ONE A5010/*"},{ua:"ONEPLUS A5010"}],dpi:[403,400],bw:2,ac:1e3},{type:"android",rules:[{mdmh:"OPPO/*/X909/*"},{ua:"X909"}],dpi:[442.4,444.1],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/GT-I9082/*"},{ua:"GT-I9082"}],dpi:[184.7,185.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G360P/*"},{ua:"SM-G360P"}],dpi:[196.7,205.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/Nexus S/*"},{ua:"Nexus S"}],dpi:[234.5,229.8],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/GT-I9300/*"},{ua:"GT-I9300"}],dpi:[304.8,303.9],bw:5,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-T230NU/*"},{ua:"SM-T230NU"}],dpi:216,bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SGH-T399/*"},{ua:"SGH-T399"}],dpi:[217.7,231.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SGH-M919/*"},{ua:"SGH-M919"}],dpi:[440.8,437.7],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-N9005/*"},{ua:"SM-N9005"}],dpi:[386.4,387],bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SAMSUNG-SM-N900A/*"},{ua:"SAMSUNG-SM-N900A"}],dpi:[386.4,387.7],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/GT-I9500/*"},{ua:"GT-I9500"}],dpi:[442.5,443.3],bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/GT-I9505/*"},{ua:"GT-I9505"}],dpi:439.4,bw:4,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G900F/*"},{ua:"SM-G900F"}],dpi:[415.6,431.6],bw:5,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G900M/*"},{ua:"SM-G900M"}],dpi:[415.6,431.6],bw:5,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G800F/*"},{ua:"SM-G800F"}],dpi:326.8,bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G906S/*"},{ua:"SM-G906S"}],dpi:[562.7,572.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/GT-I9300/*"},{ua:"GT-I9300"}],dpi:[306.7,304.8],bw:5,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-T535/*"},{ua:"SM-T535"}],dpi:[142.6,136.4],bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-N920C/*"},{ua:"SM-N920C"}],dpi:[515.1,518.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-N920P/*"},{ua:"SM-N920P"}],dpi:[386.3655,390.144],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-N920W8/*"},{ua:"SM-N920W8"}],dpi:[515.1,518.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/GT-I9300I/*"},{ua:"GT-I9300I"}],dpi:[304.8,305.8],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/GT-I9195/*"},{ua:"GT-I9195"}],dpi:[249.4,256.7],bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SPH-L520/*"},{ua:"SPH-L520"}],dpi:[249.4,255.9],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SAMSUNG-SGH-I717/*"},{ua:"SAMSUNG-SGH-I717"}],dpi:285.8,bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SPH-D710/*"},{ua:"SPH-D710"}],dpi:[217.7,204.2],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/GT-N7100/*"},{ua:"GT-N7100"}],dpi:265.1,bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SCH-I605/*"},{ua:"SCH-I605"}],dpi:265.1,bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/Galaxy Nexus/*"},{ua:"Galaxy Nexus"}],dpi:[315.3,314.2],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-N910H/*"},{ua:"SM-N910H"}],dpi:[515.1,518],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-N910C/*"},{ua:"SM-N910C"}],dpi:[515.2,520.2],bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-G130M/*"},{ua:"SM-G130M"}],dpi:[165.9,164.8],bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-G928I/*"},{ua:"SM-G928I"}],dpi:[515.1,518.4],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G920F/*"},{ua:"SM-G920F"}],dpi:580.6,bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-G920P/*"},{ua:"SM-G920P"}],dpi:[522.5,577],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G925F/*"},{ua:"SM-G925F"}],dpi:580.6,bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-G925V/*"},{ua:"SM-G925V"}],dpi:[522.5,576.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G930F/*"},{ua:"SM-G930F"}],dpi:576.6,bw:3,ac:1e3},{type:"android",rules:[{mdmh:"samsung/*/SM-G935F/*"},{ua:"SM-G935F"}],dpi:533,bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-G950F/*"},{ua:"SM-G950F"}],dpi:[562.707,565.293],bw:3,ac:500},{type:"android",rules:[{mdmh:"samsung/*/SM-G955U/*"},{ua:"SM-G955U"}],dpi:[522.514,525.762],bw:3,ac:500},{type:"android",rules:[{mdmh:"Sony/*/C6903/*"},{ua:"C6903"}],dpi:[442.5,443.3],bw:3,ac:500},{type:"android",rules:[{mdmh:"Sony/*/D6653/*"},{ua:"D6653"}],dpi:[428.6,427.6],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Sony/*/E6653/*"},{ua:"E6653"}],dpi:[428.6,425.7],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Sony/*/E6853/*"},{ua:"E6853"}],dpi:[403.4,401.9],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Sony/*/SGP321/*"},{ua:"SGP321"}],dpi:[224.7,224.1],bw:3,ac:500},{type:"android",rules:[{mdmh:"TCT/*/ALCATEL ONE TOUCH Fierce/*"},{ua:"ALCATEL ONE TOUCH Fierce"}],dpi:[240,247.5],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"THL/*/thl 5000/*"},{ua:"thl 5000"}],dpi:[480,443.3],bw:3,ac:1e3},{type:"android",rules:[{mdmh:"Fly/*/IQ4412/*"},{ua:"IQ4412"}],dpi:307.9,bw:3,ac:1e3},{type:"android",rules:[{mdmh:"ZTE/*/ZTE Blade L2/*"},{ua:"ZTE Blade L2"}],dpi:240,bw:3,ac:500},{type:"android",rules:[{mdmh:"BENEVE/*/VR518/*"},{ua:"VR518"}],dpi:480,bw:3,ac:500},{type:"ios",rules:[{res:[640,960]}],dpi:[325.1,328.4],bw:4,ac:1e3},{type:"ios",rules:[{res:[640,1136]}],dpi:[317.1,320.2],bw:3,ac:1e3},{type:"ios",rules:[{res:[750,1334]}],dpi:326.4,bw:4,ac:1e3},{type:"ios",rules:[{res:[1242,2208]}],dpi:[453.6,458.4],bw:4,ac:1e3},{type:"ios",rules:[{res:[1125,2001]}],dpi:[410.9,415.4],bw:4,ac:1e3},{type:"ios",rules:[{res:[1125,2436]}],dpi:458,bw:4,ac:1e3}]};function q(e,t){if(this.dpdb=H,this.recalculateDeviceParams_(),e){this.onDeviceParamsUpdated=t;var n=new XMLHttpRequest,r=this;n.open("GET",e,!0),n.addEventListener("load",function(){r.loading=!1,n.status>=200&&n.status<=299?(r.dpdb=JSON.parse(n.response),r.recalculateDeviceParams_()):console.error("Error loading online DPDB!")}),n.send()}}function K(e){this.xdpi=e.xdpi,this.ydpi=e.ydpi,this.bevelMm=e.bevelMm}function X(e,t){this.set(e,t)}function Z(e,t){this.kFilter=e,this.isDebug=t,this.currentAccelMeasurement=new X,this.currentGyroMeasurement=new X,this.previousGyroMeasurement=new X,f()?this.filterQ=new i(-1,0,0,1):this.filterQ=new i(1,0,0,1),this.previousFilterQ=new i,this.previousFilterQ.copy(this.filterQ),this.accelQ=new i,this.isOrientationInitialized=!1,this.estimatedGravity=new o,this.measuredGravity=new o,this.gyroIntegralQ=new i}function J(e,t){this.predictionTimeS=e,this.isDebug=t,this.previousQ=new i,this.previousTimestampS=null,this.deltaQ=new i,this.outQ=new i}function e(e,t,n,r){this.yawOnly=n,this.accelerometer=new o,this.gyroscope=new o,this.filter=new Z(e,r),this.posePredictor=new J(t,r),this.isFirefoxAndroid=h(),this.isIOS=f();var a=g();this.isDeviceMotionInRadians=!this.isIOS&&a&&a<66,this.isWithoutDeviceMotion=p(),this.filterToWorldQ=new i,f()?this.filterToWorldQ.setFromAxisAngle(new o(1,0,0),Math.PI/2):this.filterToWorldQ.setFromAxisAngle(new o(1,0,0),-Math.PI/2),this.inverseWorldToScreenQ=new i,this.worldToScreenQ=new i,this.originalPoseAdjustQ=new i,this.originalPoseAdjustQ.setFromAxisAngle(new o(0,0,1),-window.orientation*Math.PI/180),this.setScreenTransform_(),m()&&this.filterToWorldQ.multiply(this.inverseWorldToScreenQ),this.resetQ=new i,this.orientationOut_=new Float32Array(4),this.start()}q.prototype.getDeviceParams=function(){return this.deviceParams},q.prototype.recalculateDeviceParams_=function(){var e=this.calcDeviceParams_();e?(this.deviceParams=e,this.onDeviceParamsUpdated&&this.onDeviceParamsUpdated(this.deviceParams)):console.error("Failed to recalculate device parameters.")},q.prototype.calcDeviceParams_=function(){var e=this.dpdb;if(!e)return console.error("DPDB not available."),null;if(1!=e.format)return console.error("DPDB has unexpected format version."),null;if(!e.devices||!e.devices.length)return console.error("DPDB does not have a devices section."),null;var t=navigator.userAgent||navigator.vendor||window.opera,n=A(),r=y();if(!e.devices)return console.error("DPDB has no devices section."),null;for(var a=0;a<e.devices.length;a++){var i=e.devices[a];if(i.rules)if("ios"==i.type||"android"==i.type){if(f()==("ios"==i.type)){for(var o=!1,s=0;s<i.rules.length;s++){var u=i.rules[s];if(this.matchRule_(u,t,n,r)){o=!0;break}}if(o){var l=i.dpi[0]||i.dpi,c=i.dpi[1]||i.dpi;return new K({xdpi:l,ydpi:c,bevelMm:i.bw})}}}else console.warn("Device["+a+"] has invalid type.");else console.warn("Device["+a+"] has no rules section.")}return console.warn("No DPDB device match."),null},q.prototype.matchRule_=function(e,t,n,r){if(!e.ua&&!e.res)return!1;if(e.ua&&t.indexOf(e.ua)<0)return!1;if(e.res){if(!e.res[0]||!e.res[1])return!1;var a=e.res[0],i=e.res[1];if(Math.min(n,r)!=Math.min(a,i)||Math.max(n,r)!=Math.max(a,i))return!1}return!0},X.prototype.set=function(e,t){this.sample=e,this.timestampS=t},X.prototype.copy=function(e){this.set(e.sample,e.timestampS)},Z.prototype.addAccelMeasurement=function(e,t){this.currentAccelMeasurement.set(e,t)},Z.prototype.addGyroMeasurement=function(e,t){this.currentGyroMeasurement.set(e,t);var n=t-this.previousGyroMeasurement.timestampS;(function(e){return!isNaN(e)&&(!(e<=.001)&&!(e>1))})(n)&&this.run_(),this.previousGyroMeasurement.copy(this.currentGyroMeasurement)},Z.prototype.run_=function(){if(!this.isOrientationInitialized)return this.accelQ=this.accelToQuaternion_(this.currentAccelMeasurement.sample),this.previousFilterQ.copy(this.accelQ),void(this.isOrientationInitialized=!0);var e=this.currentGyroMeasurement.timestampS-this.previousGyroMeasurement.timestampS,t=this.gyroToQuaternionDelta_(this.currentGyroMeasurement.sample,e);this.gyroIntegralQ.multiply(t),this.filterQ.copy(this.previousFilterQ),this.filterQ.multiply(t);var n=new i;n.copy(this.filterQ),n.inverse(),this.estimatedGravity.set(0,0,-1),this.estimatedGravity.applyQuaternion(n),this.estimatedGravity.normalize(),this.measuredGravity.copy(this.currentAccelMeasurement.sample),this.measuredGravity.normalize();var r=new i;r.setFromUnitVectors(this.estimatedGravity,this.measuredGravity),r.inverse(),this.isDebug&&console.log("Delta: %d deg, G_est: (%s, %s, %s), G_meas: (%s, %s, %s)",V*function(e){return e.w>1?(console.warn("getQuaternionAngle: w > 1"),0):2*Math.acos(e.w)}(r),this.estimatedGravity.x.toFixed(1),this.estimatedGravity.y.toFixed(1),this.estimatedGravity.z.toFixed(1),this.measuredGravity.x.toFixed(1),this.measuredGravity.y.toFixed(1),this.measuredGravity.z.toFixed(1));var a=new i;a.copy(this.filterQ),a.multiply(r),this.filterQ.slerp(a,1-this.kFilter),this.previousFilterQ.copy(this.filterQ)},Z.prototype.getOrientation=function(){return this.filterQ},Z.prototype.accelToQuaternion_=function(e){var t=new o;t.copy(e),t.normalize();var n=new i;return n.setFromUnitVectors(new o(0,0,-1),t),n.inverse(),n},Z.prototype.gyroToQuaternionDelta_=function(e,t){var n=new i,r=new o;return r.copy(e),r.normalize(),n.setFromAxisAngle(r,e.length()*t),n},J.prototype.getPrediction=function(e,t,n){if(!this.previousTimestampS)return this.previousQ.copy(e),this.previousTimestampS=n,e;var r=new o;r.copy(t),r.normalize();var a=t.length();if(a<20*v)return this.isDebug&&console.log("Moving slowly, at %s deg/s: no prediction",(V*a).toFixed(1)),this.outQ.copy(e),this.previousQ.copy(e),this.outQ;var i=a*this.predictionTimeS;return this.deltaQ.setFromAxisAngle(r,i),this.outQ.copy(this.previousQ),this.outQ.multiply(this.deltaQ),this.previousQ.copy(e),this.previousTimestampS=n,this.outQ},e.prototype.getPosition=function(){return null},e.prototype.getOrientation=function(){var e=void 0;if(this.isWithoutDeviceMotion&&this._deviceOrientationQ){this.deviceOrientationFixQ=this.deviceOrientationFixQ||function(){var e=(new i).setFromAxisAngle(new o(0,0,-1),0),t=new i;return-90===window.orientation?t.setFromAxisAngle(new o(0,1,0),Math.PI/-2):t.setFromAxisAngle(new o(0,1,0),Math.PI/2),e.multiply(t)}(),this.deviceOrientationFilterToWorldQ=this.deviceOrientationFilterToWorldQ||function(){var e=new i;return e.setFromAxisAngle(new o(1,0,0),-Math.PI/2),e}(),e=this._deviceOrientationQ;var t=new i;return t.copy(e),t.multiply(this.deviceOrientationFilterToWorldQ),t.multiply(this.resetQ),t.multiply(this.worldToScreenQ),t.multiplyQuaternions(this.deviceOrientationFixQ,t),this.yawOnly&&(t.x=0,t.z=0,t.normalize()),this.orientationOut_[0]=t.x,this.orientationOut_[1]=t.y,this.orientationOut_[2]=t.z,this.orientationOut_[3]=t.w,this.orientationOut_}var n=this.filter.getOrientation();e=this.posePredictor.getPrediction(n,this.gyroscope,this.previousTimestampS);var t=new i;return t.copy(this.filterToWorldQ),t.multiply(this.resetQ),t.multiply(e),t.multiply(this.worldToScreenQ),this.yawOnly&&(t.x=0,t.z=0,t.normalize()),this.orientationOut_[0]=t.x,this.orientationOut_[1]=t.y,this.orientationOut_[2]=t.z,this.orientationOut_[3]=t.w,this.orientationOut_},e.prototype.resetPose=function(){this.resetQ.copy(this.filter.getOrientation()),this.resetQ.x=0,this.resetQ.y=0,this.resetQ.z*=-1,this.resetQ.normalize(),m()&&this.resetQ.multiply(this.inverseWorldToScreenQ),this.resetQ.multiply(this.originalPoseAdjustQ)},e.prototype.onDeviceOrientation_=function(e){this._deviceOrientationQ=this._deviceOrientationQ||new i;var t=e.alpha,n=e.beta,r=e.gamma;t=(t||0)*Math.PI/180,n=(n||0)*Math.PI/180,r=(r||0)*Math.PI/180,this._deviceOrientationQ.setFromEulerYXZ(n,t,-r)},e.prototype.onDeviceMotion_=function(e){this.updateDeviceMotion_(e)},e.prototype.updateDeviceMotion_=function(e){var t=e.accelerationIncludingGravity,n=e.rotationRate,r=e.timeStamp/1e3,a=r-this.previousTimestampS;return a<0?(C("fusion-pose-sensor:invalid:non-monotonic","Invalid timestamps detected: non-monotonic timestamp from devicemotion"),void(this.previousTimestampS=r)):a<=.001||a>1?(C("fusion-pose-sensor:invalid:outside-threshold","Invalid timestamps detected: Timestamp from devicemotion outside expected range."),void(this.previousTimestampS=r)):(this.accelerometer.set(-t.x,-t.y,-t.z),M()?this.gyroscope.set(-n.beta,n.alpha,n.gamma):this.gyroscope.set(n.alpha,n.beta,n.gamma),this.isDeviceMotionInRadians||this.gyroscope.multiplyScalar(Math.PI/180),this.filter.addAccelMeasurement(this.accelerometer,r),this.filter.addGyroMeasurement(this.gyroscope,r),void(this.previousTimestampS=r))},e.prototype.onOrientationChange_=function(e){this.setScreenTransform_()},e.prototype.onMessage_=function(e){var t=e.data;if(t&&t.type){var n=t.type.toLowerCase();"devicemotion"===n&&this.updateDeviceMotion_(t.deviceMotionEvent)}},e.prototype.setScreenTransform_=function(){switch(this.worldToScreenQ.set(0,0,0,1),window.orientation){case 0:break;case 90:this.worldToScreenQ.setFromAxisAngle(new o(0,0,1),-Math.PI/2);break;case-90:this.worldToScreenQ.setFromAxisAngle(new o(0,0,1),Math.PI/2)}this.inverseWorldToScreenQ.copy(this.worldToScreenQ),this.inverseWorldToScreenQ.inverse()},e.prototype.start=function(){this.onDeviceMotionCallback_=this.onDeviceMotion_.bind(this),this.onOrientationChangeCallback_=this.onOrientationChange_.bind(this),this.onMessageCallback_=this.onMessage_.bind(this),this.onDeviceOrientationCallback_=this.onDeviceOrientation_.bind(this),f()&&function(){var e=window.self!==window.top,t=L(document.referrer),n=L(window.location.href);return e&&t!==n}()&&window.addEventListener("message",this.onMessageCallback_),window.addEventListener("orientationchange",this.onOrientationChangeCallback_),this.isWithoutDeviceMotion?window.addEventListener("deviceorientation",this.onDeviceOrientationCallback_):window.addEventListener("devicemotion",this.onDeviceMotionCallback_)},e.prototype.stop=function(){window.removeEventListener("devicemotion",this.onDeviceMotionCallback_),window.removeEventListener("deviceorientation",this.onDeviceOrientationCallback_),window.removeEventListener("orientationchange",this.onOrientationChangeCallback_),window.removeEventListener("message",this.onMessageCallback_)};var $=new o(1,0,0),ee=new o(0,0,1),te={};screen.orientation?te=screen.orientation:screen.msOrientation?te=screen.msOrientation:Object.defineProperty(te,"angle",{get:function(){return window.orientation||0}});var ne=new i;ne.setFromAxisAngle($,-Math.PI/2),ne.multiply((new i).setFromAxisAngle(ee,Math.PI/2));var re=function(){function t(e){u(this,t),this.config=e,this.sensor=null,this.fusionSensor=null,this._out=new Float32Array(4),this.api=null,this.errors=[],this._sensorQ=new i,this._worldToScreenQ=new i,this._outQ=new i,this._onSensorRead=this._onSensorRead.bind(this),this._onSensorError=this._onSensorError.bind(this),this._onOrientationChange=this._onOrientationChange.bind(this),this._onOrientationChange(),this.init()}return l(t,[{key:"init",value:function(){var e=null;try{(e=new RelativeOrientationSensor({frequency:60})).addEventListener("error",this._onSensorError)}catch(e){this.errors.push(e),"SecurityError"===e.name?(console.error("Cannot construct sensors due to the Feature Policy"),console.warn('Attempting to fall back using "devicemotion"; however this will fail in the future without correct permissions.'),this.useDeviceMotion()):"ReferenceError"===e.name?this.useDeviceMotion():console.error(e)}e&&(this.api="sensor",this.sensor=e,this.sensor.addEventListener("reading",this._onSensorRead),this.sensor.start()),window.addEventListener("orientationchange",this._onOrientationChange)}},{key:"useDeviceMotion",value:function(){this.api="devicemotion",this.fusionSensor=new e(this.config.K_FILTER,this.config.PREDICTION_TIME_S,this.config.YAW_ONLY,this.config.DEBUG)}},{key:"getOrientation",value:function(){if(this.fusionSensor)return this.fusionSensor.getOrientation();if(!this.sensor||!this.sensor.quaternion)return this._out[0]=this._out[1]=this._out[2]=0,this._out[3]=1,this._out;var e=this.sensor.quaternion;this._sensorQ.set(e[0],e[1],e[2],e[3]);var t=this._outQ;return t.copy(ne),t.multiply(this._sensorQ),t.multiply(this._worldToScreenQ),this.config.YAW_ONLY&&(t.x=t.z=0,t.normalize()),this._out[0]=t.x,this._out[1]=t.y,this._out[2]=t.z,this._out[3]=t.w,this._out}},{key:"_onSensorError",value:function(e){this.errors.push(e.error),"NotAllowedError"===e.error.name?console.error("Permission to access sensor was denied"):"NotReadableError"===e.error.name?console.error("Sensor could not be read"):console.error(e.error)}},{key:"_onSensorRead",value:function(){}},{key:"_onOrientationChange",value:function(){var e=-te.angle*Math.PI/180;this._worldToScreenQ.setFromAxisAngle(ee,e)}}]),t}();function ae(){this.loadIcon_();var e=document.createElement("div"),t=e.style;t.position="fixed",t.top=0,t.right=0,t.bottom=0,t.left=0,t.backgroundColor="gray",t.fontFamily="sans-serif",t.zIndex=1e6;var n=document.createElement("img");n.src=this.icon;var t=n.style;t.marginLeft="25%",t.marginTop="25%",t.width="50%",e.appendChild(n);var r=document.createElement("div"),t=r.style;t.textAlign="center",t.fontSize="16px",t.lineHeight="24px",t.margin="24px 25%",t.width="50%",r.innerHTML="Place your phone into your Cardboard viewer.",e.appendChild(r);var a=document.createElement("div"),t=a.style;t.backgroundColor="#CFD8DC",t.position="fixed",t.bottom=0,t.width="100%",t.height="48px",t.padding="14px 24px",t.boxSizing="border-box",t.color="#656A6B",e.appendChild(a);var i=document.createElement("div");i.style.float="left",i.innerHTML="No Cardboard viewer?";var o=document.createElement("a");o.href="https://www.google.com/get/cardboard/get-cardboard/",o.innerHTML="get one",o.target="_blank";var t=o.style;t.float="right",t.fontWeight=600,t.textTransform="uppercase",t.borderLeft="1px solid gray",t.paddingLeft="24px",t.textDecoration="none",t.color="#656A6B",a.appendChild(i),a.appendChild(o),this.overlay=e,this.text=r,this.hide()}ae.prototype.show=function(e){e||this.overlay.parentElement?e&&(this.overlay.parentElement&&this.overlay.parentElement!=e&&this.overlay.parentElement.removeChild(this.overlay),e.appendChild(this.overlay)):document.body.appendChild(this.overlay),this.overlay.style.display="block";var t=this.overlay.querySelector("img"),n=t.style;m()?(n.width="20%",n.marginLeft="40%",n.marginTop="3%"):(n.width="50%",n.marginLeft="25%",n.marginTop="25%")},ae.prototype.hide=function(){this.overlay.style.display="none"},ae.prototype.showTemporarily=function(e,t){this.show(t),this.timer=setTimeout(this.hide.bind(this),e)},ae.prototype.disableShowTemporarily=function(){clearTimeout(this.timer)},ae.prototype.update=function(){this.disableShowTemporarily(),!m()&&x()?this.show():this.hide()},ae.prototype.loadIcon_=function(){this.icon=function(e,t){return"data:"+e+";base64,"+t}("image/svg+xml","PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjE5OHB4IiBoZWlnaHQ9IjI0MHB4IiB2aWV3Qm94PSIwIDAgMTk4IDI0MCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWxuczpza2V0Y2g9Imh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaC9ucyI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDMuMy4zICgxMjA4MSkgLSBodHRwOi8vd3d3LmJvaGVtaWFuY29kaW5nLmNvbS9za2V0Y2ggLS0+CiAgICA8dGl0bGU+dHJhbnNpdGlvbjwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPjwvZGVmcz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHNrZXRjaDp0eXBlPSJNU1BhZ2UiPgogICAgICAgIDxnIGlkPSJ0cmFuc2l0aW9uIiBza2V0Y2g6dHlwZT0iTVNBcnRib2FyZEdyb3VwIj4KICAgICAgICAgICAgPGcgaWQ9IkltcG9ydGVkLUxheWVycy1Db3B5LTQtKy1JbXBvcnRlZC1MYXllcnMtQ29weS0rLUltcG9ydGVkLUxheWVycy1Db3B5LTItQ29weSIgc2tldGNoOnR5cGU9Ik1TTGF5ZXJHcm91cCI+CiAgICAgICAgICAgICAgICA8ZyBpZD0iSW1wb3J0ZWQtTGF5ZXJzLUNvcHktNCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsIDEwNy4wMDAwMDApIiBza2V0Y2g6dHlwZT0iTVNTaGFwZUdyb3VwIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTQ5LjYyNSwyLjUyNyBDMTQ5LjYyNSwyLjUyNyAxNTUuODA1LDYuMDk2IDE1Ni4zNjIsNi40MTggTDE1Ni4zNjIsNy4zMDQgQzE1Ni4zNjIsNy40ODEgMTU2LjM3NSw3LjY2NCAxNTYuNCw3Ljg1MyBDMTU2LjQxLDcuOTM0IDE1Ni40Miw4LjAxNSAxNTYuNDI3LDguMDk1IEMxNTYuNTY3LDkuNTEgMTU3LjQwMSwxMS4wOTMgMTU4LjUzMiwxMi4wOTQgTDE2NC4yNTIsMTcuMTU2IEwxNjQuMzMzLDE3LjA2NiBDMTY0LjMzMywxNy4wNjYgMTY4LjcxNSwxNC41MzYgMTY5LjU2OCwxNC4wNDIgQzE3MS4wMjUsMTQuODgzIDE5NS41MzgsMjkuMDM1IDE5NS41MzgsMjkuMDM1IEwxOTUuNTM4LDgzLjAzNiBDMTk1LjUzOCw4My44MDcgMTk1LjE1Miw4NC4yNTMgMTk0LjU5LDg0LjI1MyBDMTk0LjM1Nyw4NC4yNTMgMTk0LjA5NSw4NC4xNzcgMTkzLjgxOCw4NC4wMTcgTDE2OS44NTEsNzAuMTc5IEwxNjkuODM3LDcwLjIwMyBMMTQyLjUxNSw4NS45NzggTDE0MS42NjUsODQuNjU1IEMxMzYuOTM0LDgzLjEyNiAxMzEuOTE3LDgxLjkxNSAxMjYuNzE0LDgxLjA0NSBDMTI2LjcwOSw4MS4wNiAxMjYuNzA3LDgxLjA2OSAxMjYuNzA3LDgxLjA2OSBMMTIxLjY0LDk4LjAzIEwxMTMuNzQ5LDEwMi41ODYgTDExMy43MTIsMTAyLjUyMyBMMTEzLjcxMiwxMzAuMTEzIEMxMTMuNzEyLDEzMC44ODUgMTEzLjMyNiwxMzEuMzMgMTEyLjc2NCwxMzEuMzMgQzExMi41MzIsMTMxLjMzIDExMi4yNjksMTMxLjI1NCAxMTEuOTkyLDEzMS4wOTQgTDY5LjUxOSwxMDYuNTcyIEM2OC41NjksMTA2LjAyMyA2Ny43OTksMTA0LjY5NSA2Ny43OTksMTAzLjYwNSBMNjcuNzk5LDEwMi41NyBMNjcuNzc4LDEwMi42MTcgQzY3LjI3LDEwMi4zOTMgNjYuNjQ4LDEwMi4yNDkgNjUuOTYyLDEwMi4yMTggQzY1Ljg3NSwxMDIuMjE0IDY1Ljc4OCwxMDIuMjEyIDY1LjcwMSwxMDIuMjEyIEM2NS42MDYsMTAyLjIxMiA2NS41MTEsMTAyLjIxNSA2NS40MTYsMTAyLjIxOSBDNjUuMTk1LDEwMi4yMjkgNjQuOTc0LDEwMi4yMzUgNjQuNzU0LDEwMi4yMzUgQzY0LjMzMSwxMDIuMjM1IDYzLjkxMSwxMDIuMjE2IDYzLjQ5OCwxMDIuMTc4IEM2MS44NDMsMTAyLjAyNSA2MC4yOTgsMTAxLjU3OCA1OS4wOTQsMTAwLjg4MiBMMTIuNTE4LDczLjk5MiBMMTIuNTIzLDc0LjAwNCBMMi4yNDUsNTUuMjU0IEMxLjI0NCw1My40MjcgMi4wMDQsNTEuMDM4IDMuOTQzLDQ5LjkxOCBMNTkuOTU0LDE3LjU3MyBDNjAuNjI2LDE3LjE4NSA2MS4zNSwxNy4wMDEgNjIuMDUzLDE3LjAwMSBDNjMuMzc5LDE3LjAwMSA2NC42MjUsMTcuNjYgNjUuMjgsMTguODU0IEw2NS4yODUsMTguODUxIEw2NS41MTIsMTkuMjY0IEw2NS41MDYsMTkuMjY4IEM2NS45MDksMjAuMDAzIDY2LjQwNSwyMC42OCA2Ni45ODMsMjEuMjg2IEw2Ny4yNiwyMS41NTYgQzY5LjE3NCwyMy40MDYgNzEuNzI4LDI0LjM1NyA3NC4zNzMsMjQuMzU3IEM3Ni4zMjIsMjQuMzU3IDc4LjMyMSwyMy44NCA4MC4xNDgsMjIuNzg1IEM4MC4xNjEsMjIuNzg1IDg3LjQ2NywxOC41NjYgODcuNDY3LDE4LjU2NiBDODguMTM5LDE4LjE3OCA4OC44NjMsMTcuOTk0IDg5LjU2NiwxNy45OTQgQzkwLjg5MiwxNy45OTQgOTIuMTM4LDE4LjY1MiA5Mi43OTIsMTkuODQ3IEw5Ni4wNDIsMjUuNzc1IEw5Ni4wNjQsMjUuNzU3IEwxMDIuODQ5LDI5LjY3NCBMMTAyLjc0NCwyOS40OTIgTDE0OS42MjUsMi41MjcgTTE0OS42MjUsMC44OTIgQzE0OS4zNDMsMC44OTIgMTQ5LjA2MiwwLjk2NSAxNDguODEsMS4xMSBMMTAyLjY0MSwyNy42NjYgTDk3LjIzMSwyNC41NDIgTDk0LjIyNiwxOS4wNjEgQzkzLjMxMywxNy4zOTQgOTEuNTI3LDE2LjM1OSA4OS41NjYsMTYuMzU4IEM4OC41NTUsMTYuMzU4IDg3LjU0NiwxNi42MzIgODYuNjQ5LDE3LjE1IEM4My44NzgsMTguNzUgNzkuNjg3LDIxLjE2OSA3OS4zNzQsMjEuMzQ1IEM3OS4zNTksMjEuMzUzIDc5LjM0NSwyMS4zNjEgNzkuMzMsMjEuMzY5IEM3Ny43OTgsMjIuMjU0IDc2LjA4NCwyMi43MjIgNzQuMzczLDIyLjcyMiBDNzIuMDgxLDIyLjcyMiA2OS45NTksMjEuODkgNjguMzk3LDIwLjM4IEw2OC4xNDUsMjAuMTM1IEM2Ny43MDYsMTkuNjcyIDY3LjMyMywxOS4xNTYgNjcuMDA2LDE4LjYwMSBDNjYuOTg4LDE4LjU1OSA2Ni45NjgsMTguNTE5IDY2Ljk0NiwxOC40NzkgTDY2LjcxOSwxOC4wNjUgQzY2LjY5LDE4LjAxMiA2Ni42NTgsMTcuOTYgNjYuNjI0LDE3LjkxMSBDNjUuNjg2LDE2LjMzNyA2My45NTEsMTUuMzY2IDYyLjA1MywxNS4zNjYgQzYxLjA0MiwxNS4zNjYgNjAuMDMzLDE1LjY0IDU5LjEzNiwxNi4xNTggTDMuMTI1LDQ4LjUwMiBDMC40MjYsNTAuMDYxIC0wLjYxMyw1My40NDIgMC44MTEsNTYuMDQgTDExLjA4OSw3NC43OSBDMTEuMjY2LDc1LjExMyAxMS41MzcsNzUuMzUzIDExLjg1LDc1LjQ5NCBMNTguMjc2LDEwMi4yOTggQzU5LjY3OSwxMDMuMTA4IDYxLjQzMywxMDMuNjMgNjMuMzQ4LDEwMy44MDYgQzYzLjgxMiwxMDMuODQ4IDY0LjI4NSwxMDMuODcgNjQuNzU0LDEwMy44NyBDNjUsMTAzLjg3IDY1LjI0OSwxMDMuODY0IDY1LjQ5NCwxMDMuODUyIEM2NS41NjMsMTAzLjg0OSA2NS42MzIsMTAzLjg0NyA2NS43MDEsMTAzLjg0NyBDNjUuNzY0LDEwMy44NDcgNjUuODI4LDEwMy44NDkgNjUuODksMTAzLjg1MiBDNjUuOTg2LDEwMy44NTYgNjYuMDgsMTAzLjg2MyA2Ni4xNzMsMTAzLjg3NCBDNjYuMjgyLDEwNS40NjcgNjcuMzMyLDEwNy4xOTcgNjguNzAyLDEwNy45ODggTDExMS4xNzQsMTMyLjUxIEMxMTEuNjk4LDEzMi44MTIgMTEyLjIzMiwxMzIuOTY1IDExMi43NjQsMTMyLjk2NSBDMTE0LjI2MSwxMzIuOTY1IDExNS4zNDcsMTMxLjc2NSAxMTUuMzQ3LDEzMC4xMTMgTDExNS4zNDcsMTAzLjU1MSBMMTIyLjQ1OCw5OS40NDYgQzEyMi44MTksOTkuMjM3IDEyMy4wODcsOTguODk4IDEyMy4yMDcsOTguNDk4IEwxMjcuODY1LDgyLjkwNSBDMTMyLjI3OSw4My43MDIgMTM2LjU1Nyw4NC43NTMgMTQwLjYwNyw4Ni4wMzMgTDE0MS4xNCw4Ni44NjIgQzE0MS40NTEsODcuMzQ2IDE0MS45NzcsODcuNjEzIDE0Mi41MTYsODcuNjEzIEMxNDIuNzk0LDg3LjYxMyAxNDMuMDc2LDg3LjU0MiAxNDMuMzMzLDg3LjM5MyBMMTY5Ljg2NSw3Mi4wNzYgTDE5Myw4NS40MzMgQzE5My41MjMsODUuNzM1IDE5NC4wNTgsODUuODg4IDE5NC41OSw4NS44ODggQzE5Ni4wODcsODUuODg4IDE5Ny4xNzMsODQuNjg5IDE5Ny4xNzMsODMuMDM2IEwxOTcuMTczLDI5LjAzNSBDMTk3LjE3MywyOC40NTEgMTk2Ljg2MSwyNy45MTEgMTk2LjM1NSwyNy42MTkgQzE5Ni4zNTUsMjcuNjE5IDE3MS44NDMsMTMuNDY3IDE3MC4zODUsMTIuNjI2IEMxNzAuMTMyLDEyLjQ4IDE2OS44NSwxMi40MDcgMTY5LjU2OCwxMi40MDcgQzE2OS4yODUsMTIuNDA3IDE2OS4wMDIsMTIuNDgxIDE2OC43NDksMTIuNjI3IEMxNjguMTQzLDEyLjk3OCAxNjUuNzU2LDE0LjM1NyAxNjQuNDI0LDE1LjEyNSBMMTU5LjYxNSwxMC44NyBDMTU4Ljc5NiwxMC4xNDUgMTU4LjE1NCw4LjkzNyAxNTguMDU0LDcuOTM0IEMxNTguMDQ1LDcuODM3IDE1OC4wMzQsNy43MzkgMTU4LjAyMSw3LjY0IEMxNTguMDA1LDcuNTIzIDE1Ny45OTgsNy40MSAxNTcuOTk4LDcuMzA0IEwxNTcuOTk4LDYuNDE4IEMxNTcuOTk4LDUuODM0IDE1Ny42ODYsNS4yOTUgMTU3LjE4MSw1LjAwMiBDMTU2LjYyNCw0LjY4IDE1MC40NDIsMS4xMTEgMTUwLjQ0MiwxLjExMSBDMTUwLjE4OSwwLjk2NSAxNDkuOTA3LDAuODkyIDE0OS42MjUsMC44OTIiIGlkPSJGaWxsLTEiIGZpbGw9IiM0NTVBNjQiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOTYuMDI3LDI1LjYzNiBMMTQyLjYwMyw1Mi41MjcgQzE0My44MDcsNTMuMjIyIDE0NC41ODIsNTQuMTE0IDE0NC44NDUsNTUuMDY4IEwxNDQuODM1LDU1LjA3NSBMNjMuNDYxLDEwMi4wNTcgTDYzLjQ2LDEwMi4wNTcgQzYxLjgwNiwxMDEuOTA1IDYwLjI2MSwxMDEuNDU3IDU5LjA1NywxMDAuNzYyIEwxMi40ODEsNzMuODcxIEw5Ni4wMjcsMjUuNjM2IiBpZD0iRmlsbC0yIiBmaWxsPSIjRkFGQUZBIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTYzLjQ2MSwxMDIuMTc0IEM2My40NTMsMTAyLjE3NCA2My40NDYsMTAyLjE3NCA2My40MzksMTAyLjE3MiBDNjEuNzQ2LDEwMi4wMTYgNjAuMjExLDEwMS41NjMgNTguOTk4LDEwMC44NjMgTDEyLjQyMiw3My45NzMgQzEyLjM4Niw3My45NTIgMTIuMzY0LDczLjkxNCAxMi4zNjQsNzMuODcxIEMxMi4zNjQsNzMuODMgMTIuMzg2LDczLjc5MSAxMi40MjIsNzMuNzcgTDk1Ljk2OCwyNS41MzUgQzk2LjAwNCwyNS41MTQgOTYuMDQ5LDI1LjUxNCA5Ni4wODUsMjUuNTM1IEwxNDIuNjYxLDUyLjQyNiBDMTQzLjg4OCw1My4xMzQgMTQ0LjY4Miw1NC4wMzggMTQ0Ljk1Nyw1NS4wMzcgQzE0NC45Nyw1NS4wODMgMTQ0Ljk1Myw1NS4xMzMgMTQ0LjkxNSw1NS4xNjEgQzE0NC45MTEsNTUuMTY1IDE0NC44OTgsNTUuMTc0IDE0NC44OTQsNTUuMTc3IEw2My41MTksMTAyLjE1OCBDNjMuNTAxLDEwMi4xNjkgNjMuNDgxLDEwMi4xNzQgNjMuNDYxLDEwMi4xNzQgTDYzLjQ2MSwxMDIuMTc0IFogTTEyLjcxNCw3My44NzEgTDU5LjExNSwxMDAuNjYxIEM2MC4yOTMsMTAxLjM0MSA2MS43ODYsMTAxLjc4MiA2My40MzUsMTAxLjkzNyBMMTQ0LjcwNyw1NS4wMTUgQzE0NC40MjgsNTQuMTA4IDE0My42ODIsNTMuMjg1IDE0Mi41NDQsNTIuNjI4IEw5Ni4wMjcsMjUuNzcxIEwxMi43MTQsNzMuODcxIEwxMi43MTQsNzMuODcxIFoiIGlkPSJGaWxsLTMiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTQ4LjMyNyw1OC40NzEgQzE0OC4xNDUsNTguNDggMTQ3Ljk2Miw1OC40OCAxNDcuNzgxLDU4LjQ3MiBDMTQ1Ljg4Nyw1OC4zODkgMTQ0LjQ3OSw1Ny40MzQgMTQ0LjYzNiw1Ni4zNCBDMTQ0LjY4OSw1NS45NjcgMTQ0LjY2NCw1NS41OTcgMTQ0LjU2NCw1NS4yMzUgTDYzLjQ2MSwxMDIuMDU3IEM2NC4wODksMTAyLjExNSA2NC43MzMsMTAyLjEzIDY1LjM3OSwxMDIuMDk5IEM2NS41NjEsMTAyLjA5IDY1Ljc0MywxMDIuMDkgNjUuOTI1LDEwMi4wOTggQzY3LjgxOSwxMDIuMTgxIDY5LjIyNywxMDMuMTM2IDY5LjA3LDEwNC4yMyBMMTQ4LjMyNyw1OC40NzEiIGlkPSJGaWxsLTQiIGZpbGw9IiNGRkZGRkYiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNjkuMDcsMTA0LjM0NyBDNjkuMDQ4LDEwNC4zNDcgNjkuMDI1LDEwNC4zNCA2OS4wMDUsMTA0LjMyNyBDNjguOTY4LDEwNC4zMDEgNjguOTQ4LDEwNC4yNTcgNjguOTU1LDEwNC4yMTMgQzY5LDEwMy44OTYgNjguODk4LDEwMy41NzYgNjguNjU4LDEwMy4yODggQzY4LjE1MywxMDIuNjc4IDY3LjEwMywxMDIuMjY2IDY1LjkyLDEwMi4yMTQgQzY1Ljc0MiwxMDIuMjA2IDY1LjU2MywxMDIuMjA3IDY1LjM4NSwxMDIuMjE1IEM2NC43NDIsMTAyLjI0NiA2NC4wODcsMTAyLjIzMiA2My40NSwxMDIuMTc0IEM2My4zOTksMTAyLjE2OSA2My4zNTgsMTAyLjEzMiA2My4zNDcsMTAyLjA4MiBDNjMuMzM2LDEwMi4wMzMgNjMuMzU4LDEwMS45ODEgNjMuNDAyLDEwMS45NTYgTDE0NC41MDYsNTUuMTM0IEMxNDQuNTM3LDU1LjExNiAxNDQuNTc1LDU1LjExMyAxNDQuNjA5LDU1LjEyNyBDMTQ0LjY0Miw1NS4xNDEgMTQ0LjY2OCw1NS4xNyAxNDQuNjc3LDU1LjIwNCBDMTQ0Ljc4MSw1NS41ODUgMTQ0LjgwNiw1NS45NzIgMTQ0Ljc1MSw1Ni4zNTcgQzE0NC43MDYsNTYuNjczIDE0NC44MDgsNTYuOTk0IDE0NS4wNDcsNTcuMjgyIEMxNDUuNTUzLDU3Ljg5MiAxNDYuNjAyLDU4LjMwMyAxNDcuNzg2LDU4LjM1NSBDMTQ3Ljk2NCw1OC4zNjMgMTQ4LjE0Myw1OC4zNjMgMTQ4LjMyMSw1OC4zNTQgQzE0OC4zNzcsNTguMzUyIDE0OC40MjQsNTguMzg3IDE0OC40MzksNTguNDM4IEMxNDguNDU0LDU4LjQ5IDE0OC40MzIsNTguNTQ1IDE0OC4zODUsNTguNTcyIEw2OS4xMjksMTA0LjMzMSBDNjkuMTExLDEwNC4zNDIgNjkuMDksMTA0LjM0NyA2OS4wNywxMDQuMzQ3IEw2OS4wNywxMDQuMzQ3IFogTTY1LjY2NSwxMDEuOTc1IEM2NS43NTQsMTAxLjk3NSA2NS44NDIsMTAxLjk3NyA2NS45MywxMDEuOTgxIEM2Ny4xOTYsMTAyLjAzNyA2OC4yODMsMTAyLjQ2OSA2OC44MzgsMTAzLjEzOSBDNjkuMDY1LDEwMy40MTMgNjkuMTg4LDEwMy43MTQgNjkuMTk4LDEwNC4wMjEgTDE0Ny44ODMsNTguNTkyIEMxNDcuODQ3LDU4LjU5MiAxNDcuODExLDU4LjU5MSAxNDcuNzc2LDU4LjU4OSBDMTQ2LjUwOSw1OC41MzMgMTQ1LjQyMiw1OC4xIDE0NC44NjcsNTcuNDMxIEMxNDQuNTg1LDU3LjA5MSAxNDQuNDY1LDU2LjcwNyAxNDQuNTIsNTYuMzI0IEMxNDQuNTYzLDU2LjAyMSAxNDQuNTUyLDU1LjcxNiAxNDQuNDg4LDU1LjQxNCBMNjMuODQ2LDEwMS45NyBDNjQuMzUzLDEwMi4wMDIgNjQuODY3LDEwMi4wMDYgNjUuMzc0LDEwMS45ODIgQzY1LjQ3MSwxMDEuOTc3IDY1LjU2OCwxMDEuOTc1IDY1LjY2NSwxMDEuOTc1IEw2NS42NjUsMTAxLjk3NSBaIiBpZD0iRmlsbC01IiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTIuMjA4LDU1LjEzNCBDMS4yMDcsNTMuMzA3IDEuOTY3LDUwLjkxNyAzLjkwNiw0OS43OTcgTDU5LjkxNywxNy40NTMgQzYxLjg1NiwxNi4zMzMgNjQuMjQxLDE2LjkwNyA2NS4yNDMsMTguNzM0IEw2NS40NzUsMTkuMTQ0IEM2NS44NzIsMTkuODgyIDY2LjM2OCwyMC41NiA2Ni45NDUsMjEuMTY1IEw2Ny4yMjMsMjEuNDM1IEM3MC41NDgsMjQuNjQ5IDc1LjgwNiwyNS4xNTEgODAuMTExLDIyLjY2NSBMODcuNDMsMTguNDQ1IEM4OS4zNywxNy4zMjYgOTEuNzU0LDE3Ljg5OSA5Mi43NTUsMTkuNzI3IEw5Ni4wMDUsMjUuNjU1IEwxMi40ODYsNzMuODg0IEwyLjIwOCw1NS4xMzQgWiIgaWQ9IkZpbGwtNiIgZmlsbD0iI0ZBRkFGQSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMi40ODYsNzQuMDAxIEMxMi40NzYsNzQuMDAxIDEyLjQ2NSw3My45OTkgMTIuNDU1LDczLjk5NiBDMTIuNDI0LDczLjk4OCAxMi4zOTksNzMuOTY3IDEyLjM4NCw3My45NCBMMi4xMDYsNTUuMTkgQzEuMDc1LDUzLjMxIDEuODU3LDUwLjg0NSAzLjg0OCw0OS42OTYgTDU5Ljg1OCwxNy4zNTIgQzYwLjUyNSwxNi45NjcgNjEuMjcxLDE2Ljc2NCA2Mi4wMTYsMTYuNzY0IEM2My40MzEsMTYuNzY0IDY0LjY2NiwxNy40NjYgNjUuMzI3LDE4LjY0NiBDNjUuMzM3LDE4LjY1NCA2NS4zNDUsMTguNjYzIDY1LjM1MSwxOC42NzQgTDY1LjU3OCwxOS4wODggQzY1LjU4NCwxOS4xIDY1LjU4OSwxOS4xMTIgNjUuNTkxLDE5LjEyNiBDNjUuOTg1LDE5LjgzOCA2Ni40NjksMjAuNDk3IDY3LjAzLDIxLjA4NSBMNjcuMzA1LDIxLjM1MSBDNjkuMTUxLDIzLjEzNyA3MS42NDksMjQuMTIgNzQuMzM2LDI0LjEyIEM3Ni4zMTMsMjQuMTIgNzguMjksMjMuNTgyIDgwLjA1MywyMi41NjMgQzgwLjA2NCwyMi41NTcgODAuMDc2LDIyLjU1MyA4MC4wODgsMjIuNTUgTDg3LjM3MiwxOC4zNDQgQzg4LjAzOCwxNy45NTkgODguNzg0LDE3Ljc1NiA4OS41MjksMTcuNzU2IEM5MC45NTYsMTcuNzU2IDkyLjIwMSwxOC40NzIgOTIuODU4LDE5LjY3IEw5Ni4xMDcsMjUuNTk5IEM5Ni4xMzgsMjUuNjU0IDk2LjExOCwyNS43MjQgOTYuMDYzLDI1Ljc1NiBMMTIuNTQ1LDczLjk4NSBDMTIuNTI2LDczLjk5NiAxMi41MDYsNzQuMDAxIDEyLjQ4Niw3NC4wMDEgTDEyLjQ4Niw3NC4wMDEgWiBNNjIuMDE2LDE2Ljk5NyBDNjEuMzEyLDE2Ljk5NyA2MC42MDYsMTcuMTkgNTkuOTc1LDE3LjU1NCBMMy45NjUsNDkuODk5IEMyLjA4Myw1MC45ODUgMS4zNDEsNTMuMzA4IDIuMzEsNTUuMDc4IEwxMi41MzEsNzMuNzIzIEw5NS44NDgsMjUuNjExIEw5Mi42NTMsMTkuNzgyIEM5Mi4wMzgsMTguNjYgOTAuODcsMTcuOTkgODkuNTI5LDE3Ljk5IEM4OC44MjUsMTcuOTkgODguMTE5LDE4LjE4MiA4Ny40ODksMTguNTQ3IEw4MC4xNzIsMjIuNzcyIEM4MC4xNjEsMjIuNzc4IDgwLjE0OSwyMi43ODIgODAuMTM3LDIyLjc4NSBDNzguMzQ2LDIzLjgxMSA3Ni4zNDEsMjQuMzU0IDc0LjMzNiwyNC4zNTQgQzcxLjU4OCwyNC4zNTQgNjkuMDMzLDIzLjM0NyA2Ny4xNDIsMjEuNTE5IEw2Ni44NjQsMjEuMjQ5IEM2Ni4yNzcsMjAuNjM0IDY1Ljc3NCwxOS45NDcgNjUuMzY3LDE5LjIwMyBDNjUuMzYsMTkuMTkyIDY1LjM1NiwxOS4xNzkgNjUuMzU0LDE5LjE2NiBMNjUuMTYzLDE4LjgxOSBDNjUuMTU0LDE4LjgxMSA2NS4xNDYsMTguODAxIDY1LjE0LDE4Ljc5IEM2NC41MjUsMTcuNjY3IDYzLjM1NywxNi45OTcgNjIuMDE2LDE2Ljk5NyBMNjIuMDE2LDE2Ljk5NyBaIiBpZD0iRmlsbC03IiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTQyLjQzNCw0OC44MDggTDQyLjQzNCw0OC44MDggQzM5LjkyNCw0OC44MDcgMzcuNzM3LDQ3LjU1IDM2LjU4Miw0NS40NDMgQzM0Ljc3MSw0Mi4xMzkgMzYuMTQ0LDM3LjgwOSAzOS42NDEsMzUuNzg5IEw1MS45MzIsMjguNjkxIEM1My4xMDMsMjguMDE1IDU0LjQxMywyNy42NTggNTUuNzIxLDI3LjY1OCBDNTguMjMxLDI3LjY1OCA2MC40MTgsMjguOTE2IDYxLjU3MywzMS4wMjMgQzYzLjM4NCwzNC4zMjcgNjIuMDEyLDM4LjY1NyA1OC41MTQsNDAuNjc3IEw0Ni4yMjMsNDcuNzc1IEM0NS4wNTMsNDguNDUgNDMuNzQyLDQ4LjgwOCA0Mi40MzQsNDguODA4IEw0Mi40MzQsNDguODA4IFogTTU1LjcyMSwyOC4xMjUgQzU0LjQ5NSwyOC4xMjUgNTMuMjY1LDI4LjQ2MSA1Mi4xNjYsMjkuMDk2IEwzOS44NzUsMzYuMTk0IEMzNi41OTYsMzguMDg3IDM1LjMwMiw0Mi4xMzYgMzYuOTkyLDQ1LjIxOCBDMzguMDYzLDQ3LjE3MyA0MC4wOTgsNDguMzQgNDIuNDM0LDQ4LjM0IEM0My42NjEsNDguMzQgNDQuODksNDguMDA1IDQ1Ljk5LDQ3LjM3IEw1OC4yODEsNDAuMjcyIEM2MS41NiwzOC4zNzkgNjIuODUzLDM0LjMzIDYxLjE2NCwzMS4yNDggQzYwLjA5MiwyOS4yOTMgNTguMDU4LDI4LjEyNSA1NS43MjEsMjguMTI1IEw1NS43MjEsMjguMTI1IFoiIGlkPSJGaWxsLTgiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTQ5LjU4OCwyLjQwNyBDMTQ5LjU4OCwyLjQwNyAxNTUuNzY4LDUuOTc1IDE1Ni4zMjUsNi4yOTcgTDE1Ni4zMjUsNy4xODQgQzE1Ni4zMjUsNy4zNiAxNTYuMzM4LDcuNTQ0IDE1Ni4zNjIsNy43MzMgQzE1Ni4zNzMsNy44MTQgMTU2LjM4Miw3Ljg5NCAxNTYuMzksNy45NzUgQzE1Ni41Myw5LjM5IDE1Ny4zNjMsMTAuOTczIDE1OC40OTUsMTEuOTc0IEwxNjUuODkxLDE4LjUxOSBDMTY2LjA2OCwxOC42NzUgMTY2LjI0OSwxOC44MTQgMTY2LjQzMiwxOC45MzQgQzE2OC4wMTEsMTkuOTc0IDE2OS4zODIsMTkuNCAxNjkuNDk0LDE3LjY1MiBDMTY5LjU0MywxNi44NjggMTY5LjU1MSwxNi4wNTcgMTY5LjUxNywxNS4yMjMgTDE2OS41MTQsMTUuMDYzIEwxNjkuNTE0LDEzLjkxMiBDMTcwLjc4LDE0LjY0MiAxOTUuNTAxLDI4LjkxNSAxOTUuNTAxLDI4LjkxNSBMMTk1LjUwMSw4Mi45MTUgQzE5NS41MDEsODQuMDA1IDE5NC43MzEsODQuNDQ1IDE5My43ODEsODMuODk3IEwxNTEuMzA4LDU5LjM3NCBDMTUwLjM1OCw1OC44MjYgMTQ5LjU4OCw1Ny40OTcgMTQ5LjU4OCw1Ni40MDggTDE0OS41ODgsMjIuMzc1IiBpZD0iRmlsbC05IiBmaWxsPSIjRkFGQUZBIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTE5NC41NTMsODQuMjUgQzE5NC4yOTYsODQuMjUgMTk0LjAxMyw4NC4xNjUgMTkzLjcyMiw4My45OTcgTDE1MS4yNSw1OS40NzYgQzE1MC4yNjksNTguOTA5IDE0OS40NzEsNTcuNTMzIDE0OS40NzEsNTYuNDA4IEwxNDkuNDcxLDIyLjM3NSBMMTQ5LjcwNSwyMi4zNzUgTDE0OS43MDUsNTYuNDA4IEMxNDkuNzA1LDU3LjQ1OSAxNTAuNDUsNTguNzQ0IDE1MS4zNjYsNTkuMjc0IEwxOTMuODM5LDgzLjc5NSBDMTk0LjI2Myw4NC4wNCAxOTQuNjU1LDg0LjA4MyAxOTQuOTQyLDgzLjkxNyBDMTk1LjIyNyw4My43NTMgMTk1LjM4NCw4My4zOTcgMTk1LjM4NCw4Mi45MTUgTDE5NS4zODQsMjguOTgyIEMxOTQuMTAyLDI4LjI0MiAxNzIuMTA0LDE1LjU0MiAxNjkuNjMxLDE0LjExNCBMMTY5LjYzNCwxNS4yMiBDMTY5LjY2OCwxNi4wNTIgMTY5LjY2LDE2Ljg3NCAxNjkuNjEsMTcuNjU5IEMxNjkuNTU2LDE4LjUwMyAxNjkuMjE0LDE5LjEyMyAxNjguNjQ3LDE5LjQwNSBDMTY4LjAyOCwxOS43MTQgMTY3LjE5NywxOS41NzggMTY2LjM2NywxOS4wMzIgQzE2Ni4xODEsMTguOTA5IDE2NS45OTUsMTguNzY2IDE2NS44MTQsMTguNjA2IEwxNTguNDE3LDEyLjA2MiBDMTU3LjI1OSwxMS4wMzYgMTU2LjQxOCw5LjQzNyAxNTYuMjc0LDcuOTg2IEMxNTYuMjY2LDcuOTA3IDE1Ni4yNTcsNy44MjcgMTU2LjI0Nyw3Ljc0OCBDMTU2LjIyMSw3LjU1NSAxNTYuMjA5LDcuMzY1IDE1Ni4yMDksNy4xODQgTDE1Ni4yMDksNi4zNjQgQzE1NS4zNzUsNS44ODMgMTQ5LjUyOSwyLjUwOCAxNDkuNTI5LDIuNTA4IEwxNDkuNjQ2LDIuMzA2IEMxNDkuNjQ2LDIuMzA2IDE1NS44MjcsNS44NzQgMTU2LjM4NCw2LjE5NiBMMTU2LjQ0Miw2LjIzIEwxNTYuNDQyLDcuMTg0IEMxNTYuNDQyLDcuMzU1IDE1Ni40NTQsNy41MzUgMTU2LjQ3OCw3LjcxNyBDMTU2LjQ4OSw3LjggMTU2LjQ5OSw3Ljg4MiAxNTYuNTA3LDcuOTYzIEMxNTYuNjQ1LDkuMzU4IDE1Ny40NTUsMTAuODk4IDE1OC41NzIsMTEuODg2IEwxNjUuOTY5LDE4LjQzMSBDMTY2LjE0MiwxOC41ODQgMTY2LjMxOSwxOC43MiAxNjYuNDk2LDE4LjgzNyBDMTY3LjI1NCwxOS4zMzYgMTY4LDE5LjQ2NyAxNjguNTQzLDE5LjE5NiBDMTY5LjAzMywxOC45NTMgMTY5LjMyOSwxOC40MDEgMTY5LjM3NywxNy42NDUgQzE2OS40MjcsMTYuODY3IDE2OS40MzQsMTYuMDU0IDE2OS40MDEsMTUuMjI4IEwxNjkuMzk3LDE1LjA2NSBMMTY5LjM5NywxMy43MSBMMTY5LjU3MiwxMy44MSBDMTcwLjgzOSwxNC41NDEgMTk1LjU1OSwyOC44MTQgMTk1LjU1OSwyOC44MTQgTDE5NS42MTgsMjguODQ3IEwxOTUuNjE4LDgyLjkxNSBDMTk1LjYxOCw4My40ODQgMTk1LjQyLDgzLjkxMSAxOTUuMDU5LDg0LjExOSBDMTk0LjkwOCw4NC4yMDYgMTk0LjczNyw4NC4yNSAxOTQuNTUzLDg0LjI1IiBpZD0iRmlsbC0xMCIgZmlsbD0iIzYwN0Q4QiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNDUuNjg1LDU2LjE2MSBMMTY5LjgsNzAuMDgzIEwxNDMuODIyLDg1LjA4MSBMMTQyLjM2LDg0Ljc3NCBDMTM1LjgyNiw4Mi42MDQgMTI4LjczMiw4MS4wNDYgMTIxLjM0MSw4MC4xNTggQzExNi45NzYsNzkuNjM0IDExMi42NzgsODEuMjU0IDExMS43NDMsODMuNzc4IEMxMTEuNTA2LDg0LjQxNCAxMTEuNTAzLDg1LjA3MSAxMTEuNzMyLDg1LjcwNiBDMTEzLjI3LDg5Ljk3MyAxMTUuOTY4LDk0LjA2OSAxMTkuNzI3LDk3Ljg0MSBMMTIwLjI1OSw5OC42ODYgQzEyMC4yNiw5OC42ODUgOTQuMjgyLDExMy42ODMgOTQuMjgyLDExMy42ODMgTDcwLjE2Nyw5OS43NjEgTDE0NS42ODUsNTYuMTYxIiBpZD0iRmlsbC0xMSIgZmlsbD0iI0ZGRkZGRiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik05NC4yODIsMTEzLjgxOCBMOTQuMjIzLDExMy43ODUgTDY5LjkzMyw5OS43NjEgTDcwLjEwOCw5OS42NiBMMTQ1LjY4NSw1Ni4wMjYgTDE0NS43NDMsNTYuMDU5IEwxNzAuMDMzLDcwLjA4MyBMMTQzLjg0Miw4NS4yMDUgTDE0My43OTcsODUuMTk1IEMxNDMuNzcyLDg1LjE5IDE0Mi4zMzYsODQuODg4IDE0Mi4zMzYsODQuODg4IEMxMzUuNzg3LDgyLjcxNCAxMjguNzIzLDgxLjE2MyAxMjEuMzI3LDgwLjI3NCBDMTIwLjc4OCw4MC4yMDkgMTIwLjIzNiw4MC4xNzcgMTE5LjY4OSw4MC4xNzcgQzExNS45MzEsODAuMTc3IDExMi42MzUsODEuNzA4IDExMS44NTIsODMuODE5IEMxMTEuNjI0LDg0LjQzMiAxMTEuNjIxLDg1LjA1MyAxMTEuODQyLDg1LjY2NyBDMTEzLjM3Nyw4OS45MjUgMTE2LjA1OCw5My45OTMgMTE5LjgxLDk3Ljc1OCBMMTE5LjgyNiw5Ny43NzkgTDEyMC4zNTIsOTguNjE0IEMxMjAuMzU0LDk4LjYxNyAxMjAuMzU2LDk4LjYyIDEyMC4zNTgsOTguNjI0IEwxMjAuNDIyLDk4LjcyNiBMMTIwLjMxNyw5OC43ODcgQzEyMC4yNjQsOTguODE4IDk0LjU5OSwxMTMuNjM1IDk0LjM0LDExMy43ODUgTDk0LjI4MiwxMTMuODE4IEw5NC4yODIsMTEzLjgxOCBaIE03MC40MDEsOTkuNzYxIEw5NC4yODIsMTEzLjU0OSBMMTE5LjA4NCw5OS4yMjkgQzExOS42Myw5OC45MTQgMTE5LjkzLDk4Ljc0IDEyMC4xMDEsOTguNjU0IEwxMTkuNjM1LDk3LjkxNCBDMTE1Ljg2NCw5NC4xMjcgMTEzLjE2OCw5MC4wMzMgMTExLjYyMiw4NS43NDYgQzExMS4zODIsODUuMDc5IDExMS4zODYsODQuNDA0IDExMS42MzMsODMuNzM4IEMxMTIuNDQ4LDgxLjUzOSAxMTUuODM2LDc5Ljk0MyAxMTkuNjg5LDc5Ljk0MyBDMTIwLjI0Niw3OS45NDMgMTIwLjgwNiw3OS45NzYgMTIxLjM1NSw4MC4wNDIgQzEyOC43NjcsODAuOTMzIDEzNS44NDYsODIuNDg3IDE0Mi4zOTYsODQuNjYzIEMxNDMuMjMyLDg0LjgzOCAxNDMuNjExLDg0LjkxNyAxNDMuNzg2LDg0Ljk2NyBMMTY5LjU2Niw3MC4wODMgTDE0NS42ODUsNTYuMjk1IEw3MC40MDEsOTkuNzYxIEw3MC40MDEsOTkuNzYxIFoiIGlkPSJGaWxsLTEyIiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTE2Ny4yMywxOC45NzkgTDE2Ny4yMyw2OS44NSBMMTM5LjkwOSw4NS42MjMgTDEzMy40NDgsNzEuNDU2IEMxMzIuNTM4LDY5LjQ2IDEzMC4wMiw2OS43MTggMTI3LjgyNCw3Mi4wMyBDMTI2Ljc2OSw3My4xNCAxMjUuOTMxLDc0LjU4NSAxMjUuNDk0LDc2LjA0OCBMMTE5LjAzNCw5Ny42NzYgTDkxLjcxMiwxMTMuNDUgTDkxLjcxMiw2Mi41NzkgTDE2Ny4yMywxOC45NzkiIGlkPSJGaWxsLTEzIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTkxLjcxMiwxMTMuNTY3IEM5MS42OTIsMTEzLjU2NyA5MS42NzIsMTEzLjU2MSA5MS42NTMsMTEzLjU1MSBDOTEuNjE4LDExMy41MyA5MS41OTUsMTEzLjQ5MiA5MS41OTUsMTEzLjQ1IEw5MS41OTUsNjIuNTc5IEM5MS41OTUsNjIuNTM3IDkxLjYxOCw2Mi40OTkgOTEuNjUzLDYyLjQ3OCBMMTY3LjE3MiwxOC44NzggQzE2Ny4yMDgsMTguODU3IDE2Ny4yNTIsMTguODU3IDE2Ny4yODgsMTguODc4IEMxNjcuMzI0LDE4Ljg5OSAxNjcuMzQ3LDE4LjkzNyAxNjcuMzQ3LDE4Ljk3OSBMMTY3LjM0Nyw2OS44NSBDMTY3LjM0Nyw2OS44OTEgMTY3LjMyNCw2OS45MyAxNjcuMjg4LDY5Ljk1IEwxMzkuOTY3LDg1LjcyNSBDMTM5LjkzOSw4NS43NDEgMTM5LjkwNSw4NS43NDUgMTM5Ljg3Myw4NS43MzUgQzEzOS44NDIsODUuNzI1IDEzOS44MTYsODUuNzAyIDEzOS44MDIsODUuNjcyIEwxMzMuMzQyLDcxLjUwNCBDMTMyLjk2Nyw3MC42ODIgMTMyLjI4LDcwLjIyOSAxMzEuNDA4LDcwLjIyOSBDMTMwLjMxOSw3MC4yMjkgMTI5LjA0NCw3MC45MTUgMTI3LjkwOCw3Mi4xMSBDMTI2Ljg3NCw3My4yIDEyNi4wMzQsNzQuNjQ3IDEyNS42MDYsNzYuMDgyIEwxMTkuMTQ2LDk3LjcwOSBDMTE5LjEzNyw5Ny43MzggMTE5LjExOCw5Ny43NjIgMTE5LjA5Miw5Ny43NzcgTDkxLjc3LDExMy41NTEgQzkxLjc1MiwxMTMuNTYxIDkxLjczMiwxMTMuNTY3IDkxLjcxMiwxMTMuNTY3IEw5MS43MTIsMTEzLjU2NyBaIE05MS44MjksNjIuNjQ3IEw5MS44MjksMTEzLjI0OCBMMTE4LjkzNSw5Ny41OTggTDEyNS4zODIsNzYuMDE1IEMxMjUuODI3LDc0LjUyNSAxMjYuNjY0LDczLjA4MSAxMjcuNzM5LDcxLjk1IEMxMjguOTE5LDcwLjcwOCAxMzAuMjU2LDY5Ljk5NiAxMzEuNDA4LDY5Ljk5NiBDMTMyLjM3Nyw2OS45OTYgMTMzLjEzOSw3MC40OTcgMTMzLjU1NCw3MS40MDcgTDEzOS45NjEsODUuNDU4IEwxNjcuMTEzLDY5Ljc4MiBMMTY3LjExMywxOS4xODEgTDkxLjgyOSw2Mi42NDcgTDkxLjgyOSw2Mi42NDcgWiIgaWQ9IkZpbGwtMTQiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTY4LjU0MywxOS4yMTMgTDE2OC41NDMsNzAuMDgzIEwxNDEuMjIxLDg1Ljg1NyBMMTM0Ljc2MSw3MS42ODkgQzEzMy44NTEsNjkuNjk0IDEzMS4zMzMsNjkuOTUxIDEyOS4xMzcsNzIuMjYzIEMxMjguMDgyLDczLjM3NCAxMjcuMjQ0LDc0LjgxOSAxMjYuODA3LDc2LjI4MiBMMTIwLjM0Niw5Ny45MDkgTDkzLjAyNSwxMTMuNjgzIEw5My4wMjUsNjIuODEzIEwxNjguNTQzLDE5LjIxMyIgaWQ9IkZpbGwtMTUiIGZpbGw9IiNGRkZGRkYiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOTMuMDI1LDExMy44IEM5My4wMDUsMTEzLjggOTIuOTg0LDExMy43OTUgOTIuOTY2LDExMy43ODUgQzkyLjkzMSwxMTMuNzY0IDkyLjkwOCwxMTMuNzI1IDkyLjkwOCwxMTMuNjg0IEw5Mi45MDgsNjIuODEzIEM5Mi45MDgsNjIuNzcxIDkyLjkzMSw2Mi43MzMgOTIuOTY2LDYyLjcxMiBMMTY4LjQ4NCwxOS4xMTIgQzE2OC41MiwxOS4wOSAxNjguNTY1LDE5LjA5IDE2OC42MDEsMTkuMTEyIEMxNjguNjM3LDE5LjEzMiAxNjguNjYsMTkuMTcxIDE2OC42NiwxOS4yMTIgTDE2OC42Niw3MC4wODMgQzE2OC42Niw3MC4xMjUgMTY4LjYzNyw3MC4xNjQgMTY4LjYwMSw3MC4xODQgTDE0MS4yOCw4NS45NTggQzE0MS4yNTEsODUuOTc1IDE0MS4yMTcsODUuOTc5IDE0MS4xODYsODUuOTY4IEMxNDEuMTU0LDg1Ljk1OCAxNDEuMTI5LDg1LjkzNiAxNDEuMTE1LDg1LjkwNiBMMTM0LjY1NSw3MS43MzggQzEzNC4yOCw3MC45MTUgMTMzLjU5Myw3MC40NjMgMTMyLjcyLDcwLjQ2MyBDMTMxLjYzMiw3MC40NjMgMTMwLjM1Nyw3MS4xNDggMTI5LjIyMSw3Mi4zNDQgQzEyOC4xODYsNzMuNDMzIDEyNy4zNDcsNzQuODgxIDEyNi45MTksNzYuMzE1IEwxMjAuNDU4LDk3Ljk0MyBDMTIwLjQ1LDk3Ljk3MiAxMjAuNDMxLDk3Ljk5NiAxMjAuNDA1LDk4LjAxIEw5My4wODMsMTEzLjc4NSBDOTMuMDY1LDExMy43OTUgOTMuMDQ1LDExMy44IDkzLjAyNSwxMTMuOCBMOTMuMDI1LDExMy44IFogTTkzLjE0Miw2Mi44ODEgTDkzLjE0MiwxMTMuNDgxIEwxMjAuMjQ4LDk3LjgzMiBMMTI2LjY5NSw3Ni4yNDggQzEyNy4xNCw3NC43NTggMTI3Ljk3Nyw3My4zMTUgMTI5LjA1Miw3Mi4xODMgQzEzMC4yMzEsNzAuOTQyIDEzMS41NjgsNzAuMjI5IDEzMi43Miw3MC4yMjkgQzEzMy42ODksNzAuMjI5IDEzNC40NTIsNzAuNzMxIDEzNC44NjcsNzEuNjQxIEwxNDEuMjc0LDg1LjY5MiBMMTY4LjQyNiw3MC4wMTYgTDE2OC40MjYsMTkuNDE1IEw5My4xNDIsNjIuODgxIEw5My4xNDIsNjIuODgxIFoiIGlkPSJGaWxsLTE2IiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTE2OS44LDcwLjA4MyBMMTQyLjQ3OCw4NS44NTcgTDEzNi4wMTgsNzEuNjg5IEMxMzUuMTA4LDY5LjY5NCAxMzIuNTksNjkuOTUxIDEzMC4zOTMsNzIuMjYzIEMxMjkuMzM5LDczLjM3NCAxMjguNSw3NC44MTkgMTI4LjA2NCw3Ni4yODIgTDEyMS42MDMsOTcuOTA5IEw5NC4yODIsMTEzLjY4MyBMOTQuMjgyLDYyLjgxMyBMMTY5LjgsMTkuMjEzIEwxNjkuOCw3MC4wODMgWiIgaWQ9IkZpbGwtMTciIGZpbGw9IiNGQUZBRkEiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOTQuMjgyLDExMy45MTcgQzk0LjI0MSwxMTMuOTE3IDk0LjIwMSwxMTMuOTA3IDk0LjE2NSwxMTMuODg2IEM5NC4wOTMsMTEzLjg0NSA5NC4wNDgsMTEzLjc2NyA5NC4wNDgsMTEzLjY4NCBMOTQuMDQ4LDYyLjgxMyBDOTQuMDQ4LDYyLjczIDk0LjA5Myw2Mi42NTIgOTQuMTY1LDYyLjYxMSBMMTY5LjY4MywxOS4wMSBDMTY5Ljc1NSwxOC45NjkgMTY5Ljg0NCwxOC45NjkgMTY5LjkxNywxOS4wMSBDMTY5Ljk4OSwxOS4wNTIgMTcwLjAzMywxOS4xMjkgMTcwLjAzMywxOS4yMTIgTDE3MC4wMzMsNzAuMDgzIEMxNzAuMDMzLDcwLjE2NiAxNjkuOTg5LDcwLjI0NCAxNjkuOTE3LDcwLjI4NSBMMTQyLjU5NSw4Ni4wNiBDMTQyLjUzOCw4Ni4wOTIgMTQyLjQ2OSw4Ni4xIDE0Mi40MDcsODYuMDggQzE0Mi4zNDQsODYuMDYgMTQyLjI5Myw4Ni4wMTQgMTQyLjI2Niw4NS45NTQgTDEzNS44MDUsNzEuNzg2IEMxMzUuNDQ1LDcwLjk5NyAxMzQuODEzLDcwLjU4IDEzMy45NzcsNzAuNTggQzEzMi45MjEsNzAuNTggMTMxLjY3Niw3MS4yNTIgMTMwLjU2Miw3Mi40MjQgQzEyOS41NCw3My41MDEgMTI4LjcxMSw3NC45MzEgMTI4LjI4Nyw3Ni4zNDggTDEyMS44MjcsOTcuOTc2IEMxMjEuODEsOTguMDM0IDEyMS43NzEsOTguMDgyIDEyMS43Miw5OC4xMTIgTDk0LjM5OCwxMTMuODg2IEM5NC4zNjIsMTEzLjkwNyA5NC4zMjIsMTEzLjkxNyA5NC4yODIsMTEzLjkxNyBMOTQuMjgyLDExMy45MTcgWiBNOTQuNTE1LDYyLjk0OCBMOTQuNTE1LDExMy4yNzkgTDEyMS40MDYsOTcuNzU0IEwxMjcuODQsNzYuMjE1IEMxMjguMjksNzQuNzA4IDEyOS4xMzcsNzMuMjQ3IDEzMC4yMjQsNzIuMTAzIEMxMzEuNDI1LDcwLjgzOCAxMzIuNzkzLDcwLjExMiAxMzMuOTc3LDcwLjExMiBDMTM0Ljk5NSw3MC4xMTIgMTM1Ljc5NSw3MC42MzggMTM2LjIzLDcxLjU5MiBMMTQyLjU4NCw4NS41MjYgTDE2OS41NjYsNjkuOTQ4IEwxNjkuNTY2LDE5LjYxNyBMOTQuNTE1LDYyLjk0OCBMOTQuNTE1LDYyLjk0OCBaIiBpZD0iRmlsbC0xOCIgZmlsbD0iIzYwN0Q4QiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMDkuODk0LDkyLjk0MyBMMTA5Ljg5NCw5Mi45NDMgQzEwOC4xMiw5Mi45NDMgMTA2LjY1Myw5Mi4yMTggMTA1LjY1LDkwLjgyMyBDMTA1LjU4Myw5MC43MzEgMTA1LjU5Myw5MC42MSAxMDUuNjczLDkwLjUyOSBDMTA1Ljc1Myw5MC40NDggMTA1Ljg4LDkwLjQ0IDEwNS45NzQsOTAuNTA2IEMxMDYuNzU0LDkxLjA1MyAxMDcuNjc5LDkxLjMzMyAxMDguNzI0LDkxLjMzMyBDMTEwLjA0Nyw5MS4zMzMgMTExLjQ3OCw5MC44OTQgMTEyLjk4LDkwLjAyNyBDMTE4LjI5MSw4Ni45NiAxMjIuNjExLDc5LjUwOSAxMjIuNjExLDczLjQxNiBDMTIyLjYxMSw3MS40ODkgMTIyLjE2OSw2OS44NTYgMTIxLjMzMyw2OC42OTIgQzEyMS4yNjYsNjguNiAxMjEuMjc2LDY4LjQ3MyAxMjEuMzU2LDY4LjM5MiBDMTIxLjQzNiw2OC4zMTEgMTIxLjU2Myw2OC4yOTkgMTIxLjY1Niw2OC4zNjUgQzEyMy4zMjcsNjkuNTM3IDEyNC4yNDcsNzEuNzQ2IDEyNC4yNDcsNzQuNTg0IEMxMjQuMjQ3LDgwLjgyNiAxMTkuODIxLDg4LjQ0NyAxMTQuMzgyLDkxLjU4NyBDMTEyLjgwOCw5Mi40OTUgMTExLjI5OCw5Mi45NDMgMTA5Ljg5NCw5Mi45NDMgTDEwOS44OTQsOTIuOTQzIFogTTEwNi45MjUsOTEuNDAxIEMxMDcuNzM4LDkyLjA1MiAxMDguNzQ1LDkyLjI3OCAxMDkuODkzLDkyLjI3OCBMMTA5Ljg5NCw5Mi4yNzggQzExMS4yMTUsOTIuMjc4IDExMi42NDcsOTEuOTUxIDExNC4xNDgsOTEuMDg0IEMxMTkuNDU5LDg4LjAxNyAxMjMuNzgsODAuNjIxIDEyMy43OCw3NC41MjggQzEyMy43OCw3Mi41NDkgMTIzLjMxNyw3MC45MjkgMTIyLjQ1NCw2OS43NjcgQzEyMi44NjUsNzAuODAyIDEyMy4wNzksNzIuMDQyIDEyMy4wNzksNzMuNDAyIEMxMjMuMDc5LDc5LjY0NSAxMTguNjUzLDg3LjI4NSAxMTMuMjE0LDkwLjQyNSBDMTExLjY0LDkxLjMzNCAxMTAuMTMsOTEuNzQyIDEwOC43MjQsOTEuNzQyIEMxMDguMDgzLDkxLjc0MiAxMDcuNDgxLDkxLjU5MyAxMDYuOTI1LDkxLjQwMSBMMTA2LjkyNSw5MS40MDEgWiIgaWQ9IkZpbGwtMTkiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEzLjA5Nyw5MC4yMyBDMTE4LjQ4MSw4Ny4xMjIgMTIyLjg0NSw3OS41OTQgMTIyLjg0NSw3My40MTYgQzEyMi44NDUsNzEuMzY1IDEyMi4zNjIsNjkuNzI0IDEyMS41MjIsNjguNTU2IEMxMTkuNzM4LDY3LjMwNCAxMTcuMTQ4LDY3LjM2MiAxMTQuMjY1LDY5LjAyNiBDMTA4Ljg4MSw3Mi4xMzQgMTA0LjUxNyw3OS42NjIgMTA0LjUxNyw4NS44NCBDMTA0LjUxNyw4Ny44OTEgMTA1LDg5LjUzMiAxMDUuODQsOTAuNyBDMTA3LjYyNCw5MS45NTIgMTEwLjIxNCw5MS44OTQgMTEzLjA5Nyw5MC4yMyIgaWQ9IkZpbGwtMjAiIGZpbGw9IiNGQUZBRkEiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTA4LjcyNCw5MS42MTQgTDEwOC43MjQsOTEuNjE0IEMxMDcuNTgyLDkxLjYxNCAxMDYuNTY2LDkxLjQwMSAxMDUuNzA1LDkwLjc5NyBDMTA1LjY4NCw5MC43ODMgMTA1LjY2NSw5MC44MTEgMTA1LjY1LDkwLjc5IEMxMDQuNzU2LDg5LjU0NiAxMDQuMjgzLDg3Ljg0MiAxMDQuMjgzLDg1LjgxNyBDMTA0LjI4Myw3OS41NzUgMTA4LjcwOSw3MS45NTMgMTE0LjE0OCw2OC44MTIgQzExNS43MjIsNjcuOTA0IDExNy4yMzIsNjcuNDQ5IDExOC42MzgsNjcuNDQ5IEMxMTkuNzgsNjcuNDQ5IDEyMC43OTYsNjcuNzU4IDEyMS42NTYsNjguMzYyIEMxMjEuNjc4LDY4LjM3NyAxMjEuNjk3LDY4LjM5NyAxMjEuNzEyLDY4LjQxOCBDMTIyLjYwNiw2OS42NjIgMTIzLjA3OSw3MS4zOSAxMjMuMDc5LDczLjQxNSBDMTIzLjA3OSw3OS42NTggMTE4LjY1Myw4Ny4xOTggMTEzLjIxNCw5MC4zMzggQzExMS42NCw5MS4yNDcgMTEwLjEzLDkxLjYxNCAxMDguNzI0LDkxLjYxNCBMMTA4LjcyNCw5MS42MTQgWiBNMTA2LjAwNiw5MC41MDUgQzEwNi43OCw5MS4wMzcgMTA3LjY5NCw5MS4yODEgMTA4LjcyNCw5MS4yODEgQzExMC4wNDcsOTEuMjgxIDExMS40NzgsOTAuODY4IDExMi45OCw5MC4wMDEgQzExOC4yOTEsODYuOTM1IDEyMi42MTEsNzkuNDk2IDEyMi42MTEsNzMuNDAzIEMxMjIuNjExLDcxLjQ5NCAxMjIuMTc3LDY5Ljg4IDEyMS4zNTYsNjguNzE4IEMxMjAuNTgyLDY4LjE4NSAxMTkuNjY4LDY3LjkxOSAxMTguNjM4LDY3LjkxOSBDMTE3LjMxNSw2Ny45MTkgMTE1Ljg4Myw2OC4zNiAxMTQuMzgyLDY5LjIyNyBDMTA5LjA3MSw3Mi4yOTMgMTA0Ljc1MSw3OS43MzMgMTA0Ljc1MSw4NS44MjYgQzEwNC43NTEsODcuNzM1IDEwNS4xODUsODkuMzQzIDEwNi4wMDYsOTAuNTA1IEwxMDYuMDA2LDkwLjUwNSBaIiBpZD0iRmlsbC0yMSIgZmlsbD0iIzYwN0Q4QiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNDkuMzE4LDcuMjYyIEwxMzkuMzM0LDE2LjE0IEwxNTUuMjI3LDI3LjE3MSBMMTYwLjgxNiwyMS4wNTkgTDE0OS4zMTgsNy4yNjIiIGlkPSJGaWxsLTIyIiBmaWxsPSIjRkFGQUZBIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTE2OS42NzYsMTMuODQgTDE1OS45MjgsMTkuNDY3IEMxNTYuMjg2LDIxLjU3IDE1MC40LDIxLjU4IDE0Ni43ODEsMTkuNDkxIEMxNDMuMTYxLDE3LjQwMiAxNDMuMTgsMTQuMDAzIDE0Ni44MjIsMTEuOSBMMTU2LjMxNyw2LjI5MiBMMTQ5LjU4OCwyLjQwNyBMNjcuNzUyLDQ5LjQ3OCBMMTEzLjY3NSw3NS45OTIgTDExNi43NTYsNzQuMjEzIEMxMTcuMzg3LDczLjg0OCAxMTcuNjI1LDczLjMxNSAxMTcuMzc0LDcyLjgyMyBDMTE1LjAxNyw2OC4xOTEgMTE0Ljc4MSw2My4yNzcgMTE2LjY5MSw1OC41NjEgQzEyMi4zMjksNDQuNjQxIDE0MS4yLDMzLjc0NiAxNjUuMzA5LDMwLjQ5MSBDMTczLjQ3OCwyOS4zODggMTgxLjk4OSwyOS41MjQgMTkwLjAxMywzMC44ODUgQzE5MC44NjUsMzEuMDMgMTkxLjc4OSwzMC44OTMgMTkyLjQyLDMwLjUyOCBMMTk1LjUwMSwyOC43NSBMMTY5LjY3NiwxMy44NCIgaWQ9IkZpbGwtMjMiIGZpbGw9IiNGQUZBRkEiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEzLjY3NSw3Ni40NTkgQzExMy41OTQsNzYuNDU5IDExMy41MTQsNzYuNDM4IDExMy40NDIsNzYuMzk3IEw2Ny41MTgsNDkuODgyIEM2Ny4zNzQsNDkuNzk5IDY3LjI4NCw0OS42NDUgNjcuMjg1LDQ5LjQ3OCBDNjcuMjg1LDQ5LjMxMSA2Ny4zNzQsNDkuMTU3IDY3LjUxOSw0OS4wNzMgTDE0OS4zNTUsMi4wMDIgQzE0OS40OTksMS45MTkgMTQ5LjY3NywxLjkxOSAxNDkuODIxLDIuMDAyIEwxNTYuNTUsNS44ODcgQzE1Ni43NzQsNi4wMTcgMTU2Ljg1LDYuMzAyIDE1Ni43MjIsNi41MjYgQzE1Ni41OTIsNi43NDkgMTU2LjMwNyw2LjgyNiAxNTYuMDgzLDYuNjk2IEwxNDkuNTg3LDIuOTQ2IEw2OC42ODcsNDkuNDc5IEwxMTMuNjc1LDc1LjQ1MiBMMTE2LjUyMyw3My44MDggQzExNi43MTUsNzMuNjk3IDExNy4xNDMsNzMuMzk5IDExNi45NTgsNzMuMDM1IEMxMTQuNTQyLDY4LjI4NyAxMTQuMyw2My4yMjEgMTE2LjI1OCw1OC4zODUgQzExOS4wNjQsNTEuNDU4IDEyNS4xNDMsNDUuMTQzIDEzMy44NCw0MC4xMjIgQzE0Mi40OTcsMzUuMTI0IDE1My4zNTgsMzEuNjMzIDE2NS4yNDcsMzAuMDI4IEMxNzMuNDQ1LDI4LjkyMSAxODIuMDM3LDI5LjA1OCAxOTAuMDkxLDMwLjQyNSBDMTkwLjgzLDMwLjU1IDE5MS42NTIsMzAuNDMyIDE5Mi4xODYsMzAuMTI0IEwxOTQuNTY3LDI4Ljc1IEwxNjkuNDQyLDE0LjI0NCBDMTY5LjIxOSwxNC4xMTUgMTY5LjE0MiwxMy44MjkgMTY5LjI3MSwxMy42MDYgQzE2OS40LDEzLjM4MiAxNjkuNjg1LDEzLjMwNiAxNjkuOTA5LDEzLjQzNSBMMTk1LjczNCwyOC4zNDUgQzE5NS44NzksMjguNDI4IDE5NS45NjgsMjguNTgzIDE5NS45NjgsMjguNzUgQzE5NS45NjgsMjguOTE2IDE5NS44NzksMjkuMDcxIDE5NS43MzQsMjkuMTU0IEwxOTIuNjUzLDMwLjkzMyBDMTkxLjkzMiwzMS4zNSAxOTAuODksMzEuNTA4IDE4OS45MzUsMzEuMzQ2IEMxODEuOTcyLDI5Ljk5NSAxNzMuNDc4LDI5Ljg2IDE2NS4zNzIsMzAuOTU0IEMxNTMuNjAyLDMyLjU0MyAxNDIuODYsMzUuOTkzIDEzNC4zMDcsNDAuOTMxIEMxMjUuNzkzLDQ1Ljg0NyAxMTkuODUxLDUyLjAwNCAxMTcuMTI0LDU4LjczNiBDMTE1LjI3LDYzLjMxNCAxMTUuNTAxLDY4LjExMiAxMTcuNzksNzIuNjExIEMxMTguMTYsNzMuMzM2IDExNy44NDUsNzQuMTI0IDExNi45OSw3NC42MTcgTDExMy45MDksNzYuMzk3IEMxMTMuODM2LDc2LjQzOCAxMTMuNzU2LDc2LjQ1OSAxMTMuNjc1LDc2LjQ1OSIgaWQ9IkZpbGwtMjQiIGZpbGw9IiM0NTVBNjQiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTUzLjMxNiwyMS4yNzkgQzE1MC45MDMsMjEuMjc5IDE0OC40OTUsMjAuNzUxIDE0Ni42NjQsMTkuNjkzIEMxNDQuODQ2LDE4LjY0NCAxNDMuODQ0LDE3LjIzMiAxNDMuODQ0LDE1LjcxOCBDMTQzLjg0NCwxNC4xOTEgMTQ0Ljg2LDEyLjc2MyAxNDYuNzA1LDExLjY5OCBMMTU2LjE5OCw2LjA5MSBDMTU2LjMwOSw2LjAyNSAxNTYuNDUyLDYuMDYyIDE1Ni41MTgsNi4xNzMgQzE1Ni41ODMsNi4yODQgMTU2LjU0Nyw2LjQyNyAxNTYuNDM2LDYuNDkzIEwxNDYuOTQsMTIuMTAyIEMxNDUuMjQ0LDEzLjA4MSAxNDQuMzEyLDE0LjM2NSAxNDQuMzEyLDE1LjcxOCBDMTQ0LjMxMiwxNy4wNTggMTQ1LjIzLDE4LjMyNiAxNDYuODk3LDE5LjI4OSBDMTUwLjQ0NiwyMS4zMzggMTU2LjI0LDIxLjMyNyAxNTkuODExLDE5LjI2NSBMMTY5LjU1OSwxMy42MzcgQzE2OS42NywxMy41NzMgMTY5LjgxMywxMy42MTEgMTY5Ljg3OCwxMy43MjMgQzE2OS45NDMsMTMuODM0IDE2OS45MDQsMTMuOTc3IDE2OS43OTMsMTQuMDQyIEwxNjAuMDQ1LDE5LjY3IEMxNTguMTg3LDIwLjc0MiAxNTUuNzQ5LDIxLjI3OSAxNTMuMzE2LDIxLjI3OSIgaWQ9IkZpbGwtMjUiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEzLjY3NSw3NS45OTIgTDY3Ljc2Miw0OS40ODQiIGlkPSJGaWxsLTI2IiBmaWxsPSIjNDU1QTY0Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTExMy42NzUsNzYuMzQyIEMxMTMuNjE1LDc2LjM0MiAxMTMuNTU1LDc2LjMyNyAxMTMuNSw3Ni4yOTUgTDY3LjU4Nyw0OS43ODcgQzY3LjQxOSw0OS42OSA2Ny4zNjIsNDkuNDc2IDY3LjQ1OSw0OS4zMDkgQzY3LjU1Niw0OS4xNDEgNjcuNzcsNDkuMDgzIDY3LjkzNyw0OS4xOCBMMTEzLjg1LDc1LjY4OCBDMTE0LjAxOCw3NS43ODUgMTE0LjA3NSw3NiAxMTMuOTc4LDc2LjE2NyBDMTEzLjkxNCw3Ni4yNzkgMTEzLjc5Niw3Ni4zNDIgMTEzLjY3NSw3Ni4zNDIiIGlkPSJGaWxsLTI3IiBmaWxsPSIjNDU1QTY0Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTY3Ljc2Miw0OS40ODQgTDY3Ljc2MiwxMDMuNDg1IEM2Ny43NjIsMTA0LjU3NSA2OC41MzIsMTA1LjkwMyA2OS40ODIsMTA2LjQ1MiBMMTExLjk1NSwxMzAuOTczIEMxMTIuOTA1LDEzMS41MjIgMTEzLjY3NSwxMzEuMDgzIDExMy42NzUsMTI5Ljk5MyBMMTEzLjY3NSw3NS45OTIiIGlkPSJGaWxsLTI4IiBmaWxsPSIjRkFGQUZBIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTExMi43MjcsMTMxLjU2MSBDMTEyLjQzLDEzMS41NjEgMTEyLjEwNywxMzEuNDY2IDExMS43OCwxMzEuMjc2IEw2OS4zMDcsMTA2Ljc1NSBDNjguMjQ0LDEwNi4xNDIgNjcuNDEyLDEwNC43MDUgNjcuNDEyLDEwMy40ODUgTDY3LjQxMiw0OS40ODQgQzY3LjQxMiw0OS4yOSA2Ny41NjksNDkuMTM0IDY3Ljc2Miw0OS4xMzQgQzY3Ljk1Niw0OS4xMzQgNjguMTEzLDQ5LjI5IDY4LjExMyw0OS40ODQgTDY4LjExMywxMDMuNDg1IEM2OC4xMTMsMTA0LjQ0NSA2OC44MiwxMDUuNjY1IDY5LjY1NywxMDYuMTQ4IEwxMTIuMTMsMTMwLjY3IEMxMTIuNDc0LDEzMC44NjggMTEyLjc5MSwxMzAuOTEzIDExMywxMzAuNzkyIEMxMTMuMjA2LDEzMC42NzMgMTEzLjMyNSwxMzAuMzgxIDExMy4zMjUsMTI5Ljk5MyBMMTEzLjMyNSw3NS45OTIgQzExMy4zMjUsNzUuNzk4IDExMy40ODIsNzUuNjQxIDExMy42NzUsNzUuNjQxIEMxMTMuODY5LDc1LjY0MSAxMTQuMDI1LDc1Ljc5OCAxMTQuMDI1LDc1Ljk5MiBMMTE0LjAyNSwxMjkuOTkzIEMxMTQuMDI1LDEzMC42NDggMTEzLjc4NiwxMzEuMTQ3IDExMy4zNSwxMzEuMzk5IEMxMTMuMTYyLDEzMS41MDcgMTEyLjk1MiwxMzEuNTYxIDExMi43MjcsMTMxLjU2MSIgaWQ9IkZpbGwtMjkiIGZpbGw9IiM0NTVBNjQiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEyLjg2LDQwLjUxMiBDMTEyLjg2LDQwLjUxMiAxMTIuODYsNDAuNTEyIDExMi44NTksNDAuNTEyIEMxMTAuNTQxLDQwLjUxMiAxMDguMzYsMzkuOTkgMTA2LjcxNywzOS4wNDEgQzEwNS4wMTIsMzguMDU3IDEwNC4wNzQsMzYuNzI2IDEwNC4wNzQsMzUuMjkyIEMxMDQuMDc0LDMzLjg0NyAxMDUuMDI2LDMyLjUwMSAxMDYuNzU0LDMxLjUwNCBMMTE4Ljc5NSwyNC41NTEgQzEyMC40NjMsMjMuNTg5IDEyMi42NjksMjMuMDU4IDEyNS4wMDcsMjMuMDU4IEMxMjcuMzI1LDIzLjA1OCAxMjkuNTA2LDIzLjU4MSAxMzEuMTUsMjQuNTMgQzEzMi44NTQsMjUuNTE0IDEzMy43OTMsMjYuODQ1IDEzMy43OTMsMjguMjc4IEMxMzMuNzkzLDI5LjcyNCAxMzIuODQxLDMxLjA2OSAxMzEuMTEzLDMyLjA2NyBMMTE5LjA3MSwzOS4wMTkgQzExNy40MDMsMzkuOTgyIDExNS4xOTcsNDAuNTEyIDExMi44Niw0MC41MTIgTDExMi44Niw0MC41MTIgWiBNMTI1LjAwNywyMy43NTkgQzEyMi43OSwyMy43NTkgMTIwLjcwOSwyNC4yNTYgMTE5LjE0NiwyNS4xNTggTDEwNy4xMDQsMzIuMTEgQzEwNS42MDIsMzIuOTc4IDEwNC43NzQsMzQuMTA4IDEwNC43NzQsMzUuMjkyIEMxMDQuNzc0LDM2LjQ2NSAxMDUuNTg5LDM3LjU4MSAxMDcuMDY3LDM4LjQzNCBDMTA4LjYwNSwzOS4zMjMgMTEwLjY2MywzOS44MTIgMTEyLjg1OSwzOS44MTIgTDExMi44NiwzOS44MTIgQzExNS4wNzYsMzkuODEyIDExNy4xNTgsMzkuMzE1IDExOC43MjEsMzguNDEzIEwxMzAuNzYyLDMxLjQ2IEMxMzIuMjY0LDMwLjU5MyAxMzMuMDkyLDI5LjQ2MyAxMzMuMDkyLDI4LjI3OCBDMTMzLjA5MiwyNy4xMDYgMTMyLjI3OCwyNS45OSAxMzAuOCwyNS4xMzYgQzEyOS4yNjEsMjQuMjQ4IDEyNy4yMDQsMjMuNzU5IDEyNS4wMDcsMjMuNzU5IEwxMjUuMDA3LDIzLjc1OSBaIiBpZD0iRmlsbC0zMCIgZmlsbD0iIzYwN0Q4QiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNjUuNjMsMTYuMjE5IEwxNTkuODk2LDE5LjUzIEMxNTYuNzI5LDIxLjM1OCAxNTEuNjEsMjEuMzY3IDE0OC40NjMsMTkuNTUgQzE0NS4zMTYsMTcuNzMzIDE0NS4zMzIsMTQuNzc4IDE0OC40OTksMTIuOTQ5IEwxNTQuMjMzLDkuNjM5IEwxNjUuNjMsMTYuMjE5IiBpZD0iRmlsbC0zMSIgZmlsbD0iI0ZBRkFGQSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xNTQuMjMzLDEwLjQ0OCBMMTY0LjIyOCwxNi4yMTkgTDE1OS41NDYsMTguOTIzIEMxNTguMTEyLDE5Ljc1IDE1Ni4xOTQsMjAuMjA2IDE1NC4xNDcsMjAuMjA2IEMxNTIuMTE4LDIwLjIwNiAxNTAuMjI0LDE5Ljc1NyAxNDguODE0LDE4Ljk0MyBDMTQ3LjUyNCwxOC4xOTkgMTQ2LjgxNCwxNy4yNDkgMTQ2LjgxNCwxNi4yNjkgQzE0Ni44MTQsMTUuMjc4IDE0Ny41MzcsMTQuMzE0IDE0OC44NSwxMy41NTYgTDE1NC4yMzMsMTAuNDQ4IE0xNTQuMjMzLDkuNjM5IEwxNDguNDk5LDEyLjk0OSBDMTQ1LjMzMiwxNC43NzggMTQ1LjMxNiwxNy43MzMgMTQ4LjQ2MywxOS41NSBDMTUwLjAzMSwyMC40NTUgMTUyLjA4NiwyMC45MDcgMTU0LjE0NywyMC45MDcgQzE1Ni4yMjQsMjAuOTA3IDE1OC4zMDYsMjAuNDQ3IDE1OS44OTYsMTkuNTMgTDE2NS42MywxNi4yMTkgTDE1NC4yMzMsOS42MzkiIGlkPSJGaWxsLTMyIiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTE0NS40NDUsNzIuNjY3IEwxNDUuNDQ1LDcyLjY2NyBDMTQzLjY3Miw3Mi42NjcgMTQyLjIwNCw3MS44MTcgMTQxLjIwMiw3MC40MjIgQzE0MS4xMzUsNzAuMzMgMTQxLjE0NSw3MC4xNDcgMTQxLjIyNSw3MC4wNjYgQzE0MS4zMDUsNjkuOTg1IDE0MS40MzIsNjkuOTQ2IDE0MS41MjUsNzAuMDExIEMxNDIuMzA2LDcwLjU1OSAxNDMuMjMxLDcwLjgyMyAxNDQuMjc2LDcwLjgyMiBDMTQ1LjU5OCw3MC44MjIgMTQ3LjAzLDcwLjM3NiAxNDguNTMyLDY5LjUwOSBDMTUzLjg0Miw2Ni40NDMgMTU4LjE2Myw1OC45ODcgMTU4LjE2Myw1Mi44OTQgQzE1OC4xNjMsNTAuOTY3IDE1Ny43MjEsNDkuMzMyIDE1Ni44ODQsNDguMTY4IEMxNTYuODE4LDQ4LjA3NiAxNTYuODI4LDQ3Ljk0OCAxNTYuOTA4LDQ3Ljg2NyBDMTU2Ljk4OCw0Ny43ODYgMTU3LjExNCw0Ny43NzQgMTU3LjIwOCw0Ny44NCBDMTU4Ljg3OCw0OS4wMTIgMTU5Ljc5OCw1MS4yMiAxNTkuNzk4LDU0LjA1OSBDMTU5Ljc5OCw2MC4zMDEgMTU1LjM3Myw2OC4wNDYgMTQ5LjkzMyw3MS4xODYgQzE0OC4zNiw3Mi4wOTQgMTQ2Ljg1LDcyLjY2NyAxNDUuNDQ1LDcyLjY2NyBMMTQ1LjQ0NSw3Mi42NjcgWiBNMTQyLjQ3Niw3MSBDMTQzLjI5LDcxLjY1MSAxNDQuMjk2LDcyLjAwMiAxNDUuNDQ1LDcyLjAwMiBDMTQ2Ljc2Nyw3Mi4wMDIgMTQ4LjE5OCw3MS41NSAxNDkuNyw3MC42ODIgQzE1NS4wMSw2Ny42MTcgMTU5LjMzMSw2MC4xNTkgMTU5LjMzMSw1NC4wNjUgQzE1OS4zMzEsNTIuMDg1IDE1OC44NjgsNTAuNDM1IDE1OC4wMDYsNDkuMjcyIEMxNTguNDE3LDUwLjMwNyAxNTguNjMsNTEuNTMyIDE1OC42Myw1Mi44OTIgQzE1OC42Myw1OS4xMzQgMTU0LjIwNSw2Ni43NjcgMTQ4Ljc2NSw2OS45MDcgQzE0Ny4xOTIsNzAuODE2IDE0NS42ODEsNzEuMjgzIDE0NC4yNzYsNzEuMjgzIEMxNDMuNjM0LDcxLjI4MyAxNDMuMDMzLDcxLjE5MiAxNDIuNDc2LDcxIEwxNDIuNDc2LDcxIFoiIGlkPSJGaWxsLTMzIiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTE0OC42NDgsNjkuNzA0IEMxNTQuMDMyLDY2LjU5NiAxNTguMzk2LDU5LjA2OCAxNTguMzk2LDUyLjg5MSBDMTU4LjM5Niw1MC44MzkgMTU3LjkxMyw0OS4xOTggMTU3LjA3NCw0OC4wMyBDMTU1LjI4OSw0Ni43NzggMTUyLjY5OSw0Ni44MzYgMTQ5LjgxNiw0OC41MDEgQzE0NC40MzMsNTEuNjA5IDE0MC4wNjgsNTkuMTM3IDE0MC4wNjgsNjUuMzE0IEMxNDAuMDY4LDY3LjM2NSAxNDAuNTUyLDY5LjAwNiAxNDEuMzkxLDcwLjE3NCBDMTQzLjE3Niw3MS40MjcgMTQ1Ljc2NSw3MS4zNjkgMTQ4LjY0OCw2OS43MDQiIGlkPSJGaWxsLTM0IiBmaWxsPSIjRkFGQUZBIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTE0NC4yNzYsNzEuMjc2IEwxNDQuMjc2LDcxLjI3NiBDMTQzLjEzMyw3MS4yNzYgMTQyLjExOCw3MC45NjkgMTQxLjI1Nyw3MC4zNjUgQzE0MS4yMzYsNzAuMzUxIDE0MS4yMTcsNzAuMzMyIDE0MS4yMDIsNzAuMzExIEMxNDAuMzA3LDY5LjA2NyAxMzkuODM1LDY3LjMzOSAxMzkuODM1LDY1LjMxNCBDMTM5LjgzNSw1OS4wNzMgMTQ0LjI2LDUxLjQzOSAxNDkuNyw0OC4yOTggQzE1MS4yNzMsNDcuMzkgMTUyLjc4NCw0Ni45MjkgMTU0LjE4OSw0Ni45MjkgQzE1NS4zMzIsNDYuOTI5IDE1Ni4zNDcsNDcuMjM2IDE1Ny4yMDgsNDcuODM5IEMxNTcuMjI5LDQ3Ljg1NCAxNTcuMjQ4LDQ3Ljg3MyAxNTcuMjYzLDQ3Ljg5NCBDMTU4LjE1Nyw0OS4xMzggMTU4LjYzLDUwLjg2NSAxNTguNjMsNTIuODkxIEMxNTguNjMsNTkuMTMyIDE1NC4yMDUsNjYuNzY2IDE0OC43NjUsNjkuOTA3IEMxNDcuMTkyLDcwLjgxNSAxNDUuNjgxLDcxLjI3NiAxNDQuMjc2LDcxLjI3NiBMMTQ0LjI3Niw3MS4yNzYgWiBNMTQxLjU1OCw3MC4xMDQgQzE0Mi4zMzEsNzAuNjM3IDE0My4yNDUsNzEuMDA1IDE0NC4yNzYsNzEuMDA1IEMxNDUuNTk4LDcxLjAwNSAxNDcuMDMsNzAuNDY3IDE0OC41MzIsNjkuNiBDMTUzLjg0Miw2Ni41MzQgMTU4LjE2Myw1OS4wMzMgMTU4LjE2Myw1Mi45MzkgQzE1OC4xNjMsNTEuMDMxIDE1Ny43MjksNDkuMzg1IDE1Ni45MDcsNDguMjIzIEMxNTYuMTMzLDQ3LjY5MSAxNTUuMjE5LDQ3LjQwOSAxNTQuMTg5LDQ3LjQwOSBDMTUyLjg2Nyw0Ny40MDkgMTUxLjQzNSw0Ny44NDIgMTQ5LjkzMyw0OC43MDkgQzE0NC42MjMsNTEuNzc1IDE0MC4zMDIsNTkuMjczIDE0MC4zMDIsNjUuMzY2IEMxNDAuMzAyLDY3LjI3NiAxNDAuNzM2LDY4Ljk0MiAxNDEuNTU4LDcwLjEwNCBMMTQxLjU1OCw3MC4xMDQgWiIgaWQ9IkZpbGwtMzUiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTUwLjcyLDY1LjM2MSBMMTUwLjM1Nyw2NS4wNjYgQzE1MS4xNDcsNjQuMDkyIDE1MS44NjksNjMuMDQgMTUyLjUwNSw2MS45MzggQzE1My4zMTMsNjAuNTM5IDE1My45NzgsNTkuMDY3IDE1NC40ODIsNTcuNTYzIEwxNTQuOTI1LDU3LjcxMiBDMTU0LjQxMiw1OS4yNDUgMTUzLjczMyw2MC43NDUgMTUyLjkxLDYyLjE3MiBDMTUyLjI2Miw2My4yOTUgMTUxLjUyNSw2NC4zNjggMTUwLjcyLDY1LjM2MSIgaWQ9IkZpbGwtMzYiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTE1LjkxNyw4NC41MTQgTDExNS41NTQsODQuMjIgQzExNi4zNDQsODMuMjQ1IDExNy4wNjYsODIuMTk0IDExNy43MDIsODEuMDkyIEMxMTguNTEsNzkuNjkyIDExOS4xNzUsNzguMjIgMTE5LjY3OCw3Ni43MTcgTDEyMC4xMjEsNzYuODY1IEMxMTkuNjA4LDc4LjM5OCAxMTguOTMsNzkuODk5IDExOC4xMDYsODEuMzI2IEMxMTcuNDU4LDgyLjQ0OCAxMTYuNzIyLDgzLjUyMSAxMTUuOTE3LDg0LjUxNCIgaWQ9IkZpbGwtMzciIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTE0LDEzMC40NzYgTDExNCwxMzAuMDA4IEwxMTQsNzYuMDUyIEwxMTQsNzUuNTg0IEwxMTQsNzYuMDUyIEwxMTQsMTMwLjAwOCBMMTE0LDEzMC40NzYiIGlkPSJGaWxsLTM4IiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICA8ZyBpZD0iSW1wb3J0ZWQtTGF5ZXJzLUNvcHkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYyLjAwMDAwMCwgMC4wMDAwMDApIiBza2V0Y2g6dHlwZT0iTVNTaGFwZUdyb3VwIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTkuODIyLDM3LjQ3NCBDMTkuODM5LDM3LjMzOSAxOS43NDcsMzcuMTk0IDE5LjU1NSwzNy4wODIgQzE5LjIyOCwzNi44OTQgMTguNzI5LDM2Ljg3MiAxOC40NDYsMzcuMDM3IEwxMi40MzQsNDAuNTA4IEMxMi4zMDMsNDAuNTg0IDEyLjI0LDQwLjY4NiAxMi4yNDMsNDAuNzkzIEMxMi4yNDUsNDAuOTI1IDEyLjI0NSw0MS4yNTQgMTIuMjQ1LDQxLjM3MSBMMTIuMjQ1LDQxLjQxNCBMMTIuMjM4LDQxLjU0MiBDOC4xNDgsNDMuODg3IDUuNjQ3LDQ1LjMyMSA1LjY0Nyw0NS4zMjEgQzUuNjQ2LDQ1LjMyMSAzLjU3LDQ2LjM2NyAyLjg2LDUwLjUxMyBDMi44Niw1MC41MTMgMS45NDgsNTcuNDc0IDEuOTYyLDcwLjI1OCBDMS45NzcsODIuODI4IDIuNTY4LDg3LjMyOCAzLjEyOSw5MS42MDkgQzMuMzQ5LDkzLjI5MyA2LjEzLDkzLjczNCA2LjEzLDkzLjczNCBDNi40NjEsOTMuNzc0IDYuODI4LDkzLjcwNyA3LjIxLDkzLjQ4NiBMODIuNDgzLDQ5LjkzNSBDODQuMjkxLDQ4Ljg2NiA4NS4xNSw0Ni4yMTYgODUuNTM5LDQzLjY1MSBDODYuNzUyLDM1LjY2MSA4Ny4yMTQsMTAuNjczIDg1LjI2NCwzLjc3MyBDODUuMDY4LDMuMDggODQuNzU0LDIuNjkgODQuMzk2LDIuNDkxIEw4Mi4zMSwxLjcwMSBDODEuNTgzLDEuNzI5IDgwLjg5NCwyLjE2OCA4MC43NzYsMi4yMzYgQzgwLjYzNiwyLjMxNyA0MS44MDcsMjQuNTg1IDIwLjAzMiwzNy4wNzIgTDE5LjgyMiwzNy40NzQiIGlkPSJGaWxsLTEiIGZpbGw9IiNGRkZGRkYiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNODIuMzExLDEuNzAxIEw4NC4zOTYsMi40OTEgQzg0Ljc1NCwyLjY5IDg1LjA2OCwzLjA4IDg1LjI2NCwzLjc3MyBDODcuMjEzLDEwLjY3MyA4Ni43NTEsMzUuNjYgODUuNTM5LDQzLjY1MSBDODUuMTQ5LDQ2LjIxNiA4NC4yOSw0OC44NjYgODIuNDgzLDQ5LjkzNSBMNy4yMSw5My40ODYgQzYuODk3LDkzLjY2NyA2LjU5NSw5My43NDQgNi4zMTQsOTMuNzQ0IEw2LjEzMSw5My43MzMgQzYuMTMxLDkzLjczNCAzLjM0OSw5My4yOTMgMy4xMjgsOTEuNjA5IEMyLjU2OCw4Ny4zMjcgMS45NzcsODIuODI4IDEuOTYzLDcwLjI1OCBDMS45NDgsNTcuNDc0IDIuODYsNTAuNTEzIDIuODYsNTAuNTEzIEMzLjU3LDQ2LjM2NyA1LjY0Nyw0NS4zMjEgNS42NDcsNDUuMzIxIEM1LjY0Nyw0NS4zMjEgOC4xNDgsNDMuODg3IDEyLjIzOCw0MS41NDIgTDEyLjI0NSw0MS40MTQgTDEyLjI0NSw0MS4zNzEgQzEyLjI0NSw0MS4yNTQgMTIuMjQ1LDQwLjkyNSAxMi4yNDMsNDAuNzkzIEMxMi4yNCw0MC42ODYgMTIuMzAyLDQwLjU4MyAxMi40MzQsNDAuNTA4IEwxOC40NDYsMzcuMDM2IEMxOC41NzQsMzYuOTYyIDE4Ljc0NiwzNi45MjYgMTguOTI3LDM2LjkyNiBDMTkuMTQ1LDM2LjkyNiAxOS4zNzYsMzYuOTc5IDE5LjU1NCwzNy4wODIgQzE5Ljc0NywzNy4xOTQgMTkuODM5LDM3LjM0IDE5LjgyMiwzNy40NzQgTDIwLjAzMywzNy4wNzIgQzQxLjgwNiwyNC41ODUgODAuNjM2LDIuMzE4IDgwLjc3NywyLjIzNiBDODAuODk0LDIuMTY4IDgxLjU4MywxLjcyOSA4Mi4zMTEsMS43MDEgTTgyLjMxMSwwLjcwNCBMODIuMjcyLDAuNzA1IEM4MS42NTQsMC43MjggODAuOTg5LDAuOTQ5IDgwLjI5OCwxLjM2MSBMODAuMjc3LDEuMzczIEM4MC4xMjksMS40NTggNTkuNzY4LDEzLjEzNSAxOS43NTgsMzYuMDc5IEMxOS41LDM1Ljk4MSAxOS4yMTQsMzUuOTI5IDE4LjkyNywzNS45MjkgQzE4LjU2MiwzNS45MjkgMTguMjIzLDM2LjAxMyAxNy45NDcsMzYuMTczIEwxMS45MzUsMzkuNjQ0IEMxMS40OTMsMzkuODk5IDExLjIzNiw0MC4zMzQgMTEuMjQ2LDQwLjgxIEwxMS4yNDcsNDAuOTYgTDUuMTY3LDQ0LjQ0NyBDNC43OTQsNDQuNjQ2IDIuNjI1LDQ1Ljk3OCAxLjg3Nyw1MC4zNDUgTDEuODcxLDUwLjM4NCBDMS44NjIsNTAuNDU0IDAuOTUxLDU3LjU1NyAwLjk2NSw3MC4yNTkgQzAuOTc5LDgyLjg3OSAxLjU2OCw4Ny4zNzUgMi4xMzcsOTEuNzI0IEwyLjEzOSw5MS43MzkgQzIuNDQ3LDk0LjA5NCA1LjYxNCw5NC42NjIgNS45NzUsOTQuNzE5IEw2LjAwOSw5NC43MjMgQzYuMTEsOTQuNzM2IDYuMjEzLDk0Ljc0MiA2LjMxNCw5NC43NDIgQzYuNzksOTQuNzQyIDcuMjYsOTQuNjEgNy43MSw5NC4zNSBMODIuOTgzLDUwLjc5OCBDODQuNzk0LDQ5LjcyNyA4NS45ODIsNDcuMzc1IDg2LjUyNSw0My44MDEgQzg3LjcxMSwzNS45ODcgODguMjU5LDEwLjcwNSA4Ni4yMjQsMy41MDIgQzg1Ljk3MSwyLjYwOSA4NS41MiwxLjk3NSA4NC44ODEsMS42MiBMODQuNzQ5LDEuNTU4IEw4Mi42NjQsMC43NjkgQzgyLjU1MSwwLjcyNSA4Mi40MzEsMC43MDQgODIuMzExLDAuNzA0IiBpZD0iRmlsbC0yIiBmaWxsPSIjNDU1QTY0Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTY2LjI2NywxMS41NjUgTDY3Ljc2MiwxMS45OTkgTDExLjQyMyw0NC4zMjUiIGlkPSJGaWxsLTMiIGZpbGw9IiNGRkZGRkYiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTIuMjAyLDkwLjU0NSBDMTIuMDI5LDkwLjU0NSAxMS44NjIsOTAuNDU1IDExLjc2OSw5MC4yOTUgQzExLjYzMiw5MC4wNTcgMTEuNzEzLDg5Ljc1MiAxMS45NTIsODkuNjE0IEwzMC4zODksNzguOTY5IEMzMC42MjgsNzguODMxIDMwLjkzMyw3OC45MTMgMzEuMDcxLDc5LjE1MiBDMzEuMjA4LDc5LjM5IDMxLjEyNyw3OS42OTYgMzAuODg4LDc5LjgzMyBMMTIuNDUxLDkwLjQ3OCBMMTIuMjAyLDkwLjU0NSIgaWQ9IkZpbGwtNCIgZmlsbD0iIzYwN0Q4QiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMy43NjQsNDIuNjU0IEwxMy42NTYsNDIuNTkyIEwxMy43MDIsNDIuNDIxIEwxOC44MzcsMzkuNDU3IEwxOS4wMDcsMzkuNTAyIEwxOC45NjIsMzkuNjczIEwxMy44MjcsNDIuNjM3IEwxMy43NjQsNDIuNjU0IiBpZD0iRmlsbC01IiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTguNTIsOTAuMzc1IEw4LjUyLDQ2LjQyMSBMOC41ODMsNDYuMzg1IEw3NS44NCw3LjU1NCBMNzUuODQsNTEuNTA4IEw3NS43NzgsNTEuNTQ0IEw4LjUyLDkwLjM3NSBMOC41Miw5MC4zNzUgWiBNOC43Nyw0Ni41NjQgTDguNzcsODkuOTQ0IEw3NS41OTEsNTEuMzY1IEw3NS41OTEsNy45ODUgTDguNzcsNDYuNTY0IEw4Ljc3LDQ2LjU2NCBaIiBpZD0iRmlsbC02IiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTI0Ljk4Niw4My4xODIgQzI0Ljc1Niw4My4zMzEgMjQuMzc0LDgzLjU2NiAyNC4xMzcsODMuNzA1IEwxMi42MzIsOTAuNDA2IEMxMi4zOTUsOTAuNTQ1IDEyLjQyNiw5MC42NTggMTIuNyw5MC42NTggTDEzLjI2NSw5MC42NTggQzEzLjU0LDkwLjY1OCAxMy45NTgsOTAuNTQ1IDE0LjE5NSw5MC40MDYgTDI1LjcsODMuNzA1IEMyNS45MzcsODMuNTY2IDI2LjEyOCw4My40NTIgMjYuMTI1LDgzLjQ0OSBDMjYuMTIyLDgzLjQ0NyAyNi4xMTksODMuMjIgMjYuMTE5LDgyLjk0NiBDMjYuMTE5LDgyLjY3MiAyNS45MzEsODIuNTY5IDI1LjcwMSw4Mi43MTkgTDI0Ljk4Niw4My4xODIiIGlkPSJGaWxsLTciIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTMuMjY2LDkwLjc4MiBMMTIuNyw5MC43ODIgQzEyLjUsOTAuNzgyIDEyLjM4NCw5MC43MjYgMTIuMzU0LDkwLjYxNiBDMTIuMzI0LDkwLjUwNiAxMi4zOTcsOTAuMzk5IDEyLjU2OSw5MC4yOTkgTDI0LjA3NCw4My41OTcgQzI0LjMxLDgzLjQ1OSAyNC42ODksODMuMjI2IDI0LjkxOCw4My4wNzggTDI1LjYzMyw4Mi42MTQgQzI1LjcyMyw4Mi41NTUgMjUuODEzLDgyLjUyNSAyNS44OTksODIuNTI1IEMyNi4wNzEsODIuNTI1IDI2LjI0NCw4Mi42NTUgMjYuMjQ0LDgyLjk0NiBDMjYuMjQ0LDgzLjE2IDI2LjI0NSw4My4zMDkgMjYuMjQ3LDgzLjM4MyBMMjYuMjUzLDgzLjM4NyBMMjYuMjQ5LDgzLjQ1NiBDMjYuMjQ2LDgzLjUzMSAyNi4yNDYsODMuNTMxIDI1Ljc2Myw4My44MTIgTDE0LjI1OCw5MC41MTQgQzE0LDkwLjY2NSAxMy41NjQsOTAuNzgyIDEzLjI2Niw5MC43ODIgTDEzLjI2Niw5MC43ODIgWiBNMTIuNjY2LDkwLjUzMiBMMTIuNyw5MC41MzMgTDEzLjI2Niw5MC41MzMgQzEzLjUxOCw5MC41MzMgMTMuOTE1LDkwLjQyNSAxNC4xMzIsOTAuMjk5IEwyNS42MzcsODMuNTk3IEMyNS44MDUsODMuNDk5IDI1LjkzMSw4My40MjQgMjUuOTk4LDgzLjM4MyBDMjUuOTk0LDgzLjI5OSAyNS45OTQsODMuMTY1IDI1Ljk5NCw4Mi45NDYgTDI1Ljg5OSw4Mi43NzUgTDI1Ljc2OCw4Mi44MjQgTDI1LjA1NCw4My4yODcgQzI0LjgyMiw4My40MzcgMjQuNDM4LDgzLjY3MyAyNC4yLDgzLjgxMiBMMTIuNjk1LDkwLjUxNCBMMTIuNjY2LDkwLjUzMiBMMTIuNjY2LDkwLjUzMiBaIiBpZD0iRmlsbC04IiBmaWxsPSIjNjA3RDhCIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTEzLjI2Niw4OS44NzEgTDEyLjcsODkuODcxIEMxMi41LDg5Ljg3MSAxMi4zODQsODkuODE1IDEyLjM1NCw4OS43MDUgQzEyLjMyNCw4OS41OTUgMTIuMzk3LDg5LjQ4OCAxMi41NjksODkuMzg4IEwyNC4wNzQsODIuNjg2IEMyNC4zMzIsODIuNTM1IDI0Ljc2OCw4Mi40MTggMjUuMDY3LDgyLjQxOCBMMjUuNjMyLDgyLjQxOCBDMjUuODMyLDgyLjQxOCAyNS45NDgsODIuNDc0IDI1Ljk3OCw4Mi41ODQgQzI2LjAwOCw4Mi42OTQgMjUuOTM1LDgyLjgwMSAyNS43NjMsODIuOTAxIEwxNC4yNTgsODkuNjAzIEMxNCw4OS43NTQgMTMuNTY0LDg5Ljg3MSAxMy4yNjYsODkuODcxIEwxMy4yNjYsODkuODcxIFogTTEyLjY2Niw4OS42MjEgTDEyLjcsODkuNjIyIEwxMy4yNjYsODkuNjIyIEMxMy41MTgsODkuNjIyIDEzLjkxNSw4OS41MTUgMTQuMTMyLDg5LjM4OCBMMjUuNjM3LDgyLjY4NiBMMjUuNjY3LDgyLjY2OCBMMjUuNjMyLDgyLjY2NyBMMjUuMDY3LDgyLjY2NyBDMjQuODE1LDgyLjY2NyAyNC40MTgsODIuNzc1IDI0LjIsODIuOTAxIEwxMi42OTUsODkuNjAzIEwxMi42NjYsODkuNjIxIEwxMi42NjYsODkuNjIxIFoiIGlkPSJGaWxsLTkiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTIuMzcsOTAuODAxIEwxMi4zNyw4OS41NTQgTDEyLjM3LDkwLjgwMSIgaWQ9IkZpbGwtMTAiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNi4xMyw5My45MDEgQzUuMzc5LDkzLjgwOCA0LjgxNiw5My4xNjQgNC42OTEsOTIuNTI1IEMzLjg2LDg4LjI4NyAzLjU0LDgzLjc0MyAzLjUyNiw3MS4xNzMgQzMuNTExLDU4LjM4OSA0LjQyMyw1MS40MjggNC40MjMsNTEuNDI4IEM1LjEzNCw0Ny4yODIgNy4yMSw0Ni4yMzYgNy4yMSw0Ni4yMzYgQzcuMjEsNDYuMjM2IDgxLjY2NywzLjI1IDgyLjA2OSwzLjAxNyBDODIuMjkyLDIuODg4IDg0LjU1NiwxLjQzMyA4NS4yNjQsMy45NCBDODcuMjE0LDEwLjg0IDg2Ljc1MiwzNS44MjcgODUuNTM5LDQzLjgxOCBDODUuMTUsNDYuMzgzIDg0LjI5MSw0OS4wMzMgODIuNDgzLDUwLjEwMSBMNy4yMSw5My42NTMgQzYuODI4LDkzLjg3NCA2LjQ2MSw5My45NDEgNi4xMyw5My45MDEgQzYuMTMsOTMuOTAxIDMuMzQ5LDkzLjQ2IDMuMTI5LDkxLjc3NiBDMi41NjgsODcuNDk1IDEuOTc3LDgyLjk5NSAxLjk2Miw3MC40MjUgQzEuOTQ4LDU3LjY0MSAyLjg2LDUwLjY4IDIuODYsNTAuNjggQzMuNTcsNDYuNTM0IDUuNjQ3LDQ1LjQ4OSA1LjY0Nyw0NS40ODkgQzUuNjQ2LDQ1LjQ4OSA4LjA2NSw0NC4wOTIgMTIuMjQ1LDQxLjY3OSBMMTMuMTE2LDQxLjU2IEwxOS43MTUsMzcuNzMgTDE5Ljc2MSwzNy4yNjkgTDYuMTMsOTMuOTAxIiBpZD0iRmlsbC0xMSIgZmlsbD0iI0ZBRkFGQSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik02LjMxNyw5NC4xNjEgTDYuMTAyLDk0LjE0OCBMNi4xMDEsOTQuMTQ4IEw1Ljg1Nyw5NC4xMDEgQzUuMTM4LDkzLjk0NSAzLjA4NSw5My4zNjUgMi44ODEsOTEuODA5IEMyLjMxMyw4Ny40NjkgMS43MjcsODIuOTk2IDEuNzEzLDcwLjQyNSBDMS42OTksNTcuNzcxIDIuNjA0LDUwLjcxOCAyLjYxMyw1MC42NDggQzMuMzM4LDQ2LjQxNyA1LjQ0NSw0NS4zMSA1LjUzNSw0NS4yNjYgTDEyLjE2Myw0MS40MzkgTDEzLjAzMyw0MS4zMiBMMTkuNDc5LDM3LjU3OCBMMTkuNTEzLDM3LjI0NCBDMTkuNTI2LDM3LjEwNyAxOS42NDcsMzcuMDA4IDE5Ljc4NiwzNy4wMjEgQzE5LjkyMiwzNy4wMzQgMjAuMDIzLDM3LjE1NiAyMC4wMDksMzcuMjkzIEwxOS45NSwzNy44ODIgTDEzLjE5OCw0MS44MDEgTDEyLjMyOCw0MS45MTkgTDUuNzcyLDQ1LjcwNCBDNS43NDEsNDUuNzIgMy43ODIsNDYuNzcyIDMuMTA2LDUwLjcyMiBDMy4wOTksNTAuNzgyIDIuMTk4LDU3LjgwOCAyLjIxMiw3MC40MjQgQzIuMjI2LDgyLjk2MyAyLjgwOSw4Ny40MiAzLjM3Myw5MS43MjkgQzMuNDY0LDkyLjQyIDQuMDYyLDkyLjg4MyA0LjY4Miw5My4xODEgQzQuNTY2LDkyLjk4NCA0LjQ4Niw5Mi43NzYgNC40NDYsOTIuNTcyIEMzLjY2NSw4OC41ODggMy4yOTEsODQuMzcgMy4yNzYsNzEuMTczIEMzLjI2Miw1OC41MiA0LjE2Nyw1MS40NjYgNC4xNzYsNTEuMzk2IEM0LjkwMSw0Ny4xNjUgNy4wMDgsNDYuMDU5IDcuMDk4LDQ2LjAxNCBDNy4wOTQsNDYuMDE1IDgxLjU0MiwzLjAzNCA4MS45NDQsMi44MDIgTDgxLjk3MiwyLjc4NSBDODIuODc2LDIuMjQ3IDgzLjY5MiwyLjA5NyA4NC4zMzIsMi4zNTIgQzg0Ljg4NywyLjU3MyA4NS4yODEsMy4wODUgODUuNTA0LDMuODcyIEM4Ny41MTgsMTEgODYuOTY0LDM2LjA5MSA4NS43ODUsNDMuODU1IEM4NS4yNzgsNDcuMTk2IDg0LjIxLDQ5LjM3IDgyLjYxLDUwLjMxNyBMNy4zMzUsOTMuODY5IEM2Ljk5OSw5NC4wNjMgNi42NTgsOTQuMTYxIDYuMzE3LDk0LjE2MSBMNi4zMTcsOTQuMTYxIFogTTYuMTcsOTMuNjU0IEM2LjQ2Myw5My42OSA2Ljc3NCw5My42MTcgNy4wODUsOTMuNDM3IEw4Mi4zNTgsNDkuODg2IEM4NC4xODEsNDguODA4IDg0Ljk2LDQ1Ljk3MSA4NS4yOTIsNDMuNzggQzg2LjQ2NiwzNi4wNDkgODcuMDIzLDExLjA4NSA4NS4wMjQsNC4wMDggQzg0Ljg0NiwzLjM3NyA4NC41NTEsMi45NzYgODQuMTQ4LDIuODE2IEM4My42NjQsMi42MjMgODIuOTgyLDIuNzY0IDgyLjIyNywzLjIxMyBMODIuMTkzLDMuMjM0IEM4MS43OTEsMy40NjYgNy4zMzUsNDYuNDUyIDcuMzM1LDQ2LjQ1MiBDNy4zMDQsNDYuNDY5IDUuMzQ2LDQ3LjUyMSA0LjY2OSw1MS40NzEgQzQuNjYyLDUxLjUzIDMuNzYxLDU4LjU1NiAzLjc3NSw3MS4xNzMgQzMuNzksODQuMzI4IDQuMTYxLDg4LjUyNCA0LjkzNiw5Mi40NzYgQzUuMDI2LDkyLjkzNyA1LjQxMiw5My40NTkgNS45NzMsOTMuNjE1IEM2LjA4Nyw5My42NCA2LjE1OCw5My42NTIgNi4xNjksOTMuNjU0IEw2LjE3LDkzLjY1NCBMNi4xNyw5My42NTQgWiIgaWQ9IkZpbGwtMTIiIGZpbGw9IiM0NTVBNjQiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNy4zMTcsNjguOTgyIEM3LjgwNiw2OC43MDEgOC4yMDIsNjguOTI2IDguMjAyLDY5LjQ4NyBDOC4yMDIsNzAuMDQ3IDcuODA2LDcwLjczIDcuMzE3LDcxLjAxMiBDNi44MjksNzEuMjk0IDYuNDMzLDcxLjA2OSA2LjQzMyw3MC41MDggQzYuNDMzLDY5Ljk0OCA2LjgyOSw2OS4yNjUgNy4zMTcsNjguOTgyIiBpZD0iRmlsbC0xMyIgZmlsbD0iI0ZGRkZGRiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik02LjkyLDcxLjEzMyBDNi42MzEsNzEuMTMzIDYuNDMzLDcwLjkwNSA2LjQzMyw3MC41MDggQzYuNDMzLDY5Ljk0OCA2LjgyOSw2OS4yNjUgNy4zMTcsNjguOTgyIEM3LjQ2LDY4LjkgNy41OTUsNjguODYxIDcuNzE0LDY4Ljg2MSBDOC4wMDMsNjguODYxIDguMjAyLDY5LjA5IDguMjAyLDY5LjQ4NyBDOC4yMDIsNzAuMDQ3IDcuODA2LDcwLjczIDcuMzE3LDcxLjAxMiBDNy4xNzQsNzEuMDk0IDcuMDM5LDcxLjEzMyA2LjkyLDcxLjEzMyBNNy43MTQsNjguNjc0IEM3LjU1Nyw2OC42NzQgNy4zOTIsNjguNzIzIDcuMjI0LDY4LjgyMSBDNi42NzYsNjkuMTM4IDYuMjQ2LDY5Ljg3OSA2LjI0Niw3MC41MDggQzYuMjQ2LDcwLjk5NCA2LjUxNyw3MS4zMiA2LjkyLDcxLjMyIEM3LjA3OCw3MS4zMiA3LjI0Myw3MS4yNzEgNy40MTEsNzEuMTc0IEM3Ljk1OSw3MC44NTcgOC4zODksNzAuMTE3IDguMzg5LDY5LjQ4NyBDOC4zODksNjkuMDAxIDguMTE3LDY4LjY3NCA3LjcxNCw2OC42NzQiIGlkPSJGaWxsLTE0IiBmaWxsPSIjODA5N0EyIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTYuOTIsNzAuOTQ3IEM2LjY0OSw3MC45NDcgNi42MjEsNzAuNjQgNi42MjEsNzAuNTA4IEM2LjYyMSw3MC4wMTcgNi45ODIsNjkuMzkyIDcuNDExLDY5LjE0NSBDNy41MjEsNjkuMDgyIDcuNjI1LDY5LjA0OSA3LjcxNCw2OS4wNDkgQzcuOTg2LDY5LjA0OSA4LjAxNSw2OS4zNTUgOC4wMTUsNjkuNDg3IEM4LjAxNSw2OS45NzggNy42NTIsNzAuNjAzIDcuMjI0LDcwLjg1MSBDNy4xMTUsNzAuOTE0IDcuMDEsNzAuOTQ3IDYuOTIsNzAuOTQ3IE03LjcxNCw2OC44NjEgQzcuNTk1LDY4Ljg2MSA3LjQ2LDY4LjkgNy4zMTcsNjguOTgyIEM2LjgyOSw2OS4yNjUgNi40MzMsNjkuOTQ4IDYuNDMzLDcwLjUwOCBDNi40MzMsNzAuOTA1IDYuNjMxLDcxLjEzMyA2LjkyLDcxLjEzMyBDNy4wMzksNzEuMTMzIDcuMTc0LDcxLjA5NCA3LjMxNyw3MS4wMTIgQzcuODA2LDcwLjczIDguMjAyLDcwLjA0NyA4LjIwMiw2OS40ODcgQzguMjAyLDY5LjA5IDguMDAzLDY4Ljg2MSA3LjcxNCw2OC44NjEiIGlkPSJGaWxsLTE1IiBmaWxsPSIjODA5N0EyIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuNDQ0LDg1LjM1IEM3LjcwOCw4NS4xOTggNy45MjEsODUuMzE5IDcuOTIxLDg1LjYyMiBDNy45MjEsODUuOTI1IDcuNzA4LDg2LjI5MiA3LjQ0NCw4Ni40NDQgQzcuMTgxLDg2LjU5NyA2Ljk2Nyw4Ni40NzUgNi45NjcsODYuMTczIEM2Ljk2Nyw4NS44NzEgNy4xODEsODUuNTAyIDcuNDQ0LDg1LjM1IiBpZD0iRmlsbC0xNiIgZmlsbD0iI0ZGRkZGRiI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik03LjIzLDg2LjUxIEM3LjA3NCw4Ni41MSA2Ljk2Nyw4Ni4zODcgNi45NjcsODYuMTczIEM2Ljk2Nyw4NS44NzEgNy4xODEsODUuNTAyIDcuNDQ0LDg1LjM1IEM3LjUyMSw4NS4zMDUgNy41OTQsODUuMjg0IDcuNjU4LDg1LjI4NCBDNy44MTQsODUuMjg0IDcuOTIxLDg1LjQwOCA3LjkyMSw4NS42MjIgQzcuOTIxLDg1LjkyNSA3LjcwOCw4Ni4yOTIgNy40NDQsODYuNDQ0IEM3LjM2Nyw4Ni40ODkgNy4yOTQsODYuNTEgNy4yMyw4Ni41MSBNNy42NTgsODUuMDk4IEM3LjU1OCw4NS4wOTggNy40NTUsODUuMTI3IDcuMzUxLDg1LjE4OCBDNy4wMzEsODUuMzczIDYuNzgxLDg1LjgwNiA2Ljc4MSw4Ni4xNzMgQzYuNzgxLDg2LjQ4MiA2Ljk2Niw4Ni42OTcgNy4yMyw4Ni42OTcgQzcuMzMsODYuNjk3IDcuNDMzLDg2LjY2NiA3LjUzOCw4Ni42MDcgQzcuODU4LDg2LjQyMiA4LjEwOCw4NS45ODkgOC4xMDgsODUuNjIyIEM4LjEwOCw4NS4zMTMgNy45MjMsODUuMDk4IDcuNjU4LDg1LjA5OCIgaWQ9IkZpbGwtMTciIGZpbGw9IiM4MDk3QTIiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNy4yMyw4Ni4zMjIgTDcuMTU0LDg2LjE3MyBDNy4xNTQsODUuOTM4IDcuMzMzLDg1LjYyOSA3LjUzOCw4NS41MTIgTDcuNjU4LDg1LjQ3MSBMNy43MzQsODUuNjIyIEM3LjczNCw4NS44NTYgNy41NTUsODYuMTY0IDcuMzUxLDg2LjI4MiBMNy4yMyw4Ni4zMjIgTTcuNjU4LDg1LjI4NCBDNy41OTQsODUuMjg0IDcuNTIxLDg1LjMwNSA3LjQ0NCw4NS4zNSBDNy4xODEsODUuNTAyIDYuOTY3LDg1Ljg3MSA2Ljk2Nyw4Ni4xNzMgQzYuOTY3LDg2LjM4NyA3LjA3NCw4Ni41MSA3LjIzLDg2LjUxIEM3LjI5NCw4Ni41MSA3LjM2Nyw4Ni40ODkgNy40NDQsODYuNDQ0IEM3LjcwOCw4Ni4yOTIgNy45MjEsODUuOTI1IDcuOTIxLDg1LjYyMiBDNy45MjEsODUuNDA4IDcuODE0LDg1LjI4NCA3LjY1OCw4NS4yODQiIGlkPSJGaWxsLTE4IiBmaWxsPSIjODA5N0EyIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTc3LjI3OCw3Ljc2OSBMNzcuMjc4LDUxLjQzNiBMMTAuMjA4LDkwLjE2IEwxMC4yMDgsNDYuNDkzIEw3Ny4yNzgsNy43NjkiIGlkPSJGaWxsLTE5IiBmaWxsPSIjNDU1QTY0Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTEwLjA4Myw5MC4zNzUgTDEwLjA4Myw0Ni40MjEgTDEwLjE0Niw0Ni4zODUgTDc3LjQwMyw3LjU1NCBMNzcuNDAzLDUxLjUwOCBMNzcuMzQxLDUxLjU0NCBMMTAuMDgzLDkwLjM3NSBMMTAuMDgzLDkwLjM3NSBaIE0xMC4zMzMsNDYuNTY0IEwxMC4zMzMsODkuOTQ0IEw3Ny4xNTQsNTEuMzY1IEw3Ny4xNTQsNy45ODUgTDEwLjMzMyw0Ni41NjQgTDEwLjMzMyw0Ni41NjQgWiIgaWQ9IkZpbGwtMjAiIGZpbGw9IiM2MDdEOEIiPjwvcGF0aD4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMjUuNzM3LDg4LjY0NyBMMTE4LjA5OCw5MS45ODEgTDExOC4wOTgsODQgTDEwNi42MzksODguNzEzIEwxMDYuNjM5LDk2Ljk4MiBMOTksMTAwLjMxNSBMMTEyLjM2OSwxMDMuOTYxIEwxMjUuNzM3LDg4LjY0NyIgaWQ9IkltcG9ydGVkLUxheWVycy1Db3B5LTIiIGZpbGw9IiM0NTVBNjQiIHNrZXRjaDp0eXBlPSJNU1NoYXBlR3JvdXAiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+")};var ie="CardboardV1",oe="WEBVR_CARDBOARD_VIEWER";function r(){try{this.selectedKey=localStorage.getItem(oe)}catch(e){console.error("Failed to load viewer profile: %s",e)}this.selectedKey||(this.selectedKey=ie),this.dialog=this.createDialog_(n.Viewers),this.root=null,this.onChangeCallbacks_=[]}r.prototype.show=function(e){this.root=e,e.appendChild(this.dialog);var t=this.dialog.querySelector("#"+this.selectedKey);t.checked=!0,this.dialog.style.display="block"},r.prototype.hide=function(){this.root&&this.root.contains(this.dialog)&&this.root.removeChild(this.dialog),this.dialog.style.display="none"},r.prototype.getCurrentViewer=function(){return n.Viewers[this.selectedKey]},r.prototype.getSelectedKey_=function(){var e=this.dialog.querySelector("input[name=field]:checked");return e?e.id:null},r.prototype.onChange=function(e){this.onChangeCallbacks_.push(e)},r.prototype.fireOnChange_=function(e){for(var t=0;t<this.onChangeCallbacks_.length;t++)this.onChangeCallbacks_[t](e)},r.prototype.onSave_=function(){if(this.selectedKey=this.getSelectedKey_(),this.selectedKey&&n.Viewers[this.selectedKey]){this.fireOnChange_(n.Viewers[this.selectedKey]);try{localStorage.setItem(oe,this.selectedKey)}catch(e){console.error("Failed to save viewer profile: %s",e)}this.hide()}else console.error("ViewerSelector.onSave_: this should never happen!")},r.prototype.createDialog_=function(e){var t=document.createElement("div");t.classList.add("webvr-polyfill-viewer-selector"),t.style.display="none";var n=document.createElement("div"),r=n.style;r.position="fixed",r.left=0,r.top=0,r.width="100%",r.height="100%",r.background="rgba(0, 0, 0, 0.3)",n.addEventListener("click",this.hide.bind(this));var a=document.createElement("div"),r=a.style;for(var i in r.boxSizing="border-box",r.position="fixed",r.top="24px",r.left="50%",r.marginLeft="-140px",r.width="280px",r.padding="24px",r.overflow="hidden",r.background="#fafafa",r.fontFamily="'Roboto', sans-serif",r.boxShadow="0px 5px 20px #666",a.appendChild(this.createH1_("Select your viewer")),e)a.appendChild(this.createChoice_(i,e[i].label));return a.appendChild(this.createButton_("Save",this.onSave_.bind(this))),t.appendChild(n),t.appendChild(a),t},r.prototype.createH1_=function(e){var t=document.createElement("h1"),n=t.style;return n.color="black",n.fontSize="20px",n.fontWeight="bold",n.marginTop=0,n.marginBottom="24px",t.innerHTML=e,t},r.prototype.createChoice_=function(e,t){var n=document.createElement("div");n.style.marginTop="8px",n.style.color="black";var r=document.createElement("input");r.style.fontSize="30px",r.setAttribute("id",e),r.setAttribute("type","radio"),r.setAttribute("value",e),r.setAttribute("name","field");var a=document.createElement("label");return a.style.marginLeft="4px",a.setAttribute("for",e),a.innerHTML=t,n.appendChild(r),n.appendChild(a),n},r.prototype.createButton_=function(e,t){var n=document.createElement("button");n.innerHTML=e;var r=n.style;return r.float="right",r.textTransform="uppercase",r.color="#1094f7",r.fontSize="14px",r.letterSpacing=0,r.border=0,r.background="none",r.marginTop="16px",n.addEventListener("click",t),n},"undefined"!=typeof window?window:void 0!==Me||"undefined"!=typeof self&&self;var se=function(e){return e&&e.__esModule?e.default:e}(function(e,t){return e(t={exports:{}},t.exports),t.exports}(function(n,e){!function(e,t){n.exports=t()}(0,function(){return function(n){var r={};function a(e){if(r[e])return r[e].exports;var t=r[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,a),t.l=!0,t.exports}return a.m=n,a.c=r,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:n})},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=0)}([function(e,t,n){var r=function(){function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}}(),a=n(1),i="undefined"!=typeof navigator&&parseFloat((""+(/CPU.*OS ([0-9_]{3,4})[0-9_]{0,1}|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))<10&&!window.MSStream,o=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),i?this.noSleepTimer=null:(this.noSleepVideo=document.createElement("video"),this.noSleepVideo.setAttribute("playsinline",""),this.noSleepVideo.setAttribute("src",a),this.noSleepVideo.addEventListener("timeupdate",function(e){this.noSleepVideo.currentTime>.5&&(this.noSleepVideo.currentTime=Math.random())}.bind(this)))}return r(e,[{key:"enable",value:function(){i?(this.disable(),this.noSleepTimer=window.setInterval(function(){window.location.href="/",window.setTimeout(window.stop,0)},15e3)):this.noSleepVideo.play()}},{key:"disable",value:function(){i?this.noSleepTimer&&(window.clearInterval(this.noSleepTimer),this.noSleepTimer=null):this.noSleepVideo.pause()}}]),e}();e.exports=o},function(e,t,n){e.exports="data:video/mp4;base64,AAAAIGZ0eXBtcDQyAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZQAACKBtZGF0AAAC8wYF///v3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE0MiByMjQ3OSBkZDc5YTYxIC0gSC4yNjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAxNCAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTEgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MToweDExMSBtZT1oZXggc3VibWU9MiBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVkX3JlZj0wIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9MCA4eDhkY3Q9MCBjcW09MCBkZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0wIHRocmVhZHM9NiBsb29rYWhlYWRfdGhyZWFkcz0xIHNsaWNlZF90aHJlYWRzPTAgbnI9MCBkZWNpbWF0ZT0xIGludGVybGFjZWQ9MCBibHVyYXlfY29tcGF0PTAgY29uc3RyYWluZWRfaW50cmE9MCBiZnJhbWVzPTMgYl9weXJhbWlkPTIgYl9hZGFwdD0xIGJfYmlhcz0wIGRpcmVjdD0xIHdlaWdodGI9MSBvcGVuX2dvcD0wIHdlaWdodHA9MSBrZXlpbnQ9MzAwIGtleWludF9taW49MzAgc2NlbmVjdXQ9NDAgaW50cmFfcmVmcmVzaD0wIHJjX2xvb2thaGVhZD0xMCByYz1jcmYgbWJ0cmVlPTEgY3JmPTIwLjAgcWNvbXA9MC42MCBxcG1pbj0wIHFwbWF4PTY5IHFwc3RlcD00IHZidl9tYXhyYXRlPTIwMDAwIHZidl9idWZzaXplPTI1MDAwIGNyZl9tYXg9MC4wIG5hbF9ocmQ9bm9uZSBmaWxsZXI9MCBpcF9yYXRpbz0xLjQwIGFxPTE6MS4wMACAAAAAOWWIhAA3//p+C7v8tDDSTjf97w55i3SbRPO4ZY+hkjD5hbkAkL3zpJ6h/LR1CAABzgB1kqqzUorlhQAAAAxBmiQYhn/+qZYADLgAAAAJQZ5CQhX/AAj5IQADQGgcIQADQGgcAAAACQGeYUQn/wALKCEAA0BoHAAAAAkBnmNEJ/8ACykhAANAaBwhAANAaBwAAAANQZpoNExDP/6plgAMuSEAA0BoHAAAAAtBnoZFESwr/wAI+SEAA0BoHCEAA0BoHAAAAAkBnqVEJ/8ACykhAANAaBwAAAAJAZ6nRCf/AAsoIQADQGgcIQADQGgcAAAADUGarDRMQz/+qZYADLghAANAaBwAAAALQZ7KRRUsK/8ACPkhAANAaBwAAAAJAZ7pRCf/AAsoIQADQGgcIQADQGgcAAAACQGe60Qn/wALKCEAA0BoHAAAAA1BmvA0TEM//qmWAAy5IQADQGgcIQADQGgcAAAAC0GfDkUVLCv/AAj5IQADQGgcAAAACQGfLUQn/wALKSEAA0BoHCEAA0BoHAAAAAkBny9EJ/8ACyghAANAaBwAAAANQZs0NExDP/6plgAMuCEAA0BoHAAAAAtBn1JFFSwr/wAI+SEAA0BoHCEAA0BoHAAAAAkBn3FEJ/8ACyghAANAaBwAAAAJAZ9zRCf/AAsoIQADQGgcIQADQGgcAAAADUGbeDRMQz/+qZYADLkhAANAaBwAAAALQZ+WRRUsK/8ACPghAANAaBwhAANAaBwAAAAJAZ+1RCf/AAspIQADQGgcAAAACQGft0Qn/wALKSEAA0BoHCEAA0BoHAAAAA1Bm7w0TEM//qmWAAy4IQADQGgcAAAAC0Gf2kUVLCv/AAj5IQADQGgcAAAACQGf+UQn/wALKCEAA0BoHCEAA0BoHAAAAAkBn/tEJ/8ACykhAANAaBwAAAANQZvgNExDP/6plgAMuSEAA0BoHCEAA0BoHAAAAAtBnh5FFSwr/wAI+CEAA0BoHAAAAAkBnj1EJ/8ACyghAANAaBwhAANAaBwAAAAJAZ4/RCf/AAspIQADQGgcAAAADUGaJDRMQz/+qZYADLghAANAaBwAAAALQZ5CRRUsK/8ACPkhAANAaBwhAANAaBwAAAAJAZ5hRCf/AAsoIQADQGgcAAAACQGeY0Qn/wALKSEAA0BoHCEAA0BoHAAAAA1Bmmg0TEM//qmWAAy5IQADQGgcAAAAC0GehkUVLCv/AAj5IQADQGgcIQADQGgcAAAACQGepUQn/wALKSEAA0BoHAAAAAkBnqdEJ/8ACyghAANAaBwAAAANQZqsNExDP/6plgAMuCEAA0BoHCEAA0BoHAAAAAtBnspFFSwr/wAI+SEAA0BoHAAAAAkBnulEJ/8ACyghAANAaBwhAANAaBwAAAAJAZ7rRCf/AAsoIQADQGgcAAAADUGa8DRMQz/+qZYADLkhAANAaBwhAANAaBwAAAALQZ8ORRUsK/8ACPkhAANAaBwAAAAJAZ8tRCf/AAspIQADQGgcIQADQGgcAAAACQGfL0Qn/wALKCEAA0BoHAAAAA1BmzQ0TEM//qmWAAy4IQADQGgcAAAAC0GfUkUVLCv/AAj5IQADQGgcIQADQGgcAAAACQGfcUQn/wALKCEAA0BoHAAAAAkBn3NEJ/8ACyghAANAaBwhAANAaBwAAAANQZt4NExC//6plgAMuSEAA0BoHAAAAAtBn5ZFFSwr/wAI+CEAA0BoHCEAA0BoHAAAAAkBn7VEJ/8ACykhAANAaBwAAAAJAZ+3RCf/AAspIQADQGgcAAAADUGbuzRMQn/+nhAAYsAhAANAaBwhAANAaBwAAAAJQZ/aQhP/AAspIQADQGgcAAAACQGf+UQn/wALKCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHAAACiFtb292AAAAbG12aGQAAAAA1YCCX9WAgl8AAAPoAAAH/AABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAGGlvZHMAAAAAEICAgAcAT////v7/AAAF+XRyYWsAAABcdGtoZAAAAAPVgIJf1YCCXwAAAAEAAAAAAAAH0AAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAygAAAMoAAAAAACRlZHRzAAAAHGVsc3QAAAAAAAAAAQAAB9AAABdwAAEAAAAABXFtZGlhAAAAIG1kaGQAAAAA1YCCX9WAgl8AAV+QAAK/IFXEAAAAAAAtaGRscgAAAAAAAAAAdmlkZQAAAAAAAAAAAAAAAFZpZGVvSGFuZGxlcgAAAAUcbWluZgAAABR2bWhkAAAAAQAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAAE3HN0YmwAAACYc3RzZAAAAAAAAAABAAAAiGF2YzEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAygDKAEgAAABIAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY//8AAAAyYXZjQwFNQCj/4QAbZ01AKOyho3ySTUBAQFAAAAMAEAAr8gDxgxlgAQAEaO+G8gAAABhzdHRzAAAAAAAAAAEAAAA8AAALuAAAABRzdHNzAAAAAAAAAAEAAAABAAAB8GN0dHMAAAAAAAAAPAAAAAEAABdwAAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAAC7gAAAAAQAAF3AAAAABAAAAAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAAQAAAAEAAAEEc3RzegAAAAAAAAAAAAAAPAAAAzQAAAAQAAAADQAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAANAAAADQAAAQBzdGNvAAAAAAAAADwAAAAwAAADZAAAA3QAAAONAAADoAAAA7kAAAPQAAAD6wAAA/4AAAQXAAAELgAABEMAAARcAAAEbwAABIwAAAShAAAEugAABM0AAATkAAAE/wAABRIAAAUrAAAFQgAABV0AAAVwAAAFiQAABaAAAAW1AAAFzgAABeEAAAX+AAAGEwAABiwAAAY/AAAGVgAABnEAAAaEAAAGnQAABrQAAAbPAAAG4gAABvUAAAcSAAAHJwAAB0AAAAdTAAAHcAAAB4UAAAeeAAAHsQAAB8gAAAfjAAAH9gAACA8AAAgmAAAIQQAACFQAAAhnAAAIhAAACJcAAAMsdHJhawAAAFx0a2hkAAAAA9WAgl/VgIJfAAAAAgAAAAAAAAf8AAAAAAAAAAAAAAABAQAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAACsm1kaWEAAAAgbWRoZAAAAADVgIJf1YCCXwAArEQAAWAAVcQAAAAAACdoZGxyAAAAAAAAAABzb3VuAAAAAAAAAAAAAAAAU3RlcmVvAAAAAmNtaW5mAAAAEHNtaGQAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAAAQAAAidzdGJsAAAAZ3N0c2QAAAAAAAAAAQAAAFdtcDRhAAAAAAAAAAEAAAAAAAAAAAACABAAAAAArEQAAAAAADNlc2RzAAAAAAOAgIAiAAIABICAgBRAFQAAAAADDUAAAAAABYCAgAISEAaAgIABAgAAABhzdHRzAAAAAAAAAAEAAABYAAAEAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAUc3RzegAAAAAAAAAGAAAAWAAAAXBzdGNvAAAAAAAAAFgAAAOBAAADhwAAA5oAAAOtAAADswAAA8oAAAPfAAAD5QAAA/gAAAQLAAAEEQAABCgAAAQ9AAAEUAAABFYAAARpAAAEgAAABIYAAASbAAAErgAABLQAAATHAAAE3gAABPMAAAT5AAAFDAAABR8AAAUlAAAFPAAABVEAAAVXAAAFagAABX0AAAWDAAAFmgAABa8AAAXCAAAFyAAABdsAAAXyAAAF+AAABg0AAAYgAAAGJgAABjkAAAZQAAAGZQAABmsAAAZ+AAAGkQAABpcAAAauAAAGwwAABskAAAbcAAAG7wAABwYAAAcMAAAHIQAABzQAAAc6AAAHTQAAB2QAAAdqAAAHfwAAB5IAAAeYAAAHqwAAB8IAAAfXAAAH3QAAB/AAAAgDAAAICQAACCAAAAg1AAAIOwAACE4AAAhhAAAIeAAACH4AAAiRAAAIpAAACKoAAAiwAAAItgAACLwAAAjCAAAAFnVkdGEAAAAObmFtZVN0ZXJlbwAAAHB1ZHRhAAAAaG1ldGEAAAAAAAAAIWhkbHIAAAAAAAAAAG1kaXJhcHBsAAAAAAAAAAAAAAAAO2lsc3QAAAAzqXRvbwAAACtkYXRhAAAAAQAAAABIYW5kQnJha2UgMC4xMC4yIDIwMTUwNjExMDA="}])})})),ue=1e3,le=[0,0,.5,1],ce=[.5,0,.5,1],fe=window.requestAnimationFrame,de=window.cancelAnimationFrame;function he(e){Object.defineProperties(this,{hasPosition:{writable:!1,enumerable:!0,value:e.hasPosition},hasExternalDisplay:{writable:!1,enumerable:!0,value:e.hasExternalDisplay},canPresent:{writable:!1,enumerable:!0,value:e.canPresent},maxLayers:{writable:!1,enumerable:!0,value:e.maxLayers},hasOrientation:{enumerable:!0,get:function(){return O("VRDisplayCapabilities.prototype.hasOrientation","VRDisplay.prototype.getFrameData"),e.hasOrientation}}})}function a(e){var t=!("wakelock"in(e=e||{}))||e.wakelock;this.isPolyfilled=!0,this.displayId=ue++,this.displayName="",this.depthNear=.01,this.depthFar=1e4,this.isPresenting=!1,Object.defineProperty(this,"isConnected",{get:function(){return O("VRDisplay.prototype.isConnected","VRDisplayCapabilities.prototype.hasExternalDisplay"),!1}}),this.capabilities=new he({hasPosition:!1,hasOrientation:!1,hasExternalDisplay:!1,canPresent:!1,maxLayers:1}),this.stageParameters=null,this.waitingForPresent_=!1,this.layer_=null,this.originalParent_=null,this.fullscreenElement_=null,this.fullscreenWrapper_=null,this.fullscreenElementCachedStyle_=null,this.fullscreenEventTarget_=null,this.fullscreenChangeHandler_=null,this.fullscreenErrorHandler_=null,t&&x()&&(this.wakelock_=new se)}a.prototype.getFrameData=function(e){return I(e,this._getPose(),this)},a.prototype.getPose=function(){return O("VRDisplay.prototype.getPose","VRDisplay.prototype.getFrameData"),this._getPose()},a.prototype.resetPose=function(){return O("VRDisplay.prototype.resetPose"),this._resetPose()},a.prototype.getImmediatePose=function(){return O("VRDisplay.prototype.getImmediatePose","VRDisplay.prototype.getFrameData"),this._getPose()},a.prototype.requestAnimationFrame=function(e){return fe(e)},a.prototype.cancelAnimationFrame=function(e){return de(e)},a.prototype.wrapForFullscreen=function(e){if(f())return e;if(!this.fullscreenWrapper_){this.fullscreenWrapper_=document.createElement("div");var t=["height: "+Math.min(screen.height,screen.width)+"px !important","top: 0 !important","left: 0 !important","right: 0 !important","border: 0","margin: 0","padding: 0","z-index: 999999 !important","position: fixed"];this.fullscreenWrapper_.setAttribute("style",t.join("; ")+";"),this.fullscreenWrapper_.classList.add("webvr-polyfill-fullscreen-wrapper")}if(this.fullscreenElement_==e)return this.fullscreenWrapper_;if(this.fullscreenElement_&&(this.originalParent_?this.originalParent_.appendChild(this.fullscreenElement_):this.fullscreenElement_.parentElement.removeChild(this.fullscreenElement_)),this.fullscreenElement_=e,this.originalParent_=e.parentElement,this.originalParent_||document.body.appendChild(e),!this.fullscreenWrapper_.parentElement){var n=this.fullscreenElement_.parentElement;n.insertBefore(this.fullscreenWrapper_,this.fullscreenElement_),n.removeChild(this.fullscreenElement_)}this.fullscreenWrapper_.insertBefore(this.fullscreenElement_,this.fullscreenWrapper_.firstChild),this.fullscreenElementCachedStyle_=this.fullscreenElement_.getAttribute("style");var r=this;return function(){if(r.fullscreenElement_){var e=["position: absolute","top: 0","left: 0","width: "+Math.max(screen.width,screen.height)+"px","height: "+Math.min(screen.height,screen.width)+"px","border: 0","margin: 0","padding: 0"];r.fullscreenElement_.setAttribute("style",e.join("; ")+";")}}(),this.fullscreenWrapper_},a.prototype.removeFullscreenWrapper=function(){if(this.fullscreenElement_){var e=this.fullscreenElement_;this.fullscreenElementCachedStyle_?e.setAttribute("style",this.fullscreenElementCachedStyle_):e.removeAttribute("style"),this.fullscreenElement_=null,this.fullscreenElementCachedStyle_=null;var t=this.fullscreenWrapper_.parentElement;return this.fullscreenWrapper_.removeChild(e),this.originalParent_===t?t.insertBefore(e,this.fullscreenWrapper_):this.originalParent_&&this.originalParent_.appendChild(e),t.removeChild(this.fullscreenWrapper_),e}},a.prototype.requestPresent=function(u){var l=this.isPresenting,c=this;return u instanceof Array||(O("VRDisplay.prototype.requestPresent with non-array argument","an array of VRLayers as the first argument"),u=[u]),new Promise(function(t,e){if(c.capabilities.canPresent)if(0==u.length||u.length>c.capabilities.maxLayers)e(new Error("Invalid number of layers."));else{var n=u[0];if(n.source){var r=n.leftBounds||le,a=n.rightBounds||ce;if(l){var i=c.layer_;i.source!==n.source&&(i.source=n.source);for(var o=0;o<4;o++)i.leftBounds[o]=r[o],i.rightBounds[o]=a[o];return c.wrapForFullscreen(c.layer_.source),c.updatePresent_(),void t()}if(c.layer_={predistorted:n.predistorted,source:n.source,leftBounds:r.slice(0),rightBounds:a.slice(0)},c.waitingForPresent_=!1,c.layer_&&c.layer_.source){var s=c.wrapForFullscreen(c.layer_.source);c.addFullscreenListeners_(s,function(){var e=document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement;c.isPresenting=s===e,c.isPresenting?(screen.orientation&&screen.orientation.lock&&screen.orientation.lock("landscape-primary").catch(function(e){console.error("screen.orientation.lock() failed due to",e.message)}),c.waitingForPresent_=!1,c.beginPresent_(),t()):(screen.orientation&&screen.orientation.unlock&&screen.orientation.unlock(),c.removeFullscreenWrapper(),c.disableWakeLock(),c.endPresent_(),c.removeFullscreenListeners_()),c.fireVRDisplayPresentChange_()},function(){c.waitingForPresent_&&(c.removeFullscreenWrapper(),c.removeFullscreenListeners_(),c.disableWakeLock(),c.waitingForPresent_=!1,c.isPresenting=!1,e(new Error("Unable to present.")))}),function(e){if(d())return!1;if(e.requestFullscreen)e.requestFullscreen();else if(e.webkitRequestFullscreen)e.webkitRequestFullscreen();else if(e.mozRequestFullScreen)e.mozRequestFullScreen();else{if(!e.msRequestFullscreen)return!1;e.msRequestFullscreen()}return!0}(s)?(c.enableWakeLock(),c.waitingForPresent_=!0):(f()||d())&&(c.enableWakeLock(),c.isPresenting=!0,c.beginPresent_(),c.fireVRDisplayPresentChange_(),t())}c.waitingForPresent_||f()||(T(),e(new Error("Unable to present.")))}else t()}else e(new Error("VRDisplay is not capable of presenting."))})},a.prototype.exitPresent=function(){var n=this.isPresenting,r=this;return this.isPresenting=!1,this.layer_=null,this.disableWakeLock(),new Promise(function(e,t){n?(!T()&&f()&&(r.endPresent_(),r.fireVRDisplayPresentChange_()),d()&&(r.removeFullscreenWrapper(),r.removeFullscreenListeners_(),r.endPresent_(),r.fireVRDisplayPresentChange_()),e()):t(new Error("Was not presenting to VRDisplay."))})},a.prototype.getLayers=function(){return this.layer_?[this.layer_]:[]},a.prototype.fireVRDisplayPresentChange_=function(){var e=new CustomEvent("vrdisplaypresentchange",{detail:{display:this}});window.dispatchEvent(e)},a.prototype.fireVRDisplayConnect_=function(){var e=new CustomEvent("vrdisplayconnect",{detail:{display:this}});window.dispatchEvent(e)},a.prototype.addFullscreenListeners_=function(e,t,n){this.removeFullscreenListeners_(),this.fullscreenEventTarget_=e,this.fullscreenChangeHandler_=t,this.fullscreenErrorHandler_=n,t&&(document.fullscreenEnabled?e.addEventListener("fullscreenchange",t,!1):document.webkitFullscreenEnabled?e.addEventListener("webkitfullscreenchange",t,!1):document.mozFullScreenEnabled?document.addEventListener("mozfullscreenchange",t,!1):document.msFullscreenEnabled&&e.addEventListener("msfullscreenchange",t,!1)),n&&(document.fullscreenEnabled?e.addEventListener("fullscreenerror",n,!1):document.webkitFullscreenEnabled?e.addEventListener("webkitfullscreenerror",n,!1):document.mozFullScreenEnabled?document.addEventListener("mozfullscreenerror",n,!1):document.msFullscreenEnabled&&e.addEventListener("msfullscreenerror",n,!1))},a.prototype.removeFullscreenListeners_=function(){if(this.fullscreenEventTarget_){var e=this.fullscreenEventTarget_;if(this.fullscreenChangeHandler_){var t=this.fullscreenChangeHandler_;e.removeEventListener("fullscreenchange",t,!1),e.removeEventListener("webkitfullscreenchange",t,!1),document.removeEventListener("mozfullscreenchange",t,!1),e.removeEventListener("msfullscreenchange",t,!1)}if(this.fullscreenErrorHandler_){var n=this.fullscreenErrorHandler_;e.removeEventListener("fullscreenerror",n,!1),e.removeEventListener("webkitfullscreenerror",n,!1),document.removeEventListener("mozfullscreenerror",n,!1),e.removeEventListener("msfullscreenerror",n,!1)}this.fullscreenEventTarget_=null,this.fullscreenChangeHandler_=null,this.fullscreenErrorHandler_=null}},a.prototype.enableWakeLock=function(){this.wakelock_&&this.wakelock_.enable()},a.prototype.disableWakeLock=function(){this.wakelock_&&this.wakelock_.disable()},a.prototype.beginPresent_=function(){},a.prototype.endPresent_=function(){},a.prototype.submitFrame=function(e){},a.prototype.getEyeParameters=function(e){return null};var ge={MOBILE_WAKE_LOCK:!0,DEBUG:!1,DPDB_URL:"https://dpdb.webvr.rocks/dpdb.json",K_FILTER:.98,PREDICTION_TIME_S:.04,CARDBOARD_UI_DISABLED:!1,ROTATE_INSTRUCTIONS_DISABLED:!1,YAW_ONLY:!1,BUFFER_SCALE:.5,DIRTY_SUBMIT_FRAME_BINDINGS:!1},pe={LEFT:"left",RIGHT:"right"};function s(e){var t=N({},ge);e=N(t,e||{}),a.call(this,{wakelock:e.MOBILE_WAKE_LOCK}),this.config=e,this.displayName="Cardboard VRDisplay",this.capabilities=new he({hasPosition:!1,hasOrientation:!0,hasExternalDisplay:!1,canPresent:!0,maxLayers:1}),this.stageParameters=null,this.bufferScale_=this.config.BUFFER_SCALE,this.poseSensor_=new re(this.config),this.distorter_=null,this.cardboardUI_=null,this.dpdb_=new q(this.config.DPDB_URL,this.onDeviceParamsUpdated_.bind(this)),this.deviceInfo_=new n(this.dpdb_.getDeviceParams()),this.viewerSelector_=new r,this.viewerSelector_.onChange(this.onViewerChanged_.bind(this)),this.deviceInfo_.setViewer(this.viewerSelector_.getCurrentViewer()),this.config.ROTATE_INSTRUCTIONS_DISABLED||(this.rotateInstructions_=new ae),f()&&window.addEventListener("resize",this.onResize_.bind(this))}return s.prototype=Object.create(a.prototype),s.prototype._getPose=function(){return{position:null,orientation:this.poseSensor_.getOrientation(),linearVelocity:null,linearAcceleration:null,angularVelocity:null,angularAcceleration:null}},s.prototype._resetPose=function(){this.poseSensor_.resetPose&&this.poseSensor_.resetPose()},s.prototype._getFieldOfView=function(e){var t;if(e==pe.LEFT)t=this.deviceInfo_.getFieldOfViewLeftEye();else{if(e!=pe.RIGHT)return console.error("Invalid eye provided: %s",e),null;t=this.deviceInfo_.getFieldOfViewRightEye()}return t},s.prototype._getEyeOffset=function(e){var t;if(e==pe.LEFT)t=[.5*-this.deviceInfo_.viewer.interLensDistance,0,0];else{if(e!=pe.RIGHT)return console.error("Invalid eye provided: %s",e),null;t=[.5*this.deviceInfo_.viewer.interLensDistance,0,0]}return t},s.prototype.getEyeParameters=function(e){var t=this._getEyeOffset(e),n=this._getFieldOfView(e),r={offset:t,renderWidth:.5*this.deviceInfo_.device.width*this.bufferScale_,renderHeight:this.deviceInfo_.device.height*this.bufferScale_};return Object.defineProperty(r,"fieldOfView",{enumerable:!0,get:function(){return O("VRFieldOfView","VRFrameData's projection matrices"),n}}),r},s.prototype.onDeviceParamsUpdated_=function(e){this.config.DEBUG&&console.log("DPDB reported that device params were updated."),this.deviceInfo_.updateDeviceParams(e),this.distorter_&&this.distorter_.updateDeviceInfo(this.deviceInfo_)},s.prototype.updateBounds_=function(){this.layer_&&this.distorter_&&(this.layer_.leftBounds||this.layer_.rightBounds)&&this.distorter_.setTextureBounds(this.layer_.leftBounds,this.layer_.rightBounds)},s.prototype.beginPresent_=function(){var e=this.layer_.source.getContext("webgl");e||(e=this.layer_.source.getContext("experimental-webgl")),e||(e=this.layer_.source.getContext("webgl2")),e&&(this.layer_.predistorted?this.config.CARDBOARD_UI_DISABLED||(e.canvas.width=A()*this.bufferScale_,e.canvas.height=y()*this.bufferScale_,this.cardboardUI_=new B(e)):(this.config.CARDBOARD_UI_DISABLED||(this.cardboardUI_=new B(e)),this.distorter_=new t(e,this.cardboardUI_,this.config.BUFFER_SCALE,this.config.DIRTY_SUBMIT_FRAME_BINDINGS),this.distorter_.updateDeviceInfo(this.deviceInfo_)),this.cardboardUI_&&this.cardboardUI_.listen(function(e){this.viewerSelector_.show(this.layer_.source.parentElement),e.stopPropagation(),e.preventDefault()}.bind(this),function(e){this.exitPresent(),e.stopPropagation(),e.preventDefault()}.bind(this)),this.rotateInstructions_&&(m()&&x()?this.rotateInstructions_.showTemporarily(3e3,this.layer_.source.parentElement):this.rotateInstructions_.update()),this.orientationHandler=this.onOrientationChange_.bind(this),window.addEventListener("orientationchange",this.orientationHandler),this.vrdisplaypresentchangeHandler=this.updateBounds_.bind(this),window.addEventListener("vrdisplaypresentchange",this.vrdisplaypresentchangeHandler),this.fireVRDisplayDeviceParamsChange_())},s.prototype.endPresent_=function(){this.distorter_&&(this.distorter_.destroy(),this.distorter_=null),this.cardboardUI_&&(this.cardboardUI_.destroy(),this.cardboardUI_=null),this.rotateInstructions_&&this.rotateInstructions_.hide(),this.viewerSelector_.hide(),window.removeEventListener("orientationchange",this.orientationHandler),window.removeEventListener("vrdisplaypresentchange",this.vrdisplaypresentchangeHandler)},s.prototype.updatePresent_=function(){this.endPresent_(),this.beginPresent_()},s.prototype.submitFrame=function(e){if(this.distorter_)this.updateBounds_(),this.distorter_.submitFrame();else if(this.cardboardUI_&&this.layer_){var t=this.layer_.source.getContext("webgl").canvas;t.width==this.lastWidth&&t.height==this.lastHeight||this.cardboardUI_.onResize(),this.lastWidth=t.width,this.lastHeight=t.height,this.cardboardUI_.render()}},s.prototype.onOrientationChange_=function(e){this.viewerSelector_.hide(),this.rotateInstructions_&&this.rotateInstructions_.update(),this.onResize_()},s.prototype.onResize_=function(e){if(this.layer_){var t=this.layer_.source.getContext("webgl");t.canvas.setAttribute("style",["position: absolute","top: 0","left: 0","width: 100vw","height: 100vh","border: 0","margin: 0","padding: 0px","box-sizing: content-box"].join("; ")+";"),E(t.canvas)}},s.prototype.onViewerChanged_=function(e){this.deviceInfo_.setViewer(e),this.distorter_&&this.distorter_.updateDeviceInfo(this.deviceInfo_),this.fireVRDisplayDeviceParamsChange_()},s.prototype.fireVRDisplayDeviceParamsChange_=function(){var e=new CustomEvent("vrdisplaydeviceparamschange",{detail:{vrdisplay:this,deviceInfo:this.deviceInfo_}});window.dispatchEvent(e)},s.VRFrameData=function(){this.leftProjectionMatrix=new Float32Array(16),this.leftViewMatrix=new Float32Array(16),this.rightProjectionMatrix=new Float32Array(16),this.rightViewMatrix=new Float32Array(16),this.pose=null},s.VRDisplay=a,s}()})),r={PROVIDE_MOBILE_VRDISPLAY:!0,GET_VR_DISPLAYS_TIMEOUT:1e3,MOBILE_WAKE_LOCK:!0,DEBUG:!1,DPDB_URL:"https://dpdb.webvr.rocks/dpdb.json",K_FILTER:.98,PREDICTION_TIME_S:.04,TOUCH_PANNER_DISABLED:!0,CARDBOARD_UI_DISABLED:!1,ROTATE_INSTRUCTIONS_DISABLED:!1,YAW_ONLY:!1,BUFFER_SCALE:.5,DIRTY_SUBMIT_FRAME_BINDINGS:!1};function e(e){this.config=n(n({},r),e),this.polyfillDisplays=[],this.enabled=!1,this.hasNative="getVRDisplays"in navigator,this.native={},this.native.getVRDisplays=navigator.getVRDisplays,this.native.VRFrameData=window.VRFrameData,this.native.VRDisplay=window.VRDisplay,(!this.hasNative||this.config.PROVIDE_MOBILE_VRDISPLAY&&t())&&(this.enable(),this.getVRDisplays().then(function(e){e&&e[0]&&e[0].fireVRDisplayConnect_&&e[0].fireVRDisplayConnect_()}))}e.prototype.getPolyfillDisplays=function(){if(this._polyfillDisplaysPopulated)return this.polyfillDisplays;if(t()){var e=new i({MOBILE_WAKE_LOCK:this.config.MOBILE_WAKE_LOCK,DEBUG:this.config.DEBUG,DPDB_URL:this.config.DPDB_URL,CARDBOARD_UI_DISABLED:this.config.CARDBOARD_UI_DISABLED,K_FILTER:this.config.K_FILTER,PREDICTION_TIME_S:this.config.PREDICTION_TIME_S,TOUCH_PANNER_DISABLED:this.config.TOUCH_PANNER_DISABLED,ROTATE_INSTRUCTIONS_DISABLED:this.config.ROTATE_INSTRUCTIONS_DISABLED,YAW_ONLY:this.config.YAW_ONLY,BUFFER_SCALE:this.config.BUFFER_SCALE,DIRTY_SUBMIT_FRAME_BINDINGS:this.config.DIRTY_SUBMIT_FRAME_BINDINGS});this.polyfillDisplays.push(e)}return this._polyfillDisplaysPopulated=!0,this.polyfillDisplays},e.prototype.enable=function(){if(this.enabled=!0,this.hasNative&&this.native.VRFrameData){var t=this.native.VRFrameData,n=new this.native.VRFrameData,r=this.native.VRDisplay.prototype.getFrameData;window.VRDisplay.prototype.getFrameData=function(e){e instanceof t?r.call(this,e):(r.call(this,n),e.pose=n.pose,a(n.leftProjectionMatrix,e.leftProjectionMatrix),a(n.rightProjectionMatrix,e.rightProjectionMatrix),a(n.leftViewMatrix,e.leftViewMatrix),a(n.rightViewMatrix,e.rightViewMatrix))}}navigator.getVRDisplays=this.getVRDisplays.bind(this),window.VRDisplay=i.VRDisplay,window.VRFrameData=i.VRFrameData},e.prototype.getVRDisplays=function(){var t,n=this,r=this.config;return this.hasNative?function(r){return Promise.race?Promise.race(r):new Promise(function(e,t){for(var n=0;n<r.length;n++)r[n].then(e,t)})}([this.native.getVRDisplays.call(navigator),new Promise(function(e){t=setTimeout(function(){console.warn("Native WebVR implementation detected, but `getVRDisplays()` failed to resolve. Falling back to polyfill."),e([])},r.GET_VR_DISPLAYS_TIMEOUT)})]).then(function(e){return clearTimeout(t),e.length>0?e:n.getPolyfillDisplays()}):Promise.resolve(this.getPolyfillDisplays())},e.version="0.10.5",e.VRFrameData=i.VRFrameData,e.VRDisplay=i.VRDisplay;var o=Object.freeze({default:e}),s=o&&e||o;return void 0!==Me&&Me.window&&(Me.document||(Me.document=Me.window.document),Me.navigator||(Me.navigator=Me.window.navigator)),s}()}.call(this,n(8))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var a=(n=n(0))&&n.__esModule?n:{default:n},i=a.default.vtkErrorMacro,o={context:null,numberOfTextureUnits:0,textureUnits:0};function r(e,t){var n,r;Object.assign(t,o,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),t.textureUnits=[],a.default.get(e,t,["numberOfTextureUnits"]),a.default.setGet(e,t,["context"]),n=e,(r=t).classHierarchy.push("vtkOpenGLTextureUnitManager"),n.deleteTable=function(){for(var e=0;e<r.numberOfTextureUnits;++e)!0===r.textureUnits[e]&&i("some texture units  were not properly released");r.textureUnits=[],r.numberOfTextureUnits=0},n.setContext=function(e){if(r.context!==e){if(0!==r.context&&n.deleteTable(),r.context=e,r.context){r.numberOfTextureUnits=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS);for(var t=0;t<r.numberOfTextureUnits;++t)r.textureUnits[t]=!1}n.modified()}},n.allocate=function(){for(var e=0;e<r.numberOfTextureUnits;e++)if(!n.isAllocated(e))return r.textureUnits[e]=!0,e;return-1},n.allocateUnit=function(e){return n.isAllocated(e)?-1:(r.textureUnits[e]=!0,e)},n.isAllocated=function(e){return r.textureUnits[e]},n.free=function(e){r.textureUnits[e]=!1}}n=t.newInstance=a.default.newInstance(r,"vtkOpenGLTextureUnitManager");t.default={newInstance:n,extend:r}},function(t,n,M){var m;!function(){"use strict";function f(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function s(e,t,n,r,a,i){return f((t=f(f(t,e),f(r,i)))<<a|t>>>32-a,n)}function d(e,t,n,r,a,i,o){return s(t&n|~t&r,e,t,a,i,o)}function h(e,t,n,r,a,i,o){return s(t&r|n&~r,e,t,a,i,o)}function g(e,t,n,r,a,i,o){return s(t^n^r,e,t,a,i,o)}function p(e,t,n,r,a,i,o){return s(n^(t|~r),e,t,a,i,o)}function o(e,t){e[t>>5]|=128<<t%32,e[14+(t+64>>>9<<4)]=t;for(var n,r,a,c,i=1732584193,o=-271733879,s=-1732584194,u=271733878,l=0;l<e.length;l+=16)o=p(o=p(o=p(o=p(o=g(o=g(o=g(o=g(o=h(o=h(o=h(o=h(o=d(o=d(o=d(o=d(r=o,s=d(a=s,u=d(c=u,i=d(n=i,o,s,u,e[l],7,-680876936),o,s,e[l+1],12,-389564586),i,o,e[l+2],17,606105819),u,i,e[l+3],22,-1044525330),s=d(s,u=d(u,i=d(i,o,s,u,e[l+4],7,-176418897),o,s,e[l+5],12,1200080426),i,o,e[l+6],17,-1473231341),u,i,e[l+7],22,-45705983),s=d(s,u=d(u,i=d(i,o,s,u,e[l+8],7,1770035416),o,s,e[l+9],12,-1958414417),i,o,e[l+10],17,-42063),u,i,e[l+11],22,-1990404162),s=d(s,u=d(u,i=d(i,o,s,u,e[l+12],7,1804603682),o,s,e[l+13],12,-40341101),i,o,e[l+14],17,-1502002290),u,i,e[l+15],22,1236535329),s=h(s,u=h(u,i=h(i,o,s,u,e[l+1],5,-165796510),o,s,e[l+6],9,-1069501632),i,o,e[l+11],14,643717713),u,i,e[l],20,-373897302),s=h(s,u=h(u,i=h(i,o,s,u,e[l+5],5,-701558691),o,s,e[l+10],9,38016083),i,o,e[l+15],14,-660478335),u,i,e[l+4],20,-405537848),s=h(s,u=h(u,i=h(i,o,s,u,e[l+9],5,568446438),o,s,e[l+14],9,-1019803690),i,o,e[l+3],14,-187363961),u,i,e[l+8],20,1163531501),s=h(s,u=h(u,i=h(i,o,s,u,e[l+13],5,-1444681467),o,s,e[l+2],9,-51403784),i,o,e[l+7],14,1735328473),u,i,e[l+12],20,-1926607734),s=g(s,u=g(u,i=g(i,o,s,u,e[l+5],4,-378558),o,s,e[l+8],11,-2022574463),i,o,e[l+11],16,1839030562),u,i,e[l+14],23,-35309556),s=g(s,u=g(u,i=g(i,o,s,u,e[l+1],4,-1530992060),o,s,e[l+4],11,1272893353),i,o,e[l+7],16,-155497632),u,i,e[l+10],23,-1094730640),s=g(s,u=g(u,i=g(i,o,s,u,e[l+13],4,681279174),o,s,e[l],11,-358537222),i,o,e[l+3],16,-722521979),u,i,e[l+6],23,76029189),s=g(s,u=g(u,i=g(i,o,s,u,e[l+9],4,-640364487),o,s,e[l+12],11,-421815835),i,o,e[l+15],16,530742520),u,i,e[l+2],23,-995338651),s=p(s,u=p(u,i=p(i,o,s,u,e[l],6,-198630844),o,s,e[l+7],10,1126891415),i,o,e[l+14],15,-1416354905),u,i,e[l+5],21,-57434055),s=p(s,u=p(u,i=p(i,o,s,u,e[l+12],6,1700485571),o,s,e[l+3],10,-1894986606),i,o,e[l+10],15,-1051523),u,i,e[l+1],21,-2054922799),s=p(s,u=p(u,i=p(i,o,s,u,e[l+8],6,1873313359),o,s,e[l+15],10,-30611744),i,o,e[l+6],15,-1560198380),u,i,e[l+13],21,1309151649),s=p(s,u=p(u,i=p(i,o,s,u,e[l+4],6,-145523070),o,s,e[l+11],10,-1120210379),i,o,e[l+2],15,718787259),u,i,e[l+9],21,-343485551),i=f(i,n),o=f(o,r),s=f(s,a),u=f(u,c);return[i,o,s,u]}function u(e){for(var t="",n=32*e.length,r=0;r<n;r+=8)t+=String.fromCharCode(e[r>>5]>>>r%32&255);return t}function l(e){var t=[];for(t[(e.length>>2)-1]=void 0,r=0;r<t.length;r+=1)t[r]=0;for(var n=8*e.length,r=0;r<n;r+=8)t[r>>5]|=(255&e.charCodeAt(r/8))<<r%32;return t}function r(e){for(var t,n="",r=0;r<e.length;r+=1)t=e.charCodeAt(r),n+="0123456789abcdef".charAt(t>>>4&15)+"0123456789abcdef".charAt(15&t);return n}function c(e){return unescape(encodeURIComponent(e))}function a(e){return u(o(l(e=c(e)),8*e.length))}function i(e,t){var n,e=c(e),t=c(t),r=l(e),a=[],i=[];for(a[15]=i[15]=void 0,16<r.length&&(r=o(r,8*e.length)),n=0;n<16;n+=1)a[n]=909522486^r[n],i[n]=1549556828^r[n];return e=o(a.concat(l(t)),512+8*t.length),u(o(i.concat(e),640))}function e(e,t,n){return t?n?i(t,e):r(i(t,e)):n?a(e):r(a(e))}void 0===(m=function(){return e}.call(n,M,n,t))||(t.exports=m)}()},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=o;var i=r(t(175)),n=r(t(0)),s=r(t(13));function r(e){return e&&e.__esModule?e:{default:e}}var a=["lastShaderBound","context","openGLRenderWindow"],u={lastShaderBound:null,shaderPrograms:null,context:null,openGLRenderWindow:null};function o(e,t){var r,o;return Object.assign(t,u,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),t.shaderPrograms={},n.default.obj(e,t),n.default.setGet(e,t,a),r=e,(o=t).classHierarchy.push("vtkShaderCache"),r.replaceShaderValues=function(e,t,n){0<n.length&&(t=s.default.substitute(t,"VSOut","GSOut").result);var r=o.openGLRenderWindow.getWebgl2(),a="\n",i="#version 100\n",a=(r?i="#version 300 es\n#define attribute in\n#define textureCube texture\n#define texture2D texture\n":(o.context.getExtension("OES_standard_derivatives"),o.context.getExtension("EXT_frag_depth")&&(a="#extension GL_EXT_frag_depth : enable\n")),t=s.default.substitute(t,"//VTK::System::Dec",[i+"\n",r?"":"#extension GL_OES_standard_derivatives : enable\n",a,"#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","precision highp int;","#else","precision mediump float;","precision mediump int;","#endif"]).result,s.default.substitute(e,"//VTK::System::Dec",[i+"\n","#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","precision highp int;","#else","precision mediump float;","precision mediump int;","#endif"]).result);return r&&(a=s.default.substitute(a,"varying","out").result,t=s.default.substitute(t,"varying","in").result,t=s.default.substitute(t,"gl_FragData\\[0\\]","fragOutput0").result,t=s.default.substitute(t,"//VTK::Output::Dec","layout(location = 0) out vec4 fragOutput0;").result),{VSSource:a,FSSource:t,GSSource:s.default.substitute(n,"//VTK::System::Dec",i).result}},r.readyShaderProgramArray=function(e,t,n){e=r.replaceShaderValues(e,t,n),t=r.getShaderProgram(e.VSSource,e.FSSource,e.GSSource);return r.readyShaderProgram(t)},r.readyShaderProgram=function(e){return e&&(e.getCompiled()||e.compileShader())&&r.bindShader(e)?e:null},r.getShaderProgram=function(e,t,n){var r,a=(0,i.default)(""+e+t+n);return-1===Object.keys(o.shaderPrograms).indexOf(a)?((r=s.default.newInstance()).setContext(o.context),r.getVertexShader().setSource(e),r.getFragmentShader().setSource(t),n&&r.getGeometryShader().setSource(n),r.setMd5Hash(a),o.shaderPrograms[a]=r):o.shaderPrograms[a]},r.releaseGraphicsResources=function(t){r.releaseCurrentShader(),Object.keys(o.shaderPrograms).map(function(e){return o.shaderPrograms[e]}).forEach(function(e){return e.releaseGraphicsResources(t)})},r.releaseGraphicsResources=function(){o.astShaderBound&&(o.lastShaderBound.release(),o.lastShaderBound=null)},r.bindShader=function(e){return o.lastShaderBound===e||(o.lastShaderBound&&o.lastShaderBound.release(),e.bind(),o.lastShaderBound=e),1},Object.freeze(e)}t=e.newInstance=n.default.newInstance(o,"vtkShaderCache");e.default={newInstance:t,extend:o}},function(e,t){e.exports="//VTK::System::Dec\n\n/*=========================================================================\n\n  Program:   Visualization Toolkit\n  Module:    vtkPolyDataFS.glsl\n\n  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen\n  All rights reserved.\n  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.\n\n     This software is distributed WITHOUT ANY WARRANTY; without even\n     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR\n     PURPOSE.  See the above copyright notice for more information.\n\n=========================================================================*/\n// Template for the polydata mappers fragment shader\n\n// the output of this shader\n//VTK::Output::Dec\n\nvarying vec3 vertexVCVSOutput;\n\n// camera values\nuniform float camThick;\nuniform float camNear;\nuniform float camFar;\n\n// values describing the volume geometry\nuniform vec3 vOriginVC;\nuniform vec3 vSize;\nuniform vec3 vPlaneNormal0;\nuniform float vPlaneDistance0;\nuniform vec3 vPlaneNormal1;\nuniform float vPlaneDistance1;\nuniform vec3 vPlaneNormal2;\nuniform float vPlaneDistance2;\nuniform vec3 vPlaneNormal3;\nuniform float vPlaneDistance3;\nuniform vec3 vPlaneNormal4;\nuniform float vPlaneDistance4;\nuniform vec3 vPlaneNormal5;\nuniform float vPlaneDistance5;\n\n// opacity and color textures\nuniform sampler2D otexture;\nuniform float oshift;\nuniform float oscale;\nuniform sampler2D ctexture;\nuniform float cshift;\nuniform float cscale;\n\n// jitter texture\nuniform sampler2D jtexture;\n\n// some 3D texture values\nuniform highp sampler3D texture1;\nuniform float sampleDistance;\nuniform vec3 vVCToIJK;\n\n// declaration for intermixed geometry\n//VTK::ZBuffer::Dec\n\n// Lighting values\n//VTK::Light::Dec\n\n// normal calc\n//VTK::Normal::Dec\n\n// gradient opacity\n//VTK::GradientOpacity::Dec\n\nvec2 getRayPointIntersectionBounds(\n  vec3 rayPos, vec3 rayDir,\n  vec3 planeDir, float planeDist,\n  vec2 tbounds, vec3 vPlaneX, vec3 vPlaneY,\n  float vSize1, float vSize2)\n{\n  float result = dot(rayDir, planeDir);\n  if (result == 0.0)\n  {\n    return tbounds;\n  }\n  result = -1.0 * (dot(rayPos, planeDir) + planeDist) / result;\n  vec3 xposVC = rayPos + rayDir*result;\n  vec3 vxpos = xposVC - vOriginVC;\n  vec2 vpos = vec2(\n    dot(vxpos, vPlaneX),\n    dot(vxpos, vPlaneY));\n\n  // on some apple nvidia systems this does not work\n  // if (vpos.x < 0.0 || vpos.x > vSize1 ||\n  //     vpos.y < 0.0 || vpos.y > vSize2)\n  // even just\n  // if (vpos.x < 0.0 || vpos.y < 0.0)\n  // fails\n  // so instead we compute a value that represents in and out\n  //and then compute the return using this value\n  float xcheck = max(0.0, vpos.x * (vpos.x - vSize1)); //  0 means in bounds\n  float check = sign(max(xcheck, vpos.y * (vpos.y - vSize2))); //  0 means in bounds, 1 = out\n\n  return mix(\n   vec2(min(tbounds.x, result), max(tbounds.y, result)), // in value\n   tbounds, // out value\n   check);  // 0 in 1 out\n}\n\nvoid main()\n{\n  float scalar;\n  vec4 scalarComps;\n\n  // camera is at 0,0,0 so rayDir for perspective is just the vc coord\n  vec3 rayDir = normalize(vertexVCVSOutput);\n  vec2 tbounds = vec2(100.0*camFar, -1.0);\n\n  // all this is in View Coordinates\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal0, vPlaneDistance0, tbounds, vPlaneNormal2, vPlaneNormal4,\n    vSize.y, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal1, vPlaneDistance1, tbounds, vPlaneNormal2, vPlaneNormal4,\n    vSize.y, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal2, vPlaneDistance2, tbounds, vPlaneNormal0, vPlaneNormal4,\n    vSize.x, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal3, vPlaneDistance3, tbounds, vPlaneNormal0, vPlaneNormal4,\n    vSize.x, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal4, vPlaneDistance4, tbounds, vPlaneNormal0, vPlaneNormal2,\n    vSize.x, vSize.y);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal5, vPlaneDistance5, tbounds, vPlaneNormal0, vPlaneNormal2,\n    vSize.x, vSize.y);\n\n  // do not go behind front clipping plane\n  tbounds.x = max(0.0,tbounds.x);\n\n  // do not go PAST far clipping plane\n  float farDist = -camThick/rayDir.z;\n  tbounds.y = min(farDist,tbounds.y);\n\n  // Do not go past the zbuffer value if set\n  // This is used for intermixing opaque geometry\n  //VTK::ZBuffer::Impl\n\n  // do we need to composite?\n  if (tbounds.y > tbounds.x)\n  {\n    // compute starting and ending values in volume space\n    vec3 startVC = vertexVCVSOutput + tbounds.x*rayDir;\n    startVC = startVC - vOriginVC;\n\n    // vpos and endvpos are in VolumeCoords not Index yet\n    vec3 vpos = vec3(\n      dot(startVC, vPlaneNormal0),\n      dot(startVC, vPlaneNormal2),\n      dot(startVC, vPlaneNormal4));\n    vec3 endVC = vertexVCVSOutput + tbounds.y*rayDir;\n    endVC = endVC - vOriginVC;\n    vec3 endvpos = vec3(\n      dot(endVC, vPlaneNormal0),\n      dot(endVC, vPlaneNormal2),\n      dot(endVC, vPlaneNormal4));\n    vec3 vdelta = endvpos - vpos;\n    float numSteps = length(vdelta) / sampleDistance;\n    vdelta = vdelta / float(numSteps);\n\n    // start slightly inside and apply some jitter\n    float jitter = texture2D(jtexture, gl_FragCoord.xy/32.0).r;\n    vpos = vpos + vdelta*(0.01 + 0.98*jitter);\n    vec4 color = vec4(0.0, 0.0, 0.0, 0.0);\n\n    vec3 ijk = vpos * vVCToIJK;\n    vdelta = vdelta * vVCToIJK;\n    int count = int(numSteps - 0.2); // end slightly inside\n    for (int i = 0; i < //VTK::MaximumSamplesValue ; ++i)\n    {\n      // compute the scalar\n      scalar = texture(texture1, ijk).r;\n\n      // now map through opacity and color\n      vec4 tcolor = texture2D(ctexture, vec2(scalar * cscale + cshift, 0.5));\n      tcolor.a = texture2D(otexture, vec2(scalar * oscale + oshift, 0.5)).r;\n\n      // compute the normal if needed\n      //VTK::Normal::Impl\n\n      // handle gradient opacity\n      //VTK::GradientOpacity::Impl\n\n      // handle lighting\n      //VTK::Light::Impl\n\n      float mix = (1.0 - color.a);\n\n      color = color + vec4(tcolor.rgb*tcolor.a, tcolor.a)*mix;\n      if (color.a > 0.99) { color.a = 1.0; break; }\n      if (i >= count) { break; }\n      ijk += vdelta;\n    }\n\n    gl_FragData[0] = vec4(color.rgb/color.a, color.a);\n    // gl_FragData[0] = vec4(tbounds.y/farDist, tbounds.x/farDist, color.b/color.a, 1.0);\n  }\n  else\n  {\n    discard;\n  }\n}\n"},function(e,t){e.exports="//VTK::System::Dec\n\n/*=========================================================================\n\n  Program:   Visualization Toolkit\n  Module:    vtkPolyDataFS.glsl\n\n  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen\n  All rights reserved.\n  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.\n\n     This software is distributed WITHOUT ANY WARRANTY; without even\n     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR\n     PURPOSE.  See the above copyright notice for more information.\n\n=========================================================================*/\n// Template for the polydata mappers fragment shader\n\n// the output of this shader\n//VTK::Output::Dec\n\nvarying vec3 vertexVCVSOutput;\n\n// camera values\nuniform float camThick;\nuniform float camNear;\nuniform float camFar;\n\n// values describing the volume geometry\nuniform vec3 vOriginVC;\nuniform vec3 vSize;\nuniform vec3 vPlaneNormal0;\nuniform float vPlaneDistance0;\nuniform vec3 vPlaneNormal1;\nuniform float vPlaneDistance1;\nuniform vec3 vPlaneNormal2;\nuniform float vPlaneDistance2;\nuniform vec3 vPlaneNormal3;\nuniform float vPlaneDistance3;\nuniform vec3 vPlaneNormal4;\nuniform float vPlaneDistance4;\nuniform vec3 vPlaneNormal5;\nuniform float vPlaneDistance5;\n\n// opacity and color textures\nuniform sampler2D otexture;\nuniform float oshift;\nuniform float oscale;\nuniform sampler2D ctexture;\nuniform float cshift;\nuniform float cscale;\n\n// jitter texture\nuniform sampler2D jtexture;\n\n// some 3D texture values\nuniform sampler2D texture1;\nuniform float sampleDistance;\nuniform vec3 vVCToIJK;\nuniform float texWidth;\nuniform float texHeight;\nuniform int xreps;\nuniform float xstride;\nuniform float ystride;\nuniform int repWidth;\nuniform int repHeight;\nuniform int repDepth;\n\n// declaration for intermixed geometry\n//VTK::ZBuffer::Dec\n\n// Lighting values\n//VTK::Light::Dec\n\n// normal calc\n//VTK::Normal::Dec\n\n// gradient opacity\n//VTK::GradientOpacity::Dec\n\nvec2 getTextureCoord(vec3 ijk, float offset)\n{\n  // uncomment the following line to see  the  packed  texture\n  // return vec2(ijk.x/float(repWidth), ijk.y/float(repHeight));\n  int z = int(ijk.z + offset);\n  int yz = z / xreps;\n  int xz = z - yz*xreps;\n\n  float ni = (ijk.x + float(xz * repWidth))/xstride;\n  float nj = (ijk.y + float(yz * repHeight))/ystride;\n\n  vec2 tpos = vec2(ni/texWidth, nj/texHeight);\n\n  return tpos;\n}\n\n// because scalars may be encoded\n// this func will decode them as needed\nfloat getScalarValue(vec2 tpos)\n{\n  //VTK::ScalarValueFunction::Impl\n}\n\nvec2 getRayPointIntersectionBounds(\n  vec3 rayPos, vec3 rayDir,\n  vec3 planeDir, float planeDist,\n  vec2 tbounds, vec3 vPlaneX, vec3 vPlaneY,\n  float vSize1, float vSize2)\n{\n  float result = dot(rayDir, planeDir);\n  if (result == 0.0)\n  {\n    return tbounds;\n  }\n  result = -1.0 * (dot(rayPos, planeDir) + planeDist) / result;\n  vec3 xposVC = rayPos + rayDir*result;\n  vec3 vxpos = xposVC - vOriginVC;\n  vec2 vpos = vec2(\n    dot(vxpos, vPlaneX),\n    dot(vxpos, vPlaneY));\n\n  // on some apple nvidia systems this does not work\n  // if (vpos.x < 0.0 || vpos.x > vSize1 ||\n  //     vpos.y < 0.0 || vpos.y > vSize2)\n  // even just\n  // if (vpos.x < 0.0 || vpos.y < 0.0)\n  // fails\n  // so instead we compute a value that represents in and out\n  //and then compute the return using this value\n  float xcheck = max(0.0, vpos.x * (vpos.x - vSize1)); //  0 means in bounds\n  float check = sign(max(xcheck, vpos.y * (vpos.y - vSize2))); //  0 means in bounds, 1 = out\n\n  return mix(\n   vec2(min(tbounds.x, result), max(tbounds.y, result)), // in value\n   tbounds, // out value\n   check);  // 0 in 1 out\n}\n\nvoid main()\n{\n  float scalar;\n  vec4 scalarComps;\n\n  // camera is at 0,0,0 so rayDir for perspective is just the vc coord\n  vec3 rayDir = normalize(vertexVCVSOutput);\n  vec2 tbounds = vec2(100.0*camFar, -1.0);\n\n  // all this is in View Coordinates\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal0, vPlaneDistance0, tbounds, vPlaneNormal2, vPlaneNormal4,\n    vSize.y, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal1, vPlaneDistance1, tbounds, vPlaneNormal2, vPlaneNormal4,\n    vSize.y, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal2, vPlaneDistance2, tbounds, vPlaneNormal0, vPlaneNormal4,\n    vSize.x, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal3, vPlaneDistance3, tbounds, vPlaneNormal0, vPlaneNormal4,\n    vSize.x, vSize.z);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal4, vPlaneDistance4, tbounds, vPlaneNormal0, vPlaneNormal2,\n    vSize.x, vSize.y);\n  tbounds = getRayPointIntersectionBounds(vertexVCVSOutput, rayDir,\n    vPlaneNormal5, vPlaneDistance5, tbounds, vPlaneNormal0, vPlaneNormal2,\n    vSize.x, vSize.y);\n\n  // do not go behind front clipping plane\n  tbounds.x = max(0.0,tbounds.x);\n\n  // do not go PAST far clipping plane\n  float farDist = -camThick/rayDir.z;\n  tbounds.y = min(farDist,tbounds.y);\n\n  // Do not go past the zbuffer value if set\n  // This is used for intermixing opaque geometry\n  //VTK::ZBuffer::Impl\n\n  // do we need to composite?\n  if (tbounds.y > tbounds.x)\n  {\n    // compute starting and ending values in volume space\n    vec3 startVC = vertexVCVSOutput + tbounds.x*rayDir;\n    startVC = startVC - vOriginVC;\n\n    // vpos and endvpos are in VolumeCoords not Index yet\n    vec3 vpos = vec3(\n      dot(startVC, vPlaneNormal0),\n      dot(startVC, vPlaneNormal2),\n      dot(startVC, vPlaneNormal4));\n    vec3 endVC = vertexVCVSOutput + tbounds.y*rayDir;\n    endVC = endVC - vOriginVC;\n    vec3 endvpos = vec3(\n      dot(endVC, vPlaneNormal0),\n      dot(endVC, vPlaneNormal2),\n      dot(endVC, vPlaneNormal4));\n    vec3 vdelta = endvpos - vpos;\n    float numSteps = length(vdelta) / sampleDistance;\n    vdelta = vdelta / numSteps;\n\n    // start slightly inside and apply some jitter\n    float jitter = texture2D(jtexture, gl_FragCoord.xy/32.0).r;\n    vpos = vpos + vdelta*(0.01 + 0.98*jitter);\n    vec4 color = vec4(0.0, 0.0, 0.0, 0.0);\n    int count = int(numSteps - 0.2); // end slightly inside\n\n    vec3 ijk = vpos * vVCToIJK;\n    vdelta = vdelta * vVCToIJK;\n    for (int i = 0; i < //VTK::MaximumSamplesValue ; ++i)\n    {\n      // compute the 2d texture coordinate/s\n      //VTK::ComputeTCoords\n\n      // compute the scalar\n      //VTK::ScalarFunction\n\n      // now map through opacity and color\n      vec4 tcolor = texture2D(ctexture, vec2(scalar * cscale + cshift, 0.5));\n      tcolor.a = texture2D(otexture, vec2(scalar * oscale + oshift, 0.5)).r;\n\n      // compute the normal if needed\n      //VTK::Normal::Impl\n\n      // handle gradient opacity\n      //VTK::GradientOpacity::Impl\n\n      // handle lighting\n      //VTK::Light::Impl\n\n      float mix = (1.0 - color.a);\n\n      // this line should not be needed but nvidia seems to not handle\n      // the break correctly on windows/chrome 58 angle\n      mix = mix * sign(max(float(count - i + 1), 0.0));\n\n      color = color + vec4(tcolor.rgb*tcolor.a, tcolor.a)*mix;\n      if (i >= count) { break; }\n      if (color.a > 0.99) { color.a = 1.0; break; }\n      ijk += vdelta;\n    }\n\n    gl_FragData[0] = vec4(color.rgb/color.a, color.a);\n    // gl_FragData[0] = vec4(tbounds.y/farDist, tbounds.x/farDist, color.b/color.a, 1.0);\n  }\n  else\n  {\n    discard;\n  }\n}\n"},function(e,t){e.exports="//VTK::System::Dec\n\n/*=========================================================================\n\n  Program:   Visualization Toolkit\n  Module:    vtkPolyDataVS.glsl\n\n  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen\n  All rights reserved.\n  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.\n\n     This software is distributed WITHOUT ANY WARRANTY; without even\n     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR\n     PURPOSE.  See the above copyright notice for more information.\n\n=========================================================================*/\n\nattribute vec4 vertexDC;\n\nvarying vec3 vertexVCVSOutput;\nuniform mat4 DCVCMatrix;\n\nuniform float dcxmin;\nuniform float dcxmax;\nuniform float dcymin;\nuniform float dcymax;\n\nvoid main()\n{\n  // dcsmall is the device coords reduced to the\n  // x y area covered by the volume\n  vec4 dcsmall = vec4(\n    dcxmin + 0.5 * (vertexDC.x + 1.0) * (dcxmax - dcxmin),\n    dcymin + 0.5 * (vertexDC.y + 1.0) * (dcymax - dcymin),\n    vertexDC.z,\n    vertexDC.w);\n  vec4 vcpos = DCVCMatrix * dcsmall;\n  vertexVCVSOutput = vcpos.xyz/vcpos.w;\n  gl_Position = dcsmall;\n}\n"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.InterpolationType={NEAREST:0,LINEAR:1,FAST_LINEAR:2};t.default={InterpolationType:r}},function(r,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=a;var i=n(t(0)),E=t(3),A=n(t(7)),m=t(10),s=n(t(32)),u=n(t(2)),l=n(t(51)),o=n(t(19)),f=n(t(13)),h=n(t(94)),g=n(t(4)),y=t(24),v=t(35),d=t(180),p=n(t(179)),M=n(t(178)),T=n(t(177));function n(e){return e&&e.__esModule?e:{default:e}}var I=i.default.vtkWarningMacro,w=i.default.vtkErrorMacro,b={context:null,VBOBuildTime:null,scalarTexture:null,scalarTextureString:null,opacityTexture:null,opacityTextureString:null,colorTexture:null,colortextureString:null,lightingTexture:null,lightingTextureString:null,jitterTexture:null,tris:null,framebuffer:null,copyShader:null,copyVAO:null,lastXYF:1,targetXYF:1,zBufferTexture:null,lastZBufferTexture:null,lastLightComplexity:0,fullViewportTime:1,idxToView:null,idxNormalMatrix:null,avgWindowArea:0,avgFrameTime:0};function a(e,t){var c,N,r,a,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,b,n),g.default.extend(e,t,n),t.VBOBuildTime={},i.default.obj(t.VBOBuildTime,{mtime:0}),t.tris=s.default.newInstance(),t.scalarTexture=o.default.newInstance(),t.opacityTexture=o.default.newInstance(),t.colorTexture=o.default.newInstance(),t.lightingTexture=o.default.newInstance(),t.jitterTexture=o.default.newInstance(),t.jitterTexture.setWrapS(v.Wrap.REPEAT),t.jitterTexture.setWrapT(v.Wrap.REPEAT),t.framebuffer=l.default.newInstance(),t.idxToView=E.mat4.create(),t.idxNormalMatrix=E.mat3.create(),i.default.setGet(e,t,["context"]),c=e,(N=t).classHierarchy.push("vtkOpenGLVolumeMapper"),c.buildPass=function(){N.zBufferTexture=null},c.opaqueZBufferPass=function(e,t){!e||(e=t.getZBufferTexture())!==N.zBufferTexture&&(N.zBufferTexture=e)},c.volumePass=function(e,t){var n;e&&(N.openGLRenderWindow=c.getFirstAncestorOfType("vtkOpenGLRenderWindow"),N.context=N.openGLRenderWindow.getContext(),N.tris.setOpenGLRenderWindow(N.openGLRenderWindow),N.scalarTexture.setOpenGLRenderWindow(N.openGLRenderWindow),N.colorTexture.setOpenGLRenderWindow(N.openGLRenderWindow),N.opacityTexture.setOpenGLRenderWindow(N.openGLRenderWindow),N.lightingTexture.setOpenGLRenderWindow(N.openGLRenderWindow),N.jitterTexture.setOpenGLRenderWindow(N.openGLRenderWindow),N.framebuffer.setOpenGLRenderWindow(N.openGLRenderWindow),N.openGLVolume=c.getFirstAncestorOfType("vtkOpenGLVolume"),e=N.openGLVolume.getRenderable(),N.openGLRenderer=c.getFirstAncestorOfType("vtkOpenGLRenderer"),n=N.openGLRenderer.getRenderable(),N.openGLCamera=N.openGLRenderer.getViewNodeFor(n.getActiveCamera()),c.renderPiece(n,e))},c.buildShaders=function(e,t,n){c.getShaderTemplate(e,t,n),c.replaceShaderValues(e,t,n)},c.getShaderTemplate=function(e,t,n){e.Vertex=p.default,N.openGLRenderWindow.getWebgl2()?e.Fragment=T.default:e.Fragment=M.default,e.Geometry=""},c.replaceShaderValues=function(e,t,n){var r,a,i,o=e.Fragment,s=n.getProperty().getInterpolationType(),u=n.getProperty().getUseGradientOpacity(0)&&N.lightingTexture.getComputedGradients(),l=N.scalarTexture.getVolumeInfo();o=N.openGLRenderWindow.getWebgl2()?((u||0<N.lastLightComplexity)&&(o=f.default.substitute(o,"//VTK::Normal::Dec",["uniform highp sampler3D normalTexture;"]).result,o=f.default.substitute(o,"//VTK::Normal::Impl",["vec4 normal = texture(normalTexture, ijk);"]).result),i=N.currentInput.getExtent(),r=N.currentInput.getSpacing(),a=E.vec3.create(),E.vec3.set(a,(i[1]-i[0])*r[0],(i[3]-i[2])*r[1],(i[5]-i[4])*r[2]),i=E.vec3.length(a)/N.renderable.getSampleDistance(),f.default.substitute(o,"//VTK::MaximumSamplesValue",""+Math.ceil(i)).result):(o=(s===d.InterpolationType.LINEAR?f.default.substitute(o,"//VTK::ComputeTCoords",["vec2 tpos = getTextureCoord(ijk, 0.0);","vec2 tpos2 = getTextureCoord(ijk, 1.0);","float zmix = ijk.z - floor(ijk.z);"]):f.default.substitute(o,"//VTK::ComputeTCoords",["vec2 tpos = getTextureCoord(ijk, 0.5);"])).result,o=(s===d.InterpolationType.LINEAR?f.default.substitute(o,"//VTK::ScalarFunction",["scalar = getScalarValue(tpos);","float scalar2 = getScalarValue(tpos2);","scalar = mix(scalar, scalar2, zmix);"]):f.default.substitute(o,"//VTK::ScalarFunction",["scalar = getScalarValue(tpos);"])).result,(u||0<N.lastLightComplexity)&&(o=f.default.substitute(o,"//VTK::Normal::Dec",["uniform sampler2D normalTexture;"]).result,o=(s===d.InterpolationType.LINEAR?f.default.substitute(o,"//VTK::Normal::Impl",["vec4 normal = texture2D(normalTexture, tpos);","vec4 normal2 = texture2D(normalTexture, tpos2);","normal = mix(normal, normal2, zmix);"]):f.default.substitute(o,"//VTK::Normal::Impl",["vec4 normal = texture2D(normalTexture,tpos);"])).result),o=(l.encodedScalars?f.default.substitute(o,"//VTK::ScalarValueFunction::Impl",["vec4 scalarComps = texture2D(texture1, tpos);","return scalarComps.r + scalarComps.g/255.0 + scalarComps.b/65025.0;"]):f.default.substitute(o,"//VTK::ScalarValueFunction::Impl","return texture2D(texture1, tpos).r;")).result,r=N.currentInput.getExtent(),a=N.currentInput.getSpacing(),i=E.vec3.create(),E.vec3.set(i,(r[1]-r[0])*a[0],(r[3]-r[2])*a[1],(r[5]-r[4])*a[2]),s=E.vec3.length(i)/N.renderable.getSampleDistance(),f.default.substitute(o,"//VTK::MaximumSamplesValue",""+Math.ceil(s)).result),u&&(o=f.default.substitute(o,"//VTK::GradientOpacity::Dec",["uniform float goscale;","uniform float goshift;","uniform float gomin;","uniform float gomax;"]).result,o=f.default.substitute(o,"//VTK::GradientOpacity::Impl",["tcolor.a = tcolor.a*clamp(normal.a*normal.a*goscale + goshift, gomin, gomax);"]).result),null!==N.zBufferTexture&&(o=f.default.substitute(o,"//VTK::ZBuffer::Dec",["uniform sampler2D zBufferTexture;","uniform float vpWidth;","uniform float vpHeight;"]).result,o=f.default.substitute(o,"//VTK::ZBuffer::Impl",["vec4 depthVec = texture2D(zBufferTexture, vec2(gl_FragCoord.x / vpWidth, gl_FragCoord.y/vpHeight));","float zdepth = (depthVec.r*256.0 + depthVec.g)/257.0;","zdepth = zdepth * 2.0 - 1.0;","zdepth = -2.0 * camFar * camNear / (zdepth*(camFar-camNear)-(camFar+camNear)) - camNear;","zdepth = -zdepth/rayDir.z;","tbounds.y = min(zdepth,tbounds.y);"]).result),e.Fragment=o,c.replaceShaderLight(e,t,n)},c.replaceShaderLight=function(e,t,n){var r=e.Fragment;switch(N.lastLightComplexity){default:case 0:break;case 1:case 2:case 3:r=f.default.substitute(r,"//VTK::Light::Dec",["uniform float vSpecularPower;","uniform float vAmbient;","uniform float vDiffuse;","uniform float vSpecular;","//VTK::Light::Dec"],!1).result;var r=f.default.substitute(r,"//VTK::Light::Impl",["  normal.rgb = 2.0*(normal.rgb - 0.5);","  vec3 diffuse = vec3(0.0, 0.0, 0.0);","  vec3 specular = vec3(0.0, 0.0, 0.0);","  //VTK::Light::Impl","  tcolor.rgb = tcolor.rgb*(diffuse*vDiffuse + vAmbient) + specular*vSpecular;"],!1).result,a=0;t.getLights().forEach(function(e){0<e.getSwitch()&&(r=f.default.substitute(r,"//VTK::Light::Dec",["uniform vec3 lightColor"+a+";","uniform vec3 lightDirectionWC"+a+"; // normalized","uniform vec3 lightHalfAngleWC"+a+"; // normalized","//VTK::Light::Dec"],!1).result,r=f.default.substitute(r,"//VTK::Light::Impl",["  float df = abs(dot(normal.rgb, -lightDirectionWC"+a+"));","  diffuse += ((df) * lightColor"+a+");","    float sf = pow( abs(dot(lightHalfAngleWC"+a+",normal.rgb)), vSpecularPower);","    specular += ((sf) * lightColor"+a+");","  //VTK::Light::Impl"],!1).result,a++)})}e.Fragment=r},c.getNeedToRebuildShaders=function(e,t,n){var r=0,t=(n.getProperty().getShade()&&(r=0,N.numberOfLights=0,t.getLights().forEach(function(e){0<e.getSwitch()&&(N.numberOfLights++,0===r&&(r=1)),(r=1===r&&(1<N.numberOfLights||1!==e.getIntensity()||!e.lightTypeIsHeadLight())?2:r)<3&&e.getPositional()&&(r=3)})),!1);return N.lastLightComplexity!==r&&(N.lastLightComplexity=r,t=!0),!!(0===e.getProgram()||t||N.lastHaveSeenDepthRequest!==N.haveSeenDepthRequest||!!N.lastZBufferTexture!=!!N.zBufferTexture||e.getShaderSourceTime().getMTime()<c.getMTime()||e.getShaderSourceTime().getMTime()<n.getMTime()||e.getShaderSourceTime().getMTime()<N.renderable.getMTime()||e.getShaderSourceTime().getMTime()<N.currentInput.getMTime()||e.getShaderSourceTime().getMTime()<N.lightingTexture.getGradientsBuildTime().getMTime())&&(N.lastZBufferTexture=N.zBufferTexture,!0)},c.updateShaders=function(e,t,n){var r;N.lastBoundBO=e,c.getNeedToRebuildShaders(e,t,n)?(c.buildShaders(r={Vertex:null,Fragment:null,Geometry:null},t,n),(r=N.openGLRenderWindow.getShaderCache().readyShaderProgramArray(r.Vertex,r.Fragment,r.Geometry))!==e.getProgram()&&(e.setProgram(r),e.getVAO().releaseGraphicsResources()),e.getShaderSourceTime().modified()):N.openGLRenderWindow.getShaderCache().readyShaderProgram(e.getProgram()),e.getVAO().bind(),c.setMapperShaderParameters(e,t,n),c.setCameraShaderParameters(e,t,n),c.setPropertyShaderParameters(e,t,n)},c.setMapperShaderParameters=function(e,t,n){var r=e.getProgram();e.getCABO().getElementCount()&&(N.VBOBuildTime.getMTime()>e.getAttributeUpdateTime().getMTime()||e.getShaderSourceTime().getMTime()>e.getAttributeUpdateTime().getMTime())&&(r.isAttributeUsed("vertexDC")&&(e.getVAO().addAttributeArray(r,e.getCABO(),"vertexDC",e.getCABO().getVertexOffset(),e.getCABO().getStride(),N.context.FLOAT,3,N.context.FALSE)||w("Error setting vertexDC in shader VAO.")),e.getAttributeUpdateTime().modified()),r.setUniformi("texture1",N.scalarTexture.getTextureUnit()),r.setUniformf("sampleDistance",N.renderable.getSampleDistance()),null!==N.zBufferTexture&&(r.setUniformi("zBufferTexture",N.zBufferTexture.getTextureUnit()),e=c.getRenderTargetSize(),r.setUniformf("vpWidth",e[0]),r.setUniformf("vpHeight",e[1]))},c.setCameraShaderParameters=function(e,c,f){var t=N.openGLCamera.getKeyMatrices(c),r=e.getProgram(),d=N.openGLCamera.getRenderable(),n=d.getClippingRange();r.setUniformf("camThick",n[1]-n[0]),r.setUniformf("camNear",n[0]),r.setUniformf("camFar",n[1]);for(var h=N.currentInput.getBounds(),e=N.currentInput.getDimensions(),a=E.vec3.create(),g=E.vec3.create(),p=1,M=-1,m=1,v=-1,A=0;A<8;++A){E.vec3.set(a,h[A%2],h[2+Math.floor(A/2)%2],h[4+Math.floor(A/4)]),E.vec3.transformMat4(a,a,t.wcvc),E.vec3.normalize(g,a);var y=-n[0]/a[2];E.vec3.scale(a,g,y),E.vec3.transformMat4(a,a,t.vcdc),p=Math.min(a[0],p),M=Math.max(a[0],M),m=Math.min(a[1],m),v=Math.max(a[1],v)}r.setUniformf("dcxmin",p),r.setUniformf("dcxmax",M),r.setUniformf("dcymin",m),r.setUniformf("dcymax",v);var i=N.currentInput.getExtent(),o=N.currentInput.getSpacing(),s=E.vec3.create(),o=(E.vec3.set(s,(i[1]-i[0])*o[0],(i[3]-i[2])*o[1],(i[5]-i[4])*o[2]),r.setUniform3f("vSize",s[0],s[1],s[2]),E.vec3.set(a,i[0],i[2],i[4]),N.currentInput.indexToWorldVec3(a,a),E.vec3.transformMat4(a,a,t.wcvc),r.setUniform3f("vOriginVC",a[0],a[1],a[2]),N.currentInput.getIndexToWorld()),o=(E.mat4.multiply(N.idxToView,t.wcvc,o),E.mat3.copy(N.idxNormalMatrix,N.currentInput.getDirection()),E.mat3.multiply(N.idxNormalMatrix,t.normalMatrix,N.idxNormalMatrix),E.vec3.length(s)/N.renderable.getSampleDistance()),o=(o>N.renderable.getMaximumSamplesPerRay()&&I("The number of steps required "+Math.ceil(o)+" is larger than the\n        specified maximum number of steps "+N.renderable.getMaximumSamplesPerRay()+".\n        Please either change the\n        volumeMapper sampleDistance or its maximum number of samples."),E.vec3.create());N.openGLRenderWindow.getWebgl2()?E.vec3.set(o,1,1,1):E.vec3.set(o,e[0]-1,e[1]-1,e[2]-1),E.vec3.divide(o,o,s),r.setUniform3f("vVCToIJK",o[0],o[1],o[2]),N.openGLRenderWindow.getWebgl2()||(s=N.scalarTexture.getVolumeInfo(),r.setUniformf("texWidth",N.scalarTexture.getWidth()),r.setUniformf("texHeight",N.scalarTexture.getHeight()),r.setUniformi("xreps",s.xreps),r.setUniformf("xstride",s.xstride),r.setUniformf("ystride",s.ystride),r.setUniformi("repWidth",s.width),r.setUniformi("repHeight",s.height),r.setUniformi("repDepth",e[2]));for(var u=E.vec3.create(),l=E.vec3.create(),T=0;T<6;++T){switch(T){default:case 0:E.vec3.set(u,1,0,0),E.vec3.set(l,i[1],i[3],i[5]);break;case 1:E.vec3.set(u,-1,0,0),E.vec3.set(l,i[0],i[2],i[4]);break;case 2:E.vec3.set(u,0,1,0),E.vec3.set(l,i[1],i[3],i[5]);break;case 3:E.vec3.set(u,0,-1,0),E.vec3.set(l,i[0],i[2],i[4]);break;case 4:E.vec3.set(u,0,0,1),E.vec3.set(l,i[1],i[3],i[5]);break;case 5:E.vec3.set(u,0,0,-1),E.vec3.set(l,i[0],i[2],i[4])}E.vec3.transformMat3(u,u,N.idxNormalMatrix),E.vec3.transformMat4(l,l,N.idxToView);var w=-1*E.vec3.dot(l,u);r.setUniform3f("vPlaneNormal"+T,u[0],u[1],u[2]),r.setUniformf("vPlaneDistance"+T,w)}o=E.mat4.create();switch(E.mat4.invert(o,t.vcdc),r.setUniformMatrix("DCVCMatrix",o),N.lastLightComplexity){default:case 0:break;case 1:case 2:case 3:var b=0,D=d.getDirectionOfProjection(),x=[];c.getLights().forEach(function(e){var t,n;0<e.getSwitch()&&(t=e.getColor(),n=e.getIntensity(),x[0]=t[0]*n,x[1]=t[1]*n,x[2]=t[2]*n,r.setUniform3fArray("lightColor"+b,x),t=e.getDirection(),r.setUniform3fArray("lightDirectionWC"+b,t),n=[-.5*(t[0]+D[0]),-.5*(t[1]+D[1]),-.5*(t[2]+D[2])],r.setUniform3fArray("lightHalfAngleWC"+b,n),b++)})}},c.setPropertyShaderParameters=function(e,t,n){var r,a,e=e.getProgram(),i=(e.setUniformi("ctexture",N.colorTexture.getTextureUnit()),e.setUniformi("otexture",N.opacityTexture.getTextureUnit()),e.setUniformi("jtexture",N.jitterTexture.getTextureUnit()),N.scalarTexture.getVolumeInfo()),o=i.max-i.min,n=n.getProperty(),s=n.getScalarOpacity(0).getRange(),s=(e.setUniformf("oshift",(i.min-s[0])/(s[1]-s[0])),e.setUniformf("oscale",o/(s[1]-s[0])),n.getRGBTransferFunction(0).getRange()),i=(e.setUniformf("cshift",(i.min-s[0])/(s[1]-s[0])),e.setUniformf("cscale",o/(s[1]-s[0])),N.lightingTexture.getComputedGradients());n.getUseGradientOpacity(0)&&i&&(o=N.lightingTexture.getVolumeInfo(),s=n.getGradientOpacityMinimumOpacity(0),r=n.getGradientOpacityMaximumOpacity(0),e.setUniformf("gomin",s),e.setUniformf("gomax",r),a=[n.getGradientOpacityMinimumValue(0),n.getGradientOpacityMaximumValue(0)],e.setUniformf("goscale",o.max*(r-s)/(a[1]-a[0])),e.setUniformf("goshift",-a[0]*(r-s)/(a[1]-a[0])+s)),(0<N.lastLightComplexity||n.getUseGradientOpacity(0))&&i&&e.setUniformi("normalTexture",N.lightingTexture.getTextureUnit()),0<N.lastLightComplexity&&(e.setUniformf("vAmbient",n.getAmbient()),e.setUniformf("vDiffuse",n.getDiffuse()),e.setUniformf("vSpecular",n.getSpecular()),e.setUniformf("vSpecularPower",n.getSpecularPower()))},c.getRenderTargetSize=function(){var e;return 1.43<N.lastXYF?(e=N.framebuffer.getSize(),[N.fvp[0]*e[0],N.fvp[1]*e[1]]):N.openGLRenderWindow.getFramebufferSize()},c.renderPieceStart=function(e,t){N.renderable.getAutoAdjustSampleDistances()?(r=(a=e.getVTKWindow().getInteractor()).getLastFrameTime(),N.avgFrameTime=.97*N.avgFrameTime+.03*r,N.avgWindowArea=.97*N.avgWindowArea+.03/(N.lastXYF*N.lastXYF),e.getVTKWindow().getInteractor().isAnimating()?(r=Math.sqrt(N.avgFrameTime*a.getDesiredUpdateRate()/N.avgWindowArea),N.targetXYF=r=10<r?10:r):N.targetXYF=Math.sqrt(N.avgFrameTime*a.getStillUpdateRate()/N.avgWindowArea),N.targetXYF<1.53&&1.33<N.targetXYF&&(N.targetXYF=N.lastXYF),Math.abs(1-N.targetXYF/N.lastXYF)<.1&&(N.targetXYF=N.lastXYF),N.lastXYF=N.targetXYF):N.lastXYF=N.renderable.getImageSampleDistance(),N.lastXYF<=1.43&&(N.lastXYF=1);var n,r=N.lastXYF,a=N.openGLRenderWindow.getFramebufferSize();1.43<r&&(N.framebuffer.saveCurrentBindingsAndBuffers(),null===N.framebuffer.getGLFramebuffer()?(N.framebuffer.create(Math.floor(.7*a[0]),Math.floor(.7*a[1])),N.framebuffer.populateFramebuffer()):(n=N.framebuffer.getSize())[0]===Math.floor(.7*a[0])&&n[1]===Math.floor(.7*a[1])||(console.log("resizing"),N.framebuffer.create(Math.floor(.7*a[0]),Math.floor(.7*a[1])),N.framebuffer.populateFramebuffer()),N.framebuffer.bind(),(n=N.context).clearColor(0,0,0,0),n.colorMask(!0,!0,!0,!0),n.clear(n.COLOR_BUFFER_BIT),n.viewport(0,0,a[0]/r,a[1]/r),N.fvp=[Math.floor(a[0]/r)/Math.floor(.7*a[0]),Math.floor(a[1]/r)/Math.floor(.7*a[1])]),N.context.disable(N.context.DEPTH_TEST),c.updateBufferObjects(e,t),t.getProperty().getInterpolationType()===d.InterpolationType.NEAREST?(N.scalarTexture.setMinificationFilter(v.Filter.NEAREST),N.scalarTexture.setMagnificationFilter(v.Filter.NEAREST),N.lightingTexture.setMinificationFilter(v.Filter.NEAREST),N.lightingTexture.setMagnificationFilter(v.Filter.NEAREST)):(N.scalarTexture.setMinificationFilter(v.Filter.LINEAR),N.scalarTexture.setMagnificationFilter(v.Filter.LINEAR),N.lightingTexture.setMinificationFilter(v.Filter.LINEAR),N.lightingTexture.setMagnificationFilter(v.Filter.LINEAR)),(N.lastBoundBO=null)!==N.zBufferTexture&&N.zBufferTexture.activate()},r=null,a=!1,c.renderPieceDraw=function(e,t){var n=N.context;N.scalarTexture.activate(),N.opacityTexture.activate(),N.colorTexture.activate(),N.jitterTexture.activate(),(t.getProperty().getShade()||t.getProperty().getUseGradientOpacity(0))&&(N.lightingTexture.getComputedGradients()?(N.lightingTexture.activate(),a||(a=!0,N.renderable.invokeLightingActivated())):(null!==r&&clearTimeout(r),r=setTimeout(function(){N.openGLRenderWindow.modified()},20),a=!1)),c.updateShaders(N.tris,e,t),n.drawArrays(n.TRIANGLES,0,N.tris.getCABO().getElementCount()),N.tris.getVAO().release(),N.scalarTexture.deactivate(),N.colorTexture.deactivate(),N.opacityTexture.deactivate(),N.jitterTexture.deactivate(),(t.getProperty().getShade()||t.getProperty().getUseGradientOpacity(0))&&N.lightingTexture.deactivate()},c.renderPieceFinish=function(e,t){var n,r;null!==N.zBufferTexture&&N.zBufferTexture.deactivate(),1.43<N.lastXYF&&(N.framebuffer.restorePreviousBindingsAndBuffers(),null===N.copyShader?(N.copyShader=N.openGLRenderWindow.getShaderCache().readyShaderProgramArray(["//VTK::System::Dec","attribute vec4 vertexDC;","uniform vec2 tfactor;","varying vec2 tcoord;","void main() { tcoord = vec2(vertexDC.x*0.5 + 0.5, vertexDC.y*0.5 + 0.5) * tfactor; gl_Position = vertexDC; }"].join("\n"),["//VTK::System::Dec","//VTK::Output::Dec","uniform sampler2D texture1;","varying vec2 tcoord;","void main() { gl_FragData[0] = texture2D(texture1,tcoord); }"].join("\n"),""),n=N.copyShader,N.copyVAO=h.default.newInstance(),N.copyVAO.setOpenGLRenderWindow(N.openGLRenderWindow),N.tris.getCABO().bind(),N.copyVAO.addAttributeArray(n,N.tris.getCABO(),"vertexDC",N.tris.getCABO().getVertexOffset(),N.tris.getCABO().getStride(),N.context.FLOAT,3,N.context.FALSE)||w("Error setting vertexDC in copy shader VAO.")):N.openGLRenderWindow.getShaderCache().readyShaderProgram(N.copyShader),n=N.openGLRenderWindow.getFramebufferSize(),N.context.viewport(0,0,n[0],n[1]),(n=N.framebuffer.getColorTexture()).activate(),N.copyShader.setUniformi("texture",n.getTextureUnit()),N.copyShader.setUniform2f("tfactor",N.fvp[0],N.fvp[1]),(r=N.context).blendFuncSeparate(r.ONE,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA),N.context.drawArrays(N.context.TRIANGLES,0,N.tris.getCABO().getElementCount()),n.deactivate(),r.blendFuncSeparate(r.SRC_ALPHA,r.ONE_MINUS_SRC_ALPHA,r.ONE,r.ONE_MINUS_SRC_ALPHA))},c.renderPiece=function(e,t){c.invokeEvent({type:"StartEvent"}),N.renderable.update(),N.currentInput=N.renderable.getInputData(),c.invokeEvent({type:"EndEvent"}),N.currentInput?(c.renderPieceStart(e,t),c.renderPieceDraw(e,t),c.renderPieceFinish(e,t)):w("No input!")},c.computeBounds=function(e,t){c.getInput()?N.bounnds=c.getInput().getBounds():u.default.uninitializeBounds(N.Bounds)},c.updateBufferObjects=function(e,t){c.getNeedToRebuildBufferObjects(e,t)&&c.buildBufferObjects(e,t)},c.getNeedToRebuildBufferObjects=function(e,t){return N.VBOBuildTime.getMTime()<c.getMTime()||N.VBOBuildTime.getMTime()<t.getMTime()||N.VBOBuildTime.getMTime()<N.renderable.getMTime()||N.VBOBuildTime.getMTime()<t.getProperty().getMTime()||N.VBOBuildTime.getMTime()<N.currentInput.getMTime()},c.buildBufferObjects=function(c,e){var t=N.currentInput;if(null!==t){e=e.getProperty();if(!N.jitterTexture.getHandle()){for(var f=new Uint8Array(1024),n=0;n<1024;++n)f[n]=255*Math.random();N.jitterTexture.setMinificationFilter(v.Filter.LINEAR),N.jitterTexture.setMagnificationFilter(v.Filter.LINEAR),N.jitterTexture.create2DFromRaw(32,32,1,m.VtkDataTypes.UNSIGNED_CHAR,f)}var r=e.getScalarOpacity(0),d=N.renderable.getSampleDistance()/e.getScalarOpacityUnitDistance(0),a=r.getMTime()+"A"+d;if(N.opacityTextureString!==a){var i=r.getRange(),h=new Float32Array(1024);r.getTable(i[0],i[1],1024,h,1);for(var g=new Uint8Array(1024),o=0;o<1024;++o)g[o]=255*(1-Math.pow(1-h[o],d));N.opacityTexture.setMinificationFilter(v.Filter.LINEAR),N.opacityTexture.setMagnificationFilter(v.Filter.LINEAR),N.opacityTexture.create2DFromRaw(1024,1,1,m.VtkDataTypes.UNSIGNED_CHAR,g),N.opacityTextureString=a}r=e.getRGBTransferFunction(0);if(a=""+r.getMTime(),N.colorTextureString!==a){var i=r.getRange(),p=new Float32Array(3072);r.getTable(i[0],i[1],1024,p,1);for(var M=new Uint8Array(3072),s=0;s<3072;++s)M[s]=255*p[s];N.colorTexture.setMinificationFilter(v.Filter.LINEAR),N.colorTexture.setMagnificationFilter(v.Filter.LINEAR),N.colorTexture.create2DFromRaw(1024,1,3,m.VtkDataTypes.UNSIGNED_CHAR,M),N.colorTextureString=a}a=""+t.getMTime(),i=(N.scalarTextureString!==a&&(r=t.getDimensions(),N.scalarTexture.resetFormatAndType(),N.scalarTexture.create3DOneComponentFromRaw(r[0],r[1],r[2],t.getPointData().getScalars().getDataType(),t.getPointData().getScalars().getData()),N.scalarTextureString=a),e.getShade()),r=e.getUseGradientOpacity(0);if(a=""+t.getMTime(),(i||r)&&N.lightingTextureString!==a&&(N.lightingTexture.resetFormatAndType(),N.lightingTexture.create3DLighting(N.scalarTexture,t.getPointData().getScalars().getData(),t.getSpacing()),N.lightingTextureString=a),!N.tris.getCABO().getElementCount()){for(var u=new Float32Array(12),l=0;l<4;l++)u[3*l]=l%2*2-1,u[3*l+1]=1<l?1:-1,u[3*l+2]=-1;e=new Uint16Array(8),i=(e[0]=3,e[1]=0,e[2]=1,e[3]=3,e[4]=3,e[5]=0,e[6]=3,e[7]=2,A.default.newInstance({numberOfComponents:3,values:u})),r=(i.setName("points"),A.default.newInstance({numberOfComponents:1,values:e}));N.tris.getCABO().createVBO(r,"polys",y.Representation.SURFACE,{points:i,cellOffset:0})}N.VBOBuildTime.modified()}}}t=e.newInstance=i.default.newInstance(a,"vtkOpenGLVolumeMapper");e.default={newInstance:t,extend:a}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=a;var i=n(3),o=r(n(0)),s=r(n(4));function r(e){return e&&e.__esModule?e:{default:e}}var u={};function a(e,t){var n,r,a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,u,a),s.default.extend(e,t,a),t.keyMatrixTime={},o.default.obj(t.keyMatrixTime),t.normalMatrix=i.mat3.create(),t.MCWCMatrix=i.mat4.create(),o.default.setGet(e,t,["context"]),n=e,(r=t).classHierarchy.push("vtkOpenGLVolume"),n.buildPass=function(e){r.renderable&&r.renderable.getVisibility()&&e&&(n.prepareNodes(),n.addMissingNode(r.renderable.getMapper()),n.removeUnusedNodes())},n.queryPass=function(e,t){e&&r.renderable&&r.renderable.getVisibility()&&t.incrementVolumeCount()},n.traverseVolumePass=function(e){r.renderable&&r.renderable.getVisibility()&&(n.apply(e,!0),r.children[0].traverse(e),n.apply(e,!1))},n.volumePass=function(e){r.renderable&&r.renderable.getVisibility()&&(e?(r.context=n.getFirstAncestorOfType("vtkOpenGLRenderWindow").getContext(),r.context.depthMask(!1)):r.context.depthMask(!0))},n.getKeyMatrices=function(){return r.renderable.getMTime()>r.keyMatrixTime.getMTime()&&(r.renderable.computeMatrix(),i.mat4.copy(r.MCWCMatrix,r.renderable.getMatrix()),i.mat4.transpose(r.MCWCMatrix,r.MCWCMatrix),r.renderable.getIsIdentity()?i.mat3.identity(r.normalMatrix):(i.mat3.fromMat4(r.normalMatrix,r.MCWCMatrix),i.mat3.invert(r.normalMatrix,r.normalMatrix)),r.keyMatrixTime.modified()),{mcwc:r.MCWCMatrix,normalMatrix:r.normalMatrix}}}n=t.newInstance=o.default.newInstance(a,"vtkOpenGLVolume");t.default={newInstance:n,extend:a}},function(e,t){e.exports="//VTK::System::Dec\n\n/*=========================================================================\n\n  Program:   Visualization Toolkit\n  Module:    vtkStickMapperVS.glsl\n\n  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen\n  All rights reserved.\n  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.\n\n     This software is distributed WITHOUT ANY WARRANTY; without even\n     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR\n     PURPOSE.  See the above copyright notice for more information.\n\n=========================================================================*/\n// this shader implements imposters in OpenGL for Sticks\n\nattribute vec4 vertexMC;\nattribute vec3 orientMC;\nattribute vec4 offsetMC;\nattribute float radiusMC;\n\n// optional normal declaration\n//VTK::Normal::Dec\n\n//VTK::Picking::Dec\n\n// Texture coordinates\n//VTK::TCoord::Dec\n\nuniform mat3 normalMatrix; // transform model coordinate directions to view coordinates\n\n// material property values\n//VTK::Color::Dec\n\n// clipping plane vars\n//VTK::Clip::Dec\n\n// camera and actor matrix values\n//VTK::Camera::Dec\n\nvarying vec4 vertexVCVSOutput;\nvarying float radiusVCVSOutput;\nvarying float lengthVCVSOutput;\nvarying vec3 centerVCVSOutput;\nvarying vec3 orientVCVSOutput;\n\nuniform int cameraParallel;\n\nvoid main()\n{\n  //VTK::Picking::Impl\n\n  //VTK::Color::Impl\n\n  //VTK::Normal::Impl\n\n  //VTK::TCoord::Impl\n\n  //VTK::Clip::Impl\n\n  vertexVCVSOutput = MCVCMatrix * vertexMC;\n  centerVCVSOutput = vertexVCVSOutput.xyz;\n  radiusVCVSOutput = radiusMC;\n  lengthVCVSOutput = length(orientMC);\n  orientVCVSOutput = normalMatrix * normalize(orientMC);\n\n  // make sure it is pointing out of the screen\n  if (orientVCVSOutput.z < 0.0)\n    {\n    orientVCVSOutput = -orientVCVSOutput;\n    }\n\n  // make the basis\n  vec3 xbase;\n  vec3 ybase;\n  vec3 dir = vec3(0.0,0.0,1.0);\n  if (cameraParallel == 0)\n    {\n    dir = normalize(-vertexVCVSOutput.xyz);\n    }\n  if (abs(dot(dir,orientVCVSOutput)) == 1.0)\n    {\n    xbase = normalize(cross(vec3(0.0,1.0,0.0),orientVCVSOutput));\n    ybase = cross(xbase,orientVCVSOutput);\n    }\n  else\n    {\n    xbase = normalize(cross(orientVCVSOutput,dir));\n    ybase = cross(orientVCVSOutput,xbase);\n    }\n\n  vec3 offsets = offsetMC.xyz*2.0-1.0;\n  vertexVCVSOutput.xyz = vertexVCVSOutput.xyz +\n    radiusVCVSOutput*offsets.x*xbase +\n    radiusVCVSOutput*offsets.y*ybase +\n    0.5*lengthVCVSOutput*offsets.z*orientVCVSOutput;\n\n  gl_Position = VCDCMatrix * vertexVCVSOutput;\n}\n"},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=a;var s=t(3),b=t(25),n=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(t(0)),D=r(t(34)),l=r(t(183)),c=r(t(31)),u=r(t(13)),f=r(t(33));function r(e){return e&&e.__esModule?e:{default:e}}var x=n.vtkErrorMacro,d={};function a(e,t){var w,o,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,d,n),f.default.extend(e,t,n),n=e,(w=t).classHierarchy.push("vtkOpenGLStickMapper"),o=Object.assign({},n),n.getShaderTemplate=function(e,t,n){e.Vertex=l.default,e.Fragment=c.default,e.Geometry=""},n.replaceShaderValues=function(e,t,n){var r=e.Vertex,a=e.Fragment,r=u.default.substitute(r,"//VTK::Camera::Dec",["uniform mat4 VCDCMatrix;\n","uniform mat4 MCVCMatrix;"]).result,a=u.default.substitute(a,"//VTK::PositionVC::Dec","varying vec4 vertexVCVSOutput;").result,i=(a=u.default.substitute(a,"//VTK::PositionVC::Impl","  vec4 vertexVC = vertexVCVSOutput;\n").result,a=u.default.substitute(a,"//VTK::Normal::Dec",["uniform int cameraParallel;\n","varying float radiusVCVSOutput;\n","varying vec3 orientVCVSOutput;\n","varying float lengthVCVSOutput;\n","varying vec3 centerVCVSOutput;\n","uniform mat4 VCDCMatrix;\n"]).result,"");w.context.getExtension("EXT_frag_depth")&&(i="  gl_FragDepthEXT = (pos.z / pos.w + 1.0) / 2.0;\n"),a=u.default.substitute(a,"//VTK::Depth::Impl",["  vec3 EyePos;\n","  vec3 EyeDir;\n","  if (cameraParallel != 0) {\n","    EyePos = vec3(vertexVC.x, vertexVC.y, vertexVC.z + 3.0*radiusVCVSOutput);\n","    EyeDir = vec3(0.0,0.0,-1.0); }\n","  else {\n","    EyeDir = vertexVC.xyz;\n","    EyePos = vec3(0.0,0.0,0.0);\n","    float lengthED = length(EyeDir);\n","    EyeDir = normalize(EyeDir);\n","    if (lengthED > radiusVCVSOutput*3.0) {\n","      EyePos = vertexVC.xyz - EyeDir*3.0*radiusVCVSOutput; }\n","    }\n","  EyePos = EyePos - centerVCVSOutput;\n","  vec3 base1;\n","  if (abs(orientVCVSOutput.z) < 0.99) {\n","    base1 = normalize(cross(orientVCVSOutput,vec3(0.0,0.0,1.0))); }\n","  else {\n","    base1 = normalize(cross(orientVCVSOutput,vec3(0.0,1.0,0.0))); }\n","  vec3 base2 = cross(orientVCVSOutput,base1);\n","  EyePos = vec3(dot(EyePos,base1),dot(EyePos,base2),dot(EyePos,orientVCVSOutput));\n","  EyeDir = vec3(dot(EyeDir,base1),dot(EyeDir,base2),dot(EyeDir,orientVCVSOutput));\n","  EyePos = EyePos/radiusVCVSOutput;\n","  float a = EyeDir.x*EyeDir.x + EyeDir.y*EyeDir.y;\n","  float b = 2.0*(EyePos.x*EyeDir.x + EyePos.y*EyeDir.y);\n","  float c = EyePos.x*EyePos.x + EyePos.y*EyePos.y - 1.0;\n","  float d = b*b - 4.0*a*c;\n","  vec3 normalVCVSOutput = vec3(0.0,0.0,1.0);\n","  if (d < 0.0) { discard; }\n","  else {\n","    float t =  (-b - sqrt(d))/(2.0*a);\n","    float tz = EyePos.z + t*EyeDir.z;\n","    vec3 iPoint = EyePos + t*EyeDir;\n","    if (abs(iPoint.z)*radiusVCVSOutput > lengthVCVSOutput*0.5) {\n","      float t2 = (-b + sqrt(d))/(2.0*a);\n","      float tz2 = EyePos.z + t2*EyeDir.z;\n","      if (tz2*radiusVCVSOutput > lengthVCVSOutput*0.5 || tz*radiusVCVSOutput < -0.5*lengthVCVSOutput) { discard; }\n","      else {\n","        normalVCVSOutput = orientVCVSOutput;\n","        float t3 = (lengthVCVSOutput*0.5/radiusVCVSOutput - EyePos.z)/EyeDir.z;\n","        iPoint = EyePos + t3*EyeDir;\n","        vertexVC.xyz = radiusVCVSOutput*(iPoint.x*base1 + iPoint.y*base2 + iPoint.z*orientVCVSOutput) + centerVCVSOutput;\n","        }\n","      }\n","    else {\n","      normalVCVSOutput = iPoint.x*base1 + iPoint.y*base2;\n","      vertexVC.xyz = radiusVCVSOutput*(normalVCVSOutput + iPoint.z*orientVCVSOutput) + centerVCVSOutput;\n","      }\n","    }\n","  vec4 pos = VCDCMatrix * vertexVC;\n",i]).result,a=u.default.substitute(a,"//VTK::Normal::Impl","").result,t.getSelector(),i="",w.haveSeenDepthRequest&&(a=u.default.substitute(a,"//VTK::ZBuffer::Impl",["if (depthRequest == 1) {","float computedZ = (pos.z / pos.w + 1.0) / 2.0;","float iz = floor(computedZ * 65535.0 + 0.1);","float rf = floor(iz/256.0)/255.0;","float gf = mod(iz,256.0)/255.0;","gl_FragData[0] = vec4(rf, gf, 0.0, 1.0); }"]).result),e.Vertex=r,e.Fragment=a,o.replaceShaderValues(e,t,n)},n.setMapperShaderParameters=function(e,t,n){e.getCABO().getElementCount()&&(w.VBOBuildTime>e.getAttributeUpdateTime().getMTime()||e.getShaderSourceTime().getMTime()>e.getAttributeUpdateTime().getMTime())&&(t.getSelector(),e.getProgram().isAttributeUsed("orientMC")&&(e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"orientMC",12,e.getCABO().getStride(),w.context.FLOAT,3,!1)||x("Error setting 'orientMC' in shader VAO.")),e.getProgram().isAttributeUsed("offsetMC")&&(e.getVAO().addAttributeArray(e.getProgram(),e.getCABO().getColorBO(),"offsetMC",0,e.getCABO().getColorBOStride(),w.context.UNSIGNED_BYTE,3,!0)||x("Error setting 'offsetMC' in shader VAO.")),e.getProgram().isAttributeUsed("radiusMC")&&(e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"radiusMC",24,e.getCABO().getStride(),w.context.FLOAT,1,!1)||x("Error setting 'radiusMC' in shader VAO.")),e.getVAO().removeAttributeArray("selectionId")),o.setMapperShaderParameters(e,t,n)},n.setCameraShaderParameters=function(e,t,n){var r,a=e.getProgram(),i=t.getActiveCamera(),t=w.openGLCamera.getKeyMatrices(t);a.isUniformUsed("VCDCMatrix")&&a.setUniformMatrix("VCDCMatrix",t.vcdc),n.getIsIdentity()?(a.isUniformUsed("MCVCMatrix")&&a.setUniformMatrix("MCVCMatrix",t.wcvc),a.isUniformUsed("normalMatrix")&&a.setUniformMatrix3x3("normalMatrix",t.normalMatrix)):(n=w.openGLActor.getKeyMatrices(),r=s.mat4.create(),a.isUniformUsed("MCVCMatrix")&&(s.mat4.multiply(r,t.wcvc,n.mcwc),a.setUniformMatrix("MCVCMatrix",r)),a.isUniformUsed("normalMatrix")&&(r=s.mat3.create(),s.mat3.multiply(r,t.normalMatrix,n.normalMatrix),a.setUniformMatrix3x3("normalMatrix",r))),a.isUniformUsed("cameraParallel")&&e.getProgram().setUniformi("cameraParallel",i.getParallelProjection())},n.getOpenGLMode=function(e,t){return w.context.TRIANGLES},n.buildBufferObjects=function(c,f){var e=w.currentInput;if(null!==e){w.renderable.mapScalars(e,1);var d=w.renderable.getColorMapColors(),t=w.primitives[w.primTypes.Tris].getCABO(),h=e.getPointData(),e=e.getPoints(),g=e.getNumberOfPoints(),p=e.getData(),n=null,M=0,r=(t.setColorBOStride(4),t.getColorBO()||t.setColorBO(D.default.newInstance()),t.getColorBO().setOpenGLRenderWindow(w.openGLRenderWindow),d&&(M=d.getNumberOfComponents(),t.setColorOffset(4),n=d.getData(),t.setColorBOStride(8)),t.setColorComponents(M),t.setStride(28),new Float32Array(7*g*12)),a=new Uint8Array(12*g*(n?8:4)),m=null,v=null;null!=w.renderable.getScaleArray()&&h.hasArray(w.renderable.getScaleArray())&&(m=h.getArray(w.renderable.getScaleArray()).getData()),null!=w.renderable.getOrientationArray()&&h.hasArray(w.renderable.getOrientationArray())?v=h.getArray(w.renderable.getOrientationArray()).getData():x(["Error setting orientationArray.\n","You have to specify the stick orientation"]);for(var i,A=[0,1,3,0,3,2,2,3,5,2,5,4],o=0,s=0,u=0;u<g;++u){var y=w.renderable.getLength(),T=w.renderable.getRadius();m&&(y=m[2*u],T=m[2*u+1]);for(var l=0;l<A.length;++l)i=3*u,r[o++]=p[i++],r[o++]=p[i++],r[o++]=p[+i],i=3*u,r[o++]=v[i++]*y,r[o++]=v[i++]*y,r[o++]=v[+i]*y,r[o++]=T,a[s++]=A[l]%2*255,a[s++]=4<=A[l]?255:0,a[s++]=2<=A[l]?255:0,a[s++]=255,i=u*M,n&&(a[s++]=n[i],a[s++]=n[1+i],a[s++]=n[2+i],a[s++]=n[3+i])}t.setElementCount(o/7),t.upload(r,b.ObjectType.ARRAY_BUFFER),t.getColorBO().upload(a,b.ObjectType.ARRAY_BUFFER),w.VBOBuildTime.modified()}}}t=e.newInstance=n.newInstance(a,"vtkOpenGLStickMapper");e.default={newInstance:t,extend:a}},function(e,t){e.exports="//VTK::System::Dec\n\n/*=========================================================================\n\n  Program:   Visualization Toolkit\n  Module:    vtkSphereMapperVS.glsl\n\n  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen\n  All rights reserved.\n  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.\n\n     This software is distributed WITHOUT ANY WARRANTY; without even\n     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR\n     PURPOSE.  See the above copyright notice for more information.\n\n=========================================================================*/\n// this shader implements imposters in OpenGL for Spheres\n\nattribute vec4 vertexMC;\nattribute vec2 offsetMC;\n\n// optional normal declaration\n//VTK::Normal::Dec\n\n// Texture coordinates\n//VTK::TCoord::Dec\n\nuniform mat3 normalMatrix; // transform model coordinate directions to view coordinates\n\n// material property values\n//VTK::Color::Dec\n\n// clipping plane vars\n//VTK::Clip::Dec\n\n// camera and actor matrix values\n//VTK::Camera::Dec\n\nvarying vec4 vertexVCVSOutput;\nvarying float radiusVCVSOutput;\nvarying vec3 centerVCVSOutput;\n\nuniform int cameraParallel;\n\nvoid main()\n{\n  //VTK::Color::Impl\n\n  //VTK::Normal::Impl\n\n  //VTK::TCoord::Impl\n\n  //VTK::Clip::Impl\n\n  // compute the projected vertex position\n  vertexVCVSOutput = MCVCMatrix * vertexMC;\n  centerVCVSOutput = vertexVCVSOutput.xyz;\n  radiusVCVSOutput = length(offsetMC)*0.5;\n\n  // make the triangle face the camera\n  if (cameraParallel == 0)\n    {\n    vec3 dir = normalize(-vertexVCVSOutput.xyz);\n    vec3 base2 = normalize(cross(dir,vec3(1.0,0.0,0.0)));\n    vec3 base1 = cross(base2,dir);\n    vertexVCVSOutput.xyz = vertexVCVSOutput.xyz + offsetMC.x*base1 + offsetMC.y*base2;\n    }\n  else\n    {\n    // add in the offset\n    vertexVCVSOutput.xy = vertexVCVSOutput.xy + offsetMC;\n    }\n\n  gl_Position = VCDCMatrix * vertexVCVSOutput;\n}\n"},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=a;var s=t(3),T=t(25),n=r(t(0)),w=r(t(34)),b=r(t(2)),u=r(t(13)),l=r(t(33)),c=r(t(185)),f=r(t(31));function r(e){return e&&e.__esModule?e:{default:e}}var d=n.default.vtkErrorMacro,h={};function a(e,t){var y,o,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,h,n),l.default.extend(e,t,n),n=e,(y=t).classHierarchy.push("vtkOpenGLSphereMapper"),o=Object.assign({},n),n.getShaderTemplate=function(e,t,n){e.Vertex=c.default,e.Fragment=f.default,e.Geometry=""},n.replaceShaderValues=function(e,t,n){var r=e.Vertex,a=e.Fragment,r=u.default.substitute(r,"//VTK::Camera::Dec",["uniform mat4 VCDCMatrix;\n","uniform mat4 MCVCMatrix;"]).result,a=u.default.substitute(a,"//VTK::PositionVC::Dec",["varying vec4 vertexVCVSOutput;"]).result,i=(a=u.default.substitute(a,"//VTK::PositionVC::Impl",["vec4 vertexVC = vertexVCVSOutput;\n"]).result,a=u.default.substitute(a,"//VTK::Normal::Dec",["uniform float invertedDepth;\n","uniform int cameraParallel;\n","varying float radiusVCVSOutput;\n","varying vec3 centerVCVSOutput;\n","uniform mat4 VCDCMatrix;\n"]).result,"");y.context.getExtension("EXT_frag_depth")&&(i="gl_FragDepthEXT = (pos.z / pos.w + 1.0) / 2.0;\n"),a=u.default.substitute(a,"//VTK::Depth::Impl",["  vec3 EyePos;\n","  vec3 EyeDir;\n","  if (cameraParallel != 0) {\n","    EyePos = vec3(vertexVC.x, vertexVC.y, vertexVC.z + 3.0*radiusVCVSOutput);\n","    EyeDir = vec3(0.0,0.0,-1.0); }\n","  else {\n","    EyeDir = vertexVC.xyz;\n","    EyePos = vec3(0.0,0.0,0.0);\n","    float lengthED = length(EyeDir);\n","    EyeDir = normalize(EyeDir);\n","    if (lengthED > radiusVCVSOutput*3.0) {\n","      EyePos = vertexVC.xyz - EyeDir*3.0*radiusVCVSOutput; }\n","    }\n","  EyePos = EyePos - centerVCVSOutput;\n","  EyePos = EyePos/radiusVCVSOutput;\n","  float b = 2.0*dot(EyePos,EyeDir);\n","  float c = dot(EyePos,EyePos) - 1.0;\n","  float d = b*b - 4.0*c;\n","  vec3 normalVCVSOutput = vec3(0.0,0.0,1.0);\n","  if (d < 0.0) { discard; }\n","  else {\n","    float t = (-b - invertedDepth*sqrt(d))*0.5;\n","    normalVCVSOutput = invertedDepth*normalize(EyePos + t*EyeDir);\n","    vertexVC.xyz = normalVCVSOutput*radiusVCVSOutput + centerVCVSOutput;\n","    }\n","  vec4 pos = VCDCMatrix * vertexVC;\n",i]).result,a=u.default.substitute(a,"//VTK::Normal::Impl","").result,y.haveSeenDepthRequest&&(a=u.default.substitute(a,"//VTK::ZBuffer::Impl",["if (depthRequest == 1) {","float computedZ = (pos.z / pos.w + 1.0) / 2.0;","float iz = floor(computedZ * 65535.0 + 0.1);","float rf = floor(iz/256.0)/255.0;","float gf = mod(iz,256.0)/255.0;","gl_FragData[0] = vec4(rf, gf, 0.0, 1.0); }"]).result),e.Vertex=r,e.Fragment=a,o.replaceShaderValues(e,t,n)},n.setMapperShaderParameters=function(e,t,n){e.getCABO().getElementCount()&&(y.VBOBuildTime>e.getAttributeUpdateTime().getMTime()||e.getShaderSourceTime().getMTime()>e.getAttributeUpdateTime().getMTime())&&e.getProgram().isAttributeUsed("offsetMC")&&(e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"offsetMC",12,e.getCABO().getStride(),y.context.FLOAT,2,!1)||d("Error setting 'offsetMC' in shader VAO.")),e.getProgram().isUniformUsed("invertedDepth")&&e.getProgram().setUniformf("invertedDepth",y.invert?-1:1),o.setMapperShaderParameters(e,t,n)},n.setCameraShaderParameters=function(e,t,n){var r,a=e.getProgram(),i=t.getActiveCamera(),t=y.openGLCamera.getKeyMatrices(t);a.isUniformUsed("VCDCMatrix")&&a.setUniformMatrix("VCDCMatrix",t.vcdc),a.isUniformUsed("MCVCMatrix")&&(n.getIsIdentity()?a.setUniformMatrix("MCVCMatrix",t.wcvc):(n=y.openGLActor.getKeyMatrices(),r=s.mat4.create(),s.mat4.multiply(r,t.wcvc,n.mcwc),a.setUniformMatrix("MCVCMatrix",r))),a.isUniformUsed("cameraParallel")&&e.getProgram().setUniformi("cameraParallel",i.getParallelProjection())},n.getOpenGLMode=function(e,t){return y.context.TRIANGLES},n.buildBufferObjects=function(c,f){var d=y.currentInput;if(null!==d){y.renderable.mapScalars(d,1);var h=y.renderable.getColorMapColors(),e=y.primitives[y.primTypes.Tris].getCABO(),g=d.getPointData(),d=d.getPoints(),p=d.getNumberOfPoints(),t=d.getData(),M=null,n=(null!=y.renderable.getScaleArray()&&g.hasArray(y.renderable.getScaleArray())&&(M=g.getArray(y.renderable.getScaleArray()).getData()),null),m=0,r=null,a=(h?(m=h.getNumberOfComponents(),e.setColorOffset(0),e.setColorBOStride(4),n=h.getData(),r=new Uint8Array(3*p*4),e.getColorBO()||e.setColorBO(w.default.newInstance()),e.getColorBO().setOpenGLRenderWindow(y.openGLRenderWindow)):e.getColorBO()&&e.setColorBO(null),e.setColorComponents(m),new Float32Array(5*p*3));e.setStride(20);for(var i,v=Math.cos(b.default.radiansFromDegrees(30)),o=0,s=0,u=0,l=0;l<p;++l){var A=y.renderable.getRadius();M&&(A=M[l]),i=3*l,a[s++]=t[i++],a[s++]=t[i++],a[s++]=t[+i],a[s++]=-2*A*v,a[s++]=-A,n&&(r[u++]=n[o=l*m],r[u++]=n[o+1],r[u++]=n[o+2],r[u++]=n[o+3]),i=3*l,a[s++]=t[i++],a[s++]=t[i++],a[s++]=t[+i],a[s++]=2*A*v,a[s++]=-A,n&&(r[u++]=n[o],r[u++]=n[o+1],r[u++]=n[o+2],r[u++]=n[o+3]),i=3*l,a[s++]=t[i++],a[s++]=t[i++],a[s++]=t[+i],a[s++]=0,a[s++]=2*A,n&&(r[u++]=n[o],r[u++]=n[o+1],r[u++]=n[o+2],r[u++]=n[o+3])}e.setElementCount(s/5),e.upload(a,T.ObjectType.ARRAY_BUFFER),h&&e.getColorBO().upload(r,T.ObjectType.ARRAY_BUFFER),y.VBOBuildTime.modified()}}}t=e.newInstance=n.default.newInstance(a,"vtkOpenGLSphereMapper");e.default={newInstance:t,extend:a}},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=a;var o=t(3),r=n(t(0)),s=n(t(7)),u=n(t(32)),l=n(t(4)),f=n(t(19)),d=t(24);function n(e){return e&&e.__esModule?e:{default:e}}var c=r.default.vtkErrorMacro,h={context:null};function a(e,t){var a,i,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,h,n),l.default.extend(e,t,n),t.openGLTexture=f.default.newInstance(),t.tris=u.default.newInstance(),t.keyMatrixTime={},r.default.obj(t.keyMatrixTime,{mtime:0}),t.keyMatrices={normalMatrix:o.mat3.create(),mcwc:o.mat4.create()},r.default.setGet(e,t,["context"]),r.default.get(e,t,["activeTextures"]),a=e,(i=t).classHierarchy.push("vtkOpenGLSkybox"),a.buildPass=function(e){e&&(i.openGLRenderer=a.getFirstAncestorOfType("vtkOpenGLRenderer"),i.openGLRenderWindow=i.openGLRenderer.getParent(),i.context=i.openGLRenderWindow.getContext(),i.tris.setOpenGLRenderWindow(i.openGLRenderWindow),i.openGLTexture.setOpenGLRenderWindow(i.openGLRenderWindow),e=i.openGLRenderer.getRenderable(),i.openGLCamera=i.openGLRenderer.getViewNodeFor(e.getActiveCamera()))},a.queryPass=function(e,t){e&&i.renderable&&i.renderable.getVisibility()&&t.incrementOpaqueActorCount()},a.opaquePass=function(e,t){var n,r;e&&(a.updateBufferObjects(),i.openGLRenderWindow.enableDepthMask(),i.openGLRenderWindow.getShaderCache().readyShaderProgram(i.tris.getProgram()),i.openGLTexture.render(i.openGLRenderWindow),e=i.openGLTexture.getTextureUnit(),i.tris.getProgram().setUniformi("sbtexture",e),e=i.openGLRenderer.getRenderable(),r=i.openGLCamera.getKeyMatrices(e),n=o.mat4.create(),o.mat4.invert(n,r.wcdc),i.tris.getProgram().setUniformMatrix("IMCDCMatrix",n),r=e.getActiveCamera().getPosition(),i.tris.getProgram().setUniform3f("camPos",r[0],r[1],r[2]),i.tris.getVAO().bind(),i.context.drawArrays(i.context.TRIANGLES,0,i.tris.getCABO().getElementCount()),i.tris.getVAO().release(),i.openGLTexture.deactivate())},a.updateBufferObjects=function(){if(!i.tris.getCABO().getElementCount()){for(var e=new Float32Array(12),t=0;t<4;t++)e[3*t]=t%2*2-1,e[3*t+1]=1<t?1:-1,e[3*t+2]=1;var n=s.default.newInstance({numberOfComponents:3,values:e}),r=(n.setName("points"),new Uint16Array(8)),r=(r[0]=3,r[1]=0,r[2]=1,r[3]=3,r[4]=3,r[5]=0,r[6]=3,r[7]=2,s.default.newInstance({numberOfComponents:1,values:r}));i.tris.getCABO().createVBO(r,"polys",d.Representation.SURFACE,{points:n,cellOffset:0}),i.tris.setProgram(i.openGLRenderWindow.getShaderCache().readyShaderProgramArray("//VTK::System::Dec\n           attribute vec3 vertexMC;\n           uniform mat4 IMCDCMatrix;\n           varying vec3 TexCoords;\n           void main () {\n            gl_Position = vec4(vertexMC.xyz, 1.0);\n            vec4 wpos = IMCDCMatrix * gl_Position;\n            TexCoords = wpos.xyz/wpos.w;\n           }","//VTK::System::Dec\n           //VTK::Output::Dec\n           varying vec3 TexCoords;\n           uniform samplerCube sbtexture;\n           uniform vec3 camPos;\n           void main () {\n             // skybox looks from inside out\n             // which means we have to adjust\n             // our tcoords. Otherwise text would\n             // be flipped\n             vec3 tc = normalize(TexCoords - camPos);\n             if (abs(tc.z) < max(abs(tc.x),abs(tc.y)))\n             {\n               tc = vec3(1.0, 1.0, -1.0) * tc;\n             }\n             else\n             {\n               tc = vec3(-1.0, 1.0, 1.0) * tc;\n             }\n             gl_FragData[0] = textureCube(sbtexture, tc);\n           }","")),i.tris.getShaderSourceTime().modified(),i.tris.getVAO().bind(),i.tris.getVAO().addAttributeArray(i.tris.getProgram(),i.tris.getCABO(),"vertexMC",i.tris.getCABO().getVertexOffset(),i.tris.getCABO().getStride(),i.context.FLOAT,3,i.context.FALSE)||c("Error setting vertexMC in shader VAO.")}r=i.renderable.getTextures();r.length||c("vtkSkybox requires a texture map"),i.openGLTexture.getRenderable()!==r[0]&&(i.openGLTexture.releaseGraphicsResources(i.openGLRenderWindow),i.openGLTexture.setRenderable(r[0]))}}t=e.newInstance=r.default.newInstance(a);e.default={newInstance:t,extend:a}},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var a=n(t(0)),o=n(t(4)),s=n(t(2));function n(e){return e&&e.__esModule?e:{default:e}}var u=a.default.vtkDebugMacro,l={context:null,openGLRenderWindow:null,selector:null};function r(e,t){var r,i,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,l,n),o.default.extend(e,t,n),a.default.get(e,t,["shaderCache"]),a.default.setGet(e,t,["selector"]),r=e,(i=t).classHierarchy.push("vtkOpenGLRenderer"),r.buildPass=function(e){e&&i.renderable&&(i.renderable.isActiveCameraCreated()||i.renderable.resetCamera(),r.updateLights(),r.prepareNodes(),r.addMissingNode(i.renderable.getActiveCamera()),r.addMissingNodes(i.renderable.getViewPropsWithNestedProps()),r.removeUnusedNodes())},r.updateLights=function(){for(var e=0,t=i.renderable.getLightsByReference(),n=0;n<t.length;++n)0<t[n].getSwitch()&&e++;return e||(u("No lights are on, creating one."),i.renderable.createLight()),e},r.opaqueZBufferPass=function(e){var t,n;e&&(e=0,t=i.context,i.renderable.getTransparent()||(i.context.clearColor(1,0,0,1),e|=t.COLOR_BUFFER_BIT),i.renderable.getPreserveDepthBuffer()||(t.clearDepth(1),e|=t.DEPTH_BUFFER_BIT,t.depthMask(!0)),n=r.getTiledSizeAndOrigin(),t.enable(t.SCISSOR_TEST),t.scissor(n.lowerLeftU,n.lowerLeftV,n.usize,n.vsize),t.viewport(n.lowerLeftU,n.lowerLeftV,n.usize,n.vsize),t.colorMask(!0,!0,!0,!0),t.clear(e),t.enable(t.DEPTH_TEST))},r.cameraPass=function(e){e&&r.clear()},r.getAspectRatio=function(){var e=i.parent.getSizeByReference(),t=i.renderable.getViewportByReference();return e[0]*(t[2]-t[0])/((t[3]-t[1])*e[1])},r.getTiledSizeAndOrigin=function(){var e=i.renderable.getViewportByReference(),t=[0,0,1,1],n=s.default.clampValue(e[0]-t[0],0,1),r=s.default.clampValue(e[1]-t[1],0,1),n=i.parent.normalizedDisplayToDisplay(n,r),r=Math.round(n[0]),n=Math.round(n[1]),a=s.default.clampValue(e[2]-t[0],0,1),e=s.default.clampValue(e[3]-t[1],0,1),a=i.parent.normalizedDisplayToDisplay(a=t[2]-t[0]<a?t[2]-t[0]:a,e=t[3]-t[1]<e?t[3]-t[1]:e),t=Math.round(a[0])-r,e=Math.round(a[1])-n;return{usize:t=t<0?0:t,vsize:e=e<0?0:e,lowerLeftU:r,lowerLeftV:n}},r.clear=function(){var e=0,t=i.context,n=(i.renderable.getTransparent()||(n=i.renderable.getBackgroundByReference(),i.context.clearColor(n[0],n[1],n[2],n[3]),e|=t.COLOR_BUFFER_BIT),i.renderable.getPreserveDepthBuffer()||(t.clearDepth(1),e|=t.DEPTH_BUFFER_BIT,t.depthMask(!0)),t.colorMask(!0,!0,!0,!0),r.getTiledSizeAndOrigin());t.enable(t.SCISSOR_TEST),t.scissor(n.lowerLeftU,n.lowerLeftV,n.usize,n.vsize),t.viewport(n.lowerLeftU,n.lowerLeftV,n.usize,n.vsize),t.clear(e),t.enable(t.DEPTH_TEST)},r.releaseGraphicsResources=function(){null!==i.selector&&i.selector.releaseGraphicsResources()},r.setOpenGLRenderWindow=function(e){i.openGLRenderWindow!==e&&(r.releaseGraphicsResources(),i.openGLRenderWindow=e,i.context=null,e&&(i.context=i.openGLRenderWindow.getContext()))}}t=e.newInstance=a.default.newInstance(r,"vtkOpenGLRenderer");e.default={newInstance:t,extend:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=s;var r=i(n(0)),a=i(n(4));function i(e){return e&&e.__esModule?e:{default:e}}var h=r.default.vtkDebugMacro,o={};function s(e,t){var f,d,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,o,n),a.default.extend(e,t,n),f=e,(d=t).classHierarchy.push("vtkOpenGLPixelSpaceCallbackMapper"),f.opaquePass=function(c,e){d.openGLRenderer=f.getFirstAncestorOfType("vtkOpenGLRenderer"),d.openGLRenderWindow=d.openGLRenderer.getParent();var t,n,r,a,i,o=d.openGLRenderer.getAspectRatio(),s=d.openGLRenderer?d.openGLRenderer.getRenderable().getActiveCamera():null,u=d.openGLRenderer.getTiledSizeAndOrigin(),l=null;d.renderable.getUseZValues()&&(t=e.getZBufferTexture(),n=Math.floor(t.getWidth()),r=Math.floor(t.getHeight()),a=d.openGLRenderWindow.getContext(),t.bind(),(e=e.getFramebuffer())?e.saveCurrentBindingsAndBuffers():h("No framebuffer to save/restore"),i=a.createFramebuffer(),a.bindFramebuffer(a.FRAMEBUFFER,i),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,t.getHandle(),0),a.checkFramebufferStatus(a.FRAMEBUFFER)===a.FRAMEBUFFER_COMPLETE&&(l=new Uint8Array(n*r*4),a.viewport(0,0,n,r),a.readPixels(0,0,n,r,a.RGBA,a.UNSIGNED_BYTE,l)),e&&e.restorePreviousBindingsAndBuffers(),a.deleteFramebuffer(i)),d.renderable.invokeCallback(d.renderable.getInputData(),s,o,u,l)},f.queryPass=function(e,t){e&&(d.renderable.getUseZValues(),t.setDepthRequested(!0))}}n=t.newInstance=r.default.newInstance(s,"vtkOpenGLPixelSpaceCallbackMapper");t.default={newInstance:n,extend:s}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=a;var i=n(3),o=r(n(0)),s=r(n(4));function r(e){return e&&e.__esModule?e:{default:e}}var u={context:null,keyMatrixTime:null,keyMatrices:null};function a(e,t){var n,r,a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,u,a),s.default.extend(e,t,a),t.keyMatrixTime={},o.default.obj(t.keyMatrixTime,{mtime:0}),t.keyMatrices={mcwc:i.mat4.create()},o.default.setGet(e,t,["context"]),n=e,(r=t).classHierarchy.push("vtkOpenGLImageSlice"),n.buildPass=function(e){r.renderable&&r.renderable.getVisibility()&&e&&r.renderable&&(n.prepareNodes(),n.addMissingNode(r.renderable.getMapper()),n.removeUnusedNodes())},n.traverseOpaqueZBufferPass=function(e){n.traverseOpaquePass(e)},n.traverseOpaquePass=function(t){r.renderable&&r.renderable.getVisibility()&&r.renderable.getIsOpaque()&&(n.apply(t,!0),r.children.forEach(function(e){e.traverse(t)}),n.apply(t,!1))},n.traverseTranslucentPass=function(t){r.renderable&&r.renderable.getVisibility()&&!r.renderable.getIsOpaque()&&(n.apply(t,!0),r.children.forEach(function(e){e.traverse(t)}),n.apply(t,!1))},n.queryPass=function(e,t){e&&r.renderable&&r.renderable.getVisibility()&&(r.renderable.getIsOpaque()?t.incrementOpaqueActorCount():t.incrementTranslucentActorCount())},n.opaqueZBufferPass=function(e,t){return n.opaquePass(e,t)},n.opaquePass=function(e,t){e&&(r.context=n.getFirstAncestorOfType("vtkOpenGLRenderWindow").getContext(),r.context.depthMask(!0))},n.translucentPass=function(e,t){e?(r.context=n.getFirstAncestorOfType("vtkOpenGLRenderWindow").getContext(),r.context.depthMask(!1)):r.context.depthMask(!0)},n.getKeyMatrices=function(){return r.renderable.getMTime()>r.keyMatrixTime.getMTime()&&(i.mat4.copy(r.keyMatrices.mcwc,r.renderable.getMatrix()),i.mat4.transpose(r.keyMatrices.mcwc,r.keyMatrices.mcwc),r.keyMatrixTime.modified()),r.keyMatrices}}n=t.newInstance=o.default.newInstance(a,"vtkOpenGLImageSlice");t.default={newInstance:n,extend:a}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.InterpolationType={NEAREST:0,LINEAR:1};t.default={InterpolationType:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.SlicingMode={NONE:-1,I:0,J:1,K:2,X:3,Y:4,Z:5};t.default={SlicingMode:r}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=p;var i=t(3),s=n(t(192)),r=n(t(0)),x=n(t(7)),L=t(10),u=n(t(32)),l=n(t(2)),c=n(t(19)),o=n(t(13)),f=n(t(4)),C=t(24),N=t(35),O=t(191),d=n(t(90)),h=n(t(31));function n(e){return e&&e.__esModule?e:{default:e}}var E=r.default.vtkErrorMacro,I=s.default.SlicingMode,g={VBOBuildTime:0,VBOBuildString:null,openGLTexture:null,tris:null,imagemat:null,colorTexture:null,lastHaveSeenDepthRequest:!1,haveSeenDepthRequest:!1,lastTextureComponents:0};function p(e,t){var b,D,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,g,n),f.default.extend(e,t,n),t.tris=u.default.newInstance(),t.openGLTexture=c.default.newInstance(),t.colorTexture=c.default.newInstance(),t.imagemat=i.mat4.create(),r.default.setGet(e,t,[]),t.VBOBuildTime={},r.default.obj(t.VBOBuildTime),b=e,(D=t).classHierarchy.push("vtkOpenGLImageMapper"),b.buildPass=function(e){e&&(D.openGLImageSlice=b.getFirstAncestorOfType("vtkOpenGLImageSlice"),D.openGLRenderer=b.getFirstAncestorOfType("vtkOpenGLRenderer"),D.openGLRenderWindow=D.openGLRenderer.getParent(),D.context=D.openGLRenderWindow.getContext(),D.tris.setOpenGLRenderWindow(D.openGLRenderWindow),D.openGLTexture.setOpenGLRenderWindow(D.openGLRenderWindow),D.colorTexture.setOpenGLRenderWindow(D.openGLRenderWindow),e=D.openGLRenderer.getRenderable(),D.openGLCamera=D.openGLRenderer.getViewNodeFor(e.getActiveCamera()),D.renderable.getSliceAtFocalPoint()&&D.renderable.setSliceFromCamera(e.getActiveCamera()))},b.translucentPass=function(e){e&&b.render()},b.opaqueZBufferPass=function(e){e&&(D.haveSeenDepthRequest=!0,D.renderDepth=!0,b.render(),D.renderDepth=!1)},b.opaquePass=function(e){e&&b.render()},b.render=function(){var e=D.openGLImageSlice.getRenderable(),t=D.openGLRenderer.getRenderable();b.renderPiece(t,e)},b.buildShaders=function(e,t,n){b.getShaderTemplate(e,t,n),b.replaceShaderValues(e,t,n)},b.getShaderTemplate=function(e,t,n){e.Vertex=d.default,e.Fragment=h.default,e.Geometry=""},b.replaceShaderValues=function(e,t,n){var r=e.Vertex,a=e.Fragment,r=o.default.substitute(r,"//VTK::Camera::Dec",["uniform mat4 MCDCMatrix;"]).result,i=(r=o.default.substitute(r,"//VTK::PositionVC::Impl",["  gl_Position = MCDCMatrix * vertexMC;"]).result,r=o.default.substitute(r,"//VTK::TCoord::Impl","tcoordVCVSOutput = tcoordMC;").result,D.openGLTexture.getComponents());switch(r=o.default.substitute(r,"//VTK::TCoord::Dec","attribute vec2 tcoordMC; varying vec2 tcoordVCVSOutput;").result,a=o.default.substitute(a,"//VTK::TCoord::Dec",["varying vec2 tcoordVCVSOutput;","uniform float shift;","uniform float scale;","uniform sampler2D texture1;","uniform sampler2D colorTexture1;"]).result,i){case 1:a=o.default.substitute(a,"//VTK::TCoord::Impl",["float intensity = texture2D(texture1, tcoordVCVSOutput).r*scale + shift;","gl_FragData[0] = texture2D(colorTexture1, vec2(intensity, 0.5));"]).result;break;case 2:a=o.default.substitute(a,"//VTK::TCoord::Impl",["vec4 tcolor = texture2D(texture1, tcoordVCVSOutput);","float intensity = tcolor.r*scale + shift;","gl_FragData[0] = vec4(texture2D(colorTexture1, vec2(intensity, 0.5)), scale*tcolor.g + shift);"]).result;break;default:a=o.default.substitute(a,"//VTK::TCoord::Impl",["vec4 tcolor = scale*texture2D(texture1, tcoordVCVSOutput.st) + shift;","gl_FragData[0] = vec4(texture2D(colorTexture1, vec2(tcolor.r,0.5)).r,","  texture2D(colorTexture1, vec2(tcolor.g,0.5)).r,","  texture2D(colorTexture1, vec2(tcolor.b,0.5)).r, tcolor.a);"]).result}D.haveSeenDepthRequest&&(a=o.default.substitute(a,"//VTK::ZBuffer::Dec","uniform int depthRequest;").result,a=o.default.substitute(a,"//VTK::ZBuffer::Impl",["if (depthRequest == 1) {","float iz = floor(gl_FragCoord.z*65535.0 + 0.1);","float rf = floor(iz/256.0)/255.0;","float gf = mod(iz,256.0)/255.0;","gl_FragData[0] = vec4(rf, gf, 0.0, 1.0); }"]).result),e.Vertex=r,e.Fragment=a},b.getNeedToRebuildShaders=function(e,t,n){var r=D.openGLTexture.getComponents();return(D.lastHaveSeenDepthRequest!==D.haveSeenDepthRequest||0===e.getProgram()||D.lastTextureComponents!==r)&&(D.lastHaveSeenDepthRequest=D.haveSeenDepthRequest,D.lastTextureComponents=r,!0)},b.updateShaders=function(e,t,n){var r;D.lastBoundBO=e,b.getNeedToRebuildShaders(e,t,n)?(b.buildShaders(r={Vertex:null,Fragment:null,Geometry:null},t,n),(r=D.openGLRenderWindow.getShaderCache().readyShaderProgramArray(r.Vertex,r.Fragment,r.Geometry))!==e.getProgram()&&(e.setProgram(r),e.getVAO().releaseGraphicsResources()),e.getShaderSourceTime().modified()):D.openGLRenderWindow.getShaderCache().readyShaderProgram(e.getProgram()),e.getVAO().bind(),b.setMapperShaderParameters(e,t,n),b.setCameraShaderParameters(e,t,n),b.setPropertyShaderParameters(e,t,n)},b.setMapperShaderParameters=function(e,t,n){e.getCABO().getElementCount()&&(D.VBOBuildTime>e.getAttributeUpdateTime().getMTime()||e.getShaderSourceTime().getMTime()>e.getAttributeUpdateTime().getMTime())&&(e.getProgram().isAttributeUsed("vertexMC")&&(e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"vertexMC",e.getCABO().getVertexOffset(),e.getCABO().getStride(),D.context.FLOAT,3,D.context.FALSE)||E("Error setting vertexMC in shader VAO.")),e.getProgram().isAttributeUsed("tcoordMC")&&e.getCABO().getTCoordOffset()&&(e.getVAO().addAttributeArray(e.getProgram(),e.getCABO(),"tcoordMC",e.getCABO().getTCoordOffset(),e.getCABO().getStride(),D.context.FLOAT,e.getCABO().getTCoordComponents(),D.context.FALSE)||E("Error setting tcoordMC in shader VAO.")),e.getAttributeUpdateTime().modified());var r=D.openGLTexture.getTextureUnit(),r=(e.getProgram().setUniformi("texture1",r),n.getProperty().getColorWindow()),a=n.getProperty().getColorLevel(),n=n.getProperty().getRGBTransferFunction(),n=(n&&(r=(n=n.getRange())[1]-n[0],a=.5*(n[1]+n[0])),D.openGLTexture.getShiftAndScale()),i=n.scale/r,n=(n.shift-a)/r+.5,a=(D.haveSeenDepthRequest&&e.getProgram().setUniformi("depthRequest",D.renderDepth?1:0),e.getProgram().setUniformf("shift",n),e.getProgram().setUniformf("scale",i),D.colorTexture.getTextureUnit());e.getProgram().setUniformi("colorTexture1",a)},b.setCameraShaderParameters=function(e,t,n){var e=e.getProgram(),r=D.openGLImageSlice.getKeyMatrices(),a=D.currentInput.getIndexToWorld(),r=(i.mat4.multiply(D.imagemat,r.mcwc,a),D.openGLCamera.getKeyMatrices(t));i.mat4.multiply(D.imagemat,r.wcdc,D.imagemat),e.setUniformMatrix("MCDCMatrix",D.imagemat)},b.setPropertyShaderParameters=function(e,t,n){e=e.getProgram(),n=n.getProperty().getOpacity();e.setUniformf("opacityUniform",n)},b.renderPieceStart=function(e,t){b.updateBufferObjects(e,t),D.lastBoundBO=null},b.renderPieceDraw=function(e,t){var n=D.context;D.openGLTexture.activate(),D.colorTexture.activate(),D.tris.getCABO().getElementCount()&&(b.updateShaders(D.tris,e,t),n.drawArrays(n.TRIANGLES,0,D.tris.getCABO().getElementCount()),D.tris.getVAO().release()),D.openGLTexture.deactivate(),D.colorTexture.deactivate()},b.renderPieceFinish=function(e,t){},b.renderPiece=function(e,t){b.invokeEvent({type:"StartEvent"}),D.renderable.update(),D.currentInput=D.renderable.getInputData(),b.invokeEvent({type:"EndEvent"}),D.currentInput?(b.renderPieceStart(e,t),b.renderPieceDraw(e,t),b.renderPieceFinish(e,t)):E("No input!")},b.computeBounds=function(e,t){b.getInput()?D.bounds=b.getInput().getBounds():l.default.uninitializeBounds(D.bounds)},b.updateBufferObjects=function(e,t){b.getNeedToRebuildBufferObjects(e,t)&&b.buildBufferObjects(e,t)},b.getNeedToRebuildBufferObjects=function(e,t){return D.VBOBuildTime.getMTime()<b.getMTime()||D.VBOBuildTime.getMTime()<t.getMTime()||D.VBOBuildTime.getMTime()<D.renderable.getMTime()||D.VBOBuildTime.getMTime()<t.getProperty().getMTime()||D.VBOBuildTime.getMTime()<D.currentInput.getMTime()},b.buildBufferObjects=function(c,f){var e=D.currentInput;if(null!==e){var d=f.getProperty().getInterpolationType(),t=(d===O.InterpolationType.NEAREST?(D.colorTexture.setMinificationFilter(N.Filter.NEAREST),D.colorTexture.setMagnificationFilter(N.Filter.NEAREST)):(D.colorTexture.setMinificationFilter(N.Filter.LINEAR),D.colorTexture.setMagnificationFilter(N.Filter.LINEAR)),new Uint8Array(3072)),n=f.getProperty().getRGBTransferFunction();if(n){var r=""+n.getMTime();if(D.colorTextureString!==r){var a=n.getRange(),h=new Float32Array(3072);n.getTable(a[0],a[1],1024,h,1);for(var g=0;g<3072;++g)t[g]=255*h[g];D.colorTextureString=r,D.colorTexture.create2DFromRaw(1024,1,3,L.VtkDataTypes.UNSIGNED_CHAR,t)}}else if("0"!==D.colorTextureString){for(var i=0;i<3072;++i)t[i]=255*i/3069,t[i+1]=255*i/3069,t[i+2]=255*i/3069;D.colorTextureString="0",D.colorTexture.create2DFromRaw(1024,1,3,L.VtkDataTypes.UNSIGNED_CHAR,t)}var n=D.renderable.getClosestIJKAxis().ijkMode,a=D.renderable.getSlice(),r=(n!==D.renderable.getSlicingMode()&&(a=D.renderable.getSliceAtPosition(a)),e.getExtent()),o=void 0,f=(n===I.I&&(o=a-r[0]),n===I.J&&(o=a-r[2]),n!==I.K&&n!==I.NONE||(o=a-r[4]),a+"A"+e.getMTime()+"A"+e.getPointData().getScalars().getMTime()+"B"+b.getMTime()+"C"+D.renderable.getSlicingMode()+"D"+f.getProperty().getMTime());if(D.VBOBuildString!==f){var s=e.getDimensions(),u=e.getPointData().getScalars().getNumberOfComponents();d===O.InterpolationType.NEAREST?(4===u&&D.openGLTexture.setGenerateMipmap(!0),D.openGLTexture.setMinificationFilter(N.Filter.NEAREST),D.openGLTexture.setMagnificationFilter(N.Filter.NEAREST)):(4===u?(D.openGLTexture.setGenerateMipmap(!0),D.openGLTexture.setMinificationFilter(N.Filter.LINEAR_MIPMAP_LINEAR)):D.openGLTexture.setMinificationFilter(N.Filter.LINEAR),D.openGLTexture.setMagnificationFilter(N.Filter.LINEAR)),D.openGLTexture.setWrapS(N.Wrap.CLAMP_TO_EDGE),D.openGLTexture.setWrapT(N.Wrap.CLAMP_TO_EDGE);for(var d=e.getPointData().getScalars().getNumberOfComponents(),u=s[0]*s[1]*d,l=new Float32Array(12),p=new Float32Array(8),M=0;M<4;M++)p[2*M]=M%2?1:0,p[2*M+1]=1<M?1:0;var m=e.getPointData().getScalars().getData(),v=null;if(n===I.I){for(var v=new m.constructor(s[2]*s[1]),A=0;A<s[2];A++)for(var y=0;y<s[1];y++)v[A*s[1]+y]=m[o+y*s[0]+A*s[0]*s[1]];s[0]=s[1],s[1]=s[2],l[0]=a,l[1]=r[2],l[2]=r[4],l[3]=a,l[4]=r[3],l[5]=r[4],l[6]=a,l[7]=r[2],l[8]=r[5],l[9]=a,l[10]=r[3],l[11]=r[5]}else if(n===I.J){v=new m.constructor(s[2]*s[0]);for(var T=0;T<s[2];T++)for(var w=0;w<s[0];w++)v[T*s[0]+w]=m[w+o*s[0]+T*s[0]*s[1]];s[1]=s[2],l[0]=r[0],l[1]=a,l[2]=r[4],l[3]=r[1],l[4]=a,l[5]=r[4],l[6]=r[0],l[7]=a,l[8]=r[5],l[9]=r[1],l[10]=a,l[11]=r[5]}else n===I.K||n===I.NONE?(v=m.subarray(o*u,(o+1)*u),l[0]=r[0],l[1]=r[2],l[2]=a,l[3]=r[1],l[4]=r[2],l[5]=a,l[6]=r[0],l[7]=r[3],l[8]=a,l[9]=r[1],l[10]=r[3],l[11]=a):E("Reformat slicing not yet supported.");D.openGLTexture.create2DFromRaw(s[0],s[1],d,e.getPointData().getScalars().getDataType(),v),D.openGLTexture.activate(),D.openGLTexture.sendParameters(),D.openGLTexture.deactivate();n=x.default.newInstance({numberOfComponents:3,values:l}),u=(n.setName("points"),x.default.newInstance({numberOfComponents:2,values:p})),r=(u.setName("tcoords"),new Uint16Array(8)),a=(r[0]=3,r[1]=0,r[2]=1,r[3]=3,r[4]=3,r[5]=0,r[6]=3,r[7]=2,x.default.newInstance({numberOfComponents:1,values:r}));D.tris.getCABO().createVBO(a,"polys",C.Representation.SURFACE,{points:n,tcoords:u,cellOffset:0}),D.VBOBuildTime.modified(),D.VBOBuildString=f}}}}t=e.newInstance=r.default.newInstance(p,"vtkOpenGLImageMapper");e.default={newInstance:t,extend:p}},function(c,e,f){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getResolveCoincidentTopologyPolygonOffsetFaces=r,e.setResolveCoincidentTopologyPolygonOffsetFaces=a,e.getResolveCoincidentTopology=function(){return n},e.setResolveCoincidentTopology=i,e.setResolveCoincidentTopologyToDefault=o,e.setResolveCoincidentTopologyToOff=s,e.setResolveCoincidentTopologyToPolygonOffset=u,e.getResolveCoincidentTopologyAsString=l;var t=1,n=0,d=e.RESOLVE_COINCIDENT_TOPOLOGY_MODE=["VTK_RESOLVE_OFF","VTK_RESOLVE_POLYGON_OFFSET"];function r(){return t}function a(e){t=e}function i(){n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0}function o(){i(0)}function s(){i(0)}function u(){i(1)}function l(){return d[n]}e.default={getResolveCoincidentTopologyAsString:l,getResolveCoincidentTopologyPolygonOffsetFaces:r,setResolveCoincidentTopology:i,setResolveCoincidentTopologyPolygonOffsetFaces:a,setResolveCoincidentTopologyToDefault:o,setResolveCoincidentTopologyToOff:s,setResolveCoincidentTopologyToPolygonOffset:u}},function(e,t,n){"use strict";function r(e,r,t){t.forEach(function(n){e["get"+n.method]=function(){return r[n.key]},e["set"+n.method]=function(e,t){r[n.key]={factor:e,unit:t}}})}Object.defineProperty(t,"__esModule",{value:!0}),t.addCoincidentTopologyMethods=r;var a=t.CATEGORIES=["Polygon","Line","Point"];t.default={addCoincidentTopologyMethods:r,CATEGORIES:a}},function(o,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=i;var n=a(t(0)),c=a(t(7)),r=a(t(47)),t=a(t(91));function a(e){return e&&e.__esModule?e:{default:e}}var s=r.default.ScalarMappingTarget,f=r.default.VectorMode,u=c.default.VtkDataTypes,d=t.default.ColorMode,h=n.default.vtkErrorMacro;function g(e){return e}function p(e){return Math.floor(255*e+.5)}var M={alpha:1,vectorComponent:0,vectorSize:-1,vectorMode:f.COMPONENT,mappingRange:null,annotationArray:null,annotatedValueMap:null,indexedLookup:!1};function i(e,t){var l,o;Object.assign(t,M,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),n.default.obj(e,t),t.mappingRange=[0,255],t.annotationArray=[],t.annotatedValueMap=[],n.default.setGet(e,t,["vectorSize","vectorComponent","vectorMode","alpha","indexedLookup"]),n.default.setArray(e,t,["mappingRange"],2),n.default.getArray(e,t,["mappingRange"]),l=e,(o=t).classHierarchy.push("vtkScalarsToColors"),l.setVectorModeToMagnitude=function(){return l.setVectorMode(f.MAGNITUDE)},l.setVectorModeToComponent=function(){return l.setVectorMode(f.COMPONENT)},l.setVectorModeToRGBColors=function(){return l.setVectorMode(f.RGBCOLORS)},l.build=function(){},l.isOpaque=function(){return!0},l.setAnnotations=function(e,t){if(!(e&&!t||!e&&t))if(e&&t&&e.getNumberOfTuples()!==t.getNumberOfTuples())h("Values and annotations do not have the same number of tuples so ignoring");else{if(o.annotationArray=[],t&&e)for(var n=t.getNumberOfTuples(),r=0;r<n;r++)o.annotationArray.push({value:e[r],annotation:t[r]});l.updateAnnotatedValueMap(),l.modified()}},l.setAnnotation=function(e,t){var n=l.checkForAnnotatedValue(e),r=!1;return 0<=n?o.annotationArray[n].annotation!==t&&(o.annotationArray[n].annotation=t,r=!0):(o.annotationArray.push({value:e,annotation:t}),n=o.annotationArray.length-1,r=!0),r&&(l.updateAnnotatedValueMap(),l.modified()),n},l.getNumberOfAnnotatedValues=function(){return o.annotationArray.length},l.getAnnotatedValue=function(e){return e<0||e>=o.annotationArray.length?null:o.annotationArray[e].value},l.getAnnotation=function(e){return void 0===o.annotationArray[e]?null:o.annotationArray[e].annotation},l.getAnnotatedValueIndex=function(e){return o.annotationArray.length?l.checkForAnnotatedValue(e):-1},l.removeAnnotation=function(e){var e=l.checkForAnnotatedValue(e),t=0<=e;return t&&(o.annotationArray.splice(e,1),l.updateAnnotatedValueMap(),l.modified()),t},l.resetAnnotations=function(){o.annotationArray=[],o.annotatedValueMap=[],l.modified()},l.getAnnotationColor=function(e,t){var n;o.indexedLookup?(n=l.getAnnotatedValueIndex(e),l.getIndexedColor(n,t)):(l.getColor(parseFloat(e),t),t[3]=1)},l.checkForAnnotatedValue=function(e){return l.getAnnotatedValueIndexInternal(e)},l.getAnnotatedValueIndexInternal=function(e){var t;return void 0!==o.annotatedValueMap[e]?(t=o.annotationArray.length,o.annotatedValueMap[e]%t):-1},l.getIndexedColor=function(e,t){t[0]=0,t[1]=0,t[2]=0,t[3]=0},l.updateAnnotatedValueMap=function(){o.annotatedValueMap=[];for(var e=o.annotationArray.length,t=0;t<e;++t)o.annotatedValueMap[o.annotationArray[t].value]=t},l.mapScalars=function(e,t,n){var r,a=e.getNumberOfComponents(),i=null;return t===d.DEFAULT&&e.getDataType()===u.UNSIGNED_CHAR||t===d.DIRECT_SCALARS&&e?i=l.convertToRGBA(e,a,e.getNumberOfTuples()):(t={type:"vtkDataArray",name:"temp",numberOfComponents:4,dataType:u.UNSIGNED_CHAR},r=new window[t.dataType](4*e.getNumberOfTuples()),t.values=r,t.size=r.length,i=c.default.newInstance(t),(r=n)<0&&1<a?l.mapVectorsThroughTable(e,i,s.RGBA,-1,-1):l.mapScalarsThroughTable(e,i,s.RGBA,r=a<=(r=r<0?0:r)?a-1:r)),i},l.mapVectorsToMagnitude=function(e,t,n){for(var r=e.getNumberOfTuples(),a=e.getNumberOfComponents(),i=t.getData(),o=e.getData(),s=0;s<r;s++){for(var u=0,l=0;l<n;l++)u+=o[s*a+l];i[s]=Math.sqrt(u)}},l.mapVectorsThroughTable=function(e,t,n,r,a){var i=l.getVectorMode(),o=a,a=r,r=e.getNumberOfComponents(),s=(i===f.COMPONENT?r<=(a=(a=-1===a?l.getVectorComponent():a)<0?0:a)&&(a=r-1):((o=-1===o?l.getVectorSize():o)<=0?(a=0,o=r):r<(a=r<=(a=a<0?0:a)?r-1:a)+o&&(o=r-a),i!==f.MAGNITUDE||1!==r&&1!==o||(i=f.COMPONENT)),0);switch(0<a&&(s=a),i){case f.COMPONENT:l.mapScalarsThroughTable(e,t,n,s);break;default:case f.MAGNITUDE:var u=c.default.newInstance({numberOfComponents:1,values:new Float32Array(e.getNumberOfTuples())});l.mapVectorsToMagnitude(e,u,o),l.mapScalarsThroughTable(u,t,n,0);break;case f.RGBCOLORS:}},l.luminanceToRGBA=function(e,t,n,r){for(var a=r(n),i=t.getData(),o=e.getData(),c=i.length,s=0,u=0;u<c;u+=1){var l=r(i[u]);o[4*s]=l,o[4*s+1]=l,o[4*s+2]=l,o[4*s+3]=a,s++}},l.luminanceAlphaToRGBA=function(e,t,n,r){for(var a=t.getData(),i=e.getData(),o=a.length,s=0,u=0;u<o;u+=2){var l=r(a[u]);i[s]=l,i[s+1]=l,i[s+2]=l,i[s+3]=r(a[u+1])*n,s+=4}},l.rGBToRGBA=function(e,t,n,r){for(var a=p(n),i=t.getData(),o=e.getData(),s=i.length,u=0,l=0;l<s;l+=3)o[4*u]=r(i[l]),o[4*u+1]=r(i[l+1]),o[4*u+2]=r(i[l+2]),o[4*u+3]=a,u++},l.rGBAToRGBA=function(e,t,n,r){for(var a=t.getData(),i=e.getData(),o=a.length,s=0,u=0;u<o;u+=4)i[4*s]=r(a[u]),i[4*s+1]=r(a[u+1]),i[4*s+2]=r(a[u+2]),e[4*s+3]=r(a[u+3])*n,s++},l.convertToRGBA=function(e,t,n){var r=o.alpha;if(4===t&&1<=r&&e.getDataType()===u.UNSIGNED_CHAR)return e;var a=c.default.newInstance({numberOfComponents:4,empty:!0,size:4*n,dataType:u.UNSIGNED_CHAR});if(n<=0)return a;var r=(r=0<r?r:0)<1?r:1,i=g;switch(e.getDataType()!==u.FLOAT&&e.getDataType()!==u.DOUBLE||(i=p),t){case 1:l.luminanceToRGBA(a,e,r,i);break;case 2:l.luminanceAlphaToRGBA(a,e,i);break;case 3:l.rGBToRGBA(a,e,r,i);break;case 4:l.rGBAToRGBA(a,e,r,i);break;default:return h("Cannot convert colors"),null}return a},l.usingLogScale=function(){return!1},l.getNumberOfAvailableColors=function(){return 16777216},l.setRange=function(e,t){return l.setMappingRange(e,t)},l.getRange=function(e,t){return l.getMappingRange()}}t=e.newInstance=n.default.newInstance(i,"vtkScalarsToColors");e.default=Object.assign({newInstance:t,extend:i},r.default)},function(l,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=s;var r=n(t(0)),u=n(t(2)),c=n(t(196)),v=t(47);function n(e){return e&&e.__esModule?e:{default:e}}var a=0,i=1,o=2,f={numberOfColors:256,hueRange:[0,.66667],saturationRange:[1,1],valueRange:[1,1],alphaRange:[1,1],nanColor:[.5,0,0,1],belowRangeColor:[0,0,0,1],aboveRangeColor:[1,1,1,1],useAboveRangeColor:!1,useBelowRangeColor:!1,alpha:1};function s(e,t){var M,m,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,f,n),c.default.extend(e,t,n),t.table||(t.table=[]),t.buildTime={},r.default.obj(t.buildTime),t.opaqueFlagBuildTime={},r.default.obj(t.opaqueFlagBuildTime,{mtime:0}),r.default.get(e,t,["buildTime"]),r.default.setGet(e,t,["numberOfColors","useAboveRangeColor","useBelowRangeColor"]),r.default.setArray(e,t,["alphaRange","hueRange","saturationRange","valueRange"],2),r.default.setArray(e,t,["nanColor","belowRangeColor","aboveRangeColor"],4),r.default.getArray(e,t,["hueRange","saturationRange","valueRange","alphaRange","nanColor","belowRangeColor","aboveRangeColor"]),M=e,(m=t).classHierarchy.push("vtkLookupTable"),M.isOpaque=function(){if(m.opaqueFlagBuildTime.getMTime()<M.getMTime()){var e=!0;m.nanColor[3]<1&&(e=0),m.useBelowRangeColor&&m.belowRangeColor[3]<1&&(e=0),m.useAboveRangeColor&&m.aboveRangeColor[3]<1&&(e=0);for(var t=3;t<m.table.length&&e;t+=4)m.table[t]<255&&(e=!1);m.opaqueFlag=e,m.opaqueFlagBuildTime.modified()}return m.opaqueFlag},M.usingLogScale=function(){return!1},M.getNumberOfAvailableColors=function(){return m.table.length},M.linearIndexLookup=function(e,t){var n=0,n=e<t.range[0]?t.maxIndex+a+1.5:e>t.range[1]?t.maxIndex+i+1.5:(n=(e+t.shift)*t.scale)<t.maxIndex?n:t.maxIndex;return Math.floor(n)},M.linearLookup=function(e,t,n){return[t[4*(e=u.default.isNan(e)?Math.floor(n.maxIndex+1.5+o):M.linearIndexLookup(e,n))],t[4*e+1],t[4*e+2],t[4*e+3]]},M.indexedLookupFunction=function(e,t,n){e=M.getAnnotatedValueIndexInternal(e);return[t[4*e],t[4*e+1],t[4*e+2],t[4*e+3]]},M.lookupShiftAndScale=function(e,t){t.shift=-e[0],t.scale=Number.MAX_VALUE,e[1]>e[0]&&(t.scale=(t.maxIndex+1)/(e[1]-e[0]))},M.mapScalarsThroughTable=function(e,c,t,n){var r=M.linearLookup,f=(m.indexedLookup&&(r=M.indexedLookupFunction),M.getMappingRange()),a={maxIndex:M.getNumberOfColors()-1,range:f,shift:0,scale:0},d=(M.lookupShiftAndScale(f,a),M.getAlpha()),h=e.getNumberOfTuples(),g=e.getNumberOfComponents(),i=c.getData(),p=e.getData();if(1<=d){if(t===v.ScalarMappingTarget.RGBA)for(var o=0;o<h;o++){var s=r(p[o*g+n],m.table,a);i[4*o]=s[0],i[4*o+1]=s[1],i[4*o+2]=s[2],i[4*o+3]=s[3]}}else if(t===v.ScalarMappingTarget.RGBA)for(var u=0;u<h;u++){var l=r(p[u*g+n],m.table,a);i[4*u]=l[0],i[4*u+1]=l[1],i[4*u+2]=l[2],i[4*u+3]=Math.floor(l[3]*d+.5)}},M.forceBuild=function(){var e=0,t=0,n=0,r=0,a=m.numberOfColors-1;a&&(e=(m.hueRange[1]-m.hueRange[0])/a,t=(m.saturationRange[1]-m.saturationRange[0])/a,n=(m.valueRange[1]-m.valueRange[0])/a,r=(m.alphaRange[1]-m.alphaRange[0])/a);for(var i=[],o=[],s=0;s<=a;s++)i[0]=m.hueRange[0]+s*e,i[1]=m.saturationRange[0]+s*t,i[2]=m.valueRange[0]+s*n,u.default.hsv2rgb(i,o),o[3]=m.alphaRange[0]+s*r,m.table[4*s]=255*o[0]+.5,m.table[4*s+1]=255*o[1]+.5,m.table[4*s+2]=255*o[2]+.5,m.table[4*s+3]=255*o[3]+.5;M.buildSpecialColors(),m.buildTime.modified()},M.buildSpecialColors=function(){var e=m.numberOfColors,t=m.table,n=4*(m.numberOfColors+a);m.useBelowRangeColor||0===e?(t[n]=255*m.belowRangeColor[0]+.5,t[n+1]=255*m.belowRangeColor[1]+.5,t[n+2]=255*m.belowRangeColor[2]+.5,t[n+3]=255*m.belowRangeColor[3]+.5):(t[n]=t[0],t[n+1]=t[1],t[n+2]=t[2],t[n+3]=t[3]),n=4*(m.numberOfColors+i),m.useAboveRangeColor||0===e?(t[n]=255*m.aboveRangeColor[0]+.5,t[n+1]=255*m.aboveRangeColor[1]+.5,t[n+2]=255*m.aboveRangeColor[2]+.5,t[n+3]=255*m.aboveRangeColor[3]+.5):(t[n]=t[4*(e-1)+0],t[n+1]=t[4*(e-1)+1],t[n+2]=t[4*(e-1)+2],t[n+3]=t[4*(e-1)+3]),t[n=4*(m.numberOfColors+o)]=255*m.nanColor[0]+.5,t[n+1]=255*m.nanColor[1]+.5,t[n+2]=255*m.nanColor[2]+.5,t[n+3]=255*m.nanColor[3]+.5},M.build=function(){(m.table.length<1||M.getMTime()>m.buildTime.getMTime())&&M.forceBuild()}}t=e.newInstance=r.default.newInstance(s,"vtkLookupTable");e.default=Object.assign({newInstance:t,extend:s})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getDataDescriptionFromExtent=a;var n=(n=n(92))&&n.__esModule?n:{default:n},r=n.default.StructuredType;function a(e){for(var t=0,n=0;n<3;++n)e[2*n]<e[2*n+1]&&t++;return e[0]>e[1]||e[2]>e[3]||e[4]>e[5]?r.EMPTY:3===t?r.XYZ_GRID:2===t?e[0]===e[1]?r.YZ_PLANE:e[2]===e[3]?r.XZ_PLANE:r.XY_PLANE:1===t?e[0]<e[1]?r.X_LINE:e[2]<e[3]?r.Y_LINE:r.Z_LINE:r.SINGLE_POINT}t.default=Object.assign({getDataDescriptionFromExtent:a},n.default)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.extend=r;var a=(n=n(0))&&n.__esModule?n:{default:n},i={clippingPlanes:[]};function r(e,t){var r,n;Object.assign(t,i,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),a.default.algo(e,t,1,0),t.clippingPlanes||(t.clippingPlanes=[]),n=t,(r=e).update=function(){r.getInputData()},r.addClippingPlane=function(e){"vtkPlane"===e.getClassName()&&n.clippingPlanes.push(e)},r.getNumberOfClippingPlanes=function(){return n.clippingPlanes.length},r.removeAllClippingPlanes=function(){n.clippingPlanes.length=0},r.removeClippingPlane=function(e){e<0||6<=e||n.clippingPlanes.splice(e,1)},r.getClippingPlanes=function(){return n.clippingPlanes},r.setClippingPlanes=function(e){if(e)if(Array.isArray(e))for(var t=e.length,n=0;n<t&&n<6;n++)r.addClippingPlane(e[n]);else r.addClippingPlane(e)}}t.default={extend:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.extend=s;var u=a(n(0)),r=a(n(199)),i=a(n(2));function a(e){return e&&e.__esModule?e:{default:e}}var o={bounds:[1,-1,1,-1,1,-1],center:[0,0,0]};function s(e,t){var a,s,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,o,n),r.default.extend(e,t,n),t.bounds||i.default.uninitializeBounds(t.bounds),t.center||(t.center=[0,0,0]),s=t,(a=e).getBounds=function(){return 0},a.getBounds=function(e){a.getBounds();for(var t=0;t<6;t++)e[t]=s.bounds[t]},a.getCenter=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];a.getBounds();for(var r=0;r<3;r++)s.center[r]=(s.bounds[2*r+1]+s.bounds[2*r])/2;return Array.isArray(t[0])&&(t[0]=s.center.splice(0)),s.center},a.getLength=function(){var e,t=0;a.getBounds();for(var n=0;n<3;n++)t+=(e=s.bounds[2*n+1]-s.bounds[2*n])*e;return Math.sqrt(t)},a.getClippingPlaneInDataCoords=function(e,t,n){var r=s.clippingPlanes;if(r){var a,i,o=r.length;if(0<=t&&t<o)return r=(o=r[t]).getNormal(),o=o.getOrigin(),a=r[0],i=r[1],r=r[2],o=-(a*o[0]+i*o[1]+r*o[2]),n[0]=a*e[0]+i*e[4]+r*e[8]+o*e[12],n[1]=a*e[1]+i*e[5]+r*e[9]+o*e[13],n[2]=a*e[2]+i*e[6]+r*e[10]+o*e[14],void(n[3]=a*e[3]+i*e[7]+r*e[11]+o*e[15])}u.default.vtkErrorMacro("Clipping plane index "+t+" is out of range.")}}t.default={extend:s}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=o;var r=(n=n(0))&&n.__esModule?n:{default:n},a=r.default.vtkErrorMacro,i={shaderType:"Unknown",source:"",error:"",handle:0,dirty:!1,context:null};function o(e,t){var n;Object.assign(t,i,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),r.default.obj(e,t),r.default.setGet(e,t,["shaderType","source","error","handle","context"]),e=e,(n=t).classHierarchy.push("vtkShader"),e.compile=function(){var e=n.context.VERTEX_SHADER;return!(!n.source||!n.source.length||"Unknown"===n.shaderType)&&(e="Fragment"===(0!==n.handle&&(n.context.deleteShader(n.handle),n.handle=0),n.shaderType)?n.context.FRAGMENT_SHADER:n.context.VERTEX_SHADER,n.handle=n.context.createShader(e),n.context.shaderSource(n.handle,n.source),n.context.compileShader(n.handle),!!n.context.getShaderParameter(n.handle,n.context.COMPILE_STATUS)||(e=n.context.getShaderInfoLog(n.handle),a("Error compiling shader '"+n.source+"': "+e),n.context.deleteShader(n.handle),n.handle=0,!1))},e.cleanup=function(){"Unknown"!==n.shaderType&&0!==n.handle&&(n.context.deleteShader(n.handle),n.handle=0,n.dirty=!0)}}n=t.newInstance=r.default.newInstance(o,"vtkShader");t.default={newInstance:n,extend:o}},function(o,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=i;var r=n(t(0)),O=n(t(34)),S=t(25),j=t(24);function n(e){return e&&e.__esModule?e:{default:e}}var _=r.default.vtkDebugMacro,a=r.default.vtkErrorMacro,s={elementCount:0,stride:0,colorBOStride:0,vertexOffset:0,normalOffset:0,tCoordOffset:0,tCoordComponents:0,colorOffset:0,colorComponents:0,tcoordBO:null};function i(e,t){var L,C,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,s,n),O.default.extend(e,t,n),r.default.setGet(e,t,["colorBO","elementCount","stride","colorBOStride","vertexOffset","normalOffset","tCoordOffset","tCoordComponents","colorOffset","colorComponents"]),L=e,(C=t).classHierarchy.push("vtkOpenGLCellArrayBufferObject"),L.setType(S.ObjectType.ARRAY_BUFFER),L.createVBO=function(c,e,f,n){if(!c.getData()||!c.getData().length)return C.elementCount=0;C.blockSize=3,C.vertexOffset=0,C.normalOffset=0,C.tCoordOffset=0,C.tCoordComponents=0,C.colorComponents=0,C.colorOffset=0;for(var d=n.points.getData(),r=null,h=null,a=null,g=n.colors?n.colors.getNumberOfComponents():0,p=n.tcoords?n.tcoords.getNumberOfComponents():0,M=(n.normals&&(C.normalOffset=4*C.blockSize,C.blockSize+=3,r=n.normals.getData()),n.tcoords&&(C.tCoordOffset=4*C.blockSize,C.tCoordComponents=p,C.blockSize+=p,h=n.tcoords.getData()),n.colors?(C.colorComponents=n.colors.getNumberOfComponents(),C.colorOffset=0,a=n.colors.getData(),C.colorBO||(C.colorBO=O.default.newInstance()),C.colorBO.setOpenGLRenderWindow(C.openGLRenderWindow)):C.colorBO=null,C.stride=4*C.blockSize,0),m=0,v=0,i=0,A=0,o=void 0,y={anythingToPoints:function(e,t,n){for(var r=0;r<e;++r)o(t[n+r])},linesToWireframe:function(e,t,n){for(var r=0;r<e-1;++r)o(t[n+r]),o(t[n+r+1])},polysToWireframe:function(e,t,n){for(var r=0;r<e;++r)o(t[n+r]),o(t[n+(r+1)%e])},stripsToWireframe:function(e,t,n){for(var r=0;r<e-1;++r)o(t[n+r]),o(t[n+r+1]);for(var a=0;a<e-2;a++)o(t[n+a]),o(t[n+a+2])},polysToSurface:function(e,t,n){if(e<3)_("skipping degenerate triangle");else for(var r=0;r<e-2;r++)o(t[n+0]),o(t[n+r+1]),o(t[n+r+2])},stripsToSurface:function(e,t,n){for(var r=0;r<e-2;r++)o(t[n+r]),o(t[n+r+1+r%2]),o(t[n+r+1+(r+1)%2])}},T={anythingToPoints:function(e,t){return e},linesToWireframe:function(e,t){return 2*(e-1)},polysToWireframe:function(e,t){return 2*e},stripsToWireframe:function(e,t){return 4*e-6},polysToSurface:function(e,t){return e<3?0:3*(e-2)},stripsToSurface:function(e,t,n){return 3*(e-2)}},w=null,b=null,b=f===j.Representation.POINTS||"verts"===e?(w=y.anythingToPoints,T.anythingToPoints):f===j.Representation.WIREFRAME||"lines"===e?(w=y[e+"ToWireframe"],T[e+"ToWireframe"]):(w=y[e+"ToSurface"],T[e+"ToSurface"]),t=c.getData(),D=t.length,x=0,N=0;N<D;)x+=b(t[N],t),N+=t[N]+1;for(var s=null,u=new Float32Array(x*C.blockSize),l=(a&&(s=new Uint8Array(4*x)),0),E=0,o=function(e){if(M=3*e,u[l++]=d[M++],u[l++]=d[M++],u[l++]=d[M++],null!==r&&(m=n.haveCellNormals?3*(A+n.cellOffset):3*e,u[l++]=r[m++],u[l++]=r[m++],u[l++]=r[m++]),null!==h){v=e*p;for(var t=0;t<p;++t)u[l++]=h[v++]}null!==a&&(i=n.haveCellScalars?(A+n.cellOffset)*g:e*g,s[E++]=a[i++],s[E++]=a[i++],s[E++]=a[i++],s[E++]=4===g?a[i++]:255)},I=0;I<D;)w(t[I],t,I+1),I+=t[I]+1,A++;return C.elementCount=x,L.upload(u,S.ObjectType.ARRAY_BUFFER),C.colorBO&&(C.colorBOStride=4,C.colorBO.upload(s,S.ObjectType.ARRAY_BUFFER)),A},L.setCoordShiftAndScaleMethod=function(e){a("coordinate shift and scale not yet implemented")},L.setCoordShift=function(e){a("coordinate shift and scale not yet implemented")},L.setCoordScale=function(e){a("coordinate shift and scale not yet implemented")}}t=e.newInstance=r.default.newInstance(i);e.default={newInstance:t,extend:i}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.FieldDataTypes={UNIFORM:0,DATA_OBJECT_FIELD:0,COORDINATE:1,POINT_DATA:1,POINT:2,POINT_FIELD_DATA:2,CELL:3,CELL_FIELD_DATA:3,VERTEX:4,VERTEX_FIELD_DATA:4,EDGE:5,EDGE_FIELD_DATA:5,ROW:6,ROW_DATA:6},a=t.FieldAssociations={FIELD_ASSOCIATION_POINTS:0,FIELD_ASSOCIATION_CELLS:1,FIELD_ASSOCIATION_NONE:2,FIELD_ASSOCIATION_POINTS_THEN_CELLS:3,FIELD_ASSOCIATION_VERTICES:4,FIELD_ASSOCIATION_EDGES:5,FIELD_ASSOCIATION_ROWS:6,NUMBER_OF_ASSOCIATIONS:7};t.default={FieldDataTypes:r,FieldAssociations:a}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.AttributeTypes={SCALARS:0,VECTORS:1,NORMALS:2,TCOORDS:3,TENSORS:4,GLOBALIDS:5,PEDIGREEIDS:6,EDGEFLAG:7,NUM_ATTRIBUTES:8},a=t.AttributeLimitTypes={MAX:0,EXACT:1,NOLIMIT:2},i=t.CellGhostTypes={DUPLICATECELL:1,HIGHCONNECTIVITYCELL:2,LOWCONNECTIVITYCELL:4,REFINEDCELL:8,EXTERIORCELL:16,HIDDENCELL:32},o=t.PointGhostTypes={DUPLICATEPOINT:1,HIDDENPOINT:2},s=t.AttributeCopyOperations={COPYTUPLE:0,INTERPOLATE:1,PASSDATA:2,ALLCOPY:3},u=(t.ghostArrayName="vtkGhostType",t.DesiredOutputPrecision={DEFAULT:0,SINGLE:1,DOUBLE:2});t.default={AttributeCopyOperations:s,AttributeLimitTypes:a,AttributeTypes:r,CellGhostTypes:i,DesiredOutputPrecision:u,PointGhostTypes:o,ghostArrayName:"vtkGhostType"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=s;var r=i(n(20)),a=i(n(0)),c=i(n(7));function i(e){return e&&e.__esModule?e:{default:e}}var o={arrays:[],copyFieldFlags:[],doCopyAllOn:!0,doCopyAllOff:!1};function s(e,t){var u,l,n;Object.assign(t,o,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),u=e,(l=t).classHierarchy.push("vtkFieldData"),n=u.getState,l.arrays&&(l.arrays=l.arrays.map(function(e){return{data:(0,r.default)(e.data)}})),u.initialize=function(){u.initializeFields(),u.copyAllOn(),u.clearFieldFlags()},u.initializeFields=function(){l.arrays=[],l.copyFieldFlags={},u.modified()},u.copyStructure=function(e){u.initializeFields(),l.copyFieldFlags=e.getCopyFieldFlags().map(function(e){return e}),l.arrays=e.arrays().map(function(e){return{array:e}})},u.getNumberOfArrays=function(){return l.arrays.length},u.getNumberOfActiveArrays=function(){return l.arrays.length},u.addArray=function(e){return l.arrays=[].concat(l.arrays,{data:e}),l.arrays.length-1},u.removeAllArrays=function(){l.arrays=[]},u.removeArray=function(t){l.arrays=l.arrays.filter(function(e){return t!==e.data.getName()})},u.removeArrayByIndex=function(n){l.arrays=l.arrays.filter(function(e,t){return t!==n})},u.getArrays=function(){return l.arrays.map(function(e){return e.data})},u.getArray=function(e){return"number"==typeof e?u.getArrayByIndex(e):u.getArrayByName(e)},u.getArrayByName=function(r){return l.arrays.reduce(function(e,t,n){return t.data.getName()===r?t.data:e},null)},u.getArrayWithIndex=function(r){return l.arrays.reduce(function(e,t,n){return t.data&&t.data.getName()===r?{array:t.data,index:n}:e},{array:null,index:-1})},u.getArrayByIndex=function(e){return 0<=e&&e<l.arrays.length?l.arrays[e].data:null},u.hasArray=function(e){return 0<=u.getArrayWithIndex(e).index},u.getArrayName=function(e){e=l.arrays[e];return e?e.data.getName():""},u.getCopyFieldFlags=function(){return l.copyFieldFlags},u.getFlag=function(e){return l.copyFieldFlags[e]},u.passData=function(e){var o=1<arguments.length&&void 0!==arguments[1]?arguments[1]:-1,s=2<arguments.length&&void 0!==arguments[2]?arguments[2]:-1;e.getArrays().forEach(function(e){var t=u.getFlag(e.getName());if(!1!==t&&(!l.doCopyAllOff||!0===t)&&e){var n,r,a=u.getArrayByName(e.getName());if(a){if(e.getNumberOfComponents()===a.getNumberOfComponents())if(-1<o&&o<e.getNumberOfTuples())a.setTuple(-1<s?s:o,e.getTuple(o));else for(var i=0;i<e.getNumberOfTuples();++i)a.setTuple(i,e.getTuple(i))}else o<0||o>e.getNumberOfTuples()?u.addArray(e):(t=e.getNumberOfComponents(),(n=e.getNumberOfValues())<(r=-1<s?s:o)*t&&(n=(r+1)*t),(a=c.default.newInstance({name:e.getName(),dataType:e.getDataType(),numberOfComponents:e.getNumberOfComponents(),size:n})).setTuple(r,e.getTuple(o)),u.addArray(a))}})},u.copyFieldOn=function(e){l.copyFieldFlags[e]=!0},u.copyFieldOff=function(e){l.copyFieldFlags[e]=!1},u.copyAllOn=function(){l.doCopyAllOn&&!l.doCopyAllOff||(l.doCopyAllOn=!0,l.doCopyAllOff=!1,u.modified())},u.copyAllOff=function(){!l.doCopyAllOn&&l.doCopyAllOff||(l.doCopyAllOn=!1,l.doCopyAllOff=!0,u.modified())},u.clearFieldFlags=function(){l.copyFieldFlags={}},u.deepCopy=function(e){l.arrays=e.getArrays().map(function(e){var t=e.newClone();return t.deepCopy(e),{data:t}})},u.copyFlags=function(e){return e.getCopyFieldFlags().map(function(e){return e})},u.reset=function(){return l.arrays.forEach(function(e){return e.data.reset()})},u.getMTime=function(){return l.arrays.reduce(function(e,t){return t.data.getMTime()>e?t.data.getMTime():e},l.mtime)},u.getNumberOfComponents=function(){return l.arrays.reduce(function(e,t){return e+t.data.getNumberOfComponents()},0)},u.getNumberOfTuples=function(){return 0<l.arrays.length?l.arrays[0].getNumberOfTuples():0},u.getState=function(){var e=n();return e.arrays=l.arrays.map(function(e){return{data:e.data.getState()}}),e}}n=t.newInstance=a.default.newInstance(s,"vtkFieldData");t.default={newInstance:n,extend:s}},function(i,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=a;var s=r(t(0)),u=r(t(205)),n=r(t(204)),d=r(t(7));function r(e){return e&&e.__esModule?e:{default:e}}var l=n.default.AttributeTypes,c=n.default.AttributeCopyOperations,f=s.default.vtkWarningMacro,h={activeScalars:-1,activeVectors:-1,activeTensors:-1,activeNormals:-1,activeTCoords:-1,activeGlobalIds:-1,activePedigreeIds:-1};function a(e,t){var r,a,i,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};function o(t){var e=i.find(function(e){return l[e.toUpperCase()]===t||"number"!=typeof t&&e.toLowerCase()===t.toLowerCase()});return e=void 0===e?null:e}Object.assign(t,h,n),u.default.extend(e,t,n),s.default.setGet(e,t,["activeScalars","activeNormals","activeTCoords","activeVectors","activeTensors","activeGlobalIds","activePedigreeIds"]),t.arrays||(t.arrays={}),r=e,i=["Scalars","Vectors","Normals","TCoords","Tensors","GlobalIds","PedigreeIds"],(a=t).classHierarchy.push("vtkDataSetAttributes"),r.checkNumberOfComponents=function(e){return!0},r.setAttribute=function(e,t){t=o(t);if(e&&"PEDIGREEIDS"===t.toUpperCase()&&!e.isA("vtkDataArray"))return f("Cannot set attribute "+t+". The attribute must be a vtkDataArray."),-1;if(e&&!r.checkNumberOfComponents(e,t))return f("Cannot set attribute "+t+". Incorrect number of components."),-1;var n=a["active"+t];if(0<=n&&n<a.arrays.length){if(a.arrays[n]===e)return n;r.removeArrayByIndex(n)}return e?(n=r.addArray(e),a["active"+t]=n):a["active"+t]=-1,r.modified(),a["active"+t]},r.setActiveAttributeByName=function(e,t){return r.setActiveAttributeByIndex(r.getArrayWithIndex(e).index,t)},r.setActiveAttributeByIndex=function(e,t){t=o(t);if(0<=e&&e<a.arrays.length){if("PEDIGREEIDS"!==t.toUpperCase()){var n=r.getArrayByIndex(e);if(!n.isA("vtkDataArray"))return f("Cannot set attribute "+t+". Only vtkDataArray subclasses can be set as active attributes."),-1;if(!r.checkNumberOfComponents(n,t))return f("Cannot set attribute "+t+". Incorrect number of components."),-1}return a["active"+t]=e,r.modified(),e}return-1===e&&(a["active"+t]=e,r.modified()),-1},r.getActiveAttribute=function(e){e=o(e);return r["get"+e]()},r.removeAllArrays=function(){a.arrays=[],i.forEach(function(e){a["active"+e]=-1})},r.removeArray=function(n){a.arrays=a.arrays.filter(function(e,t){return n!==e.data.getName()||(i.forEach(function(e){t===a["active"+e]&&(a["active"+e]=-1)}),!1)})},r.removeArrayByIndex=function(n){a.arrays=a.arrays.filter(function(e,t){return t!==n}),i.forEach(function(e){n===a["active"+e]&&(a["active"+e]=-1)})},i.forEach(function(t){var e="active"+t;r["get"+t]=function(){return r.getArrayByIndex(a[e])},r["set"+t]=function(e){return r.setAttribute(e,t)},r["setActive"+t]=function(e){return r.setActiveAttributeByIndex(r.getArrayWithIndex(e).index,t)},r["copy"+t+"Off"]=function(){r.initialize();var e=t.toUpperCase();a.copyAttributeFlags[c.PASSDATA][l[e]]=!1}}),r.initialize=s.default.chain(r.initialize,function(){a.copyAttributeFlags=[],Object.keys(c).filter(function(e){return"ALLCOPY"!==e}).forEach(function(e){a.copyAttributeFlags[c[e]]=Object.keys(l).filter(function(e){return"NUM_ATTRIBUTES"!==e}).reduce(function(e,t){return e[l[t]]=!0,e},[])}),a.copyAttributeFlags[c.COPYTUPLE][l.GLOBALIDS]=!1,a.copyAttributeFlags[c.INTERPOLATE][l.GLOBALIDS]=!1,a.copyAttributeFlags[c.COPYTUPLE][l.PEDIGREEIDS]=!1}),a.dataArrays&&Object.keys(a.dataArrays).length&&Object.keys(a.dataArrays).forEach(function(e){a.dataArrays[e].ref||"vtkDataArray"!==a.dataArrays[e].type||r.addArray(d.default.newInstance(a.dataArrays[e]))})}t=e.newInstance=s.default.newInstance(a,"vtkDataSetAttributes");e.default=Object.assign({newInstance:t,extend:a},n.default)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.SelectionContent={GLOBALIDS:0,PEDIGREEIDS:1,VALUES:2,INDICES:3,FRUSTUM:4,LOCATIONS:5,THRESHOLDS:6,BLOCKS:7,QUERY:8},a=t.SelectionField={CELL:0,POINT:1,FIELD:2,VERTEX:3,EDGE:4,ROW:5};t.default={SelectionContent:r,SelectionField:a}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=o;var r=a(n(0)),n=a(n(207));function a(e){return e&&e.__esModule?e:{default:e}}var i={contentType:-1,fieldType:-1,properties:null,selectionList:[]};function o(e,t){var n;Object.assign(t,i,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),r.default.obj(e,t),t.properties={},r.default.setGet(e,t,["contentType","fieldType","properties","selectionList"]),e=e,(n=t).classHierarchy.push("vtkSelectionNode"),e.getBounds=function(){return n.points.getBounds()}}var s=t.newInstance=r.default.newInstance(o,"vtkSelectionNode");t.default=Object.assign({newInstance:s,extend:o},n.default)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=t.PassTypes={MIN_KNOWN_PASS:0,ACTOR_PASS:0,COMPOSITE_INDEX_PASS:1,ID_LOW24:2,MAX_KNOWN_PASS:2};t.default={PassTypes:r}},function(a,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=c;var A=t(3),r=n(t(0)),f=n(t(34)),o=n(t(95)),s=n(t(49)),u=n(t(33)),l=n(t(13));function n(e){return e&&e.__esModule?e:{default:e}}var i=r.default.vtkErrorMacro,T=s.default.Representation,d=f.default.ObjectType,y=o.default.PassTypes,h={type:"StartEvent"},g={type:"EndEvent"},p={normalMatrix:null,mcdcMatrix:null,mcwcMatrix:null};function c(e,t){var N,E,c,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,p,n),u.default.extend(e,t,n),t.tmpMat3=A.mat3.create(),t.normalMatrix=A.mat3.create(),t.mcdcMatrix=A.mat4.create(),t.mcvcMatrix=A.mat4.create(),t.tmpColor=[],t.glyphBOBuildTime={},r.default.obj(t.glyphBOBuildTime,{mtime:0}),N=e,(E=t).classHierarchy.push("vtkOpenGLGlyph3DMapper"),c=Object.assign({},N),N.renderPiece=function(e,t){var n,r,a;N.invokeEvent(h),E.renderable.getStatic()||E.renderable.update(),E.currentInput=E.renderable.getInputData(1),N.invokeEvent(g),E.currentInput?E.currentInput.getPoints&&E.currentInput.getPoints().getNumberOfValues()&&(n=E.context,E.openGLRenderWindow.getWebgl2()?(E.hardwareSupport=!0,E.extension=null):E.extension||(E.extension=E.context.getExtension("ANGLE_instanced_arrays"),E.hardwareSupport=!!E.extension),r=t.getProperty().getBackfaceCulling(),a=t.getProperty().getFrontfaceCulling(),r||a?a?(E.openGLRenderWindow.enableCullFace(),n.cullFace(n.FRONT)):(E.openGLRenderWindow.enableCullFace(),n.cullFace(n.BACK)):E.openGLRenderWindow.disableCullFace(),N.renderPieceStart(e,t),N.renderPieceDraw(e,t),N.renderPieceFinish(e,t)):i("No input!")},N.multiply4x4WithOffset=function(e,t,n,r){var a=t[0],i=t[1],c=t[2],f=t[3],d=t[4],h=t[5],g=t[6],p=t[7],M=t[8],m=t[9],v=t[10],A=t[11],y=t[12],T=t[13],w=t[14],t=t[15],o=n[r],s=n[r+1],u=n[r+2],l=n[r+3];e[0]=o*a+s*d+u*M+l*y,e[1]=o*i+s*h+u*m+l*T,e[2]=o*c+s*g+u*v+l*w,e[3]=o*f+s*p+u*A+l*t,o=n[r+4],s=n[r+5],u=n[r+6],l=n[r+7],e[4]=o*a+s*d+u*M+l*y,e[5]=o*i+s*h+u*m+l*T,e[6]=o*c+s*g+u*v+l*w,e[7]=o*f+s*p+u*A+l*t,o=n[r+8],s=n[r+9],u=n[r+10],l=n[r+11],e[8]=o*a+s*d+u*M+l*y,e[9]=o*i+s*h+u*m+l*T,e[10]=o*c+s*g+u*v+l*w,e[11]=o*f+s*p+u*A+l*t,o=n[r+12],s=n[r+13],u=n[r+14],l=n[r+15],e[12]=o*a+s*d+u*M+l*y,e[13]=o*i+s*h+u*m+l*T,e[14]=o*c+s*g+u*v+l*w,e[15]=o*f+s*p+u*A+l*t},N.replaceShaderNormal=function(e,t,n){var r;E.hardwareSupport&&0<E.lastBoundBO.getReferenceByName("lastLightComplexity")&&(r=e.Vertex,E.lastBoundBO.getCABO().getNormalOffset()&&(r=l.default.substitute(r,"//VTK::Normal::Dec",["attribute vec3 normalMC;","attribute mat3 gNormal;","uniform mat3 normalMatrix;","varying vec3 normalVCVSOutput;"]).result,r=l.default.substitute(r,"//VTK::Normal::Impl",["normalVCVSOutput = normalMatrix * gNormal * normalMC;"]).result),e.Vertex=r),c.replaceShaderNormal(e,t,n)},N.replaceShaderColor=function(e,t,n){var r,a,i,o,s,u;E.hardwareSupport&&E.renderable.getColorArray()&&(r=e.Vertex,a=e.Geometry,i=e.Fragment,s=["uniform float ambient;","uniform float diffuse;","uniform float specular;","uniform float opacityUniform; // the fragment opacity"],(o=E.lastBoundBO.getReferenceByName("lastLightComplexity"))&&(s=s.concat(["uniform vec3 specularColorUniform;","uniform float specularPowerUniform;"])),u=["vec3 ambientColor;","  vec3 diffuseColor;","  float opacity;"],u=(u=o?u.concat(["  vec3 specularColor;","  float specularPower;"]):u).concat(["  opacity = opacityUniform;"]),o&&(u=u.concat(["  specularColor = specularColorUniform;","  specularPower = specularPowerUniform;"])),E.drawingEdges||(s=s.concat(["varying vec4 vertexColorVSOutput;"]),r=l.default.substitute(r,"//VTK::Color::Dec",["attribute vec4 gColor;","varying vec4 vertexColorVSOutput;"]).result,r=l.default.substitute(r,"//VTK::Color::Impl",["vertexColorVSOutput = gColor;"]).result,a=l.default.substitute(a,"//VTK::Color::Dec",["in vec4 vertexColorVSOutput[];","out vec4 vertexColorGSOutput;"]).result,a=l.default.substitute(a,"//VTK::Color::Impl",["vertexColorGSOutput = vertexColorVSOutput[i];"]).result,u=u.concat(["  diffuseColor = vertexColorVSOutput.rgb;","  ambientColor = vertexColorVSOutput.rgb;","  opacity = opacity*vertexColorVSOutput.a;"])),i=l.default.substitute(i,"//VTK::Color::Impl",u).result,i=l.default.substitute(i,"//VTK::Color::Dec",s).result,e.Vertex=r,e.Geometry=a,e.Fragment=i),c.replaceShaderColor(e,t,n)},N.replaceShaderPositionVC=function(e,t,n){var r;E.hardwareSupport&&(r=e.Vertex,r=0<E.lastBoundBO.getReferenceByName("lastLightComplexity")?(r=l.default.substitute(r,"//VTK::PositionVC::Impl",["vec4 gVertexMC = gMatrix * vertexMC;","vertexVCVSOutput = MCVCMatrix * gVertexMC;","  gl_Position = MCDCMatrix * gVertexMC;"]).result,l.default.substitute(r,"//VTK::Camera::Dec",["attribute mat4 gMatrix;","uniform mat4 MCDCMatrix;","uniform mat4 MCVCMatrix;"]).result):(r=l.default.substitute(r,"//VTK::Camera::Dec",["attribute mat4 gMatrix;","uniform mat4 MCDCMatrix;"]).result,l.default.substitute(r,"//VTK::PositionVC::Impl",["vec4 gVertexMC = gMatrix * vertexMC;","  gl_Position = MCDCMatrix * gVertexMC;"]).result),e.Vertex=r),c.replaceShaderPositionVC(e,t,n)},N.replaceShaderPicking=function(e,t,n){if(E.openGLRenderer.getSelector()){var r=e.Fragment;switch(E.openGLRenderer.getSelector().getCurrentPass()){case y.ID_LOW24:break;case y.COMPOSITE_INDEX_PASS:var a,r=E.hardwareSupport?(a=e.Vertex,a=l.default.substitute(a,"//VTK::Picking::Dec",["attribute vec3 mapperIndexVS;","varying vec3 mapperIndexVSOutput;"]).result,a=l.default.substitute(a,"//VTK::Picking::Impl","  mapperIndexVSOutput = mapperIndexVS;").result,e.Vertex=a,r=l.default.substitute(r,"//VTK::Picking::Dec","varying vec3 mapperIndexVSOutput;").result,l.default.substitute(r,"//VTK::Picking::Impl","  gl_FragData[0] = vec4(mapperIndexVSOutput,1.0);").result):(r=l.default.substitute(r,"//VTK::Picking::Dec","uniform vec3 mapperIndex;").result,l.default.substitute(r,"//VTK::Picking::Impl","  gl_FragData[0] = vec4(mapperIndex,1.0);").result);break;default:r=l.default.substitute(r,"//VTK::Picking::Dec","uniform vec3 mapperIndex;").result,r=l.default.substitute(r,"//VTK::Picking::Impl","  gl_FragData[0] = vec4(mapperIndex,1.0);").result}e.Fragment=r}},N.updateGlyphShaderParameters=function(e,c,t,f,d,n,r,h){var a,i,o,s,u,g,p,M,m,v,A,y,T,w,b,D,x,l,t=t.getProgram();e&&(e=E.normalMatrix,a=E.tmpMat3,i=e[0],o=e[1],s=e[2],u=e[3],g=e[4],p=e[5],M=e[6],m=e[7],e=e[8],v=n[l=9*r],A=n[1+l],y=n[2+l],T=n[3+l],w=n[4+l],b=n[5+l],D=n[6+l],x=n[7+l],n=n[8+l],a[0]=v*i+A*u+y*M,a[1]=v*o+A*g+y*m,a[2]=v*s+A*p+y*e,a[3]=T*i+w*u+b*M,a[4]=T*o+w*g+b*m,a[5]=T*s+w*p+b*e,a[6]=D*i+x*u+n*M,a[7]=D*o+x*g+n*m,a[8]=D*s+x*p+n*e,t.setUniformMatrix3x3("normalMatrix",E.tmpMat3)),N.multiply4x4WithOffset(E.tmpMat4,E.mcdcMatrix,d,16*r),t.setUniformMatrix("MCDCMatrix",E.tmpMat4),c&&(N.multiply4x4WithOffset(E.tmpMat4,E.mcvcMatrix,d,16*r),t.setUniformMatrix("MCVCMatrix",E.tmpMat4)),f&&(l=f.getData(),E.tmpColor[0]=l[4*r]/255,E.tmpColor[1]=l[4*r+1]/255,E.tmpColor[2]=l[4*r+2]/255,t.setUniform3fArray("ambientColorUniform",E.tmpColor),t.setUniform3fArray("diffuseColorUniform",E.tmpColor)),h&&t.setUniform3fArray("mapperIndex",h.getPropColorValue())},N.renderPieceDraw=function(e,t){var c=t.getProperty().getRepresentation(),f=E.context,d=t.getProperty().getEdgeVisibility()&&c===T.SURFACE,n=E.openGLCamera.getKeyMatrices(e),r=E.openGLActor.getKeyMatrices(),h=(A.mat3.multiply(E.normalMatrix,n.normalMatrix,r.normalMatrix),A.mat4.multiply(E.mcdcMatrix,n.wcdc,r.mcwc),A.mat4.multiply(E.mcvcMatrix,n.wcvc,r.mcwc),E.renderable.getMatrixArray()),g=E.renderable.getNormalArray(),p=E.renderable.getColorArray(),a=h.length/16,i=!1;E.openGLRenderer.getSelector()&&E.openGLRenderer.getSelector().getCurrentPass()===y.COMPOSITE_INDEX_PASS&&(i=!0);for(var o=E.primTypes.Start;o<E.primTypes.End;o++){var s=E.primitives[o].getCABO();if(s.getElementCount()){E.drawingEdges=d&&(o===E.primTypes.TrisEdges||o===E.primTypes.TriStripsEdges),N.updateShaders(E.primitives[o],e,t);var M=E.primitives[o].getProgram(),u=N.getOpenGLMode(c,o),m=M.isUniformUsed("normalMatrix"),v=M.isUniformUsed("MCVCMatrix");if(E.hardwareSupport)E.extension?E.extension.drawArraysInstancedANGLE(u,0,s.getElementCount(),a):f.drawArraysInstanced(u,0,s.getElementCount(),a);else for(var l=0;l<a;++l)i&&E.openGLRenderer.getSelector().renderCompositeIndex(l),N.updateGlyphShaderParameters(m,v,E.primitives[o],p,h,g,l,i?E.openGLRenderer.getSelector():null),f.drawArrays(u,0,s.getElementCount())}}},N.setMapperShaderParameters=function(e,t,n){if(e.getCABO().getElementCount()&&(E.glyphBOBuildTime.getMTime()>e.getAttributeUpdateTime().getMTime()||e.getShaderSourceTime().getMTime()>e.getAttributeUpdateTime().getMTime()))return e.getProgram().isAttributeUsed("gMatrix")?e.getVAO().addAttributeMatrixWithDivisor(e.getProgram(),E.matrixBuffer,"gMatrix",0,64,E.context.FLOAT,4,!1,1)||i("Error setting gMatrix in shader VAO."):e.getVAO().removeAttributeArray("gMatrix"),e.getProgram().isAttributeUsed("gNormal")?e.getVAO().addAttributeMatrixWithDivisor(e.getProgram(),E.normalBuffer,"gNormal",0,36,E.context.FLOAT,3,!1,1)||i("Error setting gNormal in shader VAO."):e.getVAO().removeAttributeArray("gNormal"),e.getProgram().isAttributeUsed("gColor")?e.getVAO().addAttributeArrayWithDivisor(e.getProgram(),E.colorBuffer,"gColor",0,4,E.context.UNSIGNED_BYTE,4,!0,1,!1)||i("Error setting gColor in shader VAO."):e.getVAO().removeAttributeArray("gColor"),e.getProgram().isAttributeUsed("mapperIndexVS")?e.getVAO().addAttributeArrayWithDivisor(e.getProgram(),E.pickBuffer,"mapperIndexVS",0,4,E.context.UNSIGNED_BYTE,4,!0,1,!1)||i("Error setting mapperIndexVS in shader VAO."):e.getVAO().removeAttributeArray("mapperIndexVS"),c.setMapperShaderParameters(e,t,n),void e.getAttributeUpdateTime().modified();c.setMapperShaderParameters(e,t,n)},N.getNeedToRebuildBufferObjects=function(e,t){return E.renderable.buildArrays(),E.VBOBuildTime.getMTime()<E.renderable.getBuildTime().getMTime()||c.getNeedToRebuildBufferObjects(e,t)},N.buildBufferObjects=function(e,t){if(E.hardwareSupport){var n=E.renderable.getMatrixArray(),r=E.renderable.getNormalArray(),a=E.renderable.getColorArray();if(E.matrixBuffer||(E.matrixBuffer=f.default.newInstance(),E.matrixBuffer.setOpenGLRenderWindow(E.openGLRenderWindow),E.normalBuffer=f.default.newInstance(),E.normalBuffer.setOpenGLRenderWindow(E.openGLRenderWindow),E.colorBuffer=f.default.newInstance(),E.colorBuffer.setOpenGLRenderWindow(E.openGLRenderWindow),E.pickBuffer=f.default.newInstance(),E.pickBuffer.setOpenGLRenderWindow(E.openGLRenderWindow)),E.renderable.getBuildTime().getMTime()>E.glyphBOBuildTime.getMTime()){E.matrixBuffer.upload(n,d.ARRAY_BUFFER),E.normalBuffer.upload(r,d.ARRAY_BUFFER),a?E.colorBuffer.upload(a.getData(),d.ARRAY_BUFFER):E.colorBuffer.releaseGraphicsResources();for(var i=n.length/16,o=new Uint8Array(4*i),s=0;s<i;++s){var u=s+1,l=4*s;o[l]=u%256,u=(u-o[l])/256,o[1+l]=u%256,u=(u-o[1+l])/256,o[2+l]=u%256,o[3+l]=255}E.pickBuffer.upload(o,d.ARRAY_BUFFER),E.glyphBOBuildTime.modified()}}return c.buildBufferObjects(e,t)}}t=e.newInstance=r.default.newInstance(c,"vtkOpenGLGlyph3DMapper");e.default={newInstance:t,extend:c}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var i=n(3),o=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(0)),s=(n=n(4))&&n.__esModule?n:{default:n},u={context:null,lastRenderer:null,keyMatrixTime:null,keyMatrices:null};function r(e,t){var n,r,a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,u,a),s.default.extend(e,t,a),t.keyMatrixTime={},o.obj(t.keyMatrixTime),t.keyMatrices={normalMatrix:i.mat3.create(),vcdc:i.mat4.create(),wcvc:i.mat4.create(),wcdc:i.mat4.create()},o.setGet(e,t,["context","keyMatrixTime"]),n=e,(r=t).classHierarchy.push("vtkOpenGLCamera"),n.buildPass=function(e){e&&(r.openGLRenderer=n.getFirstAncestorOfType("vtkOpenGLRenderer"),r.openGLRenderWindow=r.openGLRenderer.getParent(),r.context=r.openGLRenderWindow.getContext())},n.opaquePass=function(e){e&&(e=r.openGLRenderer.getTiledSizeAndOrigin(),r.context.viewport(e.lowerLeftU,e.lowerLeftV,e.usize,e.vsize),r.context.scissor(e.lowerLeftU,e.lowerLeftV,e.usize,e.vsize))},n.translucentPass=n.opaquePass,n.opaqueZBufferPass=n.opaquePass,n.volumePass=n.opaquePass,n.getKeyMatrices=function(e){var t;return(e!==r.lastRenderer||r.openGLRenderWindow.getMTime()>r.keyMatrixTime.getMTime()||n.getMTime()>r.keyMatrixTime.getMTime()||e.getMTime()>r.keyMatrixTime.getMTime())&&(i.mat4.copy(r.keyMatrices.wcvc,r.renderable.getViewMatrix()),i.mat3.fromMat4(r.keyMatrices.normalMatrix,r.keyMatrices.wcvc),i.mat3.invert(r.keyMatrices.normalMatrix,r.keyMatrices.normalMatrix),i.mat4.transpose(r.keyMatrices.wcvc,r.keyMatrices.wcvc),t=r.openGLRenderer.getAspectRatio(),i.mat4.copy(r.keyMatrices.vcdc,r.renderable.getProjectionMatrix(t,-1,1)),i.mat4.transpose(r.keyMatrices.vcdc,r.keyMatrices.vcdc),i.mat4.multiply(r.keyMatrices.wcdc,r.keyMatrices.vcdc,r.keyMatrices.wcvc),r.keyMatrixTime.modified(),r.lastRenderer=e),r.keyMatrices}}n=t.newInstance=o.newInstance(r);t.default={newInstance:n,extend:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=r;var i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(0)),o=(n=n(4))&&n.__esModule?n:{default:n},s={context:null,activeTextures:[]};function r(e,t){var n,r,a=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,s,a),o.default.extend(e,t,a),i.setGet(e,t,["context"]),i.get(e,t,["activeTextures"]),n=e,(r=t).classHierarchy.push("vtkOpenGLActor2D"),n.buildPass=function(e){e&&r.renderable&&(n.prepareNodes(),n.addMissingNodes(r.renderable.getTextures()),n.addMissingNode(r.renderable.getMapper()),n.removeUnusedNodes())},n.traverseOpaquePass=function(t){r.renderable&&r.renderable.getVisibility()&&r.renderable.getIsOpaque()&&(n.apply(t,!0),r.children.forEach(function(e){e.isA("vtkOpenGLTexture")||e.traverse(t)}),n.apply(t,!1))},n.traverseTranslucentPass=function(t){r.renderable&&r.renderable.getVisibility()&&!r.renderable.getIsOpaque()&&(n.apply(t,!0),r.children.forEach(function(e){e.isA("vtkOpenGLTexture")||e.traverse(t)}),n.apply(t,!1))},n.activateTextures=function(){r.activeTextures=[],r.children.forEach(function(e){e.isA("vtkOpenGLTexture")&&(e.render(),e.getHandle()&&r.activeTextures.push(e))})},n.opaquePass=function(e,t){e?(r.context=n.getFirstAncestorOfType("vtkOpenGLRenderWindow").getContext(),r.context.depthMask(!0),n.activateTextures()):r.activeTextures.forEach(function(e){e.deactivate()})},n.translucentPass=function(e,t){e?(r.context=n.getFirstAncestorOfType("vtkOpenGLRenderWindow").getContext(),r.context.depthMask(!1),n.activateTextures()):(r.activeTextures.forEach(function(e){e.deactivate()}),r.context.depthMask(!0))}}n=t.newInstance=i.newInstance(r);t.default={newInstance:n,extend:r}},function(c,e,f){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.forEach=e.sqrLen=e.sqrDist=e.dist=e.div=e.mul=e.sub=e.len=void 0,e.create=t,e.clone=function(e){var t=new a.ARRAY_TYPE(2);return t[0]=e[0],t[1]=e[1],t},e.fromValues=function(e,t){var n=new a.ARRAY_TYPE(2);return n[0]=e,n[1]=t,n},e.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e},e.set=function(e,t,n){return e[0]=t,e[1]=n,e},e.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e},e.subtract=n,e.multiply=r,e.divide=i,e.ceil=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e},e.floor=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e},e.min=function(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e},e.max=function(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e},e.round=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e},e.scale=function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e},e.scaleAndAdd=function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e},e.distance=o,e.squaredDistance=s,e.length=l,e.squaredLength=d,e.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e},e.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e},e.normalize=function(e,t){var n=t[0],r=t[1],n=n*n+r*r;return 0<n&&(n=1/Math.sqrt(n),e[0]=t[0]*n,e[1]=t[1]*n),e},e.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]},e.cross=function(e,t,n){t=t[0]*n[1]-t[1]*n[0];return e[0]=e[1]=0,e[2]=t,e},e.lerp=function(e,t,n,r){var a=t[0],t=t[1];return e[0]=a+r*(n[0]-a),e[1]=t+r*(n[1]-t),e},e.random=function(e,t){t=t||1;var n=2*a.RANDOM()*Math.PI;return e[0]=Math.cos(n)*t,e[1]=Math.sin(n)*t,e},e.transformMat2=function(e,t,n){var r=t[0],t=t[1];return e[0]=n[0]*r+n[2]*t,e[1]=n[1]*r+n[3]*t,e},e.transformMat2d=function(e,t,n){var r=t[0],t=t[1];return e[0]=n[0]*r+n[2]*t+n[4],e[1]=n[1]*r+n[3]*t+n[5],e},e.transformMat3=function(e,t,n){var r=t[0],t=t[1];return e[0]=n[0]*r+n[3]*t+n[6],e[1]=n[1]*r+n[4]*t+n[7],e},e.transformMat4=function(e,t,n){var r=t[0],t=t[1];return e[0]=n[0]*r+n[4]*t+n[12],e[1]=n[1]*r+n[5]*t+n[13],e},e.str=function(e){return"vec2("+e[0]+", "+e[1]+")"},e.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]},e.equals=function(e,t){var n=e[0],e=e[1],r=t[0],t=t[1];return Math.abs(n-r)<=a.EPSILON*Math.max(1,Math.abs(n),Math.abs(r))&&Math.abs(e-t)<=a.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))};var u,a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(f(9));function t(){var e=new a.ARRAY_TYPE(2);return e[0]=0,e[1]=0,e}function n(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e}function r(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e}function i(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e}function o(e,t){var n=t[0]-e[0],t=t[1]-e[1];return Math.sqrt(n*n+t*t)}function s(e,t){var n=t[0]-e[0],t=t[1]-e[1];return n*n+t*t}function l(e){var t=e[0],e=e[1];return Math.sqrt(t*t+e*e)}function d(e){var t=e[0],e=e[1];return t*t+e*e}e.len=l,e.sub=n,e.mul=r,e.div=i,e.dist=o,e.sqrDist=s,e.sqrLen=d,e.forEach=(u=t(),function(e,t,n,r,a,i){var o,s=void 0;for(t=t||2,n=n||0,o=r?Math.min(r*t+n,e.length):e.length,s=n;s<o;s+=t)u[0]=e[s],u[1]=e[s+1],a(u,u,i),e[s]=u[0],e[s+1]=u[1];return e})},function(s,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.sqrLen=e.squaredLength=e.len=e.length=e.dot=e.mul=e.setReal=e.getReal=void 0,e.create=function(){var e=new M.ARRAY_TYPE(8);return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e[6]=0,e[7]=0,e},e.clone=function(e){var t=new M.ARRAY_TYPE(8);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t},e.fromValues=function(e,t,n,r,a,i,o,s){var u=new M.ARRAY_TYPE(8);return u[0]=e,u[1]=t,u[2]=n,u[3]=r,u[4]=a,u[5]=i,u[6]=o,u[7]=s,u},e.fromRotationTranslationValues=function(e,t,n,r,a,i,o){var s=new M.ARRAY_TYPE(8),a=(s[0]=e,s[1]=t,s[2]=n,s[3]=r,.5*a),i=.5*i,o=.5*o;return s[4]=a*r+i*n-o*t,s[5]=i*r+o*e-a*n,s[6]=o*r+a*t-i*e,s[7]=-a*e-i*t-o*n,s},e.fromRotationTranslation=i,e.fromTranslation=function(e,t){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=.5*t[0],e[5]=.5*t[1],e[6]=.5*t[2],e[7]=0,e},e.fromRotation=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=0,e[5]=0,e[6]=0,e[7]=0,e},e.fromMat4=function(e,t){var n=g.create(),r=(a.getRotation(n,t),new M.ARRAY_TYPE(3));return a.getTranslation(r,t),i(e,n,r),e},e.copy=c,e.identity=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e[6]=0,e[7]=0,e},e.set=function(e,t,n,r,a,i,o,s,u){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=o,e[6]=s,e[7]=u,e},e.getDual=function(e,t){return e[0]=t[4],e[1]=t[5],e[2]=t[6],e[3]=t[7],e},e.setDual=function(e,t){return e[4]=t[0],e[5]=t[1],e[6]=t[2],e[7]=t[3],e},e.getTranslation=function(e,t){var n=t[4],r=t[5],a=t[6],i=t[7],o=-t[0],s=-t[1],u=-t[2],t=t[3];return e[0]=2*(n*t+i*o+r*u-a*s),e[1]=2*(r*t+i*s+a*o-n*u),e[2]=2*(a*t+i*u+n*s-r*o),e},e.translate=function(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=.5*n[0],u=.5*n[1],n=.5*n[2],l=t[4],c=t[5],f=t[6],t=t[7];return e[0]=r,e[1]=a,e[2]=i,e[3]=o,e[4]=o*s+a*n-i*u+l,e[5]=o*u+i*s-r*n+c,e[6]=o*n+r*u-a*s+f,e[7]=-r*s-a*u-i*n+t,e},e.rotateX=function(e,t,c){var n=-t[0],r=-t[1],a=-t[2],i=t[3],o=t[4],s=t[5],u=t[6],l=t[7],f=o*i+l*n+s*a-u*r,d=s*i+l*r+u*n-o*a,h=u*i+l*a+o*r-s*n,l=l*i-o*n-s*r-u*a;return g.rotateX(e,t,c),n=e[0],r=e[1],a=e[2],i=e[3],e[4]=f*i+l*n+d*a-h*r,e[5]=d*i+l*r+h*n-f*a,e[6]=h*i+l*a+f*r-d*n,e[7]=l*i-f*n-d*r-h*a,e},e.rotateY=function(e,t,c){var n=-t[0],r=-t[1],a=-t[2],i=t[3],o=t[4],s=t[5],u=t[6],l=t[7],f=o*i+l*n+s*a-u*r,d=s*i+l*r+u*n-o*a,h=u*i+l*a+o*r-s*n,l=l*i-o*n-s*r-u*a;return g.rotateY(e,t,c),n=e[0],r=e[1],a=e[2],i=e[3],e[4]=f*i+l*n+d*a-h*r,e[5]=d*i+l*r+h*n-f*a,e[6]=h*i+l*a+f*r-d*n,e[7]=l*i-f*n-d*r-h*a,e},e.rotateZ=function(e,t,c){var n=-t[0],r=-t[1],a=-t[2],i=t[3],o=t[4],s=t[5],u=t[6],l=t[7],f=o*i+l*n+s*a-u*r,d=s*i+l*r+u*n-o*a,h=u*i+l*a+o*r-s*n,l=l*i-o*n-s*r-u*a;return g.rotateZ(e,t,c),n=e[0],r=e[1],a=e[2],i=e[3],e[4]=f*i+l*n+d*a-h*r,e[5]=d*i+l*r+h*n-f*a,e[6]=h*i+l*a+f*r-d*n,e[7]=l*i-f*n-d*r-h*a,e},e.rotateByQuatAppend=function(e,t,n){var r=n[0],a=n[1],i=n[2],n=n[3],o=t[0],s=t[1],u=t[2],l=t[3];return e[0]=o*n+l*r+s*i-u*a,e[1]=s*n+l*a+u*r-o*i,e[2]=u*n+l*i+o*a-s*r,e[3]=l*n-o*r-s*a-u*i,o=t[4],s=t[5],u=t[6],l=t[7],e[4]=o*n+l*r+s*i-u*a,e[5]=s*n+l*a+u*r-o*i,e[6]=u*n+l*i+o*a-s*r,e[7]=l*n-o*r-s*a-u*i,e},e.rotateByQuatPrepend=function(e,t,n){var r=t[0],a=t[1],i=t[2],t=t[3],o=n[0],s=n[1],u=n[2],l=n[3];return e[0]=r*l+t*o+a*u-i*s,e[1]=a*l+t*s+i*o-r*u,e[2]=i*l+t*u+r*s-a*o,e[3]=t*l-r*o-a*s-i*u,o=n[4],s=n[5],u=n[6],l=n[7],e[4]=r*l+t*o+a*u-i*s,e[5]=a*l+t*s+i*o-r*u,e[6]=i*l+t*u+r*s-a*o,e[7]=t*l-r*o-a*s-i*u,e},e.rotateAroundAxis=function(e,t,n,r){if(Math.abs(r)<M.EPSILON)return c(e,t);var a=Math.sqrt(n[0]*n[0]+n[1]*n[1]+n[2]*n[2]),i=(r*=.5,Math.sin(r)),o=i*n[0]/a,s=i*n[1]/a,i=i*n[2]/a,n=Math.cos(r),a=t[0],r=t[1],u=t[2],l=t[3],l=(e[0]=a*n+l*o+r*i-u*s,e[1]=r*n+l*s+u*o-a*i,e[2]=u*n+l*i+a*s-r*o,e[3]=l*n-a*o-r*s-u*i,t[4]),a=t[5],r=t[6],u=t[7];return e[4]=l*n+u*o+a*i-r*s,e[5]=a*n+u*s+r*o-l*i,e[6]=r*n+u*i+l*s-a*o,e[7]=u*n-l*o-a*s-r*i,e},e.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e},e.multiply=r,e.scale=function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e},e.lerp=function(e,t,n,r){var a=1-r;return u(t,n)<0&&(r=-r),e[0]=t[0]*a+n[0]*r,e[1]=t[1]*a+n[1]*r,e[2]=t[2]*a+n[2]*r,e[3]=t[3]*a+n[3]*r,e[4]=t[4]*a+n[4]*r,e[5]=t[5]*a+n[5]*r,e[6]=t[6]*a+n[6]*r,e[7]=t[7]*a+n[7]*r,e},e.invert=function(e,t){var n=o(t);return e[0]=-t[0]/n,e[1]=-t[1]/n,e[2]=-t[2]/n,e[3]=t[3]/n,e[4]=-t[4]/n,e[5]=-t[5]/n,e[6]=-t[6]/n,e[7]=t[7]/n,e},e.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e[4]=-t[4],e[5]=-t[5],e[6]=-t[6],e[7]=t[7],e},e.normalize=function(e,t){var n=o(t);return 0<n&&(n=Math.sqrt(n),e[0]=t[0]/n,e[1]=t[1]/n,e[2]=t[2]/n,e[3]=t[3]/n,e[4]=t[4]/n,e[5]=t[5]/n,e[6]=t[6]/n,e[7]=t[7]/n),e},e.str=function(e){return"quat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+")"},e.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]},e.equals=function(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],o=e[4],s=e[5],u=e[6],e=e[7],l=t[0],c=t[1],f=t[2],d=t[3],h=t[4],g=t[5],p=t[6],t=t[7];return Math.abs(n-l)<=M.EPSILON*Math.max(1,Math.abs(n),Math.abs(l))&&Math.abs(r-c)<=M.EPSILON*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(a-f)<=M.EPSILON*Math.max(1,Math.abs(a),Math.abs(f))&&Math.abs(i-d)<=M.EPSILON*Math.max(1,Math.abs(i),Math.abs(d))&&Math.abs(o-h)<=M.EPSILON*Math.max(1,Math.abs(o),Math.abs(h))&&Math.abs(s-g)<=M.EPSILON*Math.max(1,Math.abs(s),Math.abs(g))&&Math.abs(u-p)<=M.EPSILON*Math.max(1,Math.abs(u),Math.abs(p))&&Math.abs(e-t)<=M.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))};var M=n(t(9)),g=n(t(98)),a=n(t(99));function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function i(e,t,n){var r=.5*n[0],a=.5*n[1],n=.5*n[2],i=t[0],o=t[1],s=t[2],t=t[3];return e[0]=i,e[1]=o,e[2]=s,e[3]=t,e[4]=r*t+a*s-n*o,e[5]=a*t+n*i-r*s,e[6]=n*t+r*o-a*i,e[7]=-r*i-a*o-n*s,e}function c(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e}function r(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],c=n[4],f=n[5],d=n[6],h=n[7],g=t[4],p=t[5],M=t[6],t=t[7],s=n[0],u=n[1],l=n[2],n=n[3];return e[0]=r*n+o*s+a*l-i*u,e[1]=a*n+o*u+i*s-r*l,e[2]=i*n+o*l+r*u-a*s,e[3]=o*n-r*s-a*u-i*l,e[4]=r*h+o*c+a*d-i*f+g*n+t*s+p*l-M*u,e[5]=a*h+o*f+i*c-r*d+p*n+t*u+M*s-g*l,e[6]=i*h+o*d+r*f-a*c+M*n+t*l+g*u-p*s,e[7]=o*h-r*c-a*f-i*d+t*n-g*s-p*u-M*l,e}e.getReal=g.copy,e.setReal=g.copy,e.mul=r;var u=e.dot=g.dot,t=e.length=g.length,o=(e.len=t,e.squaredLength=g.squaredLength);e.sqrLen=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sub=t.mul=void 0,t.create=function(){var e=new d.ARRAY_TYPE(6);return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e},t.clone=function(e){var t=new d.ARRAY_TYPE(6);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t},t.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e},t.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e},t.fromValues=function(e,t,n,r,a,i){var o=new d.ARRAY_TYPE(6);return o[0]=e,o[1]=t,o[2]=n,o[3]=r,o[4]=a,o[5]=i,o},t.set=function(e,t,n,r,a,i,o){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=o,e},t.invert=function(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],o=t[4],t=t[5],s=n*i-r*a;return s?(e[0]=i*(s=1/s),e[1]=-r*s,e[2]=-a*s,e[3]=n*s,e[4]=(a*t-i*o)*s,e[5]=(r*o-n*t)*s,e):null},t.determinant=function(e){return e[0]*e[3]-e[1]*e[2]},t.multiply=r,t.rotate=function(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=t[4],t=t[5],u=Math.sin(n),n=Math.cos(n);return e[0]=r*n+i*u,e[1]=a*n+o*u,e[2]=r*-u+i*n,e[3]=a*-u+o*n,e[4]=s,e[5]=t,e},t.scale=function(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=t[4],t=t[5],u=n[0],n=n[1];return e[0]=r*u,e[1]=a*u,e[2]=i*n,e[3]=o*n,e[4]=s,e[5]=t,e},t.translate=function(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],s=t[4],t=t[5],u=n[0],n=n[1];return e[0]=r,e[1]=a,e[2]=i,e[3]=o,e[4]=r*u+i*n+s,e[5]=a*u+o*n+t,e},t.fromRotation=function(e,t){var n=Math.sin(t),t=Math.cos(t);return e[0]=t,e[1]=n,e[2]=-n,e[3]=t,e[4]=0,e[5]=0,e},t.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e[4]=0,e[5]=0,e},t.fromTranslation=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=t[0],e[5]=t[1],e},t.str=function(e){return"mat2d("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+")"},t.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2)+Math.pow(e[4],2)+Math.pow(e[5],2)+1)},t.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e},t.subtract=a,t.multiplyScalar=function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e},t.multiplyScalarAndAdd=function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e},t.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]},t.equals=function(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],o=e[4],e=e[5],s=t[0],u=t[1],l=t[2],c=t[3],f=t[4],t=t[5];return Math.abs(n-s)<=d.EPSILON*Math.max(1,Math.abs(n),Math.abs(s))&&Math.abs(r-u)<=d.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(a-l)<=d.EPSILON*Math.max(1,Math.abs(a),Math.abs(l))&&Math.abs(i-c)<=d.EPSILON*Math.max(1,Math.abs(i),Math.abs(c))&&Math.abs(o-f)<=d.EPSILON*Math.max(1,Math.abs(o),Math.abs(f))&&Math.abs(e-t)<=d.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))};var d=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(9));function r(e,t,n){var r=t[0],a=t[1],i=t[2],o=t[3],c=t[4],t=t[5],s=n[0],u=n[1],l=n[2],f=n[3],d=n[4],n=n[5];return e[0]=r*s+i*u,e[1]=a*s+o*u,e[2]=r*l+i*f,e[3]=a*l+o*f,e[4]=r*d+i*n+c,e[5]=a*d+o*n+t,e}function a(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e}t.mul=r,t.sub=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sub=t.mul=void 0,t.create=function(){var e=new u.ARRAY_TYPE(4);return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e},t.clone=function(e){var t=new u.ARRAY_TYPE(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},t.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},t.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e},t.fromValues=function(e,t,n,r){var a=new u.ARRAY_TYPE(4);return a[0]=e,a[1]=t,a[2]=n,a[3]=r,a},t.set=function(e,t,n,r,a){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e},t.transpose=function(e,t){var n;return e===t?(n=t[1],e[1]=t[2],e[2]=n):(e[0]=t[0],e[1]=t[2],e[2]=t[1],e[3]=t[3]),e},t.invert=function(e,t){var n=t[0],r=t[1],a=t[2],t=t[3],i=n*t-a*r;return i?(e[0]=t*(i=1/i),e[1]=-r*i,e[2]=-a*i,e[3]=n*i,e):null},t.adjoint=function(e,t){var n=t[0];return e[0]=t[3],e[1]=-t[1],e[2]=-t[2],e[3]=n,e},t.determinant=function(e){return e[0]*e[3]-e[2]*e[1]},t.multiply=r,t.rotate=function(e,t,n){var r=t[0],a=t[1],i=t[2],t=t[3],o=Math.sin(n),n=Math.cos(n);return e[0]=r*n+i*o,e[1]=a*n+t*o,e[2]=r*-o+i*n,e[3]=a*-o+t*n,e},t.scale=function(e,t,n){var r=t[0],a=t[1],i=t[2],t=t[3],o=n[0],n=n[1];return e[0]=r*o,e[1]=a*o,e[2]=i*n,e[3]=t*n,e},t.fromRotation=function(e,t){var n=Math.sin(t),t=Math.cos(t);return e[0]=t,e[1]=n,e[2]=-n,e[3]=t,e},t.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e},t.str=function(e){return"mat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},t.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2))},t.LDU=function(e,t,n,r){return e[2]=r[2]/r[0],n[0]=r[0],n[1]=r[1],n[3]=r[3]-e[2]*n[1],[e,t,n]},t.add=function(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e},t.subtract=a,t.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]},t.equals=function(e,t){var n=e[0],r=e[1],a=e[2],e=e[3],i=t[0],o=t[1],s=t[2],t=t[3];return Math.abs(n-i)<=u.EPSILON*Math.max(1,Math.abs(n),Math.abs(i))&&Math.abs(r-o)<=u.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-s)<=u.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(e-t)<=u.EPSILON*Math.max(1,Math.abs(e),Math.abs(t))},t.multiplyScalar=function(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e},t.multiplyScalarAndAdd=function(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e};var u=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(9));function r(e,t,n){var r=t[0],a=t[1],i=t[2],t=t[3],o=n[0],s=n[1],u=n[2],n=n[3];return e[0]=r*o+i*s,e[1]=a*o+t*s,e[2]=r*u+i*n,e[3]=a*u+t*n,e}function a(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e}t.mul=r,t.sub=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=a;var i=n(3),o=r(n(0)),s=r(n(4));function r(e){return e&&e.__esModule?e:{default:e}}var u={context:null,keyMatrixTime:null,keyMatrices:null,activeTextures:null};function a(e,t){var r,a,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,u,n),s.default.extend(e,t,n),t.keyMatrixTime={},o.default.obj(t.keyMatrixTime,{mtime:0}),t.keyMatrices={normalMatrix:i.mat3.create(),mcwc:i.mat4.create()},o.default.setGet(e,t,["context"]),o.default.get(e,t,["activeTextures"]),r=e,(a=t).classHierarchy.push("vtkOpenGLActor"),r.buildPass=function(e){if(e){a.openGLRenderWindow=r.getFirstAncestorOfType("vtkOpenGLRenderWindow"),a.context=a.openGLRenderWindow.getContext(),r.prepareNodes(),r.addMissingNodes(a.renderable.getTextures()),r.addMissingNode(a.renderable.getMapper()),r.removeUnusedNodes(),a.ogltextures=null,a.activeTextures=null;for(var t=0;t<a.children.length;t++){var n=a.children[t];n.isA("vtkOpenGLTexture")?(a.ogltextures||(a.ogltextures=[]),a.ogltextures.push(n)):a.oglmapper=n}}},r.traverseOpaqueZBufferPass=function(e){r.traverseOpaquePass(e)},r.traverseOpaquePass=function(e){a.renderable&&a.renderable.getVisibility()&&a.renderable.getIsOpaque()&&(r.apply(e,!0),a.oglmapper.traverse(e),r.apply(e,!1))},r.traverseTranslucentPass=function(e){a.renderable&&a.renderable.getVisibility()&&!a.renderable.getIsOpaque()&&(r.apply(e,!0),a.oglmapper.traverse(e),r.apply(e,!1))},r.activateTextures=function(){if(a.ogltextures){a.activeTextures=[];for(var e=0;e<a.ogltextures.length;e++){var t=a.ogltextures[e];t.render(),t.getHandle()&&a.activeTextures.push(t)}}},r.queryPass=function(e,t){e&&a.renderable&&a.renderable.getVisibility()&&(a.renderable.getIsOpaque()?t.incrementOpaqueActorCount():t.incrementTranslucentActorCount())},r.opaqueZBufferPass=function(e,t){return r.opaquePass(e,t)},r.opaquePass=function(e,t){if(e)a.openGLRenderWindow.enableDepthMask(),r.activateTextures();else if(a.activeTextures)for(var n=0;n<a.activeTextures.length;n++)a.activeTextures[n].deactivate()},r.translucentPass=function(e,t){if(e)a.openGLRenderWindow.disableDepthMask(),r.activateTextures();else if(a.activeTextures)for(var n=0;n<a.activeTextures.length;n++)a.activeTextures[n].deactivate()},r.getKeyMatrices=function(){return a.renderable.getMTime()>a.keyMatrixTime.getMTime()&&(a.renderable.computeMatrix(),i.mat4.copy(a.keyMatrices.mcwc,a.renderable.getMatrix()),i.mat4.transpose(a.keyMatrices.mcwc,a.keyMatrices.mcwc),a.renderable.getIsIdentity()?i.mat3.identity(a.keyMatrices.normalMatrix):(i.mat3.fromMat4(a.keyMatrices.normalMatrix,a.keyMatrices.mcwc),i.mat3.invert(a.keyMatrices.normalMatrix,a.keyMatrices.normalMatrix)),a.keyMatrixTime.modified()),a.keyMatrices}}n=t.newInstance=o.default.newInstance(a);t.default={newInstance:n,extend:a}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=i;var r=(n=n(0))&&n.__esModule?n:{default:n},a={};function i(e,t){var o,s;Object.assign(t,a,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),r.default.obj(e,t),o=e,(s=t).overrides={},s.classHierarchy.push("vtkViewNodeFactory"),o.createNode=function(e){if(e.isDeleted())return null;for(var t=0,n=e.getClassName(t++),r=!1,a=Object.keys(s.overrides);n&&!r;)-1!==a.indexOf(n)?r=!0:n=e.getClassName(t++);if(!r)return null;var i=s.overrides[n]();return i.setMyFactory(o),i},o.registerOverride=function(e,t){s.overrides[e]=t}}n=t.newInstance=r.default.newInstance(i,"vtkViewNodeFactory");t.default={newInstance:n,extend:i}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=s;var r=i(n(0)),a=i(n(4));function i(e){return e&&e.__esModule?e:{default:e}}var o={};function s(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,o,n),a.default.extend(e,t,n),t.classHierarchy.push("vtkGenericWidgetRepresentation")}n=t.newInstance=r.default.newInstance(s);t.default={newInstance:n,extend:s}},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=l;var n=u(t(0)),r=u(t(219)),a=u(t(218)),i=u(t(217)),o=u(t(212)),s=u(t(211)),f=u(t(210)),d=u(t(193)),h=u(t(190)),g=u(t(189)),p=u(t(33)),M=u(t(102)),m=u(t(188)),v=u(t(187)),A=u(t(186)),y=u(t(184)),T=u(t(19)),w=u(t(182)),b=u(t(181));function u(e){return e&&e.__esModule?e:{default:e}}var D={};function l(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,D,n),a.default.extend(e,t,n),t.classHierarchy.push("vtkOpenGLViewNodeFactory"),e.registerOverride("vtkActor",i.default.newInstance),e.registerOverride("vtkActor2D",o.default.newInstance),e.registerOverride("vtkCamera",s.default.newInstance),e.registerOverride("vtkGlyph3DMapper",f.default.newInstance),e.registerOverride("vtkImageMapper",d.default.newInstance),e.registerOverride("vtkImageSlice",h.default.newInstance),e.registerOverride("vtkMapper",p.default.newInstance),e.registerOverride("vtkPixelSpaceCallbackMapper",g.default.newInstance),e.registerOverride("vtkRenderWindow",M.default.newInstance),e.registerOverride("vtkRenderer",m.default.newInstance),e.registerOverride("vtkSkybox",v.default.newInstance),e.registerOverride("vtkSphereMapper",A.default.newInstance),e.registerOverride("vtkStickMapper",y.default.newInstance),e.registerOverride("vtkTexture",T.default.newInstance),e.registerOverride("vtkVolume",w.default.newInstance),e.registerOverride("vtkVolumeMapper",b.default.newInstance),e.registerOverride("vtkWidgetRepresentation",r.default.newInstance)}t=e.newInstance=n.default.newInstance(l,"vtkOpenGLViewNodeFactory");e.default={newInstance:t,extend:l}},function(e,t,n){"use strict";var r=window.URL||window.webkitURL;e.exports=function(e,t){try{try{var n;try{(n=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder)).append(e),n=n.getBlob()}catch(t){n=new Blob([e])}return new Worker(r.createObjectURL(n))}catch(t){return new Worker("data:application/javascript,"+encodeURIComponent(e))}}catch(e){if(!t)throw Error("Inline worker is not supported");return new Worker(t)}}},function(e,t,n){"use strict";e.exports=function(){return n(221)('!function(t){var n={};function r(e){if(n[e])return n[e].exports;var a=n[e]={i:e,l:!1,exports:{}};return t[e].call(a.exports,a,a.exports,r),a.l=!0,a.exports}r.m=t,r.c=n,r.d=function(t,n,e){r.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:e})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,n){if(1&n&&(t=r(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var e=Object.create(null);if(r.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var a in t)r.d(e,a,function(n){return t[n]}.bind(null,a));return e},r.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(n,"a",n),n},r.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},r.p="",r(r.s=32)}([function(t,n){t.exports=function(){throw new Error("define cannot be used indirect")}},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.setMatrixArrayType=function(t){n.ARRAY_TYPE=t},n.toRadian=function(t){return t*a},n.equals=function(t,n){return Math.abs(t-n)<=e*Math.max(1,Math.abs(t),Math.abs(n))};var e=n.EPSILON=1e-6;n.ARRAY_TYPE="undefined"!=typeof Float32Array?Float32Array:Array,n.RANDOM=Math.random;var a=Math.PI/180},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.vec4=n.vec3=n.vec2=n.quat2=n.quat=n.mat4=n.mat3=n.mat2d=n.mat2=n.glMatrix=void 0;var e=v(r(1)),a=v(r(31)),o=v(r(30)),i=v(r(12)),u=v(r(11)),c=v(r(10)),f=v(r(29)),s=v(r(28)),l=v(r(9)),h=v(r(8));function v(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}n.glMatrix=e,n.mat2=a,n.mat2d=o,n.mat3=i,n.mat4=u,n.quat=c,n.quat2=f,n.vec2=s,n.vec3=l,n.vec4=h},function(t,n){(function(n){t.exports=n}).call(this,{})},function(t,n){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,n){var r;r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(r=window)}t.exports=r},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var e=function(){return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,n){var r=[],e=!0,a=!1,o=void 0;try{for(var i,u=t[Symbol.iterator]();!(e=(i=u.next()).done)&&(r.push(i.value),!n||r.length!==n);e=!0);}catch(t){a=!0,o=t}finally{try{!e&&u.return&&u.return()}finally{if(a)throw o}}return r}(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=i(r(26)),o=i(r(17));function i(t){return t&&t.__esModule?t:{default:t}}var u=o.default.vtkErrorMacro,c=o.default.vtkWarningMacro,f=0,s=20,l=1e-12;function h(t){return function(){return u("vtkMath::"+t+" - NOT IMPLEMENTED")}}function v(t,n){for(var r=0;r<3;r++){var e=t[r];t[r]=n[r],n[r]=e}}function d(){for(var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:3,n=[];n.length<t;)n.push(0);return n}var p=Math.round,M=Math.floor,b=Math.ceil,m=Math.min,y=Math.max;var g=h("ceilLog2"),x=h("factorial");function w(t){for(var n=1;n<t;)n*=2;return n}var A=h("gaussian");function O(t,n){t[0]*=n,t[1]*=n,t[2]*=n}function E(t,n){t[0]*=n,t[1]*=n}function P(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}function I(t,n,r){var e=t[1]*n[2]-t[2]*n[1],a=t[2]*n[0]-t[0]*n[2],o=t[0]*n[1]-t[1]*n[0];r[0]=e,r[1]=a,r[2]=o}function S(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3;switch(n){case 1:return Math.abs(t);case 2:return Math.sqrt(t[0]*t[0]+t[1]*t[1]);case 3:return Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);default:for(var r=0,e=0;e<n;e++)r+=t[e]*t[e];return Math.sqrt(r)}}function _(t){var n=S(t);return 0!==n&&(t[0]/=n,t[1]/=n,t[2]/=n),n}function T(t,n){return t[0]*n[0]+t[1]*n[1]}function L(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function N(){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return 2===n.length?n[0][0]*n[1][1]-n[1][0]*n[0][1]:4===n.length?n[0]*n[3]-n[1]*n[2]:Number.NaN}function j(t,n,r){for(var e=[[0,0,0],[0,0,0],[0,0,0]],a=0;a<3;a++)e[0][a]=t[0][0]*n[0][a]+t[0][1]*n[1][a]+t[0][2]*n[2][a],e[1][a]=t[1][0]*n[0][a]+t[1][1]*n[1][a]+t[1][2]*n[2][a],e[2][a]=t[2][0]*n[0][a]+t[2][1]*n[1][a]+t[2][2]*n[2][a];for(var o=0;o<3;o++)r[o][0]=e[o][0],r[o][1]=e[o][1],r[o][2]=e[o][2]}function q(t,n){var r=void 0;r=t[1][0],n[1][0]=t[0][1],n[0][1]=r,r=t[2][0],n[2][0]=t[0][2],n[0][2]=r,r=t[2][1],n[2][1]=t[1][2],n[1][2]=r,n[0][0]=t[0][0],n[1][1]=t[1][1],n[2][2]=t[2][2]}function k(t){for(var n=0;n<3;n++)t[n][0]=t[n][1]=t[n][2]=0,t[n][n]=1}function R(t){return t[0][0]*t[1][1]*t[2][2]+t[1][0]*t[2][1]*t[0][2]+t[2][0]*t[0][1]*t[1][2]-t[0][0]*t[2][1]*t[1][2]-t[1][0]*t[0][1]*t[2][2]-t[2][0]*t[1][1]*t[0][2]}function Y(t,n){var r=t[0]*t[0],e=t[0]*t[1],a=t[0]*t[2],o=t[0]*t[3],i=t[1]*t[1],u=t[2]*t[2],c=t[3]*t[3],f=t[1]*t[2],s=t[1]*t[3],l=t[2]*t[3],h=i+u+c,v=1/(r+h),d=(r-h)*v;v*=2,n[0][0]=i*v+d,n[1][0]=(f+o)*v,n[2][0]=(s-a)*v,n[0][1]=(f-o)*v,n[1][1]=u*v+d,n[2][1]=(l+e)*v,n[0][2]=(s+a)*v,n[1][2]=(l-e)*v,n[2][2]=c*v+d}function D(t,n,r,e){var a=void 0,o=void 0,i=void 0,u=void 0,f=void 0,l=void 0,h=void 0,v=void 0,p=void 0,M=void 0,b=void 0,m=void 0,y=void 0,g=void 0,x=void 0,w=void 0,A=d(n),O=d(n),E=function(t,n,r,e,a){g=t[n][r],y=t[e][a],t[n][r]=g-m*(y+g*M),t[e][a]=y+m*(g-y*M)};for(f=0;f<n;f++){for(u=0;u<n;u++)e[f][u]=0;e[f][f]=1}for(f=0;f<n;f++)A[f]=r[f]=t[f][f],O[f]=0;for(a=0;a<s;a++){for(b=0,f=0;f<n-1;f++)for(u=f+1;u<n;u++)b+=Math.abs(t[f][u]);if(0===b)break;for(h=a<3?.2*b/(n*n):0,f=0;f<n-1;f++)for(u=f+1;u<n;u++)if(g=100*Math.abs(t[f][u]),a>3&&Math.abs(r[f])+g===Math.abs(r[f])&&Math.abs(r[u])+g===Math.abs(r[u]))t[f][u]=0;else if(Math.abs(t[f][u])>h){for(y=r[u]-r[f],Math.abs(y)+g===Math.abs(y)?p=t[f][u]/y:(v=.5*y/t[f][u],p=1/(Math.abs(v)+Math.sqrt(1+v*v)),v<0&&(p=-p)),x=1/Math.sqrt(1+p*p),M=(m=p*x)/(1+x),y=p*t[f][u],O[f]-=y,O[u]+=y,r[f]-=y,r[u]+=y,t[f][u]=0,o=0;o<=f-1;o++)E(t,o,f,o,u);for(o=f+1;o<=u-1;o++)E(t,f,o,o,u);for(o=u+1;o<n;o++)E(t,f,o,u,o);for(o=0;o<n;o++)E(e,o,f,o,u)}for(f=0;f<n;f++)A[f]+=O[f],r[f]=A[f],O[f]=0}if(a>=s)return c("vtkMath::Jacobi: Error extracting eigenfunctions"),0;for(o=0;o<n-1;o++){for(w=r[i=o],a=o+1;a<n;a++)r[a]>=w&&(w=r[i=a]);if(i!==o)for(r[i]=r[o],r[o]=w,a=0;a<n;a++)w=e[a][o],e[a][o]=e[a][i],e[a][i]=w}var P=(n>>1)+(1&n);for(o=0;o<n;o++){for(l=0,a=0;a<n;a++)e[a][o]>=0&&l++;if(l<P)for(a=0;a<n;a++)e[a][o]*=-1}return 1}function C(t,n){var r=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]];r[0][0]=t[0][0]+t[1][1]+t[2][2],r[1][1]=t[0][0]-t[1][1]-t[2][2],r[2][2]=-t[0][0]+t[1][1]-t[2][2],r[3][3]=-t[0][0]-t[1][1]+t[2][2],r[0][1]=r[1][0]=t[2][1]-t[1][2],r[0][2]=r[2][0]=t[0][2]-t[2][0],r[0][3]=r[3][0]=t[1][0]-t[0][1],r[1][2]=r[2][1]=t[1][0]+t[0][1],r[1][3]=r[3][1]=t[0][2]+t[2][0],r[2][3]=r[3][2]=t[2][1]+t[1][2];for(var e=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],a=[0,0,0,0],o=[0,0,0,0],i=0;i<4;i++)a[i]=r[i],o[i]=e[i];D(a,4,[0,0,0,0],o),n[0]=e[0][0],n[1]=e[1][0],n[2]=e[2][0],n[3]=e[3][0]}function z(t,n){for(var r=0;r<3;r++)n[0][r]=t[0][r],n[1][r]=t[1][r],n[2][r]=t[2][r];for(var e=d(3),a=d(3),o=void 0,i=0;i<3;i++){var u=Math.abs(n[i][0]),c=Math.abs(n[i][1]),f=Math.abs(n[i][2]);o=f>(o=c>u?c:u)?f:o,e[i]=1,0!==o&&(e[i]/=o)}var s=Math.abs(n[0][0])*e[0],l=Math.abs(n[1][0])*e[1],h=Math.abs(n[2][0])*e[2];a[0]=0,l>=(o=s)&&(o=l,a[0]=1),h>=o&&(a[0]=2),0!==a[0]&&(v(n[a[0]],n[0]),e[a[0]]=e[0]);var p=Math.abs(n[1][1])*e[1],M=Math.abs(n[2][1])*e[2];a[1]=1,M>=(o=p)&&(a[1]=2,v(n[2],n[1])),a[2]=2;var b=0;if(R(n)<0){b=1;for(var m=0;m<3;m++)n[0][m]=-n[0][m],n[1][m]=-n[1][m],n[2][m]=-n[2][m]}var y=d(4);if(C(n,y),Y(y,n),b)for(var g=0;g<3;g++)n[0][g]=-n[0][g],n[1][g]=-n[1][g],n[2][g]=-n[2][g];1!==a[1]&&v(n[a[1]],n[1]),0!==a[0]&&v(n[a[0]],n[0])}function V(t,n,r){var e=void 0,a=void 0,o=void 0,i=void 0,u=void 0,c=void 0,f=[d(3),d(3),d(3)],s=d(3),l=d(3);for(e=0;e<3;e++)f[e][0]=t[e][0],f[e][1]=t[e][1],f[e][2]=t[e][2],s[e]=f[e],l[e]=r[e];if(D(s,3,n,l),n[0]!==n[1]||n[0]!==n[2]){for(q(r,r),e=0;e<3;e++)if(n[(e+1)%3]===n[(e+2)%3]){for(c=Math.abs(r[e][0]),i=0,a=1;a<3;a++)c<(u=Math.abs(r[e][a]))&&(c=u,i=a);return i!==e&&(u=n[i],n[i]=n[e],n[e]=u,v(r[e],r[i])),r[i][i]<0&&(r[i][0]=-r[i][0],r[i][1]=-r[i][1],r[i][2]=-r[i][2]),o=(i+2)%3,r[a=(i+1)%3][0]=0,r[a][1]=0,r[a][2]=0,r[a][a]=1,I(r[i],r[a],r[o]),_(r[o]),I(r[o],r[i],r[a]),void q(r,r)}for(c=Math.abs(r[0][0]),i=0,e=1;e<3;e++)c<(u=Math.abs(r[e][0]))&&(c=u,i=e);for(0!==i&&(u=n[i],n[i]=n[0],n[0]=u,v(r[i],r[0])),Math.abs(r[1][1])<Math.abs(r[2][1])&&(u=n[2],n[2]=n[1],n[1]=u,v(r[2],r[1])),e=0;e<2;e++)r[e][e]<0&&(r[e][0]=-r[e][0],r[e][1]=-r[e][1],r[e][2]=-r[e][2]);R(r)<0&&(r[2][0]=-r[2][0],r[2][1]=-r[2][1],r[2][2]=-r[2][2]),q(r,r)}else k(r)}function U(t,n,r){var e=void 0,a=void 0,o=void 0,i=void 0,u=0,f=void 0,s=void 0,h=void 0,v=d(r);for(e=0;e<r;e++){for(i=0,a=0;a<r;a++)(h=Math.abs(t[e][a]))>i&&(i=h);if(0===i)return c("Unable to factor linear system"),0;v[e]=1/i}for(a=0;a<r;a++){for(e=0;e<a;e++){for(f=t[e][a],o=0;o<e;o++)f-=t[e][o]*t[o][a];t[e][a]=f}for(i=0,e=a;e<r;e++){for(f=t[e][a],o=0;o<a;o++)f-=t[e][o]*t[o][a];t[e][a]=f,(s=v[e]*Math.abs(f))>=i&&(i=s,u=e)}if(a!==u){for(o=0;o<r;o++)s=t[u][o],t[u][o]=t[a][o],t[a][o]=s;v[u]=v[a]}if(n[a]=u,Math.abs(t[a][a])<=l)return c("Unable to factor linear system"),0;if(a!==r-1)for(s=1/t[a][a],e=a+1;e<r;e++)t[e][a]*=s}return 1}function F(t,n,r,e){var a=void 0,o=void 0,i=void 0,u=void 0,c=void 0;for(i=-1,a=0;a<e;a++){if(c=r[u=n[a]],r[u]=r[a],i>=0)for(o=i;o<=a-1;o++)c-=t[a][o]*r[o];else 0!==c&&(i=a);r[a]=c}for(a=e-1;a>=0;a--){for(c=r[a],o=a+1;o<e;o++)c-=t[a][o]*r[o];r[a]=c/t[a][a]}}function X(t,n,r){var e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,o=e||d(r),i=a||d(r);if(0===U(t,o,r))return 0;for(var u=0;u<r;u++){for(var c=0;c<r;c++)i[c]=0;i[u]=1,F(t,o,i,r);for(var f=0;f<r;f++)n[f][u]=i[f]}return 1}function B(t,n,r,e){if(t<r)return c("Insufficient number of samples. Underdetermined."),0;var a=void 0,o=void 0,i=void 0,u=d(r),f=d(r),s=d(r);for(a=0;a<r;a++)for(s[a]=d(r),u[a]=d(r),o=0;o<r;o++)u[a][o]=0;for(i=0;i<t;i++)for(a=0;a<r;a++)for(o=a;o<r;o++)u[a][o]+=n[i][a]*n[i][o];for(a=0;a<r;a++)for(o=0;o<a;o++)u[a][o]=u[o][a];for(D(u,r,f,s),a=0;a<r;a++)e[a][0]=s[a][r-1];return 1}function G(t,n){var r=e(t,3),a=(r[0]+16)/116,o=r[1]/500+a,i=a-r[2]/200;a=Math.pow(a,3)>.008856?Math.pow(a,3):(a-16/116)/7.787,o=Math.pow(o,3)>.008856?Math.pow(o,3):(o-16/116)/7.787,i=Math.pow(i,3)>.008856?Math.pow(i,3):(i-16/116)/7.787;n[0]=.9505*o,n[1]=1*a,n[2]=1.089*i}function W(t,n){var r=e(t,3),a=r[0]/.9505,o=r[1]/1,i=r[2]/1.089;a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,o=o>.008856?Math.pow(o,1/3):7.787*o+16/116,i=i>.008856?Math.pow(i,1/3):7.787*i+16/116,n[0]=116*o-16,n[1]=500*(a-o),n[2]=200*(o-i)}function K(t,n){var r=e(t,3),a=r[0],o=r[1],i=r[2],u=3.2406*a+-1.5372*o+-.4986*i,c=-.9689*a+1.8758*o+.0415*i,f=.0557*a+-.204*o+1.057*i;u>.0031308?u=1.055*Math.pow(u,1/2.4)-.055:u*=12.92,c>.0031308?c=1.055*Math.pow(c,1/2.4)-.055:c*=12.92,f>.0031308?f=1.055*Math.pow(f,1/2.4)-.055:f*=12.92;var s=u;s<c&&(s=c),s<f&&(s=f),s>1&&(u/=s,c/=s,f/=s),u<0&&(u=0),c<0&&(c=0),f<0&&(f=0),n[0]=u,n[1]=c,n[2]=f}function Q(t,n){var r=e(t,3),a=r[0],o=r[1],i=r[2];a>.04045?a=Math.pow((a+.055)/1.055,2.4):a/=12.92,o>.04045?o=Math.pow((o+.055)/1.055,2.4):o/=12.92,i>.04045?i=Math.pow((i+.055)/1.055,2.4):i/=12.92,n[0]=.4124*a+.3576*o+.1805*i,n[1]=.2126*a+.7152*o+.0722*i,n[2]=.0193*a+.1192*o+.9505*i}var H=h("GetScalarTypeFittingRange"),Z=h("GetAdjustedScalarRange");var J=Number.isFinite,$=Number.isNaN;n.default={Pi:function(){return Math.PI},radiansFromDegrees:function(t){return t/180*Math.PI},degreesFromRadians:function(t){return 180*t/Math.PI},round:p,floor:M,ceil:b,ceilLog2:g,min:m,max:y,arrayMin:function(t){for(var n=1/0,r=0,e=t.length;r<e;++r)t[r]<n&&(n=t[r]);return n},arrayMax:function(t){for(var n=-1/0,r=0,e=t.length;r<e;++r)n<t[r]&&(n=t[r]);return n},isPowerOfTwo:function(t){return t===w(t)},nearestPowerOfTwo:w,factorial:x,binomial:function(t,n){for(var r=1,e=1;e<=n;++e)r*=(t-e+1)/e;return Math.floor(r)},beginCombination:function(t,n){if(t<n)return 0;for(var r=d(n),e=0;e<n;++e)r[e]=e;return r},nextCombination:function(t,n,r){for(var e=0,a=n-1;a>=0;--a)if(r[a]<t-n+a){for(var o=r[a]+1;a<n;)r[a++]=o++;e=1;break}return e},randomSeed:function(t){(0,a.default)(""+t,{global:!0}),f=t},getSeed:function(){return f},random:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return t+((arguments.length>1&&void 0!==arguments[1]?arguments[1]:1)-t)*Math.random()},gaussian:A,add:function(t,n,r){r[0]=t[0]+n[0],r[1]=t[1]+n[1],r[2]=t[2]+n[2]},subtract:function(t,n,r){r[0]=t[0]-n[0],r[1]=t[1]-n[1],r[2]=t[2]-n[2]},multiplyScalar:O,multiplyScalar2D:E,dot:P,outer:function(t,n,r){for(var e=0;e<3;e++)for(var a=0;a<3;a++)r[e][a]=t[e]*n[a]},cross:I,norm:S,normalize:_,perpendiculars:function(t,n,r,e){var a=t[0]*t[0],o=t[1]*t[1],i=t[2]*t[2],u=Math.sqrt(a+o+i),c=void 0,f=void 0,s=void 0;a>o&&a>i?(c=0,f=1,s=2):o>i?(c=1,f=2,s=0):(c=2,f=0,s=1);var l=t[c]/u,h=t[f]/u,v=t[s]/u,d=Math.sqrt(l*l+v*v);if(0!==e){var p=Math.sin(e),M=Math.cos(e);n&&(n[c]=(v*M-l*h*p)/d,n[f]=p*d,n[s]=(-l*M-h*v*p)/d),r&&(r[c]=(-v*p-l*h*M)/d,r[f]=M*d,r[s]=(l*p-h*v*M)/d)}else n&&(n[c]=v/d,n[f]=0,n[s]=-l/d),r&&(r[c]=-l*h/d,r[f]=d,r[s]=-h*v/d)},projectVector:function(t,n,r){var e=P(n,n);if(0===e)return r[0]=0,r[1]=0,r[2]=0,!1;for(var a=P(t,n)/e,o=0;o<3;o++)r[o]=n[o];return O(r,a),!0},projectVector2D:function(t,n,r){var e=T(n,n);if(0===e)return r[0]=0,r[1]=0,!1;for(var a=T(t,n)/e,o=0;o<2;o++)r[o]=n[o];return E(r,a),!0},distance2BetweenPoints:function(t,n){return(t[0]-n[0])*(t[0]-n[0])+(t[1]-n[1])*(t[1]-n[1])+(t[2]-n[2])*(t[2]-n[2])},angleBetweenVectors:function(t,n){var r=[0,0,0];return I(t,n,r),Math.atan2(S(r),P(t,n))},gaussianAmplitude:function(t,n,r){var e=Math.abs(t-r);return 1/Math.sqrt(2*Math.PI*n)*Math.exp(-Math.pow(e,2)/(2*n))},gaussianWeight:function(t,n,r){var e=Math.abs(t-r);return Math.exp(-Math.pow(e,2)/(2*n))},dot2D:T,outer2D:function(t,n,r){for(var e=0;e<2;e++)for(var a=0;a<2;a++)r[e][a]=t[e]*n[a]},norm2D:L,normalize2D:function(t){var n=L(t);return 0!==n&&(t[0]/=n,t[1]/=n),n},determinant2x2:N,LUFactor3x3:function(t,n){for(var r=void 0,e=void 0,a=void 0,o=[0,0,0],i=0;i<3;i++)a=Math.abs(t[i][0]),(e=Math.abs(t[i][1]))>a&&(a=e),(e=Math.abs(t[i][2]))>a&&(a=e),o[i]=1/a;a=o[0]*Math.abs(t[0][0]),r=0,(e=o[1]*Math.abs(t[1][0]))>=a&&(a=e,r=1),(e=o[2]*Math.abs(t[2][0]))>=a&&(r=2),0!==r&&(v(t[r],t[0]),o[r]=o[0]),n[0]=r,t[1][0]/=t[0][0],t[2][0]/=t[0][0],t[1][1]-=t[1][0]*t[0][1],t[2][1]-=t[2][0]*t[0][1],a=o[1]*Math.abs(t[1][1]),r=1,(e=o[2]*Math.abs(t[2][1]))>=a&&(r=2,v(t[2],t[1]),o[2]=o[1]),n[1]=r,t[2][1]/=t[1][1],t[1][2]-=t[1][0]*t[0][2],t[2][2]-=t[2][0]*t[0][2]+t[2][1]*t[1][2],n[2]=2},LUSolve3x3:function(t,n,r){var e=r[n[0]];r[n[0]]=r[0],r[0]=e,e=r[n[1]],r[n[1]]=r[1],r[1]=e-t[1][0]*r[0],e=r[n[2]],r[n[2]]=r[2],r[2]=e-t[2][0]*r[0]-t[2][1]*r[1],r[2]/=t[2][2],r[1]=(r[1]-t[1][2]*r[2])/t[1][1],r[0]=(r[0]-t[0][1]*r[1]-t[0][2]*r[2])/t[0][0]},linearSolve3x3:function(t,n,r){var e=t[0][0],a=t[0][1],o=t[0][2],i=t[1][0],u=t[1][1],c=t[1][2],f=t[2][0],s=t[2][1],l=t[2][2],h=+N(u,s,c,l),v=-N(i,f,c,l),d=+N(i,f,u,s),p=-N(a,s,o,l),M=+N(e,f,o,l),b=-N(e,f,a,s),m=+N(a,u,o,c),y=-N(e,i,o,c),g=+N(e,i,a,u),x=e*h+a*v+o*d,w=h*n[0]+p*n[1]+m*n[2],A=v*n[0]+M*n[1]+y*n[2],O=d*n[0]+b*n[1]+g*n[2];r[0]=w/x,r[1]=A/x,r[2]=O/x},multiply3x3_vect3:function(t,n,r){var e=t[0][0]*n[0]+t[0][1]*n[1]+t[0][2]*n[2],a=t[1][0]*n[0]+t[1][1]*n[1]+t[1][2]*n[2],o=t[2][0]*n[0]+t[2][1]*n[1]+t[2][2]*n[2];r[0]=e,r[1]=a,r[2]=o},multiply3x3_mat3:j,multiplyMatrix:function(t,n,r,e,a,o,i){e!==a&&u("Number of columns of A must match number of rows of B.");for(var c=0;c<r;c++)for(var f=0;f<o;f++){i[c][f]=0;for(var s=0;s<e;s++)i[c][f]+=t[c][s]*n[s][f]}},transpose3x3:q,invert3x3:function(t,n){var r=t[0][0],e=t[0][1],a=t[0][2],o=t[1][0],i=t[1][1],u=t[1][2],c=t[2][0],f=t[2][1],s=t[2][2],l=+N(i,f,u,s),h=-N(o,c,u,s),v=+N(o,c,i,f),d=-N(e,f,a,s),p=+N(r,c,a,s),M=-N(r,c,e,f),b=+N(e,i,a,u),m=-N(r,o,a,u),y=+N(r,o,e,i),g=r*l+e*h+a*v;n[0][0]=l/g,n[1][0]=h/g,n[2][0]=v/g,n[0][1]=d/g,n[1][1]=p/g,n[2][1]=M/g,n[0][2]=b/g,n[1][2]=m/g,n[2][2]=y/g},identity3x3:k,determinant3x3:R,quaternionToMatrix3x3:Y,areMatricesEqual:function(t,n){return!t.length!==n.length&&t.every(function(t,r){return t===n[r]})},matrix3x3ToQuaternion:C,multiplyQuaternion:function(t,n,r){var e=t[0]*n[0],a=t[0]*n[1],o=t[0]*n[2],i=t[0]*n[3],u=t[1]*n[0],c=t[1]*n[1],f=t[1]*n[2],s=t[1]*n[3],l=t[2]*n[0],h=t[2]*n[1],v=t[2]*n[2],d=t[2]*n[3],p=t[3]*n[0],M=t[3]*n[1],b=t[3]*n[2],m=t[3]*n[3];r[0]=e-c-v-m,r[1]=a+u+d-b,r[2]=o-s+l+M,r[3]=i+f-h+p},orthogonalize3x3:z,diagonalize3x3:V,singularValueDecomposition3x3:function(t,n,r,e){var a=void 0,o=[d(3),d(3),d(3)];for(a=0;a<3;a++)o[0][a]=t[0][a],o[1][a]=t[1][a],o[2][a]=t[2][a];var i=R(o);if(i<0)for(a=0;a<3;a++)o[0][a]=-o[0][a],o[1][a]=-o[1][a],o[2][a]=-o[2][a];z(o,n),q(o,o),j(o,n,e),V(e,r,e),j(n,e,n),q(e,e),i<0&&(r[0]=-r[0],r[1]=-r[1],r[2]=-r[2])},solveLinearSystem:function(t,n,r){if(2===r){var e=d(2),a=N(t[0][0],t[0][1],t[1][0],t[1][1]);return 0===a?0:(e[0]=(t[1][1]*n[0]-t[0][1]*n[1])/a,e[1]=(-t[1][0]*n[0]+t[0][0]*n[1])/a,n[0]=e[0],n[1]=e[1],1)}if(1===r)return 0===t[0][0]?0:(n[0]/=t[0][0],1);var o=d(r);return 0===U(t,o,r)?0:(F(t,o,n,r),1)},invertMatrix:X,luFactorLinearSystem:U,luSolveLinearSystem:F,estimateMatrixCondition:function(t,n){for(var r=+Number.MAX_VALUE,e=-Number.MAX_VALUE,a=0;a<n;a++)for(var o=a;o<n;o++)Math.abs(t[a][o])>y&&(e=Math.abs(t[a][o]));for(var i=0;i<n;i++)Math.abs(t[i][i])<m&&(r=Math.abs(t[i][i]));return 0===r?Number.MAX_VALUE:e/r},jacobi:function(t,n,r){return D(t,3,n,r)},jacobiN:D,solveHomogeneousLeastSquares:B,solveLeastSquares:function(t,n,r,e,a,o){var i=!(arguments.length>6&&void 0!==arguments[6])||arguments[6];if(t<r||t<a)return c("Insufficient number of samples. Underdetermined."),0;var u=d(a),f=1,s=void 0,h=0,v=void 0,p=void 0,M=void 0,b=0;if(i){for(p=0;p<a;p++)u[p]=1;for(v=0;v<t;v++)for(p=0;p<a;p++)Math.abs(e[v][p])>l&&(f=0,u[p]=0);if(f&&1===a)return c("Detected homogeneous system (Y=0), calling SolveHomogeneousLeastSquares()"),B(t,n,r,o);if(f)b=1;else for(p=0;p<a;p++)u[p]&&(b=1)}if(b){for(s=d(r),p=0;p<r;p++)s[p]=[0];h=B(t,n,r,s)}var m=d(r),y=d(r),g=d(r);for(v=0;v<r;v++){for(m[v]=d(r),y[v]=d(r),p=0;p<r;p++)m[v][p]=0,y[v][p]=0;for(g[v]=d(a),p=0;p<a;p++)g[v][p]=0}for(M=0;M<t;M++)for(v=0;v<r;v++){for(p=v;p<r;p++)m[v][p]+=n[M][v]*n[M][p];for(p=0;p<a;p++)g[v][p]+=n[M][v]*e[M][p]}for(v=0;v<r;v++)for(p=0;p<v;p++)m[v][p]=m[p][v];var x=X(m,y,r);if(x)for(v=0;v<r;v++)for(p=0;p<a;p++)for(o[v][p]=0,M=0;M<r;M++)o[v][p]+=y[v][M]*g[M][p];if(b)for(p=0;p<a;p++)if(u[p])for(v=0;v<r;v++)o[v][p]=s[v][0];return b?h&&x:x},hex2float:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0,.5,1];switch(t.length){case 3:return n[0]=17*parseInt(t[0],16)/255,n[1]=17*parseInt(t[1],16)/255,n[2]=17*parseInt(t[2],16)/255,n;case 4:return n[0]=17*parseInt(t[1],16)/255,n[1]=17*parseInt(t[2],16)/255,n[2]=17*parseInt(t[3],16)/255,n;case 6:return n[0]=parseInt(t.substr(0,2),16)/255,n[1]=parseInt(t.substr(2,2),16)/255,n[2]=parseInt(t.substr(4,2),16)/255,n;case 7:return n[0]=parseInt(t.substr(1,2),16)/255,n[1]=parseInt(t.substr(3,2),16)/255,n[2]=parseInt(t.substr(5,2),16)/255,n;case 9:return n[0]=parseInt(t.substr(1,2),16)/255,n[1]=parseInt(t.substr(3,2),16)/255,n[2]=parseInt(t.substr(5,2),16)/255,n[3]=parseInt(t.substr(7,2),16)/255,n;default:return n}},rgb2hsv:function(t,n){var r=void 0,a=void 0,o=e(t,3),i=o[0],u=o[1],c=o[2],f=i,s=i;u>f?f=u:u<s&&(s=u),c>f?f=c:c<s&&(s=c);var l=f;(a=l>0?(f-s)/f:0)>0?(r=i===f?1/6*(u-c)/(f-s):u===f?1/3+1/6*(c-i)/(f-s):2/3+1/6*(i-u)/(f-s))<0&&(r+=1):r=0,n[0]=r,n[1]=a,n[2]=l},hsv2rgb:function(t,n){var r=e(t,3),a=r[0],o=r[1],i=r[2],u=void 0,c=void 0,f=void 0;a>1/6&&a<=1/3?(c=1,u=(1/3-a)/(1/6),f=0):a>1/3&&a<=.5?(c=1,f=(a-1/3)/(1/6),u=0):a>.5&&a<=2/3?(f=1,c=(2/3-a)/(1/6),u=0):a>2/3&&a<=5/6?(f=1,u=(a-2/3)/(1/6),c=0):a>5/6&&a<=1?(u=1,f=(1-a)/(1/6),c=0):(u=1,c=a/(1/6),f=0),u=o*u+(1-o),c=o*c+(1-o),f=o*f+(1-o),u*=i,c*=i,f*=i,n[0]=u,n[1]=c,n[2]=f},lab2xyz:G,xyz2lab:W,xyz2rgb:K,rgb2xyz:Q,rgb2lab:function(t,n){var r=[0,0,0];Q(t,r),W(r,n)},lab2rgb:function(t,n){var r=[0,0,0];G(t,r),K(r,n)},uninitializeBounds:function(t){t[0]=1,t[1]=-1,t[2]=1,t[3]=-1,t[4]=1,t[5]=-1},areBoundsInitialized:function(t){return!(t[1]-t[0]<0)},clampValue:function(t,n,r){return t<n?n:t>r?r:t},clampAndNormalizeValue:function(t,n){var r=0;return n[0]!==n[1]&&(r=((r=t<n[0]?n[0]:t>n[1]?n[1]:t)-n[0])/(n[1]-n[0])),r},getScalarTypeFittingRange:H,getAdjustedScalarRange:Z,extentIsWithinOtherExtent:function(t,n){if(!t||!n)return 0;for(var r=0;r<6;r+=2)if(t[r]<n[r]||t[r]>n[r+1]||t[r+1]<n[r]||t[r+1]>n[r+1])return 0;return 1},boundsIsWithinOtherBounds:function(t,n,r){if(!t||!n)return 0;for(var e=0;e<6;e+=2)if(t[e]+r[e/2]<n[e]||t[e]-r[e/2]>n[e+1]||t[e+1]+r[e/2]<n[e]||t[e+1]-r[e/2]>n[e+1])return 0;return 1},pointIsWithinBounds:function(t,n,r){if(!t||!n||!r)return 0;for(var e=0;e<3;e++)if(t[e]+r[e]<n[2*e]||t[e]-r[e]>n[2*e+1])return 0;return 1},solve3PointCircle:function(t,n,r,e){for(var a=d(3),o=d(3),i=d(3),u=d(3),c=d(3),f=d(3),s=0;s<3;++s)a[s]=t[s]-n[s],o[s]=n[s]-r[s],i[s]=r[s]-t[s],u[s]=-a[s],c[s]=-o[s],f[s]=-i[s];var l=S(u),h=S(c),v=S(i),p=d(3);I(a,o,p);for(var M=S(p),b=l*h*v/(2*M),m=2*M*M,y=h*h*P(a,f)/m,g=v*v*P(u,o)/m,x=l*l*P(i,c)/m,w=0;w<3;++w)e[w]=y*t[w]+g*n[w]+x*r[w];return b},inf:1/0,negInf:-1/0,isInf:function(t){return!Number.isFinite(t)},isNan:$,isNaN:$,isFinite:J,createUninitializedBounds:function(){return[].concat([Number.MAX_VALUE,-Number.MAX_VALUE,Number.MAX_VALUE,-Number.MAX_VALUE,Number.MAX_VALUE,-Number.MAX_VALUE])}}},function(t,n,r){"use strict";var e=function(){function t(t,n){for(var r=0;r<n.length;r++){var e=n[r];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(t,e.key,e)}}return function(n,r,e){return r&&t(n.prototype,r),e&&t(n,e),n}}(),a=function t(n,r,e){null===n&&(n=Function.prototype);var a=Object.getOwnPropertyDescriptor(n,r);if(void 0===a){var o=Object.getPrototypeOf(n);return null===o?void 0:t(o,r,e)}if("value"in a)return a.value;var i=a.get;return void 0!==i?i.call(e):void 0},o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function i(t){if(Array.isArray(t)){for(var n=0,r=Array(t.length);n<t.length;n++)r[n]=t[n];return r}return Array.from(t)}function u(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}var c=r(27),f=0,s=1,l=0,h=1,v="main",d=function(t){return"object"===(void 0===t?"undefined":o(t))&&"function"==typeof t.then&&"function"==typeof t.catch};var p=function t(n,r){u(this,t),this.payload=n,this.transferable=r};t.exports=function(t){var n=function(t,n,r){return n in t?Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r,t}({},v,t),r=self.postMessage.bind(self),o=new(function(t){function o(){return u(this,o),function(t,n){if(!t)throw new ReferenceError("this hasn\'t been initialised - super() hasn\'t been called");return!n||"object"!=typeof n&&"function"!=typeof n?t:n}(this,(o.__proto__||Object.getPrototypeOf(o)).apply(this,arguments))}return function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function, not "+typeof n);t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),n&&(Object.setPrototypeOf?Object.setPrototypeOf(t,n):t.__proto__=n)}(o,c),e(o,[{key:"emit",value:function(t){for(var n=arguments.length,e=Array(n>1?n-1:0),a=1;a<n;a++)e[a-1]=arguments[a];return r({eventName:t,args:e}),this}},{key:"emitLocally",value:function(t){for(var n,r=arguments.length,e=Array(r>1?r-1:0),i=1;i<r;i++)e[i-1]=arguments[i];(n=a(o.prototype.__proto__||Object.getPrototypeOf(o.prototype),"emit",this)).call.apply(n,[this,t].concat(e))}},{key:"operation",value:function(t,r){return n[t]=r,this}}]),o}()),M=function(t,r,e){var a=n[e||v];if(!a)throw new Error("Not found handler for this request");return a(r,m.bind(null,t))},b=function(t,n,e){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];r([f,t,n,e],a)},m=function(t,n,e){if(!n)throw new Error("eventName is required");if("string"!=typeof n)throw new Error("eventName should be string");r([s,t,n,e])};return self.addEventListener("message",function(t){var n=t.data;Array.isArray(n)?function(t,n,r){var e=function(n){n&&n instanceof p?b(t,h,n.payload,n.transferable):b(t,h,n)},a=function(n){b(t,l,{message:n.message,stack:n.stack})};try{var o=M(t,n,r);d(o)?o.then(e).catch(a):e(o)}catch(t){a(t)}}.apply(void 0,i(n)):n&&n.eventName&&o.emitLocally.apply(o,[n.eventName].concat(i(n.args)))}),o},t.exports.TransferableResponse=p},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.forEach=n.sqrLen=n.len=n.sqrDist=n.dist=n.div=n.mul=n.sub=void 0,n.create=a,n.clone=function(t){var n=new e.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},n.fromValues=function(t,n,r,a){var o=new e.ARRAY_TYPE(4);return o[0]=t,o[1]=n,o[2]=r,o[3]=a,o},n.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},n.set=function(t,n,r,e,a){return t[0]=n,t[1]=r,t[2]=e,t[3]=a,t},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},n.subtract=o,n.multiply=i,n.divide=u,n.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t[3]=Math.ceil(n[3]),t},n.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t[3]=Math.floor(n[3]),t},n.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t[3]=Math.min(n[3],r[3]),t},n.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t[3]=Math.max(n[3],r[3]),t},n.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t[3]=Math.round(n[3]),t},n.scale=c,n.scaleAndAdd=function(t,n,r,e){return t[0]=n[0]+r[0]*e,t[1]=n[1]+r[1]*e,t[2]=n[2]+r[2]*e,t[3]=n[3]+r[3]*e,t},n.distance=f,n.squaredDistance=s,n.length=l,n.squaredLength=h,n.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=-n[3],t},n.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t[3]=1/n[3],t},n.normalize=v,n.dot=function(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]+t[3]*n[3]},n.lerp=function(t,n,r,e){var a=n[0],o=n[1],i=n[2],u=n[3];return t[0]=a+e*(r[0]-a),t[1]=o+e*(r[1]-o),t[2]=i+e*(r[2]-i),t[3]=u+e*(r[3]-u),t},n.random=function(t,n){return n=n||1,t[0]=e.RANDOM(),t[1]=e.RANDOM(),t[2]=e.RANDOM(),t[3]=e.RANDOM(),v(t,t),c(t,t,n),t},n.transformMat4=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3];return t[0]=r[0]*e+r[4]*a+r[8]*o+r[12]*i,t[1]=r[1]*e+r[5]*a+r[9]*o+r[13]*i,t[2]=r[2]*e+r[6]*a+r[10]*o+r[14]*i,t[3]=r[3]*e+r[7]*a+r[11]*o+r[15]*i,t},n.transformQuat=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=r[0],u=r[1],c=r[2],f=r[3],s=f*e+u*o-c*a,l=f*a+c*e-i*o,h=f*o+i*a-u*e,v=-i*e-u*a-c*o;return t[0]=s*f+v*-i+l*-c-h*-u,t[1]=l*f+v*-u+h*-i-s*-c,t[2]=h*f+v*-c+s*-u-l*-i,t[3]=n[3],t},n.str=function(t){return"vec4("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+")"},n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},n.equals=function(t,n){var r=t[0],a=t[1],o=t[2],i=t[3],u=n[0],c=n[1],f=n[2],s=n[3];return Math.abs(r-u)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(a-c)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(c))&&Math.abs(o-f)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(f))&&Math.abs(i-s)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(s))};var e=function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}(r(1));function a(){var t=new e.ARRAY_TYPE(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}function o(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}function i(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t[3]=n[3]*r[3],t}function u(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t[3]=n[3]/r[3],t}function c(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t}function f(t,n){var r=n[0]-t[0],e=n[1]-t[1],a=n[2]-t[2],o=n[3]-t[3];return Math.sqrt(r*r+e*e+a*a+o*o)}function s(t,n){var r=n[0]-t[0],e=n[1]-t[1],a=n[2]-t[2],o=n[3]-t[3];return r*r+e*e+a*a+o*o}function l(t){var n=t[0],r=t[1],e=t[2],a=t[3];return Math.sqrt(n*n+r*r+e*e+a*a)}function h(t){var n=t[0],r=t[1],e=t[2],a=t[3];return n*n+r*r+e*e+a*a}function v(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=r*r+e*e+a*a+o*o;return i>0&&(i=1/Math.sqrt(i),t[0]=r*i,t[1]=e*i,t[2]=a*i,t[3]=o*i),t}n.sub=o,n.mul=i,n.div=u,n.dist=f,n.sqrDist=s,n.len=l,n.sqrLen=h,n.forEach=function(){var t=a();return function(n,r,e,a,o,i){var u=void 0,c=void 0;for(r||(r=4),e||(e=0),c=a?Math.min(a*r+e,n.length):n.length,u=e;u<c;u+=r)t[0]=n[u],t[1]=n[u+1],t[2]=n[u+2],t[3]=n[u+3],o(t,t,i),n[u]=t[0],n[u+1]=t[1],n[u+2]=t[2],n[u+3]=t[3];return n}}()},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.forEach=n.sqrLen=n.len=n.sqrDist=n.dist=n.div=n.mul=n.sub=void 0,n.create=a,n.clone=function(t){var n=new e.ARRAY_TYPE(3);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n},n.length=o,n.fromValues=i,n.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t},n.set=function(t,n,r,e){return t[0]=n,t[1]=r,t[2]=e,t},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t},n.subtract=u,n.multiply=c,n.divide=f,n.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t},n.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t},n.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t},n.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t},n.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t},n.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t},n.scaleAndAdd=function(t,n,r,e){return t[0]=n[0]+r[0]*e,t[1]=n[1]+r[1]*e,t[2]=n[2]+r[2]*e,t},n.distance=s,n.squaredDistance=l,n.squaredLength=h,n.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t},n.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t},n.normalize=v,n.dot=d,n.cross=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=r[0],u=r[1],c=r[2];return t[0]=a*c-o*u,t[1]=o*i-e*c,t[2]=e*u-a*i,t},n.lerp=function(t,n,r,e){var a=n[0],o=n[1],i=n[2];return t[0]=a+e*(r[0]-a),t[1]=o+e*(r[1]-o),t[2]=i+e*(r[2]-i),t},n.hermite=function(t,n,r,e,a,o){var i=o*o,u=i*(2*o-3)+1,c=i*(o-2)+o,f=i*(o-1),s=i*(3-2*o);return t[0]=n[0]*u+r[0]*c+e[0]*f+a[0]*s,t[1]=n[1]*u+r[1]*c+e[1]*f+a[1]*s,t[2]=n[2]*u+r[2]*c+e[2]*f+a[2]*s,t},n.bezier=function(t,n,r,e,a,o){var i=1-o,u=i*i,c=o*o,f=u*i,s=3*o*u,l=3*c*i,h=c*o;return t[0]=n[0]*f+r[0]*s+e[0]*l+a[0]*h,t[1]=n[1]*f+r[1]*s+e[1]*l+a[1]*h,t[2]=n[2]*f+r[2]*s+e[2]*l+a[2]*h,t},n.random=function(t,n){n=n||1;var r=2*e.RANDOM()*Math.PI,a=2*e.RANDOM()-1,o=Math.sqrt(1-a*a)*n;return t[0]=Math.cos(r)*o,t[1]=Math.sin(r)*o,t[2]=a*n,t},n.transformMat4=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=r[3]*e+r[7]*a+r[11]*o+r[15];return i=i||1,t[0]=(r[0]*e+r[4]*a+r[8]*o+r[12])/i,t[1]=(r[1]*e+r[5]*a+r[9]*o+r[13])/i,t[2]=(r[2]*e+r[6]*a+r[10]*o+r[14])/i,t},n.transformMat3=function(t,n,r){var e=n[0],a=n[1],o=n[2];return t[0]=e*r[0]+a*r[3]+o*r[6],t[1]=e*r[1]+a*r[4]+o*r[7],t[2]=e*r[2]+a*r[5]+o*r[8],t},n.transformQuat=function(t,n,r){var e=r[0],a=r[1],o=r[2],i=r[3],u=n[0],c=n[1],f=n[2],s=a*f-o*c,l=o*u-e*f,h=e*c-a*u,v=a*h-o*l,d=o*s-e*h,p=e*l-a*s,M=2*i;return s*=M,l*=M,h*=M,v*=2,d*=2,p*=2,t[0]=u+s+v,t[1]=c+l+d,t[2]=f+h+p,t},n.rotateX=function(t,n,r,e){var a=[],o=[];return a[0]=n[0]-r[0],a[1]=n[1]-r[1],a[2]=n[2]-r[2],o[0]=a[0],o[1]=a[1]*Math.cos(e)-a[2]*Math.sin(e),o[2]=a[1]*Math.sin(e)+a[2]*Math.cos(e),t[0]=o[0]+r[0],t[1]=o[1]+r[1],t[2]=o[2]+r[2],t},n.rotateY=function(t,n,r,e){var a=[],o=[];return a[0]=n[0]-r[0],a[1]=n[1]-r[1],a[2]=n[2]-r[2],o[0]=a[2]*Math.sin(e)+a[0]*Math.cos(e),o[1]=a[1],o[2]=a[2]*Math.cos(e)-a[0]*Math.sin(e),t[0]=o[0]+r[0],t[1]=o[1]+r[1],t[2]=o[2]+r[2],t},n.rotateZ=function(t,n,r,e){var a=[],o=[];return a[0]=n[0]-r[0],a[1]=n[1]-r[1],a[2]=n[2]-r[2],o[0]=a[0]*Math.cos(e)-a[1]*Math.sin(e),o[1]=a[0]*Math.sin(e)+a[1]*Math.cos(e),o[2]=a[2],t[0]=o[0]+r[0],t[1]=o[1]+r[1],t[2]=o[2]+r[2],t},n.angle=function(t,n){var r=i(t[0],t[1],t[2]),e=i(n[0],n[1],n[2]);v(r,r),v(e,e);var a=d(r,e);return a>1?0:a<-1?Math.PI:Math.acos(a)},n.str=function(t){return"vec3("+t[0]+", "+t[1]+", "+t[2]+")"},n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]},n.equals=function(t,n){var r=t[0],a=t[1],o=t[2],i=n[0],u=n[1],c=n[2];return Math.abs(r-i)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(a-u)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(u))&&Math.abs(o-c)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(c))};var e=function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}(r(1));function a(){var t=new e.ARRAY_TYPE(3);return t[0]=0,t[1]=0,t[2]=0,t}function o(t){var n=t[0],r=t[1],e=t[2];return Math.sqrt(n*n+r*r+e*e)}function i(t,n,r){var a=new e.ARRAY_TYPE(3);return a[0]=t,a[1]=n,a[2]=r,a}function u(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t}function c(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t}function f(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t}function s(t,n){var r=n[0]-t[0],e=n[1]-t[1],a=n[2]-t[2];return Math.sqrt(r*r+e*e+a*a)}function l(t,n){var r=n[0]-t[0],e=n[1]-t[1],a=n[2]-t[2];return r*r+e*e+a*a}function h(t){var n=t[0],r=t[1],e=t[2];return n*n+r*r+e*e}function v(t,n){var r=n[0],e=n[1],a=n[2],o=r*r+e*e+a*a;return o>0&&(o=1/Math.sqrt(o),t[0]=n[0]*o,t[1]=n[1]*o,t[2]=n[2]*o),t}function d(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}n.sub=u,n.mul=c,n.div=f,n.dist=s,n.sqrDist=l,n.len=o,n.sqrLen=h,n.forEach=function(){var t=a();return function(n,r,e,a,o,i){var u=void 0,c=void 0;for(r||(r=3),e||(e=0),c=a?Math.min(a*r+e,n.length):n.length,u=e;u<c;u+=r)t[0]=n[u],t[1]=n[u+1],t[2]=n[u+2],o(t,t,i),n[u]=t[0],n[u+1]=t[1],n[u+2]=t[2];return n}}()},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.setAxes=n.sqlerp=n.rotationTo=n.equals=n.exactEquals=n.normalize=n.sqrLen=n.squaredLength=n.len=n.length=n.lerp=n.dot=n.scale=n.mul=n.add=n.set=n.copy=n.fromValues=n.clone=void 0,n.create=c,n.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t},n.setAxisAngle=f,n.getAxisAngle=function(t,n){var r=2*Math.acos(n[3]),e=Math.sin(r/2);0!=e?(t[0]=n[0]/e,t[1]=n[1]/e,t[2]=n[2]/e):(t[0]=1,t[1]=0,t[2]=0);return r},n.multiply=s,n.rotateX=function(t,n,r){r*=.5;var e=n[0],a=n[1],o=n[2],i=n[3],u=Math.sin(r),c=Math.cos(r);return t[0]=e*c+i*u,t[1]=a*c+o*u,t[2]=o*c-a*u,t[3]=i*c-e*u,t},n.rotateY=function(t,n,r){r*=.5;var e=n[0],a=n[1],o=n[2],i=n[3],u=Math.sin(r),c=Math.cos(r);return t[0]=e*c-o*u,t[1]=a*c+i*u,t[2]=o*c+e*u,t[3]=i*c-a*u,t},n.rotateZ=function(t,n,r){r*=.5;var e=n[0],a=n[1],o=n[2],i=n[3],u=Math.sin(r),c=Math.cos(r);return t[0]=e*c+a*u,t[1]=a*c-e*u,t[2]=o*c+i*u,t[3]=i*c-o*u,t},n.calculateW=function(t,n){var r=n[0],e=n[1],a=n[2];return t[0]=r,t[1]=e,t[2]=a,t[3]=Math.sqrt(Math.abs(1-r*r-e*e-a*a)),t},n.slerp=l,n.invert=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=r*r+e*e+a*a+o*o,u=i?1/i:0;return t[0]=-r*u,t[1]=-e*u,t[2]=-a*u,t[3]=o*u,t},n.conjugate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=n[3],t},n.fromMat3=h,n.fromEuler=function(t,n,r,e){var a=.5*Math.PI/180;n*=a,r*=a,e*=a;var o=Math.sin(n),i=Math.cos(n),u=Math.sin(r),c=Math.cos(r),f=Math.sin(e),s=Math.cos(e);return t[0]=o*c*s-i*u*f,t[1]=i*u*s+o*c*f,t[2]=i*c*f-o*u*s,t[3]=i*c*s+o*u*f,t},n.str=function(t){return"quat("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+")"};var e=u(r(1)),a=u(r(12)),o=u(r(9)),i=u(r(8));function u(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}function c(){var t=new e.ARRAY_TYPE(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function f(t,n,r){r*=.5;var e=Math.sin(r);return t[0]=e*n[0],t[1]=e*n[1],t[2]=e*n[2],t[3]=Math.cos(r),t}function s(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=r[0],c=r[1],f=r[2],s=r[3];return t[0]=e*s+i*u+a*f-o*c,t[1]=a*s+i*c+o*u-e*f,t[2]=o*s+i*f+e*c-a*u,t[3]=i*s-e*u-a*c-o*f,t}function l(t,n,r,e){var a=n[0],o=n[1],i=n[2],u=n[3],c=r[0],f=r[1],s=r[2],l=r[3],h=void 0,v=void 0,d=void 0,p=void 0,M=void 0;return(v=a*c+o*f+i*s+u*l)<0&&(v=-v,c=-c,f=-f,s=-s,l=-l),1-v>1e-6?(h=Math.acos(v),d=Math.sin(h),p=Math.sin((1-e)*h)/d,M=Math.sin(e*h)/d):(p=1-e,M=e),t[0]=p*a+M*c,t[1]=p*o+M*f,t[2]=p*i+M*s,t[3]=p*u+M*l,t}function h(t,n){var r=n[0]+n[4]+n[8],e=void 0;if(r>0)e=Math.sqrt(r+1),t[3]=.5*e,e=.5/e,t[0]=(n[5]-n[7])*e,t[1]=(n[6]-n[2])*e,t[2]=(n[1]-n[3])*e;else{var a=0;n[4]>n[0]&&(a=1),n[8]>n[3*a+a]&&(a=2);var o=(a+1)%3,i=(a+2)%3;e=Math.sqrt(n[3*a+a]-n[3*o+o]-n[3*i+i]+1),t[a]=.5*e,e=.5/e,t[3]=(n[3*o+i]-n[3*i+o])*e,t[o]=(n[3*o+a]+n[3*a+o])*e,t[i]=(n[3*i+a]+n[3*a+i])*e}return t}n.clone=i.clone,n.fromValues=i.fromValues,n.copy=i.copy,n.set=i.set,n.add=i.add,n.mul=s,n.scale=i.scale,n.dot=i.dot,n.lerp=i.lerp;var v=n.length=i.length,d=(n.len=v,n.squaredLength=i.squaredLength),p=(n.sqrLen=d,n.normalize=i.normalize);n.exactEquals=i.exactEquals,n.equals=i.equals,n.rotationTo=function(){var t=o.create(),n=o.fromValues(1,0,0),r=o.fromValues(0,1,0);return function(e,a,i){var u=o.dot(a,i);return u<-.999999?(o.cross(t,n,a),o.len(t)<1e-6&&o.cross(t,r,a),o.normalize(t,t),f(e,t,Math.PI),e):u>.999999?(e[0]=0,e[1]=0,e[2]=0,e[3]=1,e):(o.cross(t,a,i),e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=1+u,p(e,e))}}(),n.sqlerp=function(){var t=c(),n=c();return function(r,e,a,o,i,u){return l(t,e,i,u),l(n,a,o,u),l(r,t,n,2*u*(1-u)),r}}(),n.setAxes=function(){var t=a.create();return function(n,r,e,a){return t[0]=e[0],t[3]=e[1],t[6]=e[2],t[1]=a[0],t[4]=a[1],t[7]=a[2],t[2]=-r[0],t[5]=-r[1],t[8]=-r[2],p(n,h(n,t))}}()},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.sub=n.mul=void 0,n.create=function(){var t=new e.ARRAY_TYPE(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.clone=function(t){var n=new e.ARRAY_TYPE(16);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n[6]=t[6],n[7]=t[7],n[8]=t[8],n[9]=t[9],n[10]=t[10],n[11]=t[11],n[12]=t[12],n[13]=t[13],n[14]=t[14],n[15]=t[15],n},n.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],t},n.fromValues=function(t,n,r,a,o,i,u,c,f,s,l,h,v,d,p,M){var b=new e.ARRAY_TYPE(16);return b[0]=t,b[1]=n,b[2]=r,b[3]=a,b[4]=o,b[5]=i,b[6]=u,b[7]=c,b[8]=f,b[9]=s,b[10]=l,b[11]=h,b[12]=v,b[13]=d,b[14]=p,b[15]=M,b},n.set=function(t,n,r,e,a,o,i,u,c,f,s,l,h,v,d,p,M){return t[0]=n,t[1]=r,t[2]=e,t[3]=a,t[4]=o,t[5]=i,t[6]=u,t[7]=c,t[8]=f,t[9]=s,t[10]=l,t[11]=h,t[12]=v,t[13]=d,t[14]=p,t[15]=M,t},n.identity=a,n.transpose=function(t,n){if(t===n){var r=n[1],e=n[2],a=n[3],o=n[6],i=n[7],u=n[11];t[1]=n[4],t[2]=n[8],t[3]=n[12],t[4]=r,t[6]=n[9],t[7]=n[13],t[8]=e,t[9]=o,t[11]=n[14],t[12]=a,t[13]=i,t[14]=u}else t[0]=n[0],t[1]=n[4],t[2]=n[8],t[3]=n[12],t[4]=n[1],t[5]=n[5],t[6]=n[9],t[7]=n[13],t[8]=n[2],t[9]=n[6],t[10]=n[10],t[11]=n[14],t[12]=n[3],t[13]=n[7],t[14]=n[11],t[15]=n[15];return t},n.invert=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=n[4],u=n[5],c=n[6],f=n[7],s=n[8],l=n[9],h=n[10],v=n[11],d=n[12],p=n[13],M=n[14],b=n[15],m=r*u-e*i,y=r*c-a*i,g=r*f-o*i,x=e*c-a*u,w=e*f-o*u,A=a*f-o*c,O=s*p-l*d,E=s*M-h*d,P=s*b-v*d,I=l*M-h*p,S=l*b-v*p,_=h*b-v*M,T=m*_-y*S+g*I+x*P-w*E+A*O;if(!T)return null;return T=1/T,t[0]=(u*_-c*S+f*I)*T,t[1]=(a*S-e*_-o*I)*T,t[2]=(p*A-M*w+b*x)*T,t[3]=(h*w-l*A-v*x)*T,t[4]=(c*P-i*_-f*E)*T,t[5]=(r*_-a*P+o*E)*T,t[6]=(M*g-d*A-b*y)*T,t[7]=(s*A-h*g+v*y)*T,t[8]=(i*S-u*P+f*O)*T,t[9]=(e*P-r*S-o*O)*T,t[10]=(d*w-p*g+b*m)*T,t[11]=(l*g-s*w-v*m)*T,t[12]=(u*E-i*I-c*O)*T,t[13]=(r*I-e*E+a*O)*T,t[14]=(p*y-d*x-M*m)*T,t[15]=(s*x-l*y+h*m)*T,t},n.adjoint=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=n[4],u=n[5],c=n[6],f=n[7],s=n[8],l=n[9],h=n[10],v=n[11],d=n[12],p=n[13],M=n[14],b=n[15];return t[0]=u*(h*b-v*M)-l*(c*b-f*M)+p*(c*v-f*h),t[1]=-(e*(h*b-v*M)-l*(a*b-o*M)+p*(a*v-o*h)),t[2]=e*(c*b-f*M)-u*(a*b-o*M)+p*(a*f-o*c),t[3]=-(e*(c*v-f*h)-u*(a*v-o*h)+l*(a*f-o*c)),t[4]=-(i*(h*b-v*M)-s*(c*b-f*M)+d*(c*v-f*h)),t[5]=r*(h*b-v*M)-s*(a*b-o*M)+d*(a*v-o*h),t[6]=-(r*(c*b-f*M)-i*(a*b-o*M)+d*(a*f-o*c)),t[7]=r*(c*v-f*h)-i*(a*v-o*h)+s*(a*f-o*c),t[8]=i*(l*b-v*p)-s*(u*b-f*p)+d*(u*v-f*l),t[9]=-(r*(l*b-v*p)-s*(e*b-o*p)+d*(e*v-o*l)),t[10]=r*(u*b-f*p)-i*(e*b-o*p)+d*(e*f-o*u),t[11]=-(r*(u*v-f*l)-i*(e*v-o*l)+s*(e*f-o*u)),t[12]=-(i*(l*M-h*p)-s*(u*M-c*p)+d*(u*h-c*l)),t[13]=r*(l*M-h*p)-s*(e*M-a*p)+d*(e*h-a*l),t[14]=-(r*(u*M-c*p)-i*(e*M-a*p)+d*(e*c-a*u)),t[15]=r*(u*h-c*l)-i*(e*h-a*l)+s*(e*c-a*u),t},n.determinant=function(t){var n=t[0],r=t[1],e=t[2],a=t[3],o=t[4],i=t[5],u=t[6],c=t[7],f=t[8],s=t[9],l=t[10],h=t[11],v=t[12],d=t[13],p=t[14],M=t[15];return(n*i-r*o)*(l*M-h*p)-(n*u-e*o)*(s*M-h*d)+(n*c-a*o)*(s*p-l*d)+(r*u-e*i)*(f*M-h*v)-(r*c-a*i)*(f*p-l*v)+(e*c-a*u)*(f*d-s*v)},n.multiply=o,n.translate=function(t,n,r){var e=r[0],a=r[1],o=r[2],i=void 0,u=void 0,c=void 0,f=void 0,s=void 0,l=void 0,h=void 0,v=void 0,d=void 0,p=void 0,M=void 0,b=void 0;n===t?(t[12]=n[0]*e+n[4]*a+n[8]*o+n[12],t[13]=n[1]*e+n[5]*a+n[9]*o+n[13],t[14]=n[2]*e+n[6]*a+n[10]*o+n[14],t[15]=n[3]*e+n[7]*a+n[11]*o+n[15]):(i=n[0],u=n[1],c=n[2],f=n[3],s=n[4],l=n[5],h=n[6],v=n[7],d=n[8],p=n[9],M=n[10],b=n[11],t[0]=i,t[1]=u,t[2]=c,t[3]=f,t[4]=s,t[5]=l,t[6]=h,t[7]=v,t[8]=d,t[9]=p,t[10]=M,t[11]=b,t[12]=i*e+s*a+d*o+n[12],t[13]=u*e+l*a+p*o+n[13],t[14]=c*e+h*a+M*o+n[14],t[15]=f*e+v*a+b*o+n[15]);return t},n.scale=function(t,n,r){var e=r[0],a=r[1],o=r[2];return t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t[3]=n[3]*e,t[4]=n[4]*a,t[5]=n[5]*a,t[6]=n[6]*a,t[7]=n[7]*a,t[8]=n[8]*o,t[9]=n[9]*o,t[10]=n[10]*o,t[11]=n[11]*o,t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],t},n.rotate=function(t,n,r,a){var o=a[0],i=a[1],u=a[2],c=Math.sqrt(o*o+i*i+u*u),f=void 0,s=void 0,l=void 0,h=void 0,v=void 0,d=void 0,p=void 0,M=void 0,b=void 0,m=void 0,y=void 0,g=void 0,x=void 0,w=void 0,A=void 0,O=void 0,E=void 0,P=void 0,I=void 0,S=void 0,_=void 0,T=void 0,L=void 0,N=void 0;if(Math.abs(c)<e.EPSILON)return null;o*=c=1/c,i*=c,u*=c,f=Math.sin(r),s=Math.cos(r),l=1-s,h=n[0],v=n[1],d=n[2],p=n[3],M=n[4],b=n[5],m=n[6],y=n[7],g=n[8],x=n[9],w=n[10],A=n[11],O=o*o*l+s,E=i*o*l+u*f,P=u*o*l-i*f,I=o*i*l-u*f,S=i*i*l+s,_=u*i*l+o*f,T=o*u*l+i*f,L=i*u*l-o*f,N=u*u*l+s,t[0]=h*O+M*E+g*P,t[1]=v*O+b*E+x*P,t[2]=d*O+m*E+w*P,t[3]=p*O+y*E+A*P,t[4]=h*I+M*S+g*_,t[5]=v*I+b*S+x*_,t[6]=d*I+m*S+w*_,t[7]=p*I+y*S+A*_,t[8]=h*T+M*L+g*N,t[9]=v*T+b*L+x*N,t[10]=d*T+m*L+w*N,t[11]=p*T+y*L+A*N,n!==t&&(t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]);return t},n.rotateX=function(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[4],i=n[5],u=n[6],c=n[7],f=n[8],s=n[9],l=n[10],h=n[11];n!==t&&(t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]);return t[4]=o*a+f*e,t[5]=i*a+s*e,t[6]=u*a+l*e,t[7]=c*a+h*e,t[8]=f*a-o*e,t[9]=s*a-i*e,t[10]=l*a-u*e,t[11]=h*a-c*e,t},n.rotateY=function(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[0],i=n[1],u=n[2],c=n[3],f=n[8],s=n[9],l=n[10],h=n[11];n!==t&&(t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]);return t[0]=o*a-f*e,t[1]=i*a-s*e,t[2]=u*a-l*e,t[3]=c*a-h*e,t[8]=o*e+f*a,t[9]=i*e+s*a,t[10]=u*e+l*a,t[11]=c*e+h*a,t},n.rotateZ=function(t,n,r){var e=Math.sin(r),a=Math.cos(r),o=n[0],i=n[1],u=n[2],c=n[3],f=n[4],s=n[5],l=n[6],h=n[7];n!==t&&(t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15]);return t[0]=o*a+f*e,t[1]=i*a+s*e,t[2]=u*a+l*e,t[3]=c*a+h*e,t[4]=f*a-o*e,t[5]=s*a-i*e,t[6]=l*a-u*e,t[7]=h*a-c*e,t},n.fromTranslation=function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t},n.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=n[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=n[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotation=function(t,n,r){var a=r[0],o=r[1],i=r[2],u=Math.sqrt(a*a+o*o+i*i),c=void 0,f=void 0,s=void 0;if(Math.abs(u)<e.EPSILON)return null;return a*=u=1/u,o*=u,i*=u,c=Math.sin(n),f=Math.cos(n),s=1-f,t[0]=a*a*s+f,t[1]=o*a*s+i*c,t[2]=i*a*s-o*c,t[3]=0,t[4]=a*o*s-i*c,t[5]=o*o*s+f,t[6]=i*o*s+a*c,t[7]=0,t[8]=a*i*s+o*c,t[9]=o*i*s-a*c,t[10]=i*i*s+f,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromXRotation=function(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e,t[6]=r,t[7]=0,t[8]=0,t[9]=-r,t[10]=e,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromYRotation=function(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=0,t[2]=-r,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=r,t[9]=0,t[10]=e,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromZRotation=function(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=0,t[3]=0,t[4]=-r,t[5]=e,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotationTranslation=i,n.fromQuat2=function(t,n){var r=new e.ARRAY_TYPE(3),a=-n[0],o=-n[1],u=-n[2],c=n[3],f=n[4],s=n[5],l=n[6],h=n[7],v=a*a+o*o+u*u+c*c;v>0?(r[0]=2*(f*c+h*a+s*u-l*o)/v,r[1]=2*(s*c+h*o+l*a-f*u)/v,r[2]=2*(l*c+h*u+f*o-s*a)/v):(r[0]=2*(f*c+h*a+s*u-l*o),r[1]=2*(s*c+h*o+l*a-f*u),r[2]=2*(l*c+h*u+f*o-s*a));return i(t,n,r),t},n.getTranslation=function(t,n){return t[0]=n[12],t[1]=n[13],t[2]=n[14],t},n.getScaling=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[4],i=n[5],u=n[6],c=n[8],f=n[9],s=n[10];return t[0]=Math.sqrt(r*r+e*e+a*a),t[1]=Math.sqrt(o*o+i*i+u*u),t[2]=Math.sqrt(c*c+f*f+s*s),t},n.getRotation=function(t,n){var r=n[0]+n[5]+n[10],e=0;r>0?(e=2*Math.sqrt(r+1),t[3]=.25*e,t[0]=(n[6]-n[9])/e,t[1]=(n[8]-n[2])/e,t[2]=(n[1]-n[4])/e):n[0]>n[5]&&n[0]>n[10]?(e=2*Math.sqrt(1+n[0]-n[5]-n[10]),t[3]=(n[6]-n[9])/e,t[0]=.25*e,t[1]=(n[1]+n[4])/e,t[2]=(n[8]+n[2])/e):n[5]>n[10]?(e=2*Math.sqrt(1+n[5]-n[0]-n[10]),t[3]=(n[8]-n[2])/e,t[0]=(n[1]+n[4])/e,t[1]=.25*e,t[2]=(n[6]+n[9])/e):(e=2*Math.sqrt(1+n[10]-n[0]-n[5]),t[3]=(n[1]-n[4])/e,t[0]=(n[8]+n[2])/e,t[1]=(n[6]+n[9])/e,t[2]=.25*e);return t},n.fromRotationTranslationScale=function(t,n,r,e){var a=n[0],o=n[1],i=n[2],u=n[3],c=a+a,f=o+o,s=i+i,l=a*c,h=a*f,v=a*s,d=o*f,p=o*s,M=i*s,b=u*c,m=u*f,y=u*s,g=e[0],x=e[1],w=e[2];return t[0]=(1-(d+M))*g,t[1]=(h+y)*g,t[2]=(v-m)*g,t[3]=0,t[4]=(h-y)*x,t[5]=(1-(l+M))*x,t[6]=(p+b)*x,t[7]=0,t[8]=(v+m)*w,t[9]=(p-b)*w,t[10]=(1-(l+d))*w,t[11]=0,t[12]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t},n.fromRotationTranslationScaleOrigin=function(t,n,r,e,a){var o=n[0],i=n[1],u=n[2],c=n[3],f=o+o,s=i+i,l=u+u,h=o*f,v=o*s,d=o*l,p=i*s,M=i*l,b=u*l,m=c*f,y=c*s,g=c*l,x=e[0],w=e[1],A=e[2],O=a[0],E=a[1],P=a[2],I=(1-(p+b))*x,S=(v+g)*x,_=(d-y)*x,T=(v-g)*w,L=(1-(h+b))*w,N=(M+m)*w,j=(d+y)*A,q=(M-m)*A,k=(1-(h+p))*A;return t[0]=I,t[1]=S,t[2]=_,t[3]=0,t[4]=T,t[5]=L,t[6]=N,t[7]=0,t[8]=j,t[9]=q,t[10]=k,t[11]=0,t[12]=r[0]+O-(I*O+T*E+j*P),t[13]=r[1]+E-(S*O+L*E+q*P),t[14]=r[2]+P-(_*O+N*E+k*P),t[15]=1,t},n.fromQuat=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=r+r,u=e+e,c=a+a,f=r*i,s=e*i,l=e*u,h=a*i,v=a*u,d=a*c,p=o*i,M=o*u,b=o*c;return t[0]=1-l-d,t[1]=s+b,t[2]=h-M,t[3]=0,t[4]=s-b,t[5]=1-f-d,t[6]=v+p,t[7]=0,t[8]=h+M,t[9]=v-p,t[10]=1-f-l,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.frustum=function(t,n,r,e,a,o,i){var u=1/(r-n),c=1/(a-e),f=1/(o-i);return t[0]=2*o*u,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*o*c,t[6]=0,t[7]=0,t[8]=(r+n)*u,t[9]=(a+e)*c,t[10]=(i+o)*f,t[11]=-1,t[12]=0,t[13]=0,t[14]=i*o*2*f,t[15]=0,t},n.perspective=function(t,n,r,e,a){var o=1/Math.tan(n/2),i=1/(e-a);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(a+e)*i,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*a*e*i,t[15]=0,t},n.perspectiveFromFieldOfView=function(t,n,r,e){var a=Math.tan(n.upDegrees*Math.PI/180),o=Math.tan(n.downDegrees*Math.PI/180),i=Math.tan(n.leftDegrees*Math.PI/180),u=Math.tan(n.rightDegrees*Math.PI/180),c=2/(i+u),f=2/(a+o);return t[0]=c,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=f,t[6]=0,t[7]=0,t[8]=-(i-u)*c*.5,t[9]=(a-o)*f*.5,t[10]=e/(r-e),t[11]=-1,t[12]=0,t[13]=0,t[14]=e*r/(r-e),t[15]=0,t},n.ortho=function(t,n,r,e,a,o,i){var u=1/(n-r),c=1/(e-a),f=1/(o-i);return t[0]=-2*u,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*c,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*f,t[11]=0,t[12]=(n+r)*u,t[13]=(a+e)*c,t[14]=(i+o)*f,t[15]=1,t},n.lookAt=function(t,n,r,o){var i=void 0,u=void 0,c=void 0,f=void 0,s=void 0,l=void 0,h=void 0,v=void 0,d=void 0,p=void 0,M=n[0],b=n[1],m=n[2],y=o[0],g=o[1],x=o[2],w=r[0],A=r[1],O=r[2];if(Math.abs(M-w)<e.EPSILON&&Math.abs(b-A)<e.EPSILON&&Math.abs(m-O)<e.EPSILON)return a(t);h=M-w,v=b-A,d=m-O,p=1/Math.sqrt(h*h+v*v+d*d),i=g*(d*=p)-x*(v*=p),u=x*(h*=p)-y*d,c=y*v-g*h,(p=Math.sqrt(i*i+u*u+c*c))?(i*=p=1/p,u*=p,c*=p):(i=0,u=0,c=0);f=v*c-d*u,s=d*i-h*c,l=h*u-v*i,(p=Math.sqrt(f*f+s*s+l*l))?(f*=p=1/p,s*=p,l*=p):(f=0,s=0,l=0);return t[0]=i,t[1]=f,t[2]=h,t[3]=0,t[4]=u,t[5]=s,t[6]=v,t[7]=0,t[8]=c,t[9]=l,t[10]=d,t[11]=0,t[12]=-(i*M+u*b+c*m),t[13]=-(f*M+s*b+l*m),t[14]=-(h*M+v*b+d*m),t[15]=1,t},n.targetTo=function(t,n,r,e){var a=n[0],o=n[1],i=n[2],u=e[0],c=e[1],f=e[2],s=a-r[0],l=o-r[1],h=i-r[2],v=s*s+l*l+h*h;v>0&&(v=1/Math.sqrt(v),s*=v,l*=v,h*=v);var d=c*h-f*l,p=f*s-u*h,M=u*l-c*s;(v=d*d+p*p+M*M)>0&&(v=1/Math.sqrt(v),d*=v,p*=v,M*=v);return t[0]=d,t[1]=p,t[2]=M,t[3]=0,t[4]=l*M-h*p,t[5]=h*d-s*M,t[6]=s*p-l*d,t[7]=0,t[8]=s,t[9]=l,t[10]=h,t[11]=0,t[12]=a,t[13]=o,t[14]=i,t[15]=1,t},n.str=function(t){return"mat4("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+", "+t[8]+", "+t[9]+", "+t[10]+", "+t[11]+", "+t[12]+", "+t[13]+", "+t[14]+", "+t[15]+")"},n.frob=function(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2)+Math.pow(t[2],2)+Math.pow(t[3],2)+Math.pow(t[4],2)+Math.pow(t[5],2)+Math.pow(t[6],2)+Math.pow(t[7],2)+Math.pow(t[8],2)+Math.pow(t[9],2)+Math.pow(t[10],2)+Math.pow(t[11],2)+Math.pow(t[12],2)+Math.pow(t[13],2)+Math.pow(t[14],2)+Math.pow(t[15],2))},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t[4]=n[4]+r[4],t[5]=n[5]+r[5],t[6]=n[6]+r[6],t[7]=n[7]+r[7],t[8]=n[8]+r[8],t[9]=n[9]+r[9],t[10]=n[10]+r[10],t[11]=n[11]+r[11],t[12]=n[12]+r[12],t[13]=n[13]+r[13],t[14]=n[14]+r[14],t[15]=n[15]+r[15],t},n.subtract=u,n.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t[4]=n[4]*r,t[5]=n[5]*r,t[6]=n[6]*r,t[7]=n[7]*r,t[8]=n[8]*r,t[9]=n[9]*r,t[10]=n[10]*r,t[11]=n[11]*r,t[12]=n[12]*r,t[13]=n[13]*r,t[14]=n[14]*r,t[15]=n[15]*r,t},n.multiplyScalarAndAdd=function(t,n,r,e){return t[0]=n[0]+r[0]*e,t[1]=n[1]+r[1]*e,t[2]=n[2]+r[2]*e,t[3]=n[3]+r[3]*e,t[4]=n[4]+r[4]*e,t[5]=n[5]+r[5]*e,t[6]=n[6]+r[6]*e,t[7]=n[7]+r[7]*e,t[8]=n[8]+r[8]*e,t[9]=n[9]+r[9]*e,t[10]=n[10]+r[10]*e,t[11]=n[11]+r[11]*e,t[12]=n[12]+r[12]*e,t[13]=n[13]+r[13]*e,t[14]=n[14]+r[14]*e,t[15]=n[15]+r[15]*e,t},n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]&&t[6]===n[6]&&t[7]===n[7]&&t[8]===n[8]&&t[9]===n[9]&&t[10]===n[10]&&t[11]===n[11]&&t[12]===n[12]&&t[13]===n[13]&&t[14]===n[14]&&t[15]===n[15]},n.equals=function(t,n){var r=t[0],a=t[1],o=t[2],i=t[3],u=t[4],c=t[5],f=t[6],s=t[7],l=t[8],h=t[9],v=t[10],d=t[11],p=t[12],M=t[13],b=t[14],m=t[15],y=n[0],g=n[1],x=n[2],w=n[3],A=n[4],O=n[5],E=n[6],P=n[7],I=n[8],S=n[9],_=n[10],T=n[11],L=n[12],N=n[13],j=n[14],q=n[15];return Math.abs(r-y)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(y))&&Math.abs(a-g)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(g))&&Math.abs(o-x)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(x))&&Math.abs(i-w)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(w))&&Math.abs(u-A)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(A))&&Math.abs(c-O)<=e.EPSILON*Math.max(1,Math.abs(c),Math.abs(O))&&Math.abs(f-E)<=e.EPSILON*Math.max(1,Math.abs(f),Math.abs(E))&&Math.abs(s-P)<=e.EPSILON*Math.max(1,Math.abs(s),Math.abs(P))&&Math.abs(l-I)<=e.EPSILON*Math.max(1,Math.abs(l),Math.abs(I))&&Math.abs(h-S)<=e.EPSILON*Math.max(1,Math.abs(h),Math.abs(S))&&Math.abs(v-_)<=e.EPSILON*Math.max(1,Math.abs(v),Math.abs(_))&&Math.abs(d-T)<=e.EPSILON*Math.max(1,Math.abs(d),Math.abs(T))&&Math.abs(p-L)<=e.EPSILON*Math.max(1,Math.abs(p),Math.abs(L))&&Math.abs(M-N)<=e.EPSILON*Math.max(1,Math.abs(M),Math.abs(N))&&Math.abs(b-j)<=e.EPSILON*Math.max(1,Math.abs(b),Math.abs(j))&&Math.abs(m-q)<=e.EPSILON*Math.max(1,Math.abs(m),Math.abs(q))};var e=function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}(r(1));function a(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function o(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=n[6],s=n[7],l=n[8],h=n[9],v=n[10],d=n[11],p=n[12],M=n[13],b=n[14],m=n[15],y=r[0],g=r[1],x=r[2],w=r[3];return t[0]=y*e+g*u+x*l+w*p,t[1]=y*a+g*c+x*h+w*M,t[2]=y*o+g*f+x*v+w*b,t[3]=y*i+g*s+x*d+w*m,y=r[4],g=r[5],x=r[6],w=r[7],t[4]=y*e+g*u+x*l+w*p,t[5]=y*a+g*c+x*h+w*M,t[6]=y*o+g*f+x*v+w*b,t[7]=y*i+g*s+x*d+w*m,y=r[8],g=r[9],x=r[10],w=r[11],t[8]=y*e+g*u+x*l+w*p,t[9]=y*a+g*c+x*h+w*M,t[10]=y*o+g*f+x*v+w*b,t[11]=y*i+g*s+x*d+w*m,y=r[12],g=r[13],x=r[14],w=r[15],t[12]=y*e+g*u+x*l+w*p,t[13]=y*a+g*c+x*h+w*M,t[14]=y*o+g*f+x*v+w*b,t[15]=y*i+g*s+x*d+w*m,t}function i(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=e+e,c=a+a,f=o+o,s=e*u,l=e*c,h=e*f,v=a*c,d=a*f,p=o*f,M=i*u,b=i*c,m=i*f;return t[0]=1-(v+p),t[1]=l+m,t[2]=h-b,t[3]=0,t[4]=l-m,t[5]=1-(s+p),t[6]=d+M,t[7]=0,t[8]=h+b,t[9]=d-M,t[10]=1-(s+v),t[11]=0,t[12]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t}function u(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t[4]=n[4]-r[4],t[5]=n[5]-r[5],t[6]=n[6]-r[6],t[7]=n[7]-r[7],t[8]=n[8]-r[8],t[9]=n[9]-r[9],t[10]=n[10]-r[10],t[11]=n[11]-r[11],t[12]=n[12]-r[12],t[13]=n[13]-r[13],t[14]=n[14]-r[14],t[15]=n[15]-r[15],t}n.mul=o,n.sub=u},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.sub=n.mul=void 0,n.create=function(){var t=new e.ARRAY_TYPE(9);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromMat4=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[4],t[4]=n[5],t[5]=n[6],t[6]=n[8],t[7]=n[9],t[8]=n[10],t},n.clone=function(t){var n=new e.ARRAY_TYPE(9);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n[6]=t[6],n[7]=t[7],n[8]=t[8],n},n.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t},n.fromValues=function(t,n,r,a,o,i,u,c,f){var s=new e.ARRAY_TYPE(9);return s[0]=t,s[1]=n,s[2]=r,s[3]=a,s[4]=o,s[5]=i,s[6]=u,s[7]=c,s[8]=f,s},n.set=function(t,n,r,e,a,o,i,u,c,f){return t[0]=n,t[1]=r,t[2]=e,t[3]=a,t[4]=o,t[5]=i,t[6]=u,t[7]=c,t[8]=f,t},n.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.transpose=function(t,n){if(t===n){var r=n[1],e=n[2],a=n[5];t[1]=n[3],t[2]=n[6],t[3]=r,t[5]=n[7],t[6]=e,t[7]=a}else t[0]=n[0],t[1]=n[3],t[2]=n[6],t[3]=n[1],t[4]=n[4],t[5]=n[7],t[6]=n[2],t[7]=n[5],t[8]=n[8];return t},n.invert=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=n[4],u=n[5],c=n[6],f=n[7],s=n[8],l=s*i-u*f,h=-s*o+u*c,v=f*o-i*c,d=r*l+e*h+a*v;if(!d)return null;return d=1/d,t[0]=l*d,t[1]=(-s*e+a*f)*d,t[2]=(u*e-a*i)*d,t[3]=h*d,t[4]=(s*r-a*c)*d,t[5]=(-u*r+a*o)*d,t[6]=v*d,t[7]=(-f*r+e*c)*d,t[8]=(i*r-e*o)*d,t},n.adjoint=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=n[4],u=n[5],c=n[6],f=n[7],s=n[8];return t[0]=i*s-u*f,t[1]=a*f-e*s,t[2]=e*u-a*i,t[3]=u*c-o*s,t[4]=r*s-a*c,t[5]=a*o-r*u,t[6]=o*f-i*c,t[7]=e*c-r*f,t[8]=r*i-e*o,t},n.determinant=function(t){var n=t[0],r=t[1],e=t[2],a=t[3],o=t[4],i=t[5],u=t[6],c=t[7],f=t[8];return n*(f*o-i*c)+r*(-f*a+i*u)+e*(c*a-o*u)},n.multiply=a,n.translate=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=n[6],s=n[7],l=n[8],h=r[0],v=r[1];return t[0]=e,t[1]=a,t[2]=o,t[3]=i,t[4]=u,t[5]=c,t[6]=h*e+v*i+f,t[7]=h*a+v*u+s,t[8]=h*o+v*c+l,t},n.rotate=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=n[6],s=n[7],l=n[8],h=Math.sin(r),v=Math.cos(r);return t[0]=v*e+h*i,t[1]=v*a+h*u,t[2]=v*o+h*c,t[3]=v*i-h*e,t[4]=v*u-h*a,t[5]=v*c-h*o,t[6]=f,t[7]=s,t[8]=l,t},n.scale=function(t,n,r){var e=r[0],a=r[1];return t[0]=e*n[0],t[1]=e*n[1],t[2]=e*n[2],t[3]=a*n[3],t[4]=a*n[4],t[5]=a*n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t},n.fromTranslation=function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=n[0],t[7]=n[1],t[8]=1,t},n.fromRotation=function(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=0,t[3]=-r,t[4]=e,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=0,t[4]=n[1],t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromMat2d=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=0,t[3]=n[2],t[4]=n[3],t[5]=0,t[6]=n[4],t[7]=n[5],t[8]=1,t},n.fromQuat=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=r+r,u=e+e,c=a+a,f=r*i,s=e*i,l=e*u,h=a*i,v=a*u,d=a*c,p=o*i,M=o*u,b=o*c;return t[0]=1-l-d,t[3]=s-b,t[6]=h+M,t[1]=s+b,t[4]=1-f-d,t[7]=v-p,t[2]=h-M,t[5]=v+p,t[8]=1-f-l,t},n.normalFromMat4=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=n[4],u=n[5],c=n[6],f=n[7],s=n[8],l=n[9],h=n[10],v=n[11],d=n[12],p=n[13],M=n[14],b=n[15],m=r*u-e*i,y=r*c-a*i,g=r*f-o*i,x=e*c-a*u,w=e*f-o*u,A=a*f-o*c,O=s*p-l*d,E=s*M-h*d,P=s*b-v*d,I=l*M-h*p,S=l*b-v*p,_=h*b-v*M,T=m*_-y*S+g*I+x*P-w*E+A*O;if(!T)return null;return T=1/T,t[0]=(u*_-c*S+f*I)*T,t[1]=(c*P-i*_-f*E)*T,t[2]=(i*S-u*P+f*O)*T,t[3]=(a*S-e*_-o*I)*T,t[4]=(r*_-a*P+o*E)*T,t[5]=(e*P-r*S-o*O)*T,t[6]=(p*A-M*w+b*x)*T,t[7]=(M*g-d*A-b*y)*T,t[8]=(d*w-p*g+b*m)*T,t},n.projection=function(t,n,r){return t[0]=2/n,t[1]=0,t[2]=0,t[3]=0,t[4]=-2/r,t[5]=0,t[6]=-1,t[7]=1,t[8]=1,t},n.str=function(t){return"mat3("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+", "+t[8]+")"},n.frob=function(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2)+Math.pow(t[2],2)+Math.pow(t[3],2)+Math.pow(t[4],2)+Math.pow(t[5],2)+Math.pow(t[6],2)+Math.pow(t[7],2)+Math.pow(t[8],2))},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t[4]=n[4]+r[4],t[5]=n[5]+r[5],t[6]=n[6]+r[6],t[7]=n[7]+r[7],t[8]=n[8]+r[8],t},n.subtract=o,n.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t[4]=n[4]*r,t[5]=n[5]*r,t[6]=n[6]*r,t[7]=n[7]*r,t[8]=n[8]*r,t},n.multiplyScalarAndAdd=function(t,n,r,e){return t[0]=n[0]+r[0]*e,t[1]=n[1]+r[1]*e,t[2]=n[2]+r[2]*e,t[3]=n[3]+r[3]*e,t[4]=n[4]+r[4]*e,t[5]=n[5]+r[5]*e,t[6]=n[6]+r[6]*e,t[7]=n[7]+r[7]*e,t[8]=n[8]+r[8]*e,t},n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]&&t[6]===n[6]&&t[7]===n[7]&&t[8]===n[8]},n.equals=function(t,n){var r=t[0],a=t[1],o=t[2],i=t[3],u=t[4],c=t[5],f=t[6],s=t[7],l=t[8],h=n[0],v=n[1],d=n[2],p=n[3],M=n[4],b=n[5],m=n[6],y=n[7],g=n[8];return Math.abs(r-h)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(h))&&Math.abs(a-v)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(v))&&Math.abs(o-d)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(d))&&Math.abs(i-p)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(p))&&Math.abs(u-M)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(M))&&Math.abs(c-b)<=e.EPSILON*Math.max(1,Math.abs(c),Math.abs(b))&&Math.abs(f-m)<=e.EPSILON*Math.max(1,Math.abs(f),Math.abs(m))&&Math.abs(s-y)<=e.EPSILON*Math.max(1,Math.abs(s),Math.abs(y))&&Math.abs(l-g)<=e.EPSILON*Math.max(1,Math.abs(l),Math.abs(g))};var e=function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}(r(1));function a(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=n[6],s=n[7],l=n[8],h=r[0],v=r[1],d=r[2],p=r[3],M=r[4],b=r[5],m=r[6],y=r[7],g=r[8];return t[0]=h*e+v*i+d*f,t[1]=h*a+v*u+d*s,t[2]=h*o+v*c+d*l,t[3]=p*e+M*i+b*f,t[4]=p*a+M*u+b*s,t[5]=p*o+M*c+b*l,t[6]=m*e+y*i+g*f,t[7]=m*a+y*u+g*s,t[8]=m*o+y*c+g*l,t}function o(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t[4]=n[4]-r[4],t[5]=n[5]-r[5],t[6]=n[6]-r[6],t[7]=n[7]-r[7],t[8]=n[8]-r[8],t}n.mul=a,n.sub=o},function(t,n,r){"use strict";(function(t){Object.defineProperty(n,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};n.default=a;var e={vtkObject:function(){return null}};function a(n){if(null===n||void 0===n)return n;if(n.isA)return n;if(!n.vtkClass)return t.console&&t.console.error&&t.console.error("Invalid VTK object"),null;var o=e[n.vtkClass];if(!o)return t.console&&t.console.error&&t.console.error("No vtk class found for Object of type "+n.vtkClass),null;var i=Object.assign({},n);Object.keys(i).forEach(function(t){i[t]&&"object"===r(i[t])&&i[t].vtkClass&&(i[t]=a(i[t]))});var u=o(i);return u&&u.modified&&u.modified(),u}a.register=function(t,n){e[t]=n}}).call(this,r(5))},function(t,n){var r,e,a=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function u(t){if(r===setTimeout)return setTimeout(t,0);if((r===o||!r)&&setTimeout)return r=setTimeout,setTimeout(t,0);try{return r(t,0)}catch(n){try{return r.call(null,t,0)}catch(n){return r.call(this,t,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:o}catch(t){r=o}try{e="function"==typeof clearTimeout?clearTimeout:i}catch(t){e=i}}();var c,f=[],s=!1,l=-1;function h(){s&&c&&(s=!1,c.length?f=c.concat(f):l=-1,f.length&&v())}function v(){if(!s){var t=u(h);s=!0;for(var n=f.length;n;){for(c=f,f=[];++l<n;)c&&c[l].run();l=-1,n=f.length}c=null,s=!1,function(t){if(e===clearTimeout)return clearTimeout(t);if((e===i||!e)&&clearTimeout)return e=clearTimeout,clearTimeout(t);try{e(t)}catch(n){try{return e.call(null,t)}catch(n){return e.call(this,t)}}}(t)}}function d(t,n){this.fun=t,this.array=n}function p(){}a.nextTick=function(t){var n=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)n[r-1]=arguments[r];f.push(new d(t,n)),1!==f.length||s||u(v)},d.prototype.run=function(){this.fun.apply(null,this.array)},a.title="browser",a.browser=!0,a.env={},a.argv=[],a.version="",a.versions={},a.on=p,a.addListener=p,a.once=p,a.off=p,a.removeListener=p,a.removeAllListeners=p,a.emit=p,a.prependListener=p,a.prependOnceListener=p,a.listeners=function(t){return[]},a.binding=function(t){throw new Error("process.binding is not supported")},a.cwd=function(){return"/"},a.chdir=function(t){throw new Error("process.chdir is not supported")},a.umask=function(){return 0}},function(t,n,r){(function(t,n){!function(t,r){"use strict";if(!t.setImmediate){var e,a=1,o={},i=!1,u=t.document,c=Object.getPrototypeOf&&Object.getPrototypeOf(t);c=c&&c.setTimeout?c:t,"[object process]"==={}.toString.call(t.process)?e=function(t){n.nextTick(function(){s(t)})}:function(){if(t.postMessage&&!t.importScripts){var n=!0,r=t.onmessage;return t.onmessage=function(){n=!1},t.postMessage("","*"),t.onmessage=r,n}}()?function(){var n="setImmediate$"+Math.random()+"$",r=function(r){r.source===t&&"string"==typeof r.data&&0===r.data.indexOf(n)&&s(+r.data.slice(n.length))};t.addEventListener?t.addEventListener("message",r,!1):t.attachEvent("onmessage",r),e=function(r){t.postMessage(n+r,"*")}}():t.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){s(t.data)},e=function(n){t.port2.postMessage(n)}}():u&&"onreadystatechange"in u.createElement("script")?function(){var t=u.documentElement;e=function(n){var r=u.createElement("script");r.onreadystatechange=function(){s(n),r.onreadystatechange=null,t.removeChild(r),r=null},t.appendChild(r)}}():e=function(t){setTimeout(s,0,t)},c.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var n=new Array(arguments.length-1),r=0;r<n.length;r++)n[r]=arguments[r+1];var i={callback:t,args:n};return o[a]=i,e(a),a++},c.clearImmediate=f}function f(t){delete o[t]}function s(t){if(i)setTimeout(s,0,t);else{var n=o[t];if(n){i=!0;try{!function(t){var n=t.callback,e=t.args;switch(e.length){case 0:n();break;case 1:n(e[0]);break;case 2:n(e[0],e[1]);break;case 3:n(e[0],e[1],e[2]);break;default:n.apply(r,e)}}(n)}finally{f(t),i=!1}}}}}("undefined"==typeof self?void 0===t?this:t:self)}).call(this,r(5),r(14))},function(t,n,r){(function(t){var e=void 0!==t&&t||"undefined"!=typeof self&&self||window,a=Function.prototype.apply;function o(t,n){this._id=t,this._clearFn=n}n.setTimeout=function(){return new o(a.call(setTimeout,e,arguments),clearTimeout)},n.setInterval=function(){return new o(a.call(setInterval,e,arguments),clearInterval)},n.clearTimeout=n.clearInterval=function(t){t&&t.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(e,this._id)},n.enroll=function(t,n){clearTimeout(t._idleTimeoutId),t._idleTimeout=n},n.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},n._unrefActive=n.active=function(t){clearTimeout(t._idleTimeoutId);var n=t._idleTimeout;n>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},n))},r(15),n.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,n.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(this,r(5))},function(t,n,r){"use strict";(function(t,e){Object.defineProperty(n,"__esModule",{value:!0}),n.EVENT_ABORT=n.TYPED_ARRAYS=n.VOID=void 0;var a=function(){return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,n){var r=[],e=!0,a=!1,o=void 0;try{for(var i,u=t[Symbol.iterator]();!(e=(i=u.next()).done)&&(r.push(i.value),!n||r.length!==n);e=!0);}catch(t){a=!0,o=t}finally{try{!e&&u.return&&u.return()}finally{if(a)throw o}}return r}(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};n.setLoggerFunction=d,n.vtkLogMacro=p,n.vtkInfoMacro=M,n.vtkDebugMacro=b,n.vtkErrorMacro=m,n.vtkWarningMacro=y,n.capitalize=x,n.uncapitalize=w,n.formatBytesToProperUnit=A,n.formatNumbersWithThousandSeparator=O,n.obj=I,n.get=S,n.set=L,n.setGet=N,n.getArray=j,n.setArray=q,n.setGetArray=k,n.algo=R,n.event=D,n.newInstance=C,n.chain=z,n.isVtkObject=V,n.traverseInstanceTree=U,n.debounce=F,n.throttle=X,n.keystore=B,n.proxy=K,n.proxyPropertyMapping=Q,n.proxyPropertyState=H,n.normalizeWheel=tt;var i=function(t){return t&&t.__esModule?t:{default:t}}(r(13));function u(t,n,r){return n in t?Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r,t}function c(t){if(Array.isArray(t)){for(var n=0,r=Array(t.length);n<t.length;n++)r[n]=t[n];return r}return Array.from(t)}var f=0,s=n.VOID=Symbol("void");var l={};function h(){}["log","debug","info","warn","error","time","timeEnd","group","groupEnd"].forEach(function(t){l[t]=h}),t.console=console.hasOwnProperty("log")?console:l;var v={debug:h,error:t.console.error||h,info:t.console.info||h,log:t.console.log||h,warn:t.console.warn||h};function d(t,n){v[t]&&(v[t]=n||h)}function p(){v.log.apply(v,arguments)}function M(){v.info.apply(v,arguments)}function b(){v.debug.apply(v,arguments)}function m(){v.error.apply(v,arguments)}function y(){v.warn.apply(v,arguments)}var g=n.TYPED_ARRAYS={Float32Array:Float32Array,Float64Array:Float64Array,Uint8Array:Uint8Array,Int8Array:Int8Array,Uint16Array:Uint16Array,Int16Array:Int16Array,Uint32Array:Uint32Array,Int32Array:Int32Array};function x(t){return t.charAt(0).toUpperCase()+t.slice(1)}function w(t){return t.charAt(0).toLowerCase()+t.slice(1)}function A(t){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e3,e=["TB","GB","MB","KB"],a=Number(t),o="B";a>r;)a/=r,o=e.pop();return a.toFixed(n)+" "+o}function O(t){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" ",r=[],e=t;e>1e3;)r.push(("000"+e%1e3).slice(-3)),e=Math.floor(e/1e3);return e>0&&r.push(e),r.reverse(),r.join(n)}function E(t){Object.keys(t).forEach(function(n){Array.isArray(t[n])&&(t[n]=[].concat(t[n]))})}function P(t){return t.isA?t.getState():t}function I(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};E(n);var r=[];function e(t){r[t]=null}return Number.isInteger(n.mtime)||(n.mtime=++f),n.classHierarchy=["vtkObject"],t.isDeleted=function(){return!!n.deleted},t.modified=function(e){n.deleted?m("instance deleted - cannot call any method"):e&&e<t.getMTime()||(n.mtime=++f,r.forEach(function(n){return n&&n(t)}))},t.onModified=function(t){if(n.deleted)return m("instance deleted - cannot call any method"),null;var a=r.length;return r.push(t),function(t){return Object.freeze({unsubscribe:function(){e(t)}})}(a)},t.getMTime=function(){return n.mtime},t.isA=function(t){for(var r=n.classHierarchy.length;r--;)if(n.classHierarchy[r]===t)return!0;return!1},t.getClassName=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return n.classHierarchy[n.classHierarchy.length-1-t]},t.set=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=!1;return Object.keys(r).forEach(function(i){var u=a?null:t["set"+x(i)];u&&Array.isArray(r[i])?o=u.apply(void 0,c(r[i]))||o:u?o=u(r[i])||o:(-1!==["mtime"].indexOf(i)||e||y("Warning: Set value to model directly "+i+", "+r[i]),n[i]=r[i],o=!0)}),o},t.get=function(){for(var t=arguments.length,r=Array(t),e=0;e<t;e++)r[e]=arguments[e];if(!r.length)return n;var a={};return r.forEach(function(t){a[t]=n[t]}),a},t.getReferenceByName=function(t){return n[t]},t.delete=function(){Object.keys(n).forEach(function(t){return delete n[t]}),r.forEach(function(t,n){return e(n)}),n.deleted=!0},t.getState=function(){var r=Object.assign({},n,{vtkClass:t.getClassName()});Object.keys(r).forEach(function(t){null===r[t]||void 0===r[t]?delete r[t]:r[t].isA?r[t]=r[t].getState():Array.isArray(r[t])&&(r[t]=r[t].map(P))});var e={};return Object.keys(r).sort().forEach(function(t){e[t]=r[t]}),e.mtime&&delete e.mtime,e},t.shallowCopy=function(r){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(r.getClassName()!==t.getClassName())throw new Error("Cannot ShallowCopy "+r.getClassName()+" into "+t.getClassName());var a=r.get(),o=Object.keys(n).sort();Object.keys(a).sort().forEach(function(t){var r=o.indexOf(t);-1===r?e&&b("add "+t+" in shallowCopy"):o.splice(r,1),n[t]=a[t]}),o.length&&e&&b("Untouched keys: "+o.join(", ")),t.modified()},t}function S(t,n,r){r.forEach(function(r){"object"===(void 0===r?"undefined":o(r))?t["get"+x(r.name)]=function(){return n[r.name]}:t["get"+x(r)]=function(){return n[r]}})}var _={enum:function(t,n,r){return function(e){if("string"==typeof e){if(void 0!==r.enum[e])return n[r.name]!==r.enum[e]&&(n[r.name]=r.enum[e],t.modified(),!0);throw m("Set Enum with invalid argument "+r+", "+e),new RangeError("Set Enum with invalid string argument")}if("number"==typeof e){if(n[r.name]!==e){if(-1!==Object.keys(r.enum).map(function(t){return r.enum[t]}).indexOf(e))return n[r.name]=e,t.modified(),!0;throw m("Set Enum outside numeric range "+r+", "+e),new RangeError("Set Enum outside numeric range")}return!1}throw m("Set Enum with invalid argument (String/Number) "+r+", "+e),new TypeError("Set Enum with invalid argument (String/Number)")}}};function T(t){if("object"===(void 0===t?"undefined":o(t))){var n=_[t.type];if(n)return function(r,e){return n(r,e,t)};throw m("No setter for field "+t),new TypeError("No setter for field")}return function(n,r){return function(e){return r.deleted?(m("instance deleted - cannot call any method"),!1):r[t]!==e&&(r[t]=e,n.modified(),!0)}}}function L(t,n,r){r.forEach(function(r){"object"===(void 0===r?"undefined":o(r))?t["set"+x(r.name)]=T(r)(t,n):t["set"+x(r)]=T(r)(t,n)})}function N(t,n,r){S(t,n,r),L(t,n,r)}function j(t,n,r){r.forEach(function(r){t["get"+x(r)]=function(){return[].concat(n[r])},t["get"+x(r)+"ByReference"]=function(){return n[r]}})}function q(t,n,r,e){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;r.forEach(function(r){t["set"+x(r)]=function(){for(var o=arguments.length,i=Array(o),u=0;u<o;u++)i[u]=arguments[u];if(n.deleted)return m("instance deleted - cannot call any method"),!1;var c=i;if(1===c.length&&Array.isArray(c[0])&&(c=c[0]),c.length!==e){if(!(c.length<e&&void 0!==a))throw new RangeError("Invalid number of values for array setter");for(c=[].concat(c);c.length<e;)c.push(a)}var f=!1;return n[r].forEach(function(t,n){if(t!==c[n]){if(f)return;f=!0}}),(f||n[r].length!==c.length)&&(n[r]=[].concat(c),t.modified()),!0},t["set"+x(r)+"From"]=function(t){var e=n[r];t.forEach(function(t,n){e[n]=t})}})}function k(t,n,r,e){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;j(t,n,r),q(t,n,r,e,a)}function R(t,n,r,e){function a(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(n.deleted)m("instance deleted - cannot call any method");else{if(e>=n.numberOfInputs){var a="algorithm "+t.getClassName()+" only has ";return a+=""+n.numberOfInputs,void m(a+=" input ports. To add more input ports, use addInputData()")}(n.inputData[e]!==r||n.inputConnection[e])&&(n.inputData[e]=r,n.inputConnection[e]=null,t.modified&&t.modified())}}function o(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(n.deleted)m("instance deleted - cannot call any method");else{if(e>=n.numberOfInputs){var a="algorithm "+t.getClassName()+" only has ";return a+=""+n.numberOfInputs,void m(a+=" input ports. To add more input ports, use addInputConnection()")}n.inputData[e]=null,n.inputConnection[e]=r}}function u(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return n.deleted?(m("instance deleted - cannot call any method"),null):(t.shouldUpdate()&&t.update(),n.output[r])}if(n.inputData?n.inputData=n.inputData.map(i.default):n.inputData=[],n.inputConnection?n.inputConnection=n.inputConnection.map(i.default):n.inputConnection=[],n.output?n.output=n.output.map(i.default):n.output=[],n.inputArrayToProcess?n.inputArrayToProcess=n.inputArrayToProcess.map(i.default):n.inputArrayToProcess=[],n.numberOfInputs=r,t.shouldUpdate=function(){for(var r=t.getMTime(),a=e,o=1/0;a--;){if(!n.output[a])return!0;var i=n.output[a].getMTime();if(i<r)return!0;i<o&&(o=i)}for(a=n.numberOfInputs;a--;)if(n.inputConnection[a]&&n.inputConnection[a].filter.shouldUpdate())return!0;for(a=n.numberOfInputs;a--;)if(t.getInputData(a)&&t.getInputData(a).getMTime()>o)return!0;return!1},n.numberOfInputs){for(var c=n.numberOfInputs;c--;)n.inputData.push(null),n.inputConnection.push(null);t.setInputData=a,t.setInputConnection=o,t.addInputData=function(t){n.deleted?m("instance deleted - cannot call any method"):(n.numberOfInputs++,a(t,n.numberOfInputs-1))},t.addInputConnection=function(t){n.deleted?m("instance deleted - cannot call any method"):(n.numberOfInputs++,o(t,n.numberOfInputs-1))},t.getInputData=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return n.inputConnection[t]&&(n.inputData[t]=n.inputConnection[t]()),n.inputData[t]},t.getInputConnection=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return n.inputConnection[t]}}e&&(t.getOutputData=u,t.getOutputPort=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,r=function(){return u(n)};return r.filter=t,r}),t.update=function(){var r=[];if(n.numberOfInputs)for(var e=0;e<n.numberOfInputs;)r[e]=t.getInputData(e),e++;t.shouldUpdate()&&t.requestData&&t.requestData(r,n.output)},t.getNumberOfInputPorts=function(){return n.numberOfInputs},t.getNumberOfOutputPorts=function(){return e},t.getInputArrayToProcess=function(t){var r=n.inputArrayToProcess[t],e=n.inputData[t];return r&&e?e["get"+r.fieldAssociation]().getArray(r.arrayName):null},t.setInputArrayToProcess=function(t,r,e){for(var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"Scalars";n.inputArrayToProcess.length<t;)n.inputArrayToProcess.push(null);n.inputArrayToProcess[t]={arrayName:r,fieldAssociation:e,attributeType:a}}}var Y=n.EVENT_ABORT=Symbol("Event abort");function D(t,n,r){var e=[],o=t.delete,i=1;function u(t){for(var n=0;n<e.length;++n){if(a(e[n],1)[0]===t)return void e.splice(n,1)}}t["invoke"+x(r)]=function(){var r=arguments;if(n.deleted)m("instance deleted - cannot call any method");else for(var o=e.slice(),i=function(n){var e=a(o[n],3),i=e[1],u=e[2];if(u<0)setTimeout(function(){return i.apply(t,r)},1-u);else if(i&&i.apply(t,r)===Y)return"break"},u=0;u<o.length&&"break"!==i(u);++u);},t["on"+x(r)]=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(n.deleted)return m("instance deleted - cannot call any method"),null;var a=i++;return e.push([a,t,r]),e.sort(function(t,n){return n[2]-t[2]}),function(t){return Object.freeze({unsubscribe:function(){u(t)}})}(a)},t.delete=function(){o(),e.forEach(function(t){return u(a(t,1)[0])})}}function C(t,n){var r=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r={};return t(r,{},n),Object.freeze(r)};return n&&i.default.register(n,r),r}function z(){for(var t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return function(){for(var t=arguments.length,r=Array(t),e=0;e<t;e++)r[e]=arguments[e];return n.filter(function(t){return!!t}).forEach(function(t){return t.apply(void 0,r)})}}function V(t){return t&&t.isA&&t.isA("vtkObject")}function U(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[];if(V(t)){if(e.indexOf(t)>=0)return r;e.push(t);var a=n(t);void 0!==a&&r.push(a);var o=t.get();Object.keys(o).forEach(function(t){var a=o[t];Array.isArray(a)?a.forEach(function(t){U(t,n,r,e)}):U(a,n,r,e)})}return r}function F(t,n,r){var e=this,a=void 0;return function(){for(var o=arguments.length,i=Array(o),u=0;u<o;u++)i[u]=arguments[u];var c=e,f=r&&!a;clearTimeout(a),a=setTimeout(function(){a=null,r||t.apply(c,i)},n),f&&t.apply(c,i)}}function X(t,n){var r=!1,e=null;function a(){r=!1,null!==e&&(o.apply(void 0,c(e)),e=null)}function o(){for(var o=arguments.length,i=Array(o),u=0;u<o;u++)i[u]=arguments[u];r?e=i:(r=!0,t.apply(void 0,i),setTimeout(a,n))}return o}function B(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};n.keystore=Object.assign(n.keystore||{},r),t.setKey=function(t,r){n.keystore[t]=r},t.getKey=function(t,r){return n.keystore[t]},t.getAllKeys=function(t,r){return Object.keys(n.keystore)},t.deleteKey=function(t,r){return delete n.keystore[t]},t.clearKeystore=function(){return t.getAllKeys().forEach(function(t){return delete n.keystore[t]})}}var G=1,W="__root__";function K(t,n){B(t,n);var r=t.delete;n.proxyId=""+G++,n.ui=JSON.parse(JSON.stringify(n.ui||[])),S(t,n,["proxyId","proxyGroup","proxyName"]),N(t,n,["proxyManager"]);var a={},o={};function i(t,n){o[n]||(o[n]=[]);for(var r=o[n],e=0;e<t.length;e++)r.push(t[e].name),a[t[e].name]=t[e],t[e].children&&t[e].children.length&&i(t[e].children,t[e].name)}function c(){for(var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:W,e=[],a=n.proxyId,i=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:W;return o[t]}(r)||[],u=0;u<i.length;u++){var f=i[u],s=t["get"+x(f)],l={id:a,name:f,value:s?s():void 0},h=c(f);h.length&&(l.children=h),e.push(l)}return e}i(n.ui,W),t.updateUI=function(r){n.ui=JSON.parse(JSON.stringify(r||[])),Object.keys(a).forEach(function(t){return delete a[t]}),Object.keys(o).forEach(function(t){return delete o[t]}),i(n.ui,W),t.modified()},t.updateProxyProperty=function(t,n){var r=a[t];r?Object.assign(r,n):a[t]=Object.assign({},n)},t.activate=function(){if(n.proxyManager){var r="setActive"+x(t.getProxyGroup().slice(0,-1));n.proxyManager[r]&&n.proxyManager[r](t)}},n.propertyLinkSubscribers={},t.registerPropertyLinkForGC=function(t,r){r in n.propertyLinkSubscribers||(n.propertyLinkSubscribers[r]=[]),n.propertyLinkSubscribers[r].push(t)},t.gcPropertyLinks=function(r){for(var e=n.propertyLinkSubscribers[r]||[];e.length;)e.pop().unbind(t)},n.propertyLinkMap={},t.getPropertyLink=function(t){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(n.propertyLinkMap[t])return n.propertyLinkMap[t];var e=null,a=[],o=0,i=!1;function c(r){var c=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(i)return null;var f=[],s=null;for(o=a.length;o--;){var l=a[o];l.instance===r?s=l:f.push(l)}if(!s)return null;var h=s.instance["get"+x(s.propertyName)]();if(h!==e||c){for(e=h,i=!0;f.length;){var v=f.pop();v.instance.set(u({},v.propertyName,e))}i=!1}return n.propertyLinkMap[t].persistent&&(n.propertyLinkMap[t].value=h),h}function f(t,n){var r=[];for(o=a.length;o--;){var e=a[o];e.instance!==t||e.propertyName!==n&&void 0!==n||(e.subscription.unsubscribe(),r.push(o))}for(;r.length;)a.splice(r.pop(),1)}var s={bind:function(r,e){var o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=r.onModified(c),s=a[0];return a.push({instance:r,propertyName:e,subscription:i}),o&&(n.propertyLinkMap[t].persistent&&void 0!==n.propertyLinkMap[t].value?r.set(u({},e,n.propertyLinkMap[t].value)):s&&c(s.instance,!0)),{unsubscribe:function(){return f(r,e)}}},unbind:f,unsubscribe:function(){for(;a.length;)a.pop().subscription.unsubscribe()},persistent:r};return n.propertyLinkMap[t]=s,s},t.listPropertyNames=function(){return c().map(function(t){return t.name})},t.getPropertyByName=function(t){return c().find(function(n){return n.name===t})},t.getPropertyDomainByName=function(t){return a[t].domain},t.getProxySection=function(){return{id:n.proxyId,name:n.proxyGroup,ui:n.ui,properties:c()}},t.delete=function(){for(var e=Object.keys(n.propertyLinkMap),a=e.length;a--;)n.propertyLinkMap[e[a]].unsubscribe();Object.keys(n.propertyLinkSubscribers).forEach(t.gcPropertyLinks),r()},e(function(){if(n.links)for(var r=0;r<n.links.length;r++){var e=n.links[r],a=e.link,o=e.property,i=e.persistent,u=e.updateOnBind;if("application"===e.type){var c=n.proxyManager.getPropertyLink(a,i);t.registerPropertyLinkForGC(c,"application"),c.bind(t,o,u)}}})}function Q(t,n,r){for(var e=t.delete,a=[],o=Object.keys(r),i=o.length;i--;){var u=o[i],c=r[u],f=c.modelKey,s=c.property,l=c.modified,h=void 0===l||l,v=x(s),d=x(u);t["get"+d]=n[f]["get"+v],t["set"+d]=n[f]["set"+v],h&&a.push(n[f].onModified(t.modified))}t.delete=function(){for(;a.length;)a.pop().unsubscribe();e()}}function H(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n.this=t;for(var a=Object.keys(e),o=a.length,i=function(){var i=a[o];n[i]=e[i];var u=r[i];t["set"+x(i)]=function(r){r!==n[i]&&(n[i]=r,function(t){for(var r=Object.keys(t),e=r.length;e--;){var a=r[e];n[a].set(t[a])}}(u[r]),t.modified())}};o--;)i();a.length&&S(t,n,a)}var Z=10,J=40,$=800;function tt(t){var n=0,r=0,e=0,a=0;return"detail"in t&&(r=t.detail),"wheelDelta"in t&&(r=-t.wheelDelta/120),"wheelDeltaY"in t&&(r=-t.wheelDeltaY/120),"wheelDeltaX"in t&&(n=-t.wheelDeltaX/120),"axis"in t&&t.axis===t.HORIZONTAL_AXIS&&(n=r,r=0),e=n*Z,a=r*Z,"deltaY"in t&&(a=t.deltaY),"deltaX"in t&&(e=t.deltaX),(e||a)&&t.deltaMode&&(1===t.deltaMode?(e*=J,a*=J):(e*=$,a*=$)),e&&!n&&(n=e<1?-1:1),a&&!r&&(r=a<1?-1:1),{spinX:n,spinY:r,pixelX:e,pixelY:a}}n.default={EVENT_ABORT:Y,VOID:s,TYPED_ARRAYS:g,algo:R,capitalize:x,uncapitalize:w,chain:z,enumToString:function(t,n){return Object.keys(t).find(function(r){return t[r]===n})},event:D,get:S,getArray:j,getCurrentGlobalMTime:function(){return f},getStateArrayMapFunc:P,isVtkObject:V,keystore:B,newInstance:C,obj:I,safeArrays:E,set:L,setArray:q,setGet:N,setGetArray:k,setLoggerFunction:d,traverseInstanceTree:U,vtkDebugMacro:b,vtkErrorMacro:m,vtkInfoMacro:M,vtkLogMacro:p,vtkWarningMacro:y,debounce:F,throttle:X,proxy:K,proxyPropertyMapping:Q,proxyPropertyState:H,formatBytesToProperUnit:A,formatNumbersWithThousandSeparator:O,normalizeWheel:tt}}).call(this,r(5),r(16).setImmediate)},function(t,n){},function(t,n,r){var e;!function(a,o){var i,u=this,c=256,f=6,s="random",l=o.pow(c,f),h=o.pow(2,52),v=2*h,d=c-1;function p(t,n,r){var e=[],p=b(function t(n,r){var e,a=[],o=typeof n;if(r&&"object"==o)for(e in n)try{a.push(t(n[e],r-1))}catch(t){}return a.length?a:"string"==o?n:n+"\\0"}((n=1==n?{entropy:!0}:n||{}).entropy?[t,m(a)]:null==t?function(){try{var t;return i&&(t=i.randomBytes)?t=t(c):(t=new Uint8Array(c),(u.crypto||u.msCrypto).getRandomValues(t)),m(t)}catch(t){var n=u.navigator,r=n&&n.plugins;return[+new Date,u,r,u.screen,m(a)]}}():t,3),e),y=new function(t){var n,r=t.length,e=this,a=0,o=e.i=e.j=0,i=e.S=[];r||(t=[r++]);for(;a<c;)i[a]=a++;for(a=0;a<c;a++)i[a]=i[o=d&o+t[a%r]+(n=i[a])],i[o]=n;(e.g=function(t){for(var n,r=0,a=e.i,o=e.j,i=e.S;t--;)n=i[a=d&a+1],r=r*c+i[d&(i[a]=i[o=d&o+n])+(i[o]=n)];return e.i=a,e.j=o,r})(c)}(e),g=function(){for(var t=y.g(f),n=l,r=0;t<h;)t=(t+r)*c,n*=c,r=y.g(1);for(;t>=v;)t/=2,n/=2,r>>>=1;return(t+r)/n};return g.int32=function(){return 0|y.g(4)},g.quick=function(){return y.g(4)/4294967296},g.double=g,b(m(y.S),a),(n.pass||r||function(t,n,r,e){return e&&(e.S&&M(e,y),t.state=function(){return M(y,{})}),r?(o[s]=t,n):t})(g,p,"global"in n?n.global:this==o,n.state)}function M(t,n){return n.i=t.i,n.j=t.j,n.S=t.S.slice(),n}function b(t,n){for(var r,e=t+"",a=0;a<e.length;)n[d&a]=d&(r^=19*n[d&a])+e.charCodeAt(a++);return m(n)}function m(t){return String.fromCharCode.apply(0,t)}if(o["seed"+s]=p,b(o.random(),a),"object"==typeof t&&t.exports){t.exports=p;try{i=r(18)}catch(t){}}else void 0===(e=function(){return p}.call(n,r,n,t))||(t.exports=e)}([],Math)},function(t,n,r){(function(t){var e;!function(t,a,o){function i(t,n){return n.a=t.a,n.b=t.b,n.c=t.c,n.d=t.d,n}function u(t,n){var r=new function(t){var n=this,r="";n.next=function(){var t=n.b,r=n.c,e=n.d,a=n.a;return t=t<<25^t>>>7^r,r=r-e|0,e=e<<24^e>>>8^a,a=a-t|0,n.b=t=t<<20^t>>>12^r,n.c=r=r-e|0,n.d=e<<16^r>>>16^a,n.a=a-t|0},n.a=0,n.b=0,n.c=-1640531527,n.d=1367130551,t===Math.floor(t)?(n.a=t/4294967296|0,n.b=0|t):r+=t;for(var e=0;e<r.length+20;e++)n.b^=0|r.charCodeAt(e),n.next()}(t),e=n&&n.state,a=function(){return(r.next()>>>0)/4294967296};return a.double=function(){do{var t=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},a.int32=r.next,a.quick=a,e&&("object"==typeof e&&i(e,r),a.state=function(){return i(r,{})}),a}a&&a.exports?a.exports=u:r(0)&&r(3)?void 0===(e=function(){return u}.call(n,r,n,a))||(a.exports=e):this.tychei=u}(0,"object"==typeof t&&t,r(0))}).call(this,r(4)(t))},function(t,n,r){(function(t){var e;!function(t,a,o){function i(t,n){return n.i=t.i,n.w=t.w,n.X=t.X.slice(),n}function u(t,n){null==t&&(t=+new Date);var r=new function(t){var n=this;n.next=function(){var t,r,e=n.w,a=n.X,o=n.i;return n.w=e=e+1640531527|0,r=a[o+34&127],t=a[o=o+1&127],r^=r<<13,t^=t<<17,r^=r>>>15,t^=t>>>12,r=a[o]=r^t,n.i=o,r+(e^e>>>16)|0},function(t,n){var r,e,a,o,i,u=[],c=128;for(n===(0|n)?(e=n,n=null):(n+="\\0",e=0,c=Math.max(c,n.length)),a=0,o=-32;o<c;++o)n&&(e^=n.charCodeAt((o+32)%n.length)),0===o&&(i=e),e^=e<<10,e^=e>>>15,e^=e<<4,e^=e>>>13,o>=0&&(i=i+1640531527|0,a=0==(r=u[127&o]^=e+i)?a+1:0);for(a>=128&&(u[127&(n&&n.length||0)]=-1),a=127,o=512;o>0;--o)e=u[a+34&127],r=u[a=a+1&127],e^=e<<13,r^=r<<17,e^=e>>>15,r^=r>>>12,u[a]=e^r;t.w=i,t.X=u,t.i=a}(n,t)}(t),e=n&&n.state,a=function(){return(r.next()>>>0)/4294967296};return a.double=function(){do{var t=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},a.int32=r.next,a.quick=a,e&&(e.X&&i(e,r),a.state=function(){return i(r,{})}),a}a&&a.exports?a.exports=u:r(0)&&r(3)?void 0===(e=function(){return u}.call(n,r,n,a))||(a.exports=e):this.xor4096=u}(0,"object"==typeof t&&t,r(0))}).call(this,r(4)(t))},function(t,n,r){(function(t){var e;!function(t,a,o){function i(t,n){return n.x=t.x.slice(),n.i=t.i,n}function u(t,n){null==t&&(t=+new Date);var r=new function(t){var n=this;n.next=function(){var t,r,e=n.x,a=n.i;return t=e[a],r=(t^=t>>>7)^t<<24,r^=(t=e[a+1&7])^t>>>10,r^=(t=e[a+3&7])^t>>>3,r^=(t=e[a+4&7])^t<<7,t=e[a+7&7],r^=(t^=t<<13)^t<<9,e[a]=r,n.i=a+1&7,r},function(t,n){var r,e=[];if(n===(0|n))e[0]=n;else for(n=""+n,r=0;r<n.length;++r)e[7&r]=e[7&r]<<15^n.charCodeAt(r)+e[r+1&7]<<13;for(;e.length<8;)e.push(0);for(r=0;r<8&&0===e[r];++r);for(8==r?e[7]=-1:e[r],t.x=e,t.i=0,r=256;r>0;--r)t.next()}(n,t)}(t),e=n&&n.state,a=function(){return(r.next()>>>0)/4294967296};return a.double=function(){do{var t=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},a.int32=r.next,a.quick=a,e&&(e.x&&i(e,r),a.state=function(){return i(r,{})}),a}a&&a.exports?a.exports=u:r(0)&&r(3)?void 0===(e=function(){return u}.call(n,r,n,a))||(a.exports=e):this.xorshift7=u}(0,"object"==typeof t&&t,r(0))}).call(this,r(4)(t))},function(t,n,r){(function(t){var e;!function(t,a,o){function i(t,n){return n.x=t.x,n.y=t.y,n.z=t.z,n.w=t.w,n.v=t.v,n.d=t.d,n}function u(t,n){var r=new function(t){var n=this,r="";n.next=function(){var t=n.x^n.x>>>2;return n.x=n.y,n.y=n.z,n.z=n.w,n.w=n.v,(n.d=n.d+362437|0)+(n.v=n.v^n.v<<4^t^t<<1)|0},n.x=0,n.y=0,n.z=0,n.w=0,n.v=0,t===(0|t)?n.x=t:r+=t;for(var e=0;e<r.length+64;e++)n.x^=0|r.charCodeAt(e),e==r.length&&(n.d=n.x<<10^n.x>>>4),n.next()}(t),e=n&&n.state,a=function(){return(r.next()>>>0)/4294967296};return a.double=function(){do{var t=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},a.int32=r.next,a.quick=a,e&&("object"==typeof e&&i(e,r),a.state=function(){return i(r,{})}),a}a&&a.exports?a.exports=u:r(0)&&r(3)?void 0===(e=function(){return u}.call(n,r,n,a))||(a.exports=e):this.xorwow=u}(0,"object"==typeof t&&t,r(0))}).call(this,r(4)(t))},function(t,n,r){(function(t){var e;!function(t,a,o){function i(t,n){return n.x=t.x,n.y=t.y,n.z=t.z,n.w=t.w,n}function u(t,n){var r=new function(t){var n=this,r="";n.x=0,n.y=0,n.z=0,n.w=0,n.next=function(){var t=n.x^n.x<<11;return n.x=n.y,n.y=n.z,n.z=n.w,n.w^=n.w>>>19^t^t>>>8},t===(0|t)?n.x=t:r+=t;for(var e=0;e<r.length+64;e++)n.x^=0|r.charCodeAt(e),n.next()}(t),e=n&&n.state,a=function(){return(r.next()>>>0)/4294967296};return a.double=function(){do{var t=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},a.int32=r.next,a.quick=a,e&&("object"==typeof e&&i(e,r),a.state=function(){return i(r,{})}),a}a&&a.exports?a.exports=u:r(0)&&r(3)?void 0===(e=function(){return u}.call(n,r,n,a))||(a.exports=e):this.xor128=u}(0,"object"==typeof t&&t,r(0))}).call(this,r(4)(t))},function(t,n,r){(function(t){var e;!function(t,a,o){function i(t,n){return n.c=t.c,n.s0=t.s0,n.s1=t.s1,n.s2=t.s2,n}function u(t,n){var r=new function(t){var n=this,r=function(){var t=4022871197;return function(n){n=n.toString();for(var r=0;r<n.length;r++){var e=.02519603282416938*(t+=n.charCodeAt(r));e-=t=e>>>0,t=(e*=t)>>>0,t+=4294967296*(e-=t)}return 2.3283064365386963e-10*(t>>>0)}}();n.next=function(){var t=2091639*n.s0+2.3283064365386963e-10*n.c;return n.s0=n.s1,n.s1=n.s2,n.s2=t-(n.c=0|t)},n.c=1,n.s0=r(" "),n.s1=r(" "),n.s2=r(" "),n.s0-=r(t),n.s0<0&&(n.s0+=1),n.s1-=r(t),n.s1<0&&(n.s1+=1),n.s2-=r(t),n.s2<0&&(n.s2+=1),r=null}(t),e=n&&n.state,a=r.next;return a.int32=function(){return 4294967296*r.next()|0},a.double=function(){return a()+1.1102230246251565e-16*(2097152*a()|0)},a.quick=a,e&&("object"==typeof e&&i(e,r),a.state=function(){return i(r,{})}),a}a&&a.exports?a.exports=u:r(0)&&r(3)?void 0===(e=function(){return u}.call(n,r,n,a))||(a.exports=e):this.alea=u}(0,"object"==typeof t&&t,r(0))}).call(this,r(4)(t))},function(t,n,r){var e=r(25),a=r(24),o=r(23),i=r(22),u=r(21),c=r(20),f=r(19);f.alea=e,f.xor128=a,f.xorwow=o,f.xorshift7=i,f.xor4096=u,f.tychei=c,t.exports=f},function(t,n,r){"use strict";var e=function(){function t(t,n){for(var r=0;r<n.length;r++){var e=n[r];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(t,e.key,e)}}return function(n,r,e){return r&&t(n.prototype,r),e&&t(n,e),n}}();var a=function(){function t(){!function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,t),Object.defineProperty(this,"__listeners",{value:{},enumerable:!1,writable:!1})}return e(t,[{key:"emit",value:function(t){for(var n=arguments.length,r=Array(n>1?n-1:0),e=1;e<n;e++)r[e-1]=arguments[e];var a=!0,o=!1,i=void 0;try{for(var u,c=this.__listeners[t][Symbol.iterator]();!(a=(u=c.next()).done);a=!0){u.value.apply(void 0,r)}}catch(t){o=!0,i=t}finally{try{!a&&c.return&&c.return()}finally{if(o)throw i}}return this}},{key:"once",value:function(t,n){var r=this,e=function e(){r.off(t,e),n.apply(void 0,arguments)};return this.on(t,e)}},{key:"on",value:function(t,n){return this.__listeners[t]||(this.__listeners[t]=[]),this.__listeners[t].push(n),this}},{key:"off",value:function(t,n){return this.__listeners[t]=n?this.__listeners[t].filter(function(t){return t!==n}):[],this}}]),t}();t.exports=a},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.forEach=n.sqrLen=n.sqrDist=n.dist=n.div=n.mul=n.sub=n.len=void 0,n.create=a,n.clone=function(t){var n=new e.ARRAY_TYPE(2);return n[0]=t[0],n[1]=t[1],n},n.fromValues=function(t,n){var r=new e.ARRAY_TYPE(2);return r[0]=t,r[1]=n,r},n.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t},n.set=function(t,n,r){return t[0]=n,t[1]=r,t},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t},n.subtract=o,n.multiply=i,n.divide=u,n.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t},n.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t},n.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t},n.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t},n.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t},n.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t},n.scaleAndAdd=function(t,n,r,e){return t[0]=n[0]+r[0]*e,t[1]=n[1]+r[1]*e,t},n.distance=c,n.squaredDistance=f,n.length=s,n.squaredLength=l,n.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t},n.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t},n.normalize=function(t,n){var r=n[0],e=n[1],a=r*r+e*e;a>0&&(a=1/Math.sqrt(a),t[0]=n[0]*a,t[1]=n[1]*a);return t},n.dot=function(t,n){return t[0]*n[0]+t[1]*n[1]},n.cross=function(t,n,r){var e=n[0]*r[1]-n[1]*r[0];return t[0]=t[1]=0,t[2]=e,t},n.lerp=function(t,n,r,e){var a=n[0],o=n[1];return t[0]=a+e*(r[0]-a),t[1]=o+e*(r[1]-o),t},n.random=function(t,n){n=n||1;var r=2*e.RANDOM()*Math.PI;return t[0]=Math.cos(r)*n,t[1]=Math.sin(r)*n,t},n.transformMat2=function(t,n,r){var e=n[0],a=n[1];return t[0]=r[0]*e+r[2]*a,t[1]=r[1]*e+r[3]*a,t},n.transformMat2d=function(t,n,r){var e=n[0],a=n[1];return t[0]=r[0]*e+r[2]*a+r[4],t[1]=r[1]*e+r[3]*a+r[5],t},n.transformMat3=function(t,n,r){var e=n[0],a=n[1];return t[0]=r[0]*e+r[3]*a+r[6],t[1]=r[1]*e+r[4]*a+r[7],t},n.transformMat4=function(t,n,r){var e=n[0],a=n[1];return t[0]=r[0]*e+r[4]*a+r[12],t[1]=r[1]*e+r[5]*a+r[13],t},n.str=function(t){return"vec2("+t[0]+", "+t[1]+")"},n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]},n.equals=function(t,n){var r=t[0],a=t[1],o=n[0],i=n[1];return Math.abs(r-o)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-i)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(i))};var e=function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}(r(1));function a(){var t=new e.ARRAY_TYPE(2);return t[0]=0,t[1]=0,t}function o(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t}function i(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t}function u(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t}function c(t,n){var r=n[0]-t[0],e=n[1]-t[1];return Math.sqrt(r*r+e*e)}function f(t,n){var r=n[0]-t[0],e=n[1]-t[1];return r*r+e*e}function s(t){var n=t[0],r=t[1];return Math.sqrt(n*n+r*r)}function l(t){var n=t[0],r=t[1];return n*n+r*r}n.len=s,n.sub=o,n.mul=i,n.div=u,n.dist=c,n.sqrDist=f,n.sqrLen=l,n.forEach=function(){var t=a();return function(n,r,e,a,o,i){var u=void 0,c=void 0;for(r||(r=2),e||(e=0),c=a?Math.min(a*r+e,n.length):n.length,u=e;u<c;u+=r)t[0]=n[u],t[1]=n[u+1],o(t,t,i),n[u]=t[0],n[u+1]=t[1];return n}}()},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.sqrLen=n.squaredLength=n.len=n.length=n.dot=n.mul=n.setReal=n.getReal=void 0,n.create=function(){var t=new e.ARRAY_TYPE(8);return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.clone=function(t){var n=new e.ARRAY_TYPE(8);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n[6]=t[6],n[7]=t[7],n},n.fromValues=function(t,n,r,a,o,i,u,c){var f=new e.ARRAY_TYPE(8);return f[0]=t,f[1]=n,f[2]=r,f[3]=a,f[4]=o,f[5]=i,f[6]=u,f[7]=c,f},n.fromRotationTranslationValues=function(t,n,r,a,o,i,u){var c=new e.ARRAY_TYPE(8);c[0]=t,c[1]=n,c[2]=r,c[3]=a;var f=.5*o,s=.5*i,l=.5*u;return c[4]=f*a+s*r-l*n,c[5]=s*a+l*t-f*r,c[6]=l*a+f*n-s*t,c[7]=-f*t-s*n-l*r,c},n.fromRotationTranslation=u,n.fromTranslation=function(t,n){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=.5*n[0],t[5]=.5*n[1],t[6]=.5*n[2],t[7]=0,t},n.fromRotation=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.fromMat4=function(t,n){var r=a.create();o.getRotation(r,n);var i=new e.ARRAY_TYPE(3);return o.getTranslation(i,n),u(t,r,i),t},n.copy=c,n.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.set=function(t,n,r,e,a,o,i,u,c){return t[0]=n,t[1]=r,t[2]=e,t[3]=a,t[4]=o,t[5]=i,t[6]=u,t[7]=c,t},n.getDual=function(t,n){return t[0]=n[4],t[1]=n[5],t[2]=n[6],t[3]=n[7],t},n.setDual=function(t,n){return t[4]=n[0],t[5]=n[1],t[6]=n[2],t[7]=n[3],t},n.getTranslation=function(t,n){var r=n[4],e=n[5],a=n[6],o=n[7],i=-n[0],u=-n[1],c=-n[2],f=n[3];return t[0]=2*(r*f+o*i+e*c-a*u),t[1]=2*(e*f+o*u+a*i-r*c),t[2]=2*(a*f+o*c+r*u-e*i),t},n.translate=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=.5*r[0],c=.5*r[1],f=.5*r[2],s=n[4],l=n[5],h=n[6],v=n[7];return t[0]=e,t[1]=a,t[2]=o,t[3]=i,t[4]=i*u+a*f-o*c+s,t[5]=i*c+o*u-e*f+l,t[6]=i*f+e*c-a*u+h,t[7]=-e*u-a*c-o*f+v,t},n.rotateX=function(t,n,r){var e=-n[0],o=-n[1],i=-n[2],u=n[3],c=n[4],f=n[5],s=n[6],l=n[7],h=c*u+l*e+f*i-s*o,v=f*u+l*o+s*e-c*i,d=s*u+l*i+c*o-f*e,p=l*u-c*e-f*o-s*i;return a.rotateX(t,n,r),e=t[0],o=t[1],i=t[2],u=t[3],t[4]=h*u+p*e+v*i-d*o,t[5]=v*u+p*o+d*e-h*i,t[6]=d*u+p*i+h*o-v*e,t[7]=p*u-h*e-v*o-d*i,t},n.rotateY=function(t,n,r){var e=-n[0],o=-n[1],i=-n[2],u=n[3],c=n[4],f=n[5],s=n[6],l=n[7],h=c*u+l*e+f*i-s*o,v=f*u+l*o+s*e-c*i,d=s*u+l*i+c*o-f*e,p=l*u-c*e-f*o-s*i;return a.rotateY(t,n,r),e=t[0],o=t[1],i=t[2],u=t[3],t[4]=h*u+p*e+v*i-d*o,t[5]=v*u+p*o+d*e-h*i,t[6]=d*u+p*i+h*o-v*e,t[7]=p*u-h*e-v*o-d*i,t},n.rotateZ=function(t,n,r){var e=-n[0],o=-n[1],i=-n[2],u=n[3],c=n[4],f=n[5],s=n[6],l=n[7],h=c*u+l*e+f*i-s*o,v=f*u+l*o+s*e-c*i,d=s*u+l*i+c*o-f*e,p=l*u-c*e-f*o-s*i;return a.rotateZ(t,n,r),e=t[0],o=t[1],i=t[2],u=t[3],t[4]=h*u+p*e+v*i-d*o,t[5]=v*u+p*o+d*e-h*i,t[6]=d*u+p*i+h*o-v*e,t[7]=p*u-h*e-v*o-d*i,t},n.rotateByQuatAppend=function(t,n,r){var e=r[0],a=r[1],o=r[2],i=r[3],u=n[0],c=n[1],f=n[2],s=n[3];return t[0]=u*i+s*e+c*o-f*a,t[1]=c*i+s*a+f*e-u*o,t[2]=f*i+s*o+u*a-c*e,t[3]=s*i-u*e-c*a-f*o,u=n[4],c=n[5],f=n[6],s=n[7],t[4]=u*i+s*e+c*o-f*a,t[5]=c*i+s*a+f*e-u*o,t[6]=f*i+s*o+u*a-c*e,t[7]=s*i-u*e-c*a-f*o,t},n.rotateByQuatPrepend=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=r[0],c=r[1],f=r[2],s=r[3];return t[0]=e*s+i*u+a*f-o*c,t[1]=a*s+i*c+o*u-e*f,t[2]=o*s+i*f+e*c-a*u,t[3]=i*s-e*u-a*c-o*f,u=r[4],c=r[5],f=r[6],s=r[7],t[4]=e*s+i*u+a*f-o*c,t[5]=a*s+i*c+o*u-e*f,t[6]=o*s+i*f+e*c-a*u,t[7]=i*s-e*u-a*c-o*f,t},n.rotateAroundAxis=function(t,n,r,a){if(Math.abs(a)<e.EPSILON)return c(t,n);var o=Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);a*=.5;var i=Math.sin(a),u=i*r[0]/o,f=i*r[1]/o,s=i*r[2]/o,l=Math.cos(a),h=n[0],v=n[1],d=n[2],p=n[3];t[0]=h*l+p*u+v*s-d*f,t[1]=v*l+p*f+d*u-h*s,t[2]=d*l+p*s+h*f-v*u,t[3]=p*l-h*u-v*f-d*s;var M=n[4],b=n[5],m=n[6],y=n[7];return t[4]=M*l+y*u+b*s-m*f,t[5]=b*l+y*f+m*u-M*s,t[6]=m*l+y*s+M*f-b*u,t[7]=y*l-M*u-b*f-m*s,t},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t[4]=n[4]+r[4],t[5]=n[5]+r[5],t[6]=n[6]+r[6],t[7]=n[7]+r[7],t},n.multiply=f,n.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t[4]=n[4]*r,t[5]=n[5]*r,t[6]=n[6]*r,t[7]=n[7]*r,t},n.lerp=function(t,n,r,e){var a=1-e;s(n,r)<0&&(e=-e);return t[0]=n[0]*a+r[0]*e,t[1]=n[1]*a+r[1]*e,t[2]=n[2]*a+r[2]*e,t[3]=n[3]*a+r[3]*e,t[4]=n[4]*a+r[4]*e,t[5]=n[5]*a+r[5]*e,t[6]=n[6]*a+r[6]*e,t[7]=n[7]*a+r[7]*e,t},n.invert=function(t,n){var r=h(n);return t[0]=-n[0]/r,t[1]=-n[1]/r,t[2]=-n[2]/r,t[3]=n[3]/r,t[4]=-n[4]/r,t[5]=-n[5]/r,t[6]=-n[6]/r,t[7]=n[7]/r,t},n.conjugate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=n[3],t[4]=-n[4],t[5]=-n[5],t[6]=-n[6],t[7]=n[7],t},n.normalize=function(t,n){var r=h(n);r>0&&(r=Math.sqrt(r),t[0]=n[0]/r,t[1]=n[1]/r,t[2]=n[2]/r,t[3]=n[3]/r,t[4]=n[4]/r,t[5]=n[5]/r,t[6]=n[6]/r,t[7]=n[7]/r);return t},n.str=function(t){return"quat2("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+")"},n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]&&t[6]===n[6]&&t[7]===n[7]},n.equals=function(t,n){var r=t[0],a=t[1],o=t[2],i=t[3],u=t[4],c=t[5],f=t[6],s=t[7],l=n[0],h=n[1],v=n[2],d=n[3],p=n[4],M=n[5],b=n[6],m=n[7];return Math.abs(r-l)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(l))&&Math.abs(a-h)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(h))&&Math.abs(o-v)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(v))&&Math.abs(i-d)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(d))&&Math.abs(u-p)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(p))&&Math.abs(c-M)<=e.EPSILON*Math.max(1,Math.abs(c),Math.abs(M))&&Math.abs(f-b)<=e.EPSILON*Math.max(1,Math.abs(f),Math.abs(b))&&Math.abs(s-m)<=e.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))};var e=i(r(1)),a=i(r(10)),o=i(r(11));function i(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}function u(t,n,r){var e=.5*r[0],a=.5*r[1],o=.5*r[2],i=n[0],u=n[1],c=n[2],f=n[3];return t[0]=i,t[1]=u,t[2]=c,t[3]=f,t[4]=e*f+a*c-o*u,t[5]=a*f+o*i-e*c,t[6]=o*f+e*u-a*i,t[7]=-e*i-a*u-o*c,t}function c(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t}n.getReal=a.copy;n.setReal=a.copy;function f(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=r[4],c=r[5],f=r[6],s=r[7],l=n[4],h=n[5],v=n[6],d=n[7],p=r[0],M=r[1],b=r[2],m=r[3];return t[0]=e*m+i*p+a*b-o*M,t[1]=a*m+i*M+o*p-e*b,t[2]=o*m+i*b+e*M-a*p,t[3]=i*m-e*p-a*M-o*b,t[4]=e*s+i*u+a*f-o*c+l*m+d*p+h*b-v*M,t[5]=a*s+i*c+o*u-e*f+h*m+d*M+v*p-l*b,t[6]=o*s+i*f+e*c-a*u+v*m+d*b+l*M-h*p,t[7]=i*s-e*u-a*c-o*f+d*m-l*p-h*M-v*b,t}n.mul=f;var s=n.dot=a.dot;var l=n.length=a.length,h=(n.len=l,n.squaredLength=a.squaredLength);n.sqrLen=h},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.sub=n.mul=void 0,n.create=function(){var t=new e.ARRAY_TYPE(6);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},n.clone=function(t){var n=new e.ARRAY_TYPE(6);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n},n.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t},n.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},n.fromValues=function(t,n,r,a,o,i){var u=new e.ARRAY_TYPE(6);return u[0]=t,u[1]=n,u[2]=r,u[3]=a,u[4]=o,u[5]=i,u},n.set=function(t,n,r,e,a,o,i){return t[0]=n,t[1]=r,t[2]=e,t[3]=a,t[4]=o,t[5]=i,t},n.invert=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=n[4],u=n[5],c=r*o-e*a;if(!c)return null;return c=1/c,t[0]=o*c,t[1]=-e*c,t[2]=-a*c,t[3]=r*c,t[4]=(a*u-o*i)*c,t[5]=(e*i-r*u)*c,t},n.determinant=function(t){return t[0]*t[3]-t[1]*t[2]},n.multiply=a,n.rotate=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=Math.sin(r),s=Math.cos(r);return t[0]=e*s+o*f,t[1]=a*s+i*f,t[2]=e*-f+o*s,t[3]=a*-f+i*s,t[4]=u,t[5]=c,t},n.scale=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=r[0],s=r[1];return t[0]=e*f,t[1]=a*f,t[2]=o*s,t[3]=i*s,t[4]=u,t[5]=c,t},n.translate=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=r[0],s=r[1];return t[0]=e,t[1]=a,t[2]=o,t[3]=i,t[4]=e*f+o*s+u,t[5]=a*f+i*s+c,t},n.fromRotation=function(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=-r,t[3]=e,t[4]=0,t[5]=0,t},n.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t[4]=0,t[5]=0,t},n.fromTranslation=function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=n[0],t[5]=n[1],t},n.str=function(t){return"mat2d("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+")"},n.frob=function(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2)+Math.pow(t[2],2)+Math.pow(t[3],2)+Math.pow(t[4],2)+Math.pow(t[5],2)+1)},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t[4]=n[4]+r[4],t[5]=n[5]+r[5],t},n.subtract=o,n.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t[4]=n[4]*r,t[5]=n[5]*r,t},n.multiplyScalarAndAdd=function(t,n,r,e){return t[0]=n[0]+r[0]*e,t[1]=n[1]+r[1]*e,t[2]=n[2]+r[2]*e,t[3]=n[3]+r[3]*e,t[4]=n[4]+r[4]*e,t[5]=n[5]+r[5]*e,t},n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]},n.equals=function(t,n){var r=t[0],a=t[1],o=t[2],i=t[3],u=t[4],c=t[5],f=n[0],s=n[1],l=n[2],h=n[3],v=n[4],d=n[5];return Math.abs(r-f)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(f))&&Math.abs(a-s)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(o-l)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(l))&&Math.abs(i-h)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(h))&&Math.abs(u-v)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(v))&&Math.abs(c-d)<=e.EPSILON*Math.max(1,Math.abs(c),Math.abs(d))};var e=function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}(r(1));function a(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=n[4],c=n[5],f=r[0],s=r[1],l=r[2],h=r[3],v=r[4],d=r[5];return t[0]=e*f+o*s,t[1]=a*f+i*s,t[2]=e*l+o*h,t[3]=a*l+i*h,t[4]=e*v+o*d+u,t[5]=a*v+i*d+c,t}function o(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t[4]=n[4]-r[4],t[5]=n[5]-r[5],t}n.mul=a,n.sub=o},function(t,n,r){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.sub=n.mul=void 0,n.create=function(){var t=new e.ARRAY_TYPE(4);return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},n.clone=function(t){var n=new e.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},n.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},n.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},n.fromValues=function(t,n,r,a){var o=new e.ARRAY_TYPE(4);return o[0]=t,o[1]=n,o[2]=r,o[3]=a,o},n.set=function(t,n,r,e,a){return t[0]=n,t[1]=r,t[2]=e,t[3]=a,t},n.transpose=function(t,n){if(t===n){var r=n[1];t[1]=n[2],t[2]=r}else t[0]=n[0],t[1]=n[2],t[2]=n[1],t[3]=n[3];return t},n.invert=function(t,n){var r=n[0],e=n[1],a=n[2],o=n[3],i=r*o-a*e;if(!i)return null;return i=1/i,t[0]=o*i,t[1]=-e*i,t[2]=-a*i,t[3]=r*i,t},n.adjoint=function(t,n){var r=n[0];return t[0]=n[3],t[1]=-n[1],t[2]=-n[2],t[3]=r,t},n.determinant=function(t){return t[0]*t[3]-t[2]*t[1]},n.multiply=a,n.rotate=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=Math.sin(r),c=Math.cos(r);return t[0]=e*c+o*u,t[1]=a*c+i*u,t[2]=e*-u+o*c,t[3]=a*-u+i*c,t},n.scale=function(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=r[0],c=r[1];return t[0]=e*u,t[1]=a*u,t[2]=o*c,t[3]=i*c,t},n.fromRotation=function(t,n){var r=Math.sin(n),e=Math.cos(n);return t[0]=e,t[1]=r,t[2]=-r,t[3]=e,t},n.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t},n.str=function(t){return"mat2("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+")"},n.frob=function(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2)+Math.pow(t[2],2)+Math.pow(t[3],2))},n.LDU=function(t,n,r,e){return t[2]=e[2]/e[0],r[0]=e[0],r[1]=e[1],r[3]=e[3]-t[2]*r[1],[t,n,r]},n.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},n.subtract=o,n.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},n.equals=function(t,n){var r=t[0],a=t[1],o=t[2],i=t[3],u=n[0],c=n[1],f=n[2],s=n[3];return Math.abs(r-u)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(a-c)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(c))&&Math.abs(o-f)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(f))&&Math.abs(i-s)<=e.EPSILON*Math.max(1,Math.abs(i),Math.abs(s))},n.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},n.multiplyScalarAndAdd=function(t,n,r,e){return t[0]=n[0]+r[0]*e,t[1]=n[1]+r[1]*e,t[2]=n[2]+r[2]*e,t[3]=n[3]+r[3]*e,t};var e=function(t){if(t&&t.__esModule)return t;var n={};if(null!=t)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n.default=t,n}(r(1));function a(t,n,r){var e=n[0],a=n[1],o=n[2],i=n[3],u=r[0],c=r[1],f=r[2],s=r[3];return t[0]=e*u+o*c,t[1]=a*u+i*c,t[2]=e*f+o*s,t[3]=a*f+i*s,t}function o(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}n.mul=a,n.sub=o},function(t,n,r){"use strict";r.r(n);var e=r(2),a=r(7),o=r.n(a),i=r(6),u=r.n(i);o()(function(t,n){var r=t.width,a=t.height,i=t.depth,c=t.spacing,f=t.data,s=(t.haveWebgl2,t.depthStart),l=t.depthEnd;l!==i-1&&l--;var h=l-s+1,v=new Uint8Array(r*a*h*3),d=new Float32Array(r*a*h),p=r*a,M=0,b=0,m=e.vec3.create();e.vec3.set(m,(f[M+1]-f[M])/c[0],(f[M+r]-f[M])/c[1],(f[M+p]-f[M])/c[2]);for(var y=e.vec3.length(m),g=-1,x=s;x<=l;++x){var w=0;x===i-1&&(w=-p);for(var A=0;A<a;++A){var O=0;A===a-1&&(O=-r);for(var E=0;E<r;++E){var P=M+w+O;E===r-1&&P--,e.vec3.set(m,(f[P+1]-f[P])/c[0],(f[P+r]-f[P])/c[1],(f[P+p]-f[P])/c[2]);var I=e.vec3.length(m);e.vec3.normalize(m,m),v[b++]=127.5+127.5*m[0],v[b++]=127.5+127.5*m[1],v[b++]=127.5+127.5*m[2],d[M++]=I}}}var S=u.a.arrayMin(d),_=u.a.arrayMax(d),T={subGradients:v,subMagnitudes:d,subMinMag:y=Math.min(S,y),subMaxMag:g=Math.max(_,g),subDepthStart:s,subDepthEnd:l};return Promise.resolve(new o.a.TransferableResponse(T,[T.subGradients.buffer,T.subMagnitudes.buffer]))})}]);',null)}},function(e,t){},function(t,n,r){var a;!function(o,s){var u,l=this,c=256,f=6,p="random",M=s.pow(c,f),m=s.pow(2,52),v=2*m,d=c-1;function e(e,t,n){function r(){for(var e=i.g(f),t=M,n=0;e<m;)e=(e+n)*c,t*=c,n=i.g(1);for(;v<=e;)e/=2,t/=2,n>>>=1;return(e+n)/t}var a=[],e=h(function e(t,n){var r,a=[],i=typeof t;if(n&&"object"==i)for(r in t)try{a.push(e(t[r],n-1))}catch(e){}return a.length?a:"string"==i?t:t+"\0"}((t=1==t?{entropy:!0}:t||{}).entropy?[e,g(o)]:null==e?function(){try{var e;return u&&(e=u.randomBytes)?e=e(c):(e=new Uint8Array(c),(l.crypto||l.msCrypto).getRandomValues(e)),g(e)}catch(e){var t=l.navigator,t=t&&t.plugins;return[+new Date,l,t,l.screen,g(o)]}}():e,3),a),i=new function(e){var t,n=e.length,o=this,r=0,a=o.i=o.j=0,i=o.S=[];for(n||(e=[n++]);r<c;)i[r]=r++;for(r=0;r<c;r++)i[r]=i[a=d&a+e[r%n]+(t=i[r])],i[a]=t;(o.g=function(e){for(var t,n=0,r=o.i,a=o.j,i=o.S;e--;)t=i[r=d&r+1],n=n*c+i[d&(i[r]=i[a=d&a+t])+(i[a]=t)];return o.i=r,o.j=a,n})(c)}(a);return r.int32=function(){return 0|i.g(4)},r.quick=function(){return i.g(4)/4294967296},r.double=r,h(g(i.S),o),(t.pass||n||function(e,t,n,r){return r&&(r.S&&A(r,i),e.state=function(){return A(i,{})}),n?(s[p]=e,t):e})(r,e,"global"in t?t.global:this==s,t.state)}function A(e,t){return t.i=e.i,t.j=e.j,t.S=e.S.slice(),t}function h(e,t){for(var n,r=e+"",a=0;a<r.length;)t[d&a]=d&(n^=19*t[d&a])+r.charCodeAt(a++);return g(t)}function g(e){return String.fromCharCode.apply(0,e)}if(s["seed"+p]=e,h(s.random(),o),"object"==typeof t&&t.exports){t.exports=e;try{u=r(223)}catch(e){}}else void 0===(a=function(){return e}.call(n,r,n,t))||(t.exports=a)}([],Math)},function(e,r,i){!function(e){var n;!function(e){function a(e,t){return t.a=e.a,t.b=e.b,t.c=e.c,t.d=e.d,t}function t(e,t){function n(){return(r.next()>>>0)/4294967296}var r=new function(e){var a=this,t="";a.next=function(){var e=(e=a.b)<<25^e>>>7^(t=a.c),t=t-(n=a.d)|0,n=n<<24^n>>>8^(r=a.a),r=r-e|0;return a.b=e=e<<20^e>>>12^t,a.c=t=t-n|0,a.d=n<<16^t>>>16^r,a.a=r-e|0},a.a=0,a.b=0,a.c=-1640531527,a.d=1367130551,e===Math.floor(e)?(a.a=e/4294967296|0,a.b=0|e):t+=e;for(var n=0;n<t.length+20;n++)a.b^=0|t.charCodeAt(n),a.next()}(e),e=t&&t.state;return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,e&&("object"==typeof e&&a(e,r),n.state=function(){return a(r,{})}),n}e&&e.exports?e.exports=t:i(6)&&i(17)?void 0===(n=function(){return t}.call(r,i,r,e))||(e.exports=n):this.tychei=t}("object"==typeof e&&e,i(6))}.call(this,i(18)(e))},function(e,r,i){!function(e){var n;!function(e){function a(e,t){return t.i=e.i,t.w=e.w,t.X=e.X.slice(),t}function t(e,t){function n(){return(r.next()>>>0)/4294967296}var r=new function(c){var e,t,n,r,a,i=this,o=(i.next=function(){var e,t,n=i.w,r=i.X,a=i.i;return i.w=n=n+1640531527|0,t=r[a+34&127],e=r[a=a+1&127],t=r[a]=(t^=t<<13)^t>>>15^((e^=e<<17)^e>>>12),i.i=a,t+(n^n>>>16)|0},i),s=c,u=[],l=128;for(s===(0|s)?(t=s,s=null):(s+="\0",t=0,l=Math.max(l,s.length)),n=0,r=-32;r<l;++r)s&&(t^=s.charCodeAt((r+32)%s.length)),0===r&&(a=t),t=(t=(t=(t^=t<<10)^t>>>15)^t<<4)^t>>>13,0<=r&&(n=0==(e=u[127&r]^=t+(a=a+1640531527|0))?n+1:0);for(128<=n&&(u[127&(s&&s.length||0)]=-1),n=127,r=512;0<r;--r)t=u[n+34&127],e=u[n=n+1&127],u[n]=(t=(t^=t<<13)^t>>>15)^(e=(e^=e<<17)^e>>>12);o.w=a,o.X=u,o.i=n}(e=null==e?+new Date:e),e=t&&t.state;return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,e&&(e.X&&a(e,r),n.state=function(){return a(r,{})}),n}e&&e.exports?e.exports=t:i(6)&&i(17)?void 0===(n=function(){return t}.call(r,i,r,e))||(e.exports=n):this.xor4096=t}("object"==typeof e&&e,i(6))}.call(this,i(18)(e))},function(e,r,i){!function(e){var n;!function(e){function a(e,t){return t.x=e.x.slice(),t.i=e.i,t}function t(e,t){function n(){return(r.next()>>>0)/4294967296}var r=new function(e){var t,a=this,n=(a.next=function(){var e=a.x,t=a.i,n=e[t],r=(n^=n>>>7)^n<<24;return r=(r=(r^=(n=e[t+1&7])^n>>>10)^((n=e[t+3&7])^n>>>3))^((n=e[t+4&7])^n<<7),n=e[t+7&7],r^=(n^=n<<13)^n<<9,e[t]=r,a.i=t+1&7,r},a),r=e,i=[];if(r===(0|r))i[0]=r;else for(r=""+r,t=0;t<r.length;++t)i[7&t]=i[7&t]<<15^r.charCodeAt(t)+i[t+1&7]<<13;for(;i.length<8;)i.push(0);for(t=0;t<8&&0===i[t];++t);for(8==t?i[7]=-1:i[t],n.x=i,n.i=0,t=256;0<t;--t)n.next()}(e=null==e?+new Date:e),e=t&&t.state;return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,e&&(e.x&&a(e,r),n.state=function(){return a(r,{})}),n}e&&e.exports?e.exports=t:i(6)&&i(17)?void 0===(n=function(){return t}.call(r,i,r,e))||(e.exports=n):this.xorshift7=t}("object"==typeof e&&e,i(6))}.call(this,i(18)(e))},function(e,r,i){!function(e){var n;!function(e){function a(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t.v=e.v,t.d=e.d,t}function t(e,t){function n(){return(r.next()>>>0)/4294967296}var r=new function(e){var t=this,n="";t.next=function(){var e=t.x^t.x>>>2;return t.x=t.y,t.y=t.z,t.z=t.w,t.w=t.v,(t.d=t.d+362437|0)+(t.v=t.v^t.v<<4^e^e<<1)|0},t.x=0,t.y=0,t.z=0,t.w=0,e===((t.v=0)|e)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=0|n.charCodeAt(r),r==n.length&&(t.d=t.x<<10^t.x>>>4),t.next()}(e),e=t&&t.state;return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,e&&("object"==typeof e&&a(e,r),n.state=function(){return a(r,{})}),n}e&&e.exports?e.exports=t:i(6)&&i(17)?void 0===(n=function(){return t}.call(r,i,r,e))||(e.exports=n):this.xorwow=t}("object"==typeof e&&e,i(6))}.call(this,i(18)(e))},function(e,r,i){!function(e){var n;!function(e){function a(e,t){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t}function t(e,t){function n(){return(r.next()>>>0)/4294967296}var r=new function(e){var t=this,n="";t.x=0,t.y=0,t.z=0,t.w=0,t.next=function(){var e=t.x^t.x<<11;return t.x=t.y,t.y=t.z,t.z=t.w,t.w^=t.w>>>19^e^e>>>8},e===(0|e)?t.x=e:n+=e;for(var r=0;r<n.length+64;r++)t.x^=0|n.charCodeAt(r),t.next()}(e),e=t&&t.state;return n.double=function(){do{var e=((r.next()>>>11)+(r.next()>>>0)/4294967296)/(1<<21)}while(0===e);return e},n.int32=r.next,n.quick=n,e&&("object"==typeof e&&a(e,r),n.state=function(){return a(r,{})}),n}e&&e.exports?e.exports=t:i(6)&&i(17)?void 0===(n=function(){return t}.call(r,i,r,e))||(e.exports=n):this.xor128=t}("object"==typeof e&&e,i(6))}.call(this,i(18)(e))},function(e,r,i){!function(e){var n;!function(e){function a(e,t){return t.c=e.c,t.s0=e.s0,t.s1=e.s1,t.s2=e.s2,t}function t(e,t){var n=new function(e){var r,t=this,n=(r=4022871197,function(e){e=e.toString();for(var t=0;t<e.length;t++){var n=.02519603282416938*(r+=e.charCodeAt(t));r=(n=(n-=r=n>>>0)*r)>>>0,r+=4294967296*(n-=r)}return 2.3283064365386963e-10*(r>>>0)});t.next=function(){var e=2091639*t.s0+2.3283064365386963e-10*t.c;return t.s0=t.s1,t.s1=t.s2,t.s2=e-(t.c=0|e)},t.c=1,t.s0=n(" "),t.s1=n(" "),t.s2=n(" "),t.s0-=n(e),t.s0<0&&(t.s0+=1),t.s1-=n(e),t.s1<0&&(t.s1+=1),t.s2-=n(e),t.s2<0&&(t.s2+=1)}(e),e=t&&t.state,r=n.next;return r.int32=function(){return 4294967296*n.next()|0},r.double=function(){return r()+11102230246251565e-32*(2097152*r()|0)},r.quick=r,e&&("object"==typeof e&&a(e,n),r.state=function(){return a(n,{})}),r}e&&e.exports?e.exports=t:i(6)&&i(17)?void 0===(n=function(){return t}.call(r,i,r,e))||(e.exports=n):this.alea=t}("object"==typeof e&&e,i(6))}.call(this,i(18)(e))},function(e,t,n){var r=n(230),a=n(229),i=n(228),o=n(227),s=n(226),u=n(225),n=n(224);n.alea=r,n.xor128=a,n.xorwow=i,n.xorshift7=o,n.xor4096=s,n.tychei=u,e.exports=n},function(e,t,n){"use strict";function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function a(){var e=this;if(!(e instanceof a))throw new TypeError("Cannot call a class as a function");Object.defineProperty(this,"__listeners",{value:{},enumerable:!1,writable:!1})}(function(e,t,n){t&&r(e.prototype,t),n&&r(e,n)})(a,[{key:"emit",value:function(e){for(var t=arguments.length,n=Array(1<t?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var a=!0,i=!1,o=void 0;try{for(var s,u=this.__listeners[e][Symbol.iterator]();!(a=(s=u.next()).done);a=!0)s.value.apply(void 0,n)}catch(e){i=!0,o=e}finally{try{!a&&u.return&&u.return()}finally{if(i)throw o}}return this}},{key:"once",value:function(t,n){var r=this;return this.on(t,function e(){r.off(t,e),n.apply(void 0,arguments)})}},{key:"on",value:function(e,t){return this.__listeners[e]||(this.__listeners[e]=[]),this.__listeners[e].push(t),this}},{key:"off",value:function(e,t){return this.__listeners[e]=t?this.__listeners[e].filter(function(e){return e!==t}):[],this}}]),e.exports=a},function(e,t,n){"use strict";var i=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e)){var n=e,r=t,a=[],i=!0,e=!1,t=void 0;try{for(var o,s=n[Symbol.iterator]();!(i=(o=s.next()).done)&&(a.push(o.value),!r||a.length!==r);i=!0);}catch(n){e=!0,t=n}finally{try{!i&&s.return&&s.return()}finally{if(e)throw t}}return a}throw new TypeError("Invalid attempt to destructure non-iterable instance")},a=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e};function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function o(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var s=n(232),n=function(){function r(e){var t=this;if(!(t instanceof r))throw new TypeError("Cannot call a class as a function");t=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,(r.__proto__||Object.getPrototypeOf(r)).call(this));return t._messageId=1,t._messages=new Map,t._worker=e,t._worker.onmessage=t._onMessage.bind(t),t._id=Math.ceil(1e7*Math.random()),t}var e=r,t=s;if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);return e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t),a(r,[{key:"terminate",value:function(){this._worker.terminate()}},{key:"isFree",value:function(){return 0===this._messages.size}},{key:"jobsLength",value:function(){return this._messages.size}},{key:"exec",value:function(r){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null,i=this,o=2<arguments.length&&void 0!==arguments[2]?arguments[2]:[],s=arguments[3];return new Promise(function(e,t){var n=i._messageId++;i._messages.set(n,[e,t,s]),i._worker.postMessage([n,a,r],o||[])})}},{key:"postMessage",value:function(){var r=0<arguments.length&&void 0!==arguments[0]?arguments[0]:null,a=this,i=1<arguments.length&&void 0!==arguments[1]?arguments[1]:[],o=arguments[2];return new Promise(function(e,t){var n=a._messageId++;a._messages.set(n,[e,t,o]),a._worker.postMessage([n,r],i||[])})}},{key:"emit",value:function(e){for(var t=arguments.length,n=Array(1<t?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];this._worker.postMessage({eventName:e,args:n})}},{key:"_onMessage",value:function(e){if(!Array.isArray(e.data)&&e.data.eventName)return(t=function e(t,n,r){null===t&&(t=Function.prototype);var a=Object.getOwnPropertyDescriptor(t,n);if(void 0===a)return null===(t=Object.getPrototypeOf(t))?void 0:e(t,n,r);if("value"in a)return a.value;t=a.get;return void 0!==t?t.call(r):void 0}(r.prototype.__proto__||Object.getPrototypeOf(r.prototype),"emit",this)).call.apply(t,[this,e.data.eventName].concat(o(e.data.args)));t=e.data;var t,e=Array.isArray(t)?t:Array.from(t),n=e[0],e=e.slice(1);if(1===n)this._onEvent.apply(this,o(e));else{if(0!==n)throw new Error("Wrong message type '"+n+"'");this._onResult.apply(this,o(e))}}},{key:"_onResult",value:function(e,t,n){var r=this._messages.get(e),r=i(r,2),a=r[0],r=r[1];return this._messages.delete(e),(1===t?a:r)(n)}},{key:"_onEvent",value:function(e,t,n){e=this._messages.get(e),e=i(e,3)[2];e&&e(t,n)}}]),r}();e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newInstance=void 0,t.extend=o;var r=i(n(0)),u=i(n(51)),a=i(n(101));function i(e){return e&&e.__esModule?e:{default:e}}var l={opaqueActorCount:0,translucentActorCount:0,volumeCount:0,framebuffer:null,depthRequested:!1};function o(e,t){var o,s,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};Object.assign(t,l,n),a.default.extend(e,t,n),r.default.get(e,t,["framebuffer"]),r.default.setGet(e,t,["depthRequested"]),o=e,(s=t).classHierarchy.push("vtkForwardPass"),o.traverse=function(e){if(!s.deleted){s.currentParent=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null,o.setCurrentOperation("buildPass"),e.traverse(o);for(var t=e.getChildren(),n=0;n<t.length;n++){var r,a,i=t[n];s.opaqueActorCount=0,s.translucentActorCount=0,s.volumeCount=0,o.setCurrentOperation("queryPass"),i.traverse(o),(0<s.opaqueActorCount&&0<s.volumeCount||s.depthRequested)&&(r=e.getFramebufferSize(),null===s.framebuffer&&(s.framebuffer=u.default.newInstance()),s.framebuffer.setOpenGLRenderWindow(e),s.framebuffer.saveCurrentBindingsAndBuffers(),null!==(a=s.framebuffer.getSize())&&a[0]===r[0]&&a[1]===r[1]||(s.framebuffer.create(r[0],r[1]),s.framebuffer.populateFramebuffer()),s.framebuffer.bind(),o.setCurrentOperation("opaqueZBufferPass"),i.traverse(o),s.framebuffer.restorePreviousBindingsAndBuffers()),o.setCurrentOperation("cameraPass"),i.traverse(o),0<s.opaqueActorCount&&(o.setCurrentOperation("opaquePass"),i.traverse(o)),0<s.translucentActorCount&&(o.setCurrentOperation("translucentPass"),i.traverse(o)),0<s.volumeCount&&(o.setCurrentOperation("volumePass"),i.traverse(o))}}},o.getZBufferTexture=function(){return s.framebuffer?s.framebuffer.getColorTexture():null},o.incrementOpaqueActorCount=function(){return s.opaqueActorCount++},o.incrementTranslucentActorCount=function(){return s.translucentActorCount++},o.incrementVolumeCount=function(){return s.volumeCount++}}n=t.newInstance=r.default.newInstance(o,"vtkForwardPass");t.default={newInstance:n,extend:o}},function(e,t,n){!function(e,g){!function(n,c){"use strict";var r,a,i,o,s,e,u,f,t;function d(e){e.source===n&&"string"==typeof e.data&&0===e.data.indexOf(t)&&l(+e.data.slice(t.length))}function h(e){delete i[e]}function l(e){if(o)setTimeout(l,0,e);else{var t=i[e];if(t){o=!0;try{var n=t.callback,r=t.args;switch(r.length){case 0:n();break;case 1:n(r[0]);break;case 2:n(r[0],r[1]);break;case 3:n(r[0],r[1],r[2]);break;default:n.apply(c,r)}}finally{h(e),o=!1}}}}n.setImmediate||(a=1,o=!(i={}),s=n.document,e=(e=Object.getPrototypeOf&&Object.getPrototypeOf(n))&&e.setTimeout?e:n,r="[object process]"==={}.toString.call(n.process)?function(e){g.nextTick(function(){l(e)})}:function(){var e,t;if(n.postMessage&&!n.importScripts)return e=!0,t=n.onmessage,n.onmessage=function(){e=!1},n.postMessage("","*"),n.onmessage=t,e}()?(t="setImmediate$"+Math.random()+"$",n.addEventListener?n.addEventListener("message",d,!1):n.attachEvent("onmessage",d),function(e){n.postMessage(t+e,"*")}):n.MessageChannel?((f=new MessageChannel).port1.onmessage=function(e){l(e.data)},function(e){f.port2.postMessage(e)}):s&&"onreadystatechange"in s.createElement("script")?(u=s.documentElement,function(e){var t=s.createElement("script");t.onreadystatechange=function(){l(e),t.onreadystatechange=null,u.removeChild(t),t=null},u.appendChild(t)}):function(e){setTimeout(l,0,e)},e.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];return i[a]={callback:e,args:t},r(a),a++},e.clearImmediate=h)}("undefined"==typeof self?void 0===e?this:e:self)}.call(this,n(8),n(36))},function(c,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.newInstance=void 0,e.extend=r;var a=n(t(0)),i=n(t(102)),o=n(t(172)),s=n(t(167)),u=n(t(88));function n(e){return e&&e.__esModule?e:{default:e}}t(85),t(7),t(84),t(83),t(48);var l={background:[.32,.34,.43],listenWindowResize:!0,container:null};function r(e,t){var n,r;Object.assign(t,l,2<arguments.length&&void 0!==arguments[2]?arguments[2]:{}),a.default.obj(e,t),a.default.get(e,t,["renderWindow","renderer","openGlRenderWindow","interactor","container"]),a.default.event(e,t,"resize"),n=t,r=(t=e).invokeResize,delete t.invokeResize,n.renderWindow=s.default.newInstance(),n.renderer=o.default.newInstance(),n.renderWindow.addRenderer(n.renderer),n.openGlRenderWindow=i.default.newInstance(),n.renderWindow.addView(n.openGlRenderWindow),n.interactor=u.default.newInstance(),n.interactor.setView(n.openGlRenderWindow),n.interactor.initialize(),t.setBackground=n.renderer.setBackground,t.setBackground.apply(t,function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}(n.background)),t.resize=function(){var e,t;n.container&&(e=n.container.getBoundingClientRect(),t=window.devicePixelRatio||1,n.openGlRenderWindow.setSize(Math.floor(e.width*t),Math.floor(e.height*t)),r(),n.renderWindow.render())},t.setContainer=function(e){n.container&&(n.openGlRenderWindow.setContainer(n.container),n.interactor.unbindEvents(n.container)),n.container=e,n.container&&(n.openGlRenderWindow.setContainer(n.container),n.interactor.bindEvents(n.container))},n.listenWindowResize&&window.addEventListener("resize",t.resize),t.resize()}t=e.newInstance=a.default.newInstance(r);e.default={newInstance:t,extend:r}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createSceneImporter=function(e,s){var u=!1,l=document.createElement("div"),c=(l.style.position="relative",l.style.width="100%",l.style.height="100%",document.getElementById(e).appendChild(l),document.createElement("div"));c.style.background="red",c.style.flex="none",c.style.fontSize="50px",c.style.color="black",c.style.zIndex="1",c.style.background="rgba(128,128,128,.5)",c.style.padding="20px",c.style.borderRadius="10px",c.style.userSelect="none",c.style.width="100%",c.style.height="100%",c.style.verticalAlign="middle",c.style.textAlign="center",l.appendChild(c),r.default.fetchBinary(s.fileURL,{progressCallback:function(e){e=Math.floor(100*e.loaded/e.total);c.innerHTML="Loading "+e+"%"}}).then(function(e){l.removeChild(c);var t,n=document.createElement("div"),r=(n.style.position="absolute",n.style.width="100%",n.style.height="100%",l.appendChild(n),r=n,(t=f.default.newInstance()).setContainer(r),t.resize(),t),a=r.getRenderer(),i=r.getRenderWindow(),o=h.default.get("zip",{zipContent:e,callback:function(e){var t=d.default.newInstance({renderer:a,dataAccessHelper:o});return t.setUrl("index.json"),t.onReady(function(){var e;i.render(),u||(e={onlyOneObject:!(u=!0),activateWidgetSettingByDefault:!0},s.activateWidgetSettingByDefault&&(e.activateWidgetSettingByDefault=s.activateWidgetSettingByDefault),s.objects?e.objects=s.objects:s.onlyOneObject&&(e.onlyOneObject=s.onlyOneObject),(0,g.default)({container:l,scene:t.getScene(),render:i.render},e))}),n.addEventListener("dblclick",function(){t.resetScene(),i.render()}),t}})})};var f=a(n(236)),d=a(n(82)),h=a(n(46)),r=a(n(75)),g=a(n(104));function a(e){return e&&e.__esModule?e:{default:e}}},function(t,e,n){!function(e){t.exports=e.MyWebApp=n(237)}.call(this,n(8))}]);